---
title: "Create Transaction"
method: POST
path: "/api/v1/transactions"
tags: ["Transactions"]
---

# Create Transaction

`POST /api/v1/transactions`

Create a new transaction.

## Headers

- `x-signature` string — Signature of the body. Base64 encoded string. If the request is made programatically by an API user, signing of the request is required and is intended to protect you from malicious backends. `x_signature` is valid for 120 seconds.
- `x-timestamp` integer — Timestamp of the signature. Integer. Specify an Epoch date. If the request is made programatically by an API user, the timestamp of the request is required and is intended to protect you from replay attacks.
- `x-idempotence-id` string, uuid — Optional idempotence ID of a transaction.

## Request body

- union
  - CreateAptosMessageRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'aptos_message', required — Aptos message type.
    - `details` AptosPersonalMessageRequest, required
      - `type` 'personal_message_type', required — Personal message standard.
      - `should_include_address` boolean, required — Whether the address should be included in the signed message.
      - `application` string, required — The application that the message is for.
      - `should_include_application` boolean, required — Whether the application should be included in the signed message.
      - `chain` 'aptos_mainnet' | 'aptos_testnet' | 'aptos_movement_mainnet' | 'aptos_movement_testnet', required
      - `should_include_chain` boolean, required — Whether the chain should be included in the signed message.
      - `message_to_sign` string, required — The message to be signed, encoded in base64.
      - `nonce` string, required — The nonce of the message.
  - CreateAptosTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'aptos_transaction', required — Aptos transaction type.
    - `details` union, required
      - CreateAptosTransferRequest
        - `fee_payer` TransactionFeePayerVault
          - `type` 'vault', required
          - `vault_id` string, uuid, required — The unique identifier of the vault that pays the fee.
        - `type` 'aptos_transfer', required — An Aptos transfer transaction. A transaction of this kind is for transferring native currency or a coin.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `gas_config` AptosGasConfigRequest
          - `max_gas` string — The maximum gas amount payed in the transaction (in Octa).
          - `price` union, required — The price details per gas unit.
            - AptosCustomGasPriceRequest
              - …
            - AptosPriorityGasPriceRequest
              - …
        - `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.
        - `to` union, required
          - AptosRecipientHex
            - `type` 'hex', required — The type of the recipient.
            - `address` string, required — The address of the recipient.
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
          - RecipientContactId
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `value` union, required — The number of units of currency to transfer.
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
        - `asset_identifier` AptosAssetIdentifierRequest, required
          - `type` 'aptos', required — Aptos asset identifier type.
          - `details` union, required
            - AptosNativeAssetIdentifierRequest
              - …
            - AptosCoinAssetIdentifierRequest
              - …
            - AptosNewCoinAssetIdentifierRequest
              - …
      - CreateAptosSerializedRawTransactionRequest
        - `type` 'aptos_serialized_entry_point_payload', required — An Aptos transaction with serialized entry point payload.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `gas_config` AptosGasConfigRequest
          - `max_gas` string — The maximum gas amount payed in the transaction (in Octa).
          - `price` union, required — The price details per gas unit.
            - AptosCustomGasPriceRequest
              - …
            - AptosPriorityGasPriceRequest
              - …
        - `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.
        - `chain` 'aptos_mainnet' | 'aptos_testnet' | 'aptos_movement_mainnet' | 'aptos_movement_testnet', required
        - `serialized_transaction_payload` string, required — The serialized transaction payload in base64 format.
  - CreateArchTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'arch_transaction', required — Arch transaction type.
    - `details` CreateArchTransferRequest, required
      - `type` 'arch_transfer', required — A Arch transfer transaction is for transferring native currency or a token.
      - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
      - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
      - `push_mode` 'auto' | 'manual' | 'deferred'
      - `to` union, required — The recipient of the transfer. Specify either a general address (a base58 string) or the id of another vault (a UUID string).
        - ArchRecipientBase58Repr
          - `type` 'address', required — The type of the recipient.
          - `address` string, required — The address of the recipient.
        - RecipientVaultId
          - `type` 'vault_id', required — The type of the recipient.
          - `vault_id` string, uuid, required — The id of the recipient vault.
        - RecipientContactId
          - `type` 'contact_id', required — The type of the recipient.
          - `contact_id` string, uuid, required — The id of the address book contact.
      - `value` union, required — The number of units of currency to transfer.
        - CreateRequestExplicitAmount
          - `type` 'value', required
          - `value` string, required — The specific amount to be passed.
        - CreateRequestMaxAmount
          - `type` 'max', required
      - `asset_identifier` ArchAssetIdentifierRequest, required
        - `type` 'arch', required — Arch asset identifier type.
        - `details` union, required
          - ArchNativeAssetIdentifierRequest
            - `type` 'native', required — Arch asset identifier type.
            - `chain` 'arch_mainnet' | 'arch_testnet', required
          - ArchAplTokenAssetIdentifierRequest
            - `type` 'apl_token', required — APL token asset identifier type.
            - `token` ArchAddressRequest, required — Address represents a blockchain address.
              - …
  - CreateBlackBoxSignatureRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'black_box_signature', required — Black Box signature type.
    - `details` union, required
      - BinaryHashPayload
        - `format` 'hash_binary', required
        - `hash_binary` string, required — The payload to sign, encoded in base64 format.
      - IntegerHashPayload
        - `format` 'hash_integer', required
        - `hash_integer` string, required — The payload to sign, as a big-endian integer. Only relevant for Stark curve signatures.
  - CreateCantonTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'canton_transaction', required — Canton transaction type.
    - `details` union, required
      - CreateCantonTransferRequest
        - `type` 'canton_transfer', required — A Canton transfer transaction for transferring native currency or tokens.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `to` union, required — The recipient of the transfer. Specify either a general address, the ID of another vault, or a contact ID.
          - CantonRecipientAddress
            - `type` 'address', required — The type of the recipient.
            - `address` string, required — The address of the recipient.
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
          - RecipientContactId
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `value` union, required — The number of units of currency to transfer.
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
        - `asset_identifier` CantonAssetIdentifierRequest, required
          - `type` 'canton', required — Canton asset identifier type.
          - `details` union, required
            - CantonNativeAssetIdentifierRequest
              - …
            - CantonCip56TokenAssetIdentifierRequest
              - …
        - `memo` string — Optional memo to include with the transaction.
      - CreateCantonPartyAllocationRequest
        - `type` 'canton_party_allocation', required — A Canton party allocation transaction for registering an external party on a node.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `chain` 'canton_mainnet' | 'canton_testnet', required
      - CreateCantonApproveTransferRequest
        - `type` 'canton_approve_transfer', required — A Canton transaction that approves a specific incoming transfer transaction.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `transaction_id` string, uuid, required — The transaction id to approve.
        - `chain` 'canton_mainnet' | 'canton_testnet', required
      - CreateCantonPreApprovalSetupRequest
        - `type` 'canton_pre_approval_setup', required — A Canton transaction that sets up a transfer pre-approval for auto-accepting incoming transfers.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `asset_identifier` CantonAssetIdentifierRequest, required
          - `type` 'canton', required — Canton asset identifier type.
          - `details` union, required
            - CantonNativeAssetIdentifierRequest
              - …
            - CantonCip56TokenAssetIdentifierRequest
              - …
  - CreateCosmosTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'cosmos_transaction', required — Cosmos transaction type.
    - `details` union, required — Transaction details.
      - TypedCosmosRawTransactionRequest
        - `type` 'cosmos_raw_transaction', required — A cosmos raw transaction is for any operation.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `chain` 'cosmos_agoric-3' | 'cosmos_akashnet-2' | 'cosmos_archway-1' | 'cosmos_axelar-dojo-1' | 'cosmos_bbn-1' | 'cosmos_celestia' | 'cosmos_cosmoshub-4' | 'cosmos_dydx-mainnet-1' | 'cosmos_dydx-testnet-4' | 'cosmos_dymension_1100-1' | 'cosmos_injective-1' | 'cosmos_neutron-1' | 'cosmos_nillion-1' | 'cosmos_noble-1' | 'cosmos_osmosis-1' | 'cosmos_provider' | 'cosmos_ssc-1' | 'cosmos_pacific-1' | 'cosmos_stride-1' | 'cosmos_thorchain-1' | 'cosmos_mantra-1', required
        - `request_data` union, required — Request data.
          - AminoRequestData
            - `format` 'amino', required
            - `messages` AminoMessage[], required — List of messages in amino format.
              - …
            - `memo` string — Transaction memo.
            - `std_fee` StdFeeRequest
              - …
            - `timeout_height` integer — Timeout height for this transaction.
          - DirectRequestData
            - `format` 'direct', required
            - `body` string, required — Body bytes, encoded in base64 format.
            - `auth_info` string, required — AuthInfo bytes, encoded in base64 format.
            - `account_number` string — Account number of signer.
      - TypedCosmosTransferRequest
        - `type` 'cosmos_transfer', required — A Cosmos transfer transaction. A transaction of this kind is for transferring Cosmos assets.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `to` union, required — The recipient of the transfer. Specify either a general address, the ID of another vault, or a contact ID.
          - CosmosTransferToAddressRequest
            - `type` 'address', required
            - `address` CosmosBechAddress, required
              - …
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
          - RecipientContactId
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `asset_identifier` CosmosAssetIdentifierRequest, required
          - `type` 'cosmos', required — Cosmos asset identifier type.
          - `details` union, required
            - CosmosNativeAssetIdentifierRequest
              - …
            - CosmosTokenAssetIdentifierRequest
              - …
        - `value` union, required — Specify one of the following: <ul><li>`value`<li>`max`</ul>
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
        - `memo` string — Transaction memo.
  - CreateCosmosMessageRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'cosmos_message', required — Cosmos message type.
    - `details` CosmosArbitraryMessageRequest, required
      - `type` 'arbitrary_message_type', required — Arbitrary message standard.
      - `chain` 'cosmos_agoric-3' | 'cosmos_akashnet-2' | 'cosmos_archway-1' | 'cosmos_axelar-dojo-1' | 'cosmos_bbn-1' | 'cosmos_celestia' | 'cosmos_cosmoshub-4' | 'cosmos_dydx-mainnet-1' | 'cosmos_dydx-testnet-4' | 'cosmos_dymension_1100-1' | 'cosmos_injective-1' | 'cosmos_neutron-1' | 'cosmos_nillion-1' | 'cosmos_noble-1' | 'cosmos_osmosis-1' | 'cosmos_provider' | 'cosmos_ssc-1' | 'cosmos_pacific-1' | 'cosmos_stride-1' | 'cosmos_thorchain-1' | 'cosmos_mantra-1', required
      - `data` union, required
        - CosmosMessageStrData
          - `type` 'string', required — The type of the Cosmos message data.
          - `data` string, required — The data as plain string.
        - CosmosMessageBase64Data
          - `type` 'base64', required — The type of the Cosmos message data.
          - `data` string, required — The data encoded in base64.
  - CreateEvmMessageRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'evm_message', required — EVM message type.
    - `details` union, required
      - CreateEvmTypedMessageRequest
        - `type` 'typed_message_type', required — Typed message standard (version 4).
        - `chain` union, required — The EVM chain name or ID.
          - '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'
          - 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. <ul><li>1=`ethereum_mainnet`</li><li>5=`ethereum_goerli`</li><li>10=`optimism_mainnet`</li><li>14=`flare_mainnet`</li><li>16=`flare_testnet`</li><li>30=`rootstock_mainnet`</li><li>56=`bsc_mainnet`</li><li>100=`gnosis_mainnet`</li><li>130=`unichain_mainnet`</li><li>137=`polygon_mainnet`</li><li>143=`monad_mainnet`</li><li>146=`sonic_mainnet`</li><li>169=`manta_pacific_mainnet`</li><li>196=`x_layer_mainnet`</li><li>250=`fantom_mainnet`</li><li>324=`zksync_era_mainnet`</li><li>999=`hyperevm_mainnet`</li><li>1030=`conflux_mainnet`</li><li>1100=`dymension_mainnet`</li><li>1101=`polygon_zkevm_mainnet`</li><li>1329=`sei_mainnet`</li><li>1337=`hypercore_mainnet`</li><li>1666=`aster_mainnet`</li><li>1672=`pharos_mainnet`</li><li>1729=`reya_mainnet`</li><li>2222=`kava_mainnet`</li><li>4200=`merlin_mainnet`</li><li>4217=`tempo_mainnet`</li><li>4663=`robinhood_mainnet`</li><li>5000=`mantle_mainnet`</li><li>7000=`zeta_mainnet`</li><li>7700=`canto_mainnet`</li><li>8453=`base_mainnet`</li><li>8818=`clink_mainnet`</li><li>8819=`clink_testnet`</li><li>9745=`plasma_mainnet`</li><li>16661=`zero_gravity_mainnet`</li><li>17000=`ethereum_holesky`</li><li>80001=`polygon_mumbai`</li><li>80094=`berachain_mainnet`</li><li>42161=`arbitrum_mainnet`</li><li>43113=`avalanche_fuji`</li><li>43114=`avalanche_chain`</li><li>57073=`ink_mainnet`</li><li>59144=`linea_mainnet`</li><li>81457=`blast_mainnet`</li><li>421614=`arbitrum_sepolia`</li><li>534352=`scroll_mainnet`</li><li>660279=`xai_mainnet`</li><li>747474=`katana_mainnet`</li><li>810180=`zklink_nova_mainnet`</li><li>11155111=`ethereum_sepolia`</li></ul>
          - string — The unique EVM chain ID. </br>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. <ul><li>`"evm_1"`</li><li>`"evm_5"`</li><li>`"evm_10"`</li><li>`"evm_14"`</li><li>`"evm_16"`</li><li>`"evm_30"`</li><li>`"evm_56"`</li><li>`"evm_100"`</li><li>`"evm_130"`</li><li>`"evm_137"`</li><li>`"evm_143"`</li><li>`"evm_146"`</li><li>`"evm_169"`</li><li>`"evm_196"`</li><li>`"evm_250"`</li><li>`"evm_324"`</li><li>`"evm_999"`</li><li>`"evm_1030"`</li><li>`"evm_1100"`</li><li>`"evm_1101"`</li><li>`"evm_1329"`</li><li>`"evm_1337"`</li><li>`"evm_1666"`</li><li>`"evm_1672"`</li><li>`"evm_1729"`</li><li>`"evm_2222"`</li><li>`"evm_4200"`</li><li>`"evm_4217"`</li><li>`"evm_4663"`</li><li>`"evm_5000"`</li><li>`"evm_7000"`</li><li>`"evm_7700"`</li><li>`"evm_8453"`</li><li>`"evm_8818"`</li><li>`"evm_8819"`</li><li>`"evm_9745"`</li><li>`"evm_16661"`</li><li>`"evm_17000"`</li><li>`"evm_80001"`</li><li>`"evm_80094"`</li><li>`"evm_42161"`</li><li>`"evm_43113"`</li><li>`"evm_43114"`</li><li>`"evm_57073"`</li><li>`"evm_59144"`</li><li>`"evm_81457"`</li><li>`"evm_421614"`</li><li>`"evm_534352"`</li><li>`"evm_660279"`</li><li>`"evm_747474"`</li><li>`"evm_810180"`</li><li>`"evm_11155111"`</li><li>`"evm_ethereum_mainnet"`</li><li>`"evm_ethereum_goerli"`</li><li>`"evm_optimism_mainnet"`</li><li>`"evm_flare_mainnet"`</li><li>`"evm_flare_testnet"`</li><li>`"evm_rootstock_mainnet"`</li><li>`"evm_bsc_mainnet"`</li><li>`"evm_gnosis_mainnet"`</li><li>`"evm_unichain_mainnet"`</li><li>`"evm_polygon_mainnet"`</li><li>`"evm_monad_mainnet"`</li><li>`"evm_sonic_mainnet"`</li><li>`"evm_manta_pacific_mainnet"`</li><li>`"evm_x_layer_mainnet"`</li><li>`"evm_fantom_mainnet"`</li><li>`"evm_zksync_era_mainnet"`</li><li>`"evm_hyperevm_mainnet"`</li><li>`"evm_conflux_mainnet"`</li><li>`"evm_dymension_mainnet"`</li><li>`"evm_polygon_zkevm_mainnet"`</li><li>`"evm_sei_mainnet"`</li><li>`"evm_hypercore_mainnet"`</li><li>`"evm_aster_mainnet"`</li><li>`"evm_pharos_mainnet"`</li><li>`"evm_reya_mainnet"`</li><li>`"evm_kava_mainnet"`</li><li>`"evm_merlin_mainnet"`</li><li>`"evm_tempo_mainnet"`</li><li>`"evm_robinhood_mainnet"`</li><li>`"evm_mantle_mainnet"`</li><li>`"evm_zeta_mainnet"`</li><li>`"evm_canto_mainnet"`</li><li>`"evm_base_mainnet"`</li><li>`"evm_clink_mainnet"`</li><li>`"evm_clink_testnet"`</li><li>`"evm_plasma_mainnet"`</li><li>`"evm_zero_gravity_mainnet"`</li><li>`"evm_ethereum_holesky"`</li><li>`"evm_polygon_mumbai"`</li><li>`"evm_berachain_mainnet"`</li><li>`"evm_arbitrum_mainnet"`</li><li>`"evm_avalanche_fuji"`</li><li>`"evm_avalanche_chain"`</li><li>`"evm_ink_mainnet"`</li><li>`"evm_linea_mainnet"`</li><li>`"evm_blast_mainnet"`</li><li>`"evm_arbitrum_sepolia"`</li><li>`"evm_scroll_mainnet"`</li><li>`"evm_xai_mainnet"`</li><li>`"evm_katana_mainnet"`</li><li>`"evm_zklink_nova_mainnet"`</li><li>`"evm_ethereum_sepolia"`</li></ul>
        - `raw_data` string, required — The raw data of the message to be signed, provided as a string or hex-encoded.
      - CreateEvmTypedV1MessageRequest
        - `type` 'typed_message_type_v1', required — Typed message standard (version 1).
        - `chain` union, required — The EVM chain name or ID.
          - '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'
          - 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. <ul><li>1=`ethereum_mainnet`</li><li>5=`ethereum_goerli`</li><li>10=`optimism_mainnet`</li><li>14=`flare_mainnet`</li><li>16=`flare_testnet`</li><li>30=`rootstock_mainnet`</li><li>56=`bsc_mainnet`</li><li>100=`gnosis_mainnet`</li><li>130=`unichain_mainnet`</li><li>137=`polygon_mainnet`</li><li>143=`monad_mainnet`</li><li>146=`sonic_mainnet`</li><li>169=`manta_pacific_mainnet`</li><li>196=`x_layer_mainnet`</li><li>250=`fantom_mainnet`</li><li>324=`zksync_era_mainnet`</li><li>999=`hyperevm_mainnet`</li><li>1030=`conflux_mainnet`</li><li>1100=`dymension_mainnet`</li><li>1101=`polygon_zkevm_mainnet`</li><li>1329=`sei_mainnet`</li><li>1337=`hypercore_mainnet`</li><li>1666=`aster_mainnet`</li><li>1672=`pharos_mainnet`</li><li>1729=`reya_mainnet`</li><li>2222=`kava_mainnet`</li><li>4200=`merlin_mainnet`</li><li>4217=`tempo_mainnet`</li><li>4663=`robinhood_mainnet`</li><li>5000=`mantle_mainnet`</li><li>7000=`zeta_mainnet`</li><li>7700=`canto_mainnet`</li><li>8453=`base_mainnet`</li><li>8818=`clink_mainnet`</li><li>8819=`clink_testnet`</li><li>9745=`plasma_mainnet`</li><li>16661=`zero_gravity_mainnet`</li><li>17000=`ethereum_holesky`</li><li>80001=`polygon_mumbai`</li><li>80094=`berachain_mainnet`</li><li>42161=`arbitrum_mainnet`</li><li>43113=`avalanche_fuji`</li><li>43114=`avalanche_chain`</li><li>57073=`ink_mainnet`</li><li>59144=`linea_mainnet`</li><li>81457=`blast_mainnet`</li><li>421614=`arbitrum_sepolia`</li><li>534352=`scroll_mainnet`</li><li>660279=`xai_mainnet`</li><li>747474=`katana_mainnet`</li><li>810180=`zklink_nova_mainnet`</li><li>11155111=`ethereum_sepolia`</li></ul>
          - string — The unique EVM chain ID. </br>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. <ul><li>`"evm_1"`</li><li>`"evm_5"`</li><li>`"evm_10"`</li><li>`"evm_14"`</li><li>`"evm_16"`</li><li>`"evm_30"`</li><li>`"evm_56"`</li><li>`"evm_100"`</li><li>`"evm_130"`</li><li>`"evm_137"`</li><li>`"evm_143"`</li><li>`"evm_146"`</li><li>`"evm_169"`</li><li>`"evm_196"`</li><li>`"evm_250"`</li><li>`"evm_324"`</li><li>`"evm_999"`</li><li>`"evm_1030"`</li><li>`"evm_1100"`</li><li>`"evm_1101"`</li><li>`"evm_1329"`</li><li>`"evm_1337"`</li><li>`"evm_1666"`</li><li>`"evm_1672"`</li><li>`"evm_1729"`</li><li>`"evm_2222"`</li><li>`"evm_4200"`</li><li>`"evm_4217"`</li><li>`"evm_4663"`</li><li>`"evm_5000"`</li><li>`"evm_7000"`</li><li>`"evm_7700"`</li><li>`"evm_8453"`</li><li>`"evm_8818"`</li><li>`"evm_8819"`</li><li>`"evm_9745"`</li><li>`"evm_16661"`</li><li>`"evm_17000"`</li><li>`"evm_80001"`</li><li>`"evm_80094"`</li><li>`"evm_42161"`</li><li>`"evm_43113"`</li><li>`"evm_43114"`</li><li>`"evm_57073"`</li><li>`"evm_59144"`</li><li>`"evm_81457"`</li><li>`"evm_421614"`</li><li>`"evm_534352"`</li><li>`"evm_660279"`</li><li>`"evm_747474"`</li><li>`"evm_810180"`</li><li>`"evm_11155111"`</li><li>`"evm_ethereum_mainnet"`</li><li>`"evm_ethereum_goerli"`</li><li>`"evm_optimism_mainnet"`</li><li>`"evm_flare_mainnet"`</li><li>`"evm_flare_testnet"`</li><li>`"evm_rootstock_mainnet"`</li><li>`"evm_bsc_mainnet"`</li><li>`"evm_gnosis_mainnet"`</li><li>`"evm_unichain_mainnet"`</li><li>`"evm_polygon_mainnet"`</li><li>`"evm_monad_mainnet"`</li><li>`"evm_sonic_mainnet"`</li><li>`"evm_manta_pacific_mainnet"`</li><li>`"evm_x_layer_mainnet"`</li><li>`"evm_fantom_mainnet"`</li><li>`"evm_zksync_era_mainnet"`</li><li>`"evm_hyperevm_mainnet"`</li><li>`"evm_conflux_mainnet"`</li><li>`"evm_dymension_mainnet"`</li><li>`"evm_polygon_zkevm_mainnet"`</li><li>`"evm_sei_mainnet"`</li><li>`"evm_hypercore_mainnet"`</li><li>`"evm_aster_mainnet"`</li><li>`"evm_pharos_mainnet"`</li><li>`"evm_reya_mainnet"`</li><li>`"evm_kava_mainnet"`</li><li>`"evm_merlin_mainnet"`</li><li>`"evm_tempo_mainnet"`</li><li>`"evm_robinhood_mainnet"`</li><li>`"evm_mantle_mainnet"`</li><li>`"evm_zeta_mainnet"`</li><li>`"evm_canto_mainnet"`</li><li>`"evm_base_mainnet"`</li><li>`"evm_clink_mainnet"`</li><li>`"evm_clink_testnet"`</li><li>`"evm_plasma_mainnet"`</li><li>`"evm_zero_gravity_mainnet"`</li><li>`"evm_ethereum_holesky"`</li><li>`"evm_polygon_mumbai"`</li><li>`"evm_berachain_mainnet"`</li><li>`"evm_arbitrum_mainnet"`</li><li>`"evm_avalanche_fuji"`</li><li>`"evm_avalanche_chain"`</li><li>`"evm_ink_mainnet"`</li><li>`"evm_linea_mainnet"`</li><li>`"evm_blast_mainnet"`</li><li>`"evm_arbitrum_sepolia"`</li><li>`"evm_scroll_mainnet"`</li><li>`"evm_xai_mainnet"`</li><li>`"evm_katana_mainnet"`</li><li>`"evm_zklink_nova_mainnet"`</li><li>`"evm_ethereum_sepolia"`</li></ul>
        - `raw_data` string, required — The raw data of the message to be signed, provided as a string or hex-encoded.
      - CreateEvmPersonalMessageRequest
        - `type` 'personal_message_type', required — Personal message standard.
        - `chain` union, required — The EVM chain name or ID.
          - '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'
          - 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. <ul><li>1=`ethereum_mainnet`</li><li>5=`ethereum_goerli`</li><li>10=`optimism_mainnet`</li><li>14=`flare_mainnet`</li><li>16=`flare_testnet`</li><li>30=`rootstock_mainnet`</li><li>56=`bsc_mainnet`</li><li>100=`gnosis_mainnet`</li><li>130=`unichain_mainnet`</li><li>137=`polygon_mainnet`</li><li>143=`monad_mainnet`</li><li>146=`sonic_mainnet`</li><li>169=`manta_pacific_mainnet`</li><li>196=`x_layer_mainnet`</li><li>250=`fantom_mainnet`</li><li>324=`zksync_era_mainnet`</li><li>999=`hyperevm_mainnet`</li><li>1030=`conflux_mainnet`</li><li>1100=`dymension_mainnet`</li><li>1101=`polygon_zkevm_mainnet`</li><li>1329=`sei_mainnet`</li><li>1337=`hypercore_mainnet`</li><li>1666=`aster_mainnet`</li><li>1672=`pharos_mainnet`</li><li>1729=`reya_mainnet`</li><li>2222=`kava_mainnet`</li><li>4200=`merlin_mainnet`</li><li>4217=`tempo_mainnet`</li><li>4663=`robinhood_mainnet`</li><li>5000=`mantle_mainnet`</li><li>7000=`zeta_mainnet`</li><li>7700=`canto_mainnet`</li><li>8453=`base_mainnet`</li><li>8818=`clink_mainnet`</li><li>8819=`clink_testnet`</li><li>9745=`plasma_mainnet`</li><li>16661=`zero_gravity_mainnet`</li><li>17000=`ethereum_holesky`</li><li>80001=`polygon_mumbai`</li><li>80094=`berachain_mainnet`</li><li>42161=`arbitrum_mainnet`</li><li>43113=`avalanche_fuji`</li><li>43114=`avalanche_chain`</li><li>57073=`ink_mainnet`</li><li>59144=`linea_mainnet`</li><li>81457=`blast_mainnet`</li><li>421614=`arbitrum_sepolia`</li><li>534352=`scroll_mainnet`</li><li>660279=`xai_mainnet`</li><li>747474=`katana_mainnet`</li><li>810180=`zklink_nova_mainnet`</li><li>11155111=`ethereum_sepolia`</li></ul>
          - string — The unique EVM chain ID. </br>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. <ul><li>`"evm_1"`</li><li>`"evm_5"`</li><li>`"evm_10"`</li><li>`"evm_14"`</li><li>`"evm_16"`</li><li>`"evm_30"`</li><li>`"evm_56"`</li><li>`"evm_100"`</li><li>`"evm_130"`</li><li>`"evm_137"`</li><li>`"evm_143"`</li><li>`"evm_146"`</li><li>`"evm_169"`</li><li>`"evm_196"`</li><li>`"evm_250"`</li><li>`"evm_324"`</li><li>`"evm_999"`</li><li>`"evm_1030"`</li><li>`"evm_1100"`</li><li>`"evm_1101"`</li><li>`"evm_1329"`</li><li>`"evm_1337"`</li><li>`"evm_1666"`</li><li>`"evm_1672"`</li><li>`"evm_1729"`</li><li>`"evm_2222"`</li><li>`"evm_4200"`</li><li>`"evm_4217"`</li><li>`"evm_4663"`</li><li>`"evm_5000"`</li><li>`"evm_7000"`</li><li>`"evm_7700"`</li><li>`"evm_8453"`</li><li>`"evm_8818"`</li><li>`"evm_8819"`</li><li>`"evm_9745"`</li><li>`"evm_16661"`</li><li>`"evm_17000"`</li><li>`"evm_80001"`</li><li>`"evm_80094"`</li><li>`"evm_42161"`</li><li>`"evm_43113"`</li><li>`"evm_43114"`</li><li>`"evm_57073"`</li><li>`"evm_59144"`</li><li>`"evm_81457"`</li><li>`"evm_421614"`</li><li>`"evm_534352"`</li><li>`"evm_660279"`</li><li>`"evm_747474"`</li><li>`"evm_810180"`</li><li>`"evm_11155111"`</li><li>`"evm_ethereum_mainnet"`</li><li>`"evm_ethereum_goerli"`</li><li>`"evm_optimism_mainnet"`</li><li>`"evm_flare_mainnet"`</li><li>`"evm_flare_testnet"`</li><li>`"evm_rootstock_mainnet"`</li><li>`"evm_bsc_mainnet"`</li><li>`"evm_gnosis_mainnet"`</li><li>`"evm_unichain_mainnet"`</li><li>`"evm_polygon_mainnet"`</li><li>`"evm_monad_mainnet"`</li><li>`"evm_sonic_mainnet"`</li><li>`"evm_manta_pacific_mainnet"`</li><li>`"evm_x_layer_mainnet"`</li><li>`"evm_fantom_mainnet"`</li><li>`"evm_zksync_era_mainnet"`</li><li>`"evm_hyperevm_mainnet"`</li><li>`"evm_conflux_mainnet"`</li><li>`"evm_dymension_mainnet"`</li><li>`"evm_polygon_zkevm_mainnet"`</li><li>`"evm_sei_mainnet"`</li><li>`"evm_hypercore_mainnet"`</li><li>`"evm_aster_mainnet"`</li><li>`"evm_pharos_mainnet"`</li><li>`"evm_reya_mainnet"`</li><li>`"evm_kava_mainnet"`</li><li>`"evm_merlin_mainnet"`</li><li>`"evm_tempo_mainnet"`</li><li>`"evm_robinhood_mainnet"`</li><li>`"evm_mantle_mainnet"`</li><li>`"evm_zeta_mainnet"`</li><li>`"evm_canto_mainnet"`</li><li>`"evm_base_mainnet"`</li><li>`"evm_clink_mainnet"`</li><li>`"evm_clink_testnet"`</li><li>`"evm_plasma_mainnet"`</li><li>`"evm_zero_gravity_mainnet"`</li><li>`"evm_ethereum_holesky"`</li><li>`"evm_polygon_mumbai"`</li><li>`"evm_berachain_mainnet"`</li><li>`"evm_arbitrum_mainnet"`</li><li>`"evm_avalanche_fuji"`</li><li>`"evm_avalanche_chain"`</li><li>`"evm_ink_mainnet"`</li><li>`"evm_linea_mainnet"`</li><li>`"evm_blast_mainnet"`</li><li>`"evm_arbitrum_sepolia"`</li><li>`"evm_scroll_mainnet"`</li><li>`"evm_xai_mainnet"`</li><li>`"evm_katana_mainnet"`</li><li>`"evm_zklink_nova_mainnet"`</li><li>`"evm_ethereum_sepolia"`</li></ul>
        - `raw_data` string, required — The raw data of the message to be signed, provided as a string or hex-encoded.
  - CreateEvmTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'evm_transaction', required — EVM transaction type.
    - `details` union, required
      - CreateEvmRawTransactionRequest
        - `fee_payer` TransactionFeePayerVault
          - `type` 'vault', required
          - `vault_id` string, uuid, required — The unique identifier of the vault that pays the fee.
        - `type` 'evm_raw_transaction', required — An EVM raw transaction receives raw data and is for general transactions.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `use_mev_protected_node` boolean — Use an MEV protected node to send the transaction. By using an MEV protected node, you avoid maximal extractable value (MEV) attacks.
        - `use_secure_node` boolean — Use a secure node to send the transaction. By using a secure node, you avoid maximal extractable value (MEV) attacks.
        - `gas` union — The gas details of the transaction. The details depend on which option you choose:<ul><li>Gas Priority or <li>Custom Gas Request </ul>
          - GasPriorityRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
          - CustomGasRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'custom', required
            - `details` union, required — Using the Custom Gas Request option, you specify `gas_limit`, as well as the following gas details: <ul><li>If you choose `legacy` (meaning a chain where gas price can be specified exactly), you must specify only the `price` of a gas unit. <li>If you choose `dynamic` (meaning a chain where gas price can be determined dynamically), you must specify two additional values: <ul><li>`max_priority_fee_per_gas`, the maximum tip amount for mining your transaction <li>`max_fee_per_gas`, the maximum amount you are willing to pay for the fee (ultimately, either you'll pay this amount, or less, depending on the network base fee). </ul></ul> <br> Note that the Legacy gas price setting is allowed on dynamic (EIP-1559) networks as well. <br> You can get information on gas fees for different chains by examining the response to a call to [List Chains](https://documentation.fordefi.com/redoc/#operation/list_chains_api_v1_blockchains_get). More information is provided in [EVM chains and their fee mechanisms](https://docs.fordefi.com/user-guide/manage-transactions/understand-transaction-fees/evm-chains#evm-chains-and-their-fee-mechanisms).
              - …
        - `funder` string, uuid — The unique identifier of the vault that pays the fee for this transaction.
        - `custom_nonce` union — The user-specified nonce for the transaction.<br> If not provided, the transaction's nonce will be automatically determined upon signing. <br> If provided, it must equal the nonce of an existing transaction that has already been signed but not yet mined, on the same vault.<br> Alternatively, it may equal the next nonce of the vault.
          - integer
          - string
        - `chain` union, required — The EVM chain name or ID.
          - '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'
          - 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. <ul><li>1=`ethereum_mainnet`</li><li>5=`ethereum_goerli`</li><li>10=`optimism_mainnet`</li><li>14=`flare_mainnet`</li><li>16=`flare_testnet`</li><li>30=`rootstock_mainnet`</li><li>56=`bsc_mainnet`</li><li>100=`gnosis_mainnet`</li><li>130=`unichain_mainnet`</li><li>137=`polygon_mainnet`</li><li>143=`monad_mainnet`</li><li>146=`sonic_mainnet`</li><li>169=`manta_pacific_mainnet`</li><li>196=`x_layer_mainnet`</li><li>250=`fantom_mainnet`</li><li>324=`zksync_era_mainnet`</li><li>999=`hyperevm_mainnet`</li><li>1030=`conflux_mainnet`</li><li>1100=`dymension_mainnet`</li><li>1101=`polygon_zkevm_mainnet`</li><li>1329=`sei_mainnet`</li><li>1337=`hypercore_mainnet`</li><li>1666=`aster_mainnet`</li><li>1672=`pharos_mainnet`</li><li>1729=`reya_mainnet`</li><li>2222=`kava_mainnet`</li><li>4200=`merlin_mainnet`</li><li>4217=`tempo_mainnet`</li><li>4663=`robinhood_mainnet`</li><li>5000=`mantle_mainnet`</li><li>7000=`zeta_mainnet`</li><li>7700=`canto_mainnet`</li><li>8453=`base_mainnet`</li><li>8818=`clink_mainnet`</li><li>8819=`clink_testnet`</li><li>9745=`plasma_mainnet`</li><li>16661=`zero_gravity_mainnet`</li><li>17000=`ethereum_holesky`</li><li>80001=`polygon_mumbai`</li><li>80094=`berachain_mainnet`</li><li>42161=`arbitrum_mainnet`</li><li>43113=`avalanche_fuji`</li><li>43114=`avalanche_chain`</li><li>57073=`ink_mainnet`</li><li>59144=`linea_mainnet`</li><li>81457=`blast_mainnet`</li><li>421614=`arbitrum_sepolia`</li><li>534352=`scroll_mainnet`</li><li>660279=`xai_mainnet`</li><li>747474=`katana_mainnet`</li><li>810180=`zklink_nova_mainnet`</li><li>11155111=`ethereum_sepolia`</li></ul>
          - string — The unique EVM chain ID. </br>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. <ul><li>`"evm_1"`</li><li>`"evm_5"`</li><li>`"evm_10"`</li><li>`"evm_14"`</li><li>`"evm_16"`</li><li>`"evm_30"`</li><li>`"evm_56"`</li><li>`"evm_100"`</li><li>`"evm_130"`</li><li>`"evm_137"`</li><li>`"evm_143"`</li><li>`"evm_146"`</li><li>`"evm_169"`</li><li>`"evm_196"`</li><li>`"evm_250"`</li><li>`"evm_324"`</li><li>`"evm_999"`</li><li>`"evm_1030"`</li><li>`"evm_1100"`</li><li>`"evm_1101"`</li><li>`"evm_1329"`</li><li>`"evm_1337"`</li><li>`"evm_1666"`</li><li>`"evm_1672"`</li><li>`"evm_1729"`</li><li>`"evm_2222"`</li><li>`"evm_4200"`</li><li>`"evm_4217"`</li><li>`"evm_4663"`</li><li>`"evm_5000"`</li><li>`"evm_7000"`</li><li>`"evm_7700"`</li><li>`"evm_8453"`</li><li>`"evm_8818"`</li><li>`"evm_8819"`</li><li>`"evm_9745"`</li><li>`"evm_16661"`</li><li>`"evm_17000"`</li><li>`"evm_80001"`</li><li>`"evm_80094"`</li><li>`"evm_42161"`</li><li>`"evm_43113"`</li><li>`"evm_43114"`</li><li>`"evm_57073"`</li><li>`"evm_59144"`</li><li>`"evm_81457"`</li><li>`"evm_421614"`</li><li>`"evm_534352"`</li><li>`"evm_660279"`</li><li>`"evm_747474"`</li><li>`"evm_810180"`</li><li>`"evm_11155111"`</li><li>`"evm_ethereum_mainnet"`</li><li>`"evm_ethereum_goerli"`</li><li>`"evm_optimism_mainnet"`</li><li>`"evm_flare_mainnet"`</li><li>`"evm_flare_testnet"`</li><li>`"evm_rootstock_mainnet"`</li><li>`"evm_bsc_mainnet"`</li><li>`"evm_gnosis_mainnet"`</li><li>`"evm_unichain_mainnet"`</li><li>`"evm_polygon_mainnet"`</li><li>`"evm_monad_mainnet"`</li><li>`"evm_sonic_mainnet"`</li><li>`"evm_manta_pacific_mainnet"`</li><li>`"evm_x_layer_mainnet"`</li><li>`"evm_fantom_mainnet"`</li><li>`"evm_zksync_era_mainnet"`</li><li>`"evm_hyperevm_mainnet"`</li><li>`"evm_conflux_mainnet"`</li><li>`"evm_dymension_mainnet"`</li><li>`"evm_polygon_zkevm_mainnet"`</li><li>`"evm_sei_mainnet"`</li><li>`"evm_hypercore_mainnet"`</li><li>`"evm_aster_mainnet"`</li><li>`"evm_pharos_mainnet"`</li><li>`"evm_reya_mainnet"`</li><li>`"evm_kava_mainnet"`</li><li>`"evm_merlin_mainnet"`</li><li>`"evm_tempo_mainnet"`</li><li>`"evm_robinhood_mainnet"`</li><li>`"evm_mantle_mainnet"`</li><li>`"evm_zeta_mainnet"`</li><li>`"evm_canto_mainnet"`</li><li>`"evm_base_mainnet"`</li><li>`"evm_clink_mainnet"`</li><li>`"evm_clink_testnet"`</li><li>`"evm_plasma_mainnet"`</li><li>`"evm_zero_gravity_mainnet"`</li><li>`"evm_ethereum_holesky"`</li><li>`"evm_polygon_mumbai"`</li><li>`"evm_berachain_mainnet"`</li><li>`"evm_arbitrum_mainnet"`</li><li>`"evm_avalanche_fuji"`</li><li>`"evm_avalanche_chain"`</li><li>`"evm_ink_mainnet"`</li><li>`"evm_linea_mainnet"`</li><li>`"evm_blast_mainnet"`</li><li>`"evm_arbitrum_sepolia"`</li><li>`"evm_scroll_mainnet"`</li><li>`"evm_xai_mainnet"`</li><li>`"evm_katana_mainnet"`</li><li>`"evm_zklink_nova_mainnet"`</li><li>`"evm_ethereum_sepolia"`</li></ul>
        - `to` string — The address of the recipient of the transaction, or null for contract creation.
        - `value` string, required — The value of native currency to send this transaction with.
        - `data` union
          - EvmDataRequestBase64
            - `type` 'base64', required — Base64 raw format.
            - `raw_data` string, required — The raw data of the transaction, 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).
          - EvmDataRequestFullDetails
            - `type` 'full_details', required — Method-and-arguments format.
            - `method_name` string, required — The method to call in the smart contract.
            - `method_arguments` object, required — The arguments to pass into the method, as `key:value` pairs.
          - EvmDataRequestHex
            - `type` 'hex', required — Hex raw format.
            - `hex_data` string, required — The contract call data, as a serialized method-call with its arguments, encoded in hex.See [data field format for transactions on Ethereum](https://ethereum.org/en/developers/docs/transactions/#the-data-field).
      - CreateEvmTransferRequest
        - `fee_payer` TransactionFeePayerVault
          - `type` 'vault', required
          - `vault_id` string, uuid, required — The unique identifier of the vault that pays the fee.
        - `type` 'evm_transfer', required — An EVM transfer transaction is for transferring native currency or ERC20/721/1155 tokens.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `use_mev_protected_node` boolean — Use an MEV protected node to send the transaction. By using an MEV protected node, you avoid maximal extractable value (MEV) attacks.
        - `use_secure_node` boolean — Use a secure node to send the transaction. By using a secure node, you avoid maximal extractable value (MEV) attacks.
        - `gas` union — The gas details of the transaction. The details depend on which option you choose:<ul><li>Gas Priority or <li>Custom Gas Request </ul>
          - GasPriorityRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
          - CustomGasRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'custom', required
            - `details` union, required — Using the Custom Gas Request option, you specify `gas_limit`, as well as the following gas details: <ul><li>If you choose `legacy` (meaning a chain where gas price can be specified exactly), you must specify only the `price` of a gas unit. <li>If you choose `dynamic` (meaning a chain where gas price can be determined dynamically), you must specify two additional values: <ul><li>`max_priority_fee_per_gas`, the maximum tip amount for mining your transaction <li>`max_fee_per_gas`, the maximum amount you are willing to pay for the fee (ultimately, either you'll pay this amount, or less, depending on the network base fee). </ul></ul> <br> Note that the Legacy gas price setting is allowed on dynamic (EIP-1559) networks as well. <br> You can get information on gas fees for different chains by examining the response to a call to [List Chains](https://documentation.fordefi.com/redoc/#operation/list_chains_api_v1_blockchains_get). More information is provided in [EVM chains and their fee mechanisms](https://docs.fordefi.com/user-guide/manage-transactions/understand-transaction-fees/evm-chains#evm-chains-and-their-fee-mechanisms).
              - …
        - `funder` string, uuid — The unique identifier of the vault that pays the fee for this transaction.
        - `custom_nonce` union — The user-specified nonce for the transaction.<br> If not provided, the transaction's nonce will be automatically determined upon signing. <br> If provided, it must equal the nonce of an existing transaction that has already been signed but not yet mined, on the same vault.<br> Alternatively, it may equal the next nonce of the vault.
          - integer
          - string
        - `to` union, required — The recipient of the transfer. Specify either a general address, the ID of another vault, or a contact ID.
          - EvmRecipientHex
            - `type` 'hex', required — The type of the recipient.
            - `address` string, required — The address of the recipient.
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
          - RecipientContactId
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `asset_identifier` EvmAssetIdentifierRequest, required
          - `type` 'evm', required — Asset identifier type.
          - `details` union, required
            - EvmNativeAssetIdentifierRequest
              - …
            - EvmErc20AssetIdentifierRequest
              - …
            - EvmErc721AssetIdentifierRequest
              - …
            - EvmErc1155AssetIdentifierRequest
              - …
            - EvmHyperLiquidAssetIdentifierRequest
              - …
        - `value` union, required — Specify one of the following: <ul><li>`value`<li>`max`</ul>
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
      - CreateEvmRevokeAllowanceRequest
        - `fee_payer` TransactionFeePayerVault
          - `type` 'vault', required
          - `vault_id` string, uuid, required — The unique identifier of the vault that pays the fee.
        - `type` 'evm_revoke_allowance', required — An EVM revoke allowance transaction is for revoking a spender's allowance for a specific token.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `use_mev_protected_node` boolean — Use an MEV protected node to send the transaction. By using an MEV protected node, you avoid maximal extractable value (MEV) attacks.
        - `use_secure_node` boolean — Use a secure node to send the transaction. By using a secure node, you avoid maximal extractable value (MEV) attacks.
        - `gas` union — The gas details of the transaction. The details depend on which option you choose:<ul><li>Gas Priority or <li>Custom Gas Request </ul>
          - GasPriorityRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
          - CustomGasRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'custom', required
            - `details` union, required — Using the Custom Gas Request option, you specify `gas_limit`, as well as the following gas details: <ul><li>If you choose `legacy` (meaning a chain where gas price can be specified exactly), you must specify only the `price` of a gas unit. <li>If you choose `dynamic` (meaning a chain where gas price can be determined dynamically), you must specify two additional values: <ul><li>`max_priority_fee_per_gas`, the maximum tip amount for mining your transaction <li>`max_fee_per_gas`, the maximum amount you are willing to pay for the fee (ultimately, either you'll pay this amount, or less, depending on the network base fee). </ul></ul> <br> Note that the Legacy gas price setting is allowed on dynamic (EIP-1559) networks as well. <br> You can get information on gas fees for different chains by examining the response to a call to [List Chains](https://documentation.fordefi.com/redoc/#operation/list_chains_api_v1_blockchains_get). More information is provided in [EVM chains and their fee mechanisms](https://docs.fordefi.com/user-guide/manage-transactions/understand-transaction-fees/evm-chains#evm-chains-and-their-fee-mechanisms).
              - …
        - `funder` string, uuid — The unique identifier of the vault that pays the fee for this transaction.
        - `custom_nonce` union — The user-specified nonce for the transaction.<br> If not provided, the transaction's nonce will be automatically determined upon signing. <br> If provided, it must equal the nonce of an existing transaction that has already been signed but not yet mined, on the same vault.<br> Alternatively, it may equal the next nonce of the vault.
          - integer
          - string
        - `chain` union, required — The EVM chain name or ID.
          - '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'
          - 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. <ul><li>1=`ethereum_mainnet`</li><li>5=`ethereum_goerli`</li><li>10=`optimism_mainnet`</li><li>14=`flare_mainnet`</li><li>16=`flare_testnet`</li><li>30=`rootstock_mainnet`</li><li>56=`bsc_mainnet`</li><li>100=`gnosis_mainnet`</li><li>130=`unichain_mainnet`</li><li>137=`polygon_mainnet`</li><li>143=`monad_mainnet`</li><li>146=`sonic_mainnet`</li><li>169=`manta_pacific_mainnet`</li><li>196=`x_layer_mainnet`</li><li>250=`fantom_mainnet`</li><li>324=`zksync_era_mainnet`</li><li>999=`hyperevm_mainnet`</li><li>1030=`conflux_mainnet`</li><li>1100=`dymension_mainnet`</li><li>1101=`polygon_zkevm_mainnet`</li><li>1329=`sei_mainnet`</li><li>1337=`hypercore_mainnet`</li><li>1666=`aster_mainnet`</li><li>1672=`pharos_mainnet`</li><li>1729=`reya_mainnet`</li><li>2222=`kava_mainnet`</li><li>4200=`merlin_mainnet`</li><li>4217=`tempo_mainnet`</li><li>4663=`robinhood_mainnet`</li><li>5000=`mantle_mainnet`</li><li>7000=`zeta_mainnet`</li><li>7700=`canto_mainnet`</li><li>8453=`base_mainnet`</li><li>8818=`clink_mainnet`</li><li>8819=`clink_testnet`</li><li>9745=`plasma_mainnet`</li><li>16661=`zero_gravity_mainnet`</li><li>17000=`ethereum_holesky`</li><li>80001=`polygon_mumbai`</li><li>80094=`berachain_mainnet`</li><li>42161=`arbitrum_mainnet`</li><li>43113=`avalanche_fuji`</li><li>43114=`avalanche_chain`</li><li>57073=`ink_mainnet`</li><li>59144=`linea_mainnet`</li><li>81457=`blast_mainnet`</li><li>421614=`arbitrum_sepolia`</li><li>534352=`scroll_mainnet`</li><li>660279=`xai_mainnet`</li><li>747474=`katana_mainnet`</li><li>810180=`zklink_nova_mainnet`</li><li>11155111=`ethereum_sepolia`</li></ul>
          - string — The unique EVM chain ID. </br>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. <ul><li>`"evm_1"`</li><li>`"evm_5"`</li><li>`"evm_10"`</li><li>`"evm_14"`</li><li>`"evm_16"`</li><li>`"evm_30"`</li><li>`"evm_56"`</li><li>`"evm_100"`</li><li>`"evm_130"`</li><li>`"evm_137"`</li><li>`"evm_143"`</li><li>`"evm_146"`</li><li>`"evm_169"`</li><li>`"evm_196"`</li><li>`"evm_250"`</li><li>`"evm_324"`</li><li>`"evm_999"`</li><li>`"evm_1030"`</li><li>`"evm_1100"`</li><li>`"evm_1101"`</li><li>`"evm_1329"`</li><li>`"evm_1337"`</li><li>`"evm_1666"`</li><li>`"evm_1672"`</li><li>`"evm_1729"`</li><li>`"evm_2222"`</li><li>`"evm_4200"`</li><li>`"evm_4217"`</li><li>`"evm_4663"`</li><li>`"evm_5000"`</li><li>`"evm_7000"`</li><li>`"evm_7700"`</li><li>`"evm_8453"`</li><li>`"evm_8818"`</li><li>`"evm_8819"`</li><li>`"evm_9745"`</li><li>`"evm_16661"`</li><li>`"evm_17000"`</li><li>`"evm_80001"`</li><li>`"evm_80094"`</li><li>`"evm_42161"`</li><li>`"evm_43113"`</li><li>`"evm_43114"`</li><li>`"evm_57073"`</li><li>`"evm_59144"`</li><li>`"evm_81457"`</li><li>`"evm_421614"`</li><li>`"evm_534352"`</li><li>`"evm_660279"`</li><li>`"evm_747474"`</li><li>`"evm_810180"`</li><li>`"evm_11155111"`</li><li>`"evm_ethereum_mainnet"`</li><li>`"evm_ethereum_goerli"`</li><li>`"evm_optimism_mainnet"`</li><li>`"evm_flare_mainnet"`</li><li>`"evm_flare_testnet"`</li><li>`"evm_rootstock_mainnet"`</li><li>`"evm_bsc_mainnet"`</li><li>`"evm_gnosis_mainnet"`</li><li>`"evm_unichain_mainnet"`</li><li>`"evm_polygon_mainnet"`</li><li>`"evm_monad_mainnet"`</li><li>`"evm_sonic_mainnet"`</li><li>`"evm_manta_pacific_mainnet"`</li><li>`"evm_x_layer_mainnet"`</li><li>`"evm_fantom_mainnet"`</li><li>`"evm_zksync_era_mainnet"`</li><li>`"evm_hyperevm_mainnet"`</li><li>`"evm_conflux_mainnet"`</li><li>`"evm_dymension_mainnet"`</li><li>`"evm_polygon_zkevm_mainnet"`</li><li>`"evm_sei_mainnet"`</li><li>`"evm_hypercore_mainnet"`</li><li>`"evm_aster_mainnet"`</li><li>`"evm_pharos_mainnet"`</li><li>`"evm_reya_mainnet"`</li><li>`"evm_kava_mainnet"`</li><li>`"evm_merlin_mainnet"`</li><li>`"evm_tempo_mainnet"`</li><li>`"evm_robinhood_mainnet"`</li><li>`"evm_mantle_mainnet"`</li><li>`"evm_zeta_mainnet"`</li><li>`"evm_canto_mainnet"`</li><li>`"evm_base_mainnet"`</li><li>`"evm_clink_mainnet"`</li><li>`"evm_clink_testnet"`</li><li>`"evm_plasma_mainnet"`</li><li>`"evm_zero_gravity_mainnet"`</li><li>`"evm_ethereum_holesky"`</li><li>`"evm_polygon_mumbai"`</li><li>`"evm_berachain_mainnet"`</li><li>`"evm_arbitrum_mainnet"`</li><li>`"evm_avalanche_fuji"`</li><li>`"evm_avalanche_chain"`</li><li>`"evm_ink_mainnet"`</li><li>`"evm_linea_mainnet"`</li><li>`"evm_blast_mainnet"`</li><li>`"evm_arbitrum_sepolia"`</li><li>`"evm_scroll_mainnet"`</li><li>`"evm_xai_mainnet"`</li><li>`"evm_katana_mainnet"`</li><li>`"evm_zklink_nova_mainnet"`</li><li>`"evm_ethereum_sepolia"`</li></ul>
        - `token` string, required — The ERC-20 token contract for which to revoke allowance.
        - `spender` string, required — The EOA or contract address of the spender for whom to revoke allowance.
      - CreateEvmSetCodeRequest
        - `fee_payer` TransactionFeePayerVault
          - `type` 'vault', required
          - `vault_id` string, uuid, required — The unique identifier of the vault that pays the fee.
        - `type` 'evm_set_code', required — An EVM set code transaction is for setting the code of a specific contract.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `use_mev_protected_node` boolean — Use an MEV protected node to send the transaction. By using an MEV protected node, you avoid maximal extractable value (MEV) attacks.
        - `use_secure_node` boolean — Use a secure node to send the transaction. By using a secure node, you avoid maximal extractable value (MEV) attacks.
        - `gas` union — The gas details of the transaction. The details depend on which option you choose:<ul><li>Gas Priority or <li>Custom Gas Request </ul>
          - GasPriorityRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
          - CustomGasRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'custom', required
            - `details` union, required — Using the Custom Gas Request option, you specify `gas_limit`, as well as the following gas details: <ul><li>If you choose `legacy` (meaning a chain where gas price can be specified exactly), you must specify only the `price` of a gas unit. <li>If you choose `dynamic` (meaning a chain where gas price can be determined dynamically), you must specify two additional values: <ul><li>`max_priority_fee_per_gas`, the maximum tip amount for mining your transaction <li>`max_fee_per_gas`, the maximum amount you are willing to pay for the fee (ultimately, either you'll pay this amount, or less, depending on the network base fee). </ul></ul> <br> Note that the Legacy gas price setting is allowed on dynamic (EIP-1559) networks as well. <br> You can get information on gas fees for different chains by examining the response to a call to [List Chains](https://documentation.fordefi.com/redoc/#operation/list_chains_api_v1_blockchains_get). More information is provided in [EVM chains and their fee mechanisms](https://docs.fordefi.com/user-guide/manage-transactions/understand-transaction-fees/evm-chains#evm-chains-and-their-fee-mechanisms).
              - …
        - `funder` string, uuid — The unique identifier of the vault that pays the fee for this transaction.
        - `custom_nonce` union — The user-specified nonce for the transaction.<br> If not provided, the transaction's nonce will be automatically determined upon signing. <br> If provided, it must equal the nonce of an existing transaction that has already been signed but not yet mined, on the same vault.<br> Alternatively, it may equal the next nonce of the vault.
          - integer
          - string
        - `chain` union, required — The EVM chain name or ID.
          - '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'
          - 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. <ul><li>1=`ethereum_mainnet`</li><li>5=`ethereum_goerli`</li><li>10=`optimism_mainnet`</li><li>14=`flare_mainnet`</li><li>16=`flare_testnet`</li><li>30=`rootstock_mainnet`</li><li>56=`bsc_mainnet`</li><li>100=`gnosis_mainnet`</li><li>130=`unichain_mainnet`</li><li>137=`polygon_mainnet`</li><li>143=`monad_mainnet`</li><li>146=`sonic_mainnet`</li><li>169=`manta_pacific_mainnet`</li><li>196=`x_layer_mainnet`</li><li>250=`fantom_mainnet`</li><li>324=`zksync_era_mainnet`</li><li>999=`hyperevm_mainnet`</li><li>1030=`conflux_mainnet`</li><li>1100=`dymension_mainnet`</li><li>1101=`polygon_zkevm_mainnet`</li><li>1329=`sei_mainnet`</li><li>1337=`hypercore_mainnet`</li><li>1666=`aster_mainnet`</li><li>1672=`pharos_mainnet`</li><li>1729=`reya_mainnet`</li><li>2222=`kava_mainnet`</li><li>4200=`merlin_mainnet`</li><li>4217=`tempo_mainnet`</li><li>4663=`robinhood_mainnet`</li><li>5000=`mantle_mainnet`</li><li>7000=`zeta_mainnet`</li><li>7700=`canto_mainnet`</li><li>8453=`base_mainnet`</li><li>8818=`clink_mainnet`</li><li>8819=`clink_testnet`</li><li>9745=`plasma_mainnet`</li><li>16661=`zero_gravity_mainnet`</li><li>17000=`ethereum_holesky`</li><li>80001=`polygon_mumbai`</li><li>80094=`berachain_mainnet`</li><li>42161=`arbitrum_mainnet`</li><li>43113=`avalanche_fuji`</li><li>43114=`avalanche_chain`</li><li>57073=`ink_mainnet`</li><li>59144=`linea_mainnet`</li><li>81457=`blast_mainnet`</li><li>421614=`arbitrum_sepolia`</li><li>534352=`scroll_mainnet`</li><li>660279=`xai_mainnet`</li><li>747474=`katana_mainnet`</li><li>810180=`zklink_nova_mainnet`</li><li>11155111=`ethereum_sepolia`</li></ul>
          - string — The unique EVM chain ID. </br>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. <ul><li>`"evm_1"`</li><li>`"evm_5"`</li><li>`"evm_10"`</li><li>`"evm_14"`</li><li>`"evm_16"`</li><li>`"evm_30"`</li><li>`"evm_56"`</li><li>`"evm_100"`</li><li>`"evm_130"`</li><li>`"evm_137"`</li><li>`"evm_143"`</li><li>`"evm_146"`</li><li>`"evm_169"`</li><li>`"evm_196"`</li><li>`"evm_250"`</li><li>`"evm_324"`</li><li>`"evm_999"`</li><li>`"evm_1030"`</li><li>`"evm_1100"`</li><li>`"evm_1101"`</li><li>`"evm_1329"`</li><li>`"evm_1337"`</li><li>`"evm_1666"`</li><li>`"evm_1672"`</li><li>`"evm_1729"`</li><li>`"evm_2222"`</li><li>`"evm_4200"`</li><li>`"evm_4217"`</li><li>`"evm_4663"`</li><li>`"evm_5000"`</li><li>`"evm_7000"`</li><li>`"evm_7700"`</li><li>`"evm_8453"`</li><li>`"evm_8818"`</li><li>`"evm_8819"`</li><li>`"evm_9745"`</li><li>`"evm_16661"`</li><li>`"evm_17000"`</li><li>`"evm_80001"`</li><li>`"evm_80094"`</li><li>`"evm_42161"`</li><li>`"evm_43113"`</li><li>`"evm_43114"`</li><li>`"evm_57073"`</li><li>`"evm_59144"`</li><li>`"evm_81457"`</li><li>`"evm_421614"`</li><li>`"evm_534352"`</li><li>`"evm_660279"`</li><li>`"evm_747474"`</li><li>`"evm_810180"`</li><li>`"evm_11155111"`</li><li>`"evm_ethereum_mainnet"`</li><li>`"evm_ethereum_goerli"`</li><li>`"evm_optimism_mainnet"`</li><li>`"evm_flare_mainnet"`</li><li>`"evm_flare_testnet"`</li><li>`"evm_rootstock_mainnet"`</li><li>`"evm_bsc_mainnet"`</li><li>`"evm_gnosis_mainnet"`</li><li>`"evm_unichain_mainnet"`</li><li>`"evm_polygon_mainnet"`</li><li>`"evm_monad_mainnet"`</li><li>`"evm_sonic_mainnet"`</li><li>`"evm_manta_pacific_mainnet"`</li><li>`"evm_x_layer_mainnet"`</li><li>`"evm_fantom_mainnet"`</li><li>`"evm_zksync_era_mainnet"`</li><li>`"evm_hyperevm_mainnet"`</li><li>`"evm_conflux_mainnet"`</li><li>`"evm_dymension_mainnet"`</li><li>`"evm_polygon_zkevm_mainnet"`</li><li>`"evm_sei_mainnet"`</li><li>`"evm_hypercore_mainnet"`</li><li>`"evm_aster_mainnet"`</li><li>`"evm_pharos_mainnet"`</li><li>`"evm_reya_mainnet"`</li><li>`"evm_kava_mainnet"`</li><li>`"evm_merlin_mainnet"`</li><li>`"evm_tempo_mainnet"`</li><li>`"evm_robinhood_mainnet"`</li><li>`"evm_mantle_mainnet"`</li><li>`"evm_zeta_mainnet"`</li><li>`"evm_canto_mainnet"`</li><li>`"evm_base_mainnet"`</li><li>`"evm_clink_mainnet"`</li><li>`"evm_clink_testnet"`</li><li>`"evm_plasma_mainnet"`</li><li>`"evm_zero_gravity_mainnet"`</li><li>`"evm_ethereum_holesky"`</li><li>`"evm_polygon_mumbai"`</li><li>`"evm_berachain_mainnet"`</li><li>`"evm_arbitrum_mainnet"`</li><li>`"evm_avalanche_fuji"`</li><li>`"evm_avalanche_chain"`</li><li>`"evm_ink_mainnet"`</li><li>`"evm_linea_mainnet"`</li><li>`"evm_blast_mainnet"`</li><li>`"evm_arbitrum_sepolia"`</li><li>`"evm_scroll_mainnet"`</li><li>`"evm_xai_mainnet"`</li><li>`"evm_katana_mainnet"`</li><li>`"evm_zklink_nova_mainnet"`</li><li>`"evm_ethereum_sepolia"`</li></ul>
        - `enable` boolean, required — Whether to set the code of the contract, or to clear it.
      - CreateEvmWrapNativeRequest
        - `fee_payer` TransactionFeePayerVault
          - `type` 'vault', required
          - `vault_id` string, uuid, required — The unique identifier of the vault that pays the fee.
        - `type` 'evm_wrap_native', required — An EVM wrap native transaction is for wrapping the native token.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `use_mev_protected_node` boolean — Use an MEV protected node to send the transaction. By using an MEV protected node, you avoid maximal extractable value (MEV) attacks.
        - `use_secure_node` boolean — Use a secure node to send the transaction. By using a secure node, you avoid maximal extractable value (MEV) attacks.
        - `gas` union — The gas details of the transaction. The details depend on which option you choose:<ul><li>Gas Priority or <li>Custom Gas Request </ul>
          - GasPriorityRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
          - CustomGasRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'custom', required
            - `details` union, required — Using the Custom Gas Request option, you specify `gas_limit`, as well as the following gas details: <ul><li>If you choose `legacy` (meaning a chain where gas price can be specified exactly), you must specify only the `price` of a gas unit. <li>If you choose `dynamic` (meaning a chain where gas price can be determined dynamically), you must specify two additional values: <ul><li>`max_priority_fee_per_gas`, the maximum tip amount for mining your transaction <li>`max_fee_per_gas`, the maximum amount you are willing to pay for the fee (ultimately, either you'll pay this amount, or less, depending on the network base fee). </ul></ul> <br> Note that the Legacy gas price setting is allowed on dynamic (EIP-1559) networks as well. <br> You can get information on gas fees for different chains by examining the response to a call to [List Chains](https://documentation.fordefi.com/redoc/#operation/list_chains_api_v1_blockchains_get). More information is provided in [EVM chains and their fee mechanisms](https://docs.fordefi.com/user-guide/manage-transactions/understand-transaction-fees/evm-chains#evm-chains-and-their-fee-mechanisms).
              - …
        - `funder` string, uuid — The unique identifier of the vault that pays the fee for this transaction.
        - `custom_nonce` union — The user-specified nonce for the transaction.<br> If not provided, the transaction's nonce will be automatically determined upon signing. <br> If provided, it must equal the nonce of an existing transaction that has already been signed but not yet mined, on the same vault.<br> Alternatively, it may equal the next nonce of the vault.
          - integer
          - string
        - `chain` union, required — The EVM chain name or ID.
          - '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'
          - 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. <ul><li>1=`ethereum_mainnet`</li><li>5=`ethereum_goerli`</li><li>10=`optimism_mainnet`</li><li>14=`flare_mainnet`</li><li>16=`flare_testnet`</li><li>30=`rootstock_mainnet`</li><li>56=`bsc_mainnet`</li><li>100=`gnosis_mainnet`</li><li>130=`unichain_mainnet`</li><li>137=`polygon_mainnet`</li><li>143=`monad_mainnet`</li><li>146=`sonic_mainnet`</li><li>169=`manta_pacific_mainnet`</li><li>196=`x_layer_mainnet`</li><li>250=`fantom_mainnet`</li><li>324=`zksync_era_mainnet`</li><li>999=`hyperevm_mainnet`</li><li>1030=`conflux_mainnet`</li><li>1100=`dymension_mainnet`</li><li>1101=`polygon_zkevm_mainnet`</li><li>1329=`sei_mainnet`</li><li>1337=`hypercore_mainnet`</li><li>1666=`aster_mainnet`</li><li>1672=`pharos_mainnet`</li><li>1729=`reya_mainnet`</li><li>2222=`kava_mainnet`</li><li>4200=`merlin_mainnet`</li><li>4217=`tempo_mainnet`</li><li>4663=`robinhood_mainnet`</li><li>5000=`mantle_mainnet`</li><li>7000=`zeta_mainnet`</li><li>7700=`canto_mainnet`</li><li>8453=`base_mainnet`</li><li>8818=`clink_mainnet`</li><li>8819=`clink_testnet`</li><li>9745=`plasma_mainnet`</li><li>16661=`zero_gravity_mainnet`</li><li>17000=`ethereum_holesky`</li><li>80001=`polygon_mumbai`</li><li>80094=`berachain_mainnet`</li><li>42161=`arbitrum_mainnet`</li><li>43113=`avalanche_fuji`</li><li>43114=`avalanche_chain`</li><li>57073=`ink_mainnet`</li><li>59144=`linea_mainnet`</li><li>81457=`blast_mainnet`</li><li>421614=`arbitrum_sepolia`</li><li>534352=`scroll_mainnet`</li><li>660279=`xai_mainnet`</li><li>747474=`katana_mainnet`</li><li>810180=`zklink_nova_mainnet`</li><li>11155111=`ethereum_sepolia`</li></ul>
          - string — The unique EVM chain ID. </br>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. <ul><li>`"evm_1"`</li><li>`"evm_5"`</li><li>`"evm_10"`</li><li>`"evm_14"`</li><li>`"evm_16"`</li><li>`"evm_30"`</li><li>`"evm_56"`</li><li>`"evm_100"`</li><li>`"evm_130"`</li><li>`"evm_137"`</li><li>`"evm_143"`</li><li>`"evm_146"`</li><li>`"evm_169"`</li><li>`"evm_196"`</li><li>`"evm_250"`</li><li>`"evm_324"`</li><li>`"evm_999"`</li><li>`"evm_1030"`</li><li>`"evm_1100"`</li><li>`"evm_1101"`</li><li>`"evm_1329"`</li><li>`"evm_1337"`</li><li>`"evm_1666"`</li><li>`"evm_1672"`</li><li>`"evm_1729"`</li><li>`"evm_2222"`</li><li>`"evm_4200"`</li><li>`"evm_4217"`</li><li>`"evm_4663"`</li><li>`"evm_5000"`</li><li>`"evm_7000"`</li><li>`"evm_7700"`</li><li>`"evm_8453"`</li><li>`"evm_8818"`</li><li>`"evm_8819"`</li><li>`"evm_9745"`</li><li>`"evm_16661"`</li><li>`"evm_17000"`</li><li>`"evm_80001"`</li><li>`"evm_80094"`</li><li>`"evm_42161"`</li><li>`"evm_43113"`</li><li>`"evm_43114"`</li><li>`"evm_57073"`</li><li>`"evm_59144"`</li><li>`"evm_81457"`</li><li>`"evm_421614"`</li><li>`"evm_534352"`</li><li>`"evm_660279"`</li><li>`"evm_747474"`</li><li>`"evm_810180"`</li><li>`"evm_11155111"`</li><li>`"evm_ethereum_mainnet"`</li><li>`"evm_ethereum_goerli"`</li><li>`"evm_optimism_mainnet"`</li><li>`"evm_flare_mainnet"`</li><li>`"evm_flare_testnet"`</li><li>`"evm_rootstock_mainnet"`</li><li>`"evm_bsc_mainnet"`</li><li>`"evm_gnosis_mainnet"`</li><li>`"evm_unichain_mainnet"`</li><li>`"evm_polygon_mainnet"`</li><li>`"evm_monad_mainnet"`</li><li>`"evm_sonic_mainnet"`</li><li>`"evm_manta_pacific_mainnet"`</li><li>`"evm_x_layer_mainnet"`</li><li>`"evm_fantom_mainnet"`</li><li>`"evm_zksync_era_mainnet"`</li><li>`"evm_hyperevm_mainnet"`</li><li>`"evm_conflux_mainnet"`</li><li>`"evm_dymension_mainnet"`</li><li>`"evm_polygon_zkevm_mainnet"`</li><li>`"evm_sei_mainnet"`</li><li>`"evm_hypercore_mainnet"`</li><li>`"evm_aster_mainnet"`</li><li>`"evm_pharos_mainnet"`</li><li>`"evm_reya_mainnet"`</li><li>`"evm_kava_mainnet"`</li><li>`"evm_merlin_mainnet"`</li><li>`"evm_tempo_mainnet"`</li><li>`"evm_robinhood_mainnet"`</li><li>`"evm_mantle_mainnet"`</li><li>`"evm_zeta_mainnet"`</li><li>`"evm_canto_mainnet"`</li><li>`"evm_base_mainnet"`</li><li>`"evm_clink_mainnet"`</li><li>`"evm_clink_testnet"`</li><li>`"evm_plasma_mainnet"`</li><li>`"evm_zero_gravity_mainnet"`</li><li>`"evm_ethereum_holesky"`</li><li>`"evm_polygon_mumbai"`</li><li>`"evm_berachain_mainnet"`</li><li>`"evm_arbitrum_mainnet"`</li><li>`"evm_avalanche_fuji"`</li><li>`"evm_avalanche_chain"`</li><li>`"evm_ink_mainnet"`</li><li>`"evm_linea_mainnet"`</li><li>`"evm_blast_mainnet"`</li><li>`"evm_arbitrum_sepolia"`</li><li>`"evm_scroll_mainnet"`</li><li>`"evm_xai_mainnet"`</li><li>`"evm_katana_mainnet"`</li><li>`"evm_zklink_nova_mainnet"`</li><li>`"evm_ethereum_sepolia"`</li></ul>
        - `amount` union, required — The amount of native token to wrap. Specify one of the following: <ul><li>`value`<li>`max`</ul>
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
      - CreateEvmUnwrapNativeRequest
        - `fee_payer` TransactionFeePayerVault
          - `type` 'vault', required
          - `vault_id` string, uuid, required — The unique identifier of the vault that pays the fee.
        - `type` 'evm_unwrap_native', required — An EVM unwrap native transaction is for unwrapping to the native token.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `use_mev_protected_node` boolean — Use an MEV protected node to send the transaction. By using an MEV protected node, you avoid maximal extractable value (MEV) attacks.
        - `use_secure_node` boolean — Use a secure node to send the transaction. By using a secure node, you avoid maximal extractable value (MEV) attacks.
        - `gas` union — The gas details of the transaction. The details depend on which option you choose:<ul><li>Gas Priority or <li>Custom Gas Request </ul>
          - GasPriorityRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
          - CustomGasRequest
            - `gas_limit` string — Specifies the maximum number of gas units to be used for mining the transaction. If omitted, Fordefi will automatically estimate the required gas and apply that value.
            - `type` 'custom', required
            - `details` union, required — Using the Custom Gas Request option, you specify `gas_limit`, as well as the following gas details: <ul><li>If you choose `legacy` (meaning a chain where gas price can be specified exactly), you must specify only the `price` of a gas unit. <li>If you choose `dynamic` (meaning a chain where gas price can be determined dynamically), you must specify two additional values: <ul><li>`max_priority_fee_per_gas`, the maximum tip amount for mining your transaction <li>`max_fee_per_gas`, the maximum amount you are willing to pay for the fee (ultimately, either you'll pay this amount, or less, depending on the network base fee). </ul></ul> <br> Note that the Legacy gas price setting is allowed on dynamic (EIP-1559) networks as well. <br> You can get information on gas fees for different chains by examining the response to a call to [List Chains](https://documentation.fordefi.com/redoc/#operation/list_chains_api_v1_blockchains_get). More information is provided in [EVM chains and their fee mechanisms](https://docs.fordefi.com/user-guide/manage-transactions/understand-transaction-fees/evm-chains#evm-chains-and-their-fee-mechanisms).
              - …
        - `funder` string, uuid — The unique identifier of the vault that pays the fee for this transaction.
        - `custom_nonce` union — The user-specified nonce for the transaction.<br> If not provided, the transaction's nonce will be automatically determined upon signing. <br> If provided, it must equal the nonce of an existing transaction that has already been signed but not yet mined, on the same vault.<br> Alternatively, it may equal the next nonce of the vault.
          - integer
          - string
        - `chain` union, required — The EVM chain name or ID.
          - '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'
          - 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. <ul><li>1=`ethereum_mainnet`</li><li>5=`ethereum_goerli`</li><li>10=`optimism_mainnet`</li><li>14=`flare_mainnet`</li><li>16=`flare_testnet`</li><li>30=`rootstock_mainnet`</li><li>56=`bsc_mainnet`</li><li>100=`gnosis_mainnet`</li><li>130=`unichain_mainnet`</li><li>137=`polygon_mainnet`</li><li>143=`monad_mainnet`</li><li>146=`sonic_mainnet`</li><li>169=`manta_pacific_mainnet`</li><li>196=`x_layer_mainnet`</li><li>250=`fantom_mainnet`</li><li>324=`zksync_era_mainnet`</li><li>999=`hyperevm_mainnet`</li><li>1030=`conflux_mainnet`</li><li>1100=`dymension_mainnet`</li><li>1101=`polygon_zkevm_mainnet`</li><li>1329=`sei_mainnet`</li><li>1337=`hypercore_mainnet`</li><li>1666=`aster_mainnet`</li><li>1672=`pharos_mainnet`</li><li>1729=`reya_mainnet`</li><li>2222=`kava_mainnet`</li><li>4200=`merlin_mainnet`</li><li>4217=`tempo_mainnet`</li><li>4663=`robinhood_mainnet`</li><li>5000=`mantle_mainnet`</li><li>7000=`zeta_mainnet`</li><li>7700=`canto_mainnet`</li><li>8453=`base_mainnet`</li><li>8818=`clink_mainnet`</li><li>8819=`clink_testnet`</li><li>9745=`plasma_mainnet`</li><li>16661=`zero_gravity_mainnet`</li><li>17000=`ethereum_holesky`</li><li>80001=`polygon_mumbai`</li><li>80094=`berachain_mainnet`</li><li>42161=`arbitrum_mainnet`</li><li>43113=`avalanche_fuji`</li><li>43114=`avalanche_chain`</li><li>57073=`ink_mainnet`</li><li>59144=`linea_mainnet`</li><li>81457=`blast_mainnet`</li><li>421614=`arbitrum_sepolia`</li><li>534352=`scroll_mainnet`</li><li>660279=`xai_mainnet`</li><li>747474=`katana_mainnet`</li><li>810180=`zklink_nova_mainnet`</li><li>11155111=`ethereum_sepolia`</li></ul>
          - string — The unique EVM chain ID. </br>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. <ul><li>`"evm_1"`</li><li>`"evm_5"`</li><li>`"evm_10"`</li><li>`"evm_14"`</li><li>`"evm_16"`</li><li>`"evm_30"`</li><li>`"evm_56"`</li><li>`"evm_100"`</li><li>`"evm_130"`</li><li>`"evm_137"`</li><li>`"evm_143"`</li><li>`"evm_146"`</li><li>`"evm_169"`</li><li>`"evm_196"`</li><li>`"evm_250"`</li><li>`"evm_324"`</li><li>`"evm_999"`</li><li>`"evm_1030"`</li><li>`"evm_1100"`</li><li>`"evm_1101"`</li><li>`"evm_1329"`</li><li>`"evm_1337"`</li><li>`"evm_1666"`</li><li>`"evm_1672"`</li><li>`"evm_1729"`</li><li>`"evm_2222"`</li><li>`"evm_4200"`</li><li>`"evm_4217"`</li><li>`"evm_4663"`</li><li>`"evm_5000"`</li><li>`"evm_7000"`</li><li>`"evm_7700"`</li><li>`"evm_8453"`</li><li>`"evm_8818"`</li><li>`"evm_8819"`</li><li>`"evm_9745"`</li><li>`"evm_16661"`</li><li>`"evm_17000"`</li><li>`"evm_80001"`</li><li>`"evm_80094"`</li><li>`"evm_42161"`</li><li>`"evm_43113"`</li><li>`"evm_43114"`</li><li>`"evm_57073"`</li><li>`"evm_59144"`</li><li>`"evm_81457"`</li><li>`"evm_421614"`</li><li>`"evm_534352"`</li><li>`"evm_660279"`</li><li>`"evm_747474"`</li><li>`"evm_810180"`</li><li>`"evm_11155111"`</li><li>`"evm_ethereum_mainnet"`</li><li>`"evm_ethereum_goerli"`</li><li>`"evm_optimism_mainnet"`</li><li>`"evm_flare_mainnet"`</li><li>`"evm_flare_testnet"`</li><li>`"evm_rootstock_mainnet"`</li><li>`"evm_bsc_mainnet"`</li><li>`"evm_gnosis_mainnet"`</li><li>`"evm_unichain_mainnet"`</li><li>`"evm_polygon_mainnet"`</li><li>`"evm_monad_mainnet"`</li><li>`"evm_sonic_mainnet"`</li><li>`"evm_manta_pacific_mainnet"`</li><li>`"evm_x_layer_mainnet"`</li><li>`"evm_fantom_mainnet"`</li><li>`"evm_zksync_era_mainnet"`</li><li>`"evm_hyperevm_mainnet"`</li><li>`"evm_conflux_mainnet"`</li><li>`"evm_dymension_mainnet"`</li><li>`"evm_polygon_zkevm_mainnet"`</li><li>`"evm_sei_mainnet"`</li><li>`"evm_hypercore_mainnet"`</li><li>`"evm_aster_mainnet"`</li><li>`"evm_pharos_mainnet"`</li><li>`"evm_reya_mainnet"`</li><li>`"evm_kava_mainnet"`</li><li>`"evm_merlin_mainnet"`</li><li>`"evm_tempo_mainnet"`</li><li>`"evm_robinhood_mainnet"`</li><li>`"evm_mantle_mainnet"`</li><li>`"evm_zeta_mainnet"`</li><li>`"evm_canto_mainnet"`</li><li>`"evm_base_mainnet"`</li><li>`"evm_clink_mainnet"`</li><li>`"evm_clink_testnet"`</li><li>`"evm_plasma_mainnet"`</li><li>`"evm_zero_gravity_mainnet"`</li><li>`"evm_ethereum_holesky"`</li><li>`"evm_polygon_mumbai"`</li><li>`"evm_berachain_mainnet"`</li><li>`"evm_arbitrum_mainnet"`</li><li>`"evm_avalanche_fuji"`</li><li>`"evm_avalanche_chain"`</li><li>`"evm_ink_mainnet"`</li><li>`"evm_linea_mainnet"`</li><li>`"evm_blast_mainnet"`</li><li>`"evm_arbitrum_sepolia"`</li><li>`"evm_scroll_mainnet"`</li><li>`"evm_xai_mainnet"`</li><li>`"evm_katana_mainnet"`</li><li>`"evm_zklink_nova_mainnet"`</li><li>`"evm_ethereum_sepolia"`</li></ul>
        - `amount` union, required — The amount of wrapped token to unwrap. Specify one of the following: <ul><li>`value`<li>`max`</ul>
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
  - CreateExchangeTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' — The signer of the transaction. Can be: <ul><li>`initiator`: The creator of the transaction (default).<li>`api_signer`: A service that you run on your own network or cloud environment. </ul>
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'exchange_transaction', required — EXCHANGE transaction type.
    - `details` union, required
      - CreateExchangeExternalWithdrawRequest
        - `type` 'external_withdraw', required
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise.
        - `asset_identifier` ExchangeAssetIdentifierRequest, required
          - `type` 'exchange', required — Asset identifier type.
          - `exchange_type` 'binance' | 'bybit' | 'coinbase_international' | 'coinbase_us' | 'okx' | 'kraken' | 'paxos', required
          - `asset_symbol` string, required — The symbol of the asset on the exchange.
        - `chain` string, required — The chain on which to make the transfer.
        - `to` union, required — The recipient of the transfer.
          - ExchangeTransferExternalRecipientTypeAddress
            - `type` 'address', required — Transfer to external address.
            - `address` string, required — The address of the recipient in plain string.
          - ExchangeTransferExternalRecipientTypeVault
            - `type` 'vault', required — Transfer to an MPC vault or a master account of a different exchange vault.
            - `vault_id` string, uuid, required — The ID of the recipient vault.
          - ExchangeTransferExternalRecipientTypeContact
            - `type` 'contact', required — Transfer to an address book contact.
            - `contact_id` string, uuid, required — The ID of the address book contact.
        - `value` union, required — The number of units of currency to transfer.
          - CreateExchangeExternalWithdrawRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The amount of the transfer.
            - `is_net_amount` boolean — `True` to add fee on top of transfer amount.`False` to include fee in the transfer amount.
          - CreateExchangeTransferRequestMaxAmount
            - `type` 'max', required
        - `memo` string — Transaction memo.
      - CreateExchangeInternalTransferRequest
        - `type` 'internal_transfer', required
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise.
        - `asset_identifier` ExchangeAssetIdentifierRequest, required
          - `type` 'exchange', required — Asset identifier type.
          - `exchange_type` 'binance' | 'bybit' | 'coinbase_international' | 'coinbase_us' | 'okx' | 'kraken' | 'paxos', required
          - `asset_symbol` string, required — The symbol of the asset on the exchange.
        - `to` string, uuid, required — The ID of the recipient vault.
        - `value` union, required — The number of units of currency to transfer.
          - CreateExchangeInternalTransferRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The amount of the transfer.
          - CreateExchangeTransferRequestMaxAmount
            - `type` 'max', required
  - CreateSolanaMessageRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'solana_message', required — Solana message type.
    - `details` SolanaPersonalMessageRequest, required
      - `type` 'personal_message_type', required — Personal message standard.
      - `chain` 'solana_mainnet' | 'solana_devnet' | 'solana_eclipse_mainnet' | 'solana_fogo_mainnet' | 'solana_fogo_testnet', required
      - `raw_data` string, required — Base64 of the message to be signed.
  - CreateSolanaTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'solana_transaction', required — Solana transaction type.
    - `details` union, required
      - CreateSolanaTransferRequest
        - `fee_payer` TransactionFeePayerVault
          - `type` 'vault', required
          - `vault_id` string, uuid, required — The unique identifier of the vault that pays the fee.
        - `fee` union — The fee configuration for the transaction.
          - SolanaCustomFeeRequest
            - `type` 'custom', required
            - `priority_fee` string — The priority fee to use in the transaction (In lamports).
            - `unit_price` string — The unit price to use in the transaction (In microlamports).
          - SolanaPriorityFeeRequest
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
        - `type` 'solana_transfer', required — A Solana transfer transaction is for transferring native currency or a token.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `to` union, required — The recipient of the transfer. Specify either a general address, the ID of another vault, or a contact ID object.
          - SolanaRecipientBase58
            - `type` 'address', required — The type of the recipient.
            - `address` string, required — The address of the recipient.
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
          - RecipientContactId
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `value` union, required — The number of units of currency to transfer.
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
        - `asset_identifier` SolanaAssetIdentifierRequest, required
          - `type` 'solana', required — Solana asset identifier type.
          - `details` union, required
            - SolanaNativeAssetIdentifierRequest
              - …
            - SolanaSplTokenAssetIdentifierRequest
              - …
      - CreateSolanaRawTransactionRequest
        - `type` 'solana_raw_transaction', required — A Solana raw transaction is for any operation.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `fee` union — The fee configuration for the transaction.
          - SolanaCustomFeeRequest
            - `type` 'custom', required
            - `priority_fee` string — The priority fee to use in the transaction (In lamports).
            - `unit_price` string — The unit price to use in the transaction (In microlamports).
          - SolanaPriorityFeeRequest
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
        - `chain` 'solana_mainnet' | 'solana_devnet' | 'solana_eclipse_mainnet' | 'solana_fogo_mainnet' | 'solana_fogo_testnet', required
        - `version` 'legacy' | 'v0', required
        - `instructions` SolanaCompiledInstructionRequest[], required — The instructions of the transaction.
          - `program_index` integer, required — The program index.
          - `data` string, required — The instruction data in Base64 format.
          - `account_indexes` integer[], required — The indexes of the instruction accounts in the transaction accounts list.
        - `accounts` SolanaTransactionAccountRequest[], required — Accounts used in the transaction.
          - `address` string, required — The address of the account.
          - `writable` boolean, required — Indicates if this account is writable in the context of the transaction.
          - `signer` boolean, required — Indicates if this account is a signer of the transaction.
          - `ephemeral_key` string — A 64-byte Solana secret key of the account, encoded in base-64.
        - `address_table_lookups` SolanaMessageAddressTableLookupRequest[], required — Lookup tables of accounts used in the transaction.
          - `account_key` string, required — The address of the lookup table.
          - `writable_indexes` integer[], required — Indexes of writable accounts in the lookup table.
          - `readonly_indexes` integer[], required — Indexes of read-only accounts in the lookup table.
        - `signatures` SolanaTransactionSignaturesRequest[] — Any partial signatures on the transaction.
          - `data` string — Signature on the data, encoded in base64 format.
        - `recent_blockhash` string — The transaction nonce (a recently processed blockhash).
      - CreateSolanaSerializedTransactionMessageRequest
        - `fee` union — The fee configuration for the transaction.
          - SolanaCustomFeeRequest
            - `type` 'custom', required
            - `priority_fee` string — The priority fee to use in the transaction (In lamports).
            - `unit_price` string — The unit price to use in the transaction (In microlamports).
          - SolanaPriorityFeeRequest
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
        - `type` 'solana_serialized_transaction_message', required — A Solana serialized transaction message request.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `chain` 'solana_mainnet' | 'solana_devnet' | 'solana_eclipse_mainnet' | 'solana_fogo_mainnet' | 'solana_fogo_testnet', required
        - `data` string, required — The base64 encoded binary transaction message. Can be either a serialized legacy Message or a serialized MessageV0. The first account in the serialized transaction message must match theaddress of the vault in the request. If the serialized message contains a recent block hash, the server may override it to prevent the transaction from expiring. Additionally, if the transaction does not include a priority fee (ComputeBudget instruction), the server might add it to increase the chances of the transaction landing on chain.
        - `signatures` SolanaTransactionSignaturesRequest[] — List of Base64 encoded partial signatures. Can be omitted if the transaction requires no partial signatures, or if ephemeral_keys are passed instead. If passed, then the size of this array must match the total number of signers in the transaction, and elements in positions corresponding to vault accounts must be `{data: null}`
          - `data` string — Signature on the data, encoded in base64 format.
        - `ephemeral_keys` SolanaSecretKeyRequest[] — A list of 64-byte Solana secret keys, encoded as base64, for any non-vault signer accounts. Can be omitted if the transaction requires no partial signatures, or if signatures are passed instead. If passed, then the size of this array must match the total number of signers in the transaction, and elements in positions corresponding to vault accounts must be `{data: null}`
          - `data` string — A 64-byte Solana secret key of the account, encoded in base-64.
  - CreateStacksTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'stacks_transaction', required — Stacks transaction type.
    - `details` union, required
      - CreateStacksTransferRequest
        - `type` 'stacks_transfer', required — A Stacks transfer transaction. A transaction of this kind is for transferring native currency or a sip10 token.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `fee` union — The fee configuration for the transaction.
          - StacksCustomFeeRequest
            - `type` 'custom', required
            - `total_fee` string, required — The total fee to use in the transaction (In microSTX).
          - StacksPriorityFeeRequest
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
        - `to` union, required
          - StacksRecipientHex
            - `type` 'hex', required — The type of the recipient.
            - `address` string, required — The address of the recipient.
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
          - RecipientContactId
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `value` union, required — The number of units of currency to transfer.
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
        - `asset_identifier` StacksAssetIdentifierRequest, required
          - `type` 'stacks', required — Stacks asset identifier type.
          - `details` union, required
            - StacksNativeAssetIdentifierRequest
              - …
            - StacksSip10AssetIdentifierRequest
              - …
        - `memo` string — The memo to include in the transaction.
      - CreateStacksTransactionSerializedRequest
        - `type` 'stacks_serialized_transaction', required — A serialized Stacks transaction.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `fee` union — The fee configuration for the transaction.
          - StacksCustomFeeRequest
            - `type` 'custom', required
            - `total_fee` string, required — The total fee to use in the transaction (In microSTX).
          - StacksPriorityFeeRequest
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
        - `serialized_transaction` string, required — The serialized transaction to create in hex-encoded format.
        - `chain` 'stacks_mainnet', required
  - CreateStarknetMessageRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'starknet_message', required — Starknet message type.
    - `details` StarknetTypedMessageRequest, required
      - `type` 'typed_message_type', required — EIP-712 message standard.
      - `chain` 'starknet_mainnet', required
      - `raw_data` string, required — The raw data of the message to be signed, provided as a string or hex-encoded.
  - CreateStarknetTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'starknet_transaction', required — Starknet transaction type.
    - `details` union, required
      - CreateStarknetTransferRequest
        - `type` 'starknet_transfer', required — A Starknet transfer transaction. A transaction of this kind is for transferring native currency or an erc20 token.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `to` union, required
          - StarknetRecipientHex
            - `type` 'hex', required — The type of the recipient.
            - `address` string, required — The address of the recipient.
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
          - RecipientContactId
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `value` union, required — The number of units of currency to transfer.
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
        - `asset_identifier` StarknetAssetIdentifierRequest, required
          - `type` 'starknet', required — Starknet asset identifier type.
          - `details` union, required
            - StarknetNativeAssetIdentifierRequest
              - …
            - StarknetErc20AssetIdentifierRequest
              - …
      - CreateStarknetTransactionInvokeRequest
        - `type` 'starknet_contract_call', required — A Starknet transaction with contract call payload.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `chain` 'starknet_mainnet', required
        - `call_data` StarknetCallDataRequest[], required — The call data of the transaction.
          - `to` string, required — The address of the contract to call.
          - `method_name` string, required — The name of the method to call.
          - `method_arguments` string[], required — The arguments of the method to call.
      - CreateStarknetContractDeploymentRequest
        - `type` 'starknet_contract_deployment', required — A Starknet transaction to deploy a contract account.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `chain` 'starknet_mainnet', required
  - CreateStellarMessageRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'stellar_message', required — Stellar message type.
    - `details` StellarMessageRequest, required
      - `chain` 'stellar_mainnet' | 'stellar_testnet', required
      - `raw_data` string, required — The message to be signed, hex-encoded.
  - CreateStellarTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'stellar_transaction', required — Stellar transaction type.
    - `details` union, required
      - CreateStellarTransferRequest
        - `type` 'stellar_transfer', required — A Stellar transfer transaction for transferring native XLM, classic assets, or Soroban tokens.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `claim_status` 'claimable' | 'claimed'
        - `to` union, required — The recipient of the transfer: either an address or a vault ID.
          - StellarRecipientAddress
            - `type` 'address', required — The type of the recipient.
            - `address` string, required — The Stellar account address of the recipient.
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
        - `value` union, required — The number of units to transfer.
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
        - `asset_identifier` StellarAssetIdentifierRequest, required
          - `type` 'stellar', required — Stellar asset identifier type.
          - `details` union, required
            - StellarNativeAssetIdentifierRequest
              - …
            - StellarClassicAssetIdentifierRequest
              - …
            - StellarSorobanAssetIdentifierRequest
              - …
        - `memo` string — Optional memo to include with the transaction.
      - CreateStellarChangeTrustRequest
        - `type` 'stellar_change_trust', required — A Stellar ChangeTrust operation to create a trustline for a classic asset with maximum limit.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `claim_status` 'claimable' | 'claimed'
        - `asset_identifier` StellarAssetIdentifierRequest, required
          - `type` 'stellar', required — Stellar asset identifier type.
          - `details` union, required
            - StellarNativeAssetIdentifierRequest
              - …
            - StellarClassicAssetIdentifierRequest
              - …
            - StellarSorobanAssetIdentifierRequest
              - …
      - CreateStellarRawTransactionRequest
        - `type` 'stellar_raw_transaction', required — A raw Stellar transaction containing arbitrary operations as XDR.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `claim_status` 'claimable' | 'claimed'
        - `chain` 'stellar_mainnet' | 'stellar_testnet', required
        - `xdr_data` string, required — Base64-encoded XDR of the unsigned Stellar transaction.
      - CreateStellarClaimClaimableBalanceRequest
        - `type` 'stellar_claim_claimable_balance', required — Claim claimable balances on Stellar. Auto-creates trustline if needed.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `claim_status` 'claimable' | 'claimed'
        - `source` union, required — The source for resolving which claimable balances to claim.
          - ClaimClaimableBalanceByAssetSource
            - `type` 'by_asset', required — Claim by asset identifier.
            - `asset_identifier` StellarAssetIdentifierRequest, required
              - …
          - ClaimClaimableBalanceByTransactionSource
            - `type` 'by_transaction', required — Claim by Fordefi transaction ID.
            - `transaction_id` string, uuid, required — The Fordefi transaction ID of the incoming transaction containing claimable balances.
  - CreateSuiMessageRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'sui_message', required — Sui message type.
    - `details` SuiPersonalMessageRequest, required
      - `type` 'personal_message_type', required — Personal message standard.
      - `chain` 'sui_mainnet' | 'sui_testnet', required
      - `raw_data` string, required — Base64 of the message to be signed.
  - CreateSuiTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'sui_transaction', required — Sui transaction type.
    - `details` union, required
      - CreateSuiTransferRequest
        - `fee_payer` TransactionFeePayerVault
          - `type` 'vault', required
          - `vault_id` string, uuid, required — The unique identifier of the vault that pays the fee.
        - `type` 'sui_transfer', required — Create a Sui transfer transaction. A transaction of this kind is for transferring native currency or a coin.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `to` union, required
          - SuiRecipientHex
            - `type` 'hex', required — The type of the recipient.
            - `address` string, required — The address of the recipient.
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
          - RecipientContactId
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `gas_config` SuiGasConfig
          - `owner` string — The owner of the gas config. Used for sponsored transactions.
          - `budget` string — The budget of the gas in the transaction (in MIST).
          - `price` string — The price per gas unit (in MIST).
          - `payment` SuiObjectRef[], required — The list of SUI coins used to pay for the gas.
            - `digest` string, required — The digest of the object.
            - `object_id` string, required — The id of the object.
            - `version` string, required — The version of the object.
        - `value` union, required — The number of units of currency to transfer.
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
        - `asset_identifier` SuiAssetIdentifierRequest, required
          - `type` 'sui', required — Sui asset identifier type.
          - `details` union, required
            - SuiNativeAssetIdentifierRequest
              - …
            - SuiCoinAssetIdentifierRequest
              - …
      - CreateSuiProgrammableTransactionBlockRequest
        - `type` 'sui_programmable_transaction_block', required — Create a Sui programmable transaction block transaction. A transaction of this kind is for any operation.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `chain` 'sui_mainnet' | 'sui_testnet', required
        - `gas_config` SuiGasConfig
          - `owner` string — The owner of the gas config. Used for sponsored transactions.
          - `budget` string — The budget of the gas in the transaction (in MIST).
          - `price` string — The price per gas unit (in MIST).
          - `payment` SuiObjectRef[], required — The list of SUI coins used to pay for the gas.
            - `digest` string, required — The digest of the object.
            - `object_id` string, required — The id of the object.
            - `version` string, required — The version of the object.
        - `inputs` SuiInput[], required — The inputs of the transaction.
          - union
            - SuiPureInputArgument
              - …
            - SuiObjectInputArgument
              - …
            - SuiFundsWithdrawalArgument — SIP-58 input that reserves Balance<T> from the sender or sponsor's address-balance accumulator. Paired with `0x2::coin::redeem_funds<T>` to produce a Coin<T>.
              - …
        - `commands` SuiCommand[], required — The commands of the transaction.
          - union
            - SuiTransferObjectsCommand — Transfer objects from one account to another.
              - …
            - SuiSplitCoinsCommand — Split coin into smaller coins.
              - …
            - SuiMergeCoinsCommand — Merge coins into a single coin.
              - …
            - SuiMakeMoveVecCommand — Given n-values of the same type, it constructs a vector.
              - …
            - SuiMoveCallCommand — A call to either an entry or a public Move function.
              - …
            - SuiPublishCommand — Publish a Move module.
              - …
            - SuiUpgradeCommand — Upgrade a Move module.
              - …
      - CreateSuiSerializedTransactionDataRequest
        - `type` 'sui_binary_canonical_serialization', required — A Sui Binary Canonical Serialization (or BCS) of a transaction.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `chain` 'sui_mainnet' | 'sui_testnet', required
        - `data` string, required — The base64 encoded BCS of the transaction.
  - CreateTonMessageRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'ton_message', required — TON message type.
    - `details` TonProofMessageRequest, required
      - `type` 'proof_message_type', required — Proof message standard.
      - `manifest_url` string, required — The manifest_url of the Dapp that the message is for.
      - `chain` 'ton_mainnet' | 'ton_testnet', required
      - `message_to_sign` string, required — The message payload to be signed, encoded in base64.
  - CreateTonTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'ton_transaction', required — TON transaction type.
    - `details` union, required
      - CreateTonTransferRequest
        - `type` 'ton_transfer', required — An TON transfer transaction. A transaction of this kind is for transferring native currency or a jetton.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `to` union, required
          - TonRecipientHex
            - `type` 'hex', required — The type of the recipient.
            - `address` string, required — The address of the recipient in any format.
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
          - RecipientContactId
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `value` union, required — The number of units of currency to transfer.
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
        - `asset_identifier` TonAssetIdentifierRequest, required
          - `type` 'ton', required — TON asset identifier type.
          - `details` union, required
            - TonNativeAssetIdentifierRequest
              - …
            - TonJettonAssetIdentifierRequest
              - …
        - `comment` string — A comment to attach to the transaction.
      - CreateTonSerializedRawTransactionRequest
        - `type` 'ton_raw_transaction', required — An Ton transaction with raw payload.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `chain` 'ton_mainnet' | 'ton_testnet', required
        - `transaction_payload` TonTransactionPayload, required
          - `valid_until` integer — The expiration time of the transaction.
          - `network` 0 | -239 | -3 | -1
          - `messages` TonTransactionMessage[], required — The messages of the transaction.
            - `address` TonAccountRepr, required
              - …
            - `amount` string, required — The amount of nano tons to send.
            - `payload` string — The payload of the message.
            - `state_init` string — The state_init structure contains all the necessary information required to create the initial state of a smart contract.
            - `comment` string — A comment that is attached to the message.
  - CreateTronMessageRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'tron_message', required — TRON message type.
    - `details` union, required
      - TronTypedMessageV1Request
        - `type` 'typed_message_type_v1', required — V1 message type. Signs an opaque plaintext message (TronWeb signMessageV1). Despite the 'typed_message' name, these are personal message signatures, NOT TIP-712 structured typed data.
        - `chain` 'tron_mainnet' | 'tron_shasta', required
        - `raw_data` string, required — The message to be signed, hex-encoded.
      - TronTypedMessageV2Request
        - `type` 'typed_message_type_v2', required — V2 message type. Signs an opaque plaintext message (TronWeb signMessageV2). Despite the 'typed_message' name, these are personal message signatures, NOT TIP-712 structured typed data.
        - `chain` 'tron_mainnet' | 'tron_shasta', required
        - `raw_data` union, required — The message to be signed.
          - TronTypedMessageV2TextRawData
            - `format` 'text', required — Text format for raw data.
            - `raw_data_text` string, required — The message to be signed as plain text.
          - TronTypedMessageV2Base64RawData
            - `format` 'base64', required — Base64 format for raw data.
            - `raw_data_base64` string, required — The message to be signed, base64-encoded.
  - CreateTronTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'tron_transaction', required — TRON transaction type.
    - `details` union, required
      - CreateTronTransferRequest
        - `type` 'tron_transfer', required — A TRON transfer transaction for transferring native currency or tokens.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `to` union, required
          - TronRecipientHex
            - `type` 'hex', required — The type of the recipient.
            - `address` string, required — The address of the recipient.
          - RecipientVaultId
            - `type` 'vault_id', required — The type of the recipient.
            - `vault_id` string, uuid, required — The id of the recipient vault.
          - RecipientContactId
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `value` union, required — The number of units to transfer.
          - CreateRequestExplicitAmount
            - `type` 'value', required
            - `value` string, required — The specific amount to be passed.
          - CreateRequestMaxAmount
            - `type` 'max', required
        - `asset_identifier` TronAssetIdentifierRequest, required
          - `type` 'tron', required — TRON asset identifier type.
          - `details` union, required
            - TronNativeAssetIdentifierRequest
              - …
            - TronTrc20AssetIdentifierRequest
              - …
        - `memo` string — Optional memo to include with the transaction
      - CreateTronSerializedRawTransactionRequest
        - `type` 'tron_serialized_raw_transaction', required — A TRON serialized transaction.
        - `fail_on_prediction_failure` boolean — `True` if the request should fail in case simulation failed, `False` otherwise. <br> In case simulation has failed upon continuation, the expected result of the transaction will be partial and policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule.
        - `skip_prediction` boolean — `True` to create a transaction without prediction, `False` otherwise. <br> In case of skipping simulation, the simulation status will be skipped and the expected result of the transaction will be empty. The policy will be applied on information that can be extracted statically from the transaction only. This might result in falling back to the default policy rule. <br> Note, it is recommended to use the default setting for this field and to turn off `fail_on_prediction_failure` instead - unless you wish to save time by omitting the prediction phase entirely.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `chain` 'tron_mainnet' | 'tron_shasta', required
        - `data` string, required — The hex encoded transaction data. This should be the complete raw transaction protobuf message encoded as hex. The transaction must be properly structured with all required fields including reference block information (ref_block_bytes, ref_block_hash) and expiration time. If the serialized transaction contains an expiration time that is too close to the current time, the server may override it to prevent the transaction from expiring. The transaction should include all contract calls, transfers, or staking operations but should NOT be signed - signing will be handled by Fordefi.
  - CreateUtxoMessageRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'utxo_message', required — Utxo message type.
    - `details` UtxoMessageDetails, required
      - `type` 'ecdsa' | 'bip322_simple', required
      - `sender` UtxoAddress, required
        - `type` 'utxo', required
        - `address` string, required — The UTXO string address.
        - `address_type` 'legacy' | 'p2sh' | 'segwit' | 'taproot' | 'merkleroot', required
        - `chain` UtxoChain, required
          - `chain_type` 'utxo', required — The type of the chain.
          - `unique_id` 'bitcoin_mainnet' | 'bitcoin_testnet' | 'bitcoin_testnet_v4' | 'dogecoin_mainnet' | 'bitcoin_cash_mainnet' | 'pearl_testnet' | 'pearl_mainnet', required
      - `raw_data` string, required — The raw data of the message, encoded in base64
  - CreateUtxoTransactionRequest
    - `vault_id` string, uuid, required — The unique identifier of the vault.
    - `note` string — An optional transaction note.
    - `considered_as_stuck_after_seconds` integer — The number of seconds after signing or pushing the transaction before it is eligible to be considered stuck. If omitted, the chain default is used. This field has no effect on message-only requests.
    - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user'
    - `sign_mode` 'auto' | 'triggered'
    - `dapp_info` DappInfo
      - `url` string, required — The URL of the dapp.
      - `name` string, required — The name of the dapp.
    - `type` 'utxo_transaction', required — UTXO transaction type.
    - `details` union, required — Transaction details.
      - TransactionDetailsUtxoTransferRequest
        - `type` 'utxo_transfer', required — A UTXO transfer transaction.
        - `outputs` UtxoOutputRequest[] — The outputs of the transaction.<br>Must be provided and hold at least one output in case 'send_max_to' is not provided.
          - `to` union, required
            - UtxoOutputToAddressRequest
              - …
            - UtxoOutputToVaultAddressIdRequest
              - …
            - UtxoOutputToVaultIdRequest
              - …
            - UtxoOutputToContactIdRequest
              - …
          - `value` string, required
        - `send_max_to` union — The recipient to which to send the maximum amount of funds available, once other outputs are handled.<br>If no other outputs are provided, this recipient will receive the entire balance of the vault.<br>Either this field or a non-empty outputs field must be provided.
          - UtxoOutputToAddressRequest
            - `type` 'address', required
            - `address` string, required
          - UtxoOutputToVaultAddressIdRequest
            - `type` 'vault_address_id', required
            - `vault_address_id` string, uuid, required
          - UtxoOutputToVaultIdRequest
            - `type` 'vault_id', required
            - `vault_id` string, uuid, required
          - UtxoOutputToContactIdRequest
            - `type` 'contact_id', required — The type of the recipient.
            - `contact_id` string, uuid, required — The id of the address book contact.
        - `fee_per_byte` union — The fee details of the transaction. The details depend on which option you choose:<ul><li>Fee Priority or <li>Custom Fee Request </ul>
          - FeePriorityRequest
            - `type` 'priority', required
            - `priority_level` 'low' | 'medium' | 'high', required
          - CustomFeeRequest
            - `type` 'custom', required
            - `fee_per_byte` string, required — The fee per byte.
        - `push_mode` 'auto' | 'manual' | 'deferred'
        - `memos` string[] — List of memos to include in the transaction, provided as strings or hex-encoded.
      - TransactionDetailsUtxoPsbtRequest
        - `type` 'utxo_partially_signed_bitcoin_transaction', required — A partially signed bitcoin transaction (PSBT).
        - `psbt_raw_data` string, required — Partially signed bitcoin transaction data encoded as a hex string.
        - `auto_finalize` boolean — Whether to finalize the transaction or not.
        - `sender` UtxoAddress
          - `type` 'utxo', required
          - `address` string, required — The UTXO string address.
          - `address_type` 'legacy' | 'p2sh' | 'segwit' | 'taproot' | 'merkleroot', required
          - `chain` UtxoChain, required
            - `chain_type` 'utxo', required — The type of the chain.
            - `unique_id` 'bitcoin_mainnet' | 'bitcoin_testnet' | 'bitcoin_testnet_v4' | 'dogecoin_mainnet' | 'bitcoin_cash_mainnet' | 'pearl_testnet' | 'pearl_mainnet', required
        - `signer` string — The signer on the inputs.
        - `inputs` PsbtInput[] — Describes how to sign each input.
          - `index` integer, required — The input index to sign on.
          - `signer_identity` union, required
            - PsbtSignerIdentityAddress
              - …
            - PsbtSignerIdentityPublicKey
              - …
          - `sighash_types` integer[] — Flags that describe how to sign.
          - `disable_tweak_signer` boolean — Disable tweaking of taproot public key.
        - `push_mode` 'auto' | 'manual' | 'deferred'

## Response `201`

Successful Response

- union
  - AptosMessage
    - `id` string, uuid, required — The unique identifier of the object in the Fordefi platform.
    - `created_at` string, date-time, required — The date and time when the object was created.
    - `modified_at` string, date-time, 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` ManagedTransactionData
      - `created_by` union, required — Represents a reference to a user in the Fordefi platform
        - PersonRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'person', required — The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.
          - `name` string — The name of the user.
          - `email` string, required — The email of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'reset_device_pending_code_generation' | 'reset_device_pending_activation' | 'pending_approval' | 'deleted', required
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_user', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiSignerRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_signer', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'deleted', required — The state of the user.
        - EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - SystemUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'system', required — The type of the user.
          - `name` string, required — The name is Fordefi CARE
      - `aborted_by` union — Represents a reference to a user in the Fordefi platform
        - PersonRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'person', required — The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.
          - `name` string — The name of the user.
          - `email` string, required — The email of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'reset_device_pending_code_generation' | 'reset_device_pending_activation' | 'pending_approval' | 'deleted', required
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_user', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiSignerRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_signer', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'deleted', required — The state of the user.
        - EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - SystemUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'system', required — The type of the user.
          - `name` string, required — The name is Fordefi CARE
      - `finalized_for_signing_by` union — Represents a reference to a user in the Fordefi platform
        - PersonRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'person', required — The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.
          - `name` string — The name of the user.
          - `email` string, required — The email of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'reset_device_pending_code_generation' | 'reset_device_pending_activation' | 'pending_approval' | 'deleted', required
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_user', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiSignerRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_signer', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'deleted', required — The state of the user.
        - EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - SystemUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'system', required — The type of the user.
          - `name` string, required — The name is Fordefi CARE
      - `device_signing_request` ActionSigningRequest — Represents a device sign request for an action in the Foredefi platform
        - `created_by` union, required — Represents a reference to a user in the Fordefi platform
          - PersonRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'person', required — The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.
            - `name` string — The name of the user.
            - `email` string, required — The email of the user.
            - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'reset_device_pending_code_generation' | 'reset_device_pending_activation' | 'pending_approval' | 'deleted', required
            - `role` 'admin' | 'trader' | 'viewer', required
          - ApiUserRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'api_user', required — The type of the user.
            - `name` string, required — The name of the user.
            - `state` 'active' | 'deleted', required — The state of the user.
            - `role` 'admin' | 'trader' | 'viewer', required
          - ApiSignerRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'api_signer', required — The type of the user.
            - `name` string, required — The name of the user.
            - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'deleted', required — The state of the user.
          - EndUserRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'end_user', required — The type of the user.
            - `external_id` string, required — External id of the user.
            - `state` 'active' | 'deleted', required — The state of the user.
          - SystemUserRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'system', required — The type of the user.
            - `name` string, required — The name is Fordefi CARE
        - `signers` ActionSigner[], required — A list of required signers. A signer can be a person or an API Signer.
          - `user` union, required — Represents a reference to a user in the Fordefi platform
            - PersonRef
              - …
            - ApiUserRef
              - …
            - ApiSignerRef
              - …
            - EndUserRef
              - …
            - SystemUserRef
              - …
          - `modified_at` string, date-time, required — When the signer received/signed the action
          - `has_signed` boolean, required — Whether the signer signed the action
      - `approval_request` ApprovalRequest — Represents an approval request for an action in the Fordefi platform
        - `state` 'created' | 'approved' | 'insufficient_approvers' | 'auto_approved' | 'failed', required — Represents the whole approval request state
        - `required_groups` integer, required — The number of required approval groups.
        - `approval_groups` ApprovalRequestGroup[], required — A list of the possible approvers from different groups.
          - `quorum_size` integer, required — The number of approvers required to approve the transaction.
          - `approvers` RequestApprover[], required — A list of the possible approvers.
            - `user` union, required
              - …
            - `modified_at` string, date-time, required — The date and time when this approval was modified.
            - `decision` string — The decision of the approver.
            - `state` 'pending' | 'approved' | 'unauthorized' | 'not_participated', required — Represents an approval state of a single approver
        - `error_message` string — The error message if the request failed.
      - `aml_policy_match` AmlPolicyMatchOutgoing
        - `is_default` boolean, required — `True` if this is the default rule, `False` otherwise.
        - `rule_id` string, uuid, required — The unique identifier of the rule.
        - `rule_name` string, required — The name of the rule.
        - `action_type` 'allow' | 'block' | 'require_approval' | 'skip', required
      - `policy_match` PolicyMatch
        - `is_default` boolean, required — `True` if this is the default rule, `False` otherwise.
        - `rule_id` string, uuid, required — The unique identifier of the rule.
        - `rule_name` string, required — The name of the rule.
        - `action_type` 'allow' | 'block' | 'require_approval', required
      - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user', required
      - `risks` TransactionRisk[], required — The list of risks associated with this transaction.
        - `type` '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', required
        - `severity` 'low' | 'medium' | 'high', required
        - `title` string, required — The title of the risk.
        - `description` string, required — A detailed description of the risk.
      - `error_pushing_to_blockchain_message` string — The translated error message received from the node if it was rejected by it.
      - `original_error_pushing_to_blockchain_message` string — The error message received from the node if it was rejected by it.
      - `vault` VaultRef, required — Represents a reference to a vault in the Fordefi platform
        - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
        - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
        - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
        - `name` string, required — The name of the vault.
        - `address` string — The address of the vault.
        - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
        - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
        - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
        - `end_user` EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
      - `idempotence_id` string, uuid — Optional idempotence ID of a transaction.
      - `has_current_user_vault_permissions` boolean, required — Does current user have permissions to the origin vault according to its vault group permissions.
      - `batch_data` BatchData
        - `batch_id` string, uuid, required — The unique identifier of the batch.
        - `index_in_batch` integer, required — Index of transaction in the batch.
        - `batch_size` integer, required — The number of transactions in the batch.
        - `matched_policies` PolicyMatch[], required — List of policies matched by this message.
          - `is_default` boolean, required — `True` if this is the default rule, `False` otherwise.
          - `rule_id` string, uuid, required — The unique identifier of the rule.
          - `rule_name` string, required — The name of the rule.
          - `action_type` 'allow' | 'block' | 'require_approval', required
      - `push_mode` 'auto' | 'manual' | 'deferred'
      - `last_pushed_at` string, date-time — The last time the transaction was pushed to the node.
      - `sign_mode` 'auto' | 'triggered'
      - `fee_paid_by` FeePaidByVault
        - `type` 'vault', required — The type of fee payer.
        - `vault` VaultRef, required — Represents a reference to a vault in the Fordefi platform
          - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
          - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
          - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
          - `name` string, required — The name of the vault.
          - `address` string — The address of the vault.
          - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
          - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
          - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
          - `end_user` EndUserRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'end_user', required — The type of the user.
            - `external_id` string, required — External id of the user.
            - `state` 'active' | 'deleted', required — The state of the user.
          - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
      - `attested_payload_for_signing` string — JWS attestation for the payload (external signer). Set after finalize-for-signing.
      - `tx_policy_explanation_id` string, uuid — The id of the transaction policy explanation produced for this transaction, if any.
    - `signatures` Signature[], required — The transaction signatures.
      - `data` string, required — Signature on the transaction, encoded in base64 format.
      - `signed_by` union — The user who created this signature, `null` if the signature wasn't created by a Fordefi user.
        - PersonRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'person', required — The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.
          - `name` string — The name of the user.
          - `email` string, required — The email of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'reset_device_pending_code_generation' | 'reset_device_pending_activation' | 'pending_approval' | 'deleted', required
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiSignerRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_signer', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'deleted', required — The state of the user.
        - EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - ApiUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_user', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
          - `role` 'admin' | 'trader' | 'viewer', required
    - `note` string — An optional transaction note.
    - `spam_state` 'unset' | 'manually_set' | 'automatically_set'
    - `direction` 'outgoing' | 'incoming', required
    - `signed_externally` boolean — Whether the transaction was signed by an external user (for example in case of imported vault).
    - `interacted_vaults` VaultRef[], required — The vaults that interacted with the transaction.
      - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
      - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
      - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
      - `name` string, required — The name of the vault.
      - `address` string — The address of the vault.
      - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
      - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
      - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
      - `end_user` EndUserRef
        - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
        - `user_type` 'end_user', required — The type of the user.
        - `external_id` string, required — External id of the user.
        - `state` 'active' | 'deleted', required — The state of the user.
      - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
    - `related_transactions` RelatedTransaction[] — The related transactions.
      - `type` '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', required
      - `hash` string — The hash of the related transaction.
      - `id` string, uuid — The id of the related transaction.
      - `chain` union, required — A blockchain with metadata.
        - EnrichedAptosChain
          - `chain_type` 'aptos', required — The type of the chain.
          - `unique_id` 'aptos_mainnet' | 'aptos_testnet' | 'aptos_movement_mainnet' | 'aptos_movement_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedArchChain
          - `chain_type` 'arch', required — The type of the chain.
          - `unique_id` 'arch_mainnet' | 'arch_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedCantonChain
          - `chain_type` 'canton', required — The type of the chain.
          - `unique_id` 'canton_mainnet' | 'canton_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedCosmosChain
          - `chain_type` 'cosmos', required — The type of the chain.
          - `unique_id` 'cosmos_agoric-3' | 'cosmos_akashnet-2' | 'cosmos_archway-1' | 'cosmos_axelar-dojo-1' | 'cosmos_bbn-1' | 'cosmos_celestia' | 'cosmos_cosmoshub-4' | 'cosmos_dydx-mainnet-1' | 'cosmos_dydx-testnet-4' | 'cosmos_dymension_1100-1' | 'cosmos_injective-1' | 'cosmos_neutron-1' | 'cosmos_nillion-1' | 'cosmos_noble-1' | 'cosmos_osmosis-1' | 'cosmos_provider' | 'cosmos_ssc-1' | 'cosmos_pacific-1' | 'cosmos_stride-1' | 'cosmos_thorchain-1' | 'cosmos_mantra-1', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
          - `base_denom` string, required — The base denom of the chain.
          - `bech32_prefix` 'agoric' | 'akash' | 'archway' | 'axelar' | 'bbn' | 'celestia' | 'cosmos' | 'dydx' | 'dym' | 'inj' | 'neutron' | 'nillion' | 'noble' | 'osmo' | 'saga' | 'sei' | 'stride' | 'thor' | 'mantra', required
        - EnrichedEvmChain
          - `chain_type` 'evm', required — The type of the 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. <ul><li>`arbitrum_mainnet`</li><li>`arbitrum_sepolia`</li><li>`aster_mainnet`</li><li>`avalanche_chain`</li><li>`avalanche_fuji`</li><li>`base_mainnet`</li><li>`berachain_mainnet`</li><li>`blast_mainnet`</li><li>`bsc_mainnet`</li><li>`canto_mainnet`</li><li>`clink_mainnet`</li><li>`clink_testnet`</li><li>`conflux_mainnet`</li><li>`dymension_mainnet`</li><li>`ethereum_goerli`</li><li>`ethereum_holesky`</li><li>`ethereum_mainnet`</li><li>`ethereum_sepolia`</li><li>`fantom_mainnet`</li><li>`flare_mainnet`</li><li>`flare_testnet`</li><li>`gnosis_mainnet`</li><li>`hypercore_mainnet`</li><li>`hyperevm_mainnet`</li><li>`ink_mainnet`</li><li>`kava_mainnet`</li><li>`katana_mainnet`</li><li>`linea_mainnet`</li><li>`optimism_mainnet`</li><li>`pharos_mainnet`</li><li>`plasma_mainnet`</li><li>`manta_pacific_mainnet`</li><li>`mantle_mainnet`</li><li>`merlin_mainnet`</li><li>`monad_mainnet`</li><li>`polygon_mainnet`</li><li>`polygon_mumbai`</li><li>`polygon_zkevm_mainnet`</li><li>`reya_mainnet`</li><li>`robinhood_mainnet`</li><li>`rootstock_mainnet`</li><li>`scroll_mainnet`</li><li>`sei_mainnet`</li><li>`sonic_mainnet`</li><li>`tempo_mainnet`</li><li>`unichain_mainnet`</li><li>`xai_mainnet`</li><li>`x_layer_mainnet`</li><li>`zero_gravity_mainnet`</li><li>`zeta_mainnet`</li><li>`zklink_nova_mainnet`</li><li>`zksync_era_mainnet`</li></ul>
          - `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. <ul><li>1=`ethereum_mainnet`</li><li>5=`ethereum_goerli`</li><li>10=`optimism_mainnet`</li><li>14=`flare_mainnet`</li><li>16=`flare_testnet`</li><li>30=`rootstock_mainnet`</li><li>56=`bsc_mainnet`</li><li>100=`gnosis_mainnet`</li><li>130=`unichain_mainnet`</li><li>137=`polygon_mainnet`</li><li>143=`monad_mainnet`</li><li>146=`sonic_mainnet`</li><li>169=`manta_pacific_mainnet`</li><li>196=`x_layer_mainnet`</li><li>250=`fantom_mainnet`</li><li>324=`zksync_era_mainnet`</li><li>999=`hyperevm_mainnet`</li><li>1030=`conflux_mainnet`</li><li>1100=`dymension_mainnet`</li><li>1101=`polygon_zkevm_mainnet`</li><li>1329=`sei_mainnet`</li><li>1337=`hypercore_mainnet`</li><li>1666=`aster_mainnet`</li><li>1672=`pharos_mainnet`</li><li>1729=`reya_mainnet`</li><li>2222=`kava_mainnet`</li><li>4200=`merlin_mainnet`</li><li>4217=`tempo_mainnet`</li><li>4663=`robinhood_mainnet`</li><li>5000=`mantle_mainnet`</li><li>7000=`zeta_mainnet`</li><li>7700=`canto_mainnet`</li><li>8453=`base_mainnet`</li><li>8818=`clink_mainnet`</li><li>8819=`clink_testnet`</li><li>9745=`plasma_mainnet`</li><li>16661=`zero_gravity_mainnet`</li><li>17000=`ethereum_holesky`</li><li>80001=`polygon_mumbai`</li><li>80094=`berachain_mainnet`</li><li>42161=`arbitrum_mainnet`</li><li>43113=`avalanche_fuji`</li><li>43114=`avalanche_chain`</li><li>57073=`ink_mainnet`</li><li>59144=`linea_mainnet`</li><li>81457=`blast_mainnet`</li><li>421614=`arbitrum_sepolia`</li><li>534352=`scroll_mainnet`</li><li>660279=`xai_mainnet`</li><li>747474=`katana_mainnet`</li><li>810180=`zklink_nova_mainnet`</li><li>11155111=`ethereum_sepolia`</li></ul>
          - `unique_id` string, required — The unique EVM chain ID. </br>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. <ul><li>`"evm_1"`</li><li>`"evm_5"`</li><li>`"evm_10"`</li><li>`"evm_14"`</li><li>`"evm_16"`</li><li>`"evm_30"`</li><li>`"evm_56"`</li><li>`"evm_100"`</li><li>`"evm_130"`</li><li>`"evm_137"`</li><li>`"evm_143"`</li><li>`"evm_146"`</li><li>`"evm_169"`</li><li>`"evm_196"`</li><li>`"evm_250"`</li><li>`"evm_324"`</li><li>`"evm_999"`</li><li>`"evm_1030"`</li><li>`"evm_1100"`</li><li>`"evm_1101"`</li><li>`"evm_1329"`</li><li>`"evm_1337"`</li><li>`"evm_1666"`</li><li>`"evm_1672"`</li><li>`"evm_1729"`</li><li>`"evm_2222"`</li><li>`"evm_4200"`</li><li>`"evm_4217"`</li><li>`"evm_4663"`</li><li>`"evm_5000"`</li><li>`"evm_7000"`</li><li>`"evm_7700"`</li><li>`"evm_8453"`</li><li>`"evm_8818"`</li><li>`"evm_8819"`</li><li>`"evm_9745"`</li><li>`"evm_16661"`</li><li>`"evm_17000"`</li><li>`"evm_80001"`</li><li>`"evm_80094"`</li><li>`"evm_42161"`</li><li>`"evm_43113"`</li><li>`"evm_43114"`</li><li>`"evm_57073"`</li><li>`"evm_59144"`</li><li>`"evm_81457"`</li><li>`"evm_421614"`</li><li>`"evm_534352"`</li><li>`"evm_660279"`</li><li>`"evm_747474"`</li><li>`"evm_810180"`</li><li>`"evm_11155111"`</li><li>`"evm_ethereum_mainnet"`</li><li>`"evm_ethereum_goerli"`</li><li>`"evm_optimism_mainnet"`</li><li>`"evm_flare_mainnet"`</li><li>`"evm_flare_testnet"`</li><li>`"evm_rootstock_mainnet"`</li><li>`"evm_bsc_mainnet"`</li><li>`"evm_gnosis_mainnet"`</li><li>`"evm_unichain_mainnet"`</li><li>`"evm_polygon_mainnet"`</li><li>`"evm_monad_mainnet"`</li><li>`"evm_sonic_mainnet"`</li><li>`"evm_manta_pacific_mainnet"`</li><li>`"evm_x_layer_mainnet"`</li><li>`"evm_fantom_mainnet"`</li><li>`"evm_zksync_era_mainnet"`</li><li>`"evm_hyperevm_mainnet"`</li><li>`"evm_conflux_mainnet"`</li><li>`"evm_dymension_mainnet"`</li><li>`"evm_polygon_zkevm_mainnet"`</li><li>`"evm_sei_mainnet"`</li><li>`"evm_hypercore_mainnet"`</li><li>`"evm_aster_mainnet"`</li><li>`"evm_pharos_mainnet"`</li><li>`"evm_reya_mainnet"`</li><li>`"evm_kava_mainnet"`</li><li>`"evm_merlin_mainnet"`</li><li>`"evm_tempo_mainnet"`</li><li>`"evm_robinhood_mainnet"`</li><li>`"evm_mantle_mainnet"`</li><li>`"evm_zeta_mainnet"`</li><li>`"evm_canto_mainnet"`</li><li>`"evm_base_mainnet"`</li><li>`"evm_clink_mainnet"`</li><li>`"evm_clink_testnet"`</li><li>`"evm_plasma_mainnet"`</li><li>`"evm_zero_gravity_mainnet"`</li><li>`"evm_ethereum_holesky"`</li><li>`"evm_polygon_mumbai"`</li><li>`"evm_berachain_mainnet"`</li><li>`"evm_arbitrum_mainnet"`</li><li>`"evm_avalanche_fuji"`</li><li>`"evm_avalanche_chain"`</li><li>`"evm_ink_mainnet"`</li><li>`"evm_linea_mainnet"`</li><li>`"evm_blast_mainnet"`</li><li>`"evm_arbitrum_sepolia"`</li><li>`"evm_scroll_mainnet"`</li><li>`"evm_xai_mainnet"`</li><li>`"evm_katana_mainnet"`</li><li>`"evm_zklink_nova_mainnet"`</li><li>`"evm_ethereum_sepolia"`</li></ul>
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
          - `gas_type` 'dynamic' | 'legacy', required
          - `supports_secure_node` boolean — `True` if the chain supports secure nodes, `False` otherwise.
          - `supports_mev_protected_node` boolean — `True` if the chain supports MEV protected nodes, `False` otherwise.
          - `rpc_url` string — The URL of the chain's RPC. Exists only for custom chains.
          - `source` 'default' | 'custom', required
          - `supports_7702` boolean — `True` if the chain supports 7702, `False` otherwise.
        - EnrichedExchangeChain
          - `chain_type` 'exchange', required — The type of the chain.
          - `unique_id` 'exchange_binance' | 'exchange_bybit' | 'exchange_coinbase_international' | 'exchange_coinbase_us' | 'exchange_okx' | 'exchange_kraken' | 'exchange_paxos', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedSolanaChain
          - `chain_type` 'solana', required — The type of the chain.
          - `unique_id` 'solana_mainnet' | 'solana_devnet' | 'solana_eclipse_mainnet' | 'solana_fogo_mainnet' | 'solana_fogo_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedStacksChain
          - `chain_type` 'stacks', required — The type of the chain.
          - `unique_id` 'stacks_mainnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedStarknetChain
          - `chain_type` 'starknet', required — The type of the chain.
          - `unique_id` 'starknet_mainnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedStellarChain
          - `chain_type` 'stellar', required — The type of the chain.
          - `unique_id` 'stellar_mainnet' | 'stellar_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedSuiChain
          - `chain_type` 'sui', required — The type of the chain.
          - `unique_id` 'sui_mainnet' | 'sui_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedTonChain
          - `chain_type` 'ton', required — The type of the chain.
          - `unique_id` 'ton_mainnet' | 'ton_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedTronChain
          - `chain_type` 'tron', required — The type of the chain.
          - `unique_id` 'tron_mainnet' | 'tron_shasta', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedUtxoChain
          - `chain_type` 'utxo', required — The type of the chain.
          - `unique_id` 'bitcoin_mainnet' | 'bitcoin_testnet' | 'bitcoin_testnet_v4' | 'dogecoin_mainnet' | 'bitcoin_cash_mainnet' | 'pearl_testnet' | 'pearl_mainnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
      - `explorer_url` string, uri — The URL of the related transaction in a blockchain explorer.
    - `organization_id` string, uuid, required — The organization that the transaction belongs to.
    - `state` 'waiting_for_approval' | 'waiting_for_signing_trigger' | 'approved' | 'finalized_for_signing' | 'signed' | 'sent_to_provider' | 'completed' | 'error_signing' | 'aborted' | 'error_submitting_to_provider' | 'dropped', required
    - `state_changes` NonPushableTransactionStateChange[], required — The state changes of the message.
      - `changed_at` string, date-time, required — The date and time when the state was changed.
      - `reason` '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'
      - `previous_state` 'waiting_for_approval' | 'waiting_for_signing_trigger' | 'approved' | 'finalized_for_signing' | 'signed' | 'sent_to_provider' | 'completed' | 'error_signing' | 'aborted' | 'error_submitting_to_provider' | 'dropped'
      - `new_state` 'waiting_for_approval' | 'waiting_for_signing_trigger' | 'approved' | 'finalized_for_signing' | 'signed' | 'sent_to_provider' | 'completed' | 'error_signing' | 'aborted' | 'error_submitting_to_provider' | 'dropped', required
    - `type` 'aptos_message', required — Aptos message type.
    - `aptos_message_type` 'personal_message_type', required
    - `raw_original_message_to_sign` string, required — The original message that was requested to be signed, encoded in base64.
    - `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.
    - `string_full_message_to_sign` string, required — The full message to be signed.
    - `chain` EnrichedAptosChain, required
      - `chain_type` 'aptos', required — The type of the chain.
      - `unique_id` 'aptos_mainnet' | 'aptos_testnet' | 'aptos_movement_mainnet' | 'aptos_movement_testnet', required
      - `name` string, required — The full blockchain name.
      - `native_currency_symbol` string, required — The native currency symbol.
      - `native_currency_name` string, required — The native currency name.
      - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
        - `transaction_url` string, uri, required
        - `address_url` string, uri, required
        - `root_url` string, uri, required
        - `transaction_format_url` string, uri
        - `address_format_url` string, uri
        - `asset_format_url` string, uri
      - `logo_url` string, uri, required — The logo URL of the chain.
      - `is_testnet` boolean, required — Whether the chain is on a testnet.
      - `is_enabled` boolean, required — Whether the chain is enabled.
    - `sender` EnrichedAptosAddress, required
      - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
        - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
        - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
        - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
        - `name` string, required — The name of the vault.
        - `address` string — The address of the vault.
        - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
        - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
        - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
        - `end_user` EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
      - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
      - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
        - `id` string, uuid, required — The unique identifier of the address book contact in the Fordefi platform.
        - `name` string, required — The name of the contact.
        - `address_ref` union, required
          - AptosAddressBookContactAddressRef
            - `chain_type` 'aptos', required — The type of the chain.
            - `address` string, required — The address on the Aptos chain.
            - `chains` AptosChain[], required — The chains that the contact belongs to.
              - …
          - ArchAddressBookContactAddressRef
            - `chain_type` 'arch', required — The type of the chain.
            - `address` string, required — The address on the Arch chain.
            - `chains` ArchChain[], required — The chains the contact belongs to.
              - …
          - CantonAddressBookContactAddressRef
            - `chain_type` 'canton', required — The type of the chain.
            - `address` string, required — The party id on the Canton chain.
            - `chains` CantonChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - CosmosAddressBookContactAddressRef
            - `chain_type` 'cosmos', required — The type of the chain.
            - `address` string, required — The address on the cosmos chain.
            - `chain` CosmosChain, required
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - EVMAddressBookContactAddressRef
            - `chain_type` 'evm', required — The type of the chain.
            - `address` string, required — The address of the contact.
            - `chains` EvmChain[], required — The chains the contact belongs to.
              - …
          - SolanaAddressBookContactAddressRef
            - `chain_type` 'solana', required — The type of the chain.
            - `address` string, required — The address on the Solana chain.
            - `chains` SolanaChain[], required — The chains the contact belongs to.
              - …
          - StacksAddressBookContactAddressRef
            - `chain_type` 'stacks', required — The type of the chain.
            - `address` string, required — The address on the Stacks chain.
            - `chains` StacksChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - StarknetAddressBookContactAddressRef
            - `chain_type` 'starknet', required — The type of the chain.
            - `address` string, required — The address on the Starknet chain.
            - `chains` StarknetChain[], required — The chains the contact belongs to.
              - …
          - StellarAddressBookContactAddressRef
            - `chain_type` 'stellar', required — The type of the chain.
            - `address` string, required — The address on the Stellar chain.
            - `chains` StellarChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - SuiAddressBookContactAddressRef
            - `chain_type` 'sui', required — The type of the chain.
            - `address` string, required — The address on the Sui chain.
            - `chains` SuiChain[], required — The chains the contact belongs to.
              - …
          - TonAddressBookContactAddressRef
            - `chain_type` 'ton', required — The type of the chain.
            - `address` string, required — The address on the TON chain.
            - `chains` TonChain[], required — The chains the contact belongs to.
              - …
            - `comment` string — Comment is an additional address feature used for identifying a recipient.
          - TronAddressBookContactAddressRef
            - `chain_type` 'tron', required — The type of the chain.
            - `address` string, required — The address on the TRON chain.
            - `chains` TronChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - UtxoAddressBookContactAddressRef
            - `chain_type` 'utxo', required — The type of the chain.
            - `address` string, required — The address on the utxo chain.
            - `chain` UtxoChain, required
              - …
      - `type` 'aptos', required
      - `address` string, required — The Aptos address represented in hex format.
  - AptosTransaction
    - `id` string, uuid, required — The unique identifier of the object in the Fordefi platform.
    - `created_at` string, date-time, required — The date and time when the object was created.
    - `modified_at` string, date-time, 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` ManagedTransactionData
      - `created_by` union, required — Represents a reference to a user in the Fordefi platform
        - PersonRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'person', required — The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.
          - `name` string — The name of the user.
          - `email` string, required — The email of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'reset_device_pending_code_generation' | 'reset_device_pending_activation' | 'pending_approval' | 'deleted', required
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_user', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiSignerRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_signer', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'deleted', required — The state of the user.
        - EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - SystemUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'system', required — The type of the user.
          - `name` string, required — The name is Fordefi CARE
      - `aborted_by` union — Represents a reference to a user in the Fordefi platform
        - PersonRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'person', required — The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.
          - `name` string — The name of the user.
          - `email` string, required — The email of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'reset_device_pending_code_generation' | 'reset_device_pending_activation' | 'pending_approval' | 'deleted', required
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_user', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiSignerRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_signer', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'deleted', required — The state of the user.
        - EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - SystemUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'system', required — The type of the user.
          - `name` string, required — The name is Fordefi CARE
      - `finalized_for_signing_by` union — Represents a reference to a user in the Fordefi platform
        - PersonRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'person', required — The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.
          - `name` string — The name of the user.
          - `email` string, required — The email of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'reset_device_pending_code_generation' | 'reset_device_pending_activation' | 'pending_approval' | 'deleted', required
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_user', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiSignerRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_signer', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'deleted', required — The state of the user.
        - EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - SystemUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'system', required — The type of the user.
          - `name` string, required — The name is Fordefi CARE
      - `device_signing_request` ActionSigningRequest — Represents a device sign request for an action in the Foredefi platform
        - `created_by` union, required — Represents a reference to a user in the Fordefi platform
          - PersonRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'person', required — The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.
            - `name` string — The name of the user.
            - `email` string, required — The email of the user.
            - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'reset_device_pending_code_generation' | 'reset_device_pending_activation' | 'pending_approval' | 'deleted', required
            - `role` 'admin' | 'trader' | 'viewer', required
          - ApiUserRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'api_user', required — The type of the user.
            - `name` string, required — The name of the user.
            - `state` 'active' | 'deleted', required — The state of the user.
            - `role` 'admin' | 'trader' | 'viewer', required
          - ApiSignerRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'api_signer', required — The type of the user.
            - `name` string, required — The name of the user.
            - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'deleted', required — The state of the user.
          - EndUserRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'end_user', required — The type of the user.
            - `external_id` string, required — External id of the user.
            - `state` 'active' | 'deleted', required — The state of the user.
          - SystemUserRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'system', required — The type of the user.
            - `name` string, required — The name is Fordefi CARE
        - `signers` ActionSigner[], required — A list of required signers. A signer can be a person or an API Signer.
          - `user` union, required — Represents a reference to a user in the Fordefi platform
            - PersonRef
              - …
            - ApiUserRef
              - …
            - ApiSignerRef
              - …
            - EndUserRef
              - …
            - SystemUserRef
              - …
          - `modified_at` string, date-time, required — When the signer received/signed the action
          - `has_signed` boolean, required — Whether the signer signed the action
      - `approval_request` ApprovalRequest — Represents an approval request for an action in the Fordefi platform
        - `state` 'created' | 'approved' | 'insufficient_approvers' | 'auto_approved' | 'failed', required — Represents the whole approval request state
        - `required_groups` integer, required — The number of required approval groups.
        - `approval_groups` ApprovalRequestGroup[], required — A list of the possible approvers from different groups.
          - `quorum_size` integer, required — The number of approvers required to approve the transaction.
          - `approvers` RequestApprover[], required — A list of the possible approvers.
            - `user` union, required
              - …
            - `modified_at` string, date-time, required — The date and time when this approval was modified.
            - `decision` string — The decision of the approver.
            - `state` 'pending' | 'approved' | 'unauthorized' | 'not_participated', required — Represents an approval state of a single approver
        - `error_message` string — The error message if the request failed.
      - `aml_policy_match` AmlPolicyMatchOutgoing
        - `is_default` boolean, required — `True` if this is the default rule, `False` otherwise.
        - `rule_id` string, uuid, required — The unique identifier of the rule.
        - `rule_name` string, required — The name of the rule.
        - `action_type` 'allow' | 'block' | 'require_approval' | 'skip', required
      - `policy_match` PolicyMatch
        - `is_default` boolean, required — `True` if this is the default rule, `False` otherwise.
        - `rule_id` string, uuid, required — The unique identifier of the rule.
        - `rule_name` string, required — The name of the rule.
        - `action_type` 'allow' | 'block' | 'require_approval', required
      - `signer_type` 'initiator' | 'api_signer' | 'end_user' | 'multiple_signers' | 'api_user', required
      - `risks` TransactionRisk[], required — The list of risks associated with this transaction.
        - `type` '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', required
        - `severity` 'low' | 'medium' | 'high', required
        - `title` string, required — The title of the risk.
        - `description` string, required — A detailed description of the risk.
      - `error_pushing_to_blockchain_message` string — The translated error message received from the node if it was rejected by it.
      - `original_error_pushing_to_blockchain_message` string — The error message received from the node if it was rejected by it.
      - `vault` VaultRef, required — Represents a reference to a vault in the Fordefi platform
        - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
        - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
        - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
        - `name` string, required — The name of the vault.
        - `address` string — The address of the vault.
        - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
        - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
        - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
        - `end_user` EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
      - `idempotence_id` string, uuid — Optional idempotence ID of a transaction.
      - `has_current_user_vault_permissions` boolean, required — Does current user have permissions to the origin vault according to its vault group permissions.
      - `batch_data` BatchData
        - `batch_id` string, uuid, required — The unique identifier of the batch.
        - `index_in_batch` integer, required — Index of transaction in the batch.
        - `batch_size` integer, required — The number of transactions in the batch.
        - `matched_policies` PolicyMatch[], required — List of policies matched by this message.
          - `is_default` boolean, required — `True` if this is the default rule, `False` otherwise.
          - `rule_id` string, uuid, required — The unique identifier of the rule.
          - `rule_name` string, required — The name of the rule.
          - `action_type` 'allow' | 'block' | 'require_approval', required
      - `push_mode` 'auto' | 'manual' | 'deferred'
      - `last_pushed_at` string, date-time — The last time the transaction was pushed to the node.
      - `sign_mode` 'auto' | 'triggered'
      - `fee_paid_by` FeePaidByVault
        - `type` 'vault', required — The type of fee payer.
        - `vault` VaultRef, required — Represents a reference to a vault in the Fordefi platform
          - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
          - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
          - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
          - `name` string, required — The name of the vault.
          - `address` string — The address of the vault.
          - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
          - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
          - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
          - `end_user` EndUserRef
            - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
            - `user_type` 'end_user', required — The type of the user.
            - `external_id` string, required — External id of the user.
            - `state` 'active' | 'deleted', required — The state of the user.
          - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
      - `attested_payload_for_signing` string — JWS attestation for the payload (external signer). Set after finalize-for-signing.
      - `tx_policy_explanation_id` string, uuid — The id of the transaction policy explanation produced for this transaction, if any.
    - `signatures` Signature[], required — The transaction signatures.
      - `data` string, required — Signature on the transaction, encoded in base64 format.
      - `signed_by` union — The user who created this signature, `null` if the signature wasn't created by a Fordefi user.
        - PersonRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'person', required — The type of user. Can be a person, or (in programmatic scenarios) an API user or API Signer.
          - `name` string — The name of the user.
          - `email` string, required — The email of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'reset_device_pending_code_generation' | 'reset_device_pending_activation' | 'pending_approval' | 'deleted', required
          - `role` 'admin' | 'trader' | 'viewer', required
        - ApiSignerRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_signer', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'onboarding_pending_code_generation' | 'onboarding_pending_activation' | 'deleted', required — The state of the user.
        - EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - ApiUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'api_user', required — The type of the user.
          - `name` string, required — The name of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
          - `role` 'admin' | 'trader' | 'viewer', required
    - `note` string — An optional transaction note.
    - `spam_state` 'unset' | 'manually_set' | 'automatically_set'
    - `direction` 'outgoing' | 'incoming', required
    - `signed_externally` boolean — Whether the transaction was signed by an external user (for example in case of imported vault).
    - `interacted_vaults` VaultRef[], required — The vaults that interacted with the transaction.
      - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
      - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
      - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
      - `name` string, required — The name of the vault.
      - `address` string — The address of the vault.
      - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
      - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
      - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
      - `end_user` EndUserRef
        - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
        - `user_type` 'end_user', required — The type of the user.
        - `external_id` string, required — External id of the user.
        - `state` 'active' | 'deleted', required — The state of the user.
      - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
    - `related_transactions` RelatedTransaction[] — The related transactions.
      - `type` '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', required
      - `hash` string — The hash of the related transaction.
      - `id` string, uuid — The id of the related transaction.
      - `chain` union, required — A blockchain with metadata.
        - EnrichedAptosChain
          - `chain_type` 'aptos', required — The type of the chain.
          - `unique_id` 'aptos_mainnet' | 'aptos_testnet' | 'aptos_movement_mainnet' | 'aptos_movement_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedArchChain
          - `chain_type` 'arch', required — The type of the chain.
          - `unique_id` 'arch_mainnet' | 'arch_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedCantonChain
          - `chain_type` 'canton', required — The type of the chain.
          - `unique_id` 'canton_mainnet' | 'canton_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedCosmosChain
          - `chain_type` 'cosmos', required — The type of the chain.
          - `unique_id` 'cosmos_agoric-3' | 'cosmos_akashnet-2' | 'cosmos_archway-1' | 'cosmos_axelar-dojo-1' | 'cosmos_bbn-1' | 'cosmos_celestia' | 'cosmos_cosmoshub-4' | 'cosmos_dydx-mainnet-1' | 'cosmos_dydx-testnet-4' | 'cosmos_dymension_1100-1' | 'cosmos_injective-1' | 'cosmos_neutron-1' | 'cosmos_nillion-1' | 'cosmos_noble-1' | 'cosmos_osmosis-1' | 'cosmos_provider' | 'cosmos_ssc-1' | 'cosmos_pacific-1' | 'cosmos_stride-1' | 'cosmos_thorchain-1' | 'cosmos_mantra-1', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
          - `base_denom` string, required — The base denom of the chain.
          - `bech32_prefix` 'agoric' | 'akash' | 'archway' | 'axelar' | 'bbn' | 'celestia' | 'cosmos' | 'dydx' | 'dym' | 'inj' | 'neutron' | 'nillion' | 'noble' | 'osmo' | 'saga' | 'sei' | 'stride' | 'thor' | 'mantra', required
        - EnrichedEvmChain
          - `chain_type` 'evm', required — The type of the 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. <ul><li>`arbitrum_mainnet`</li><li>`arbitrum_sepolia`</li><li>`aster_mainnet`</li><li>`avalanche_chain`</li><li>`avalanche_fuji`</li><li>`base_mainnet`</li><li>`berachain_mainnet`</li><li>`blast_mainnet`</li><li>`bsc_mainnet`</li><li>`canto_mainnet`</li><li>`clink_mainnet`</li><li>`clink_testnet`</li><li>`conflux_mainnet`</li><li>`dymension_mainnet`</li><li>`ethereum_goerli`</li><li>`ethereum_holesky`</li><li>`ethereum_mainnet`</li><li>`ethereum_sepolia`</li><li>`fantom_mainnet`</li><li>`flare_mainnet`</li><li>`flare_testnet`</li><li>`gnosis_mainnet`</li><li>`hypercore_mainnet`</li><li>`hyperevm_mainnet`</li><li>`ink_mainnet`</li><li>`kava_mainnet`</li><li>`katana_mainnet`</li><li>`linea_mainnet`</li><li>`optimism_mainnet`</li><li>`pharos_mainnet`</li><li>`plasma_mainnet`</li><li>`manta_pacific_mainnet`</li><li>`mantle_mainnet`</li><li>`merlin_mainnet`</li><li>`monad_mainnet`</li><li>`polygon_mainnet`</li><li>`polygon_mumbai`</li><li>`polygon_zkevm_mainnet`</li><li>`reya_mainnet`</li><li>`robinhood_mainnet`</li><li>`rootstock_mainnet`</li><li>`scroll_mainnet`</li><li>`sei_mainnet`</li><li>`sonic_mainnet`</li><li>`tempo_mainnet`</li><li>`unichain_mainnet`</li><li>`xai_mainnet`</li><li>`x_layer_mainnet`</li><li>`zero_gravity_mainnet`</li><li>`zeta_mainnet`</li><li>`zklink_nova_mainnet`</li><li>`zksync_era_mainnet`</li></ul>
          - `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. <ul><li>1=`ethereum_mainnet`</li><li>5=`ethereum_goerli`</li><li>10=`optimism_mainnet`</li><li>14=`flare_mainnet`</li><li>16=`flare_testnet`</li><li>30=`rootstock_mainnet`</li><li>56=`bsc_mainnet`</li><li>100=`gnosis_mainnet`</li><li>130=`unichain_mainnet`</li><li>137=`polygon_mainnet`</li><li>143=`monad_mainnet`</li><li>146=`sonic_mainnet`</li><li>169=`manta_pacific_mainnet`</li><li>196=`x_layer_mainnet`</li><li>250=`fantom_mainnet`</li><li>324=`zksync_era_mainnet`</li><li>999=`hyperevm_mainnet`</li><li>1030=`conflux_mainnet`</li><li>1100=`dymension_mainnet`</li><li>1101=`polygon_zkevm_mainnet`</li><li>1329=`sei_mainnet`</li><li>1337=`hypercore_mainnet`</li><li>1666=`aster_mainnet`</li><li>1672=`pharos_mainnet`</li><li>1729=`reya_mainnet`</li><li>2222=`kava_mainnet`</li><li>4200=`merlin_mainnet`</li><li>4217=`tempo_mainnet`</li><li>4663=`robinhood_mainnet`</li><li>5000=`mantle_mainnet`</li><li>7000=`zeta_mainnet`</li><li>7700=`canto_mainnet`</li><li>8453=`base_mainnet`</li><li>8818=`clink_mainnet`</li><li>8819=`clink_testnet`</li><li>9745=`plasma_mainnet`</li><li>16661=`zero_gravity_mainnet`</li><li>17000=`ethereum_holesky`</li><li>80001=`polygon_mumbai`</li><li>80094=`berachain_mainnet`</li><li>42161=`arbitrum_mainnet`</li><li>43113=`avalanche_fuji`</li><li>43114=`avalanche_chain`</li><li>57073=`ink_mainnet`</li><li>59144=`linea_mainnet`</li><li>81457=`blast_mainnet`</li><li>421614=`arbitrum_sepolia`</li><li>534352=`scroll_mainnet`</li><li>660279=`xai_mainnet`</li><li>747474=`katana_mainnet`</li><li>810180=`zklink_nova_mainnet`</li><li>11155111=`ethereum_sepolia`</li></ul>
          - `unique_id` string, required — The unique EVM chain ID. </br>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. <ul><li>`"evm_1"`</li><li>`"evm_5"`</li><li>`"evm_10"`</li><li>`"evm_14"`</li><li>`"evm_16"`</li><li>`"evm_30"`</li><li>`"evm_56"`</li><li>`"evm_100"`</li><li>`"evm_130"`</li><li>`"evm_137"`</li><li>`"evm_143"`</li><li>`"evm_146"`</li><li>`"evm_169"`</li><li>`"evm_196"`</li><li>`"evm_250"`</li><li>`"evm_324"`</li><li>`"evm_999"`</li><li>`"evm_1030"`</li><li>`"evm_1100"`</li><li>`"evm_1101"`</li><li>`"evm_1329"`</li><li>`"evm_1337"`</li><li>`"evm_1666"`</li><li>`"evm_1672"`</li><li>`"evm_1729"`</li><li>`"evm_2222"`</li><li>`"evm_4200"`</li><li>`"evm_4217"`</li><li>`"evm_4663"`</li><li>`"evm_5000"`</li><li>`"evm_7000"`</li><li>`"evm_7700"`</li><li>`"evm_8453"`</li><li>`"evm_8818"`</li><li>`"evm_8819"`</li><li>`"evm_9745"`</li><li>`"evm_16661"`</li><li>`"evm_17000"`</li><li>`"evm_80001"`</li><li>`"evm_80094"`</li><li>`"evm_42161"`</li><li>`"evm_43113"`</li><li>`"evm_43114"`</li><li>`"evm_57073"`</li><li>`"evm_59144"`</li><li>`"evm_81457"`</li><li>`"evm_421614"`</li><li>`"evm_534352"`</li><li>`"evm_660279"`</li><li>`"evm_747474"`</li><li>`"evm_810180"`</li><li>`"evm_11155111"`</li><li>`"evm_ethereum_mainnet"`</li><li>`"evm_ethereum_goerli"`</li><li>`"evm_optimism_mainnet"`</li><li>`"evm_flare_mainnet"`</li><li>`"evm_flare_testnet"`</li><li>`"evm_rootstock_mainnet"`</li><li>`"evm_bsc_mainnet"`</li><li>`"evm_gnosis_mainnet"`</li><li>`"evm_unichain_mainnet"`</li><li>`"evm_polygon_mainnet"`</li><li>`"evm_monad_mainnet"`</li><li>`"evm_sonic_mainnet"`</li><li>`"evm_manta_pacific_mainnet"`</li><li>`"evm_x_layer_mainnet"`</li><li>`"evm_fantom_mainnet"`</li><li>`"evm_zksync_era_mainnet"`</li><li>`"evm_hyperevm_mainnet"`</li><li>`"evm_conflux_mainnet"`</li><li>`"evm_dymension_mainnet"`</li><li>`"evm_polygon_zkevm_mainnet"`</li><li>`"evm_sei_mainnet"`</li><li>`"evm_hypercore_mainnet"`</li><li>`"evm_aster_mainnet"`</li><li>`"evm_pharos_mainnet"`</li><li>`"evm_reya_mainnet"`</li><li>`"evm_kava_mainnet"`</li><li>`"evm_merlin_mainnet"`</li><li>`"evm_tempo_mainnet"`</li><li>`"evm_robinhood_mainnet"`</li><li>`"evm_mantle_mainnet"`</li><li>`"evm_zeta_mainnet"`</li><li>`"evm_canto_mainnet"`</li><li>`"evm_base_mainnet"`</li><li>`"evm_clink_mainnet"`</li><li>`"evm_clink_testnet"`</li><li>`"evm_plasma_mainnet"`</li><li>`"evm_zero_gravity_mainnet"`</li><li>`"evm_ethereum_holesky"`</li><li>`"evm_polygon_mumbai"`</li><li>`"evm_berachain_mainnet"`</li><li>`"evm_arbitrum_mainnet"`</li><li>`"evm_avalanche_fuji"`</li><li>`"evm_avalanche_chain"`</li><li>`"evm_ink_mainnet"`</li><li>`"evm_linea_mainnet"`</li><li>`"evm_blast_mainnet"`</li><li>`"evm_arbitrum_sepolia"`</li><li>`"evm_scroll_mainnet"`</li><li>`"evm_xai_mainnet"`</li><li>`"evm_katana_mainnet"`</li><li>`"evm_zklink_nova_mainnet"`</li><li>`"evm_ethereum_sepolia"`</li></ul>
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
          - `gas_type` 'dynamic' | 'legacy', required
          - `supports_secure_node` boolean — `True` if the chain supports secure nodes, `False` otherwise.
          - `supports_mev_protected_node` boolean — `True` if the chain supports MEV protected nodes, `False` otherwise.
          - `rpc_url` string — The URL of the chain's RPC. Exists only for custom chains.
          - `source` 'default' | 'custom', required
          - `supports_7702` boolean — `True` if the chain supports 7702, `False` otherwise.
        - EnrichedExchangeChain
          - `chain_type` 'exchange', required — The type of the chain.
          - `unique_id` 'exchange_binance' | 'exchange_bybit' | 'exchange_coinbase_international' | 'exchange_coinbase_us' | 'exchange_okx' | 'exchange_kraken' | 'exchange_paxos', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedSolanaChain
          - `chain_type` 'solana', required — The type of the chain.
          - `unique_id` 'solana_mainnet' | 'solana_devnet' | 'solana_eclipse_mainnet' | 'solana_fogo_mainnet' | 'solana_fogo_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedStacksChain
          - `chain_type` 'stacks', required — The type of the chain.
          - `unique_id` 'stacks_mainnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedStarknetChain
          - `chain_type` 'starknet', required — The type of the chain.
          - `unique_id` 'starknet_mainnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedStellarChain
          - `chain_type` 'stellar', required — The type of the chain.
          - `unique_id` 'stellar_mainnet' | 'stellar_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedSuiChain
          - `chain_type` 'sui', required — The type of the chain.
          - `unique_id` 'sui_mainnet' | 'sui_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedTonChain
          - `chain_type` 'ton', required — The type of the chain.
          - `unique_id` 'ton_mainnet' | 'ton_testnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedTronChain
          - `chain_type` 'tron', required — The type of the chain.
          - `unique_id` 'tron_mainnet' | 'tron_shasta', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
        - EnrichedUtxoChain
          - `chain_type` 'utxo', required — The type of the chain.
          - `unique_id` 'bitcoin_mainnet' | 'bitcoin_testnet' | 'bitcoin_testnet_v4' | 'dogecoin_mainnet' | 'bitcoin_cash_mainnet' | 'pearl_testnet' | 'pearl_mainnet', required
          - `name` string, required — The full blockchain name.
          - `native_currency_symbol` string, required — The native currency symbol.
          - `native_currency_name` string, required — The native currency name.
          - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
            - `transaction_url` string, uri, required
            - `address_url` string, uri, required
            - `root_url` string, uri, required
            - `transaction_format_url` string, uri
            - `address_format_url` string, uri
            - `asset_format_url` string, uri
          - `logo_url` string, uri, required — The logo URL of the chain.
          - `is_testnet` boolean, required — Whether the chain is on a testnet.
          - `is_enabled` boolean, required — Whether the chain is enabled.
      - `explorer_url` string, uri — The URL of the related transaction in a blockchain explorer.
    - `organization_id` string, uuid, required — The organization that the transaction belongs to.
    - `block` Block
      - `number` integer, required — The block number.
      - `hash` string — The block hash.
      - `mined_at` string, date-time, required — The date and time when this block was mined.
    - `state` 'waiting_for_approval' | 'waiting_for_signing_trigger' | 'approved' | 'finalized_for_signing' | 'signed' | 'pushed_to_blockchain' | 'mined' | 'completed' | 'aborted' | 'error_pushing_to_blockchain' | 'mined_reverted' | 'completed_reverted' | 'error_signing' | 'stuck' | 'dropped' | 'queued' | 'accelerating' | 'canceling' | 'accelerated' | 'cancelled' | 'insufficient_funds', required
    - `state_changes` PushableTransactionStateChange[], required — The state changes of the transaction.
      - `changed_at` string, date-time, required — The date and time when the state was changed.
      - `reason` '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'
      - `previous_state` 'waiting_for_approval' | 'waiting_for_signing_trigger' | 'approved' | 'finalized_for_signing' | 'signed' | 'pushed_to_blockchain' | 'mined' | 'completed' | 'aborted' | 'error_pushing_to_blockchain' | 'mined_reverted' | 'completed_reverted' | 'error_signing' | 'stuck' | 'dropped' | 'queued' | 'accelerating' | 'canceling' | 'accelerated' | 'cancelled' | 'insufficient_funds'
      - `new_state` 'waiting_for_approval' | 'waiting_for_signing_trigger' | 'approved' | 'finalized_for_signing' | 'signed' | 'pushed_to_blockchain' | 'mined' | 'completed' | 'aborted' | 'error_pushing_to_blockchain' | 'mined_reverted' | 'completed_reverted' | 'error_signing' | 'stuck' | 'dropped' | 'queued' | 'accelerating' | 'canceling' | 'accelerated' | 'cancelled' | 'insufficient_funds', required
    - `aml_check` AmlCheck
      - `results` AmlResults
        - `scan_status` 'error' | 'timeout' | 'skipped' | 'completed' | 'unsupported_chain' | 'pending', required
        - `error_message` string — The error message if the scan failed.
        - `scan_results` ChainalysisScanResult
          - `type` 'chainalysis', required — The type of the policy.
          - `alerts` ChainalysisAlert[], required — The list of alerts.
            - `category` Category, required
              - …
            - `risk_rating` 'low' | 'medium' | 'high' | 'severe', required
            - `exposure_type` 'direct' | 'indirect', required
            - `service` string — The name of the service as defined by Chainalysis. If null returns, Chainalysis has not yet identified the service's name.
          - `external_id` string, uuid, required — A unique identifier of the scan.
      - `incoming_aml_check` IncomingAmlCheck
        - `policy_match` AmlPolicyMatchIncoming
          - `is_default` boolean, required — `True` if this is the default rule, `False` otherwise.
          - `rule_id` string, uuid, required — The unique identifier of the rule.
          - `rule_name` string, required — The name of the rule.
          - `action_type` 'allow' | 'freeze' | 'skip', required
        - `users_eligible_to_unfreeze` RequestApprover[] — list of possible approvers
          - `user` union, required
            - PersonRef
              - …
            - ApiUserRef
              - …
          - `modified_at` string, date-time, required — The date and time when this approval was modified.
          - `decision` string — The decision of the approver.
          - `state` 'pending' | 'approved' | 'unauthorized' | 'not_participated', required — Represents an approval state of a single approver
        - `frozen` boolean — Whether the transaction is frozen.
    - `mined_result_status` 'success' | 'missing' | 'potentially_partial'
    - `simulation_status_result` SimulationStatusResult
      - `simulation_status` 'success' | 'failed' | 'reverted' | 'skipped'
      - `details` string, required — Details about transaction reversion if occurred.
    - `type` 'aptos_transaction', required — Aptos transaction type.
    - `aptos_transaction_type_details` union, required — Details of the Aptos transaction based on its type.
      - AptosNativeTransferDetails
        - `type` 'native_transfer', required — A transaction involving the transfer of APT coin from one address to another.
        - `sender` EnrichedAptosAddress, required
          - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
            - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
            - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
            - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
            - `name` string, required — The name of the vault.
            - `address` string — The address of the vault.
            - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
            - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
            - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
            - `end_user` EndUserRef
              - …
            - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
          - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
          - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
            - `id` string, uuid, required — The unique identifier of the address book contact in the Fordefi platform.
            - `name` string, required — The name of the contact.
            - `address_ref` union, required
              - …
          - `type` 'aptos', required
          - `address` string, required — The Aptos address represented in hex format.
        - `recipient` EnrichedAptosAddress, required
          - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
            - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
            - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
            - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
            - `name` string, required — The name of the vault.
            - `address` string — The address of the vault.
            - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
            - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
            - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
            - `end_user` EndUserRef
              - …
            - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
          - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
          - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
            - `id` string, uuid, required — The unique identifier of the address book contact in the Fordefi platform.
            - `name` string, required — The name of the contact.
            - `address_ref` union, required
              - …
          - `type` 'aptos', required
          - `address` string, required — The Aptos address represented in hex format.
        - `is_internal` boolean — Is this transfer an internal transfer between two vaults. None if the transaction is incoming.
      - AptosCoinTransferDetails
        - `type` 'coin_transfer', required — A transaction involving the transfer of non-APT coin from one address to another.
        - `sender` EnrichedAptosAddress, required
          - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
            - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
            - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
            - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
            - `name` string, required — The name of the vault.
            - `address` string — The address of the vault.
            - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
            - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
            - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
            - `end_user` EndUserRef
              - …
            - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
          - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
          - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
            - `id` string, uuid, required — The unique identifier of the address book contact in the Fordefi platform.
            - `name` string, required — The name of the contact.
            - `address_ref` union, required
              - …
          - `type` 'aptos', required
          - `address` string, required — The Aptos address represented in hex format.
        - `recipient` EnrichedAptosAddress, required
          - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
            - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
            - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
            - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
            - `name` string, required — The name of the vault.
            - `address` string — The address of the vault.
            - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
            - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
            - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
            - `end_user` EndUserRef
              - …
            - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
          - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
          - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
            - `id` string, uuid, required — The unique identifier of the address book contact in the Fordefi platform.
            - `name` string, required — The name of the contact.
            - `address_ref` union, required
              - …
          - `type` 'aptos', required
          - `address` string, required — The Aptos address represented in hex format.
        - `is_internal` boolean — Is this transfer an internal transfer between two vaults. None if the transaction is incoming.
      - AptosEntryPointDetails
        - `type` 'entry_point', required — A transaction with an entry point function.
        - `recipient` EnrichedAptosAddress, required
          - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
            - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
            - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
            - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
            - `name` string, required — The name of the vault.
            - `address` string — The address of the vault.
            - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
            - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
            - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
            - `end_user` EndUserRef
              - …
            - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
          - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
          - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
            - `id` string, uuid, required — The unique identifier of the address book contact in the Fordefi platform.
            - `name` string, required — The name of the contact.
            - `address_ref` union, required
              - …
          - `type` 'aptos', required
          - `address` string, required — The Aptos address represented in hex format.
      - AptosScriptDetails
        - `type` 'script', required — A transaction with running a move script.
        - `code` string, required — The code of the script.
    - `chain` EnrichedAptosChain, required
      - `chain_type` 'aptos', required — The type of the chain.
      - `unique_id` 'aptos_mainnet' | 'aptos_testnet' | 'aptos_movement_mainnet' | 'aptos_movement_testnet', required
      - `name` string, required — The full blockchain name.
      - `native_currency_symbol` string, required — The native currency symbol.
      - `native_currency_name` string, required — The native currency name.
      - `blockchain_explorer` BlockchainExplorer — A blockchain explorer entry point.
        - `transaction_url` string, uri, required
        - `address_url` string, uri, required
        - `root_url` string, uri, required
        - `transaction_format_url` string, uri
        - `address_format_url` string, uri
        - `asset_format_url` string, uri
      - `logo_url` string, uri, required — The logo URL of the chain.
      - `is_testnet` boolean, required — Whether the chain is on a testnet.
      - `is_enabled` boolean, required — Whether the chain is enabled.
    - `version` integer — The version of the transaction.
    - `nonce` integer — The nonce of the transaction.
    - `sender` EnrichedAptosAddress, required
      - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
        - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
        - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
        - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
        - `name` string, required — The name of the vault.
        - `address` string — The address of the vault.
        - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
        - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
        - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
        - `end_user` EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
      - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
      - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
        - `id` string, uuid, required — The unique identifier of the address book contact in the Fordefi platform.
        - `name` string, required — The name of the contact.
        - `address_ref` union, required
          - AptosAddressBookContactAddressRef
            - `chain_type` 'aptos', required — The type of the chain.
            - `address` string, required — The address on the Aptos chain.
            - `chains` AptosChain[], required — The chains that the contact belongs to.
              - …
          - ArchAddressBookContactAddressRef
            - `chain_type` 'arch', required — The type of the chain.
            - `address` string, required — The address on the Arch chain.
            - `chains` ArchChain[], required — The chains the contact belongs to.
              - …
          - CantonAddressBookContactAddressRef
            - `chain_type` 'canton', required — The type of the chain.
            - `address` string, required — The party id on the Canton chain.
            - `chains` CantonChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - CosmosAddressBookContactAddressRef
            - `chain_type` 'cosmos', required — The type of the chain.
            - `address` string, required — The address on the cosmos chain.
            - `chain` CosmosChain, required
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - EVMAddressBookContactAddressRef
            - `chain_type` 'evm', required — The type of the chain.
            - `address` string, required — The address of the contact.
            - `chains` EvmChain[], required — The chains the contact belongs to.
              - …
          - SolanaAddressBookContactAddressRef
            - `chain_type` 'solana', required — The type of the chain.
            - `address` string, required — The address on the Solana chain.
            - `chains` SolanaChain[], required — The chains the contact belongs to.
              - …
          - StacksAddressBookContactAddressRef
            - `chain_type` 'stacks', required — The type of the chain.
            - `address` string, required — The address on the Stacks chain.
            - `chains` StacksChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - StarknetAddressBookContactAddressRef
            - `chain_type` 'starknet', required — The type of the chain.
            - `address` string, required — The address on the Starknet chain.
            - `chains` StarknetChain[], required — The chains the contact belongs to.
              - …
          - StellarAddressBookContactAddressRef
            - `chain_type` 'stellar', required — The type of the chain.
            - `address` string, required — The address on the Stellar chain.
            - `chains` StellarChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - SuiAddressBookContactAddressRef
            - `chain_type` 'sui', required — The type of the chain.
            - `address` string, required — The address on the Sui chain.
            - `chains` SuiChain[], required — The chains the contact belongs to.
              - …
          - TonAddressBookContactAddressRef
            - `chain_type` 'ton', required — The type of the chain.
            - `address` string, required — The address on the TON chain.
            - `chains` TonChain[], required — The chains the contact belongs to.
              - …
            - `comment` string — Comment is an additional address feature used for identifying a recipient.
          - TronAddressBookContactAddressRef
            - `chain_type` 'tron', required — The type of the chain.
            - `address` string, required — The address on the TRON chain.
            - `chains` TronChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - UtxoAddressBookContactAddressRef
            - `chain_type` 'utxo', required — The type of the chain.
            - `address` string, required — The address on the utxo chain.
            - `chain` UtxoChain, required
              - …
      - `type` 'aptos', required
      - `address` string, required — The Aptos address represented in hex format.
    - `payload` union, required — The payload of the transaction.
      - AptosEntryFunctionPayload
        - `typed_arguments` string[], required — The typed arguments of the transaction.
        - `arguments` string[], required — The arguments of the transaction.
        - `type` 'entry_point', required
        - `function_id` string, required — The entry function of the transaction.
        - `address` EnrichedAptosAddress, required
          - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
            - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
            - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
            - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
            - `name` string, required — The name of the vault.
            - `address` string — The address of the vault.
            - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
            - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
            - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
            - `end_user` EndUserRef
              - …
            - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
          - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
          - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
            - `id` string, uuid, required — The unique identifier of the address book contact in the Fordefi platform.
            - `name` string, required — The name of the contact.
            - `address_ref` union, required
              - …
          - `type` 'aptos', required
          - `address` string, required — The Aptos address represented in hex format.
        - `module` string, required — The module of the entry function.
        - `function_name` string, required — The name of the entry function.
      - ScriptPayload
        - `typed_arguments` string[], required — The typed arguments of the transaction.
        - `arguments` string[], required — The arguments of the transaction.
        - `type` 'script', required
        - `code` string, required — The script code of the transaction.
    - `hash` string — The hash of the transaction.
    - `gas_submitted` AptosGasData, required
      - `gas_limit` string, required — The gas limit of the transaction.
      - `price` AptosGasPrice, required
        - `priority_level` 'custom' | 'low' | 'medium' | 'high', required
        - `price` string, required — The price per gas unit (in Octa).
        - `fiat_price` Price — Price represents a price in a given FiatCurrency.
          - `price` string, required — The price in the given fiat currency.
          - `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).
          - `is_negative` boolean — Whether the asset's value is negative (e.g. a debt token). price_float holds the absolute value.
          - `fiat_currency` FiatCurrency, required
            - `currency_symbol` 'usd', required — FiatCurrencySymbol
            - `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.
    - `fee_payer` EnrichedAptosAddress
      - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
        - `id` string, uuid, required — The unique identifier of the vault in the Fordefi platform.
        - `vault_group_id` string, uuid — The unique identifier of the vault group this vault belongs to.
        - `vault_group_ids` string[], required — The unique identifiers of the vault groups this vault belongs to.
        - `name` string, required — The name of the vault.
        - `address` string — The address of the vault.
        - `state` 'active' | 'archived' | 'deleted' | 'pending' | 'aborted', required
        - `type` 'aptos' | 'arch' | 'black_box' | 'canton' | 'cosmos' | 'evm' | 'safe' | 'solana' | 'stacks' | 'starknet' | 'stellar' | 'sui' | 'ton' | 'tron' | 'utxo' | 'exchange', required
        - `logo_url` string, uri — The logo of the vault. Supported for exchange and Safe vaults.
        - `end_user` EndUserRef
          - `id` string, uuid, required — The unique identifier of the user in the Fordefi platform.
          - `user_type` 'end_user', required — The type of the user.
          - `external_id` string, required — External id of the user.
          - `state` 'active' | 'deleted', required — The state of the user.
        - `is_external_signer` boolean — Whether the vault uses an externally imported key (external signer).
      - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
      - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
        - `id` string, uuid, required — The unique identifier of the address book contact in the Fordefi platform.
        - `name` string, required — The name of the contact.
        - `address_ref` union, required
          - AptosAddressBookContactAddressRef
            - `chain_type` 'aptos', required — The type of the chain.
            - `address` string, required — The address on the Aptos chain.
            - `chains` AptosChain[], required — The chains that the contact belongs to.
              - …
          - ArchAddressBookContactAddressRef
            - `chain_type` 'arch', required — The type of the chain.
            - `address` string, required — The address on the Arch chain.
            - `chains` ArchChain[], required — The chains the contact belongs to.
              - …
          - CantonAddressBookContactAddressRef
            - `chain_type` 'canton', required — The type of the chain.
            - `address` string, required — The party id on the Canton chain.
            - `chains` CantonChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - CosmosAddressBookContactAddressRef
            - `chain_type` 'cosmos', required — The type of the chain.
            - `address` string, required — The address on the cosmos chain.
            - `chain` CosmosChain, required
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - EVMAddressBookContactAddressRef
            - `chain_type` 'evm', required — The type of the chain.
            - `address` string, required — The address of the contact.
            - `chains` EvmChain[], required — The chains the contact belongs to.
              - …
          - SolanaAddressBookContactAddressRef
            - `chain_type` 'solana', required — The type of the chain.
            - `address` string, required — The address on the Solana chain.
            - `chains` SolanaChain[], required — The chains the contact belongs to.
              - …
          - StacksAddressBookContactAddressRef
            - `chain_type` 'stacks', required — The type of the chain.
            - `address` string, required — The address on the Stacks chain.
            - `chains` StacksChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - StarknetAddressBookContactAddressRef
            - `chain_type` 'starknet', required — The type of the chain.
            - `address` string, required — The address on the Starknet chain.
            - `chains` StarknetChain[], required — The chains the contact belongs to.
              - …
          - StellarAddressBookContactAddressRef
            - `chain_type` 'stellar', required — The type of the chain.
            - `address` string, required — The address on the Stellar chain.
            - `chains` StellarChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - SuiAddressBookContactAddressRef
            - `chain_type` 'sui', required — The type of the chain.
            - `address` string, required — The address on the Sui chain.
            - `chains` SuiChain[], required — The chains the contact belongs to.
              - …
          - TonAddressBookContactAddressRef
            - `chain_type` 'ton', required — The type of the chain.
            - `address` string, required — The address on the TON chain.
            - `chains` TonChain[], required — The chains the contact belongs to.
              - …
            - `comment` string — Comment is an additional address feature used for identifying a recipient.
          - TronAddressBookContactAddressRef
            - `chain_type` 'tron', required — The type of the chain.
            - `address` string, required — The address on the TRON chain.
            - `chains` TronChain[], required — The chains the contact belongs to.
              - …
            - `memo` string — Memo is an additional address feature used for identifying a recipient.
          - UtxoAddressBookContactAddressRef
            - `chain_type` 'utxo', required — The type of the chain.
            - `address` string, required — The address on the utxo chain.
            - `chain` UtxoChain, required
              - …
      - `type` 'aptos', required
      - `address` string, required — The Aptos address represented in hex format.
    - `serialized_signed_transaction` string — The serialized signed transaction.
    - `expected_result` AptosTransactionResult
      - `reversion` AptosReversion, required
        - `state` 'not_reverted' | 'unknown_revert' | 'contract_asserted' | 'insufficient_funds_gas_and_value', required
        - `reason` string — The reason for the reversion (additional information).
      - `fee_statement` AptosFeeStatement, required
        - `execution_gas_units` string, required
        - `io_gas_units` string, required
        - `storage_fee_octas` string, required
        - `storage_fee_refund_octas` string, required
        - `total_charge_gas_units` string, required
        - `total_gas` string, required — The total gas fee of the transaction (in Octa).
        - `priced_asset` PricedAsset, required
          - `type` 'asset_price', required
          - `asset_info` AssetInfo, required
            - `id` string, uuid, required — The asset ID.
            - `asset_identifier` union, required
              - …
            - `name` string, required — The name of the asset.
            - `symbol` string, required — The symbol (ticker) of the asset.
            - `decimals` integer, required
            - `verified` boolean, required — `True` if this asset is verified by Fordefi, `False` otherwise.
            - `metadata_uri` string — The URI of the asset metadata.
            - `is_spam` boolean, required — `True` if this asset is spam, `False` otherwise.
            - `logo_url` string, uri — The URL of the asset logo.
            - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the asset.
            - `issuer_name` string — Best-effort display name of the issuer
          - `price` Price — Price represents a price in a given FiatCurrency.
            - `price` string, required — The price in the given fiat currency.
            - `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).
            - `is_negative` boolean — Whether the asset's value is negative (e.g. a debt token). price_float holds the absolute value.
            - `fiat_currency` FiatCurrency, required
              - …
      - `effects` AptosEffects, required
        - `balance_changes` AptosBalanceChangeEffect[], required
          - `priced_asset` PricedAsset, required
            - `type` 'asset_price', required
            - `asset_info` AssetInfo, required
              - …
            - `price` Price — Price represents a price in a given FiatCurrency.
              - …
          - `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.
          - `address` EnrichedAptosAddress, required
            - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
              - …
            - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
            - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
              - …
            - `type` 'aptos', required
            - `address` string, required — The Aptos address represented in hex format.
        - `transfers` AptosTransferEffect[], required
          - `priced_asset` PricedAsset, required
            - `type` 'asset_price', required
            - `asset_info` AssetInfo, required
              - …
            - `price` Price — Price represents a price in a given FiatCurrency.
              - …
          - `amount` string, required — The amount of the transfer.
          - `from` EnrichedAptosAddress, required
            - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
              - …
            - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
            - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
              - …
            - `type` 'aptos', required
            - `address` string, required — The Aptos address represented in hex format.
          - `to` EnrichedAptosAddress, required
            - `vault` VaultRef — Represents a reference to a vault in the Fordefi platform
              - …
            - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the address.
            - `contact` ContactRef — Represents a reference to an address book contact in the Fordefi platform.
              - …
            - `type` 'aptos', required
            - `address` string, required — The Aptos address represented in hex format.
      - `raw_result` string — The raw result of the transaction.
    - `mined_result` AptosTransactionResult
      - `reversion` AptosReversion, required
        - `state` 'not_reverted' | 'unknown_revert' | 'contract_asserted' | 'insufficient_funds_gas_and_value', required
        - `reason` string — The reason for the reversion (additional information).
      - `fee_statement` AptosFeeStatement, required
        - `execution_gas_units` string, required
        - `io_gas_units` string, required
        - `storage_fee_octas` string, required
        - `storage_fee_refund_octas` string, required
        - `total_charge_gas_units` string, required
        - `total_gas` string, required — The total gas fee of the transaction (in Octa).
        - `priced_asset` PricedAsset, required
          - `type` 'asset_price', required
          - `asset_info` AssetInfo, required
            - `id` string, uuid, required — The asset ID.
            - `asset_identifier` union, required
              - …
            - `name` string, required — The name of the asset.
            - `symbol` string, required — The symbol (ticker) of the asset.
            - `decimals` integer, required
            - `verified` boolean, required — `True` if this asset is verified by Fordefi, `False` otherwise.
            - `metadata_uri` string — The URI of the asset metadata.
            - `is_spam` boolean, required — `True` if this asset is spam, `False` otherwise.
            - `logo_url` string, uri — The URL of the asset logo.
            - `explorer_url` string, uri — The URL of a blockchain explorer that provides real-time information about the asset.
            - `issuer_name` string — Best-effort display name of the issuer
          - `price` Price — Price represents a price in a given FiatCurrency.
            - `price` string, required — The price in the given fiat currency.
            - `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).
            - `is_negative` boolean — Whether the asset's value is negative (e.g. a debt token). price_float holds the absolute value.
            - `fiat_currency` FiatCurrency, required
              - …
      - `effects` AptosEffects, required
        - `balance_changes` AptosBalanceChangeEffect[], required
          - `priced_asset` PricedAsset, required
            - `type` 'asset_price', required
            - `asset_info` AssetInfo, required
              - …
            - `price` Price — Price represents a price in a given FiatCurrency.
              - …
          - `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.
          - `address` EnrichedAptosAddress, required
- … truncated; see the full OpenAPI document linked below

## Other responses

- `400` — Bad Request
- `401` — Unauthorized User
- `403` — Forbidden User
- `408` — Request Timeout
- `422` — Validation Error
- `429` — Rate Limit Exceeded
- `500` — Unexpected Error

---

[API](https://skmtc.net/fordefi/apis/fordefi-api.md) · [All operations](https://skmtc.net/fordefi/apis/fordefi-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/fordefi/fordefi-api/versions/c4c28d233105/schema)
