---
title: "ReplaceTransaction"
method: POST
path: "/v2/vaults/{vault_id}/transactions/{transaction_id}:replace"
tags: ["Transactions"]
---

# ReplaceTransaction

`POST /v2/vaults/{vault_id}/transactions/{transaction_id}:replace`

Creates a new transaction that replaces an existing signed transaction in the system which has not been mined yet.

Only works for blockchains that support replacement of signed transactions, e.g.
- Ethereum - which has nonce management.
- BTC - which has RBF (Replace-By-Fee) and CPFP (Child-Pays-For-Parent) mechanisms.

Some blockchains do not support transaction replacement, e.g. TRON - which is based on
transaction expiration time - for these cases, the transaction will be either mined or
expired after the configured expiration time.

If the transaction has not been signed yet, and you wish to cancel it, use
[CancelTransaction](#tag/Transactions/operation/Transactions_CancelTransaction)
instead.

## Path parameters

- `vault_id` string, required
- `transaction_id` string, required

## Request body

- TransactionsReplaceTransactionBody
  - `type` 'CANCEL' | 'ACCELERATE', required — The type of the replacement. - CANCEL: Cancel the transaction. - ACCELERATE: Accelerate the transaction.
  - `designatedSigners` string[] — If the transaction is designated to be signed by a specific signer, this field should be set. Format: `users/{email}` or `users/{id}` Example: `["users/name@example.com"]` or `["users/a3e4f5"]`
  - `note` string — The note to be added to the replacement transaction. This note will be visible to all vault members.
  - `expireTime` string, date-time — The expiration time of the replacement transaction. Format: `2023-08-29T18:04:00Z`
  - `includeReferencedResources` boolean — Include referenced resources in the response.

## Response `200`

A successful response.

- V2ReplaceTransactionResponse
  - `transaction` V2Transaction
    - `name` string — The resource name of the transaction. Format: `vaults/{vault_id}/transactions/{transaction_id}`.
    - `type` 'TRANSACTION' | 'MESSAGE'
    - `subType` 'NATIVE_TRANSFER' | 'TOKEN_TRANSFER' | 'NON_FUNGIBLE_TOKEN_TRANSFER' | 'TOKEN_APPROVAL' | 'PERSONAL_SIGN' | 'SIGN_TYPED_DATA' | 'EVM_ACCOUNT_DELEGATION' | 'CONTRACT_CALL' | 'NATIVE_MULTI_TRANSFER' | 'NON_FUNGIBLE_TOKEN_APPROVAL' | 'CONNECTION_TRANSFER' | 'BATCH_TRANSFER' | 'TOKEN_MINT' | 'TOKEN_BURN' | 'PROGRAM_CALL' | 'CONTRACT_DEPLOYMENT' | 'TON_PROOF' | 'TON_SIGN_DATA' | 'SOLANA_SIGN_MESSAGE' | 'GENERIC_TRANSACTION' | 'CHANGE_TRUST' | 'CANTON_TOPOLOGY_TRANSACTION' | 'CANTON_TRANSFER_AUTO_APPROVAL' | 'CANTON_ACCEPT_TRANSFER_OFFER' | 'SUBMITTING_TRANSACTION' | 'BTC_PSBT' | 'BTC_TRANSFER' | 'BTC_SIGN_MESSAGE' | 'SHIELD' | 'UNSHIELD' | 'ALEO_CONSOLIDATE'
    - `state` 'AWAITING_APPROVAL' | 'AWAITING_AML_POLICY_CHECK' | 'DECLINED_BY_AML_POLICY' | 'AWAITING_POLICY_CHECK' | 'AWAITING_SIGNATURE' | 'SIGNED' | 'AWAITING_PUBLISH' | 'PUBLISHED' | 'MINED' | 'MINED_FAILED' | 'FAILED' | 'DECLINED' | 'REPLACED' | 'CANCELED' | 'DROPPED' | 'CONFIRMED' | 'EXPIRED' — The state of the transaction. - AWAITING_APPROVAL: Transaction requires approving votes. - AWAITING_AML_POLICY_CHECK: The transaction is waiting for the AML policy check to be completed. Relevant only for outgoing transactions. - DECLINED_BY_AML_POLICY: Transaction was declined by the AML policy Relevant only for outgoing transactions. - AWAITING_POLICY_CHECK: Transaction is waiting for the policy check to be completed. - AWAITING_SIGNATURE: Transaction is approved and ready to be signed. - SIGNED: Transaction is signed but not yet published. - AWAITING_PUBLISH: Transaction has been sent to the publishing queue. - PUBLISHED: Transaction has been published to the blockchain's mem-pool. - MINED: Transaction has been included in a block successfully. - MINED_FAILED: Transaction has entered a block but in a failed state (e.g. a failed smart contract call). - FAILED: Transaction has entered a block but in a failed state and was confirmed as such by multiple blocks - DECLINED: Transaction was declined by a policy check. - REPLACED: Transaction was replaced by a new transaction (same nonce or RBF). - CANCELED: Transaction was canceled by its initiator or by an admin. - DROPPED: Transaction was dropped by the network without being included in a block. - CONFIRMED: Transaction has been confirmed by multiple blocks in the blockchain. - EXPIRED: Transaction was expired after a certain amount of time.
    - `direction` 'INCOMING' | 'OUTGOING'
    - `note` string — A note to attach to the transaction. This note is visible to all vault members.
    - `network` string — The blockchain network on which the transaction was sent. Not available for connection transactions (e.g., Exchanges) Format: `networks/{network_id}`
    - `hash` string — For on-chain transactions, the hash of the transaction.
    - `blockNumber` string — For on-chain transactions, the block number of the transaction if it was mined.
    - `signingSession` string — Available when the transaction has been prepared for signing / signed.
    - `request` V2TransactionRequest
      - `name` string — The resource name of the transaction request. Format: `vaults/{vault_id}/transactionRequests/{transaction_request_id}`.
      - `externalId` string — A client-provided identifier for the transaction. Unique per vault. Can be used to correlate the transaction with an entity in an external system.
      - `initiator` string — The initiator of the transaction. Format: `users/{user}`
      - `sourceWallet` string — If the transaction was initiated through a wallet, the wallet will be listed here.
      - `cancelTime` string, date-time — The timestamp when the transaction was canceled.
      - `signTime` string, date-time — The timestamp when the transaction was signed.
      - `failTime` string, date-time — The timestamp when the transaction failed.
      - `declineTime` string, date-time — The timestamp when the transaction was declined.
      - `publishTime` string, date-time — The timestamp when the transaction was published.
      - `dropTime` string, date-time — The timestamp when the transaction was dropped.
      - `expireTime` string, date-time — The timestamp when the transaction expires.
      - `approveTime` string, date-time — The timestamp when the transaction was approved.
      - `publish` boolean — Whether the transaction should be automatically published by utila.
      - `signingSessions` string[] — The signing sessions that were used to sign the transaction.
      - `blockingTransaction` string — A transaction that is blocking this transaction from being signed. For example, a transaction from the same wallet and blockchain that has acquired a nonce but is not yet mined. Included only when `FULL` view is requested.
      - `walletconnectSession` string — The wallet connect session that was used to sign the transaction.
      - `transactionBundle` string — The transaction bundle that this transaction belongs to.
      - `dappInfo` TransactionRequestDappInfo — Details of the dApp - reported from the transaction initiator, as this cannot be validated by Utila.
        - `url` string — The URL of the dApp.
      - `origin` 'WALLET_CONNECT' | 'EXTENSION' — - WALLET_CONNECT: Transaction received via WalletConnect connection. - EXTENSION: Transaction received via Extension - can not be validated by Utila.
    - `amlDetails` TransactionAMLDetails
      - `screeningState` 'SKIPPED' | 'PENDING' | 'FAILED' | 'READY' — The state of the AML report. - SKIPPED: No AML report was requested for the transaction. - PENDING: The AML report is still being processed by the provider. - FAILED: The AML report was not generated due to an error. - READY: The AML report was successfully generated.
      - `screeningPolicyResult` 'DENY' | 'ALLOW' | 'ALERT'
      - `resolved` boolean — Relevant only if transaction assets were freezed by an AML provider. (i.e., screening_policy_result is DENY).
    - `gasStationOrder` string
    - `transfers` TransactionTransfer[] — If there one or more transfers in the transaction, they will be listed here.
      - `sourceAddress` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `destinationAddress` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `amount` string — Amount of the transfer.
      - `asset` string — Asset name.
      - `miningPrice` V2ConvertedValue — A message representing a converted value.
        - `amount` string — The amount in USD.
        - `currencyCode` string — The currency code of the amount. Always USD.
      - `note` string — An optional note to attach to the specific transfer (possible for batch transfers).
    - `tokenAllowances` TransactionTokenAllowance[] — If there one or more token allowances in the transaction, they will be listed here.
      - `approverAddress` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `spenderAddress` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `asset` string — The asset to approve.
      - `amount` string — The amount to approve (allowance) in asset units. Example: `1.1`.
      - `miningPrice` V2ConvertedValue — A message representing a converted value.
        - `amount` string — The amount in USD.
        - `currencyCode` string — The currency code of the amount. Always USD.
    - `designatedSigners` string[] — If the transaction is designated to be signed by a specific signer, this field should be set. Format: `users/{email}` or `users/{id}` Example: `["users/name@example.com"]` or `["users/a3e4f5"]`
    - `evmTransaction` V2TransactionEVMTransaction
      - `fromAddress` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `toAddress` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `value` string — The amount to transfer in wei.
      - `data` string — Hex encoded transaction data. Example: `0xda82fb4c00000a` or `da82fb4c00000a`.
      - `fee` V2EVMTransactionGas
        - `gasLimit` string, int64 — The amount of gas to use for the transaction.
        - `gasUsed` string — The amount of gas used by the transaction.
        - `gasPrice` string — A `0x`-prefixed hex string representing the gas price of the transaction. Used for legacy transactions (non EIP-1559).
        - `maxPriorityFeePerGas` string — A `0x`-prefixed hex string representing the maximum prioriy fee per gas unit the transaction can pay. Used for dynamic transactions (EIP-1559).
        - `maxFeePerGas` string — A `0x`-prefixed hex string representing the maximum fee per gas unit the transaction can pay. Used for dynamic transactions (EIP-1559).
      - `authorizationDetails` V2TransactionEVMTransactionAuthorizationDetails
        - `authorizationList` V2TransactionEVMTransactionAuthorization[] — The list of authorizations.
          - `signer` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `contractAddress` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `nonce` string, int64 — The nonce of the account for the delegation.
          - `chainId` string — The chain ID of the delegation.
          - `signature` string, byte — The signature of the delegation.
      - `signature` string, byte — ECDSA signature (65 bytes) of the transaction. Available when the transaction has been signed. Encoded in standard EVM format: - Bytes [0-31]: R component (32 bytes, big-endian) - Bytes [32-63]: S component (32 bytes, big-endian) - Byte [64]: V component (recovery identifier)
      - `providedNonce` string — The nonce value explicitly provided by the user in the transaction request.
      - `nonce` string — The effective nonce value assigned to the transaction.
    - `evmMessage` TransactionEVMMessage
      - `type` 'PERSONAL_SIGN' | 'SIGN_TYPED_DATA_V4' — - PERSONAL_SIGN: A simple personal sign message. - SIGN_TYPED_DATA_V4: A structured message as defined by EIP-712. See https://eips.ethereum.org/EIPS/eip-712 for more information.
      - `message` string — The payload of the message as a plain UTF-8 string.
      - `signature` string, byte — ECDSA signature (65 bytes) of the message.
    - `evmAccountDelegation` V2TransactionEVMAccountDelegation
      - `signerAddress` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `contractAddress` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `chainId` string — The chain ID of the DELEGATION.
      - `nonce` string, int64 — The nonce of the account for the delegation.
      - `signature` string, byte — ECDSA signature (65 bytes) of the delegation message.
      - `offsetNonce` boolean — Whether the selection nonce strategy is to offset the signer nonce by one. This is used usually for self delegation
      - `providedNonce` string, int64 — The nonce provided by the user.
    - `tronTransaction` V2TransactionTronTransaction
      - `triggerSmartContract` V2TransactionTronTransactionTriggerSmartContract
        - `ownerAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `contractAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `callValue` string, int64 — The amount of SUN passed into the contract (1 TRX = 1,000,000 SUN). Example: `500000`.
        - `data` string — Hex encoded transaction data. This field will be returned only in FULL view. Example: `0xa9059cbb0000000000000000000000002ed5dd8a98aea00ae32517742ea5289761b2710e0000000000000000000000000000000000000000000000000000000ba43b7400`.
      - `freezeBalanceV2` V2TransactionTronTransactionFreezeBalanceV2
        - `ownerAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `amount` string — Amount of TRX to be staked, in SUN. Example: `1500000`.
        - `resource` 'BANDWIDTH' | 'ENERGY'
        - `asset` string — The asset that is being staked. Example: `assets/native.tron-mainnet`.
      - `unfreezeBalanceV2` V2TransactionTronTransactionUnfreezeBalanceV2
        - `ownerAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `amount` string — Amount of TRX to be unstaked, in SUN. Example: `1500000`.
        - `resource` 'BANDWIDTH' | 'ENERGY'
        - `asset` string — The asset that is being unstaked. Example: `assets/native.tron-mainnet`.
      - `withdrawExpireUnfreeze` V2TransactionTronTransactionWithdrawExpireUnfreeze
        - `ownerAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `delegateResource` V2TransactionTronTransactionDelegateResource
        - `ownerAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `resource` 'BANDWIDTH' | 'ENERGY'
        - `amount` string — The amount of the resource to delegate, in SUN. Example: `1500000`.
        - `asset` string — The asset that is being delegated. Example: `assets/native.tron-mainnet`.
        - `receiverAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `lock` boolean — Whether to lock the delegation. Default: false.
        - `lockPeriod` string — The period to lock the delegation, in block numbers, 1 block ≈ 3 seconds. Example: `1000`.
      - `undelegateResource` V2TransactionTronTransactionUnDelegateResource
        - `ownerAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `resource` 'BANDWIDTH' | 'ENERGY'
        - `amount` string — The amount of the delegated resource to undelegate, in SUN. Example: `1500000`.
        - `asset` string — The asset that is being undelegated. Example: `assets/native.tron-mainnet`.
        - `receiverAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `cancelAllUnfreezeV2` V2TransactionTronTransactionCancelAllUnfreezeV2
        - `ownerAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `voteWitness` V2TransactionTronTransactionVoteWitness
        - `ownerAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `votes` V2TransactionTronTransactionVoteWitnessVote[], required — The votes to cast. Max 30 votes. Example: `[{"vote_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g", "vote_count": "1000"}]`
          - `voteAddress` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `voteCount` string — Example: `1000`.
      - `withdrawBalance` V2TransactionTronTransactionWithdrawBalance
        - `ownerAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `transferContract` TronTransactionTransferContract
        - `ownerAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `toAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `amount` string — Amount of TRX to transfer, in SUN (1 TRX = 1,000,000 SUN). Example: `1500000`.
      - `fee` V2TronTransactionFee
        - `usedSun` string — The amount of sun used by the transaction.
        - `convertedValue` V2ConvertedValue — A message representing a converted value.
          - `amount` string — The amount in USD.
          - `currencyCode` string — The currency code of the amount. Always USD.
        - `bandwidth` V2TronResourceFee — Resource-level fee breakdown for a Tron resource (bandwidth or energy).
          - `consumed` string — The amount of the resource consumed.
          - `burned` string — The amount of TRX burned for this resource.
          - `convertedBurned` V2ConvertedValue — A message representing a converted value.
            - `amount` string — The amount in USD.
            - `currencyCode` string — The currency code of the amount. Always USD.
        - `energy` V2TronResourceFee — Resource-level fee breakdown for a Tron resource (bandwidth or energy).
          - `consumed` string — The amount of the resource consumed.
          - `burned` string — The amount of TRX burned for this resource.
          - `convertedBurned` V2ConvertedValue — A message representing a converted value.
            - `amount` string — The amount in USD.
            - `currencyCode` string — The currency code of the amount. Always USD.
        - `accountActivationFee` V2TronAccountActivationFee
          - `fee` string — The activation fee in SUN.
          - `convertedFee` V2ConvertedValue — A message representing a converted value.
            - `amount` string — The amount in USD.
            - `currencyCode` string — The currency code of the amount. Always USD.
      - `signature` string, byte — ECDSA signature (65 bytes) of the transaction. Available when the transaction has been signed. Encoded in standard TRON format: - Bytes [0-31]: R component (32 bytes, big-endian) - Bytes [32-63]: S component (32 bytes, big-endian) - Byte [64]: V component (recovery identifier)
    - `btcTransaction` TransactionBTCTransaction
      - `inputs` BTCTransactionUTXOIn[] — Transaction inputs.
        - `address` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `amount` string — Amount in asset unit (BTC).
        - `signingSession` string — The signing session which was used to sign the input. Available when the transaction has been prepared for signing / signed. Deprecated: Use request.signing_sessions instead.
        - `userSelected` boolean — Whether this input was explicitly selected by the user. When false, the input was automatically chosen by the coin-selection algorithm.
      - `outputs` BTCTransactionUTXOOut[] — Transaction outputs.
        - `address` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `amount` string — Amount in asset unit (BTC).
        - `change` boolean — True when this output is the change output.
        - `changeUserSelected` boolean — True when the change address was supplied by the user; false when auto-generated. Only meaningful when `change` is true.
      - `fee` string — Transaction fee in asset unit (BTC).
      - `asset` string — Asset name.
    - `btcPsbt` V2TransactionBTCPSBT — Details of a signed PSBT (Partially Signed Bitcoin Transaction). Returned when a PSBT signing request reaches the SIGNED state. The signed PSBT can be used by the dApp to finalize and broadcast.
      - `signedPsbt` string, byte — The signed PSBT data, encoded in base64 format per BIP-174. Only populated after the transaction reaches the SIGNED state. Contains partial signatures that the dApp can use to finalize and broadcast.
      - `inputs` BTCTransactionUTXOIn[] — The PSBT inputs (for display in approval UI). Reuses the existing BTCTransaction.UTXOIn type for consistency.
        - `address` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `amount` string — Amount in asset unit (BTC).
        - `signingSession` string — The signing session which was used to sign the input. Available when the transaction has been prepared for signing / signed. Deprecated: Use request.signing_sessions instead.
        - `userSelected` boolean — Whether this input was explicitly selected by the user. When false, the input was automatically chosen by the coin-selection algorithm.
      - `outputs` BTCTransactionUTXOOut[] — The PSBT outputs (for display in approval UI). Reuses the existing BTCTransaction.UTXOOut type for consistency.
        - `address` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `amount` string — Amount in asset unit (BTC).
        - `change` boolean — True when this output is the change output.
        - `changeUserSelected` boolean — True when the change address was supplied by the user; false when auto-generated. Only meaningful when `change` is true.
      - `fee` string — The transaction fee in BTC. Calculated from: sum(inputs) - sum(outputs).
    - `aptosTransaction` TransactionAptosTransaction
      - `sender` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `sequenceNumber` string, int64
      - `payloadBytes` string, byte
      - `decodedPayload` V2DecodedAptosTransactionPayload
        - `entryFunction` V2DecodedAptosEntryFunction
          - `function` string, required
          - `typeArguments` string[], required
          - `arguments` string[], required
      - `maxGasAmount` string, int64
      - `gasUnitPrice` string, int64
      - `expirationTime` string, date-time — In seconds.
      - `chainId` string, int64
    - `suiTransaction` TransactionSuiTransaction
      - `sender` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `gasBudget` string
      - `gasPrice` string
      - `expirationEpoch` string
      - `txBcsBytes` string, byte
      - `decodedTransaction` string
    - `suiSignPersonalMessage` V2TransactionSuiSignPersonalMessage
      - `signer` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `message` string, byte — The message to sign.
      - `signature` string, byte — The signature of the message.
    - `xrplTransaction` TransactionXRPLTransaction
      - `jsonTransactionData` object
    - `substrateTransaction` TransactionSubstrateTransaction
      - `fromAddress` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `nonce` string, int64 — The nonce of the transaction.
      - `encodedCall` string
      - `call` SubstrateTransactionDecodedCall
        - `pallet` string
        - `palletIndex` integer
        - `method` string
        - `methodIndex` integer
        - `args` DecodedCallArg[]
          - `name` string
          - `type` string
          - `value` string
      - `genesisHash` string
    - `tonTransaction` TransactionTonTransaction
      - `sender` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `seqno` string, int64 — The sequence number of the transaction.
      - `messages` TransactionTonTransactionMessage[]
        - `address` string, required — The destination of the call.
        - `amount` string, required — Native Nanoton amount to send.
        - `payload` string
        - `stateInit` string — The initial state of the message.
      - `memo` string — The memo of the transaction.
      - `validUntil` string, int64 — The time the transaction is valid until.
      - `amount` string — The native amount passed to the transaction.
    - `tonSignData` V2TransactionTonSignData
      - `schemaCrc` string, int64 — Indicates the layout of payload cell that in turn defines domain separation. This is a descriptor of the content of the cell.
      - `cell` string — The payload to sign.
      - `publicKey` string — The public key of the signer.
      - `timestamp` string, int64 — The time at which the signature was created.
      - `signature` string — The signature of the typed data.
    - `tonProof` V2TransactionTonProof
      - `address` string — The address of the signer. In Raw address format. Example: `0:1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef`.
      - `appDomain` string
      - `payload` string — The payload to sign.
      - `timestamp` string, int64 — The time at which the signature was created.
      - `signature` string — The signature of the payload.
    - `solanaSignMessage` V2TransactionSolanaSignMessage
      - `signer` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `message` string, byte — The message to sign.
      - `signature` string — The signature of the message.
    - `solanaTransaction` V2TransactionSolanaTransaction
      - `fee` string — Transaction fee in lamports.
      - `rawTransaction` string, byte — The full transaction payload, serialized. The message and signatures, encoded in base64 format.
      - `utilaSigners` Apiv2Address[] — The utila addresses used to sign the transaction. Must be the same length as request.signing_sessions.
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `replaceBlockhash` boolean — Indicates whether the recent blockhash was or will be replaced with the most recent blockhash before signing.
    - `thetaTransaction` TransactionThetaTransaction — For Theta transaction: Low level transaction details.
      - `sendTransaction` ThetaTransactionSendTransaction — Represents a Theta send transaction with inputs, outputs, and fee.
        - `inputs` ThetaTransactionTxInput[] — The transaction inputs that provide the coins to be transferred.
          - `address` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `coins` ThetaTransactionCoins — Represents the amount of THETA and TFUEL coins in wei units.
            - `thetaWei` string — The amount of THETA in wei.
            - `tfuelWei` string — The amount of TFUEL in wei.
        - `outputs` ThetaTransactionTxOutput[] — The transaction outputs that receive the transferred coins.
          - `address` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `coins` ThetaTransactionCoins — Represents the amount of THETA and TFUEL coins in wei units.
            - `thetaWei` string — The amount of THETA in wei.
            - `tfuelWei` string — The amount of TFUEL in wei.
        - `fee` ThetaTransactionCoins — Represents the amount of THETA and TFUEL coins in wei units.
          - `thetaWei` string — The amount of THETA in wei.
          - `tfuelWei` string — The amount of TFUEL in wei.
    - `stellarTransaction` V2TransactionStellarTransaction
      - `sourceAccountAddress` Apiv2Address
        - `value` string — The actual address.
        - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `sequenceNumber` string — The sequence number of the transaction.
      - `fee` string, int64 — The fee paid for the transaction in stroops.
      - `memo` V2TransactionStellarTransactionMemo
        - `type` 'TEXT' | 'ID' | 'HASH' | 'RETURN', required — - TEXT: A text memo. Limited to 28 bytes. - ID: A id memo. An unsigned 64-bit integer. - HASH: A hash memo. A hex string of the hash with a `0x` prefix. - RETURN: A return memo. A hex string of the return hash with a `0x` prefix.
        - `data` string, required — The data of the memo.
      - `timeBounds` TransactionStellarTransactionStellarTimeBounds
        - `minUnixTime` string, int64
        - `maxUnixTime` string, int64
      - `operations` StellarTransactionStellarOperation[] — The operations in the transaction supported by utila.
        - `sourceAccountAddress` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
        - `rawBody` string, byte
        - `decodedBody` StellarTransactionDecodedOperationBody
          - `payment` StellarTransactionDecodedOperationBodyPayment
            - `destinationAddress` Apiv2Address
              - …
            - `asset` string — The asset of the payment. Example: `USDC-GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN`.
            - `assetRef` string — A weak reference to the asset. The reference is not guaranteed to be valid. Example: `assets/asset.stellar-mainnet.USDC-GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN`.
            - `amount` string — The amount of the payment. Example: `10000000` (1 XLM in stroops).
          - `createAccount` StellarTransactionDecodedOperationBodyCreateAccount
            - `destinationAddress` Apiv2Address
              - …
            - `startingBalance` string
          - `changeTrust` StellarTransactionDecodedOperationBodyChangeTrust
            - `asset` string — The asset of the change trust. Example: `assets/asset.stellar-mainnet.USDC-GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN`.
            - `assetRef` string — A weak reference to the asset. The reference is not guaranteed to be valid. Example: `assets/asset.stellar-mainnet.USDC-GA5ZSEJYB37JRC5AVCIA5MOP4RHTM335X2KGX3IHOJAPP5RE34K4KZVN`.
            - `limit` string — The limit of the change trust. For unlimited amount, this field will be empty. Example: `10000000` (1 XLM in stroops).
            - `unlimited` boolean — Whether the limit is considered by utila as unlimited.
          - `sep41Payment` StellarTransactionDecodedOperationBodySEP41Payment
            - `spenderAddress` Apiv2Address
              - …
            - `sourceAddress` Apiv2Address
              - …
            - `destinationAddress` Apiv2Address
              - …
            - `contractAddress` string — Example: `CB3WFHO46J3WGRAIARNT3XD4Z7NR5SZDNG3SVKN27GOTJAQGQFAH2KAJ`.
            - `assetRef` string — A weak reference to the asset. The reference is not guaranteed to be valid. Example: `assets/asset.stellar-mainnet.CB3WFHO46J3WGRAIARNT3XD4Z7NR5SZDNG3SVKN27GOTJAQGQFAH2KAJ`.
            - `rawAmount` string — The raw amount (without decimals) of the payment. Example: `10000000`.
          - `sep41TokenApproval` StellarTransactionDecodedOperationBodySEP41TokenApproval
            - `sourceAddress` Apiv2Address
              - …
            - `spenderAddress` Apiv2Address
              - …
            - `contractAddress` string — The token whose allowance is being set. Example: `CB3WFHO46J3WGRAIARNT3XD4Z7NR5SZDNG3SVKN27GOTJAQGQFAH2KAJ`.
            - `assetRef` string — A weak reference to the asset. The reference is not guaranteed to be valid. Example: `assets/asset.stellar-mainnet.CB3WFHO46J3WGRAIARNT3XD4Z7NR5SZDNG3SVKN27GOTJAQGQFAH2KAJ`.
            - `rawAmount` string — The allowance raw amount (without decimals) made available to the spender. Example: `10000000`.
            - `liveUntilLedgerNumber` string, int64 — The ledger number where this allowance expires.
      - `rawXdrEnvelope` string, byte
    - `aleoTransaction` TransactionAleoTransaction
      - `feeMicrocredits` string — Total fee paid in microcredits.
      - `feeOperation` TransactionFeePublic — Public fee transition details.
        - `amountMicrocredits` string
        - `priorityFeeMicrocredits` string
        - `payer` Apiv2Address
          - `value` string — The actual address.
          - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
      - `operations` TransactionAleoOperation[] — One entry per execution transition (fee transition excluded). Ordered as they appear on-chain (root first, then internal children).
        - `program` string — e.g. "credits.aleo", "usad_stablecoin.aleo". This also identifies the asset being operated on in this transition.
        - `transition` string — e.g. "transfer_private", "join".
        - `asset` string — The asset identifier for this transition (derived from program_id).
        - `internal` boolean — True for child transitions generated by internal program calls (e.g. credits.aleo/join called inside autojoin_credits_15_16.aleo/join_16).
        - `transferPublic` TransactionTransferPublic
          - `sender` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `recipient` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `amount` string
        - `transferPublicAsSigner` TransactionTransferPublicAsSigner
          - `signer` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `recipient` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `amount` string
        - `transferPrivate` TransactionTransferPrivate
          - `sender` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `recipient` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `sentAmount` string — Amount received by the recipient.
          - `changeAmount` string — Remainder returned to the sender.
        - `transferPrivateToPublic` TransactionTransferPrivateToPublic
          - `sender` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `recipient` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `sentAmount` string — Amount credited to the recipient's public account.
          - `changeAmount` string — Remainder returned to the sender as a record.
        - `transferPublicToPrivate` TransactionTransferPublicToPrivate
          - `sender` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `recipient` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `amount` string
        - `join` TransactionJoinOperation — credits.aleo/join — multiple records merged into one or more outputs.
          - `owner` Apiv2Address
            - `value` string — The actual address.
            - `infoRef` string — If it's an address in the vault (e.g., a wallet address), a reference to address information will be listed here. Address information can be fetched from `ReferencedAddressesInfo` map with the reference as the key. Will be populated only if `includeReferencedResources` is set to `true`.
          - `inputs` TransactionAleoRecord[]
            - `commitment` string
            - `amount` string
          - `outputs` TransactionAleoRecord[]
            - `commitment` string
            - `amount` string
        - `unknown` TransactionUnknownOperation — Catch-all for custom / third-party programs.
          - `inputs` TransactionTransitionValue[]
            - `type` string — "record", "public", "private", or "future".
            - `value` string — Plaintext value (decrypted if private).
          - `outputs` TransactionTransitionValue[]
            - `type` string — "record", "public", "private", or "future".
            - `value` string — Plaintext value (decrypted if private).
    - `createTime` string, date-time — The time at which the transaction was created in the system.
    - `mineTime` string, date-time — The time at which the transaction was mined.
    - `confirmTime` string, date-time — The time at which the transaction was confirmed.
    - `expireTime` string, date-time — The time at which the transaction was expired.
    - `spam` boolean
    - `replacementTransaction` string — If the current transaction is dropped, the transaction that replaced it will be listed here.
  - `referencedResources` object — A mapping of the referenced resources in the message. The key is the resource name and the value is the corresponding resource.
  - `referencedAddressesInfo` object — A mapping of the referenced addresses in the message. The key is the address and the value is the corresponding address info.

---

[API](https://skmtc.dev/utila/apis/utila-api.md) · [All operations](https://skmtc.dev/utila/apis/utila-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/utila/utila-api/revisions/b4f35b3a1e96/schema)
