# Escrow

Escrow job queries

## GET /v1/escrow-jobs

>

````json
{"openapi":"3.1.0","info":{"title":"FastSet Proxy REST API","version":"1.0.0"},"tags":[{"name":"escrow","description":"Escrow job queries"}],"paths":{"/v1/escrow-jobs":{"get":{"tags":["escrow"],"operationId":"get_escrow_jobs","parameters":[{"name":"client","in":"query","description":"Filter by client address","required":false,"schema":{"type":"string"}},{"name":"provider","in":"query","description":"Filter by provider address","required":false,"schema":{"type":"string"}},{"name":"evaluator","in":"query","description":"Filter by evaluator address","required":false,"schema":{"type":"string"}},{"name":"status","in":"query","description":"Filter by job status (Funded, Submitted, Completed, Refunded)","required":false,"schema":{"type":"string"}},{"name":"certs","in":"query","description":"Include related certificates","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"Escrow jobs found. When `certs=true`, each item includes a `certificates` array; otherwise each item is a flat job object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EscrowJobWithCertsListSuccess"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}}},"components":{"schemas":{"EscrowJobWithCertsListSuccess":{"type":"object","description":"Schema for `GET /v1/escrow-jobs?certs=true` response.","required":["data","meta"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/EscrowJobWithCerts"}},"meta":{"$ref":"#/components/schemas/ResponseMeta"}}},"EscrowJobWithCerts":{"type":"object","description":"Response wrapper for escrow endpoints when `certs=true`.","required":["job","certificates"],"properties":{"certificates":{"type":"array","items":{"$ref":"#/components/schemas/TransactionCertificate"}},"job":{"$ref":"#/components/schemas/EscrowJobRecord"}}},"TransactionCertificate":{"type":"object","description":"A Transaction along with a quorum of validator signatures","required":["envelope","signatures"],"properties":{"envelope":{"$ref":"#/components/schemas/TransactionEnvelope"},"signatures":{"type":"array","items":{"type":"array","items":false,"prefixItems":[{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."},{"type":"string"}]}}}},"TransactionEnvelope":{"type":"object","description":"A Transaction along with its sender's signature","required":["transaction","signature"],"properties":{"signature":{"$ref":"#/components/schemas/SignatureOrMultiSig"},"transaction":{"$ref":"#/components/schemas/VersionedTransaction"}}},"SignatureOrMultiSig":{"oneOf":[{"type":"object","required":["Signature"],"properties":{"Signature":{"$ref":"#/components/schemas/Signature"}}},{"type":"object","required":["MultiSig"],"properties":{"MultiSig":{"$ref":"#/components/schemas/MultiSig"}}}]},"Signature":{"type":"string"},"MultiSig":{"type":"object","required":["config","signatures"],"properties":{"config":{"$ref":"#/components/schemas/MultiSigConfig"},"signatures":{"type":"array","items":{"type":"array","items":false,"prefixItems":[{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."},{"type":"string"}]}}}},"MultiSigConfig":{"type":"object","description":"Together, determines the address of a multisig account.","required":["authorized_signers","quorum","nonce"],"properties":{"authorized_signers":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"The accounts which may sign for a multisig transaction to be accepted"},"nonce":{"$ref":"#/components/schemas/Nonce","description":"Arbitrary data. Useful for creating multiple distinct multisig accounts with the same\ncommittee/quorum."},"quorum":{"$ref":"#/components/schemas/Quorum","description":"The minimum number of accounts that must sign"}}},"PublicKeyBytes":{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."},"Nonce":{"type":"integer","format":"int64","minimum":0},"Quorum":{"type":"integer","format":"int64","minimum":0},"VersionedTransaction":{"oneOf":[{"type":"object","required":["Release20260319"],"properties":{"Release20260319":{"$ref":"#/components/schemas/TransactionRelease20260319"}}},{"type":"object","required":["Release20260407"],"properties":{"Release20260407":{"$ref":"#/components/schemas/TransactionRelease20260407"}}},{"type":"object","required":["Release20260508"],"properties":{"Release20260508":{"$ref":"#/components/schemas/TransactionRelease20260508"}}}]},"TransactionRelease20260319":{"type":"object","description":"Snapshot of a `release20260319` transaction.\n\nCan be deserialized from BCS bytes stored in the DB and converted to the\ncurrent `Transaction` type.","required":["network_id","sender","nonce","timestamp_nanos","claim","archival"],"properties":{"archival":{"type":"boolean","description":"Whether this transaction should be archived.\nWhen an archived transaction is confirmed on a validator,\nsubsequent is_settled requests to that validator must succeed."},"claim":{"$ref":"#/components/schemas/ClaimTypeRelease20260319","description":"Type-dependent data"},"fee_token":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/TokenId","description":"The token to use for paying the transaction fee.\nIf `None`, the native token is used (for new tx versions).\nOld tx versions that lack this field get `None` on upcast,\nand the validator resolves them to the default fee token (e.g. USDC)."}]},"network_id":{"$ref":"#/components/schemas/NetworkId","description":"network id"},"nonce":{"$ref":"#/components/schemas/Nonce","description":"A sequence number. Transactions sent by the same account are ordered by nonce."},"sender":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Address of sender, and intended signer of this transaction"},"timestamp_nanos":{"type":"integer","description":"Nanos since the Unix epoch.","minimum":0}}},"ClaimTypeRelease20260319":{"oneOf":[{"type":"object","description":"Transfer tokens","required":["TokenTransfer"],"properties":{"TokenTransfer":{"$ref":"#/components/schemas/TokenTransferRelease20260319","description":"Transfer tokens"}}},{"type":"object","description":"Create custom token","required":["TokenCreation"],"properties":{"TokenCreation":{"$ref":"#/components/schemas/TokenCreationRelease20260319","description":"Create custom token"}}},{"type":"object","description":"Modify custom token","required":["TokenManagement"],"properties":{"TokenManagement":{"$ref":"#/components/schemas/TokenManagementRelease20260319","description":"Modify custom token"}}},{"type":"object","description":"Mint funds in a custom token","required":["Mint"],"properties":{"Mint":{"$ref":"#/components/schemas/MintRelease20260319","description":"Mint funds in a custom token"}}},{"type":"object","description":"Burn tokens from a custom token","required":["Burn"],"properties":{"Burn":{"$ref":"#/components/schemas/BurnRelease20260319","description":"Burn tokens from a custom token"}}},{"type":"object","description":"Initialize the state of an Ethereum blockchain mirroring account","required":["StateInitialization"],"properties":{"StateInitialization":{"$ref":"#/components/schemas/StateInitializationRelease20260319","description":"Initialize the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Update the state of an Ethereum blockchain mirroring account","required":["StateUpdate"],"properties":{"StateUpdate":{"$ref":"#/components/schemas/StateUpdateRelease20260319","description":"Update the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Submit arbitrary data to be settled on the network","required":["ExternalClaim"],"properties":{"ExternalClaim":{"$ref":"#/components/schemas/ExternalClaimRelease20260319","description":"Submit arbitrary data to be settled on the network"}}},{"type":"object","description":"Reset the state of an Ethereum blockchain mirroring account","required":["StateReset"],"properties":{"StateReset":{"$ref":"#/components/schemas/StateResetRelease20260319","description":"Reset the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","required":["JoinCommittee"],"properties":{"JoinCommittee":{"$ref":"#/components/schemas/ValidatorConfigRelease20260319","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps"}}},{"type":"string","description":"Leave Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","enum":["LeaveCommittee"]},{"type":"object","description":"Change Committee request","required":["ChangeCommittee"],"properties":{"ChangeCommittee":{"$ref":"#/components/schemas/CommitteeChangeRelease20260319","description":"Change Committee request"}}},{"type":"object","description":"Perform several operations","required":["Batch"],"properties":{"Batch":{"$ref":"#/components/schemas/OperationBundleRelease20260319","description":"Perform several operations"}}}],"description":"One of various types of actions that can be packed into a transaction"},"TokenTransferRelease20260319":{"type":"object","description":"Transfer tokens to another address","required":["token_id","recipient","amount","user_data"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to transfer"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID to transfer"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Extra data field to associate with this transfer"}}},"Amount":{"type":"string"},"TokenId":{"type":"string"},"UserData":{"type":"string"},"TokenCreationRelease20260319":{"type":"object","description":"Create a new token.\nThe token id is derived from the [Transaction]\nso it depends also on the creator and the [Nonce].","required":["token_name","decimals","initial_amount","mints","user_data"],"properties":{"decimals":{"type":"integer","format":"int32","description":"Power of 10 that should be considered a full unit of this token.\nAn [Amount] is still always in least units.","minimum":0},"initial_amount":{"$ref":"#/components/schemas/Amount","description":"Initial balance, which will be held by the creator of the token."},"mints":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Addresses which will be able to create more of this token"},"token_name":{"type":"string","description":"Human-readable name"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"TokenManagementRelease20260319":{"type":"object","description":"Manage an existing token.","required":["token_id","update_id","mints","user_data"],"properties":{"mints":{"type":"array","items":{"type":"array","items":false,"prefixItems":[{"type":"string","enum":["Add","Remove"]},{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."}]},"description":"The minter addresses to be added/removed"},"new_admin":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/PublicKeyBytes","description":"The new admin address; preserve existing admin if None"}]},"token_id":{"$ref":"#/components/schemas/TokenId","description":"The id of the token to be managed"},"update_id":{"$ref":"#/components/schemas/Nonce","description":"The update id for this token (used for sequencing)\nEach update id must be one greater than the last"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"MintRelease20260319":{"type":"object","description":"Create more funds of a token.\nThe sender of the [Transaction] must be a current mint of the token.\nWarning: This is not independent of a token management operation that\nremoves the sender of this transaction from the list of mints.","required":["token_id","recipient","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to mint"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient of the new funds"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token.\nThis is calculated using the keccak256 hash over the data encoded in the same way as\nfor signing."}}},"BurnRelease20260319":{"type":"object","description":"Burn tokens of a custom token.\nThe sender of the [Transaction] must hold sufficient balance of the token.","required":["token_id","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to burn"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token."}}},"StateInitializationRelease20260319":{"type":"object","description":"Initialize one state cell of a blockchain mirroring account","required":["key","initial_state"],"properties":{"initial_state":{"$ref":"#/components/schemas/State","description":"Initial state"},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to initialize"}}},"State":{"type":"string"},"StateKey":{"type":"string"},"StateUpdateRelease20260319":{"type":"object","description":"Update the state of a blockchain mirroring account","required":["key","previous_state","next_state","compute_claim_tx_hash","compute_claim_tx_timestamp"],"properties":{"compute_claim_tx_hash":{"type":"array","items":{"type":"integer","format":"int32","minimum":0}},"compute_claim_tx_timestamp":{"type":"integer","minimum":0},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to update"},"next_state":{"$ref":"#/components/schemas/State","description":"Next state"},"previous_state":{"$ref":"#/components/schemas/State","description":"Previous state"}}},"ExternalClaimRelease20260319":{"type":"object","description":"Submit arbitrary data along with a quorum of signatures from external verifiers","required":["claim","signatures"],"properties":{"claim":{"$ref":"#/components/schemas/ExternalClaimBodyRelease20260319","description":"The claim itself plus the required verifier quorum"},"signatures":{"type":"array","items":{"$ref":"#/components/schemas/VerifierSig"},"description":"At least `claim.verifier_quorum` signatures over the enclosing `Transaction` (with this field set to the empty list) by members of `claim.verifier_committee`"}}},"ExternalClaimBodyRelease20260319":{"type":"object","required":["verifier_committee","verifier_quorum","claim_data"],"properties":{"claim_data":{"$ref":"#/components/schemas/ClaimData","description":"Arbitrary data that the verifiers are signing."},"verifier_committee":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Set of verifiers (regular  FastSet addresses) that can sign for this ExternalClaim"},"verifier_quorum":{"$ref":"#/components/schemas/Quorum","description":"Minimum number of verifiers in `verifier_committee` for which fastset validators will sign\nthis transaction"}}},"ClaimData":{"type":"string"},"VerifierSig":{"type":"object","required":["verifier_addr","sig"],"properties":{"sig":{"$ref":"#/components/schemas/Signature"},"verifier_addr":{"$ref":"#/components/schemas/PublicKeyBytes"}}},"StateResetRelease20260319":{"type":"object","description":"Reset the state of a blockchain mirroring account\nThis claim type is a temporary work-around that allows a left behind account to\nbe easily caught up with the target blockchain's tip. In the future this claim type\nwill be dropped and a left-behind mirroring account will need to settle all\nmissed state updates in order to be caught up.","required":["key","reset_state"],"properties":{"key":{"$ref":"#/components/schemas/StateKey","description":"Key to reset"},"reset_state":{"$ref":"#/components/schemas/State","description":"Reset state"}}},"ValidatorConfigRelease20260319":{"type":"object","required":["address","host","rpc_port"],"properties":{"address":{"$ref":"#/components/schemas/PublicKeyBytes"},"host":{"type":"string"},"rpc_port":{"type":"integer","format":"int32","minimum":0}}},"CommitteeChangeRelease20260319":{"type":"object","required":["new_committee","epoch"],"properties":{"epoch":{"type":"integer","format":"int32","minimum":0},"new_committee":{"$ref":"#/components/schemas/CommitteeConfigRelease20260319"}}},"CommitteeConfigRelease20260319":{"type":"object","required":["validators"],"properties":{"validators":{"type":"array","items":{"$ref":"#/components/schemas/ValidatorConfigRelease20260319"}}}},"OperationBundleRelease20260319":{"type":"array","items":{"$ref":"#/components/schemas/OperationRelease20260319"}},"OperationRelease20260319":{"oneOf":[{"type":"object","description":"Transfer tokens","required":["TokenTransfer"],"properties":{"TokenTransfer":{"$ref":"#/components/schemas/TokenTransferRelease20260319","description":"Transfer tokens"}}},{"type":"object","description":"Create custom token","required":["TokenCreation"],"properties":{"TokenCreation":{"$ref":"#/components/schemas/TokenCreationRelease20260319","description":"Create custom token"}}},{"type":"object","description":"Modify custom token","required":["TokenManagement"],"properties":{"TokenManagement":{"$ref":"#/components/schemas/TokenManagementRelease20260319","description":"Modify custom token"}}},{"type":"object","description":"Mint funds in a custom token","required":["Mint"],"properties":{"Mint":{"$ref":"#/components/schemas/MintRelease20260319","description":"Mint funds in a custom token"}}},{"type":"object","description":"Burn tokens from a custom token","required":["Burn"],"properties":{"Burn":{"$ref":"#/components/schemas/BurnRelease20260319","description":"Burn tokens from a custom token"}}},{"type":"object","description":"Initialize the state of an Ethereum blockchain mirroring account","required":["StateInitialization"],"properties":{"StateInitialization":{"$ref":"#/components/schemas/StateInitializationRelease20260319","description":"Initialize the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Update the state of an Ethereum blockchain mirroring account","required":["StateUpdate"],"properties":{"StateUpdate":{"$ref":"#/components/schemas/StateUpdateRelease20260319","description":"Update the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Submit arbitrary data to be settled on the network","required":["ExternalClaim"],"properties":{"ExternalClaim":{"$ref":"#/components/schemas/ExternalClaimRelease20260319","description":"Submit arbitrary data to be settled on the network"}}},{"type":"object","description":"Reset the state of an Ethereum blockchain mirroring account","required":["StateReset"],"properties":{"StateReset":{"$ref":"#/components/schemas/StateResetRelease20260319","description":"Reset the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","required":["JoinCommittee"],"properties":{"JoinCommittee":{"$ref":"#/components/schemas/ValidatorConfigRelease20260319","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps"}}},{"type":"string","description":"Leave Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","enum":["LeaveCommittee"]},{"type":"object","description":"Change Committee request","required":["ChangeCommittee"],"properties":{"ChangeCommittee":{"$ref":"#/components/schemas/CommitteeChangeRelease20260319","description":"Change Committee request"}}}],"description":"One of various types of actions that be put in a multi-operation transaction\nPayload structs are different from the top-level [ClaimType] where we\nneed to support multiple operations with different receivers"},"NetworkId":{"type":"string","description":"A [CAIP-2](https://github.com/ChainAgnostic/CAIPs/blob/main/CAIPs/caip-2.md) compatible identifier.\n\nNetwork IDs are a fixed set of known constants. Use one of the associated\nconstants (e.g. `NetworkId::DEVNET`) or parse from a string via `TryFrom<&str>`."},"TransactionRelease20260407":{"type":"object","description":"Snapshot of a `release20260407` transaction.\n\nCan be deserialized from BCS bytes stored in the DB and converted to the\ncurrent `Transaction` type.","required":["network_id","sender","nonce","timestamp_nanos","claims","archival"],"properties":{"archival":{"type":"boolean","description":"Whether this transaction should be archived.\nWhen an archived transaction is confirmed on a validator,\nsubsequent is_settled requests to that validator must succeed."},"claims":{"$ref":"#/components/schemas/ClaimsRelease20260407","description":"The claims to execute in this transaction"},"fee_token":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/TokenId","description":"The token to use for paying the transaction fee.\nIf `None`, the native token is used (for new tx versions).\nOld tx versions that lack this field get `None` on upcast,\nand the validator resolves them to the default fee token (e.g. USDC)."}]},"network_id":{"$ref":"#/components/schemas/NetworkId","description":"network id"},"nonce":{"$ref":"#/components/schemas/Nonce","description":"A sequence number. Transactions sent by the same account are ordered by nonce."},"sender":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Address of sender, and intended signer of this transaction"},"timestamp_nanos":{"type":"integer","description":"Nanos since the Unix epoch.","minimum":0}}},"ClaimsRelease20260407":{"type":"array","items":{"$ref":"#/components/schemas/OperationRelease20260407"}},"OperationRelease20260407":{"oneOf":[{"type":"object","description":"Transfer tokens","required":["TokenTransfer"],"properties":{"TokenTransfer":{"$ref":"#/components/schemas/TokenTransferRelease20260407","description":"Transfer tokens"}}},{"type":"object","description":"Create custom token","required":["TokenCreation"],"properties":{"TokenCreation":{"$ref":"#/components/schemas/TokenCreationRelease20260407","description":"Create custom token"}}},{"type":"object","description":"Modify custom token","required":["TokenManagement"],"properties":{"TokenManagement":{"$ref":"#/components/schemas/TokenManagementRelease20260407","description":"Modify custom token"}}},{"type":"object","description":"Mint funds in a custom token","required":["Mint"],"properties":{"Mint":{"$ref":"#/components/schemas/MintRelease20260407","description":"Mint funds in a custom token"}}},{"type":"object","description":"Burn tokens from a custom token","required":["Burn"],"properties":{"Burn":{"$ref":"#/components/schemas/BurnRelease20260407","description":"Burn tokens from a custom token"}}},{"type":"object","description":"Initialize the state of an Ethereum blockchain mirroring account","required":["StateInitialization"],"properties":{"StateInitialization":{"$ref":"#/components/schemas/StateInitializationRelease20260407","description":"Initialize the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Update the state of an Ethereum blockchain mirroring account","required":["StateUpdate"],"properties":{"StateUpdate":{"$ref":"#/components/schemas/StateUpdateRelease20260407","description":"Update the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Submit arbitrary data to be settled on the network","required":["ExternalClaim"],"properties":{"ExternalClaim":{"$ref":"#/components/schemas/ExternalClaimRelease20260407","description":"Submit arbitrary data to be settled on the network"}}},{"type":"object","description":"Reset the state of an Ethereum blockchain mirroring account","required":["StateReset"],"properties":{"StateReset":{"$ref":"#/components/schemas/StateResetRelease20260407","description":"Reset the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","required":["JoinCommittee"],"properties":{"JoinCommittee":{"$ref":"#/components/schemas/ValidatorConfigRelease20260407","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps"}}},{"type":"string","description":"Leave Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","enum":["LeaveCommittee"]},{"type":"object","description":"Change Committee request","required":["ChangeCommittee"],"properties":{"ChangeCommittee":{"$ref":"#/components/schemas/CommitteeChangeRelease20260407","description":"Change Committee request"}}},{"type":"object","description":"Escrow operations for three-party refundable payments","required":["Escrow"],"properties":{"Escrow":{"$ref":"#/components/schemas/EscrowRelease20260407","description":"Escrow operations for three-party refundable payments"}}}],"description":"One of various types of actions that can be placed in a transaction's claims bundle"},"TokenTransferRelease20260407":{"type":"object","description":"Transfer tokens to another address","required":["token_id","recipient","amount","user_data"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to transfer"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID to transfer"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Extra data field to associate with this transfer"}}},"TokenCreationRelease20260407":{"type":"object","description":"Create a new token.\nThe token id is derived from the [Transaction]\nso it depends also on the creator and the [Nonce].","required":["token_name","decimals","initial_amount","mints","user_data"],"properties":{"decimals":{"type":"integer","format":"int32","description":"Power of 10 that should be considered a full unit of this token.\nAn [Amount] is still always in least units.","minimum":0},"initial_amount":{"$ref":"#/components/schemas/Amount","description":"Initial balance, which will be held by the creator of the token."},"mints":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Addresses which will be able to create more of this token"},"token_name":{"type":"string","description":"Human-readable name"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"TokenManagementRelease20260407":{"type":"object","description":"Manage an existing token.","required":["token_id","update_id","mints","user_data"],"properties":{"mints":{"type":"array","items":{"type":"array","items":false,"prefixItems":[{"type":"string","enum":["Add","Remove"]},{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."}]},"description":"The minter addresses to be added/removed"},"new_admin":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/PublicKeyBytes","description":"The new admin address; preserve existing admin if None"}]},"token_id":{"$ref":"#/components/schemas/TokenId","description":"The id of the token to be managed"},"update_id":{"$ref":"#/components/schemas/Nonce","description":"The update id for this token (used for sequencing)\nEach update id must be one greater than the last"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"MintRelease20260407":{"type":"object","description":"Create more funds of a token.\nThe sender of the [Transaction] must be a current mint of the token.\nWarning: This is not independent of a token management operation that\nremoves the sender of this transaction from the list of mints.","required":["token_id","recipient","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to mint"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient of the new funds"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token.\nThis is calculated using the keccak256 hash over the data encoded in the same way as\nfor signing."}}},"BurnRelease20260407":{"type":"object","description":"Burn tokens of a custom token.\nThe sender of the [Transaction] must hold sufficient balance of the token.","required":["token_id","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to burn"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token."}}},"StateInitializationRelease20260407":{"type":"object","description":"Initialize one state cell of a blockchain mirroring account","required":["key","initial_state"],"properties":{"initial_state":{"$ref":"#/components/schemas/State","description":"Initial state"},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to initialize"}}},"StateUpdateRelease20260407":{"type":"object","description":"Update the state of a blockchain mirroring account","required":["key","previous_state","next_state","compute_claim_tx_hash","compute_claim_tx_timestamp"],"properties":{"compute_claim_tx_hash":{"type":"array","items":{"type":"integer","format":"int32","minimum":0}},"compute_claim_tx_timestamp":{"type":"integer","minimum":0},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to update"},"next_state":{"$ref":"#/components/schemas/State","description":"Next state"},"previous_state":{"$ref":"#/components/schemas/State","description":"Previous state"}}},"ExternalClaimRelease20260407":{"type":"object","description":"Submit arbitrary data along with a quorum of signatures from external verifiers","required":["claim","signatures"],"properties":{"claim":{"$ref":"#/components/schemas/ExternalClaimBodyRelease20260407","description":"The claim itself plus the required verifier quorum"},"signatures":{"type":"array","items":{"$ref":"#/components/schemas/VerifierSig"},"description":"At least `claim.verifier_quorum` signatures over the enclosing `Transaction` (with this field set to the empty list) by members of `claim.verifier_committee`"}}},"ExternalClaimBodyRelease20260407":{"type":"object","required":["verifier_committee","verifier_quorum","claim_data"],"properties":{"claim_data":{"$ref":"#/components/schemas/ClaimData","description":"Arbitrary data that the verifiers are signing."},"verifier_committee":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Set of verifiers (regular  FastSet addresses) that can sign for this ExternalClaim"},"verifier_quorum":{"$ref":"#/components/schemas/Quorum","description":"Minimum number of verifiers in `verifier_committee` for which fastset validators will sign\nthis transaction"}}},"StateResetRelease20260407":{"type":"object","description":"Reset the state of a blockchain mirroring account\nThis claim type is a temporary work-around that allows a left behind account to\nbe easily caught up with the target blockchain's tip. In the future this claim type\nwill be dropped and a left-behind mirroring account will need to settle all\nmissed state updates in order to be caught up.","required":["key","reset_state"],"properties":{"key":{"$ref":"#/components/schemas/StateKey","description":"Key to reset"},"reset_state":{"$ref":"#/components/schemas/State","description":"Reset state"}}},"ValidatorConfigRelease20260407":{"type":"object","required":["address","host","rpc_port"],"properties":{"address":{"$ref":"#/components/schemas/PublicKeyBytes"},"host":{"type":"string"},"rpc_port":{"type":"integer","format":"int32","minimum":0}}},"CommitteeChangeRelease20260407":{"type":"object","required":["new_committee","epoch"],"properties":{"epoch":{"type":"integer","format":"int32","minimum":0},"new_committee":{"$ref":"#/components/schemas/CommitteeConfigRelease20260407"}}},"CommitteeConfigRelease20260407":{"type":"object","required":["validators"],"properties":{"validators":{"type":"array","items":{"$ref":"#/components/schemas/ValidatorConfigRelease20260407"}}}},"EscrowRelease20260407":{"oneOf":[{"type":"object","required":["CreateConfig"],"properties":{"CreateConfig":{"$ref":"#/components/schemas/EscrowCreateConfigRelease20260407"}}},{"type":"object","required":["CreateJob"],"properties":{"CreateJob":{"$ref":"#/components/schemas/EscrowCreateJobRelease20260407"}}},{"type":"object","required":["Submit"],"properties":{"Submit":{"$ref":"#/components/schemas/EscrowSubmitRelease20260407"}}},{"type":"object","required":["Reject"],"properties":{"Reject":{"$ref":"#/components/schemas/EscrowRejectRelease20260407"}}},{"type":"object","required":["Complete"],"properties":{"Complete":{"$ref":"#/components/schemas/EscrowCompleteRelease20260407"}}}],"description":"Escrow operations for three-party refundable payments"},"EscrowCreateConfigRelease20260407":{"type":"object","description":"Create an escrow configuration that evaluators publish","required":["token_id","evaluator","evaluation_fee","min_evaluator_fee"],"properties":{"evaluation_fee":{"$ref":"#/components/schemas/FixedAmountOrBps"},"evaluator":{"$ref":"#/components/schemas/PublicKeyBytes"},"min_evaluator_fee":{"$ref":"#/components/schemas/Amount"},"token_id":{"$ref":"#/components/schemas/TokenId"}}},"FixedAmountOrBps":{"oneOf":[{"type":"object","required":["Fixed"],"properties":{"Fixed":{"$ref":"#/components/schemas/Amount"}}},{"type":"object","description":"Basis points: 0–10000 (i.e. 100.00%)","required":["Bps"],"properties":{"Bps":{"type":"integer","format":"int32","description":"Basis points: 0–10000 (i.e. 100.00%)","minimum":0}}}],"description":"Represents either a fixed amount or a basis-point percentage"},"EscrowCreateJobRelease20260407":{"type":"object","description":"Create a funded escrow job referencing a config","required":["config_id","provider","provider_fee","description"],"properties":{"config_id":{"$ref":"#/components/schemas/EscrowConfigIdRelease20260407"},"description":{"type":"string"},"provider":{"$ref":"#/components/schemas/PublicKeyBytes"},"provider_fee":{"$ref":"#/components/schemas/Amount"}}},"EscrowConfigIdRelease20260407":{"type":"string"},"EscrowSubmitRelease20260407":{"type":"object","description":"Provider submits a deliverable hash for a job","required":["job_id","deliverable"],"properties":{"deliverable":{"type":"array","items":{"type":"integer","format":"int32","minimum":0}},"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260407"}}},"EscrowJobIdRelease20260407":{"type":"string"},"EscrowRejectRelease20260407":{"type":"object","description":"Evaluator rejects a job -- refunds client, pays evaluator fee","required":["job_id"],"properties":{"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260407"}}},"EscrowCompleteRelease20260407":{"type":"object","description":"Evaluator completes a job -- pays provider, pays evaluator fee","required":["job_id"],"properties":{"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260407"}}},"TransactionRelease20260508":{"type":"object","description":"Snapshot of a `release20260407` transaction.\n\nCan be deserialized from BCS bytes stored in the DB and converted to the\ncurrent `Transaction` type.","required":["network_id","sender","nonce","timestamp_nanos","claims","archival"],"properties":{"archival":{"type":"boolean","description":"Whether this transaction should be archived.\nWhen an archived transaction is confirmed on a validator,\nsubsequent is_settled requests to that validator must succeed."},"claims":{"$ref":"#/components/schemas/ClaimsRelease20260508","description":"The claims to execute in this transaction"},"fee_token":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/TokenId","description":"The token to use for paying the transaction fee.\nIf `None`, the native token is used (for new tx versions).\nOld tx versions that lack this field get `None` on upcast,\nand the validator resolves them to the default fee token (e.g. USDC)."}]},"network_id":{"$ref":"#/components/schemas/NetworkId","description":"network id"},"nonce":{"$ref":"#/components/schemas/Nonce","description":"A sequence number. Transactions sent by the same account are ordered by nonce."},"sender":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Address of sender, and intended signer of this transaction"},"timestamp_nanos":{"type":"integer","description":"Nanos since the Unix epoch.","minimum":0}}},"ClaimsRelease20260508":{"type":"array","items":{"$ref":"#/components/schemas/OperationRelease20260508"}},"OperationRelease20260508":{"oneOf":[{"type":"object","description":"Transfer tokens","required":["TokenTransfer"],"properties":{"TokenTransfer":{"$ref":"#/components/schemas/TokenTransferRelease20260508","description":"Transfer tokens"}}},{"type":"object","description":"Create custom token","required":["TokenCreation"],"properties":{"TokenCreation":{"$ref":"#/components/schemas/TokenCreationRelease20260508","description":"Create custom token"}}},{"type":"object","description":"Modify custom token","required":["TokenManagement"],"properties":{"TokenManagement":{"$ref":"#/components/schemas/TokenManagementRelease20260508","description":"Modify custom token"}}},{"type":"object","description":"Mint funds in a custom token","required":["Mint"],"properties":{"Mint":{"$ref":"#/components/schemas/MintRelease20260508","description":"Mint funds in a custom token"}}},{"type":"object","description":"Burn tokens from a custom token","required":["Burn"],"properties":{"Burn":{"$ref":"#/components/schemas/BurnRelease20260508","description":"Burn tokens from a custom token"}}},{"type":"object","description":"Initialize the state of an Ethereum blockchain mirroring account","required":["StateInitialization"],"properties":{"StateInitialization":{"$ref":"#/components/schemas/StateInitializationRelease20260508","description":"Initialize the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Update the state of an Ethereum blockchain mirroring account","required":["StateUpdate"],"properties":{"StateUpdate":{"$ref":"#/components/schemas/StateUpdateRelease20260508","description":"Update the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Submit arbitrary data to be settled on the network","required":["ExternalClaim"],"properties":{"ExternalClaim":{"$ref":"#/components/schemas/ExternalClaimRelease20260508","description":"Submit arbitrary data to be settled on the network"}}},{"type":"object","description":"Reset the state of an Ethereum blockchain mirroring account","required":["StateReset"],"properties":{"StateReset":{"$ref":"#/components/schemas/StateResetRelease20260508","description":"Reset the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","required":["JoinCommittee"],"properties":{"JoinCommittee":{"$ref":"#/components/schemas/ValidatorConfigRelease20260508","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps"}}},{"type":"string","description":"Leave Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","enum":["LeaveCommittee"]},{"type":"object","description":"Change Committee request","required":["ChangeCommittee"],"properties":{"ChangeCommittee":{"$ref":"#/components/schemas/CommitteeChangeRelease20260508","description":"Change Committee request"}}},{"type":"object","description":"Escrow operations for three-party refundable payments","required":["Escrow"],"properties":{"Escrow":{"$ref":"#/components/schemas/EscrowRelease20260508","description":"Escrow operations for three-party refundable payments"}}}],"description":"One of various types of actions that can be placed in a transaction's claims bundle"},"TokenTransferRelease20260508":{"type":"object","description":"Transfer tokens to another address","required":["token_id","recipient","amount","user_data"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to transfer"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID to transfer"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Extra data field to associate with this transfer"}}},"TokenCreationRelease20260508":{"type":"object","description":"Create a new token.\nThe token id is derived from the [Transaction]\nso it depends also on the creator and the [Nonce].","required":["token_name","decimals","initial_amount","mints","user_data"],"properties":{"decimals":{"type":"integer","format":"int32","description":"Power of 10 that should be considered a full unit of this token.\nAn [Amount] is still always in least units.","minimum":0},"initial_amount":{"$ref":"#/components/schemas/Amount","description":"Initial balance, which will be held by the creator of the token."},"mints":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Addresses which will be able to create more of this token"},"token_name":{"type":"string","description":"Human-readable name"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"TokenManagementRelease20260508":{"type":"object","description":"Manage an existing token.","required":["token_id","update_id","mints","user_data"],"properties":{"mints":{"type":"array","items":{"type":"array","items":false,"prefixItems":[{"type":"string","enum":["Add","Remove"]},{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."}]},"description":"The minter addresses to be added/removed"},"new_admin":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/PublicKeyBytes","description":"The new admin address; preserve existing admin if None"}]},"new_token_name":{"type":["string","null"],"description":"The new human-readable display name; preserve existing name if None"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"The id of the token to be managed"},"update_id":{"$ref":"#/components/schemas/Nonce","description":"The update id for this token (used for sequencing)\nEach update id must be one greater than the last"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"MintRelease20260508":{"type":"object","description":"Create more funds of a token.\nThe sender of the [Transaction] must be a current mint of the token.\nWarning: This is not independent of a token management operation that\nremoves the sender of this transaction from the list of mints.","required":["token_id","recipient","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to mint"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient of the new funds"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token.\nThis is calculated using the keccak256 hash over the data encoded in the same way as\nfor signing."}}},"BurnRelease20260508":{"type":"object","description":"Burn tokens of a custom token.\nThe sender of the [Transaction] must hold sufficient balance of the token.","required":["token_id","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to burn"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token."}}},"StateInitializationRelease20260508":{"type":"object","description":"Initialize one state cell of a blockchain mirroring account","required":["key","initial_state"],"properties":{"initial_state":{"$ref":"#/components/schemas/State","description":"Initial state"},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to initialize"}}},"StateUpdateRelease20260508":{"type":"object","description":"Update the state of a blockchain mirroring account","required":["key","previous_state","next_state","compute_claim_tx_hash","compute_claim_tx_timestamp"],"properties":{"compute_claim_tx_hash":{"type":"array","items":{"type":"integer","format":"int32","minimum":0}},"compute_claim_tx_timestamp":{"type":"integer","minimum":0},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to update"},"next_state":{"$ref":"#/components/schemas/State","description":"Next state"},"previous_state":{"$ref":"#/components/schemas/State","description":"Previous state"}}},"ExternalClaimRelease20260508":{"type":"object","description":"Submit arbitrary data along with a quorum of signatures from external verifiers","required":["claim","signatures"],"properties":{"claim":{"$ref":"#/components/schemas/ExternalClaimBodyRelease20260508","description":"The claim itself plus the required verifier quorum"},"signatures":{"type":"array","items":{"$ref":"#/components/schemas/VerifierSig"},"description":"At least `claim.verifier_quorum` signatures over the enclosing `Transaction` (with this field set to the empty list) by members of `claim.verifier_committee`"}}},"ExternalClaimBodyRelease20260508":{"type":"object","required":["verifier_committee","verifier_quorum","claim_data"],"properties":{"claim_data":{"$ref":"#/components/schemas/ClaimData","description":"Arbitrary data that the verifiers are signing."},"verifier_committee":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Set of verifiers (regular  FastSet addresses) that can sign for this ExternalClaim"},"verifier_quorum":{"$ref":"#/components/schemas/Quorum","description":"Minimum number of verifiers in `verifier_committee` for which fastset validators will sign\nthis transaction"}}},"StateResetRelease20260508":{"type":"object","description":"Reset the state of a blockchain mirroring account\nThis claim type is a temporary work-around that allows a left behind account to\nbe easily caught up with the target blockchain's tip. In the future this claim type\nwill be dropped and a left-behind mirroring account will need to settle all\nmissed state updates in order to be caught up.","required":["key","reset_state"],"properties":{"key":{"$ref":"#/components/schemas/StateKey","description":"Key to reset"},"reset_state":{"$ref":"#/components/schemas/State","description":"Reset state"}}},"ValidatorConfigRelease20260508":{"type":"object","required":["address","host","rpc_port"],"properties":{"address":{"$ref":"#/components/schemas/PublicKeyBytes"},"host":{"type":"string"},"rpc_port":{"type":"integer","format":"int32","minimum":0}}},"CommitteeChangeRelease20260508":{"type":"object","required":["new_committee","epoch"],"properties":{"epoch":{"type":"integer","format":"int32","minimum":0},"new_committee":{"$ref":"#/components/schemas/CommitteeConfigRelease20260508"}}},"CommitteeConfigRelease20260508":{"type":"object","required":["validators"],"properties":{"validators":{"type":"array","items":{"$ref":"#/components/schemas/ValidatorConfigRelease20260508"}}}},"EscrowRelease20260508":{"oneOf":[{"type":"object","required":["CreateConfig"],"properties":{"CreateConfig":{"$ref":"#/components/schemas/EscrowCreateConfigRelease20260508"}}},{"type":"object","required":["CreateJob"],"properties":{"CreateJob":{"$ref":"#/components/schemas/EscrowCreateJobRelease20260508"}}},{"type":"object","required":["Submit"],"properties":{"Submit":{"$ref":"#/components/schemas/EscrowSubmitRelease20260508"}}},{"type":"object","required":["Reject"],"properties":{"Reject":{"$ref":"#/components/schemas/EscrowRejectRelease20260508"}}},{"type":"object","required":["Complete"],"properties":{"Complete":{"$ref":"#/components/schemas/EscrowCompleteRelease20260508"}}}],"description":"Escrow operations for three-party refundable payments"},"EscrowCreateConfigRelease20260508":{"type":"object","description":"Create an escrow configuration that evaluators publish","required":["token_id","evaluator","evaluation_fee","min_evaluator_fee"],"properties":{"evaluation_fee":{"$ref":"#/components/schemas/FixedAmountOrBps"},"evaluator":{"$ref":"#/components/schemas/PublicKeyBytes"},"min_evaluator_fee":{"$ref":"#/components/schemas/Amount"},"token_id":{"$ref":"#/components/schemas/TokenId"}}},"EscrowCreateJobRelease20260508":{"type":"object","description":"Create a funded escrow job referencing a config","required":["config_id","provider","provider_fee","description"],"properties":{"config_id":{"$ref":"#/components/schemas/EscrowConfigIdRelease20260508"},"description":{"type":"string"},"provider":{"$ref":"#/components/schemas/PublicKeyBytes"},"provider_fee":{"$ref":"#/components/schemas/Amount"}}},"EscrowConfigIdRelease20260508":{"type":"string"},"EscrowSubmitRelease20260508":{"type":"object","description":"Provider submits a deliverable hash for a job","required":["job_id","deliverable"],"properties":{"deliverable":{"type":"array","items":{"type":"integer","format":"int32","minimum":0}},"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260508"}}},"EscrowJobIdRelease20260508":{"type":"string"},"EscrowRejectRelease20260508":{"type":"object","description":"Evaluator rejects a job -- refunds client, pays evaluator fee","required":["job_id"],"properties":{"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260508"}}},"EscrowCompleteRelease20260508":{"type":"object","description":"Evaluator completes a job -- pays provider, pays evaluator fee","required":["job_id"],"properties":{"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260508"}}},"EscrowJobRecord":{"type":"object","required":["job_id","config_id","client","provider","evaluator","token_id","provider_fee","evaluator_fee","description","status"],"properties":{"client":{"$ref":"#/components/schemas/PublicKeyBytes"},"config_id":{"$ref":"#/components/schemas/EscrowConfigIdRelease20260508"},"deliverable":{"type":["string","null"]},"description":{"type":"string"},"evaluator":{"$ref":"#/components/schemas/PublicKeyBytes"},"evaluator_fee":{"$ref":"#/components/schemas/Amount"},"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260508"},"provider":{"$ref":"#/components/schemas/PublicKeyBytes"},"provider_fee":{"$ref":"#/components/schemas/Amount"},"status":{"type":"string"},"token_id":{"$ref":"#/components/schemas/TokenId"}}},"ResponseMeta":{"type":"object","description":"Shared metadata included in every API response.","required":["timestamp"],"properties":{"timestamp":{"type":"string","description":"ISO-8601 / RFC-3339 UTC timestamp of when the response was generated."}}},"ErrorEnvelope":{"type":"object","description":"Error response envelope.\n\n```json\n{\n  \"error\": { \"code\": \"UNEXPECTED_NONCE\", \"message\": \"…\", \"details\": { … } },\n  \"meta\": { \"timestamp\": \"…\" }\n}\n```","required":["error","meta"],"properties":{"error":{"description":"Structured error body built from [`RestApiError`]."},"meta":{"$ref":"#/components/schemas/ResponseMeta"}}}}}}
````

## GET /v1/escrow-jobs/{job\_id}

>

````json
{"openapi":"3.1.0","info":{"title":"FastSet Proxy REST API","version":"1.0.0"},"tags":[{"name":"escrow","description":"Escrow job queries"}],"paths":{"/v1/escrow-jobs/{job_id}":{"get":{"tags":["escrow"],"operationId":"get_escrow_job","parameters":[{"name":"job_id","in":"path","description":"Hex-encoded escrow job ID","required":true,"schema":{"type":"string"}},{"name":"certs","in":"query","description":"Include related certificates","required":false,"schema":{"type":"boolean"}}],"responses":{"200":{"description":"Escrow job found. When `certs=true`, `data` includes a `certificates` array; otherwise `data` is a flat job object.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EscrowJobWithCertsSuccess"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}},"404":{"description":"Job not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorEnvelope"}}}}}}}},"components":{"schemas":{"EscrowJobWithCertsSuccess":{"type":"object","description":"Schema for `GET /v1/escrow-jobs/{job_id}?certs=true` response.","required":["data","meta"],"properties":{"data":{"$ref":"#/components/schemas/EscrowJobWithCerts"},"meta":{"$ref":"#/components/schemas/ResponseMeta"}}},"EscrowJobWithCerts":{"type":"object","description":"Response wrapper for escrow endpoints when `certs=true`.","required":["job","certificates"],"properties":{"certificates":{"type":"array","items":{"$ref":"#/components/schemas/TransactionCertificate"}},"job":{"$ref":"#/components/schemas/EscrowJobRecord"}}},"TransactionCertificate":{"type":"object","description":"A Transaction along with a quorum of validator signatures","required":["envelope","signatures"],"properties":{"envelope":{"$ref":"#/components/schemas/TransactionEnvelope"},"signatures":{"type":"array","items":{"type":"array","items":false,"prefixItems":[{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."},{"type":"string"}]}}}},"TransactionEnvelope":{"type":"object","description":"A Transaction along with its sender's signature","required":["transaction","signature"],"properties":{"signature":{"$ref":"#/components/schemas/SignatureOrMultiSig"},"transaction":{"$ref":"#/components/schemas/VersionedTransaction"}}},"SignatureOrMultiSig":{"oneOf":[{"type":"object","required":["Signature"],"properties":{"Signature":{"$ref":"#/components/schemas/Signature"}}},{"type":"object","required":["MultiSig"],"properties":{"MultiSig":{"$ref":"#/components/schemas/MultiSig"}}}]},"Signature":{"type":"string"},"MultiSig":{"type":"object","required":["config","signatures"],"properties":{"config":{"$ref":"#/components/schemas/MultiSigConfig"},"signatures":{"type":"array","items":{"type":"array","items":false,"prefixItems":[{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."},{"type":"string"}]}}}},"MultiSigConfig":{"type":"object","description":"Together, determines the address of a multisig account.","required":["authorized_signers","quorum","nonce"],"properties":{"authorized_signers":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"The accounts which may sign for a multisig transaction to be accepted"},"nonce":{"$ref":"#/components/schemas/Nonce","description":"Arbitrary data. Useful for creating multiple distinct multisig accounts with the same\ncommittee/quorum."},"quorum":{"$ref":"#/components/schemas/Quorum","description":"The minimum number of accounts that must sign"}}},"PublicKeyBytes":{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."},"Nonce":{"type":"integer","format":"int64","minimum":0},"Quorum":{"type":"integer","format":"int64","minimum":0},"VersionedTransaction":{"oneOf":[{"type":"object","required":["Release20260319"],"properties":{"Release20260319":{"$ref":"#/components/schemas/TransactionRelease20260319"}}},{"type":"object","required":["Release20260407"],"properties":{"Release20260407":{"$ref":"#/components/schemas/TransactionRelease20260407"}}},{"type":"object","required":["Release20260508"],"properties":{"Release20260508":{"$ref":"#/components/schemas/TransactionRelease20260508"}}}]},"TransactionRelease20260319":{"type":"object","description":"Snapshot of a `release20260319` transaction.\n\nCan be deserialized from BCS bytes stored in the DB and converted to the\ncurrent `Transaction` type.","required":["network_id","sender","nonce","timestamp_nanos","claim","archival"],"properties":{"archival":{"type":"boolean","description":"Whether this transaction should be archived.\nWhen an archived transaction is confirmed on a validator,\nsubsequent is_settled requests to that validator must succeed."},"claim":{"$ref":"#/components/schemas/ClaimTypeRelease20260319","description":"Type-dependent data"},"fee_token":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/TokenId","description":"The token to use for paying the transaction fee.\nIf `None`, the native token is used (for new tx versions).\nOld tx versions that lack this field get `None` on upcast,\nand the validator resolves them to the default fee token (e.g. USDC)."}]},"network_id":{"$ref":"#/components/schemas/NetworkId","description":"network id"},"nonce":{"$ref":"#/components/schemas/Nonce","description":"A sequence number. Transactions sent by the same account are ordered by nonce."},"sender":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Address of sender, and intended signer of this transaction"},"timestamp_nanos":{"type":"integer","description":"Nanos since the Unix epoch.","minimum":0}}},"ClaimTypeRelease20260319":{"oneOf":[{"type":"object","description":"Transfer tokens","required":["TokenTransfer"],"properties":{"TokenTransfer":{"$ref":"#/components/schemas/TokenTransferRelease20260319","description":"Transfer tokens"}}},{"type":"object","description":"Create custom token","required":["TokenCreation"],"properties":{"TokenCreation":{"$ref":"#/components/schemas/TokenCreationRelease20260319","description":"Create custom token"}}},{"type":"object","description":"Modify custom token","required":["TokenManagement"],"properties":{"TokenManagement":{"$ref":"#/components/schemas/TokenManagementRelease20260319","description":"Modify custom token"}}},{"type":"object","description":"Mint funds in a custom token","required":["Mint"],"properties":{"Mint":{"$ref":"#/components/schemas/MintRelease20260319","description":"Mint funds in a custom token"}}},{"type":"object","description":"Burn tokens from a custom token","required":["Burn"],"properties":{"Burn":{"$ref":"#/components/schemas/BurnRelease20260319","description":"Burn tokens from a custom token"}}},{"type":"object","description":"Initialize the state of an Ethereum blockchain mirroring account","required":["StateInitialization"],"properties":{"StateInitialization":{"$ref":"#/components/schemas/StateInitializationRelease20260319","description":"Initialize the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Update the state of an Ethereum blockchain mirroring account","required":["StateUpdate"],"properties":{"StateUpdate":{"$ref":"#/components/schemas/StateUpdateRelease20260319","description":"Update the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Submit arbitrary data to be settled on the network","required":["ExternalClaim"],"properties":{"ExternalClaim":{"$ref":"#/components/schemas/ExternalClaimRelease20260319","description":"Submit arbitrary data to be settled on the network"}}},{"type":"object","description":"Reset the state of an Ethereum blockchain mirroring account","required":["StateReset"],"properties":{"StateReset":{"$ref":"#/components/schemas/StateResetRelease20260319","description":"Reset the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","required":["JoinCommittee"],"properties":{"JoinCommittee":{"$ref":"#/components/schemas/ValidatorConfigRelease20260319","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps"}}},{"type":"string","description":"Leave Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","enum":["LeaveCommittee"]},{"type":"object","description":"Change Committee request","required":["ChangeCommittee"],"properties":{"ChangeCommittee":{"$ref":"#/components/schemas/CommitteeChangeRelease20260319","description":"Change Committee request"}}},{"type":"object","description":"Perform several operations","required":["Batch"],"properties":{"Batch":{"$ref":"#/components/schemas/OperationBundleRelease20260319","description":"Perform several operations"}}}],"description":"One of various types of actions that can be packed into a transaction"},"TokenTransferRelease20260319":{"type":"object","description":"Transfer tokens to another address","required":["token_id","recipient","amount","user_data"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to transfer"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID to transfer"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Extra data field to associate with this transfer"}}},"Amount":{"type":"string"},"TokenId":{"type":"string"},"UserData":{"type":"string"},"TokenCreationRelease20260319":{"type":"object","description":"Create a new token.\nThe token id is derived from the [Transaction]\nso it depends also on the creator and the [Nonce].","required":["token_name","decimals","initial_amount","mints","user_data"],"properties":{"decimals":{"type":"integer","format":"int32","description":"Power of 10 that should be considered a full unit of this token.\nAn [Amount] is still always in least units.","minimum":0},"initial_amount":{"$ref":"#/components/schemas/Amount","description":"Initial balance, which will be held by the creator of the token."},"mints":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Addresses which will be able to create more of this token"},"token_name":{"type":"string","description":"Human-readable name"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"TokenManagementRelease20260319":{"type":"object","description":"Manage an existing token.","required":["token_id","update_id","mints","user_data"],"properties":{"mints":{"type":"array","items":{"type":"array","items":false,"prefixItems":[{"type":"string","enum":["Add","Remove"]},{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."}]},"description":"The minter addresses to be added/removed"},"new_admin":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/PublicKeyBytes","description":"The new admin address; preserve existing admin if None"}]},"token_id":{"$ref":"#/components/schemas/TokenId","description":"The id of the token to be managed"},"update_id":{"$ref":"#/components/schemas/Nonce","description":"The update id for this token (used for sequencing)\nEach update id must be one greater than the last"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"MintRelease20260319":{"type":"object","description":"Create more funds of a token.\nThe sender of the [Transaction] must be a current mint of the token.\nWarning: This is not independent of a token management operation that\nremoves the sender of this transaction from the list of mints.","required":["token_id","recipient","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to mint"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient of the new funds"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token.\nThis is calculated using the keccak256 hash over the data encoded in the same way as\nfor signing."}}},"BurnRelease20260319":{"type":"object","description":"Burn tokens of a custom token.\nThe sender of the [Transaction] must hold sufficient balance of the token.","required":["token_id","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to burn"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token."}}},"StateInitializationRelease20260319":{"type":"object","description":"Initialize one state cell of a blockchain mirroring account","required":["key","initial_state"],"properties":{"initial_state":{"$ref":"#/components/schemas/State","description":"Initial state"},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to initialize"}}},"State":{"type":"string"},"StateKey":{"type":"string"},"StateUpdateRelease20260319":{"type":"object","description":"Update the state of a blockchain mirroring account","required":["key","previous_state","next_state","compute_claim_tx_hash","compute_claim_tx_timestamp"],"properties":{"compute_claim_tx_hash":{"type":"array","items":{"type":"integer","format":"int32","minimum":0}},"compute_claim_tx_timestamp":{"type":"integer","minimum":0},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to update"},"next_state":{"$ref":"#/components/schemas/State","description":"Next state"},"previous_state":{"$ref":"#/components/schemas/State","description":"Previous state"}}},"ExternalClaimRelease20260319":{"type":"object","description":"Submit arbitrary data along with a quorum of signatures from external verifiers","required":["claim","signatures"],"properties":{"claim":{"$ref":"#/components/schemas/ExternalClaimBodyRelease20260319","description":"The claim itself plus the required verifier quorum"},"signatures":{"type":"array","items":{"$ref":"#/components/schemas/VerifierSig"},"description":"At least `claim.verifier_quorum` signatures over the enclosing `Transaction` (with this field set to the empty list) by members of `claim.verifier_committee`"}}},"ExternalClaimBodyRelease20260319":{"type":"object","required":["verifier_committee","verifier_quorum","claim_data"],"properties":{"claim_data":{"$ref":"#/components/schemas/ClaimData","description":"Arbitrary data that the verifiers are signing."},"verifier_committee":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Set of verifiers (regular  FastSet addresses) that can sign for this ExternalClaim"},"verifier_quorum":{"$ref":"#/components/schemas/Quorum","description":"Minimum number of verifiers in `verifier_committee` for which fastset validators will sign\nthis transaction"}}},"ClaimData":{"type":"string"},"VerifierSig":{"type":"object","required":["verifier_addr","sig"],"properties":{"sig":{"$ref":"#/components/schemas/Signature"},"verifier_addr":{"$ref":"#/components/schemas/PublicKeyBytes"}}},"StateResetRelease20260319":{"type":"object","description":"Reset the state of a blockchain mirroring account\nThis claim type is a temporary work-around that allows a left behind account to\nbe easily caught up with the target blockchain's tip. In the future this claim type\nwill be dropped and a left-behind mirroring account will need to settle all\nmissed state updates in order to be caught up.","required":["key","reset_state"],"properties":{"key":{"$ref":"#/components/schemas/StateKey","description":"Key to reset"},"reset_state":{"$ref":"#/components/schemas/State","description":"Reset state"}}},"ValidatorConfigRelease20260319":{"type":"object","required":["address","host","rpc_port"],"properties":{"address":{"$ref":"#/components/schemas/PublicKeyBytes"},"host":{"type":"string"},"rpc_port":{"type":"integer","format":"int32","minimum":0}}},"CommitteeChangeRelease20260319":{"type":"object","required":["new_committee","epoch"],"properties":{"epoch":{"type":"integer","format":"int32","minimum":0},"new_committee":{"$ref":"#/components/schemas/CommitteeConfigRelease20260319"}}},"CommitteeConfigRelease20260319":{"type":"object","required":["validators"],"properties":{"validators":{"type":"array","items":{"$ref":"#/components/schemas/ValidatorConfigRelease20260319"}}}},"OperationBundleRelease20260319":{"type":"array","items":{"$ref":"#/components/schemas/OperationRelease20260319"}},"OperationRelease20260319":{"oneOf":[{"type":"object","description":"Transfer tokens","required":["TokenTransfer"],"properties":{"TokenTransfer":{"$ref":"#/components/schemas/TokenTransferRelease20260319","description":"Transfer tokens"}}},{"type":"object","description":"Create custom token","required":["TokenCreation"],"properties":{"TokenCreation":{"$ref":"#/components/schemas/TokenCreationRelease20260319","description":"Create custom token"}}},{"type":"object","description":"Modify custom token","required":["TokenManagement"],"properties":{"TokenManagement":{"$ref":"#/components/schemas/TokenManagementRelease20260319","description":"Modify custom token"}}},{"type":"object","description":"Mint funds in a custom token","required":["Mint"],"properties":{"Mint":{"$ref":"#/components/schemas/MintRelease20260319","description":"Mint funds in a custom token"}}},{"type":"object","description":"Burn tokens from a custom token","required":["Burn"],"properties":{"Burn":{"$ref":"#/components/schemas/BurnRelease20260319","description":"Burn tokens from a custom token"}}},{"type":"object","description":"Initialize the state of an Ethereum blockchain mirroring account","required":["StateInitialization"],"properties":{"StateInitialization":{"$ref":"#/components/schemas/StateInitializationRelease20260319","description":"Initialize the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Update the state of an Ethereum blockchain mirroring account","required":["StateUpdate"],"properties":{"StateUpdate":{"$ref":"#/components/schemas/StateUpdateRelease20260319","description":"Update the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Submit arbitrary data to be settled on the network","required":["ExternalClaim"],"properties":{"ExternalClaim":{"$ref":"#/components/schemas/ExternalClaimRelease20260319","description":"Submit arbitrary data to be settled on the network"}}},{"type":"object","description":"Reset the state of an Ethereum blockchain mirroring account","required":["StateReset"],"properties":{"StateReset":{"$ref":"#/components/schemas/StateResetRelease20260319","description":"Reset the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","required":["JoinCommittee"],"properties":{"JoinCommittee":{"$ref":"#/components/schemas/ValidatorConfigRelease20260319","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps"}}},{"type":"string","description":"Leave Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","enum":["LeaveCommittee"]},{"type":"object","description":"Change Committee request","required":["ChangeCommittee"],"properties":{"ChangeCommittee":{"$ref":"#/components/schemas/CommitteeChangeRelease20260319","description":"Change Committee request"}}}],"description":"One of various types of actions that be put in a multi-operation transaction\nPayload structs are different from the top-level [ClaimType] where we\nneed to support multiple operations with different receivers"},"NetworkId":{"type":"string","description":"A [CAIP-2](https://github.com/ChainAgnostic/CAIPs/blob/main/CAIPs/caip-2.md) compatible identifier.\n\nNetwork IDs are a fixed set of known constants. Use one of the associated\nconstants (e.g. `NetworkId::DEVNET`) or parse from a string via `TryFrom<&str>`."},"TransactionRelease20260407":{"type":"object","description":"Snapshot of a `release20260407` transaction.\n\nCan be deserialized from BCS bytes stored in the DB and converted to the\ncurrent `Transaction` type.","required":["network_id","sender","nonce","timestamp_nanos","claims","archival"],"properties":{"archival":{"type":"boolean","description":"Whether this transaction should be archived.\nWhen an archived transaction is confirmed on a validator,\nsubsequent is_settled requests to that validator must succeed."},"claims":{"$ref":"#/components/schemas/ClaimsRelease20260407","description":"The claims to execute in this transaction"},"fee_token":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/TokenId","description":"The token to use for paying the transaction fee.\nIf `None`, the native token is used (for new tx versions).\nOld tx versions that lack this field get `None` on upcast,\nand the validator resolves them to the default fee token (e.g. USDC)."}]},"network_id":{"$ref":"#/components/schemas/NetworkId","description":"network id"},"nonce":{"$ref":"#/components/schemas/Nonce","description":"A sequence number. Transactions sent by the same account are ordered by nonce."},"sender":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Address of sender, and intended signer of this transaction"},"timestamp_nanos":{"type":"integer","description":"Nanos since the Unix epoch.","minimum":0}}},"ClaimsRelease20260407":{"type":"array","items":{"$ref":"#/components/schemas/OperationRelease20260407"}},"OperationRelease20260407":{"oneOf":[{"type":"object","description":"Transfer tokens","required":["TokenTransfer"],"properties":{"TokenTransfer":{"$ref":"#/components/schemas/TokenTransferRelease20260407","description":"Transfer tokens"}}},{"type":"object","description":"Create custom token","required":["TokenCreation"],"properties":{"TokenCreation":{"$ref":"#/components/schemas/TokenCreationRelease20260407","description":"Create custom token"}}},{"type":"object","description":"Modify custom token","required":["TokenManagement"],"properties":{"TokenManagement":{"$ref":"#/components/schemas/TokenManagementRelease20260407","description":"Modify custom token"}}},{"type":"object","description":"Mint funds in a custom token","required":["Mint"],"properties":{"Mint":{"$ref":"#/components/schemas/MintRelease20260407","description":"Mint funds in a custom token"}}},{"type":"object","description":"Burn tokens from a custom token","required":["Burn"],"properties":{"Burn":{"$ref":"#/components/schemas/BurnRelease20260407","description":"Burn tokens from a custom token"}}},{"type":"object","description":"Initialize the state of an Ethereum blockchain mirroring account","required":["StateInitialization"],"properties":{"StateInitialization":{"$ref":"#/components/schemas/StateInitializationRelease20260407","description":"Initialize the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Update the state of an Ethereum blockchain mirroring account","required":["StateUpdate"],"properties":{"StateUpdate":{"$ref":"#/components/schemas/StateUpdateRelease20260407","description":"Update the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Submit arbitrary data to be settled on the network","required":["ExternalClaim"],"properties":{"ExternalClaim":{"$ref":"#/components/schemas/ExternalClaimRelease20260407","description":"Submit arbitrary data to be settled on the network"}}},{"type":"object","description":"Reset the state of an Ethereum blockchain mirroring account","required":["StateReset"],"properties":{"StateReset":{"$ref":"#/components/schemas/StateResetRelease20260407","description":"Reset the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","required":["JoinCommittee"],"properties":{"JoinCommittee":{"$ref":"#/components/schemas/ValidatorConfigRelease20260407","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps"}}},{"type":"string","description":"Leave Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","enum":["LeaveCommittee"]},{"type":"object","description":"Change Committee request","required":["ChangeCommittee"],"properties":{"ChangeCommittee":{"$ref":"#/components/schemas/CommitteeChangeRelease20260407","description":"Change Committee request"}}},{"type":"object","description":"Escrow operations for three-party refundable payments","required":["Escrow"],"properties":{"Escrow":{"$ref":"#/components/schemas/EscrowRelease20260407","description":"Escrow operations for three-party refundable payments"}}}],"description":"One of various types of actions that can be placed in a transaction's claims bundle"},"TokenTransferRelease20260407":{"type":"object","description":"Transfer tokens to another address","required":["token_id","recipient","amount","user_data"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to transfer"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID to transfer"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Extra data field to associate with this transfer"}}},"TokenCreationRelease20260407":{"type":"object","description":"Create a new token.\nThe token id is derived from the [Transaction]\nso it depends also on the creator and the [Nonce].","required":["token_name","decimals","initial_amount","mints","user_data"],"properties":{"decimals":{"type":"integer","format":"int32","description":"Power of 10 that should be considered a full unit of this token.\nAn [Amount] is still always in least units.","minimum":0},"initial_amount":{"$ref":"#/components/schemas/Amount","description":"Initial balance, which will be held by the creator of the token."},"mints":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Addresses which will be able to create more of this token"},"token_name":{"type":"string","description":"Human-readable name"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"TokenManagementRelease20260407":{"type":"object","description":"Manage an existing token.","required":["token_id","update_id","mints","user_data"],"properties":{"mints":{"type":"array","items":{"type":"array","items":false,"prefixItems":[{"type":"string","enum":["Add","Remove"]},{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."}]},"description":"The minter addresses to be added/removed"},"new_admin":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/PublicKeyBytes","description":"The new admin address; preserve existing admin if None"}]},"token_id":{"$ref":"#/components/schemas/TokenId","description":"The id of the token to be managed"},"update_id":{"$ref":"#/components/schemas/Nonce","description":"The update id for this token (used for sequencing)\nEach update id must be one greater than the last"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"MintRelease20260407":{"type":"object","description":"Create more funds of a token.\nThe sender of the [Transaction] must be a current mint of the token.\nWarning: This is not independent of a token management operation that\nremoves the sender of this transaction from the list of mints.","required":["token_id","recipient","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to mint"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient of the new funds"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token.\nThis is calculated using the keccak256 hash over the data encoded in the same way as\nfor signing."}}},"BurnRelease20260407":{"type":"object","description":"Burn tokens of a custom token.\nThe sender of the [Transaction] must hold sufficient balance of the token.","required":["token_id","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to burn"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token."}}},"StateInitializationRelease20260407":{"type":"object","description":"Initialize one state cell of a blockchain mirroring account","required":["key","initial_state"],"properties":{"initial_state":{"$ref":"#/components/schemas/State","description":"Initial state"},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to initialize"}}},"StateUpdateRelease20260407":{"type":"object","description":"Update the state of a blockchain mirroring account","required":["key","previous_state","next_state","compute_claim_tx_hash","compute_claim_tx_timestamp"],"properties":{"compute_claim_tx_hash":{"type":"array","items":{"type":"integer","format":"int32","minimum":0}},"compute_claim_tx_timestamp":{"type":"integer","minimum":0},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to update"},"next_state":{"$ref":"#/components/schemas/State","description":"Next state"},"previous_state":{"$ref":"#/components/schemas/State","description":"Previous state"}}},"ExternalClaimRelease20260407":{"type":"object","description":"Submit arbitrary data along with a quorum of signatures from external verifiers","required":["claim","signatures"],"properties":{"claim":{"$ref":"#/components/schemas/ExternalClaimBodyRelease20260407","description":"The claim itself plus the required verifier quorum"},"signatures":{"type":"array","items":{"$ref":"#/components/schemas/VerifierSig"},"description":"At least `claim.verifier_quorum` signatures over the enclosing `Transaction` (with this field set to the empty list) by members of `claim.verifier_committee`"}}},"ExternalClaimBodyRelease20260407":{"type":"object","required":["verifier_committee","verifier_quorum","claim_data"],"properties":{"claim_data":{"$ref":"#/components/schemas/ClaimData","description":"Arbitrary data that the verifiers are signing."},"verifier_committee":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Set of verifiers (regular  FastSet addresses) that can sign for this ExternalClaim"},"verifier_quorum":{"$ref":"#/components/schemas/Quorum","description":"Minimum number of verifiers in `verifier_committee` for which fastset validators will sign\nthis transaction"}}},"StateResetRelease20260407":{"type":"object","description":"Reset the state of a blockchain mirroring account\nThis claim type is a temporary work-around that allows a left behind account to\nbe easily caught up with the target blockchain's tip. In the future this claim type\nwill be dropped and a left-behind mirroring account will need to settle all\nmissed state updates in order to be caught up.","required":["key","reset_state"],"properties":{"key":{"$ref":"#/components/schemas/StateKey","description":"Key to reset"},"reset_state":{"$ref":"#/components/schemas/State","description":"Reset state"}}},"ValidatorConfigRelease20260407":{"type":"object","required":["address","host","rpc_port"],"properties":{"address":{"$ref":"#/components/schemas/PublicKeyBytes"},"host":{"type":"string"},"rpc_port":{"type":"integer","format":"int32","minimum":0}}},"CommitteeChangeRelease20260407":{"type":"object","required":["new_committee","epoch"],"properties":{"epoch":{"type":"integer","format":"int32","minimum":0},"new_committee":{"$ref":"#/components/schemas/CommitteeConfigRelease20260407"}}},"CommitteeConfigRelease20260407":{"type":"object","required":["validators"],"properties":{"validators":{"type":"array","items":{"$ref":"#/components/schemas/ValidatorConfigRelease20260407"}}}},"EscrowRelease20260407":{"oneOf":[{"type":"object","required":["CreateConfig"],"properties":{"CreateConfig":{"$ref":"#/components/schemas/EscrowCreateConfigRelease20260407"}}},{"type":"object","required":["CreateJob"],"properties":{"CreateJob":{"$ref":"#/components/schemas/EscrowCreateJobRelease20260407"}}},{"type":"object","required":["Submit"],"properties":{"Submit":{"$ref":"#/components/schemas/EscrowSubmitRelease20260407"}}},{"type":"object","required":["Reject"],"properties":{"Reject":{"$ref":"#/components/schemas/EscrowRejectRelease20260407"}}},{"type":"object","required":["Complete"],"properties":{"Complete":{"$ref":"#/components/schemas/EscrowCompleteRelease20260407"}}}],"description":"Escrow operations for three-party refundable payments"},"EscrowCreateConfigRelease20260407":{"type":"object","description":"Create an escrow configuration that evaluators publish","required":["token_id","evaluator","evaluation_fee","min_evaluator_fee"],"properties":{"evaluation_fee":{"$ref":"#/components/schemas/FixedAmountOrBps"},"evaluator":{"$ref":"#/components/schemas/PublicKeyBytes"},"min_evaluator_fee":{"$ref":"#/components/schemas/Amount"},"token_id":{"$ref":"#/components/schemas/TokenId"}}},"FixedAmountOrBps":{"oneOf":[{"type":"object","required":["Fixed"],"properties":{"Fixed":{"$ref":"#/components/schemas/Amount"}}},{"type":"object","description":"Basis points: 0–10000 (i.e. 100.00%)","required":["Bps"],"properties":{"Bps":{"type":"integer","format":"int32","description":"Basis points: 0–10000 (i.e. 100.00%)","minimum":0}}}],"description":"Represents either a fixed amount or a basis-point percentage"},"EscrowCreateJobRelease20260407":{"type":"object","description":"Create a funded escrow job referencing a config","required":["config_id","provider","provider_fee","description"],"properties":{"config_id":{"$ref":"#/components/schemas/EscrowConfigIdRelease20260407"},"description":{"type":"string"},"provider":{"$ref":"#/components/schemas/PublicKeyBytes"},"provider_fee":{"$ref":"#/components/schemas/Amount"}}},"EscrowConfigIdRelease20260407":{"type":"string"},"EscrowSubmitRelease20260407":{"type":"object","description":"Provider submits a deliverable hash for a job","required":["job_id","deliverable"],"properties":{"deliverable":{"type":"array","items":{"type":"integer","format":"int32","minimum":0}},"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260407"}}},"EscrowJobIdRelease20260407":{"type":"string"},"EscrowRejectRelease20260407":{"type":"object","description":"Evaluator rejects a job -- refunds client, pays evaluator fee","required":["job_id"],"properties":{"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260407"}}},"EscrowCompleteRelease20260407":{"type":"object","description":"Evaluator completes a job -- pays provider, pays evaluator fee","required":["job_id"],"properties":{"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260407"}}},"TransactionRelease20260508":{"type":"object","description":"Snapshot of a `release20260407` transaction.\n\nCan be deserialized from BCS bytes stored in the DB and converted to the\ncurrent `Transaction` type.","required":["network_id","sender","nonce","timestamp_nanos","claims","archival"],"properties":{"archival":{"type":"boolean","description":"Whether this transaction should be archived.\nWhen an archived transaction is confirmed on a validator,\nsubsequent is_settled requests to that validator must succeed."},"claims":{"$ref":"#/components/schemas/ClaimsRelease20260508","description":"The claims to execute in this transaction"},"fee_token":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/TokenId","description":"The token to use for paying the transaction fee.\nIf `None`, the native token is used (for new tx versions).\nOld tx versions that lack this field get `None` on upcast,\nand the validator resolves them to the default fee token (e.g. USDC)."}]},"network_id":{"$ref":"#/components/schemas/NetworkId","description":"network id"},"nonce":{"$ref":"#/components/schemas/Nonce","description":"A sequence number. Transactions sent by the same account are ordered by nonce."},"sender":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Address of sender, and intended signer of this transaction"},"timestamp_nanos":{"type":"integer","description":"Nanos since the Unix epoch.","minimum":0}}},"ClaimsRelease20260508":{"type":"array","items":{"$ref":"#/components/schemas/OperationRelease20260508"}},"OperationRelease20260508":{"oneOf":[{"type":"object","description":"Transfer tokens","required":["TokenTransfer"],"properties":{"TokenTransfer":{"$ref":"#/components/schemas/TokenTransferRelease20260508","description":"Transfer tokens"}}},{"type":"object","description":"Create custom token","required":["TokenCreation"],"properties":{"TokenCreation":{"$ref":"#/components/schemas/TokenCreationRelease20260508","description":"Create custom token"}}},{"type":"object","description":"Modify custom token","required":["TokenManagement"],"properties":{"TokenManagement":{"$ref":"#/components/schemas/TokenManagementRelease20260508","description":"Modify custom token"}}},{"type":"object","description":"Mint funds in a custom token","required":["Mint"],"properties":{"Mint":{"$ref":"#/components/schemas/MintRelease20260508","description":"Mint funds in a custom token"}}},{"type":"object","description":"Burn tokens from a custom token","required":["Burn"],"properties":{"Burn":{"$ref":"#/components/schemas/BurnRelease20260508","description":"Burn tokens from a custom token"}}},{"type":"object","description":"Initialize the state of an Ethereum blockchain mirroring account","required":["StateInitialization"],"properties":{"StateInitialization":{"$ref":"#/components/schemas/StateInitializationRelease20260508","description":"Initialize the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Update the state of an Ethereum blockchain mirroring account","required":["StateUpdate"],"properties":{"StateUpdate":{"$ref":"#/components/schemas/StateUpdateRelease20260508","description":"Update the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Submit arbitrary data to be settled on the network","required":["ExternalClaim"],"properties":{"ExternalClaim":{"$ref":"#/components/schemas/ExternalClaimRelease20260508","description":"Submit arbitrary data to be settled on the network"}}},{"type":"object","description":"Reset the state of an Ethereum blockchain mirroring account","required":["StateReset"],"properties":{"StateReset":{"$ref":"#/components/schemas/StateResetRelease20260508","description":"Reset the state of an Ethereum blockchain mirroring account"}}},{"type":"object","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","required":["JoinCommittee"],"properties":{"JoinCommittee":{"$ref":"#/components/schemas/ValidatorConfigRelease20260508","description":"Join Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps"}}},{"type":"string","description":"Leave Committee request\nSince no escrow is currently involved with the requests we do not check\nthe unicity of the requests and just process them in the order of their\ntimestamps","enum":["LeaveCommittee"]},{"type":"object","description":"Change Committee request","required":["ChangeCommittee"],"properties":{"ChangeCommittee":{"$ref":"#/components/schemas/CommitteeChangeRelease20260508","description":"Change Committee request"}}},{"type":"object","description":"Escrow operations for three-party refundable payments","required":["Escrow"],"properties":{"Escrow":{"$ref":"#/components/schemas/EscrowRelease20260508","description":"Escrow operations for three-party refundable payments"}}}],"description":"One of various types of actions that can be placed in a transaction's claims bundle"},"TokenTransferRelease20260508":{"type":"object","description":"Transfer tokens to another address","required":["token_id","recipient","amount","user_data"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to transfer"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID to transfer"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Extra data field to associate with this transfer"}}},"TokenCreationRelease20260508":{"type":"object","description":"Create a new token.\nThe token id is derived from the [Transaction]\nso it depends also on the creator and the [Nonce].","required":["token_name","decimals","initial_amount","mints","user_data"],"properties":{"decimals":{"type":"integer","format":"int32","description":"Power of 10 that should be considered a full unit of this token.\nAn [Amount] is still always in least units.","minimum":0},"initial_amount":{"$ref":"#/components/schemas/Amount","description":"Initial balance, which will be held by the creator of the token."},"mints":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Addresses which will be able to create more of this token"},"token_name":{"type":"string","description":"Human-readable name"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"TokenManagementRelease20260508":{"type":"object","description":"Manage an existing token.","required":["token_id","update_id","mints","user_data"],"properties":{"mints":{"type":"array","items":{"type":"array","items":false,"prefixItems":[{"type":"string","enum":["Add","Remove"]},{"type":"string","description":"A byte sequence that names an entity on or off the FastSet network.\nTypically encoded as an Ed25519 public key."}]},"description":"The minter addresses to be added/removed"},"new_admin":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/PublicKeyBytes","description":"The new admin address; preserve existing admin if None"}]},"new_token_name":{"type":["string","null"],"description":"The new human-readable display name; preserve existing name if None"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"The id of the token to be managed"},"update_id":{"$ref":"#/components/schemas/Nonce","description":"The update id for this token (used for sequencing)\nEach update id must be one greater than the last"},"user_data":{"$ref":"#/components/schemas/UserData","description":"Arbitrary userdata attached to this transaction"}}},"MintRelease20260508":{"type":"object","description":"Create more funds of a token.\nThe sender of the [Transaction] must be a current mint of the token.\nWarning: This is not independent of a token management operation that\nremoves the sender of this transaction from the list of mints.","required":["token_id","recipient","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to mint"},"recipient":{"$ref":"#/components/schemas/PublicKeyBytes","description":"Recipient of the new funds"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token.\nThis is calculated using the keccak256 hash over the data encoded in the same way as\nfor signing."}}},"BurnRelease20260508":{"type":"object","description":"Burn tokens of a custom token.\nThe sender of the [Transaction] must hold sufficient balance of the token.","required":["token_id","amount"],"properties":{"amount":{"$ref":"#/components/schemas/Amount","description":"Amount to burn"},"token_id":{"$ref":"#/components/schemas/TokenId","description":"Token ID. This is the hash of the TokenCreation transaction that created the token."}}},"StateInitializationRelease20260508":{"type":"object","description":"Initialize one state cell of a blockchain mirroring account","required":["key","initial_state"],"properties":{"initial_state":{"$ref":"#/components/schemas/State","description":"Initial state"},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to initialize"}}},"StateUpdateRelease20260508":{"type":"object","description":"Update the state of a blockchain mirroring account","required":["key","previous_state","next_state","compute_claim_tx_hash","compute_claim_tx_timestamp"],"properties":{"compute_claim_tx_hash":{"type":"array","items":{"type":"integer","format":"int32","minimum":0}},"compute_claim_tx_timestamp":{"type":"integer","minimum":0},"key":{"$ref":"#/components/schemas/StateKey","description":"Key to update"},"next_state":{"$ref":"#/components/schemas/State","description":"Next state"},"previous_state":{"$ref":"#/components/schemas/State","description":"Previous state"}}},"ExternalClaimRelease20260508":{"type":"object","description":"Submit arbitrary data along with a quorum of signatures from external verifiers","required":["claim","signatures"],"properties":{"claim":{"$ref":"#/components/schemas/ExternalClaimBodyRelease20260508","description":"The claim itself plus the required verifier quorum"},"signatures":{"type":"array","items":{"$ref":"#/components/schemas/VerifierSig"},"description":"At least `claim.verifier_quorum` signatures over the enclosing `Transaction` (with this field set to the empty list) by members of `claim.verifier_committee`"}}},"ExternalClaimBodyRelease20260508":{"type":"object","required":["verifier_committee","verifier_quorum","claim_data"],"properties":{"claim_data":{"$ref":"#/components/schemas/ClaimData","description":"Arbitrary data that the verifiers are signing."},"verifier_committee":{"type":"array","items":{"$ref":"#/components/schemas/PublicKeyBytes"},"description":"Set of verifiers (regular  FastSet addresses) that can sign for this ExternalClaim"},"verifier_quorum":{"$ref":"#/components/schemas/Quorum","description":"Minimum number of verifiers in `verifier_committee` for which fastset validators will sign\nthis transaction"}}},"StateResetRelease20260508":{"type":"object","description":"Reset the state of a blockchain mirroring account\nThis claim type is a temporary work-around that allows a left behind account to\nbe easily caught up with the target blockchain's tip. In the future this claim type\nwill be dropped and a left-behind mirroring account will need to settle all\nmissed state updates in order to be caught up.","required":["key","reset_state"],"properties":{"key":{"$ref":"#/components/schemas/StateKey","description":"Key to reset"},"reset_state":{"$ref":"#/components/schemas/State","description":"Reset state"}}},"ValidatorConfigRelease20260508":{"type":"object","required":["address","host","rpc_port"],"properties":{"address":{"$ref":"#/components/schemas/PublicKeyBytes"},"host":{"type":"string"},"rpc_port":{"type":"integer","format":"int32","minimum":0}}},"CommitteeChangeRelease20260508":{"type":"object","required":["new_committee","epoch"],"properties":{"epoch":{"type":"integer","format":"int32","minimum":0},"new_committee":{"$ref":"#/components/schemas/CommitteeConfigRelease20260508"}}},"CommitteeConfigRelease20260508":{"type":"object","required":["validators"],"properties":{"validators":{"type":"array","items":{"$ref":"#/components/schemas/ValidatorConfigRelease20260508"}}}},"EscrowRelease20260508":{"oneOf":[{"type":"object","required":["CreateConfig"],"properties":{"CreateConfig":{"$ref":"#/components/schemas/EscrowCreateConfigRelease20260508"}}},{"type":"object","required":["CreateJob"],"properties":{"CreateJob":{"$ref":"#/components/schemas/EscrowCreateJobRelease20260508"}}},{"type":"object","required":["Submit"],"properties":{"Submit":{"$ref":"#/components/schemas/EscrowSubmitRelease20260508"}}},{"type":"object","required":["Reject"],"properties":{"Reject":{"$ref":"#/components/schemas/EscrowRejectRelease20260508"}}},{"type":"object","required":["Complete"],"properties":{"Complete":{"$ref":"#/components/schemas/EscrowCompleteRelease20260508"}}}],"description":"Escrow operations for three-party refundable payments"},"EscrowCreateConfigRelease20260508":{"type":"object","description":"Create an escrow configuration that evaluators publish","required":["token_id","evaluator","evaluation_fee","min_evaluator_fee"],"properties":{"evaluation_fee":{"$ref":"#/components/schemas/FixedAmountOrBps"},"evaluator":{"$ref":"#/components/schemas/PublicKeyBytes"},"min_evaluator_fee":{"$ref":"#/components/schemas/Amount"},"token_id":{"$ref":"#/components/schemas/TokenId"}}},"EscrowCreateJobRelease20260508":{"type":"object","description":"Create a funded escrow job referencing a config","required":["config_id","provider","provider_fee","description"],"properties":{"config_id":{"$ref":"#/components/schemas/EscrowConfigIdRelease20260508"},"description":{"type":"string"},"provider":{"$ref":"#/components/schemas/PublicKeyBytes"},"provider_fee":{"$ref":"#/components/schemas/Amount"}}},"EscrowConfigIdRelease20260508":{"type":"string"},"EscrowSubmitRelease20260508":{"type":"object","description":"Provider submits a deliverable hash for a job","required":["job_id","deliverable"],"properties":{"deliverable":{"type":"array","items":{"type":"integer","format":"int32","minimum":0}},"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260508"}}},"EscrowJobIdRelease20260508":{"type":"string"},"EscrowRejectRelease20260508":{"type":"object","description":"Evaluator rejects a job -- refunds client, pays evaluator fee","required":["job_id"],"properties":{"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260508"}}},"EscrowCompleteRelease20260508":{"type":"object","description":"Evaluator completes a job -- pays provider, pays evaluator fee","required":["job_id"],"properties":{"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260508"}}},"EscrowJobRecord":{"type":"object","required":["job_id","config_id","client","provider","evaluator","token_id","provider_fee","evaluator_fee","description","status"],"properties":{"client":{"$ref":"#/components/schemas/PublicKeyBytes"},"config_id":{"$ref":"#/components/schemas/EscrowConfigIdRelease20260508"},"deliverable":{"type":["string","null"]},"description":{"type":"string"},"evaluator":{"$ref":"#/components/schemas/PublicKeyBytes"},"evaluator_fee":{"$ref":"#/components/schemas/Amount"},"job_id":{"$ref":"#/components/schemas/EscrowJobIdRelease20260508"},"provider":{"$ref":"#/components/schemas/PublicKeyBytes"},"provider_fee":{"$ref":"#/components/schemas/Amount"},"status":{"type":"string"},"token_id":{"$ref":"#/components/schemas/TokenId"}}},"ResponseMeta":{"type":"object","description":"Shared metadata included in every API response.","required":["timestamp"],"properties":{"timestamp":{"type":"string","description":"ISO-8601 / RFC-3339 UTC timestamp of when the response was generated."}}},"ErrorEnvelope":{"type":"object","description":"Error response envelope.\n\n```json\n{\n  \"error\": { \"code\": \"UNEXPECTED_NONCE\", \"message\": \"…\", \"details\": { … } },\n  \"meta\": { \"timestamp\": \"…\" }\n}\n```","required":["error","meta"],"properties":{"error":{"description":"Structured error body built from [`RestApiError`]."},"meta":{"$ref":"#/components/schemas/ResponseMeta"}}}}}}
````


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fast.xyz/api-reference/rest-api/escrow.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
