interface ITransactionRequest {
    amount?: TransactionRequestAmount;
    assetId?: string;
    autoStaking?: boolean;
    cpuStaking?: TransactionRequestNetworkStaking;
    customerRefId?: string;
    destination?: DestinationTransferPeerPath;
    destinations?: TransactionRequestDestination[];
    externalTxId?: string;
    extraParameters?: object;
    failOnLowFee?: boolean;
    fee?: TransactionRequestFee;
    feeLevel?: TransactionRequestFeeLevelEnum;
    forceSweep?: boolean;
    gasLimit?: TransactionRequestGasLimit;
    gasPrice?: TransactionRequestGasPrice;
    maxFee?: string;
    maxTotalFee?: string;
    networkFee?: TransactionRequestNetworkFee;
    networkStaking?: TransactionRequestNetworkStaking;
    note?: string;
    operation?: TransactionOperation;
    priorityFee?: TransactionRequestPriorityFee;
    replaceTxByHash?: string;
    source: ITransactionSource;
    travelRuleMessage?: TravelRuleCreateTransactionRequest;
    treatAsGrossAmount?: boolean;
    useGasless?: boolean;
}

Hierarchy

  • Omit<TransactionRequest, "source">
    • ITransactionRequest

Properties

amount?: TransactionRequestAmount

TransactionRequest

assetId?: string

The ID of the asset to transfer, for TRANSFER, MINT or BURN operations. See the list of supported assets and their IDs on Fireblocks.

TransactionRequest

autoStaking?: boolean

This feature is no longer supported.

TransactionRequest

cpuStaking?: TransactionRequestNetworkStaking

TransactionRequest

customerRefId?: string

The ID for AML providers to associate the owner of funds with transactions.

TransactionRequest

destination?: DestinationTransferPeerPath

TransactionRequest

destinations?: TransactionRequestDestination[]

For UTXO based blockchains, you can send a single transaction to multiple destinations.

TransactionRequest

externalTxId?: string

An optional but highly recommended parameter. Fireblocks will reject future transactions with same ID. You should set this to a unique ID representing the transaction, to avoid submitting the same transaction twice. This helps with cases where submitting the transaction responds with an error code due to Internet interruptions, but the transaction was actually sent and processed. To validate whether a transaction has been processed, Find a specific transaction by external transaction ID. There is no specific format required for this parameter.

TransactionRequest

extraParameters?: object

Additional protocol / operation specific key-value parameters: For UTXO-based blockchain input selection, add the key inputsSelection with the value set the input selection structure. The inputs can be retrieved from the Retrieve Unspent Inputs endpoint. For RAW operations, add the key rawMessageData with the value set to the raw message data structure. For CONTRACT_CALL operations, add the key contractCallData with the value set to the Ethereum smart contract Application Binary Interface (ABI) payload. The Fireblocks development libraries are recommended for building contract call transactions.

TransactionRequest

failOnLowFee?: boolean

When set to true, in case the current MEDIUM fee level is higher than the one specified in the transaction, the transaction will fail to avoid getting stuck with no confirmations.

TransactionRequest

fee?: TransactionRequestFee

TransactionRequest

feeLevel?: TransactionRequestFeeLevelEnum

For UTXO or EVM-based blockchains only. Defines the blockchain fee level which will be payed for the transaction. Alternatively, specific fee estimation parameters exist below.

TransactionRequest

forceSweep?: boolean

For Polkadot, Kusama and Westend transactions only. When set to true, Fireblocks will empty the asset wallet. Note: If set to true when the source account is exactly 1 DOT, the transaction will fail. Any amount more or less than 1 DOT succeeds. This is a Polkadot blockchain limitation.

TransactionRequest

gasLimit?: TransactionRequestGasLimit

TransactionRequest

gasPrice?: TransactionRequestGasPrice

TransactionRequest

maxFee?: string

The maximum fee (gas price or fee per byte) that should be payed for the transaction. In case the current value of the requested feeLevel is higher than this requested maximum fee. Represented by a numeric string for accurate precision.

TransactionRequest

maxTotalFee?: string

For BTC-based blockchains only. The maximum fee (in the units of the fee-paying asset) that should be paid for the transaction.

TransactionRequest

networkFee?: TransactionRequestNetworkFee

TransactionRequest

networkStaking?: TransactionRequestNetworkStaking

TransactionRequest

note?: string

Custom note, not sent to the blockchain, to describe the transaction at your Fireblocks workspace.

TransactionRequest

operation?: TransactionOperation

TransactionRequest

priorityFee?: TransactionRequestPriorityFee

TransactionRequest

replaceTxByHash?: string

For EVM-based blockchains only. In case a transaction is stuck, specify the hash of the stuck transaction to replace it by this transaction with a higher fee, or to replace it with this transaction with a zero fee and drop it from the blockchain.

TransactionRequest

source: ITransactionSource
travelRuleMessage?: TravelRuleCreateTransactionRequest

TransactionRequest

treatAsGrossAmount?: boolean

"When set to true, the fee will be deducted from the requested amount." Note: This parameter can only be considered if a transaction’s asset is a base asset, such as ETH or MATIC. If the asset can’t be used for transaction fees, like USDC, this parameter is ignored and the fee is deducted from the relevant base asset wallet in the source account.

TransactionRequest

useGasless?: boolean
  • Override the default gasless configuration by sending true\false

TransactionRequest