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=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=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 (
Optional[str]) – Manifest data (JSON/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), ) ) )
Fetch payouts from the subgraph based on the provided filter.
- Parameters:
filter (
PayoutFilter) – Object containing all the necessary parameters to filter payouts. - Return List[Payout]: List of payouts matching the query parameters.
- Raises: EscrowClientError – If an unsupported chain ID or invalid addresses are provided.
- Return type:
List[Payout]
Retrieve status events for specified networks and statuses within a date range.
- Parameters:
filter (
StatusEventFilter) – Object containing all the necessary parameters to filter status events. - Return List[StatusEvent]: List of status events matching the query parameters.
- Raises: EscrowClientError – If an unsupported chain ID or invalid launcher address is provided.
- Return type:
List[StatusEvent]
class human_protocol_sdk.escrow.escrow_utils.Payout(id, escrow_address, recipient, amount, created_at)
Bases: object
Initializes a Payout instance.
- Parameters:
- id (
str) – The id of the payout. - chain_id – The chain identifier where the payout occurred.
- escrow_address (
str) – The address of the escrow that executed the payout. - recipient (
str) – The address of the recipient. - amount (
int) – The amount of the payout. - created_at (
int) – The time of creation of the payout.
- id (
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 (