operation of the Create a new transaction endpoint. The examples on this page assume an initialised client as described in Choose an interface and use the testnet asset ETH_TEST5 (Ethereum Sepolia), so you can try each one without moving real funds. To protect a request against duplicates, set a unique externalTxId on every request, as described in Transaction idempotency. The full list of fields, enums and limits is in the API reference.
Vault account to vault account
This example sends 0.001ETH_TEST5 from one vault account to another, which is the most common transfer. Replace the placeholders with your own vault account IDs.
- SDK
- API
- CLI
Send to a one-time address
A one-time address sends to a blockchain address that is not saved in your workspace, so it is not covered by your allowlist. Put the address inoneTimeAddress, and add a tag only for assets that use a memo or destination tag.
- SDK
- API
- CLI
Send to an allowlisted wallet
To send to a wallet saved in your workspace, set the destinationtype to INTERNAL_WALLET, EXTERNAL_WALLET or CONTRACT and pass the wallet’s id. The example uses an external wallet, and the other two wallet types differ only in the type value and the ID. See Allowlist addresses for how these wallets are created and Sources and destinations for the peer types.
- SDK
- API
- CLI
Send to an exchange account or network connection
To send to a connected exchange account, use the destinationtype EXCHANGE_ACCOUNT with the exchange account’s ID. To send to a Fireblocks Network connection, use NETWORK_CONNECTION with the connection’s ID. The example shows an exchange account, and Connect to exchanges and fiat providers explains how to connect the accounts and find their IDs.
- SDK
- API
- CLI
Send from a Wallet Pool
A Wallet Pool groups vault accounts under one logical source, so you name the pool as thesource and Fireblocks selects a member vault account to send from. The pool is set up as described in Wallet Pools, which also covers policy setup and reconciliation.
- SDK
- API
- CLI
Send to multiple destinations
UTXO-based blockchains such as Bitcoin can send a single transaction to several destinations. Instead of a singledestination, pass a destinations array in which each entry has its own amount and destination. The example sends to two one-time addresses on the Bitcoin testnet (BTC_TEST). To choose which UTXOs fund the transaction, see Select UTXOs for a transaction.
- SDK
- API
- CLI
Fees and amounts
These optional fields on the request control the fee and how the amount is treated, and each is described in full on the Create a new transaction page.feeLevelapplies to UTXO, EVM-based and Solana blockchains and sets the fee level to pay, with the valuesLOW,MEDIUMandHIGH.feeis an alternative tofeeLevelthat gives the fee per byte for UTXO-based blockchains, or the transaction fee for Ripple.priorityFeeis an alternative tofeeLevelfor Ethereum-based blockchains and sets the EIP-1559 priority fee in Gwei.maxFeeis the maximum fee (gas price or fee per byte) you are willing to pay when the currentfeeLevelvalue is higher.failOnLowFeemakes the transaction fail instead of getting stuck without confirmations when the currentMEDIUMfee level is higher than the fee specified in the transaction.treatAsGrossAmountdeducts the fee from the requested amount, and it is only considered when the asset is a base asset such as ETH, so it is ignored for assets such as USDC.
- SDK
- API
- CLI