Utility class for escrow-related operations.
from human_protocol_sdk.constants import ChainId
from human_protocol_sdk.escrow import EscrowUtils, EscrowFilter, Status
print(
EscrowUtils.get_escrows(
EscrowFilter(
networks=[ChainId.POLYGON_AMOY],
status=Status.Pending,
date_from=datetime.datetime(2023, 5, 8),
date_to=datetime.datetime(2023, 6, 8),
)
)
)class human_protocol_sdk.escrow.escrow_utils.EscrowData(chain_id, id, address, amount_paid, balance, count, factory_address, launcher, status, token, total_funded_amount, created_at, final_results_url=None, intermediate_results_url=None, manifest_hash=None, manifest_url=None, recording_oracle=None, reputation_oracle=None, exchange_oracle=None)
Bases: object
__init__(chain_id, id, address, amount_paid, balance, count, factory_address, launcher, status, token, total_funded_amount, created_at, final_results_url=None, intermediate_results_url=None, manifest_hash=None, manifest_url=None, recording_oracle=None, reputation_oracle=None, exchange_oracle=None)
Initializes an EscrowData instance.
- Parameters:
- chain_id (
ChainId) – Chain identifier - id (
str) – Identifier - address (
str) – Address - amount_paid (
int) – Amount paid - balance (
int) – Balance - count (
int) – Count - factory_address (
str) – Factory address - launcher (
str) – Launcher - status (
str) – Status - token (
str) – Token - total_funded_amount (
int) – Total funded amount - created_at (
datetime) – Creation date - final_results_url (
Optional[str]) – URL for final results. - intermediate_results_url (
Optional[str]) – URL for intermediate results. - manifest_hash (
Optional[str]) – Manifest hash. - manifest_url (
Optional[str]) – Manifest URL. - recording_oracle (
Optional[str]) – Recording Oracle address. - reputation_oracle (
Optional[str]) – Reputation Oracle address. - exchange_oracle (
Optional[str]) – Exchange Oracle address.
- chain_id (
Bases: object
A utility class that provides additional escrow-related functionalities.
Returns the escrow for a given address.
- Parameters:
- chain_id (
ChainId) – Network in which the escrow has been deployed - escrow_address (
str) – Address of the escrow
- chain_id (
- Return type:
Optional[EscrowData] - Returns: Escrow data
- Example:
from human_protocol_sdk.constants import ChainId from human_protocol_sdk.escrow import EscrowUtils print( EscrowUtils.get_escrow( ChainId.POLYGON_AMOY, "0x1234567890123456789012345678901234567890" ) )
Get an array of escrow addresses based on the specified filter parameters.
- Parameters:
filter (
EscrowFilter) – Object containing all the necessary parameters to filter - Return type:
List[EscrowData] - Returns: List of escrows
- Example:
from human_protocol_sdk.constants import ChainId from human_protocol_sdk.escrow import EscrowUtils, EscrowFilter, Status print( EscrowUtils.get_escrows( EscrowFilter( networks=[ChainId.POLYGON_AMOY], status=Status.Pending, date_from=datetime.datetime(2023, 5, 8), date_to=datetime.datetime(2023, 6, 8), ) ) )
static get_status_events(chain_id, statuses=None, date_from=None, date_to=None, launcher=None, first=10, skip=0, order_direction=OrderDirection.DESC)
Retrieve status events for specified networks and statuses within a date range.
- Parameters:
- chain_id (
ChainId) – Network to request data. - (Optional[List[Status]]) (statuses) – List of statuses to filter by.
- (Optional[datetime]****) (date_to) – Start date for the query range.
- (Optional[datetime]****) – End date for the query range.
- (Optional[str]****) (launcher) – Address of the launcher to filter by.
- (int) (skip) – Number of items per page.
- (int) – Page number to retrieve.
- (OrderDirection) (order_direction) – Order of results, “asc” or “desc”.
- chain_id (
- Return List[StatusEvent]: List of status events matching the query parameters.
- Raises: EscrowClientError – If an unsupported chain ID or invalid launcher address is provided.
- Example:
from datetime import datetime from human_protocol_sdk.constants import ChainId, Status from human_protocol_sdk.escrow import EscrowUtils print( EscrowUtils.get_status_events( chain_id=ChainId.POLYGON_AMOY, statuses=[Status.Pending, Status.Paid], date_from=datetime(2023, 1, 1), date_to=datetime(2023, 12, 31), launcher="0x1234567890abcdef1234567890abcdef12345678", first=20, skip=0, order_direction=OrderDirection.DESC ) )
- Return type:
List[StatusEvent]
class human_protocol_sdk.escrow.escrow_utils.StatusEvent(timestamp, status, chain_id, escrow_address)
Bases: object
Initializes a StatusEvent instance.
- Parameters:
- timestamp (
int) – The timestamp of the event. - status (
str) – The status of the escrow. - chain_id (
ChainId) – The chain identifier where the event occurred. - escrow_address (
str) – The address of the escrow.
- timestamp (