BlockBook
Get Blockbook and backend status.
Returns Blockbook sync state and connected backend metadata.
Load estimate: Low; constant-size status metadata.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/status":{"get":{"tags":["BlockBook"],"operationId":"getStatus","summary":"Get Blockbook and backend status.","description":"Returns Blockbook sync state and connected backend metadata.\n\nLoad estimate: Low; constant-size status metadata.","responses":{"200":{"description":"Current Blockbook and backend status.","content":{"application/json":{"schema":{"type":"object","properties":{"blockbook":{"type":"object","required":["coin","network","host","version","gitCommit","buildTime","syncMode","initialSync","inSync","bestHeight","decimals","about"],"properties":{"coin":{"type":"string","description":"Coin name."},"network":{"type":"string","description":"Network identifier."},"host":{"type":"string","description":"Blockbook instance hostname."},"version":{"type":"string","description":"Blockbook version string."},"gitCommit":{"type":"string","description":"Git commit hash."},"buildTime":{"type":"string","description":"Build timestamp."},"syncMode":{"type":"boolean","description":"Whether sync mode is enabled."},"initialSync":{"type":"boolean","description":"Whether the initial sync is still in progress."},"inSync":{"type":"boolean","description":"Whether the indexer is in sync with the blockchain."},"bestHeight":{"type":"integer","description":"Current best block height."},"lastBlockTime":{"type":"string","description":"Timestamp of the last indexed block."},"inSyncMempool":{"type":"boolean","description":"Whether the mempool is in sync."},"lastMempoolTime":{"type":"string","description":"Timestamp of the last mempool update."},"mempoolSize":{"type":"integer","description":"Number of transactions in the mempool."},"decimals":{"type":"integer","description":"Number of decimals for the native currency."},"dbSize":{"type":"integer","format":"int64","description":"Size of the database in bytes."},"hasFiatRates":{"type":"boolean","description":"Whether fiat rates are available."},"hasTokenFiatRates":{"type":"boolean","description":"Whether token fiat rates are available."},"currentFiatRatesTime":{"type":"string","description":"Timestamp of the latest fiat rates."},"historicalFiatRatesTime":{"type":"string","description":"Timestamp of the latest historical fiat rates."},"historicalTokenFiatRatesTime":{"type":"string","description":"Timestamp of the latest token fiat rates."},"about":{"type":"string","description":"About text."}}},"backend":{"type":"object","properties":{"chain":{"type":"string","description":"Blockchain name."},"blocks":{"type":"integer","description":"Total number of blocks."},"bestBlockHash":{"type":"string","description":"Hash of the best block."},"difficulty":{"type":"string","description":"Current difficulty."},"version":{"type":"string","description":"Backend version."}}}}}}}},"default":{"description":"Public API error. Public validation errors are HTTP 400; internal errors are HTTP 500.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get status from the API index handler.
Alias served by the same handler as /api/status on full public
interfaces.
Load estimate: Low; constant-size status metadata.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/":{"get":{"tags":["BlockBook"],"operationId":"getApiIndexStatus","summary":"Get status from the API index handler.","description":"Alias served by the same handler as /api/status on full public\ninterfaces.\n\nLoad estimate: Low; constant-size status metadata.","responses":{"200":{"description":"Current Blockbook and backend status.","content":{"application/json":{"schema":{"$ref":"#/paths/~1api~1status/get/responses/200/content/application~1json/schema"}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get a block hash by height.
Returns the block hash for a height on the backend main chain.
Blockbook follows the backend main chain; after a rollback or reorg,
height lookups resolve to the current main-chain block.
Load estimate: Low; indexed height-to-hash lookup.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/block-index/{height}":{"get":{"tags":["BlockBook"],"operationId":"getBlockHashByHeight","summary":"Get a block hash by height.","description":"Returns the block hash for a height on the backend main chain.\nBlockbook follows the backend main chain; after a rollback or reorg,\nheight lookups resolve to the current main-chain block.\n\nLoad estimate: Low; indexed height-to-hash lookup.","parameters":[{"name":"height","in":"path","required":true,"description":"Block height on the backend main chain.","schema":{"type":"integer","minimum":0}}],"responses":{"200":{"description":"Block hash at the requested height.","content":{"application/json":{"schema":{"type":"object","required":["blockHash"],"properties":{"blockHash":{"type":"string","description":"Block hash."}}}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get a block by height or hash.
Returns block information with paged transactions. When full
transaction details are unavailable, the response can contain only
transaction ids.
Blockbook follows the backend main chain. Height lookups always return
the current main-chain block. Hash lookups can return a block from
another fork only if the backend still keeps it.
Load estimate: Medium; grows mainly with block transaction count and
requested page.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/block/{blockId}":{"get":{"tags":["BlockBook"],"operationId":"getBlock","summary":"Get a block by height or hash.","description":"Returns block information with paged transactions. When full\ntransaction details are unavailable, the response can contain only\ntransaction ids.\n\nBlockbook follows the backend main chain. Height lookups always return\nthe current main-chain block. Hash lookups can return a block from\nanother fork only if the backend still keeps it.\n\nLoad estimate: Medium; grows mainly with block transaction count and\nrequested page.","parameters":[{"name":"blockId","in":"path","required":true,"description":"Block height or block hash.","schema":{"type":"string"}},{"name":"page","in":"query","description":"1-based page index. Values outside safe bounds are sanitized to the closest possible page.","schema":{"type":"integer","minimum":1}}],"responses":{"200":{"description":"Block details.","content":{"application/json":{"schema":{"type":"object","required":["hash","height","confirmations","txCount"],"properties":{"page":{"type":"integer","description":"Current page number."},"totalPages":{"type":"integer","description":"Total number of pages."},"itemsOnPage":{"type":"integer","description":"Number of items on this page."},"hash":{"type":"string","description":"Block hash."},"previousBlockHash":{"type":"string","description":"Previous block hash."},"nextBlockHash":{"type":"string","description":"Next block hash."},"height":{"type":"integer","description":"Block height."},"confirmations":{"type":"integer","minimum":0,"description":"Number of confirmations."},"size":{"type":"integer","description":"Block size in bytes."},"time":{"type":"integer","format":"int64","description":"Block timestamp (Unix)."},"version":{"oneOf":[{"type":"string"},{"type":"integer"}],"description":"Block version."},"merkleRoot":{"type":"string","description":"Merkle root."},"nonce":{"type":"string","description":"Block nonce."},"bits":{"type":"string","description":"Bits representation."},"difficulty":{"type":"string","description":"Difficulty target."},"tx":{"type":"array","description":"Transaction ids when full transactions are not returned.","items":{"type":"string"}},"txCount":{"type":"integer","description":"Total number of transactions in the block."},"txs":{"type":"array","description":"Full transaction details for this page.","items":{"type":"object","required":["txid","vin","vout","blockHeight","confirmations","blockTime"],"properties":{"txid":{"type":"string","description":"Transaction id."},"version":{"type":"integer","description":"Transaction version."},"lockTime":{"type":"integer","description":"Lock time."},"vin":{"type":"array","items":{"type":"object","required":["n","isAddress"],"properties":{"txid":{"type":"string","description":"Input transaction id."},"vout":{"type":"integer","minimum":0,"description":"Output index."},"sequence":{"type":"integer","description":"Sequence number."},"n":{"type":"integer","minimum":0,"description":"Input index within the transaction."},"addresses":{"type":"array","items":{"type":"string"},"description":"Array of addresses."},"isAddress":{"type":"boolean","description":"Whether the input is address-based."},"isOwn":{"type":"boolean","description":"Whether this input belongs to the queried account."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Input value in lowest denomination."},"hex":{"type":"string","description":"Script hex."},"asm":{"type":"string","description":"Script assembly."},"coinbase":{"type":"string","description":"Coinbase data if applicable."}}},"description":"Transaction inputs."},"vout":{"type":"array","items":{"type":"object","required":["n","addresses","isAddress"],"properties":{"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Output value."},"n":{"type":"integer","minimum":0,"description":"Output index."},"spent":{"type":"boolean","description":"Whether this output is spent."},"spentTxId":{"type":"string","description":"Spending transaction id if spent."},"spentIndex":{"type":"integer","description":"Spending input index."},"spentHeight":{"type":"integer","description":"Block height where spent."},"hex":{"type":"string","description":"Output script hex."},"asm":{"type":"string","description":"Script assembly."},"addresses":{"oneOf":[{"type":"array","items":{"type":"string"}}],"description":"Recipient addresses."},"isAddress":{"type":"boolean","description":"Whether the output is address-based."},"isOwn":{"type":"boolean","description":"Whether this output belongs to the queried account."},"type":{"type":"string","description":"Output type."}}},"description":"Transaction outputs."},"blockHash":{"type":"string","description":"Block hash containing this transaction."},"blockHeight":{"type":"integer","description":"-1 for unconfirmed transactions."},"confirmations":{"type":"integer","minimum":0,"description":"Number of confirmations."},"confirmationETABlocks":{"type":"integer","description":"Estimated blocks until confirmation."},"confirmationETASeconds":{"type":"integer","format":"int64","description":"Estimated seconds until confirmation."},"blockTime":{"type":"integer","format":"int64","description":"Block timestamp."},"size":{"type":"integer","description":"Transaction size."},"vsize":{"type":"integer","description":"Virtual transaction size."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Total output value."},"valueIn":{"type":"string","pattern":"^-?[0-9]+$","description":"Total input value."},"fees":{"type":"string","pattern":"^-?[0-9]+$","description":"Transaction fees."},"hex":{"type":"string","description":"Serialized transaction hex."},"rbf":{"type":"boolean","description":"Replace-by-fee flag."},"coinSpecificData":{"description":"Raw blockchain-specific transaction data."},"chainExtraData":{"type":"object","required":["payloadType"],"properties":{"payloadType":{"type":"string","description":"Discriminator for normalized chain-specific payloads."},"payload":{}},"description":"Chain-specific extra data."},"tokenTransfers":{"type":"array","items":{"type":"object","required":["type","standard","from","to","contract"],"properties":{"standard":{"type":"string","description":"Token standard name."},"from":{"type":"string","description":"Sender address."},"to":{"type":"string","description":"Recipient address."},"contract":{"type":"string","description":"Token contract address."},"name":{"type":"string","description":"Token name."},"symbol":{"type":"string","description":"Token symbol."},"decimals":{"type":"integer","description":"Token decimals."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Transferred amount in token base units."},"multiTokenValues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^-?[0-9]+$","description":"Token ID."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Token value."}}},"description":"Multi-token values for ERC-1155."}}},"description":"Token transfers."},"ethereumSpecific":{"type":"object","required":["status","nonce"],"properties":{"type":{"type":"integer","description":"Transaction type."},"createdContract":{"type":"string","description":"Address of created contract."},"status":{"type":"integer","description":"1 success, 0 failed, -1 pending."},"error":{"type":"string","description":"Error message if failed."},"nonce":{"type":"integer","format":"int64","description":"Transaction nonce."},"gasLimit":{"type":"integer","format":"int64","description":"Gas limit."},"gasUsed":{"type":"integer","format":"int64","description":"Gas used."},"gasPrice":{"type":"string","pattern":"^-?[0-9]+$","description":"Gas price."},"maxPriorityFeePerGas":{"type":"string","pattern":"^-?[0-9]+$","description":"Max priority fee per gas."},"maxFeePerGas":{"type":"string","pattern":"^-?[0-9]+$","description":"Max fee per gas."},"baseFeePerGas":{"type":"string","pattern":"^-?[0-9]+$","description":"Base fee per gas."},"l1Fee":{"type":"integer","format":"int64","description":"L1 fee (optimistic rollups)."},"l1FeeScalar":{"type":"string","description":"L1 fee scalar."},"l1GasPrice":{"type":"string","pattern":"^-?[0-9]+$","description":"L1 gas price."},"l1GasUsed":{"type":"integer","format":"int64","description":"L1 gas used."},"data":{"type":"string","description":"Input data hex."},"parsedData":{"type":"object","required":["methodId","name"],"properties":{"methodId":{"type":"string","description":"First 4 bytes of the input data."},"name":{"type":"string","description":"Parsed function name when recognized."},"function":{"type":"string","description":"Full function signature."},"params":{"type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Parameter type."},"values":{"type":"array","items":{"type":"string"},"description":"Parameter values."}}},"description":"Parsed parameters."}},"description":"Parsed input data."},"internalTransfers":{"type":"array","items":{"type":"object","required":["type","from","to"],"properties":{"type":{"type":"integer","description":"Transfer type."},"from":{"type":"string","description":"Sender address."},"to":{"type":"string","description":"Recipient address."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Transfer value."}}},"description":"Internal transfers."}},"description":"Ethereum-specific transaction data."},"addressAliases":{"type":"object","additionalProperties":{"type":"object","properties":{"Type":{"type":"string","description":"Alias type."},"Alias":{"type":"string","description":"Alias name."}}},"description":"Address alias map."}},"description":"Transaction in the block."}},"addressAliases":{"type":"object","additionalProperties":{"type":"object","properties":{"Type":{"type":"string","description":"Alias type."},"Alias":{"type":"string","description":"Alias name."}}},"description":"Address alias map for the block."}},"description":"Block with transactions."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get raw block hex.
Returns raw serialized block data.
Load estimate: High for large blocks; payload size grows with the raw
block size.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/rawblock/{blockId}":{"get":{"tags":["BlockBook"],"operationId":"getRawBlock","summary":"Get raw block hex.","description":"Returns raw serialized block data.\n\nLoad estimate: High for large blocks; payload size grows with the raw\nblock size.","parameters":[{"name":"blockId","in":"path","required":true,"description":"Block height or block hash.","schema":{"type":"string"}}],"responses":{"200":{"description":"Raw block data.","content":{"application/json":{"schema":{"type":"object","required":["hex"],"properties":{"hex":{"type":"string","description":"Raw block hex."}}}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get compact block filters.
Returns compact block filters for the script type configured on this
Blockbook instance. Provide either lastN or a from/to range. When to is
omitted for a range, the current best height is used.
Load estimate: High for wide ranges; work and payload grow linearly
with the number of requested filters.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/block-filters/":{"get":{"tags":["BlockBook"],"operationId":"getBlockFilters","summary":"Get compact block filters.","description":"Returns compact block filters for the script type configured on this\nBlockbook instance. Provide either lastN or a from/to range. When to is\nomitted for a range, the current best height is used.\n\nLoad estimate: High for wide ranges; work and payload grow linearly\nwith the number of requested filters.","parameters":[{"name":"scriptType","in":"query","required":true,"description":"Script type configured for block filters on this instance, for example taproot.","schema":{"type":"string"}},{"name":"lastN","in":"query","description":"Return filters for the last N blocks.","schema":{"type":"integer","minimum":1}},{"name":"from","in":"query","description":"First block height in the requested range.","schema":{"type":"integer","minimum":0}},{"name":"to","in":"query","description":"Last block height in the requested range. Defaults to the current best height when omitted.","schema":{"type":"integer","minimum":0}}],"responses":{"200":{"description":"Block filters keyed by block height.","content":{"application/json":{"schema":{"type":"object","required":["P","M","zeroedKey","blockFilters"],"properties":{"P":{"type":"integer","description":"Parameter P."},"M":{"type":"integer","format":"int64","description":"Parameter M."},"zeroedKey":{"type":"boolean","description":"Whether zeroed key was used."},"blockFilters":{"type":"object","additionalProperties":{"type":"object","required":["blockHash","filter"],"properties":{"blockHash":{"type":"string","description":"Block hash."},"filter":{"type":"string","description":"Compact filter hex."}}},"description":"Map of block heights to filter objects."}}}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get a normalized transaction.
Returns normalized transaction data with the same general structure for
all supported coins. Coin-specific fields that do not fit the common
shape are omitted here; use getTransactionSpecific for backend-native
JSON.
Bitcoin-like confirmed transactions include blockHash, confirmations,
blockTime, size/vsize, value/valueIn, fees, and hex. Unconfirmed
transactions can include confirmationETABlocks and
confirmationETASeconds.
Ethereum-like transactions have one vin and one vout, tokenTransfers,
ethereumSpecific execution data, and optional addressAliases. Parsed
input data is included when the 4byte signature can be resolved.
For mined transactions, blockTime is the block timestamp. For mempool
transactions, blockTime is when this Blockbook instance first learned
about the transaction and can differ between instances.
Load estimate: Medium; grows with inputs, outputs, token transfers,
address aliases, and spending=true extra lookups.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/tx/{txid}":{"get":{"tags":["BlockBook"],"operationId":"getTransaction","summary":"Get a normalized transaction.","description":"Returns normalized transaction data with the same general structure for\nall supported coins. Coin-specific fields that do not fit the common\nshape are omitted here; use getTransactionSpecific for backend-native\nJSON.\n\nBitcoin-like confirmed transactions include blockHash, confirmations,\nblockTime, size/vsize, value/valueIn, fees, and hex. Unconfirmed\ntransactions can include confirmationETABlocks and\nconfirmationETASeconds.\n\nEthereum-like transactions have one vin and one vout, tokenTransfers,\nethereumSpecific execution data, and optional addressAliases. Parsed\ninput data is included when the 4byte signature can be resolved.\n\nFor mined transactions, blockTime is the block timestamp. For mempool\ntransactions, blockTime is when this Blockbook instance first learned\nabout the transaction and can differ between instances.\n\nLoad estimate: Medium; grows with inputs, outputs, token transfers,\naddress aliases, and spending=true extra lookups.","parameters":[{"name":"txid","in":"path","required":true,"description":"Transaction id/hash.","schema":{"type":"string"}},{"name":"spending","in":"query","description":"Include spending transaction metadata for UTXO outputs when available.","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Normalized transaction.","content":{"application/json":{"schema":{"type":"object","required":["txid","vin","vout","blockHeight","confirmations","blockTime"],"properties":{"txid":{"type":"string","description":"Transaction id."},"version":{"type":"integer","description":"Transaction version."},"lockTime":{"type":"integer","description":"Lock time."},"vin":{"type":"array","items":{"type":"object","required":["n","isAddress"],"properties":{"txid":{"type":"string","description":"Input transaction id."},"vout":{"type":"integer","minimum":0,"description":"Output index."},"sequence":{"type":"integer","description":"Sequence number."},"n":{"type":"integer","minimum":0,"description":"Input index within the transaction."},"addresses":{"type":"array","items":{"type":"string"},"description":"Array of addresses."},"isAddress":{"type":"boolean","description":"Whether the input is address-based."},"isOwn":{"type":"boolean","description":"Whether this input belongs to the queried account."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Input value in lowest denomination."},"hex":{"type":"string","description":"Script hex."},"asm":{"type":"string","description":"Script assembly."},"coinbase":{"type":"string","description":"Coinbase data if applicable."}}},"description":"Transaction inputs."},"vout":{"type":"array","items":{"type":"object","required":["n","addresses","isAddress"],"properties":{"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Output value."},"n":{"type":"integer","minimum":0,"description":"Output index."},"spent":{"type":"boolean","description":"Whether this output is spent."},"spentTxId":{"type":"string","description":"Spending transaction id if spent."},"spentIndex":{"type":"integer","description":"Spending input index."},"spentHeight":{"type":"integer","description":"Block height where spent."},"hex":{"type":"string","description":"Output script hex."},"asm":{"type":"string","description":"Script assembly."},"addresses":{"oneOf":[{"type":"array","items":{"type":"string"}}],"description":"Recipient addresses."},"isAddress":{"type":"boolean","description":"Whether the output is address-based."},"isOwn":{"type":"boolean","description":"Whether this output belongs to the queried account."},"type":{"type":"string","description":"Output type."}}},"description":"Transaction outputs."},"blockHash":{"type":"string","description":"Block hash containing this transaction."},"blockHeight":{"type":"integer","description":"-1 for unconfirmed transactions."},"confirmations":{"type":"integer","minimum":0,"description":"Number of confirmations."},"confirmationETABlocks":{"type":"integer","description":"Estimated blocks until confirmation."},"confirmationETASeconds":{"type":"integer","format":"int64","description":"Estimated seconds until confirmation."},"blockTime":{"type":"integer","format":"int64","description":"Block timestamp."},"size":{"type":"integer","description":"Transaction size."},"vsize":{"type":"integer","description":"Virtual transaction size."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Total output value."},"valueIn":{"type":"string","pattern":"^-?[0-9]+$","description":"Total input value."},"fees":{"type":"string","pattern":"^-?[0-9]+$","description":"Transaction fees."},"hex":{"type":"string","description":"Serialized transaction hex."},"rbf":{"type":"boolean","description":"Replace-by-fee flag."},"coinSpecificData":{"description":"Raw blockchain-specific transaction data."},"chainExtraData":{"type":"object","required":["payloadType"],"properties":{"payloadType":{"type":"string","description":"Discriminator for normalized chain-specific payloads."},"payload":{}},"description":"Chain-specific extra data."},"tokenTransfers":{"type":"array","items":{"type":"object","required":["type","standard","from","to","contract"],"properties":{"standard":{"type":"string","description":"Token standard name."},"from":{"type":"string","description":"Sender address."},"to":{"type":"string","description":"Recipient address."},"contract":{"type":"string","description":"Token contract address."},"name":{"type":"string","description":"Token name."},"symbol":{"type":"string","description":"Token symbol."},"decimals":{"type":"integer","description":"Token decimals."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Transferred amount in token base units."},"multiTokenValues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^-?[0-9]+$","description":"Token ID."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Token value."}}},"description":"Multi-token values for ERC-1155."}}},"description":"Token transfers."},"ethereumSpecific":{"type":"object","required":["status","nonce"],"properties":{"type":{"type":"integer","description":"Transaction type."},"createdContract":{"type":"string","description":"Address of created contract."},"status":{"type":"integer","description":"1 success, 0 failed, -1 pending."},"error":{"type":"string","description":"Error message if failed."},"nonce":{"type":"integer","format":"int64","description":"Transaction nonce."},"gasLimit":{"type":"integer","format":"int64","description":"Gas limit."},"gasUsed":{"type":"integer","format":"int64","description":"Gas used."},"gasPrice":{"type":"string","pattern":"^-?[0-9]+$","description":"Gas price."},"maxPriorityFeePerGas":{"type":"string","pattern":"^-?[0-9]+$","description":"Max priority fee per gas."},"maxFeePerGas":{"type":"string","pattern":"^-?[0-9]+$","description":"Max fee per gas."},"baseFeePerGas":{"type":"string","pattern":"^-?[0-9]+$","description":"Base fee per gas."},"l1Fee":{"type":"integer","format":"int64","description":"L1 fee (optimistic rollups)."},"l1FeeScalar":{"type":"string","description":"L1 fee scalar."},"l1GasPrice":{"type":"string","pattern":"^-?[0-9]+$","description":"L1 gas price."},"l1GasUsed":{"type":"integer","format":"int64","description":"L1 gas used."},"data":{"type":"string","description":"Input data hex."},"parsedData":{"type":"object","required":["methodId","name"],"properties":{"methodId":{"type":"string","description":"First 4 bytes of the input data."},"name":{"type":"string","description":"Parsed function name when recognized."},"function":{"type":"string","description":"Full function signature."},"params":{"type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Parameter type."},"values":{"type":"array","items":{"type":"string"},"description":"Parameter values."}}},"description":"Parsed parameters."}},"description":"Parsed input data."},"internalTransfers":{"type":"array","items":{"type":"object","required":["type","from","to"],"properties":{"type":{"type":"integer","description":"Transfer type."},"from":{"type":"string","description":"Sender address."},"to":{"type":"string","description":"Recipient address."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Transfer value."}}},"description":"Internal transfers."}},"description":"Ethereum-specific transaction data."},"addressAliases":{"type":"object","additionalProperties":{"type":"object","properties":{"Type":{"type":"string","description":"Alias type."},"Alias":{"type":"string","description":"Alias name."}}},"description":"Address alias map."}},"description":"Normalized transaction object."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get blockchain-specific transaction JSON.
Returns transaction data in the exact backend-specific format. Use this
when a chain exposes fields that are intentionally absent from the
normalized Tx schema.
Load estimate: Medium; payload size depends on chain-specific fields
and transaction complexity.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/tx-specific/{txid}":{"get":{"tags":["BlockBook"],"operationId":"getTransactionSpecific","summary":"Get blockchain-specific transaction JSON.","description":"Returns transaction data in the exact backend-specific format. Use this\nwhen a chain exposes fields that are intentionally absent from the\nnormalized Tx schema.\n\nLoad estimate: Medium; payload size depends on chain-specific fields\nand transaction complexity.","parameters":[{"name":"txid","in":"path","required":true,"description":"Transaction id/hash.","schema":{"type":"string"}}],"responses":{"200":{"description":"Chain-specific transaction payload.","content":{"application/json":{"schema":{"description":"Arbitrary chain-specific transaction payload."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get raw transaction hex.
Unversioned public endpoint exposed by Blockbook for raw transaction
data.
Load estimate: Medium; payload size grows with raw transaction size.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/rawtx/{txid}":{"get":{"tags":["BlockBook"],"operationId":"getRawTransaction","summary":"Get raw transaction hex.","description":"Unversioned public endpoint exposed by Blockbook for raw transaction\ndata.\n\nLoad estimate: Medium; payload size grows with raw transaction size.","parameters":[{"name":"txid","in":"path","required":true,"description":"Transaction id/hash.","schema":{"type":"string"}}],"responses":{"200":{"description":"Raw transaction hex as a JSON string.","content":{"application/json":{"schema":{"type":"string","description":"Raw hex string."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Broadcast a raw transaction using the path.
Broadcasts hex-encoded raw transaction data. Prefer POST for large
payloads.
Load estimate: High; validates and forwards to the backend, with cost
growing with transaction size and backend mempool policy checks.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/sendtx/{hex}":{"get":{"tags":["BlockBook"],"operationId":"sendTransactionByGet","summary":"Broadcast a raw transaction using the path.","description":"Broadcasts hex-encoded raw transaction data. Prefer POST for large\npayloads.\n\nLoad estimate: High; validates and forwards to the backend, with cost\ngrowing with transaction size and backend mempool policy checks.","parameters":[{"name":"hex","in":"path","required":true,"description":"Raw transaction.","schema":{"type":"string","pattern":"^[0-9a-fA-F]+$"}}],"responses":{"200":{"description":"Broadcast result.","content":{"application/json":{"schema":{"type":"object","required":["result"],"properties":{"result":{"type":"string","description":"Broadcast transaction id/hash."}}}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Broadcast a raw transaction using the request body.
Broadcasts hex-encoded raw transaction data from the request body. The
trailing slash is mandatory in the Blockbook handler. POST bodies are
limited to 8 MiB.
Load estimate: High; validates and forwards to the backend, with cost
growing with transaction size and backend mempool policy checks.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/sendtx/":{"post":{"tags":["BlockBook"],"operationId":"sendTransactionByPost","summary":"Broadcast a raw transaction using the request body.","description":"Broadcasts hex-encoded raw transaction data from the request body. The\ntrailing slash is mandatory in the Blockbook handler. POST bodies are\nlimited to 8 MiB.\n\nLoad estimate: High; validates and forwards to the backend, with cost\ngrowing with transaction size and backend mempool policy checks.","requestBody":{"required":true,"content":{"text/plain":{"schema":{"type":"string","pattern":"^[0-9a-fA-F]+$"}}}},"responses":{"200":{"description":"Broadcast result.","content":{"application/json":{"schema":{"type":"object","required":["result"],"properties":{"result":{"type":"string","description":"Broadcast transaction id/hash."}}}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get address/account details.
Returns balances and transactions of an address. Transactions are
sorted by block height with newest blocks first. Response size is
controlled by the details parameter.
At details=basic, mempool transactions are not aggregated:
unconfirmedBalance, unconfirmedSending, and unconfirmedReceiving are
omitted, and unconfirmedTxs reports the raw mempool index size for the
address.
Load estimate: Variable; basic is low, token/tokenBalances and
txids/txslight are medium, and txs can be high as it grows with
pageSize, transactions, token rows, filters, and protocol enrichment.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/address/{address}":{"get":{"tags":["BlockBook"],"operationId":"getAddress","summary":"Get address/account details.","description":"Returns balances and transactions of an address. Transactions are\nsorted by block height with newest blocks first. Response size is\ncontrolled by the details parameter.\n\nAt details=basic, mempool transactions are not aggregated:\nunconfirmedBalance, unconfirmedSending, and unconfirmedReceiving are\nomitted, and unconfirmedTxs reports the raw mempool index size for the\naddress.\n\nLoad estimate: Variable; basic is low, token/tokenBalances and\ntxids/txslight are medium, and txs can be high as it grows with\npageSize, transactions, token rows, filters, and protocol enrichment.","parameters":[{"name":"address","in":"path","required":true,"description":"Chain address.","schema":{"type":"string"}},{"name":"page","in":"query","description":"1-based page index. Values outside safe bounds are sanitized to the closest possible page.","schema":{"type":"integer","minimum":1}},{"name":"pageSize","in":"query","description":"Number of history items per page. The default and maximum for REST account endpoints is 1000.","schema":{"type":"integer","minimum":1,"maximum":1000}},{"name":"from","in":"query","description":"First block height included in account transaction filtering.","schema":{"type":"integer","minimum":0}},{"name":"to","in":"query","description":"Last block height included in account transaction filtering.","schema":{"type":"integer","minimum":0}},{"name":"details","in":"query","description":"Controls how much account data is returned.\nbasic returns balances and counts only.\ntokens adds known token rows.\ntokenBalances returns token rows with balances.\ntxids adds paged transaction ids.\ntxslight adds limited transaction details from the index.\ntxs adds full transaction details.","schema":{"type":"string","default":"txids","enum":["basic","tokens","tokenBalances","txids","txslight","txs"]}},{"name":"filter","in":"query","description":"Filter account history by input/output side, or by numeric token/internal filter id.","schema":{"oneOf":[{"type":"string","enum":["inputs","outputs"]},{"type":"integer","minimum":0}]}},{"name":"contract","in":"query","description":"Contract address used to filter token data.","schema":{"type":"string"}},{"name":"protocols","in":"query","description":"Optional protocol enrichments, comma-separated or repeated. Currently supported value: erc4626. Unknown values are rejected.","style":"form","explode":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"secondary","in":"query","description":"Secondary currency code used to populate fiat values.","schema":{"type":"string"}}],"responses":{"200":{"description":"Address/account details.","content":{"application/json":{"schema":{"type":"object","required":["address","unconfirmedTxs","txs"],"properties":{"page":{"type":"integer","description":"Current page number."},"totalPages":{"type":"integer","description":"Total number of pages."},"itemsOnPage":{"type":"integer","description":"Number of items on this page."},"address":{"type":"string","description":"The queried address."},"balance":{"type":"string","pattern":"^-?[0-9]+$","description":"Confirmed balance."},"totalReceived":{"type":"string","pattern":"^-?[0-9]+$","description":"Total received amount."},"totalSent":{"type":"string","pattern":"^-?[0-9]+$","description":"Total sent amount."},"unconfirmedBalance":{"type":"string","pattern":"^-?[0-9]+$","description":"Unconfirmed balance."},"unconfirmedTxs":{"type":"integer","description":"Number of unconfirmed transactions."},"unconfirmedSending":{"type":"string","pattern":"^-?[0-9]+$","description":"Unconfirmed sending amount."},"unconfirmedReceiving":{"type":"string","pattern":"^-?[0-9]+$","description":"Unconfirmed receiving amount."},"txs":{"type":"integer","description":"Total number of transactions."},"addrTxCount":{"type":"integer","description":"Alternative transaction count field."},"nonTokenTxs":{"type":"integer","description":"Number of non-token transactions."},"internalTxs":{"type":"integer","description":"Number of internal transactions."},"transactions":{"type":"array","items":{"type":"object","required":["txid","vin","vout","blockHeight","confirmations","blockTime"],"properties":{"txid":{"type":"string","description":"Transaction id."},"version":{"type":"integer","description":"Transaction version."},"lockTime":{"type":"integer","description":"Lock time."},"vin":{"type":"array","items":{"type":"object","required":["n","isAddress"],"properties":{"txid":{"type":"string","description":"Input transaction id."},"vout":{"type":"integer","minimum":0,"description":"Output index."},"sequence":{"type":"integer","description":"Sequence number."},"n":{"type":"integer","minimum":0,"description":"Input index within the transaction."},"addresses":{"type":"array","items":{"type":"string"},"description":"Array of addresses."},"isAddress":{"type":"boolean","description":"Whether the input is address-based."},"isOwn":{"type":"boolean","description":"Whether this input belongs to the queried account."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Input value in lowest denomination."},"hex":{"type":"string","description":"Script hex."},"asm":{"type":"string","description":"Script assembly."},"coinbase":{"type":"string","description":"Coinbase data if applicable."}}},"description":"Transaction inputs."},"vout":{"type":"array","items":{"type":"object","required":["n","addresses","isAddress"],"properties":{"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Output value."},"n":{"type":"integer","minimum":0,"description":"Output index."},"spent":{"type":"boolean","description":"Whether this output is spent."},"spentTxId":{"type":"string","description":"Spending transaction id if spent."},"spentIndex":{"type":"integer","description":"Spending input index."},"spentHeight":{"type":"integer","description":"Block height where spent."},"hex":{"type":"string","description":"Output script hex."},"asm":{"type":"string","description":"Script assembly."},"addresses":{"oneOf":[{"type":"array","items":{"type":"string"}}],"description":"Recipient addresses."},"isAddress":{"type":"boolean","description":"Whether the output is address-based."},"isOwn":{"type":"boolean","description":"Whether this output belongs to the queried account."},"type":{"type":"string","description":"Output type."}}},"description":"Transaction outputs."},"blockHash":{"type":"string","description":"Block hash containing this transaction."},"blockHeight":{"type":"integer","description":"-1 for unconfirmed transactions."},"confirmations":{"type":"integer","minimum":0,"description":"Number of confirmations."},"confirmationETABlocks":{"type":"integer","description":"Estimated blocks until confirmation."},"confirmationETASeconds":{"type":"integer","format":"int64","description":"Estimated seconds until confirmation."},"blockTime":{"type":"integer","format":"int64","description":"Block timestamp."},"size":{"type":"integer","description":"Transaction size."},"vsize":{"type":"integer","description":"Virtual transaction size."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Total output value."},"valueIn":{"type":"string","pattern":"^-?[0-9]+$","description":"Total input value."},"fees":{"type":"string","pattern":"^-?[0-9]+$","description":"Transaction fees."},"hex":{"type":"string","description":"Serialized transaction hex."},"rbf":{"type":"boolean","description":"Replace-by-fee flag."},"coinSpecificData":{"description":"Raw blockchain-specific transaction data."},"chainExtraData":{"type":"object","required":["payloadType"],"properties":{"payloadType":{"type":"string","description":"Discriminator for normalized chain-specific payloads."},"payload":{}},"description":"Chain-specific extra data."},"tokenTransfers":{"type":"array","items":{"type":"object","required":["type","standard","from","to","contract"],"properties":{"standard":{"type":"string","description":"Token standard name."},"from":{"type":"string","description":"Sender address."},"to":{"type":"string","description":"Recipient address."},"contract":{"type":"string","description":"Token contract address."},"name":{"type":"string","description":"Token name."},"symbol":{"type":"string","description":"Token symbol."},"decimals":{"type":"integer","description":"Token decimals."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Transferred amount in token base units."},"multiTokenValues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^-?[0-9]+$","description":"Token ID."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Token value."}}},"description":"Multi-token values for ERC-1155."}}},"description":"Token transfers."},"ethereumSpecific":{"type":"object","required":["status","nonce"],"properties":{"type":{"type":"integer","description":"Transaction type."},"createdContract":{"type":"string","description":"Address of created contract."},"status":{"type":"integer","description":"1 success, 0 failed, -1 pending."},"error":{"type":"string","description":"Error message if failed."},"nonce":{"type":"integer","format":"int64","description":"Transaction nonce."},"gasLimit":{"type":"integer","format":"int64","description":"Gas limit."},"gasUsed":{"type":"integer","format":"int64","description":"Gas used."},"gasPrice":{"type":"string","pattern":"^-?[0-9]+$","description":"Gas price."},"maxPriorityFeePerGas":{"type":"string","pattern":"^-?[0-9]+$","description":"Max priority fee per gas."},"maxFeePerGas":{"type":"string","pattern":"^-?[0-9]+$","description":"Max fee per gas."},"baseFeePerGas":{"type":"string","pattern":"^-?[0-9]+$","description":"Base fee per gas."},"l1Fee":{"type":"integer","format":"int64","description":"L1 fee (optimistic rollups)."},"l1FeeScalar":{"type":"string","description":"L1 fee scalar."},"l1GasPrice":{"type":"string","pattern":"^-?[0-9]+$","description":"L1 gas price."},"l1GasUsed":{"type":"integer","format":"int64","description":"L1 gas used."},"data":{"type":"string","description":"Input data hex."},"parsedData":{"type":"object","required":["methodId","name"],"properties":{"methodId":{"type":"string","description":"First 4 bytes of the input data."},"name":{"type":"string","description":"Parsed function name when recognized."},"function":{"type":"string","description":"Full function signature."},"params":{"type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","description":"Parameter type."},"values":{"type":"array","items":{"type":"string"},"description":"Parameter values."}}},"description":"Parsed parameters."}},"description":"Parsed input data."},"internalTransfers":{"type":"array","items":{"type":"object","required":["type","from","to"],"properties":{"type":{"type":"integer","description":"Transfer type."},"from":{"type":"string","description":"Sender address."},"to":{"type":"string","description":"Recipient address."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Transfer value."}}},"description":"Internal transfers."}},"description":"Ethereum-specific transaction data."},"addressAliases":{"type":"object","additionalProperties":{"type":"object","properties":{"Type":{"type":"string","description":"Alias type."},"Alias":{"type":"string","description":"Alias name."}}},"description":"Address alias map."}}},"description":"Full transactions when detail level includes transaction bodies."},"txids":{"type":"array","items":{"type":"string"},"description":"Transaction ids when detail is txids."},"nonce":{"type":"string","description":"Account nonce (Ethereum)."},"usedTokens":{"type":"integer","description":"Number of used addresses for XPUB."},"tokens":{"type":"array","items":{"type":"object","required":["type","standard","name","transfers"],"properties":{"standard":{"type":"string","description":"Token standard name."},"name":{"type":"string","description":"Token name."},"path":{"type":"string","description":"Derivation path for XPUB tokens."},"contract":{"type":"string","description":"Token contract address."},"transfers":{"type":"integer","description":"Number of token transfers."},"symbol":{"type":"string","description":"Token symbol."},"decimals":{"type":"integer","description":"Token decimals."},"balance":{"type":"string","pattern":"^-?[0-9]+$","description":"Token balance."},"baseValue":{"type":"number","description":"Base currency value (e.g., ETH)."},"secondaryValue":{"type":"number","description":"Secondary currency value (e.g., USD)."},"ids":{"type":"array","items":{"type":"string","pattern":"^-?[0-9]+$"},"description":"Token IDs for ERC-1155."},"multiTokenValues":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^-?[0-9]+$","description":"Token ID."},"value":{"type":"string","pattern":"^-?[0-9]+$","description":"Token value."}}},"description":"Multi-token balances."},"totalReceived":{"type":"string","pattern":"^-?[0-9]+$","description":"Total received token amount."},"totalSent":{"type":"string","pattern":"^-?[0-9]+$","description":"Total sent token amount."},"protocols":{"type":"array","description":"Indexed protocol identifiers.","items":{"type":"string"}}}},"description":"Token rows."},"secondaryValue":{"type":"number","description":"Total secondary currency value."},"tokensBaseValue":{"type":"number","description":"Sum of token base values."},"tokensSecondaryValue":{"type":"number","description":"Sum of token secondary values."},"totalBaseValue":{"type":"number","description":"Total base value including tokens."},"totalSecondaryValue":{"type":"number","description":"Total secondary value including tokens."},"contractInfo":{"type":"object","required":["type","standard","contract","name","symbol","decimals","blockHeight"],"properties":{"standard":{"type":"string","description":"Token standard name."},"contract":{"type":"string","description":"Contract address."},"name":{"type":"string","description":"Contract name."},"symbol":{"type":"string","description":"Contract symbol."},"decimals":{"type":"integer","description":"Contract decimals."},"createdInBlock":{"type":"integer","description":"Block where contract was created."},"destructedInBlock":{"type":"integer","description":"Block where contract was destructed."},"rates":{"type":"object","properties":{"baseRate":{"type":"number","description":"Base rate."},"currency":{"type":"string","description":"Currency code."},"secondaryRate":{"type":"number","description":"Secondary rate."}},"description":"Contract rates."},"protocols":{"type":"object","properties":{"erc4626":{"type":"object","properties":{"asset":{"type":"object","required":["contract","decimals"],"properties":{"contract":{"type":"string","description":"Asset contract address."},"name":{"type":"string","description":"Asset name."},"symbol":{"type":"string","description":"Asset symbol."},"decimals":{"type":"integer","description":"Asset decimals."}},"description":"Underlying asset metadata."},"share":{"type":"object","required":["contract","decimals"],"properties":{"contract":{"type":"string","description":"Share contract address."},"name":{"type":"string","description":"Share name."},"symbol":{"type":"string","description":"Share symbol."},"decimals":{"type":"integer","description":"Share decimals."}},"description":"Share token metadata."},"totalAssets":{"type":"string","pattern":"^-?[0-9]+$","description":"Total assets in the vault."},"convertToAssets1Share":{"type":"string","pattern":"^-?[0-9]+$","description":"Conversion rate 1 share to assets."},"convertToShares1Asset":{"type":"string","pattern":"^-?[0-9]+$","description":"Conversion rate 1 asset to shares."},"previewDeposit1Asset":{"type":"string","pattern":"^-?[0-9]+$","description":"Preview of deposit for 1 asset."},"previewRedeem1Share":{"type":"string","pattern":"^-?[0-9]+$","description":"Preview of redeem for 1 share."},"error":{"type":"string","description":"Error message if any."}},"description":"ERC4626 protocol data."}},"description":"Protocol enrichments."},"blockHeight":{"type":"integer","description":"Indexer best block height at time of contract info retrieval."}},"description":"Contract metadata if address is a contract."},"addressAliases":{"type":"object","additionalProperties":{"type":"object","properties":{"Type":{"type":"string","description":"Alias type."},"Alias":{"type":"string","description":"Alias name."}}},"description":"Address alias map."},"stakingPools":{"type":"array","items":{"type":"object","required":["contract","name"],"properties":{"contract":{"type":"string","description":"Staking pool contract address."},"name":{"type":"string","description":"Staking pool name."},"pendingBalance":{"type":"string","pattern":"^-?[0-9]+$","description":"Pending balance."},"pendingDepositedBalance":{"type":"string","pattern":"^-?[0-9]+$","description":"Pending deposited balance."},"depositedBalance":{"type":"string","pattern":"^-?[0-9]+$","description":"Deposited balance."},"withdrawTotalAmount":{"type":"string","pattern":"^-?[0-9]+$","description":"Withdraw total amount."},"claimableAmount":{"type":"string","pattern":"^-?[0-9]+$","description":"Claimable amount."},"restakedReward":{"type":"string","pattern":"^-?[0-9]+$","description":"Restaked reward."},"autocompoundBalance":{"type":"string","pattern":"^-?[0-9]+$","description":"Autocompound balance."}}},"description":"Staking pool data."},"chainExtraData":{"type":"object","required":["payloadType"],"properties":{"payloadType":{"type":"string","description":"Discriminator for chain-specific account data."},"payload":{}},"description":"Chain-specific extra account data."}},"description":"Address/account details."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get account balance history.
Returns balance history points for an address, XPUB, or descriptor.
from and to are Unix timestamps. groupBy is an aggregation interval in
seconds and defaults to 3600. When fiatcurrency is omitted, rates can
contain all available currencies. sentToSelf is the amount sent from an
address to itself or within addresses of the same XPUB.
Load estimate: High; grows with account transaction history, time span,
grouping cardinality, fiat rate lookups, and XPUB/descriptor gap.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/balancehistory/{descriptor}":{"get":{"tags":["BlockBook"],"operationId":"getBalanceHistory","summary":"Get account balance history.","description":"Returns balance history points for an address, XPUB, or descriptor.\nfrom and to are Unix timestamps. groupBy is an aggregation interval in\nseconds and defaults to 3600. When fiatcurrency is omitted, rates can\ncontain all available currencies. sentToSelf is the amount sent from an\naddress to itself or within addresses of the same XPUB.\n\nLoad estimate: High; grows with account transaction history, time span,\ngrouping cardinality, fiat rate lookups, and XPUB/descriptor gap.","parameters":[{"name":"descriptor","in":"path","required":true,"allowReserved":true,"description":"Address, XPUB, or supported descriptor. URL-encode descriptors.","schema":{"type":"string"}},{"name":"from","in":"query","description":"Unix timestamp lower bound.","schema":{"type":"integer","format":"int64"}},{"name":"to","in":"query","description":"Unix timestamp upper bound.","schema":{"type":"integer","format":"int64"}},{"name":"fiatcurrency","in":"query","description":"Optional fiat currency code to include in rates.","schema":{"type":"string"}},{"name":"groupBy","in":"query","description":"Aggregation interval in seconds. Defaults to 3600.","schema":{"type":"integer","minimum":1}},{"name":"gap","in":"query","description":"XPUB/address derivation gap limit.","schema":{"type":"integer","minimum":0,"maximum":10000}}],"responses":{"200":{"description":"Balance history points.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","required":["time","txs"],"properties":{"time":{"type":"integer","format":"int64","description":"Unix timestamp of the interval."},"txs":{"type":"integer","description":"Number of transactions in the interval."},"received":{"type":"string","pattern":"^-?[0-9]+$","description":"Total received amount."},"sent":{"type":"string","pattern":"^-?[0-9]+$","description":"Total sent amount."},"sentToSelf":{"type":"string","pattern":"^-?[0-9]+$","description":"Amount sent to self."},"rates":{"type":"object","additionalProperties":{"type":"number"},"description":"Fiat rates at this interval."},"txid":{"type":"string","description":"Transaction id if interval represents a single transaction."}}},"description":"Balance history data."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get contract metadata.
Returns indexed token/contract metadata and optional current protocol
enrichments such as ERC4626.
blockHeight reflects the indexer's best block at request time.
ERC4626 fields under protocols.erc4626 are fetched through JSON-RPC
calls pinned to that exact blockHeight, so the ERC4626 values are a
consistent snapshot. If a vault is detected but the underlying asset
metadata cannot be resolved, protocols.erc4626 contains error and omits
asset; callers must not derive fiat rates or human-unit exchange rates
from such a partial response.
Load estimate: Medium; indexed metadata is cheap, but optional protocol
enrichment can add backend RPC calls and token metadata lookups.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/contract/{contract}":{"get":{"tags":["BlockBook"],"operationId":"getContractInfo","summary":"Get contract metadata.","description":"Returns indexed token/contract metadata and optional current protocol\nenrichments such as ERC4626.\n\nblockHeight reflects the indexer's best block at request time.\nERC4626 fields under protocols.erc4626 are fetched through JSON-RPC\ncalls pinned to that exact blockHeight, so the ERC4626 values are a\nconsistent snapshot. If a vault is detected but the underlying asset\nmetadata cannot be resolved, protocols.erc4626 contains error and omits\nasset; callers must not derive fiat rates or human-unit exchange rates\nfrom such a partial response.\n\nLoad estimate: Medium; indexed metadata is cheap, but optional protocol\nenrichment can add backend RPC calls and token metadata lookups.","parameters":[{"name":"contract","in":"path","required":true,"description":"Smart contract address.","schema":{"type":"string"}},{"name":"currency","in":"query","description":"Secondary currency code for rates.","schema":{"type":"string"}},{"name":"protocols","in":"query","description":"Optional protocol enrichments, comma-separated or repeated.","style":"form","explode":false,"schema":{"type":"array","items":{"type":"string"}}}],"responses":{"200":{"description":"Contract metadata.","content":{"application/json":{"schema":{"type":"object","required":["type","standard","contract","name","symbol","decimals","blockHeight"],"properties":{"standard":{"type":"string","description":"Token standard."},"contract":{"type":"string","description":"Contract address."},"name":{"type":"string","description":"Contract name."},"symbol":{"type":"string","description":"Contract symbol."},"decimals":{"type":"integer","description":"Decimals."},"createdInBlock":{"type":"integer","description":"Creation block."},"destructedInBlock":{"type":"integer","description":"Destruction block."},"rates":{"type":"object","properties":{"baseRate":{"type":"number","description":"Base rate."},"currency":{"type":"string","description":"Currency code."},"secondaryRate":{"type":"number","description":"Secondary rate."}},"description":"Contract rates."},"protocols":{"type":"object","properties":{"erc4626":{"type":"object","properties":{"asset":{"type":"object","required":["contract","decimals"],"properties":{"contract":{"type":"string","description":"Asset contract."},"name":{"type":"string","description":"Asset name."},"symbol":{"type":"string","description":"Asset symbol."},"decimals":{"type":"integer","description":"Asset decimals."}},"description":"Underlying asset."},"share":{"type":"object","required":["contract","decimals"],"properties":{"contract":{"type":"string","description":"Share contract."},"name":{"type":"string","description":"Share name."},"symbol":{"type":"string","description":"Share symbol."},"decimals":{"type":"integer","description":"Share decimals."}},"description":"Share token."},"totalAssets":{"type":"string","pattern":"^-?[0-9]+$","description":"Total assets."},"convertToAssets1Share":{"type":"string","pattern":"^-?[0-9]+$","description":"Conversion rate 1 share to assets."},"convertToShares1Asset":{"type":"string","pattern":"^-?[0-9]+$","description":"Conversion rate 1 asset to shares."},"previewDeposit1Asset":{"type":"string","pattern":"^-?[0-9]+$","description":"Preview deposit."},"previewRedeem1Share":{"type":"string","pattern":"^-?[0-9]+$","description":"Preview redeem."},"error":{"type":"string","description":"Error."}},"description":"ERC4626 data."}},"description":"Protocols."},"blockHeight":{"type":"integer","description":"Indexer best block height."}},"description":"Contract metadata."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Estimate a fee target.
Returns backend fee estimation for the requested confirmation target.
Load estimate: Low; a small backend fee estimate lookup.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/estimatefee/{blocks}":{"get":{"tags":["BlockBook"],"operationId":"estimateFee","summary":"Estimate a fee target.","description":"Returns backend fee estimation for the requested confirmation target.\n\nLoad estimate: Low; a small backend fee estimate lookup.","parameters":[{"name":"blocks","in":"path","required":true,"description":"Confirmation target in blocks.","schema":{"type":"integer","minimum":1}},{"name":"conservative","in":"query","description":"Use conservative smart fee estimation where supported.","schema":{"type":"boolean","default":true}}],"responses":{"200":{"description":"Decimal fee estimate in chain base currency.","content":{"application/json":{"schema":{"type":"object","required":["result"],"properties":{"result":{"type":"string","description":"Result string, usually a decimal amount in chain base currency."}}}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get fee statistics for a block.
Returns fee statistics for transactions in one block.
Load estimate: Medium to high; grows with the number of transactions
in the requested block.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/feestats/{blockId}":{"get":{"tags":["BlockBook"],"operationId":"getFeeStats","summary":"Get fee statistics for a block.","description":"Returns fee statistics for transactions in one block.\n\nLoad estimate: Medium to high; grows with the number of transactions\nin the requested block.","parameters":[{"name":"blockId","in":"path","required":true,"description":"Block height or block hash.","schema":{"type":"string"}}],"responses":{"200":{"description":"Fee statistics.","content":{"application/json":{"schema":{"type":"object","required":["txCount","averageFeePerKb","decilesFeePerKb"],"properties":{"txCount":{"type":"integer","description":"Number of transactions in the block."},"totalFeesSat":{"type":"string","pattern":"^-?[0-9]+$","description":"Total fees in satoshis."},"averageFeePerKb":{"type":"number","description":"Average fee per kilobyte."},"decilesFeePerKb":{"type":"array","items":{"type":"number"},"description":"Deciles of fee per kilobyte."}},"description":"Fee statistics for a block."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get current or historical fiat rates.
Returns currency rates for the requested currency and date. If a rate
is unavailable for the exact timestamp, the closest available rate can
be returned. Responses include the actual rate timestamp. Without a
currency parameter, all available currencies can be returned. A rate of
-1 marks an unavailable or invalid currency for that timestamp.
Load estimate: Low to medium; specific currency lookups are cheap,
while omitted currency and token lookups increase response size.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/tickers/":{"get":{"tags":["BlockBook"],"operationId":"getFiatTicker","summary":"Get current or historical fiat rates.","description":"Returns currency rates for the requested currency and date. If a rate\nis unavailable for the exact timestamp, the closest available rate can\nbe returned. Responses include the actual rate timestamp. Without a\ncurrency parameter, all available currencies can be returned. A rate of\n-1 marks an unavailable or invalid currency for that timestamp.\n\nLoad estimate: Low to medium; specific currency lookups are cheap,\nwhile omitted currency and token lookups increase response size.","parameters":[{"name":"currency","in":"query","description":"Optional currency code. When omitted, all available rates can be returned.","schema":{"type":"string"}},{"name":"timestamp","in":"query","description":"Unix timestamp for historical rates.","schema":{"type":"integer","format":"int64"}},{"name":"block","in":"query","description":"Block height or hash whose timestamp should be used for historical rates.","schema":{"type":"string"}},{"name":"token","in":"query","description":"Optional token symbol or contract/address key for token-specific rates.","schema":{"type":"string"}}],"responses":{"200":{"description":"Fiat rate ticker.","content":{"application/json":{"schema":{"type":"object","required":["rates"],"properties":{"ts":{"type":"integer","format":"int64","description":"Unix timestamp of the rate."},"rates":{"type":"object","additionalProperties":{"type":"number"},"description":"Map of currency codes to rates."},"error":{"type":"string","description":"Error message if any."}},"description":"Fiat rate ticker."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get fiat rates for multiple timestamps.
Returns fiat rate tickers for a comma-separated list of Unix
timestamps.
Load estimate: Medium; work and payload grow linearly with timestamp
count, plus token/currency selection.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/multi-tickers/":{"get":{"tags":["BlockBook"],"operationId":"getFiatTickersForTimestamps","summary":"Get fiat rates for multiple timestamps.","description":"Returns fiat rate tickers for a comma-separated list of Unix\ntimestamps.\n\nLoad estimate: Medium; work and payload grow linearly with timestamp\ncount, plus token/currency selection.","parameters":[{"name":"timestamp","in":"query","required":true,"description":"Comma-separated Unix timestamps.","schema":{"type":"string","pattern":"^[0-9]+(,[0-9]+)*$"}},{"name":"currency","in":"query","description":"Optional currency code.","schema":{"type":"string"}},{"name":"token","in":"query","description":"Optional token symbol or contract/address key.","schema":{"type":"string"}}],"responses":{"200":{"description":"Fiat rate tickers.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","required":["rates"],"properties":{"ts":{"type":"integer","format":"int64","description":"Unix timestamp."},"rates":{"type":"object","additionalProperties":{"type":"number"},"description":"Currency rates."},"error":{"type":"string","description":"Error if any."}},"description":"Single fiat ticker."},"description":"List of fiat tickers."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}Get currencies available for a timestamp.
Returns available secondary currencies for a date together with the
actual rate timestamp.
Load estimate: Low to medium; token lookups and wide currency lists
increase response size.
{"openapi":"3.0.0","info":{"title":"Blockbook API","version":"2.0.0-draft"},"servers":[{"url":"https://arb-blockbook.nownodes.io"}],"security":[{"api-keyAuth":[]}],"components":{"securitySchemes":{"api-keyAuth":{"type":"apiKey","in":"header","name":"api-key"}}},"paths":{"/api/v2/tickers-list/":{"get":{"tags":["BlockBook"],"operationId":"getFiatTickersList","summary":"Get currencies available for a timestamp.","description":"Returns available secondary currencies for a date together with the\nactual rate timestamp.\n\nLoad estimate: Low to medium; token lookups and wide currency lists\nincrease response size.","parameters":[{"name":"timestamp","in":"query","required":true,"description":"Unix timestamp for the requested currency list.","schema":{"type":"integer","format":"int64"}},{"name":"token","in":"query","description":"Optional token symbol or contract/address key.","schema":{"type":"string"}}],"responses":{"200":{"description":"Available currencies.","content":{"application/json":{"schema":{"type":"object","required":["available_currencies"],"properties":{"ts":{"type":"integer","format":"int64","description":"Unix timestamp of the available currencies."},"available_currencies":{"type":"array","items":{"type":"string"},"description":"List of currency codes."},"error":{"type":"string","description":"Error if any."}},"description":"Available currencies object."}}}},"default":{"description":"Public API error.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"string","description":"Human-readable error message."}}}}}}}}}}}