Create transaction request

post/api/v2/wallet/{walletId}/txrequests

Allows users to create a transaction request given they have spender permissions on the wallet. Use only with TSS wallets. For multisignature wallets, use Build a transaction.

Path Parameters

  • walletIdstringRequired
    Example: "59cd72485007a239fb00282ed480da1f"
    Pattern: ^[0-9a-f]{32}$

Request Body

idempotencyKey string
The combination of the idempotencyKey, version and walletId has to be unique. If no idempotencyKey is specified then it remains undefined for the txRequest. Note, version is an internal field that is auto incremented on every update to a txRequest.
intentAny ofrequired
nonce string
The 'nonce' of a transaction (optional)
memo string
intentType string required
Allowed value: claim
sequenceId string
A "sequenceId" is a unique and arbitrary wallet identifier applied to transfers and transactions at creation. It is optional but highly recommended. With a "sequenceId" you can easily reference transfers and transactions—for example, to safely retry sending. Because BitGo only confirms one send request per "sequenceId" (and fails all subsequent attempts), you can retry sending without the risk of double spending. The "sequenceId" is only visible to users on the wallet and is not shared publicly. It is the responsibility of the caller to keep track of this ID.
Example: abc123
comment string
The "comment" is only visible to users on the wallet and is not shared publicly.
stakingRequestId string required
stakingAddress string required
The staking account.
amount object required
The amount, in lamports, to claim.
videoApprovers array
(Custodial) Specify who should perform the Video ID with Trust if one should be required.
Example: ["585951a5df8380e0e3063e9f","585951a5df8380e0e304a553"]
apiVersion string
Full or Light to differentiate between the different transaction request flows.
Allowed values: lite full
Default: full
preview boolean
When set to true, the transaction request is returned without being stored in the DB.
Default: false

200 Response

Any of
txRequestId string required
A unique ID for the TxRequest document across all wallets. The combination of the txRequestId and version will always be unique.
version number required
The version of the document. Data changes are done only with inserts and incrementing the version.
latest boolean required
A boolean flag that indicates whether the document is the latest version of the TxRequest.
walletId string required
The id of the Wallet the TxRequest is for.
walletType string
The type describes who owns the keys to the wallet associated to the TxRequest.
Allowed values: cold custodial custodialPaired hot trading
enterpriseId string
If the wallet that owns the TxRequest is owned by an enterprise then this is the Id of said enterprise.
state string required
Allowed values: initialized pendingApproval pendingUserSignature pendingDelivery signed delivered canceled rejected failed
date string <date-time>required
The date and time this version of the TxRequest document was created.
Example: {}
userId string required
The Id of the User that produced this version of the TxRequest document. Could have created a new document or updated an existing document.
intents array
pendingApprovalId string
The id of the Pending Approval that was created for the TxRequest if one was required.
unsignedTxs array[object]
serializedTxHex string required
The unsigned transaction as a hex string.
signableHex string required
The portion of a transaction used to generate a signature (may or may not be the same as serializedTxHex) as a hex string.
derivationPath string
A bip32 path.
feeInfo object
signatureShares array[object]
from string required
The source of the signature share.
Allowed values: user backup bitgo
Example: user
to string required
The recipient of the signature share.
Example: user
share string required
The signature share.
txHashes array[string]

400 Response

error string required
Human-readable error message
requestId string required
Client request id
context object
Properties that apply to a specific error name
name string required
Error code