REST APIWallet & TransactWallet

GET

This endpoint aggregates stuck transactions from a wallet and its EVM keyring derived wallets (if applicable).

Use cases:

  • EVM keyring parent wallet: Returns stuck txs from parent + all derived wallets (ETH, BSC, Polygon, etc.)
  • Non-keyring wallet: Returns stuck txs from that single wallet only

The response includes both successful results and any errors encountered while querying individual wallets, allowing clients to handle partial failures gracefully.

Path Params

  • walletId string required

    at least 1 characters · matches ^[0-9a-f]{32}$

Query Params

  • expandSendTransferMetadata boolean
    True, if expanding the send transfer for each stuck transaction if one is available.

    Defaults to false

  • txid string
    The transaction ID of the stuck transaction.

Responses

200
OK

Response Body

object

  • stuckTxs array of objects required
    Array of stuck transactions from all successfully queried wallets

    ONE OF

    • nonce number
      The nonce value of the potentially stuck transaction

      matches ^-?\d+$

    • txHex string
      Serialized transaction hex
    • txId string
      The on-chain transaction id
    • txType string
      The transaction type
    • sendTransfer object
      sendTransfer object
      • abandonedTime string date-time
        The time this transfer was abandoned
      • approvedTime string date-time
        The time this transfer was approved
      • baseValue number
        The value (in base units) sent by this transfer, excluding network fees. BitGo is deprecating this field in the future.
      • baseValueString string
        The value (in base units) sent by this transfer, excluding network fees represented as a string. BitGo is deprecating this field in the future.

        matches ^-?\d+$

      • baseValueWithoutFees number
        The value (in base units) sent by this transfer excluding network fees.
      • baseValueWithoutFeesString string
        The value (in base units) sent by this transfer, excluding network fees, represented as a string
      • bitgoOrg string enum
        BitGo TrustBitGo New YorkBitGo GermanyBitGo SwitzerlandBitGo Europe ApSFrankfurt DE TrustBitGo SingaporeBitGo KoreaBitGo Custody MENA FZEBitGo IndiaBitGo Sister Trust 1BitGo Inc
      • buildParams map of objects
        Parameters used to build the transaction
        buildParams object
        • <key> object
      • coin string required
        A cryptocurrency symbol or token ticker symbol
      • coinSpecific object
        Transfer fields specific to each coin type
      • comment string nullable
        A comment from the user
      • commentedTime string date-time
        The time this transfer was commented on
      • confirmations number
        The number of blocks that have been confirmed since this Transfer's block was confirmed
      • confirmedTime string date-time
        The time this transfer was confirmed
      • consolidateId string
        Consolidation ID if this transfer is part of a consolidation
      • createdTime string date-time
        The time this transfer was created
      • customerApprovedTime string date-time
        The time this transfer was approved by the customer (trust transfers)
      • date string date-time required
        The date this Transfer was last updated
      • elliptic string
        Elliptic risk score information (trust transfers)
      • enterprise string

        matches ^[0-9a-f]{32}$

      • enterpriseName string
        Name of the enterprise associated with this transfer
      • entries array of objects required
        entries object
        • activityMetadata map of objects
          Cosmos group governance metadata (e.g. MsgSubmitProposal details) emitted by the Generic Indexer
          activityMetadata object
          • <key> object
        • address string required
          An address affected by this Transfer
        • associatedNativeCoinAddress string
          The native coin receive address associated with the solana ATA address. This is currently present only for BitGo addresses. This change was done so that there is a mapping between the two addresses in the transfer entries.
        • backingFeeString string
          Backing fee represented as a string
        • failed boolean
          True if this entry is failed
        • isChange boolean
          True if this address is a change address (only exists for UTXO coins) and if this is a "send" transfer
        • isFee boolean
          Indicates if this entry is a fee
        • isInternal boolean
          Indicates if this entry is internal
        • isPayGo boolean
          True if this address is the BitGo PayGo wallet
        • isReward boolean
          Indicates if this entry is a reward
        • memo string
          Memo associated with this entry
        • nftId string
          NFT ID associated with this entry
        • nftSymbol string
        • rewardAddress string
          Reward address associated with this entry
        • subtype string
          Subtype of this entry
        • token string
          If this is a token entry, the token's symbol
        • tokenContractHash string
          Token contract hash associated with this entry
        • type string enum
          flushForwarderTokenswalletFundingwalletInitializationaddressInitializationimportedOutputonchainidWalletLinkedonchainidClaimAddedonchainidClaimRemovedAccountCreateContract
        • value number
          The change (in base units) in the address' balance
        • valueString string
          The change (in base units) in the address' balance represented as a string

          matches "^-?\d+$"

        • wallet string
          Only visible when the user has access to the wallet

          matches ^[0-9a-f]{32}$

        • walletLabel string
          The label of the wallet referenced by wallet. Only visible when the user has access to that wallet. Useful for displaying a human-readable destination name (e.g. for sibling enterprise wallets) instead of a generic external-address fallback.
      • failedTime string date-time
        The time this transfer failed
      • feeCoin string
        The coin used to pay the fee (for cross-chain transactions)
      • feeString string nullable
        The Transfer's fee (in base units) represented as a String
      • feeUsd number
        The fee USD value for token transfers
      • feeUsdRate number
        The fee coin USD rate for token transfers
      • goStakingRequestId string
        Associated GO staking request ID
      • height number
        The height of the block this Transfer was confirmed in (999999999 if unconfirmed)
      • heightId string
        The unique height id of the block
      • history array of objects required
        history object
        • action string enum required
          createdapprovedrejectedsignedunconfirmedconfirmedremovedcommentedfailedregeneratedreplacedreplacingreversedabandoned
        • comment string nullable
          If this history object is of action "commented", this is the comment from the user
        • date string date-time required
          The date of this history object
        • transferId string
          The ID of the transfer that this history object is associated with
        • txid string
          The transaction ID of the transaction that this history object is associated with
        • user string

          matches ^[0-9a-f]{32}$

      • id string required

        matches ^[0-9a-f]{32}$

      • idVerificationTime string date-time
        The time identity verification was completed (trust transfers)
      • inputs array of objects
        inputs object
        • address string
          The address of the UTXO
        • blockHeight number
          The block this Unspent was created in
        • chain number
          The chain of the UTXO
        • coinbase boolean
          True if this unspent came from the coinbase transaction
        • id string
          The ID of the UTXO
        • index number
          The index of the UTXO
        • redeemScript string
          The redeem script of the UTXO
        • value number
          The value of the UTXO
        • witnessScript string
          The witness script of the UTXO
      • instant boolean
        Whether this is an instant transaction
      • instantId string
        The instant transaction ID if applicable
      • intendedValueString string
        A string representation (in base units) of the initial value for the transfer. This is present because when a transaction fails on chain, its value is mutated to be zero. This string is immutable and will always be the intended value of the initial transfer regardless of the final state of the transaction.
      • isFee boolean
        Whether this transfer represents a fee
      • isReward boolean
        Whether this transfer represents a staking reward
      • isUnlock boolean
        Whether this transfer represents an unlock operation
      • label string
        Address labels (if any) from entries concatenated.
      • medianUsdRate number
        The median USD rate at the time this Transfer was created
      • medianUsdValue number
        The median USD value of this Transfer
      • metadata array of objects
        metadata object
        • key string required
        • value string required
      • nSegwitInputs number
        DEPRECATED. Number of segwit inputs on the transfer.
      • organization string

        matches ^[0-9a-f]{32}$

      • outputs array of objects
        outputs object
        • address string
          The address of the UTXO
        • blockHeight number
          The block this Unspent was created in
        • chain number
          The chain of the UTXO
        • coinbase boolean
          True if this unspent came from the coinbase transaction
        • id string
          The ID of the UTXO
        • index number
          The index of the UTXO
        • redeemScript string
          The redeem script of the UTXO
        • value number
          The value of the UTXO
        • witnessScript string
          The witness script of the UTXO
      • payGoFee number
        The Transfer's BitGo fee (in base units)
      • payGoFeeString string
        The Transfer's BitGo fee (in base units) represented as a String
      • pendingApproval string
      • regeneratedTime string date-time
        The time this transfer was regenerated
      • rejectedTime string date-time
        The time this transfer was rejected
      • removedTime string date-time
        The time this transfer was removed
      • replacedBy array of strings
      • replacedByTransferId array of strings
      • replacedTime string date-time
        The time this transfer was replaced
      • replaces array of strings
      • replacingTime string date-time
        The time this transfer started replacing another
      • riskIndicators array of string enums
        SELFDESTRUCT
      • sendAccounting array of objects
        sendAccounting object
        • amount number
        • amountString string required
        • id string
        • nOuts number required
        • type string required
      • senderInformationVerified boolean
        Whether sender information has been verified (trust transfers)
      • sequenceId string
        Unique wallet identifier for preventing double-spends
      • signedDate string date-time
        The date this transfer was signed (legacy field)
      • signedTime string date-time
        The time this transfer was signed
      • stakingParams object
        stakingParams object
        • actionType string required
        • amount string
        • coreDao object
          coreDao object
          • amount string number required
          • expiration string date-time required
          • fee number required
          • rewardAddress string required
          • validator string required
          • version number required
        • receiverAddress string
        • requestId string required
        • resource string
        • source string enum
          externalinternal
        • validator string
      • state string enum required

        The state of the transfer. Includes the following:

        • confirmed: The transfer is confirmed on chain.
        • failed: BitGo failed to confirm the transfer on chain. You must retry the transaction.
        • initialized: The initial state when creating a transfer.
        • pendingApproval: The transfer requires admin approval to proceed.
        • rejected: The transfer was rejected by an admin.
        • removed: A network re-org occurred, causing the confirmed transfer to be removed from the blockchain.
        • replaced: The transfer was stuck due to having a low fee and was replaced by a new transfer with a higher fee.
        • reversed: The transfer was reversed (e.g., when a withdrawal offer is rejected in multi-step transfers).
        • signed: The transfer was approved by an admin (if required) and then signed by BitGo.
        • unconfirmed: The signed transaction was sent to the network, and is pending on-chain validation.
        initializedpendingApprovalrejectedsignedunconfirmedconfirmedremovedfailedreplacedreverseddeleted
      • subType string enum
        Transfer subtype
        ofc_depositofc_withdrawalofc_book_transferofc_exchangeofc_bn_settlement_transferofc_bn_allocationofc_trading_orderofc_trading_settlementofc_margin_collateralofc_margin_positionofc_direct_tradeofc_routedofc_feeofc_otherofc_unstakeofc_financing_liquidationreceive_from_gastankreserved_amountutxo_message_signingpending_depositpending_deposit_activityinternal_transferpending_withdrawal_offerpending_deposit_offeroffer_acceptedoffer_rejectedconfirmed_depositconfirmed_withdrawaldeposit_offer_expiredwithdrawal_offer_expiredwithdrawal_offer_rejectedutxo_expiredoffer_cancelledcancel_withdrawal_offermint_requestmint_offermint_acceptmint_depositmint_rejectburn_requestburn_offerburn_acceptburn_withdrawburn_rejectpending_participant_onboarding_requestparticipant_onboarding_acceptedpending_dtcc_end_investor_inviteend_investor_invite_offerend_investor_invite_acceptedend_investor_invite_rejectedpending_allocationallocation_acceptedcosign_delegation_offercosign_delegation_acceptedcash_dvp_settledrepo_dvp_open_leg_settledrepo_dvp_close_leg_settledstaking_eth_withdrawalstaking_eth_partial_withdrawalstaking_eth_full_withdrawalstaking_eth_mev_rewardstaking_eth_block_rewardstaking_bera_withdrawalstaking_bera_block_rewarddefi_deposit
      • tags array of strings
      • trustFinalApprovalTime string date-time
        The time this transfer received final trust approval (trust transfers)
      • trustSignedTime string date-time
        The time this transfer was signed by trust (trust transfers)
      • txid string
        The on-chain transaction id
      • txidType string
        The type of the transaction id
      • txRequestId string
        Associated transaction request ID
      • type string enum required
        Defines whether or not this Transfer was sent or received by the user
        sendreceive
      • unconfirmedTime string date-time
        The time this transfer became unconfirmed
      • usd number
        The amount of USD of this Transfer (will be negative if it's a send)
      • usdRate number
        The USD rate at the time this Transfer was created
      • usersNotified boolean
        Whether BitGo already sent notifications to the users of the transfer wallet
      • value number
        The total value (in base units) sent by this Transfer (may be approximate for ETH and other coins where amounts in base units can exceed 2^53 - 1)
      • valueString string required
        The total value (in base units) sent by this Transfer represented as a String

        matches ^-?\d+$

      • vSize number
        The size of the transaction
      • wallet string required

        matches ^[0-9a-f]{32}$

      • walletLabel string
        Label of the wallet associated with this transfer
      • walletType string enum
        Wallet type
        backingcoldcustodialcustodialPairedhotadvancedtrading
    • cause string required
      The reason the transaction is potentially stuck
    • message string required
      Possible steps to remediate the stuck transaction.
    • transferIds array of strings
    • gasAccelerationFee object
      Fee required to remediate a stuck transaction when the cause is 'fee acceleration'.
      gasAccelerationFee object
      • gasPrice string

        matches ^-?\d+$

      • maxFeePerGas string

        matches ^-?\d+$

      • maxPriorityFeePerGas string

        matches ^-?\d+$

    • userActionDisabled boolean
      True, if manual user action is disabled on this stuck transaction
    • coin string
      The coin name for the stuck transaction
    • wallet string
      The wallet ID for the stuck transaction
    • isFeeAddress boolean
      True if the address is the wallet's dedicated fee/gas address
  • errors array of objects required
    errors object
    • walletId string required
      The wallet ID that failed
    • coin string required
      The coin/chain of the wallet that failed
    • code string required
      Error code
    • message string required
      Human-readable error message
400
Bad Request

Response Body

object

  • name string
    Error code
  • context map of objects required
    Properties that apply to a specific error name
    context object
    • <key> object
  • error string required
    Human-readable error message
  • requestId string required
    Client request id
404
Not Found

Response Body

object

  • name string
    Error code
  • context map of objects required
    Properties that apply to a specific error name
    context object
    • <key> object
  • error string required
    Human-readable error message
  • requestId string required
    Client request id