# Get Transaction

Retrieve transaction details.

Endpoint: GET /api/v1/transactions/{id}
Version: 0.2.0
Security: bearerAuth

## Path parameters:

  - `id` (string, required)
    ID of the transaction to retrieve.

## Response 200 fields (application/json):

  - `id` (string, required)
    The unique identifier of the object in the Fordefi platform.

  - `created_at` (string, required)
    The date and time when the object was created.

  - `modified_at` (string, required)
    The date and time when the object was last modified. Any change to any field of the resource is considered a modification.

  - `managed_transaction_data` (object)

  - `managed_transaction_data.created_by` (any, required)
    Represents a reference to a user in the Fordefi platform

  - `managed_transaction_data.created_by.id` (string, required)
    The unique identifier of the user in the Fordefi platform.

  - `managed_transaction_data.created_by.user_type` (string, required)
    The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.

  - `managed_transaction_data.created_by.name` (string)
    The name of the user.
    Example: John Doe

  - `managed_transaction_data.created_by.email` (string, required)
    The email of the user.

  - `managed_transaction_data.created_by.state` (string, required)
    Enum: "active", "onboarding_pending_code_generation", "onboarding_pending_activation", "reset_device_pending_code_generation", "reset_device_pending_activation", "pending_approval", "deleted"

  - `managed_transaction_data.created_by.role` (string, required)
    Enum: "admin", "trader", "viewer"

  - `managed_transaction_data.created_by.user_type` (string, required)
    The type of the user.

  - `managed_transaction_data.created_by.state` (string, required)
    The state of the user.
    Enum: "active", "deleted"

  - `managed_transaction_data.created_by.external_id` (string, required)
    External id of the user.
    Example: user|1234

  - `managed_transaction_data.created_by.name` (string, required)
    The name is Fordefi CARE

  - `managed_transaction_data.device_signing_request` (object)
    Represents a device sign request for an action in the Foredefi platform

  - `managed_transaction_data.device_signing_request.signers` (array, required)
    A list of required signers. A signer can be a person or an API Signer.

  - `managed_transaction_data.device_signing_request.signers.modified_at` (string, required)
    When the signer received/signed the action

  - `managed_transaction_data.device_signing_request.signers.has_signed` (boolean, required)
    Whether the signer signed the action

  - `managed_transaction_data.approval_request` (object)
    Represents an approval request for an action in the Fordefi platform

  - `managed_transaction_data.approval_request.state` (string, required)
    Represents the whole approval request state
    Enum: "created", "approved", "insufficient_approvers", "auto_approved", "failed"

  - `managed_transaction_data.approval_request.required_groups` (integer, required)
    The number of required approval groups.

  - `managed_transaction_data.approval_request.approval_groups` (array, required)
    A list of the possible approvers from different groups.

  - `managed_transaction_data.approval_request.approval_groups.quorum_size` (integer, required)
    The number of approvers required to approve the transaction.

  - `managed_transaction_data.approval_request.approval_groups.approvers` (array, required)
    A list of the possible approvers.

  - `managed_transaction_data.approval_request.approval_groups.approvers.user` (any, required)

  - `managed_transaction_data.approval_request.approval_groups.approvers.modified_at` (string, required)
    The date and time when this approval was modified.

  - `managed_transaction_data.approval_request.approval_groups.approvers.state` (string, required)
    Represents an approval state of a single approver
    Enum: "pending", "approved", "unauthorized", "not_participated"

  - `managed_transaction_data.approval_request.error_message` (string)
    The error message if the request failed.

  - `managed_transaction_data.aml_policy_match` (object)

  - `managed_transaction_data.aml_policy_match.is_default` (boolean, required)
    `True` if this is the default rule, `False` otherwise.

  - `managed_transaction_data.aml_policy_match.rule_id` (string, required)
    The unique identifier of the rule.

  - `managed_transaction_data.aml_policy_match.rule_name` (string, required)
    The name of the rule.

  - `managed_transaction_data.aml_policy_match.action_type` (string, required)
    Enum: "allow", "block", "require_approval", "skip"

  - `managed_transaction_data.policy_match` (object)

  - `managed_transaction_data.policy_match.is_default` (boolean, required)
    `True` if this is the default rule, `False` otherwise.

  - `managed_transaction_data.policy_match.rule_id` (string, required)
    The unique identifier of the rule.

  - `managed_transaction_data.policy_match.rule_name` (string, required)
    The name of the rule.

  - `managed_transaction_data.policy_match.action_type` (string, required)
    Enum: "allow", "block", "require_approval"

  - `managed_transaction_data.signer_type` (string, required)
    Enum: "initiator", "api_signer", "end_user", "multiple_signers", "api_user"

  - `managed_transaction_data.risks` (array, required)
    The list of risks associated with this transaction.

  - `managed_transaction_data.risks.type` (string, required)
    Enum: "transfer_to_erc20_contract", "organization_not_interacted_with_address", "vault_not_interacted_with_address", "allowance_to_eoa", "unlimited_allowance", "contract_not_verified", "bridge_dest_differ_from_sender", "nft_approve_for_all", "missing_simulation", "unsupported_simulation", "post_conditions_allow_mode", "safe_sensitive_operation"

  - `managed_transaction_data.risks.severity` (string, required)
    Enum: "low", "medium", "high"

  - `managed_transaction_data.risks.title` (string, required)
    The title of the risk.

  - `managed_transaction_data.risks.description` (string, required)
    A detailed description of the risk.

  - `managed_transaction_data.error_pushing_to_blockchain_message` (string)
    The translated error message received from the node if it was rejected by it.

  - `managed_transaction_data.original_error_pushing_to_blockchain_message` (string)
    The error message received from the node if it was rejected by it.

  - `managed_transaction_data.vault` (object, required)
    Represents a reference to a vault in the Fordefi platform

  - `managed_transaction_data.vault.id` (string, required)
    The unique identifier of the vault in the Fordefi platform.

  - `managed_transaction_data.vault.vault_group_ids` (array, required)
    The unique identifiers of the vault groups this vault belongs to.

  - `managed_transaction_data.vault.name` (string, required)
    The name of the vault.

  - `managed_transaction_data.vault.address` (string)
    The address of the vault.

  - `managed_transaction_data.vault.state` (string, required)
    Enum: "active", "archived", "deleted", "pending", "aborted"

  - `managed_transaction_data.vault.type` (string, required)
    Enum: "aptos", "arch", "black_box", "canton", "cosmos", "evm", "ripple", "safe", "solana", "stacks", "starknet", "stellar", "sui", "ton", "tron", "utxo", "exchange"

  - `managed_transaction_data.vault.logo_url` (string)
    The logo of the vault. Supported for exchange and Safe vaults.

  - `managed_transaction_data.vault.is_external_signer` (boolean)
    Whether the vault uses an externally imported key (external signer).

  - `managed_transaction_data.idempotence_id` (string)
    Optional idempotence ID of a transaction.

  - `managed_transaction_data.has_current_user_vault_permissions` (boolean, required)
    Does current user have permissions to the origin vault according to its vault group permissions.

  - `managed_transaction_data.batch_data` (object)

  - `managed_transaction_data.batch_data.batch_id` (string, required)
    The unique identifier of the batch.

  - `managed_transaction_data.batch_data.index_in_batch` (integer, required)
    Index of transaction in the batch.

  - `managed_transaction_data.batch_data.batch_size` (integer, required)
    The number of transactions in the batch.

  - `managed_transaction_data.batch_data.matched_policies` (array, required)
    List of policies matched by this message.

  - `managed_transaction_data.push_mode` (string)
    Enum: "auto", "manual", "deferred"

  - `managed_transaction_data.last_pushed_at` (string)
    The last time the transaction was pushed to the node.

  - `managed_transaction_data.sign_mode` (string)
    Enum: "auto", "triggered"

  - `managed_transaction_data.fee_paid_by` (any)
    Details of the vault that paid the fee for this transaction.

  - `managed_transaction_data.fee_paid_by.type` (string, required)
    The type of fee payer.

  - `managed_transaction_data.attested_payload_for_signing` (string)
    JWS attestation for the payload (external signer). Set after finalize-for-signing.

  - `managed_transaction_data.tx_policy_explanation_id` (string)
    The id of the transaction policy explanation produced for this transaction, if any.

  - `signatures` (array, required)
    The transaction signatures.

  - `signatures.data` (string, required)
    Signature on the transaction, encoded in base64 format.
    Example: SGVsbG8=

  - `signatures.signed_by` (any)
    The user who created this signature, `null` if the signature wasn't created by a Fordefi user.

  - `note` (string)
    An optional transaction note.

  - `spam_state` (string)
    Enum: "unset", "manually_set", "automatically_set"

  - `direction` (string, required)
    Enum: "outgoing", "incoming"

  - `signed_externally` (boolean)
    Whether the transaction was signed by an external user (for example in case of imported vault).

  - `interacted_vaults` (array, required)
    The vaults that interacted with the transaction.

  - `related_transactions` (array)
    The related transactions.

  - `related_transactions.type` (string, required)
    Enum: "swap_fulfilled_by", "swap_fulfilling", "bridge_intent", "bridge_source", "bridge_destination", "stellar_claim_of", "stellar_claimed_by", "canton_accept_of", "canton_accepted_by", "ripple_cash_of", "ripple_cashed_by", "ripple_cash_trustline", "ripple_trustline_for", "ripple_trustline_for_check"

  - `related_transactions.hash` (string)
    The hash of the related transaction.

  - `related_transactions.id` (string)
    The id of the related transaction.

  - `related_transactions.chain` (any, required)
    A blockchain with metadata.

  - `related_transactions.chain.chain_type` (string, required)
    The type of the chain.

  - `related_transactions.chain.unique_id` (string, required)
    Enum: "aptos_mainnet", "aptos_testnet", "aptos_movement_mainnet", "aptos_movement_testnet"

  - `related_transactions.chain.name` (string, required)
    The full blockchain name.

  - `related_transactions.chain.native_currency_symbol` (string, required)
    The native currency symbol.
    Example: ETH

  - `related_transactions.chain.native_currency_name` (string, required)
    The native currency name.
    Example: Ether

  - `related_transactions.chain.blockchain_explorer` (object)
    A blockchain explorer entry point.

  - `related_transactions.chain.blockchain_explorer.transaction_url` (string, required)
    Example: https://etherscan.io/tx/

  - `related_transactions.chain.blockchain_explorer.address_url` (string, required)
    Example: https://etherscan.io/address/

  - `related_transactions.chain.blockchain_explorer.root_url` (string, required)
    Example: https://etherscan.io/

  - `related_transactions.chain.blockchain_explorer.transaction_format_url` (string)
    Example: https://etherscan.io/tx/%s

  - `related_transactions.chain.blockchain_explorer.address_format_url` (string)
    Example: https://etherscan.io/address/%s

  - `related_transactions.chain.blockchain_explorer.asset_format_url` (string)
    Example: https://etherscan.io/address/%s

  - `related_transactions.chain.logo_url` (string, required)
    The logo URL of the chain.

  - `related_transactions.chain.is_testnet` (boolean, required)
    Whether the chain is on a testnet.

  - `related_transactions.chain.is_enabled` (boolean, required)
    Whether the chain is enabled.

  - `related_transactions.chain.base_denom` (string, required)
    The base denom of the chain.

  - `related_transactions.chain.bech32_prefix` (string, required)
    Enum: "agoric", "akash", "archway", "axelar", "bbn", "celestia", "cosmos", "dydx", "dym", "inj", "neutron", "nillion", "noble", "osmo", "saga", "sei", "stride", "thor", "mantra"

  - `related_transactions.chain.named_chain_id` (string)
    The EVM chain name can be either one of those supported by the default chains below or a custom chain name if one was added to your organization. `arbitrum_mainnet``arbitrum_sepolia``aster_mainnet``avalanche_chain``avalanche_fuji``base_mainnet``berachain_mainnet``blast_mainnet``bsc_mainnet``canto_mainnet``clink_mainnet``clink_testnet``conflux_mainnet``dymension_mainnet``ethereum_goerli``ethereum_holesky``ethereum_mainnet``ethereum_sepolia``fantom_mainnet``flare_mainnet``flare_testnet``gnosis_mainnet``hypercore_mainnet``hyperevm_mainnet``ink_mainnet``kava_mainnet``katana_mainnet``linea_mainnet``optimism_mainnet``pharos_mainnet``plasma_mainnet``manta_pacific_mainnet``mantle_mainnet``merlin_mainnet``monad_mainnet``polygon_mainnet``polygon_mumbai``polygon_zkevm_mainnet``reya_mainnet``robinhood_mainnet``rootstock_mainnet``scroll_mainnet``sei_mainnet``sonic_mainnet``tempo_mainnet``unichain_mainnet``xai_mainnet``x_layer_mainnet``zero_gravity_mainnet``zeta_mainnet``zklink_nova_mainnet``zksync_era_mainnet`

  - `related_transactions.chain.chain_id` (integer, required)
    The EVM chain ID can be either one of those supported by the default chains below or a custom chain ID if one was added to your organization. 1=`ethereum_mainnet`5=`ethereum_goerli`10=`optimism_mainnet`14=`flare_mainnet`16=`flare_testnet`30=`rootstock_mainnet`56=`bsc_mainnet`100=`gnosis_mainnet`130=`unichain_mainnet`137=`polygon_mainnet`143=`monad_mainnet`146=`sonic_mainnet`169=`manta_pacific_mainnet`196=`x_layer_mainnet`250=`fantom_mainnet`324=`zksync_era_mainnet`999=`hyperevm_mainnet`1030=`conflux_mainnet`1100=`dymension_mainnet`1101=`polygon_zkevm_mainnet`1329=`sei_mainnet`1337=`hypercore_mainnet`1666=`aster_mainnet`1672=`pharos_mainnet`1729=`reya_mainnet`2222=`kava_mainnet`4200=`merlin_mainnet`4217=`tempo_mainnet`4663=`robinhood_mainnet`5000=`mantle_mainnet`7000=`zeta_mainnet`7700=`canto_mainnet`8453=`base_mainnet`8818=`clink_mainnet`8819=`clink_testnet`9745=`plasma_mainnet`16661=`zero_gravity_mainnet`17000=`ethereum_holesky`80001=`polygon_mumbai`80094=`berachain_mainnet`42161=`arbitrum_mainnet`43113=`avalanche_fuji`43114=`avalanche_chain`57073=`ink_mainnet`59144=`linea_mainnet`81457=`blast_mainnet`421614=`arbitrum_sepolia`534352=`scroll_mainnet`660279=`xai_mainnet`747474=`katana_mainnet`810180=`zklink_nova_mainnet`11155111=`ethereum_sepolia`

  - `related_transactions.chain.unique_id` (string, required)
    The unique EVM chain ID. Can be either one of those supported by the default chains below or a custom numeric chain ID `evm_<numeric_chain_id>` if one was added to your organization. `"evm_1"``"evm_5"``"evm_10"``"evm_14"``"evm_16"``"evm_30"``"evm_56"``"evm_100"``"evm_130"``"evm_137"``"evm_143"``"evm_146"``"evm_169"``"evm_196"``"evm_250"``"evm_324"``"evm_999"``"evm_1030"``"evm_1100"``"evm_1101"``"evm_1329"``"evm_1337"``"evm_1666"``"evm_1672"``"evm_1729"``"evm_2222"``"evm_4200"``"evm_4217"``"evm_4663"``"evm_5000"``"evm_7000"``"evm_7700"``"evm_8453"``"evm_8818"``"evm_8819"``"evm_9745"``"evm_16661"``"evm_17000"``"evm_80001"``"evm_80094"``"evm_42161"``"evm_43113"``"evm_43114"``"evm_57073"``"evm_59144"``"evm_81457"``"evm_421614"``"evm_534352"``"evm_660279"``"evm_747474"``"evm_810180"``"evm_11155111"``"evm_ethereum_mainnet"``"evm_ethereum_goerli"``"evm_optimism_mainnet"``"evm_flare_mainnet"``"evm_flare_testnet"``"evm_rootstock_mainnet"``"evm_bsc_mainnet"``"evm_gnosis_mainnet"``"evm_unichain_mainnet"``"evm_polygon_mainnet"``"evm_monad_mainnet"``"evm_sonic_mainnet"``"evm_manta_pacific_mainnet"``"evm_x_layer_mainnet"``"evm_fantom_mainnet"``"evm_zksync_era_mainnet"``"evm_hyperevm_mainnet"``"evm_conflux_mainnet"``"evm_dymension_mainnet"``"evm_polygon_zkevm_mainnet"``"evm_sei_mainnet"``"evm_hypercore_mainnet"``"evm_aster_mainnet"``"evm_pharos_mainnet"``"evm_reya_mainnet"``"evm_kava_mainnet"``"evm_merlin_mainnet"``"evm_tempo_mainnet"``"evm_robinhood_mainnet"``"evm_mantle_mainnet"``"evm_zeta_mainnet"``"evm_canto_mainnet"``"evm_base_mainnet"``"evm_clink_mainnet"``"evm_clink_testnet"``"evm_plasma_mainnet"``"evm_zero_gravity_mainnet"``"evm_ethereum_holesky"``"evm_polygon_mumbai"``"evm_berachain_mainnet"``"evm_arbitrum_mainnet"``"evm_avalanche_fuji"``"evm_avalanche_chain"``"evm_ink_mainnet"``"evm_linea_mainnet"``"evm_blast_mainnet"``"evm_arbitrum_sepolia"``"evm_scroll_mainnet"``"evm_xai_mainnet"``"evm_katana_mainnet"``"evm_zklink_nova_mainnet"``"evm_ethereum_sepolia"`

  - `related_transactions.chain.gas_type` (string, required)
    Enum: "dynamic", "legacy"

  - `related_transactions.chain.supports_mev_protected_node` (boolean)
    `True` if the chain supports MEV protected nodes, `False` otherwise.

  - `related_transactions.chain.rpc_url` (string)
    The URL of the chain's RPC. Exists only for custom chains.

  - `related_transactions.chain.source` (string, required)
    Enum: "default", "custom"

  - `related_transactions.chain.supports_7702` (boolean)
    `True` if the chain supports 7702, `False` otherwise.

  - `related_transactions.explorer_url` (string)
    The URL of the related transaction in a blockchain explorer.

  - `organization_id` (string, required)
    The organization that the transaction belongs to.

  - `state` (string, required)
    Enum: "waiting_for_approval", "waiting_for_signing_trigger", "approved", "finalized_for_signing", "signed", "sent_to_provider", "completed", "error_signing", "aborted", "error_submitting_to_provider", "dropped"

  - `state_changes` (array, required)
    The state changes of the message.

  - `state_changes.changed_at` (string, required)
    The date and time when the state was changed.

  - `state_changes.reason` (string)
    Enum: "failed_to_verify_signature", "original_transaction_was_completed", "stale_nonce", "quote_expired", "another_dlc_transaction_was_completed", "fee_limit_exceeded", "not_in_mempool_or_chain", "exchange_withdraw_address_not_whitelisted", "exchange_invalid_api_key_permissions", "exchange_funds_pending_settlement", "exchange_withdrawal_limit_exceeded", "exchange_security_and_policy_holds", "exchange_service_unavailable"

  - `type` (string, required)
    Aptos message type.

  - `aptos_message_type` (string, required)
    Enum: "personal_message_type"

  - `raw_original_message_to_sign` (string, required)
    The original message that was requested to be signed, encoded in base64.
    Example: SGVsbG8=

  - `string_original_message_to_sign` (string, required)
    The original message that was requested to be signed.

  - `raw_full_message_to_sign` (string, required)
    The full message to be signed, encoded in base64.
    Example: SGVsbG8=

  - `string_full_message_to_sign` (string, required)
    The full message to be signed.

  - `sender` (object, required)

  - `sender.explorer_url` (string)
    The URL of a blockchain explorer that provides real-time information about the address.

  - `sender.contact` (object)
    Represents a reference to an address book contact in the Fordefi platform.

  - `sender.contact.id` (string, required)
    The unique identifier of the address book contact in the Fordefi platform.

  - `sender.contact.name` (string, required)
    The name of the contact.

  - `sender.contact.address_ref` (any, required)

  - `sender.contact.address_ref.chain_type` (string, required)
    The type of the chain.

  - `sender.contact.address_ref.address` (string, required)
    The address on the Aptos chain.
    Example: 0x3300c18e7b931bdfc73dccf3e2d043ad1c9d120c777fff5aeeb9956224e5247a

  - `sender.contact.address_ref.chains` (array, required)
    The chains that the contact belongs to.

  - `sender.contact.address_ref.chains.chain_type` (string, required)
    The type of the chain.

  - `sender.contact.address_ref.address` (string, required)
    The address on the Arch chain.
    Example: 4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA

  - `sender.contact.address_ref.chains` (array, required)
    The chains the contact belongs to.

  - `sender.contact.address_ref.address` (string, required)
    The party id on the Canton chain.
    Example: 45b72ac2a9742204e6e5f521781b0648::122028536bd166988ebbb422c7f483bb32d4134127e8c171c9666ce9b518e1dd27cf

  - `sender.contact.address_ref.memo` (string)
    Memo is an additional address feature used for identifying a recipient.

  - `sender.contact.address_ref.address` (string, required)
    The address on the cosmos chain.
    Example: cosmos1tdk0g5d4ry9lq0erejttyufqcvwpqdj6tdql38

  - `sender.contact.address_ref.chain` (object, required)

  - `sender.contact.address_ref.chain.chain_type` (string, required)
    The type of the chain.

  - `sender.contact.address_ref.address` (string, required)
    The address of the contact.
    Example: 0x71C7656EC7ab88b098defB751B7401B5f6d8976F

  - `sender.contact.address_ref.address` (string, required)
    The classic address on the Ripple chain.
    Example: rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh

  - `sender.contact.address_ref.tag` (string)
    The XRP Ledger destination tag, a numeric value used for identifying a recipient.

  - `sender.contact.address_ref.address` (string, required)
    The address on the Solana chain.
    Example: 4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA

  - `sender.contact.address_ref.address` (string, required)
    The address on the Stacks chain.
    Example: SP3J4NWQXC312DK0GXVRZKSRFBZG8S5FG1D2160E9

  - `sender.contact.address_ref.address` (string, required)
    The address on the Starknet chain.
    Example: 0x0448f450e64B50dDF49e9F95C5b63a15cD21E21a39cA2D45628d9E5B27e5e1D8

  - `sender.contact.address_ref.address` (string, required)
    The address on the Stellar chain.
    Example: GBRPYHIL2CI3FNQ4BXLFMNDLFJHO7W3B6FSHLTAVM2A4P45SHO4ZB7I2

  - `sender.contact.address_ref.address` (string, required)
    The address on the Sui chain.
    Example: 0x3300c18e7b931bdfc73dccf3e2d043ad1c9d120c777fff5aeeb9956224e5247a

  - `sender.contact.address_ref.address` (string, required)
    The address on the TON chain.

  - `sender.contact.address_ref.comment` (string)
    Comment is an additional address feature used for identifying a recipient.

  - `sender.contact.address_ref.address` (string, required)
    The address on the TRON chain.
    Example: TJCnKsPa7y5okkXvQAidZBzqx3QyQ6sxMW

  - `sender.contact.address_ref.address` (string, required)
    The address on the utxo chain.
    Example: bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq

  - `sender.type` (string, required)

  - `sender.address` (string, required)
    The Aptos address represented in hex format.
    Example: 0x3300c18e7b931bdfc73dccf3e2d043ad1c9d120c777fff5aeeb9956224e5247a

  - `block` (object)

  - `block.number` (integer, required)
    The block number.

  - `block.hash` (string)
    The block hash.

  - `block.mined_at` (string, required)
    The date and time when this block was mined.

  - `state_changes` (array, required)
    The state changes of the transaction.

  - `aml_check` (object)

  - `aml_check.results` (object)

  - `aml_check.results.scan_status` (string, required)
    Enum: "error", "timeout", "skipped", "completed", "unsupported_chain", "pending"

  - `aml_check.results.error_message` (string)
    The error message if the scan failed.

  - `aml_check.results.scan_results` (any)

  - `aml_check.results.scan_results.type` (string, required)
    The type of the policy.

  - `aml_check.results.scan_results.alerts` (array, required)
    The list of alerts.

  - `aml_check.results.scan_results.alerts.category` (object, required)

  - `aml_check.results.scan_results.alerts.category.id` (integer, required)
    The category ID.

  - `aml_check.results.scan_results.alerts.category.name` (string, required)
    The category name.

  - `aml_check.results.scan_results.alerts.risk_rating` (string, required)
    Enum: "low", "medium", "high", "severe"

  - `aml_check.results.scan_results.alerts.exposure_type` (string, required)
    Enum: "direct", "indirect"

  - `aml_check.results.scan_results.alerts.service` (string)
    The name of the service as defined by Chainalysis. If null returns, Chainalysis has not yet identified the service's name.

  - `aml_check.results.scan_results.external_id` (string, required)
    A unique identifier of the scan.

  - `aml_check.incoming_aml_check` (object)

  - `aml_check.incoming_aml_check.policy_match` (object)

  - `aml_check.incoming_aml_check.policy_match.is_default` (boolean, required)
    `True` if this is the default rule, `False` otherwise.

  - `aml_check.incoming_aml_check.policy_match.rule_id` (string, required)
    The unique identifier of the rule.

  - `aml_check.incoming_aml_check.policy_match.rule_name` (string, required)
    The name of the rule.

  - `aml_check.incoming_aml_check.policy_match.action_type` (string, required)
    Enum: "allow", "freeze", "skip"

  - `aml_check.incoming_aml_check.users_eligible_to_unfreeze` (array)
    list of possible approvers

  - `aml_check.incoming_aml_check.frozen` (boolean)
    Whether the transaction is frozen.

  - `mined_result_status` (string)
    Enum: "success", "missing", "potentially_partial"

  - `simulation_status_result` (object)

  - `simulation_status_result.simulation_status` (string)
    Enum: "success", "failed", "reverted", "skipped"

  - `simulation_status_result.details` (string, required)
    Details about transaction reversion if occurred.

  - `type` (string, required)
    Aptos transaction type.

  - `aptos_transaction_type_details` (any, required)
    Details of the Aptos transaction based on its type.

  - `aptos_transaction_type_details.type` (string, required)
    A transaction involving the transfer of APT coin from one address to another.

  - `aptos_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `aptos_transaction_type_details.type` (string, required)
    A transaction involving the transfer of non-APT coin from one address to another.

  - `aptos_transaction_type_details.type` (string, required)
    A transaction with an entry point function.

  - `aptos_transaction_type_details.type` (string, required)
    A transaction with running a move script.

  - `aptos_transaction_type_details.code` (string, required)
    The code of the script.

  - `version` (integer)
    The version of the transaction.

  - `nonce` (integer)
    The nonce of the transaction.

  - `payload` (any, required)
    The payload of the transaction.

  - `payload.typed_arguments` (array, required)
    The typed arguments of the transaction.

  - `payload.arguments` (array, required)
    The arguments of the transaction.

  - `payload.type` (string, required)

  - `payload.function_id` (string, required)
    The entry function of the transaction.

  - `payload.module` (string, required)
    The module of the entry function.

  - `payload.function_name` (string, required)
    The name of the entry function.

  - `payload.code` (string, required)
    The script code of the transaction.
    Example: SGVsbG8=

  - `hash` (string)
    The hash of the transaction.
    Example: 0x780f21260f89d610f24eed21b34d29229611a37e0003e83dd0da91981d7131ae

  - `gas_submitted` (object, required)

  - `gas_submitted.gas_limit` (string, required)
    The gas limit of the transaction.
    Example: 1000000000000000000

  - `gas_submitted.price` (object, required)

  - `gas_submitted.price.priority_level` (string, required)
    Enum: "custom", "low", "medium", "high"

  - `gas_submitted.price.price` (string, required)
    The price per gas unit (in Octa).
    Example: 1000000000000000000

  - `gas_submitted.price.fiat_price` (object)
    Price represents a price in a given FiatCurrency.

  - `gas_submitted.price.fiat_price.price_float` (string, required)
    The absolute price in the given fiat currency. When is_negative is true the asset's value is the negative of this (e.g. a debt token).
    Example: 1000000000000000000

  - `gas_submitted.price.fiat_price.is_negative` (boolean)
    Whether the asset's value is negative (e.g. a debt token). price_float holds the absolute value.

  - `gas_submitted.price.fiat_price.fiat_currency` (object, required)

  - `gas_submitted.price.fiat_price.fiat_currency.currency_symbol` (string, required)
    FiatCurrencySymbol
    Enum: "usd"

  - `gas_submitted.price.fiat_price.fiat_currency.decimals` (integer, required)
    The number of decimals in the fiat currency.

  - `with_external_fee_payer` (boolean)
    If true, the transaction's Authenticator will be configured to support an external fee payer. After Fordefi signs the transaction, the client is responsible for forwarding it to the designated fee payer for final signing and broadcasting.

  - `serialized_signed_transaction` (string)
    The serialized signed transaction.
    Example: SGVsbG8=

  - `expected_result` (object)

  - `expected_result.reversion` (object, required)

  - `expected_result.reversion.state` (string, required)
    Enum: "not_reverted", "unknown_revert", "contract_asserted", "insufficient_funds_gas_and_value"

  - `expected_result.reversion.reason` (string)
    The reason for the reversion (additional information).

  - `expected_result.fee_statement` (object, required)

  - `expected_result.fee_statement.execution_gas_units` (string, required)
    Example: 1000000000000000000

  - `expected_result.fee_statement.io_gas_units` (string, required)
    Example: 1000000000000000000

  - `expected_result.fee_statement.storage_fee_octas` (string, required)
    Example: 1000000000000000000

  - `expected_result.fee_statement.storage_fee_refund_octas` (string, required)
    Example: 1000000000000000000

  - `expected_result.fee_statement.total_charge_gas_units` (string, required)
    Example: 1000000000000000000

  - `expected_result.fee_statement.total_gas` (string, required)
    The total gas fee of the transaction (in Octa).
    Example: 1000000000000000000

  - `expected_result.fee_statement.priced_asset` (object, required)

  - `expected_result.fee_statement.priced_asset.type` (string, required)

  - `expected_result.fee_statement.priced_asset.asset_info` (object, required)

  - `expected_result.fee_statement.priced_asset.asset_info.id` (string, required)
    The asset ID.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier` (any, required)

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Aptos asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.details` (any, required)

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.details.type` (string, required)
    Aptos asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.details.type` (string, required)
    Legacy coin asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.details.coin_type` (object, required)
    Coin type represents a blockchain legacy coin type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.details.coin_type.coin_type_str` (string, required)
    Coin type string representation.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.details.type` (string, required)
    New coin asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.details.new_coin_type` (object, required)
    New coin type represents a blockchain new coin type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.details.new_coin_type.metadata_address` (string, required)
    New coin's metadata address.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Arch asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Canton asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Cosmos asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.exchange_type` (string, required)
    Enum: "binance", "bybit", "coinbase_international", "coinbase_us", "okx", "kraken", "paxos"

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.asset_symbol` (string, required)
    The symbol of the asset on the exchange.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Ripple asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Solana asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Stacks asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Stellar asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Starknet asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Sui asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    TON asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    TRON asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.asset_identifier.type` (string, required)
    Utxo asset identifier type.

  - `expected_result.fee_statement.priced_asset.asset_info.name` (string, required)
    The name of the asset.

  - `expected_result.fee_statement.priced_asset.asset_info.symbol` (string, required)
    The symbol (ticker) of the asset.

  - `expected_result.fee_statement.priced_asset.asset_info.decimals` (integer, required)

  - `expected_result.fee_statement.priced_asset.asset_info.verified` (boolean, required)
    `True` if this asset is verified by Fordefi, `False` otherwise.

  - `expected_result.fee_statement.priced_asset.asset_info.metadata_uri` (string)
    The URI of the asset metadata.

  - `expected_result.fee_statement.priced_asset.asset_info.is_spam` (boolean, required)
    `True` if this asset is spam, `False` otherwise.

  - `expected_result.fee_statement.priced_asset.asset_info.logo_url` (string)
    The URL of the asset logo.

  - `expected_result.fee_statement.priced_asset.asset_info.explorer_url` (string)
    The URL of a blockchain explorer that provides real-time information about the asset.

  - `expected_result.fee_statement.priced_asset.asset_info.issuer_name` (string)
    Best-effort display name of the issuer

  - `expected_result.effects` (object, required)

  - `expected_result.effects.balance_changes` (array, required)

  - `expected_result.effects.balance_changes.diff` (string, required)
    The amount of that was added to or deducted from the owner's balance. If the amount was deducted, the value is negative; if the amount was added, the value is positive.
    Example: 1000000000000000000

  - `expected_result.effects.transfers` (array, required)

  - `expected_result.effects.transfers.amount` (string, required)
    The amount of the transfer.
    Example: 1000000000000000000

  - `expected_result.raw_result` (string)
    The raw result of the transaction.

  - `explorer_url` (string)
    The URL of this transaction in a blockchain explorer. For example, explorer.aptoslabs.com
    Example: https://explorer.aptoslabs.com/txn/0xe2b537430a0b30d05272f4cb99945d3355fdcb5d1390b348cdc320645786799d?network=mainnet

  - `type` (string, required)
    The type of the transaction.

  - `arch_transaction_type_details` (any, required)
    Details of the Arch transaction based on its type.

  - `arch_transaction_type_details.type` (string, required)
    A transaction involving the transfer of native currency from one address to another.

  - `arch_transaction_type_details.recipient` (object, required)

  - `arch_transaction_type_details.recipient.explorer_url` (string)
    The URL of a blockchain explorer that provides real-time information about the address.

  - `arch_transaction_type_details.recipient.type` (string, required)

  - `arch_transaction_type_details.recipient.address` (string, required)
    The Arch address represented in Base58 format.
    Example: 4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA

  - `arch_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `arch_transaction_type_details.type` (string, required)
    A transaction capable of any operation.

  - `arch_transaction_type_details.recipients` (array, required)
    The recipients of the tokens.

  - `instructions` (array, required)
    The instructions of the transaction.

  - `instructions.program_index` (integer, required)
    The program index.

  - `instructions.data` (string, required)
    The instruction data in Base64 format.
    Example: SGVsbG8=

  - `instructions.account_indexes` (array, required)
    The indexes of the instruction accounts in the transaction accounts list.

  - `instructions.base58_data` (string)
    The instruction data encoded in Base58 format.

  - `accounts` (array, required)
    Accounts used in the transaction.

  - `accounts.writable` (boolean, required)
    Indicates if this account is writable in the context of the transaction.

  - `accounts.signer` (boolean, required)
    Indicates if this account is a signer of the transaction.

  - `raw_transaction` (string)
    The serialized transaction encoded as a base64 string
    Example: SGVsbG8=

  - `recent_blockhash` (string)
    The transaction nonce (last block hash).

  - `explorer_url` (string)
    The URL of this transaction in a blockchain explorer. For example, gomaestro
    Example: https://explorer.gomaestro.org/arch/testnet/tx/1234567890

  - `type` (string, required)
    Black Box signature type.

  - `details` (any, required)

  - `details.type` (string, required)
    ECDSA over the Stark curve signature.

  - `details.signature` (object)

  - `details.signature.r` (string, required)
    The x-coordinate of the point on the curve, represented in hex format.

  - `details.signature.s` (string, required)
    The scalar, known as the "signature proof", represented in hex format.

  - `details.signature.v` (integer, required)
    The recovery id, only relevant for Ethereum signatures.

  - `details.hash_binary` (string, required)
    The payload to sign, encoded in base64 format.
    Example: SGVsbG8=

  - `details.type` (string, required)
    ECDSA over the secp256k1 curve signature.

  - `details.hash_binary` (string, required)
    The payload to sign, encoded in base64 format.
    Example: SGVsbG8=

  - `details.type` (string, required)
    EDDSA signature.

  - `details.signature` (string)
    The signature, encoded in base64 format.
    Example: SGVsbG8=

  - `details.type` (string, required)
    Schnorr over the secp256k1 curve signature.

  - `type` (string, required)
    Canton transaction type.

  - `canton_transaction_type_details` (any, required)
    Details of the Canton transaction based on its type.

  - `canton_transaction_type_details.type` (string, required)
    A transaction involving the transfer of native Canton currency from one address to another.

  - `canton_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the recipient is unknown.

  - `canton_transaction_type_details.type` (string, required)
    A transaction involving the transfer of a CIP-56 token from one address to another.

  - `canton_transaction_type_details.type` (string, required)
    A transaction that allocates an external party on a Canton node.

  - `canton_transaction_type_details.type` (string, required)
    A transaction that approves pending incoming transfers.

  - `canton_transaction_type_details.type` (string, required)
    A transaction that sets up a transfer pre-approval for auto-accepting incoming transfers.

  - `memo` (string)
    Optional memo attached to the transfer.

  - `approval_status` (string)
    Enum: "requires_approval", "approved", "expired"

  - `approval_expires_at` (string)
    Only set when `approval_status` is `requires_approval`. The sender's `executeBefore` on the pending TransferInstruction — the receiver must accept before this time or the transfer expires.

  - `hash` (string)
    The on-ledger update id of the transaction.

  - `explorer_url` (string)
    Link to view the transaction on the block explorer.

  - `cosmos_transaction_type_details` (any, required)

  - `cosmos_transaction_type_details.transaction_data` (any, required)

  - `cosmos_transaction_type_details.transaction_data.format` (string, required)

  - `cosmos_transaction_type_details.transaction_data.messages` (array, required)
    List of messages in amino format.

  - `cosmos_transaction_type_details.transaction_data.messages.type` (string, required)
    Message type.

  - `cosmos_transaction_type_details.transaction_data.messages.value` (string, required)
    Message value.

  - `cosmos_transaction_type_details.transaction_data.messages` (array, required)
    List of messages in direct format.

  - `cosmos_transaction_type_details.transaction_data.messages.value` (string, required)
    Message bytes, encoded in base64 format.
    Example: SGVsbG8=

  - `cosmos_transaction_type_details.transaction_data.messages` (string, required)
    List of messages of non-managed transaction.

  - `cosmos_transaction_type_details.type` (string, required)
    A transaction of multiple messages.

  - `cosmos_transaction_type_details.sender` (object, required)

  - `cosmos_transaction_type_details.sender.explorer_url` (string)
    The URL of a blockchain explorer that provides real-time information about the address.

  - `cosmos_transaction_type_details.sender.type` (string, required)

  - `cosmos_transaction_type_details.sender.address` (object, required)

  - `cosmos_transaction_type_details.sender.address.type` (string, required)

  - `cosmos_transaction_type_details.sender.address.address` (string, required)
    The address as bech32.
    Example: cosmos1tdk0g5d4ry9lq0erejttyufqcvwpqdj6tdql38

  - `cosmos_transaction_type_details.sender.address.hex_repr` (string)
    The hex representation of the address.
    Example: DBCE78FD2D006A3BAC2C548D93271ABA3D63F01E

  - `cosmos_transaction_type_details.sender.address.key_type` (string)
    Enum: "secp256k1", "ethsecp256k1"

  - `cosmos_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `cosmos_transaction_type_details.type` (string, required)
    A transaction involving a native transfer from one address to another.

  - `cosmos_transaction_type_details.type` (string, required)
    A transaction involving a token transfer from one address to another.

  - `memo` (string)
    Transaction memo.

  - `explorer_url` (string)
    The URL of this transaction in a blockchain explorer.
    Example: https://www.mintscan.io/cosmos/txs/65A22C9050C8A29DE15CD8D0D08C847766B734403008C428C3148A23137ED3EF

  - `signers_info` (array, required)
    List of signers info.

  - `signers_info.public_key` (string, required)
    Public key in its compressed format

  - `signers_info.account` (string, required)
    The account number assigned by the chain.
    Example: 1000000000000000000

  - `signers_info.sequence` (string, required)
    The sequence of this transaction.
    Example: 1000000000000000000

  - `sign_doc` (any)

  - `sign_doc.format` (string, required)

  - `sign_doc.sign_doc` (object, required)

  - `sign_doc.sign_doc.account_number` (string, required)
    The account number of the signer of the transaction.
    Example: 1000000000000000000

  - `sign_doc.sign_doc.sequence` (string, required)
    The sequence of the signer of the transaction.
    Example: 1000000000000000000

  - `sign_doc.sign_doc.timeout_height` (string)
    The timeout height for the signed transaction.
    Example: 1000000000000000000

  - `sign_doc.sign_doc.fee` (object, required)

  - `sign_doc.sign_doc.fee.coins` (array, required)

  - `sign_doc.sign_doc.fee.coins.coin_with_amount` (any, required)
    The coin info.

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.amount` (string, required)
    The amount of the coin in base unit (for example uatom).
    Example: 1000000000000000000

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.type` (string, required)

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.coin` (object, required)

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.coin.name` (string, required)
    The name of the coin.

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.coin.symbol` (string, required)
    The symbol of the coin.

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.coin.base_denom` (string, required)
    The base denom of the coin.

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.coin.denom` (string, required)
    The denom of the coin.

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.coin.decimals` (integer, required)
    The decimals relative to the base coin.

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.coin.logo_url` (string)
    The coin logo url.

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.coin.explorer_url` (string)
    The explorer url of the coin.

  - `sign_doc.sign_doc.fee.coins.coin_with_amount.coin.type` (string, required)

  - `sign_doc.sign_doc.fee.gas` (string, required)
    The gas amount.
    Example: 1000000000000000000

  - `sign_doc.sign_doc.memo` (string, required)
    The memo of the signed transaction.

  - `sign_doc.body` (string, required)
    Body bytes, encoded in base64 format.
    Example: SGVsbG8=

  - `sign_doc.auth_info` (string, required)
    Auth info bytes, encoded in base64 format.
    Example: SGVsbG8=

  - `sign_doc.account_number` (string, required)
    The account number.
    Example: 1000000000000000000

  - `sign_doc.signed_body` (string, required)
    Actual body bytes that were used when signing the transaction, encoded in base64 format.
    Example: SGVsbG8=

  - `sign_doc.signed_auth_info` (string, required)
    Actual auth info that was used when signing the transaction, encoded in base64 format.
    Example: SGVsbG8=

  - `sign_doc.messages` (string, required)
    The messages of the transaction.

  - `type` (string, required)
    Cosmos message type.

  - `cosmos_message_type` (string, required)
    Enum: "arbitrary_message_type"

  - `data` (any, required)

  - `data.type` (string, required)
    The type of the Cosmos message data.

  - `data.data` (string, required)
    The data as plain string.

  - `data.data` (string, required)
    The data encoded in base64.
    Example: SGVsbG8=

  - `type` (string, required)
    EVM message type.

  - `evm_message_type` (string, required)
    Enum: "personal_message_type", "typed_message_type", "typed_message_type_v1"

  - `raw_data` (string, required)
    The raw data of the message.

  - `typed_data` (any)
    The typed data of the message.

  - `typed_data.domain` (object, required)

  - `typed_data.domain.name` (string)
    The name

  - `typed_data.domain.version` (string)
    The version

  - `typed_data.domain.chain_id` (integer)
    The EVM chain ID can be either one of those supported by the default chains below or a custom chain ID if one was added to your organization. 1=`ethereum_mainnet`5=`ethereum_goerli`10=`optimism_mainnet`14=`flare_mainnet`16=`flare_testnet`30=`rootstock_mainnet`56=`bsc_mainnet`100=`gnosis_mainnet`130=`unichain_mainnet`137=`polygon_mainnet`143=`monad_mainnet`146=`sonic_mainnet`169=`manta_pacific_mainnet`196=`x_layer_mainnet`250=`fantom_mainnet`324=`zksync_era_mainnet`999=`hyperevm_mainnet`1030=`conflux_mainnet`1100=`dymension_mainnet`1101=`polygon_zkevm_mainnet`1329=`sei_mainnet`1337=`hypercore_mainnet`1666=`aster_mainnet`1672=`pharos_mainnet`1729=`reya_mainnet`2222=`kava_mainnet`4200=`merlin_mainnet`4217=`tempo_mainnet`4663=`robinhood_mainnet`5000=`mantle_mainnet`7000=`zeta_mainnet`7700=`canto_mainnet`8453=`base_mainnet`8818=`clink_mainnet`8819=`clink_testnet`9745=`plasma_mainnet`16661=`zero_gravity_mainnet`17000=`ethereum_holesky`80001=`polygon_mumbai`80094=`berachain_mainnet`42161=`arbitrum_mainnet`43113=`avalanche_fuji`43114=`avalanche_chain`57073=`ink_mainnet`59144=`linea_mainnet`81457=`blast_mainnet`421614=`arbitrum_sepolia`534352=`scroll_mainnet`660279=`xai_mainnet`747474=`katana_mainnet`810180=`zklink_nova_mainnet`11155111=`ethereum_sepolia`

  - `typed_data.domain.verifying_contract` (object)

  - `typed_data.domain.verifying_contract.explorer_url` (string)
    The URL of a blockchain explorer that provides real-time information about the address.

  - `typed_data.domain.verifying_contract.type` (string, required)

  - `typed_data.domain.verifying_contract.address` (string, required)
    The EVM address.
    Example: 0x71C7656EC7ab88b098defB751B7401B5f6d8976F

  - `typed_data.domain.verifying_contract.contract` (object)

  - `typed_data.domain.verifying_contract.contract.name` (string)
    The name of the contract.

  - `typed_data.domain.verifying_contract.contract.dapp` (object)

  - `typed_data.domain.verifying_contract.contract.dapp.id` (string, required)
    The unique identifier of this DApp.

  - `typed_data.domain.verifying_contract.contract.dapp.name` (string, required)
    The name of the DApp.

  - `typed_data.domain.verifying_contract.contract.dapp.url` (string)
    The URL of the DApp.

  - `typed_data.domain.verifying_contract.contract.dapp.logo_url` (string)
    The logo URL of the DApp.

  - `typed_data.domain.verifying_contract.contract.dapp.contracts_count` (integer)
    The number of contracts associated with this DApp.

  - `typed_data.domain.verifying_contract.contract.is_verified` (boolean, required)
    `True` if the contract is verified, `False` otherwise.

  - `typed_data.domain.verifying_contract.contract.token` (any)
    The token details of the contract.

  - `typed_data.domain.verifying_contract.contract.token.address` (object, required)
    Address represents an EVM blockchain address.

  - `typed_data.domain.verifying_contract.contract.token.address.type` (string, required)

  - `typed_data.domain.verifying_contract.contract.token.address.chain` (object, required)

  - `typed_data.domain.verifying_contract.contract.token.address.chain.chain_type` (string, required)
    The type of the chain.

  - `typed_data.domain.verifying_contract.contract.token.address.chain.named_chain_id` (string)
    The EVM chain name can be either one of those supported by the default chains below or a custom chain name if one was added to your organization. `arbitrum_mainnet``arbitrum_sepolia``aster_mainnet``avalanche_chain``avalanche_fuji``base_mainnet``berachain_mainnet``blast_mainnet``bsc_mainnet``canto_mainnet``clink_mainnet``clink_testnet``conflux_mainnet``dymension_mainnet``ethereum_goerli``ethereum_holesky``ethereum_mainnet``ethereum_sepolia``fantom_mainnet``flare_mainnet``flare_testnet``gnosis_mainnet``hypercore_mainnet``hyperevm_mainnet``ink_mainnet``kava_mainnet``katana_mainnet``linea_mainnet``optimism_mainnet``pharos_mainnet``plasma_mainnet``manta_pacific_mainnet``mantle_mainnet``merlin_mainnet``monad_mainnet``polygon_mainnet``polygon_mumbai``polygon_zkevm_mainnet``reya_mainnet``robinhood_mainnet``rootstock_mainnet``scroll_mainnet``sei_mainnet``sonic_mainnet``tempo_mainnet``unichain_mainnet``xai_mainnet``x_layer_mainnet``zero_gravity_mainnet``zeta_mainnet``zklink_nova_mainnet``zksync_era_mainnet`

  - `typed_data.domain.verifying_contract.contract.token.address.chain.chain_id` (integer, required)
    The EVM chain ID can be either one of those supported by the default chains below or a custom chain ID if one was added to your organization. 1=`ethereum_mainnet`5=`ethereum_goerli`10=`optimism_mainnet`14=`flare_mainnet`16=`flare_testnet`30=`rootstock_mainnet`56=`bsc_mainnet`100=`gnosis_mainnet`130=`unichain_mainnet`137=`polygon_mainnet`143=`monad_mainnet`146=`sonic_mainnet`169=`manta_pacific_mainnet`196=`x_layer_mainnet`250=`fantom_mainnet`324=`zksync_era_mainnet`999=`hyperevm_mainnet`1030=`conflux_mainnet`1100=`dymension_mainnet`1101=`polygon_zkevm_mainnet`1329=`sei_mainnet`1337=`hypercore_mainnet`1666=`aster_mainnet`1672=`pharos_mainnet`1729=`reya_mainnet`2222=`kava_mainnet`4200=`merlin_mainnet`4217=`tempo_mainnet`4663=`robinhood_mainnet`5000=`mantle_mainnet`7000=`zeta_mainnet`7700=`canto_mainnet`8453=`base_mainnet`8818=`clink_mainnet`8819=`clink_testnet`9745=`plasma_mainnet`16661=`zero_gravity_mainnet`17000=`ethereum_holesky`80001=`polygon_mumbai`80094=`berachain_mainnet`42161=`arbitrum_mainnet`43113=`avalanche_fuji`43114=`avalanche_chain`57073=`ink_mainnet`59144=`linea_mainnet`81457=`blast_mainnet`421614=`arbitrum_sepolia`534352=`scroll_mainnet`660279=`xai_mainnet`747474=`katana_mainnet`810180=`zklink_nova_mainnet`11155111=`ethereum_sepolia`

  - `typed_data.domain.verifying_contract.contract.token.address.chain.unique_id` (string, required)
    The unique EVM chain ID. Can be either one of those supported by the default chains below or a custom numeric chain ID `evm_<numeric_chain_id>` if one was added to your organization. `"evm_1"``"evm_5"``"evm_10"``"evm_14"``"evm_16"``"evm_30"``"evm_56"``"evm_100"``"evm_130"``"evm_137"``"evm_143"``"evm_146"``"evm_169"``"evm_196"``"evm_250"``"evm_324"``"evm_999"``"evm_1030"``"evm_1100"``"evm_1101"``"evm_1329"``"evm_1337"``"evm_1666"``"evm_1672"``"evm_1729"``"evm_2222"``"evm_4200"``"evm_4217"``"evm_4663"``"evm_5000"``"evm_7000"``"evm_7700"``"evm_8453"``"evm_8818"``"evm_8819"``"evm_9745"``"evm_16661"``"evm_17000"``"evm_80001"``"evm_80094"``"evm_42161"``"evm_43113"``"evm_43114"``"evm_57073"``"evm_59144"``"evm_81457"``"evm_421614"``"evm_534352"``"evm_660279"``"evm_747474"``"evm_810180"``"evm_11155111"``"evm_ethereum_mainnet"``"evm_ethereum_goerli"``"evm_optimism_mainnet"``"evm_flare_mainnet"``"evm_flare_testnet"``"evm_rootstock_mainnet"``"evm_bsc_mainnet"``"evm_gnosis_mainnet"``"evm_unichain_mainnet"``"evm_polygon_mainnet"``"evm_monad_mainnet"``"evm_sonic_mainnet"``"evm_manta_pacific_mainnet"``"evm_x_layer_mainnet"``"evm_fantom_mainnet"``"evm_zksync_era_mainnet"``"evm_hyperevm_mainnet"``"evm_conflux_mainnet"``"evm_dymension_mainnet"``"evm_polygon_zkevm_mainnet"``"evm_sei_mainnet"``"evm_hypercore_mainnet"``"evm_aster_mainnet"``"evm_pharos_mainnet"``"evm_reya_mainnet"``"evm_kava_mainnet"``"evm_merlin_mainnet"``"evm_tempo_mainnet"``"evm_robinhood_mainnet"``"evm_mantle_mainnet"``"evm_zeta_mainnet"``"evm_canto_mainnet"``"evm_base_mainnet"``"evm_clink_mainnet"``"evm_clink_testnet"``"evm_plasma_mainnet"``"evm_zero_gravity_mainnet"``"evm_ethereum_holesky"``"evm_polygon_mumbai"``"evm_berachain_mainnet"``"evm_arbitrum_mainnet"``"evm_avalanche_fuji"``"evm_avalanche_chain"``"evm_ink_mainnet"``"evm_linea_mainnet"``"evm_blast_mainnet"``"evm_arbitrum_sepolia"``"evm_scroll_mainnet"``"evm_xai_mainnet"``"evm_katana_mainnet"``"evm_zklink_nova_mainnet"``"evm_ethereum_sepolia"`

  - `typed_data.domain.verifying_contract.contract.token.address.hex_repr` (string, required)
    Hexadecimal representation of the address in the chain.
    Example: 0x71C7656EC7ab88b098defB751B7401B5f6d8976F

  - `typed_data.domain.verifying_contract.contract.token.name` (string, required)
    The token name

  - `typed_data.domain.verifying_contract.contract.token.symbol` (string, required)
    The token symbol or ticker

  - `typed_data.domain.verifying_contract.contract.token.type` (string, required)
    The type of the token

  - `typed_data.domain.verifying_contract.contract.token.decimals` (integer, required)
    The token decimals

  - `typed_data.domain.verifying_contract.contract.token.logo_url` (string)
    The token logo url

  - `typed_data.domain.salt` (string)
    The salt
    Example: SGVsbG8=

  - `typed_data.primary_type` (string, required)
    Used to identify the primary type of the message.

  - `typed_data.type` (string, required)
    The typed message type.

  - `typed_data.deadline` (string, required)
    The deadline.

  - `typed_data.nonce` (integer, required)
    The nonce.

  - `typed_data.deadline` (string, required)
    Signature deadline.

  - `typed_data.provider_info` (object, required)

  - `typed_data.provider_info.provider_id` (string, required)
    Enum: "oneinch", "cowswap", "uniswap", "jupiter", "kyberswap", "layerzero", "paraswap", "bebop", "cctp_standard", "cctp_fast"

  - `typed_data.provider_info.provider_name` (string, required)
    The provider name.

  - `typed_data.provider_source` (string)
    The source of the swap provider.

  - `typed_data.slippage_bps` (string, required)
    Slippage tolerance in basis points.
    Example: 1000000000000000000

  - `typed_data.price_impact_pct` (string)
    Price impact percentage.
    Example: 1000000000000000000

  - `typed_data.rate` (string, required)
    The exchange rate of the swap.
    Example: 1000000000000000000

  - `typed_data.quote_created_at` (string, required)
    The timestamp when the quote was created.

  - `typed_data.quote_expiration_time` (string, required)
    The timestamp when the quote will expire.

  - `typed_data.estimated_duration_milliseconds` (string)
    The estimated duration of the swap in milliseconds.
    Example: 1000000000000000000

  - `typed_data.provider_fee` (object)

  - `typed_data.provider_fee.amount` (string, required)
    The amount of the provider fee.
    Example: 1000000000000000000

  - `typed_data.fordefi_fee_bps` (string)
    The fee rate in basis points that Fordefi charged on this swap, if any.
    Example: 1000000000000000000

  - `typed_data.failure_reason` (string)
    Reason for failure, if any, from the provider.

  - `typed_data.provider_explorer_url` (string)
    URL to the swap provider's dedicated block explorer for tracking this swap execution status.

  - `typed_data.bridge_state` (string)
    Enum: "pending", "success", "failed"

  - `typed_data.bridge_effects` (object)

  - `typed_data.bridge_effects.name` (string, required)
    The name of the bridge.

  - `typed_data.bridge_effects.amount` (string, required)
    The amount of the bridge.
    Example: 1000000000000000000

  - `typed_data.bridge_effects.destination` (any, required)
    The destination of the bridge.

  - `typed_data.bridge_effects.destination.type` (string, required)

  - `typed_data.bridge_effects.destination.address_repr` (string, required)
    The destination address of the bridge transaction.

  - `typed_data.bridge_effects.destination.chain_repr` (string, required)
    The destination chain of the bridge transaction.

  - `typed_data.is_gasless` (boolean, required)
    Whether the swap is gasless.

  - `typed_data.value` (string, required)
    The value in wei.
    Example: 1000000000000000000

  - `typed_data.data` (string, required)
    The transaction data.

  - `typed_data.operation` (string, required)
    Enum: "call", "delegate_call"

  - `typed_data.safe_gas` (string, required)
    Gas for the Safe transaction.
    Example: 1000000000000000000

  - `typed_data.base_gas` (string, required)
    Base gas.
    Example: 1000000000000000000

  - `typed_data.gas_price` (string, required)
    Gas price.
    Example: 1000000000000000000

  - `typed_data.nonce` (string, required)
    Safe transaction nonce.
    Example: 1000000000000000000

  - `typed_data.decoded_method` (string)
    The decoded method name.

  - `typed_data.decoded_parameters_json` (string)
    The decoded parameters as JSON string.

  - `typed_data.decoding_error` (string)
    Error message if decoding failed.

  - `typed_data.is_multi_send` (boolean, required)
    Whether this is a multi-send batched transaction.

  - `typed_data.is_sensitive_operation` (boolean, required)
    Whether this operation modifies Safe ownership, modules, or guards.

  - `typed_data.is_rejection` (boolean, required)
    Whether this is a rejection transaction.

  - `typed_data.rejected_transaction` (object)

  - `typed_data.rejected_transaction.safe_hash` (string, required)
    The Safe transaction hash being rejected.

  - `typed_data.rejected_transaction.value` (string, required)
    The value of the rejected transaction.
    Example: 1000000000000000000

  - `typed_data.rejected_transaction.method` (string)
    The method of the rejected transaction.

  - `typed_data.rejected_transaction.confirmations` (integer, required)
    Current number of confirmations.

  - `typed_data.rejected_transaction.confirmations_required` (integer, required)
    Required number of confirmations.

  - `typed_data.hyperliquid_chain` (string)
    Hyperliquid network identifier, e.g. `Mainnet`.

  - `typed_data.action_type` (any, required)
    Action-specific details. Discriminated by the nested `action_type` field.

  - `typed_data.action_type.action_type` (string, required)
    The Hyperliquid action type.

  - `typed_data.action_type.destination` (string, required)
    Recipient hex address.

  - `typed_data.action_type.amount` (string, required)
    Withdrawal amount as a decimal string.
    Example: 1000000000000000000

  - `typed_data.action_type.time` (integer, required)
    Unix timestamp in milliseconds used as a nonce by Hyperliquid.

  - `typed_data.action_type.amount` (string, required)
    Transfer amount as a decimal string.
    Example: 1000000000000000000

  - `typed_data.action_type.token` (string, required)
    Spot token identifier in `NAME:0xhexid` format, e.g. `PURR:0x0000000000000000000000000000dead`.

  - `typed_data.action_type.token` (string, required)
    Token identifier in `NAME:0xhexid` format, e.g. `PURR:0x0000000000000000000000000000dead`.

  - `typed_data.action_type.nonce` (integer, required)
    Replay-protection nonce.

  - `typed_data.action_type.signature_chain_id` (string, required)
    Chain ID used for signing, hex-encoded (e.g. `0xa4b1`).

  - `typed_data.action_type.source_dex` (string, required)
    Source DEX for the transfer (e.g. `spot`).

  - `typed_data.action_type.destination_dex` (string, required)
    Destination DEX for the transfer (e.g. `perp`).

  - `typed_data.action_type.from_sub_account` (string, required)
    Originating sub-account identifier.

  - `typed_data.action_type.vault_address` (string, required)
    Target vault hex address.

  - `typed_data.action_type.is_deposit` (boolean, required)
    Whether this is a deposit (`true`) or withdrawal (`false`) from the vault.

  - `typed_data.action_type.to_perp` (boolean, required)
    Whether to move funds to perp (`true`) or to spot (`false`).

  - `typed_data.action_type.destination_chain_id` (integer, required)
    Target chain ID for the CCTP bridge.

  - `typed_data.action_type.destination_recipient` (string, required)
    Recipient address on the destination chain.

  - `typed_data.action_type.token` (string, required)
    Token identifier, e.g. 'USDC'.

  - `typed_data.action_type.amount` (string)
    Bridge amount as a decimal string.
    Example: 1000000000000000000

  - `typed_data.action_type.gas_limit` (integer, required)
    Gas limit for the bridge transaction.

  - `typed_data.action_type.address_encoding` (string)
    Address encoding format.

  - `parent_transaction_id` (string)
    The unique identifier of the parent transaction. Parent and child transactions form in cases where a transaction become stuck and is then either canceled or accelerated. If, for example, the original transaction (`t1`) is the parent and the related, adjustment transaction is the child (`t2`), then relative to itself, the parent field of `t1` is `null` and the child field is `t2_id`. Compare with field `child_transaction_id`.

  - `child_transaction_id` (string)
    The unique identifier of the child transaction. Compare with field `parent_transaction_id`. Relative to itself, the parent field of transaction `t2` would aquire the identifier `t1_id` and the child field of `t2` would be `null`.

  - `is_cancelation` (boolean, required)
    `True` if this transaction is a cancelation of a previous transaction, `False` otherwise.

  - `is_acceleration` (boolean, required)
    `True` if this transaction is an acceleration of a previous transaction, `False` otherwise.

  - `type` (string, required)
    EVM transaction type.

  - `evm_transaction_type_details` (any, required)
    Details of the EVM transaction based on its type.

  - `evm_transaction_type_details.type` (string, required)
    A transaction involving the transfer of native currency from one address to another.

  - `evm_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `evm_transaction_type_details.type` (string, required)
    A transaction involving the transfer of a token from one address to another.

  - `evm_transaction_type_details.type` (string, required)
    A transaction involving an allowance.

  - `evm_transaction_type_details.type` (string, required)
    A transaction involving a generic call to a smart contract.

  - `evm_transaction_type_details.type` (string, required)
    A transaction that deploys a new contract.

  - `evm_transaction_type_details.type` (string, required)
    A transaction involving the transfer of funds from one blockchain to another.

  - `evm_transaction_type_details.type` (string, required)
    A transaction that makes an EOA smart contract or disables it.

  - `value` (string, required)
    The value of native currency sent with this transaction.
    Example: 1000000000000000000

  - `data` (string, required)
    The data of the contract call, as a serialized method-call with its arguments, in Base64 format. See [data field format for transactions on Ethereum](https://ethereum.org/en/developers/docs/transactions/#the-data-field).
    Example: SGVsbG8=

  - `hex_data` (string)
    The hex data of the contract call, as a serialized method-call with its arguments.

  - `parsed_data` (object, required)

  - `parsed_data.method` (string, required)
    The method name, in case of contract call.

  - `parsed_data.method_arguments` (array, required)
    The method arguments, in case of contract call.

  - `parsed_data.method_arguments.name` (string, required)
    The name of the argument.

  - `parsed_data.method_arguments.type` (string, required)
    The type of the argument.

  - `parsed_data.method_arguments.value` (string, required)
    The value of the argument.

  - `parsed_data.method_arguments.children` (array)
    Decoded child arguments for complex types: array elements (e.g. bytes[], address[], uint256[3]) and tuple fields. Empty for scalar types.

  - `gas_submitted` (any, required)
    The gas details submitted for the transaction.

  - `gas_submitted.price` (string, required)
    The price of a gas unit.
    Example: 1000000000000000000

  - `gas_submitted.priority` (string, required)
    Enum: "custom", "low", "medium", "high"

  - `gas_submitted.limit` (string, required)
    The gas limit.
    Example: 1000000000000000000

  - `gas_submitted.type` (string, required)
    The type of gas data.

  - `gas_submitted.max_priority_fee_per_gas` (string, required)
    The maximum tip amount for mining the transaction.
    Example: 1000000000000000000

  - `gas_submitted.max_fee_per_gas` (string, required)
    The maximum amount paid for the fee.
    Example: 1000000000000000000

  - `funding_for_transaction_id` (string)
    Funding transaction ID.

  - `funded_by_transaction_id` (string)
    Funded transaction ID.

  - `current_preceding_pushed_to_blockchain_transaction_id` (string)
    The unique identifier of the transaction that was pushed to the blockchain, In case this transaction is QUEUED.

  - `use_mev_protected_node` (boolean, required)
    `True` if Fordefi sends this transaction through an MEV protected node, `False` otherwise. By using an MEV protected node, you avoid maximal extractable value (MEV) attacks.

  - `raw_transaction` (string)
    The raw transaction data, encoded as a hex string.

  - `state_changes` (array, required)
    The state changes of the exchange transaction.

  - `exchange_transaction_type_details` (any, required)
    Details of the Exchange transaction based on its type.

  - `exchange_transaction_type_details.is_internal` (boolean, required)
    Is this transfer an internal transfer between two vaults.

  - `exchange_transaction_type_details.sender` (object, required)

  - `exchange_transaction_type_details.sender.explorer_url` (string)
    The URL of a blockchain explorer that provides real-time information about the address.

  - `exchange_transaction_type_details.sender.type` (string, required)

  - `exchange_transaction_type_details.type` (string, required)
    A transaction from an exchange vault to an MPC vault or external address.

  - `exchange_transaction_type_details.recipient` (any, required)

  - `exchange_transaction_type_details.recipient.explorer_url` (string)
    The URL of a blockchain explorer that provides real-time information about the address.

  - `exchange_transaction_type_details.recipient.type` (string, required)

  - `exchange_transaction_type_details.recipient.address` (string, required)
    The Ripple classic address.
    Example: rHb9CJAWyB4rj91VRWn96DkukG4bwdtyTh

  - `exchange_transaction_type_details.recipient.address` (string, required)
    The Solana address represented in Base58 format.
    Example: 4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA

  - `exchange_transaction_type_details.recipient.contract` (object)

  - `exchange_transaction_type_details.recipient.contract.name` (string)
    The name of the contract.

  - `exchange_transaction_type_details.recipient.contract.is_verified` (boolean, required)
    `True` if the contract is verified, `False` otherwise.

  - `exchange_transaction_type_details.recipient.contract.token` (object)

  - `exchange_transaction_type_details.recipient.contract.token.type` (string, required)
    The type of the token

  - `exchange_transaction_type_details.recipient.contract.token.address` (object, required)
    Address represents an EVM blockchain address.

  - `exchange_transaction_type_details.recipient.contract.token.address.type` (string, required)

  - `exchange_transaction_type_details.recipient.contract.token.address.chain` (object, required)

  - `exchange_transaction_type_details.recipient.contract.token.address.chain.chain_type` (string, required)
    The type of the chain.

  - `exchange_transaction_type_details.recipient.contract.token.address.base58_repr` (string, required)
    Base58 representation of the address in the chain.
    Example: 4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA

  - `exchange_transaction_type_details.recipient.contract.token.name` (string, required)
    The token name

  - `exchange_transaction_type_details.recipient.contract.token.symbol` (string, required)
    The token symbol or ticker

  - `exchange_transaction_type_details.recipient.contract.token.decimals` (integer, required)
    The token decimals

  - `exchange_transaction_type_details.recipient.contract.token.logo_url` (string)
    The token logo url

  - `exchange_transaction_type_details.recipient.address` (string, required)
    The Stacks address represented in hex format.
    Example: SP3J4NWQXC312DK0GXVRZKSRFBZG8S5FG1D2160E9

  - `exchange_transaction_type_details.recipient.address` (string, required)
    The Starknet address represented in hex format.
    Example: 0x0448f450e64B50dDF49e9F95C5b63a15cD21E21a39cA2D45628d9E5B27e5e1D8

  - `exchange_transaction_type_details.recipient.address` (string, required)
    The Stellar address represented in base32 format.
    Example: GBRPYHIL2CI3FNQ4BXLFMNDLFJHO7W3B6FSHLTAVM2A4P45SHO4ZB7I2

  - `exchange_transaction_type_details.recipient.address` (string, required)
    The Sui address represented in hex format.
    Example: 0x3300c18e7b931bdfc73dccf3e2d043ad1c9d120c777fff5aeeb9956224e5247a

  - `exchange_transaction_type_details.recipient.raw_account` (string, required)
    The address TON contract in a raw format.

  - `exchange_transaction_type_details.recipient.base64_url_bounceable_account` (string, required)
    The bounceable address of the contract in base64 url format
    Example: UQBxs5hnTxjzvzsnDofRfbJeXsylUcxR8OSW7UUv317csHZ1

  - `exchange_transaction_type_details.recipient.base64_url_non_bounceable_account` (string, required)
    The non-bounceable address of the contract in base64 url format
    Example: UQBxs5hnTxjzvzsnDofRfbJeXsylUcxR8OSW7UUv317csHZ1

  - `exchange_transaction_type_details.recipient.original_account` (string, required)
    The address TON contract in the originally inserted format.

  - `exchange_transaction_type_details.recipient.address` (string, required)
    The TRON address represented in base58 format.
    Example: TJCnKsPa7y5okkXvQAidZBzqx3QyQ6sxMW

  - `exchange_transaction_type_details.recipient.address` (object, required)

  - `exchange_transaction_type_details.recipient.address.type` (string, required)

  - `exchange_transaction_type_details.recipient.address.address` (string, required)
    The UTXO string address.
    Example: bc1qar0srrr7xfkvy5l643lydnw9re59gtzzwf5mdq

  - `exchange_transaction_type_details.recipient.address.address_type` (string, required)
    Enum: "legacy", "p2sh", "segwit", "taproot", "merkleroot"

  - `exchange_transaction_type_details.recipient.vault_address` (object)
    Represents a reference to a vault address in the Fordefi platform

  - `exchange_transaction_type_details.recipient.vault_address.id` (string, required)
    The unique identifier of the vault address in the Fordefi platform.

  - `exchange_transaction_type_details.recipient.vault_address.vault_id` (string, required)
    The unique identifier of the vault this address belongs to.

  - `exchange_transaction_type_details.recipient.vault_address.name` (string, required)
    The name of the vault address.

  - `exchange_transaction_type_details.recipient.vault_address.address` (string, required)
    The address of the vault address.

  - `exchange_transaction_type_details.memo` (string)
    Transaction memo.

  - `exchange_transaction_type_details.hash` (string)
    The hash of the transaction.

  - `exchange_transaction_type_details.explorer_url` (string)
    The URL of this transaction in a blockchain explorer. For example, Solscan.
    Example: https://solscan.io/tx/FAWA66f...6kEZanwHeDFNS

  - `exchange_transaction_type_details.type` (string, required)
    A transaction from one exchange vault to another.

  - `exchange_nonce` (string)
    The nonce of the transaction. `None` if not required by the exchange

  - `exchange_transaction_id` (string)
    The ID of the transaction as returned by the exchange

  - `type` (string, required)
    Ripple transaction type.

  - `ripple_transaction_type_details` (any, required)
    Details of the Ripple transaction based on its type.

  - `ripple_transaction_type_details.type` (string, required)
    A transaction involving the transfer of native XRP from one address to another.

  - `ripple_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `ripple_transaction_type_details.tag` (string)
    The XRPL destination tag included with the transfer, provided as a numeric string.

  - `ripple_transaction_type_details.type` (string, required)
    A Payment transaction that moves a Ripple Trust Line Asset (IOU) from one address to another. The recipient must already hold a trust line for the (currency, issuer) being sent.

  - `ripple_transaction_type_details.type` (string, required)
    A TrustSet operation to create a trust line for a Ripple issued token (IOU).

  - `ripple_transaction_type_details.type` (string, required)
    A Ripple transaction type not otherwise modeled (e.g. a third-party TrustSet or other operation).

  - `ripple_transaction_type_details.type` (string, required)
    A CheckCash transaction that redeems an incoming check. When the vault lacks a trust line for the asset, it is realized as a two-row app-level batch (CreateTrustline then CashCheck) signed in one gesture.

  - `claim_status` (string)
    Enum: "claimable", "claimed"

  - `check_id` (string)
    The ledger object ID of the XRPL Check this transaction created or referenced, if any.

  - `type` (string, required)
    Solana message type.

  - `solana_message_type` (string, required)
    Enum: "personal_message_type", "create_session_message_type"

  - `solana_message_type_details` (any, required)
    The details of the Solana message.

  - `solana_message_type_details.type` (string, required)
    The type of the Solana message.

  - `solana_message_type_details.version` (string, required)
    The version of the create session data.

  - `solana_message_type_details.session_key` (string, required)
    The session public key.

  - `solana_message_type_details.expiration` (string, required)
    The session expiration date and time.

  - `solana_message_type_details.allow_all_tokens` (boolean, required)
    True if the session is granted access to all tokens.

  - `solana_message_type_details.all_tokens_matched_exactly` (boolean, required)
    True if every token in the message matches to exactly one asset.

  - `string_data` (string, required)
    The message as a string.

  - `raw_data` (string, required)
    The raw data of the message, encoded in base64
    Example: SGVsbG8=

  - `solana_transaction_type_details` (any, required)
    Details of the Solana transaction based on its type.

  - `solana_transaction_type_details.type` (string, required)
    A transaction involving the transfer of native currency from one address to another.

  - `solana_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `solana_transaction_type_details.type` (string, required)
    A transaction capable of any operation.

  - `solana_transaction_type_details.recipients` (array, required)
    The recipients of the tokens.

  - `version` (string, required)
    Enum: "legacy", "v0"

  - `address_table_lookups` (array, required)
    Lookup tables of accounts used in the transaction.

  - `address_table_lookups.writable_indexes` (array, required)
    Indexes of writable accounts in the lookup table.

  - `address_table_lookups.readonly_indexes` (array, required)
    Indexes of read-only accounts in the lookup table.

  - `address_table_lookups.state` (object, required)

  - `address_table_lookups.state.addresses` (array, required)
    The addresses that are stored in the table.

  - `address_table_lookups.state.deactivation_slot` (string, required)
    The table can be closed when the deactivation slot is no longer the recent slot.
    Example: 1000000000000000000

  - `address_table_lookups.state.last_extended_slot` (string, required)
    The number of the last slot in which a change constitutes an extension of the table.
    Example: 1000000000000000000

  - `address_table_lookups.state.last_extended_slot_start_index` (string, required)
    The start index where the table was last extended from during the `last_extended_slot`.
    Example: 1000000000000000000

  - `hash` (string)
    The first signature of the transaction.
    Example: FAWA66fudpiwdRDDQ4DRxdJsRvawvauwg4vQkm98ZHFpXmW5N7xzRiTRpt8QiZ19s1aVbzKgXW6kEZanwHeDFNS

  - `explorer_url` (string)
    The URL of this transaction in a blockchain explorer. For example, Solscan.
    Example: https://solscan.io/tx/FAWA66f...6kEZanwHeDFNS

  - `was_fee_set_in_request` (boolean, required)
    Whether the priority fee was already set in the request with a ComputeBudget instruction.

  - `type` (string, required)
    Stacks transaction type.

  - `stacks_transaction_type_details` (any, required)
    Details of the Stacks transaction based on its type.

  - `stacks_transaction_type_details.type` (string, required)
    A transaction involving the transfer of Stacks coin from one address to another.

  - `stacks_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `stacks_transaction_type_details.type` (string, required)
    A transaction involving the transfer of an sip10 asset from one address to another.

  - `stacks_transaction_type_details.type` (string, required)
    A transaction with contract call.

  - `stacks_transaction_type_details.contract_call_payload` (object, required)

  - `stacks_transaction_type_details.contract_call_payload.contract_name` (string, required)
    The name of the contract being called.

  - `stacks_transaction_type_details.contract_call_payload.function_name` (string, required)
    The name of the function to call.

  - `stacks_transaction_type_details.contract_call_payload.function_arguments` (array, required)
    The arguments of the function to call.

  - `post_conditions` (object)

  - `post_conditions.post_condition_mode` (string, required)
    Enum: "allow", "deny"

  - `post_conditions.post_conditions` (array, required)
    The post conditions of the transaction.

  - `post_conditions.post_conditions.condition_code` (string, required)
    Enum: "eq", "gt", "ge", "lt", "le"

  - `post_conditions.post_conditions.amount` (string, required)
    The amount of the asset this post condition applies to.
    Example: 1000000000000000000

  - `post_conditions.post_conditions.type` (string, required)
    The type of the post condition.

  - `post_conditions.post_conditions.asset_name` (string, required)
    The asset name this post condition applies to

  - `serialized_payload` (string)
    The serialized payload of the transaction.

  - `explorer_url` (string)
    The URL of this transaction in a blockchain explorer. For example, https://explorer.hiro.so/
    Example: https://explorer.hiro.so/txid/0xd303fc22b2b8c346a0a1fa164a1ccb878a172dc2b8ce08253a6b2312cafb1520

  - `memo` (string)
    The memo of the transaction.

  - `type` (string, required)
    Starknet message type.

  - `starknet_message_type` (string, required)
    Enum: "typed_message_type"

  - `message_hash` (string, required)
    The hash of the message that was requested to be signed, in hex.
    Example: 0x0684532b069fb0ce7e22041538a1c5e4850aafae042c772393cd7d795b767c74

  - `starknet_signatures` (array, required)
    The signatures of the message in Starknet format.

  - `type` (string, required)
    Starknet transaction type.

  - `starknet_transaction_type_details` (any, required)
    Details of the Starknet transaction based on its type.

  - `starknet_transaction_type_details.type` (string, required)
    A transaction involving the transfer of Starknet coin from one address to another.

  - `starknet_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `starknet_transaction_type_details.type` (string, required)
    A transaction involving the transfer of an erc20 from one address to another.

  - `starknet_transaction_type_details.type` (string, required)
    A transaction with contract calls.

  - `starknet_transaction_type_details.recipients` (array, required)
    The called contracts.

  - `starknet_transaction_type_details.type` (string, required)
    A transaction that created a contract.

  - `call_data` (array, required)
    The call data of the transaction.

  - `call_data.method_name` (string, required)
    The name of the method to call.

  - `call_data.method_arguments` (array, required)
    The arguments of the method to call.

  - `explorer_url` (string)
    The URL of this transaction in a blockchain explorer. For example, starkscan.co
    Example: https://voyager.online/tx/0x0684532b069fb0ce7e22041538a1c5e4850aafae042c772393cd7d795b767c74

  - `fee_details` (object)

  - `fee_details.l1_gas_consumed` (string, required)
    L1 gas consumed by the transaction.
    Example: 1000000000000000000

  - `fee_details.l1_gas_price` (string, required)
    L1 gas unit price.
    Example: 1000000000000000000

  - `fee_details.l2_gas_consumed` (string, required)
    L2 gas consumed by the transaction.
    Example: 1000000000000000000

  - `fee_details.l2_gas_price` (string, required)
    L2 gas unit price.
    Example: 1000000000000000000

  - `fee_details.l1_data_gas_consumed` (string, required)
    L1 data gas consumed by the transaction.
    Example: 1000000000000000000

  - `fee_details.l1_data_gas_price` (string, required)
    L1 data gas unit price.
    Example: 1000000000000000000

  - `type` (string, required)
    Stellar message type.

  - `stellar_message_type` (string, required)
    Enum: "personal_message"

  - `type` (string, required)
    Stellar transaction type.

  - `stellar_transaction_type_details` (any, required)
    Details of the Stellar transaction based on its type.

  - `stellar_transaction_type_details.type` (string, required)
    A transaction involving the transfer of native XLM (lumens) from one address to another.

  - `stellar_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `stellar_transaction_type_details.type` (string, required)
    A transaction involving the transfer of a Stellar classic asset (credit) from one address to another.

  - `stellar_transaction_type_details.type` (string, required)
    A transaction involving the transfer of a Soroban token (SEP-41 compatible) from one address to another.

  - `stellar_transaction_type_details.type` (string, required)
    A ChangeTrust operation to establish or update a trustline for Stellar classic asset.

  - `stellar_transaction_type_details.type` (string, required)
    A raw Stellar transaction containing arbitrary operations provided as XDR.

  - `stellar_transaction_type_details.type` (string, required)
    A ClaimClaimableBalance operation to claim pending claimable balances for a Stellar asset.

  - `explorer_url` (string)
    The URL of this transaction in a blockchain explorer. For example, https://stellar.expert/
    Example: https://stellar.expert/explorer/public/tx/abc123def456...

  - `memo` (string)
    The memo attached to this Stellar transaction.

  - `decoded_tx_bytes` (string)
    The JSON representation of the transaction's data, for raw transactions.

  - `type` (string, required)
    Sui message type.

  - `sui_message_type` (string, required)
    Enum: "personal_message_type"

  - `type` (string, required)
    Sui transaction type.

  - `sui_transaction_type_details` (any, required)
    Details of the Sui transaction based on its type.

  - `sui_transaction_type_details.type` (string, required)
    A transaction involving the transfer of SUI coin from one address to another.

  - `sui_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `sui_transaction_type_details.type` (string, required)
    A transaction involving the transfer of non-SUI coin from one address to another.

  - `sui_transaction_type_details.type` (string, required)
    A transaction capable of any operation.

  - `sui_transaction_type_details.recipients` (array, required)
    The recipients that interacted with the transaction.

  - `inputs` (array, required)
    The inputs of the transaction.

  - `inputs.type` (string, required)
    The type of the input argument.

  - `inputs.details` (object, required)

  - `inputs.details.value` (any, required)

  - `inputs.details.value.type` (string, required)
    The type of the pure input.

  - `inputs.details.value.value` (string, required)
    The number value of the pure input argument.
    Example: 1000000000000000000

  - `inputs.details.value.value` (string, required)
    The byte array value of the pure input argument, represented as a base64 string.
    Example: SGVsbG8=

  - `inputs.details.value.value` (string, required)
    The string value of the pure input argument.

  - `inputs.details.value.value` (boolean, required)
    The boolean value of the pure input argument.

  - `inputs.amount` (string, required)
    The amount to reserve from the accumulator (MIST for SUI, smallest unit for other coins).
    Example: 1000000000000000000

  - `inputs.coin_type` (object, required)
    Coin type represents a Sui blockchain coin type.

  - `inputs.coin_type.chain` (object, required)

  - `inputs.coin_type.chain.chain_type` (string, required)
    The type of the chain.

  - `inputs.coin_type.coin_type` (string, required)
    Coin type.

  - `inputs.source` (string, required)
    Enum: "sender", "sponsor"

  - `commands` (array, required)
    The commands of the transactions.

  - `commands.type` (string, required)
    The type of the command.

  - `commands.objects` (array, required)
    The objects to transfer.

  - `commands.objects.type` (string, required)
    The type of the command argument.

  - `commands.objects.index` (integer, required)
    The index of the input in the input vector.

  - `commands.objects.index` (integer, required)
    The index of the command in the command vector.

  - `commands.objects.result_index` (integer, required)
    The index of the result in the result vector of that command.

  - `commands.amounts` (array, required)
    The amounts to split the coin into.

  - `commands.source_coin_objects` (array, required)
    The coins to merge.

  - `commands.type_tag` (string)
    The type of the values in the vector.

  - `commands.objects` (array, required)
    The values to put in the vector.

  - `commands.arguments` (array, required)
    The arguments of the call.

  - `commands.target` (string, required)
    The target of the call.

  - `commands.type_arguments` (array, required)
    The types of the arguments.

  - `commands.modules` (array, required)
    The modules to publish.

  - `commands.dependencies` (array, required)
    The dependencies of the modules.

  - `commands.package_id` (string, required)
    The package id of the module to upgrade.

  - `digest` (string)
    The digest of the transaction.
    Example: 9K8mnqJdxf3B7vgFmRhj9JqKqsN5AxvSgWk5faGshEta

  - `tx_bytes` (string)
    The tx_bytes param encoded as a base64 string.
    Example: SGVsbG8=

  - `decoded_tx_bytes` (string)
    The json representation of the transaction's data

  - `epoch` (integer)
    The epoch of the transaction.

  - `transaction_block_data` (string)
    The json representation of the transaction's data which contains the inputs and commands.

  - `explorer_url` (string)
    The URL of this transaction in a blockchain explorer. For example, Suiscan.
    Example: https://suiscan.xyz/mainnet/tx/9K8mnqJdxf3B7v...xvSgWk5faGshEta

  - `type` (string, required)
    TON message type.

  - `ton_message_type` (string, required)
    Enum: "proof_message_type"

  - `raw_payload_to_sign` (string, required)
    The payload that was requested to be signed, encoded in base64.
    Example: SGVsbG8=

  - `string_payload_to_sign` (string, required)
    The payload that was requested to be signed.

  - `domain` (string, required)
    The domain of the daap.

  - `domain_bytes_length` (integer, required)
    The daap domain's length

  - `timestamp` (integer, required)
    The signing timestamp

  - `type` (string, required)
    TON transaction type.

  - `ton_transaction_type_details` (any, required)
    Details of the Ton transaction based on its type.

  - `ton_transaction_type_details.type` (string, required)
    A transaction involving the transfer of TON coin from one address to another.

  - `ton_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `ton_transaction_type_details.type` (string, required)
    A transaction involving the transfer of Jetton from one address to another.

  - `ton_transaction_type_details.type` (string, required)
    A transaction with a contract call.

  - `ton_transaction_type_details.recipients` (array, required)
    The called contract.

  - `payload` (object, required)

  - `payload.valid_until` (integer)
    The expiration time of the transaction.

  - `payload.network` (integer)
    Enum: 0, -239, -3, -1

  - `payload.messages` (array, required)
    The messages of the transaction.

  - `payload.messages.address` (object, required)

  - `payload.messages.address.chain_type` (string, required)
    The type of the chain.

  - `payload.messages.address.address` (string, required)
    The address of the TON contract in any format.

  - `payload.messages.amount` (string, required)
    The amount of nano tons to send.
    Example: 1000000000000000000

  - `payload.messages.payload` (string)
    The payload of the message.

  - `payload.messages.state_init` (string)
    The state_init structure contains all the necessary information required to create the initial state of a smart contract.

  - `payload.messages.comment` (string)
    A comment that is attached to the message.

  - `explorer_url` (string)
    The URL of this transaction in a blockchain explorer. For example, tonviewer.com
    Example: https://tonviewer.com/transaction/a8e5ab8f0b452190ad81f92341b42c6cadd57d0e858b92e8113d70b02bf0bfaa

  - `type` (string, required)
    TRON message type.

  - `tron_message_type` (string, required)
    Enum: "typed_message_type_v1", "typed_message_type_v2"

  - `type` (string, required)
    TRON transaction type.

  - `tron_transaction_type_details` (any, required)
    Details of the TRON transaction based on its type.

  - `tron_transaction_type_details.type` (string, required)
    A transaction involving the transfer of TRON coin from one address to another.

  - `tron_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `tron_transaction_type_details.type` (string, required)
    A transaction involving the transfer of an sip10 asset from one address to another.

  - `tron_transaction_type_details.type` (string, required)
    A TRON stake transaction.

  - `tron_transaction_type_details.decoded_tx_bytes` (string)
    The json representation of the transaction's data

  - `tron_transaction_type_details.type` (string, required)
    A TRON unstake transaction.

  - `tron_transaction_type_details.type` (string, required)
    A TRON delegate transaction.

  - `tron_transaction_type_details.type` (string, required)
    A TRON undelegate transaction.

  - `tron_transaction_type_details.type` (string, required)
    A TRON contract call transaction.

  - `type` (string, required)
    utxo message type.

  - `utxo_message_type` (string, required)
    Enum: "ecdsa", "bip322_simple"

  - `utxo_transaction_type_details` (any, required)
    Details of UTXO transaction, based on its type.

  - `utxo_transaction_type_details.type` (string, required)
    A transaction involving the transfer of native currency from one or moreaddresses to one or more addresses.

  - `utxo_transaction_type_details.is_internal` (boolean)
    Is this transfer an internal transfer between two vaults. None if the transaction is incoming.

  - `utxo_transaction_type_details.memos` (array, required)
    List of memos of the transaction.

  - `utxo_transaction_type_details.type` (string, required)
    A partially signed bitcoin transaction (PSBT).

  - `utxo_transaction_type_details.psbt_raw_data` (string, required)
    Partially signed bitcoin transaction data encoded as a hex string.

  - `utxo_transaction_type_details.signed_psbt_raw_data` (string)
    Partially signed bitcoin transaction data encoded as a hex string.

  - `utxo_transaction_type_details.json_representation` (string)
    Json representation of the PSBT.

  - `dlc_data` (object)

  - `dlc_data.dlc_transaction_type` (string, required)
    Enum: "FUNDING_TRANSACTION", "REFUND_TRANSACTION", "CET_TRANSACTION"

  - `dlc_data.funding_transaction_id` (string, required)

  - `dlc_data.refund_transaction_id` (string, required)

  - `dlc_data.cet_transaction_ids` (array, required)

  - `dlc_data.adaptor_point` (string)

## Response 400 fields (application/json):

  - `title` (string, required)
    Human-readable error message.

  - `detail` (string, required)
    Detailed error message.

  - `full_detail` (string)
    Full error message with additional details, if available.

  - `request_id` (string)
    Request ID - for debugging purposes.

  - `system_error_code` (string)
    An additional system error code in Fordefi.

## Response 401 fields (application/json):

  - `title` (string, required)
    Human-readable error message.

  - `detail` (string, required)
    Detailed error message.

  - `full_detail` (string)
    Full error message with additional details, if available.

  - `request_id` (string)
    Request ID - for debugging purposes.

## Response 403 fields (application/json):

  - `title` (string, required)
    Human-readable error message.

  - `detail` (string, required)
    Detailed error message.

  - `full_detail` (string)
    Full error message with additional details, if available.

  - `request_id` (string)
    Request ID - for debugging purposes.

## Response 404 fields (application/json):

  - `title` (string, required)
    Human-readable error message.

  - `detail` (string, required)
    Detailed error message.

  - `full_detail` (string)
    Full error message with additional details, if available.

  - `request_id` (string)
    Request ID - for debugging purposes.

  - `resource` (string)
    Enum: "user", "user_change_proposals", "user_group", "user_group_change_proposal", "vault", "vault_address", "vault_group", "address_group", "transaction", "batch_transaction", "path", "keyset", "auth_token", "access_token", "asset", "asset_info", "vault_derivation_path", "blockchain", "export", "quote", "import_keys_request", "vault_address_account", "exchange_asset_mapping", "dapp_group", "safe_address", "audit_log"

## Response 408 fields (application/json):

  - `title` (string, required)
    Human-readable error message.

  - `detail` (string, required)
    Detailed error message.

  - `full_detail` (string)
    Full error message with additional details, if available.

  - `request_id` (string)
    Request ID - for debugging purposes.

## Response 422 fields (application/json):

  - `title` (string, required)
    Human-readable error message.

  - `detail` (array, required)

  - `detail.loc` (array, required)

  - `detail.msg` (string, required)

  - `detail.type` (string, required)

  - `full_detail` (string)
    Full error message with additional details, if available.

  - `request_id` (string)
    Request ID - for debugging purposes.

## Response 500 fields (application/json):

  - `title` (string, required)
    Human-readable error message.

  - `detail` (string, required)
    Detailed error message.

  - `full_detail` (string)
    Full error message with additional details, if available.

  - `request_id` (string)
    Request ID - for debugging purposes.

