fireblocks · Schema

Fireblocks Transaction

A Fireblocks Transaction represents any digital-asset movement initiated through Fireblocks — transfers, raw signings, contract calls, swaps, payouts. Each transaction is bound by the workspace Policy Engine and signed by the MPC quorum.

Properties

Name Type Description
id string Fireblocks-assigned transaction identifier.
externalTxId string Idempotency / external reference identifier supplied by the API client.
status string Current lifecycle status of the transaction.
subStatus string Detailed reason for the current status (e.g. INSUFFICIENT_FUNDS, AUTHORIZER_NOT_FOUND).
txHash string On-chain transaction hash, once broadcast.
operation string Type of operation Fireblocks is executing.
assetId string Fireblocks asset id (e.g. BTC, ETH, USDC_ETH, USDC_POLYGON).
source object Source of the transfer.
destination object Destination of the transfer.
amount string Amount to transfer in the asset's native unit.
amountUSD string USD-equivalent value of the amount at the time of submission.
netAmount string Net amount after deducting network fees.
fee string Network fee charged in the asset's native unit.
networkFee string Network gas/fee paid to miners or validators.
feeLevel string
note string Free-form note attached to the transaction (visible in Console).
createdAt integer Unix epoch millis when the transaction was created.
lastUpdated integer Unix epoch millis when the transaction was last updated.
createdBy string User or API key identifier that initiated the transaction.
signedBy array List of signers participating in the MPC quorum.
rejectedBy string User who rejected the transaction, if applicable.
authorizationInfo object Quorum approval state of the transaction under the workspace policy engine.
exchangeTxId string External exchange transaction identifier, if routed via an exchange account.
blockInfo object
addressType string Destination address type, e.g. ONE_TIME or WHITELISTED.
extraParameters object Operation-specific parameters (raw signing message, contract call data, etc.).
View JSON Schema on GitHub

JSON Schema

fireblocks-transaction-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/fireblocks/main/json-schema/fireblocks-transaction-schema.json",
  "title": "Fireblocks Transaction",
  "description": "A Fireblocks Transaction represents any digital-asset movement initiated through Fireblocks — transfers, raw signings, contract calls, swaps, payouts. Each transaction is bound by the workspace Policy Engine and signed by the MPC quorum.",
  "type": "object",
  "properties": {
    "id": { "type": "string", "description": "Fireblocks-assigned transaction identifier." },
    "externalTxId": { "type": "string", "description": "Idempotency / external reference identifier supplied by the API client." },
    "status": {
      "type": "string",
      "description": "Current lifecycle status of the transaction.",
      "enum": ["SUBMITTED", "PENDING_AML_SCREENING", "PENDING_ENRICHMENT", "PENDING_AUTHORIZATION", "QUEUED", "PENDING_SIGNATURE", "PENDING_3RD_PARTY_MANUAL_APPROVAL", "PENDING_3RD_PARTY", "BROADCASTING", "CONFIRMING", "PARTIALLY_COMPLETED", "PENDING_CONSOLE_APPROVAL", "CANCELLING", "CANCELLED", "REJECTED", "BLOCKED", "FAILED", "COMPLETED", "TIMEOUT"]
    },
    "subStatus": { "type": "string", "description": "Detailed reason for the current status (e.g. INSUFFICIENT_FUNDS, AUTHORIZER_NOT_FOUND)." },
    "txHash": { "type": "string", "description": "On-chain transaction hash, once broadcast." },
    "operation": {
      "type": "string",
      "description": "Type of operation Fireblocks is executing.",
      "enum": ["TRANSFER", "MINT", "BURN", "CONTRACT_CALL", "RAW", "TYPED_MESSAGE", "STAKE", "UNSTAKE", "WITHDRAW", "REDEEM_FROM_COMPOUND", "SUPPLY_TO_COMPOUND", "SUPPLY_TO_AAVE"]
    },
    "assetId": { "type": "string", "description": "Fireblocks asset id (e.g. BTC, ETH, USDC_ETH, USDC_POLYGON)." },
    "source": {
      "type": "object",
      "description": "Source of the transfer.",
      "properties": {
        "type": { "type": "string", "enum": ["VAULT_ACCOUNT", "EXCHANGE_ACCOUNT", "INTERNAL_WALLET", "EXTERNAL_WALLET", "FIAT_ACCOUNT", "NETWORK_CONNECTION", "COMPOUND", "GAS_STATION", "ONE_TIME_ADDRESS", "END_USER_WALLET"] },
          "id": { "type": "string" },
          "name": { "type": "string" }
      }
    },
    "destination": {
      "type": "object",
      "description": "Destination of the transfer.",
      "properties": {
        "type": { "type": "string", "enum": ["VAULT_ACCOUNT", "EXCHANGE_ACCOUNT", "INTERNAL_WALLET", "EXTERNAL_WALLET", "FIAT_ACCOUNT", "NETWORK_CONNECTION", "COMPOUND", "ONE_TIME_ADDRESS", "END_USER_WALLET"] },
        "id": { "type": "string" },
        "name": { "type": "string" },
        "oneTimeAddress": {
          "type": "object",
          "properties": {
            "address": { "type": "string" },
            "tag": { "type": "string" }
          }
        }
      }
    },
    "amount": { "type": "string", "description": "Amount to transfer in the asset's native unit." },
    "amountUSD": { "type": "string", "description": "USD-equivalent value of the amount at the time of submission." },
    "netAmount": { "type": "string", "description": "Net amount after deducting network fees." },
    "fee": { "type": "string", "description": "Network fee charged in the asset's native unit." },
    "networkFee": { "type": "string", "description": "Network gas/fee paid to miners or validators." },
    "feeLevel": { "type": "string", "enum": ["LOW", "MEDIUM", "HIGH"] },
    "note": { "type": "string", "description": "Free-form note attached to the transaction (visible in Console)." },
    "createdAt": { "type": "integer", "description": "Unix epoch millis when the transaction was created." },
    "lastUpdated": { "type": "integer", "description": "Unix epoch millis when the transaction was last updated." },
    "createdBy": { "type": "string", "description": "User or API key identifier that initiated the transaction." },
    "signedBy": { "type": "array", "items": { "type": "string" }, "description": "List of signers participating in the MPC quorum." },
    "rejectedBy": { "type": "string", "description": "User who rejected the transaction, if applicable." },
    "authorizationInfo": {
      "type": "object",
      "description": "Quorum approval state of the transaction under the workspace policy engine."
    },
    "exchangeTxId": { "type": "string", "description": "External exchange transaction identifier, if routed via an exchange account." },
    "blockInfo": {
      "type": "object",
      "properties": {
        "blockHeight": { "type": "string" },
        "blockHash": { "type": "string" }
      }
    },
    "addressType": { "type": "string", "description": "Destination address type, e.g. ONE_TIME or WHITELISTED." },
    "extraParameters": {
      "type": "object",
      "description": "Operation-specific parameters (raw signing message, contract call data, etc.)."
    }
  },
  "required": ["id", "status", "operation"]
}