{ "openapi": "3.1.0", "info": { "title": "Blockbook REST API", "description": "Quicknode Blockbook REST API reference", "version": "1.0.0" }, "paths": { "/address/{address}": { "get": { "operationId": "get_address_by_address", "summary": "Returns balances and transactions of an address.", "tags": [ "address" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-address" }, "description": "Returns balances and transactions of an address. Transactions are sorted by block height, newest first.", "parameters": [ { "name": "address", "in": "path", "schema": { "type": "string", "description": "A Bitcoin address to query." }, "required": true, "description": "A Bitcoin address to query." }, { "name": "page", "in": "query", "schema": { "type": "integer", "description": "The page number to retrieve for paginated results." }, "description": "The page number to retrieve for paginated results." }, { "name": "size", "in": "query", "schema": { "type": "integer", "description": "The number of transactions per page." }, "description": "The number of transactions per page." }, { "name": "fromHeight", "in": "query", "schema": { "type": "integer", "description": "Filter transactions from this block height (inclusive)." }, "description": "Filter transactions from this block height (inclusive)." }, { "name": "details", "in": "query", "schema": { "type": "string", "description": "Level of detail for returned transactions. Must be one of: basic, txids, or txs." }, "description": "Level of detail for returned transactions. Must be one of: basic, txids, or txs." }, { "name": "filter", "in": "query", "schema": { "type": "string", "description": "Filter transactions by token. Provide a token's contract address, or `0` to return only transactions with no token transfers." }, "description": "Filter transactions by token. Provide a token's contract address, or `0` to return only transactions with no token transfers." }, { "name": "contract", "in": "query", "schema": { "type": "string", "description": "Limit returned token balances and transactions to the specified token contract address." }, "description": "Limit returned token balances and transactions to the specified token contract address." }, { "name": "protocols", "in": "query", "schema": { "type": "string", "description": "Comma-separated list of token protocols to include (for example `erc20`)." }, "description": "Comma-separated list of token protocols to include (for example `erc20`)." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "page": { "type": "integer", "description": "Current page number" }, "totalPages": { "type": "integer", "description": "Total number of pages" }, "itemsOnPage": { "type": "integer", "description": "Number of items on each page" }, "address": { "type": "string", "description": "The queried address" }, "balance": { "type": "string", "description": "Current confirmed balance in satoshis" }, "totalReceived": { "type": "string", "description": "Total amount received in satoshis" }, "totalSent": { "type": "string", "description": "Total amount sent in satoshis" }, "unconfirmedBalance": { "type": "string", "description": "Unconfirmed balance in satoshis" }, "unconfirmedTxs": { "type": "integer", "description": "Number of unconfirmed transactions" }, "txs": { "type": "integer", "description": "Total number of transactions" }, "txids": { "type": "array", "items": {}, "description": "List of transaction IDs associated with the address" } } } } } } } } }, "/balancehistory/{xpub_or_address}": { "get": { "operationId": "get_balancehistory_by_xpub_or_address", "summary": "Returns the balance history for the specified address or XPUB.", "tags": [ "balancehistory" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-balancehistory" }, "description": "Returns the balance history for the specified address or XPUB. The response is an array of time-interval records showing received, sent, and self-sent amounts.", "parameters": [ { "name": "xpub_or_address", "in": "path", "schema": { "type": "string", "description": "A Bitcoin address or XPUB to query." }, "required": true, "description": "A Bitcoin address or XPUB to query." }, { "name": "from", "in": "query", "schema": { "type": "integer", "description": "The starting Unix timestamp (in seconds) for the time range." }, "description": "The starting Unix timestamp (in seconds) for the time range." }, { "name": "to", "in": "query", "schema": { "type": "integer", "description": "The ending Unix timestamp (in seconds) for the time range." }, "description": "The ending Unix timestamp (in seconds) for the time range." }, { "name": "fiatcurrency", "in": "query", "schema": { "type": "string", "description": "Fiat currency code for exchange rate conversion (e.g., usd, eur)." }, "description": "Fiat currency code for exchange rate conversion (e.g., usd, eur)." }, { "name": "groupBy", "in": "query", "schema": { "type": "integer", "description": "The time interval in seconds for grouping balance data (e.g., 3600 for hourly)." }, "description": "The time interval in seconds for grouping balance data (e.g., 3600 for hourly)." }, { "name": "gap", "in": "query", "schema": { "type": "integer", "description": "The gap limit used when deriving addresses from an extended public key (xpub). Defaults to 20." }, "description": "The gap limit used when deriving addresses from an extended public key (xpub). Defaults to 20." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "time": { "type": "integer", "description": "Unix timestamp for the time interval" }, "txs": { "type": "integer", "description": "Number of transactions in the interval" }, "received": { "type": "string", "description": "Total amount received in satoshis during the interval" }, "sent": { "type": "string", "description": "Total amount sent in satoshis during the interval" }, "sentToSelf": { "type": "string", "description": "Amount sent to self in satoshis during the interval" }, "rates": { "type": "object", "properties": { "{currency}": { "type": "integer", "description": "Exchange rate in the requested fiat currency" } }, "description": "Exchange rates at the time of the interval" } } } } } } } } }, "/block/{block}": { "get": { "operationId": "get_block_by_block", "summary": "Returns detailed block data including transaction objects for the specified block hash.", "tags": [ "block" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-block" }, "parameters": [ { "name": "block", "in": "path", "schema": { "type": "string", "description": "The hash of the block to retrieve." }, "required": true, "description": "The hash of the block to retrieve." }, { "name": "page", "in": "query", "schema": { "type": "integer", "description": "The page number for paginated transaction results within the block." }, "description": "The page number for paginated transaction results within the block." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "page": { "type": "integer", "description": "Current page number" }, "totalPages": { "type": "integer", "description": "Total number of pages" }, "itemsOnPage": { "type": "integer", "description": "Number of items on each page" }, "hash": { "type": "string", "description": "Block hash" }, "previousBlockHash": { "type": "string", "description": "Hash of the previous block" }, "nextBlockHash": { "type": "string", "description": "Hash of the next block" }, "height": { "type": "integer", "description": "Block height" }, "confirmations": { "type": "integer", "description": "Number of confirmations" }, "size": { "type": "integer", "description": "Block size in bytes" }, "time": { "type": "integer", "description": "Unix timestamp of when the block was mined" }, "version": { "type": "integer", "description": "Block version" }, "merkleRoot": { "type": "string", "description": "Merkle root of the block" }, "nonce": { "type": "string", "description": "Block nonce" }, "bits": { "type": "string", "description": "Difficulty target in compact format" }, "difficulty": { "type": "string", "description": "Block difficulty" }, "txCount": { "type": "integer", "description": "Total number of transactions in the block" }, "txs": { "type": "array", "items": { "type": "object", "properties": { "txid": { "type": "string", "description": "Transaction ID" }, "vin": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "integer", "description": "Input index" }, "isAddress": { "type": "boolean", "description": "Whether the input is from an address" }, "value": { "type": "string", "description": "Input value in satoshis" } } }, "description": "Array of transaction inputs" }, "vout": { "type": "array", "items": { "type": "object", "properties": { "value": { "type": "string", "description": "Output value in satoshis" }, "n": { "type": "integer", "description": "Output index" }, "spent": { "type": "boolean", "description": "Whether the output has been spent" }, "addresses": { "type": "array", "items": {}, "description": "Output addresses" }, "isAddress": { "type": "boolean", "description": "Whether the output is to an address" } } }, "description": "Array of transaction outputs" }, "blockHash": { "type": "string", "description": "Block hash containing this transaction" }, "blockHeight": { "type": "integer", "description": "Block height" }, "confirmations": { "type": "integer", "description": "Number of confirmations" }, "blockTime": { "type": "integer", "description": "Block timestamp" }, "value": { "type": "string", "description": "Total output value in satoshis" }, "valueIn": { "type": "string", "description": "Total input value in satoshis" }, "fees": { "type": "string", "description": "Transaction fee in satoshis" } } }, "description": "Array of transactions in the block" } } } } } } } } }, "/block-index/{block_height}": { "get": { "operationId": "get_block_index_by_block_height", "summary": "Returns the block hash for the specified block height.", "tags": [ "block-index" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-block-index" }, "parameters": [ { "name": "block_height", "in": "path", "schema": { "type": "integer", "description": "The height of the block to look up." }, "required": true, "description": "The height of the block to look up." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "blockHash": { "type": "object", "properties": { "blockHash": { "type": "string", "description": "The hash of the block at the specified height" } }, "description": "Object containing the block hash for the specified height" } } } } } } } } }, "/estimatefee/{blocks}": { "get": { "operationId": "get_estimatefee_by_blocks", "summary": "Returns the estimated transaction fee for a target confirmation window.", "tags": [ "estimatefee" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-estimatefee" }, "description": "Returns the estimated transaction fee for a target confirmation window. On UTXO chains this is a fee rate per kilobyte; on EVM chains it is the suggested gas price.", "parameters": [ { "name": "blocks", "in": "path", "schema": { "type": "integer", "description": "The confirmation target: the number of blocks within which the transaction should confirm." }, "required": true, "description": "The confirmation target: the number of blocks within which the transaction should confirm." }, { "name": "conservative", "in": "query", "schema": { "type": "boolean", "description": "When true, returns a more conservative (higher) estimate that is less sensitive to short-term mempool changes. Defaults to true." }, "description": "When true, returns a more conservative (higher) estimate that is less sensitive to short-term mempool changes. Defaults to true." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "result": { "type": "string", "description": "The estimated fee. On UTXO chains this is a fee rate per kilobyte (in the main unit, e.g. BTC/kB); on EVM chains it is the suggested gas price (in the main unit, e.g. ETH)." } } } } } } } } }, "/feestats/{block_id}": { "get": { "operationId": "get_feestats_by_block_id", "summary": "Returns fee statistics for a block, including transaction count, total fees, average fee per kilobyte, and the fee-per-k", "tags": [ "feestats" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-feestats" }, "description": "Returns fee statistics for a block, including transaction count, total fees, average fee per kilobyte, and the fee-per-kilobyte distribution by decile.", "parameters": [ { "name": "block_id", "in": "path", "schema": { "type": "string", "description": "The block height or block hash to query." }, "required": true, "description": "The block height or block hash to query." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "txCount": { "type": "integer", "description": "Number of transactions in the block." }, "totalFeesSat": { "type": "string", "description": "Total fees paid in the block, in satoshis." }, "averageFeePerKb": { "type": "integer", "description": "Average fee per kilobyte across the block, in satoshis." }, "decilesFeePerKb": { "type": "array", "items": {}, "description": "Fee-per-kilobyte distribution split into deciles (11 values, lowest to highest), in satoshis." } } } } } } } } }, "/multi-tickers": { "get": { "operationId": "get_multi_tickers", "summary": "Returns exchange rates (fiat and crypto) for one or more timestamps in a single request.", "tags": [ "multi-tickers" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-multi-tickers" }, "parameters": [ { "name": "timestamp", "in": "query", "schema": { "type": "string", "description": "One or more Unix timestamps (in seconds), comma-separated, for which to return rates." }, "required": true, "description": "One or more Unix timestamps (in seconds), comma-separated, for which to return rates." }, { "name": "currency", "in": "query", "schema": { "type": "string", "description": "Return only the rate for this currency code (for example `usd`). When omitted, all available rates are returned." }, "description": "Return only the rate for this currency code (for example `usd`). When omitted, all available rates are returned." }, { "name": "token", "in": "query", "schema": { "type": "string", "description": "Return the rate for the specified token contract address instead of the base coin." }, "description": "Return the rate for the specified token contract address instead of the base coin." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "ts": { "type": "integer", "description": "Unix timestamp of the ticker entry. The result is an array of these objects, one per requested timestamp." }, "rates": { "type": "object", "description": "Map of currency/token code to its exchange rate at that timestamp." } } } } } } } } }, "/rawblock/{block_id}": { "get": { "operationId": "get_rawblock_by_block_id", "summary": "Returns the raw, hex-encoded serialized data for a block, specified by height or hash.", "tags": [ "rawblock" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-rawblock" }, "parameters": [ { "name": "block_id", "in": "path", "schema": { "type": "string", "description": "The block height or block hash to query." }, "required": true, "description": "The block height or block hash to query." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "hex": { "type": "string", "description": "The raw, hex-encoded serialized block." } } } } } } } } }, "/sendtx": { "get": { "operationId": "get_sendtx", "summary": "Broadcasts a signed raw transaction to the Bitcoin network and returns the resulting transaction hash.", "tags": [ "sendtx" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-sendtx" }, "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "hex": { "type": "string", "description": "The signed raw transaction in hex-encoded format." } }, "required": [ "hex" ] } } } }, "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "result": { "type": "string", "description": "Transaction ID of the broadcasted transaction" } } } } } } } } }, "/tickers": { "get": { "operationId": "get_tickers", "summary": "Returns currency exchange rates for the specified date and currency.", "tags": [ "tickers" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-tickers" }, "description": "Returns currency exchange rates for the specified date and currency. If a rate is unavailable for the requested timestamp, the closest available rate is returned.", "parameters": [ { "name": "timestamp", "in": "query", "schema": { "type": "integer", "description": "Unix timestamp (in seconds) for the date to query rates. If not provided, returns the latest available rates." }, "description": "Unix timestamp (in seconds) for the date to query rates. If not provided, returns the latest available rates." }, { "name": "block", "in": "query", "schema": { "type": "integer", "description": "Return fiat rates as of the specified block height." }, "description": "Return fiat rates as of the specified block height." }, { "name": "token", "in": "query", "schema": { "type": "string", "description": "Return the rate for the specified token contract address instead of the base coin." }, "description": "Return the rate for the specified token contract address instead of the base coin." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "ts": { "type": "integer", "description": "Unix timestamp of the rates" }, "rates": { "type": "object", "properties": { "{currency}": { "type": "integer", "description": "Exchange rate in the given fiat currency. All available currencies are listed (e.g., usd, eur, gbp, jpy, etc.)" } }, "description": "Exchange rates for all available fiat currencies" } } } } } } } } }, "/tickers-list": { "get": { "operationId": "get_tickers_list", "summary": "Returns a list of available fiat currency rate tickers for the specified date, along with the data timestamp.", "tags": [ "tickers-list" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-tickers-list" }, "parameters": [ { "name": "timestamp", "in": "query", "schema": { "type": "integer", "description": "Unix timestamp (in seconds) for the date to query available tickers. If not provided, returns the latest available tickers." }, "description": "Unix timestamp (in seconds) for the date to query available tickers. If not provided, returns the latest available tickers." }, { "name": "token", "in": "query", "schema": { "type": "string", "description": "Return the rate for the specified token contract address instead of the base coin." }, "description": "Return the rate for the specified token contract address instead of the base coin." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "ts": { "type": "integer", "description": "Unix timestamp of the available rates" }, "available_currencies": { "type": "array", "items": {}, "description": "List of available fiat currency codes" } } } } } } } } }, "/tx/{txid}": { "get": { "operationId": "get_tx_by_txid", "summary": "Returns the transaction object for the specified transaction hash, including inputs, outputs, and block information.", "tags": [ "tx" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-tx" }, "parameters": [ { "name": "txid", "in": "path", "schema": { "type": "string", "description": "The transaction hash to look up." }, "required": true, "description": "The transaction hash to look up." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "txid": { "type": "string", "description": "Transaction ID" }, "version": { "type": "integer", "description": "Transaction version" }, "vin": { "type": "array", "items": { "type": "object", "properties": { "n": { "type": "integer", "description": "Input index" }, "sequence": { "type": "integer", "description": "Sequence number" }, "isAddress": { "type": "boolean", "description": "Whether the input is from an address" }, "coinbase": { "type": "string", "description": "Coinbase data (for coinbase transactions)" } } }, "description": "Array of transaction inputs" }, "vout": { "type": "array", "items": { "type": "object", "properties": { "value": { "type": "string", "description": "Output value in satoshis" }, "n": { "type": "integer", "description": "Output index" }, "spent": { "type": "boolean", "description": "Whether the output has been spent" }, "hex": { "type": "string", "description": "Output script hex" }, "addresses": { "type": "array", "items": {}, "description": "Output addresses" }, "isAddress": { "type": "boolean", "description": "Whether the output is to an address" } } }, "description": "Array of transaction outputs" }, "blockHash": { "type": "string", "description": "Block hash containing this transaction" }, "blockHeight": { "type": "integer", "description": "Block height of the transaction" }, "confirmations": { "type": "integer", "description": "Number of confirmations" }, "blockTime": { "type": "integer", "description": "Unix timestamp of the block" }, "size": { "type": "integer", "description": "Transaction size in bytes" }, "vsize": { "type": "integer", "description": "Virtual transaction size" }, "value": { "type": "string", "description": "Total output value in satoshis" }, "valueIn": { "type": "string", "description": "Total input value in satoshis" }, "fees": { "type": "string", "description": "Transaction fee in satoshis" }, "hex": { "type": "string", "description": "Raw transaction hex" } } } } } } } } }, "/tx-specific/{txid_specific}": { "get": { "operationId": "get_tx_specific_by_txid_specific", "summary": "Returns the raw transaction data in the exact format provided by the Bitcoin backend, including full script details.", "tags": [ "tx-specific" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-tx-specific" }, "parameters": [ { "name": "txid_specific", "in": "path", "schema": { "type": "string", "description": "The transaction hash to look up." }, "required": true, "description": "The transaction hash to look up." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "txid": { "type": "string", "description": "Transaction ID" }, "hash": { "type": "string", "description": "Transaction hash (differs from txid for SegWit transactions)" }, "version": { "type": "integer", "description": "Transaction version" }, "size": { "type": "integer", "description": "Transaction size in bytes" }, "vsize": { "type": "integer", "description": "Virtual transaction size" }, "weight": { "type": "integer", "description": "Transaction weight units" }, "locktime": { "type": "integer", "description": "Transaction locktime" }, "vin": { "type": "array", "items": { "type": "object", "properties": { "coinbase": { "type": "string", "description": "Coinbase data (for coinbase transactions)" }, "txid": { "type": "string", "description": "Previous transaction ID (for non-coinbase)" }, "vout": { "type": "integer", "description": "Previous output index (for non-coinbase)" }, "scriptSig": { "type": "object", "properties": { "asm": { "type": "string", "description": "Script in assembly format" }, "hex": { "type": "string", "description": "Script in hex format" } }, "description": "Input script signature" }, "txinwitness": { "type": "array", "items": {}, "description": "Segregated Witness data" }, "sequence": { "type": "integer", "description": "Sequence number" } } }, "description": "Array of transaction inputs" }, "vout": { "type": "array", "items": { "type": "object", "properties": { "value": { "type": "number", "description": "Output value in BTC" }, "n": { "type": "integer", "description": "Output index" }, "scriptPubKey": { "type": "object", "properties": { "asm": { "type": "string", "description": "Script in assembly format" }, "desc": { "type": "string", "description": "Output descriptor" }, "hex": { "type": "string", "description": "Script in hex format" }, "address": { "type": "string", "description": "Output address" }, "type": { "type": "string", "description": "Script type (e.g., witness_v0_keyhash, nulldata)" } }, "description": "Output script" } } }, "description": "Array of transaction outputs" }, "hex": { "type": "string", "description": "Raw transaction hex" }, "blockhash": { "type": "string", "description": "Block hash containing this transaction" }, "confirmations": { "type": "integer", "description": "Number of confirmations" }, "time": { "type": "integer", "description": "Transaction time as Unix timestamp" }, "blocktime": { "type": "integer", "description": "Block time as Unix timestamp" } } } } } } } } }, "/utxo/{xpub_or_address}": { "get": { "operationId": "get_utxo_by_xpub_or_address", "summary": "Returns unspent transaction outputs (UTXOs) for an address or XPUB.", "tags": [ "utxo" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-utxo" }, "description": "Returns unspent transaction outputs (UTXOs) for an address or XPUB. By default, includes both confirmed and unconfirmed outputs.", "parameters": [ { "name": "xpub_or_address", "in": "path", "schema": { "type": "string", "description": "A Bitcoin address or XPUB to query UTXOs for." }, "required": true, "description": "A Bitcoin address or XPUB to query UTXOs for." }, { "name": "confirmed", "in": "query", "schema": { "type": "boolean", "description": "When set to true, only returns confirmed UTXOs." }, "description": "When set to true, only returns confirmed UTXOs." }, { "name": "gap", "in": "query", "schema": { "type": "integer", "description": "The gap limit used when deriving addresses from an extended public key (xpub). Defaults to 20." }, "description": "The gap limit used when deriving addresses from an extended public key (xpub). Defaults to 20." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "txid": { "type": "string", "description": "Transaction ID of the UTXO" }, "vout": { "type": "integer", "description": "Output index in the transaction" }, "value": { "type": "string", "description": "UTXO value in satoshis" }, "height": { "type": "integer", "description": "Block height where the UTXO was created" }, "confirmations": { "type": "integer", "description": "Number of confirmations" } } } } } } } } }, "/xpub/{xpub}": { "get": { "operationId": "get_xpub_by_xpub", "summary": "Returns balances and transactions for an XPUB or output descriptor.", "tags": [ "xpub" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/api-v2-xpub" }, "description": "Returns balances and transactions for an XPUB or output descriptor. Useful for querying all addresses derived from a single extended public key.", "parameters": [ { "name": "xpub", "in": "path", "schema": { "type": "string", "description": "An extended public key (XPUB) or output descriptor." }, "required": true, "description": "An extended public key (XPUB) or output descriptor." }, { "name": "page", "in": "query", "schema": { "type": "integer", "description": "The page number to retrieve for paginated results." }, "description": "The page number to retrieve for paginated results." }, { "name": "size", "in": "query", "schema": { "type": "integer", "description": "The number of transactions per page." }, "description": "The number of transactions per page." }, { "name": "fromHeight", "in": "query", "schema": { "type": "integer", "description": "Filter transactions from this block height (inclusive)." }, "description": "Filter transactions from this block height (inclusive)." }, { "name": "details", "in": "query", "schema": { "type": "string", "description": "Level of detail for returned transactions. Must be one of: basic, txids, or txs." }, "description": "Level of detail for returned transactions. Must be one of: basic, txids, or txs." }, { "name": "filter", "in": "query", "schema": { "type": "string", "description": "Filter transactions by token. Provide a token's contract address, or `0` to return only transactions with no token transfers." }, "description": "Filter transactions by token. Provide a token's contract address, or `0` to return only transactions with no token transfers." }, { "name": "contract", "in": "query", "schema": { "type": "string", "description": "Limit returned token balances and transactions to the specified token contract address." }, "description": "Limit returned token balances and transactions to the specified token contract address." }, { "name": "protocols", "in": "query", "schema": { "type": "string", "description": "Comma-separated list of token protocols to include (for example `erc20`)." }, "description": "Comma-separated list of token protocols to include (for example `erc20`)." }, { "name": "gap", "in": "query", "schema": { "type": "integer", "description": "The gap limit used when deriving addresses from an extended public key (xpub). Defaults to 20." }, "description": "The gap limit used when deriving addresses from an extended public key (xpub). Defaults to 20." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "page": { "type": "integer", "description": "Current page number" }, "totalPages": { "type": "integer", "description": "Total number of pages" }, "itemsOnPage": { "type": "integer", "description": "Number of items on each page" }, "address": { "type": "string", "description": "The queried xpub key" }, "balance": { "type": "string", "description": "Current confirmed balance in satoshis" }, "totalReceived": { "type": "string", "description": "Total amount received in satoshis" }, "totalSent": { "type": "string", "description": "Total amount sent in satoshis" }, "unconfirmedBalance": { "type": "string", "description": "Unconfirmed balance in satoshis" }, "unconfirmedTxs": { "type": "integer", "description": "Number of unconfirmed transactions" }, "txs": { "type": "integer", "description": "Total number of transactions" }, "txids": { "type": "array", "items": {}, "description": "List of transaction IDs" }, "tokens": { "type": "array", "items": { "type": "object", "properties": { "type": { "type": "string", "description": "Token type (e.g., XPUBAddress)" }, "name": { "type": "string", "description": "Derived address" }, "path": { "type": "string", "description": "BIP32 derivation path" }, "transfers": { "type": "integer", "description": "Number of transfers for this address" }, "decimals": { "type": "integer", "description": "Decimal places" }, "balance": { "type": "string", "description": "Balance of this derived address" }, "totalReceived": { "type": "string", "description": "Total received by this derived address" }, "totalSent": { "type": "string", "description": "Total sent from this derived address" } } }, "description": "Derived addresses from the xpub" } } } } } } } } }, "/collections/{page}": { "get": { "operationId": "get_collections_by_page", "summary": "Fetches a paginated list of inscription collections.", "tags": [ "collections" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/collections-page" }, "parameters": [ { "name": "page", "in": "path", "schema": { "type": "integer", "description": "The page number for paginated results (0-indexed)." }, "required": true, "description": "The page number for paginated results (0-indexed)." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "ids": { "type": "array", "items": {}, "description": "Array of inscription IDs representing collection parents" }, "next": { "type": "integer", "description": "The next page number, if more results are available" } } } } } } } } }, "/content/{inscription_id}": { "get": { "operationId": "get_content_by_inscription_id", "summary": "Returns the raw content of an inscription.", "tags": [ "content" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/content-inscription-id" }, "description": "Returns the raw content of an inscription. The response content type depends on the inscription's content type (e.g., text/plain, image/png, application/json).", "parameters": [ { "name": "inscription_id", "in": "path", "schema": { "type": "string", "description": "The inscription ID to retrieve content for." }, "required": true, "description": "The inscription ID to retrieve content for." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "content": { "type": "string", "description": "The raw content of the inscription. The content type varies depending on the inscription (e.g., text, image, JSON)." } } } } } } } } }, "/inscription/{inscription_id}": { "get": { "operationId": "get_inscription_by_inscription_id", "summary": "Fetches detailed information about a specific inscription by its ID.", "tags": [ "inscription" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/inscription-inscription-id" }, "parameters": [ { "name": "inscription_id", "in": "path", "schema": { "type": "string", "description": "The inscription ID to look up." }, "required": true, "description": "The inscription ID to look up." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "address": { "type": "string", "description": "The Bitcoin address currently holding the inscription" }, "charms": { "type": "array", "items": {}, "description": "Array of charms associated with the inscription" }, "child_count": { "type": "integer", "description": "Number of child inscriptions" }, "children": { "type": "array", "items": {}, "description": "Array of child inscription IDs" }, "content_length": { "type": "integer", "description": "Length of the inscription content in bytes" }, "content_type": { "type": "string", "description": "MIME type of the inscription content" }, "effective_content_type": { "type": "string", "description": "The effective content type after processing" }, "fee": { "type": "integer", "description": "Transaction fee paid in satoshis" }, "height": { "type": "integer", "description": "Block height where the inscription was created" }, "id": { "type": "string", "description": "The inscription ID" }, "next": { "type": "string", "description": "The next inscription ID in sequence" }, "number": { "type": "integer", "description": "The inscription number" }, "parents": { "type": "array", "items": {}, "description": "Array of parent inscription IDs" }, "previous": { "type": "string", "description": "The previous inscription ID in sequence" }, "rune": { "type": "string", "description": "Associated rune, if any" }, "sat": { "type": "integer", "description": "The satoshi number this inscription is attached to" }, "satpoint": { "type": "string", "description": "The satpoint location of the inscription (txid:vout:offset)" }, "timestamp": { "type": "integer", "description": "Unix timestamp of the inscription creation" }, "value": { "type": "integer", "description": "Value in satoshis of the output containing the inscription" }, "metaprotocol": { "type": "string", "description": "Metaprotocol tag, if any" } } } } } } } } }, "/inscriptions/block/{blockheight}/{page}": { "get": { "operationId": "get_inscriptions_block_by_blockheight_by_page", "summary": "Returns a paginated list of inscription IDs created in the specified block.", "tags": [ "inscriptions" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/inscriptions-block-blockheight-page" }, "parameters": [ { "name": "blockheight", "in": "path", "schema": { "type": "integer", "description": "The block height to query inscriptions for." }, "required": true, "description": "The block height to query inscriptions for." }, { "name": "page", "in": "path", "schema": { "type": "integer", "description": "The page number for paginated results (0-indexed)." }, "required": true, "description": "The page number for paginated results (0-indexed)." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "ids": { "type": "array", "items": {}, "description": "Array of inscription IDs found in the specified block" }, "more": { "type": "boolean", "description": "Whether more pages of results are available" }, "page_index": { "type": "integer", "description": "The current page index" } } } } } } } } }, "/inscriptions/{page}": { "get": { "operationId": "get_inscriptions_by_page", "summary": "Returns a paginated list of all inscription IDs, ordered by most recent first.", "tags": [ "inscriptions" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/inscriptions-page" }, "parameters": [ { "name": "page", "in": "path", "schema": { "type": "integer", "description": "The page number for paginated results (0-indexed)." }, "required": true, "description": "The page number for paginated results (0-indexed)." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "ids": { "type": "array", "items": {}, "description": "Array of inscription IDs" }, "more": { "type": "boolean", "description": "Whether more pages of results are available" }, "page_index": { "type": "integer", "description": "The current page index" } } } } } } } } }, "/output/{outpoint}": { "get": { "operationId": "get_output_by_outpoint", "summary": "Returns information about a specific transaction output, including any inscriptions or runes it contains.", "tags": [ "output" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/output-outpoint" }, "parameters": [ { "name": "outpoint", "in": "path", "schema": { "type": "string", "description": "The outpoint to query in the format txid:vout." }, "required": true, "description": "The outpoint to query in the format txid:vout." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "address": { "type": "string", "description": "The Bitcoin address associated with the output" }, "confirmations": { "type": "integer", "description": "Number of confirmations" }, "indexed": { "type": "boolean", "description": "Whether the output has been indexed for inscriptions" }, "inscriptions": { "type": "array", "items": {}, "description": "Array of inscription IDs on this output" }, "outpoint": { "type": "string", "description": "The outpoint identifier (txid:vout)" }, "runes": { "type": "object", "description": "Object containing rune balances on this output" }, "sat_ranges": { "type": "array", "items": {}, "description": "Array of satoshi ranges in this output, if sat index is enabled" }, "script_pubkey": { "type": "string", "description": "The output script public key in hex" }, "spent": { "type": "boolean", "description": "Whether the output has been spent" }, "transaction": { "type": "string", "description": "The transaction ID" }, "value": { "type": "integer", "description": "The output value in satoshis" } } } } } } } } }, "/r/blockhash": { "get": { "operationId": "get_r_blockhash", "summary": "Fetches the latest block hash known to the Ordinals indexer.", "tags": [ "r" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/r-blockhash" }, "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "blockhash": { "type": "string", "description": "The hash of the latest block" } } } } } } } } }, "/r/blockhash/{blockheight}": { "get": { "operationId": "get_r_blockhash_by_blockheight", "summary": "Fetches the block hash for a specific block height.", "tags": [ "r" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/r-blockhash-blockheight" }, "parameters": [ { "name": "blockheight", "in": "path", "schema": { "type": "integer", "description": "The block height to get the hash for." }, "required": true, "description": "The block height to get the hash for." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "blockhash": { "type": "string", "description": "The block hash for the specified height" } } } } } } } } }, "/r/blockheight": { "get": { "operationId": "get_r_blockheight", "summary": "Fetches the latest block height known to the Ordinals indexer.", "tags": [ "r" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/r-blockheight" }, "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "blockheight": { "type": "integer", "description": "The current block height" } } } } } } } } }, "/r/blockinfo/{blockheight}": { "get": { "operationId": "get_r_blockinfo_by_blockheight", "summary": "Returns detailed block information for a specific block height using the recursion API.", "tags": [ "r" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/r-blockinfo-blockheight" }, "parameters": [ { "name": "blockheight", "in": "path", "schema": { "type": "integer", "description": "The block height to get information for." }, "required": true, "description": "The block height to get information for." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "average_fee": { "type": "integer", "description": "Average transaction fee in satoshis" }, "average_fee_rate": { "type": "integer", "description": "Average fee rate in sat/vB" }, "bits": { "type": "integer", "description": "Difficulty target in compact format" }, "chainwork": { "type": "string", "description": "Total cumulative chain work in hex" }, "confirmations": { "type": "integer", "description": "Number of confirmations" }, "difficulty": { "type": "number", "description": "Block mining difficulty" }, "hash": { "type": "string", "description": "The block hash" }, "feerate_percentiles": { "type": "array", "items": {}, "description": "Array of fee rate percentiles [10th, 25th, 50th, 75th, 90th] in sat/vB" }, "height": { "type": "integer", "description": "Block height" }, "max_fee": { "type": "integer", "description": "Maximum transaction fee in satoshis" }, "max_fee_rate": { "type": "integer", "description": "Maximum fee rate in sat/vB" }, "max_tx_size": { "type": "integer", "description": "Maximum transaction size in bytes" }, "median_fee": { "type": "integer", "description": "Median transaction fee in satoshis" }, "median_time": { "type": "integer", "description": "Median time of the last 11 blocks" }, "merkle_root": { "type": "string", "description": "Merkle root of the block" }, "min_fee": { "type": "integer", "description": "Minimum transaction fee in satoshis" }, "min_fee_rate": { "type": "integer", "description": "Minimum fee rate in sat/vB" }, "next_block": { "type": "string", "description": "Hash of the next block" }, "nonce": { "type": "integer", "description": "Block nonce" }, "previous_block": { "type": "string", "description": "Hash of the previous block" }, "subsidy": { "type": "integer", "description": "Block subsidy in satoshis" }, "target": { "type": "string", "description": "Difficulty target in hex" }, "timestamp": { "type": "integer", "description": "Unix timestamp of the block" }, "total_fee": { "type": "integer", "description": "Total fees in the block in satoshis" }, "total_size": { "type": "integer", "description": "Total size of all transactions in bytes" }, "total_weight": { "type": "integer", "description": "Total weight of all transactions" }, "transaction_count": { "type": "integer", "description": "Number of transactions in the block" }, "version": { "type": "integer", "description": "Block version number" } } } } } } } } }, "/r/blocktime": { "get": { "operationId": "get_r_blocktime", "summary": "Fetches the timestamp of the latest block known to the Ordinals indexer.", "tags": [ "r" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/r-blocktime" }, "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "blocktime": { "type": "integer", "description": "Unix timestamp of the latest block" } } } } } } } } }, "/r/children/{inscription_id}/{page}": { "get": { "operationId": "get_r_children_by_inscription_id_by_page", "summary": "Returns a paginated list of child inscription IDs for a given parent inscription using the recursion API.", "tags": [ "r" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/r-children-inscription-id-page" }, "parameters": [ { "name": "inscription_id", "in": "path", "schema": { "type": "string", "description": "The parent inscription ID." }, "required": true, "description": "The parent inscription ID." }, { "name": "page", "in": "path", "schema": { "type": "integer", "description": "The page number for paginated results (0-indexed)." }, "required": true, "description": "The page number for paginated results (0-indexed)." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "ids": { "type": "array", "items": {}, "description": "Array of child inscription IDs" }, "more": { "type": "boolean", "description": "Whether more pages of results are available" }, "page": { "type": "integer", "description": "The current page number" } } } } } } } } }, "/r/inscription/{inscription_id}": { "get": { "operationId": "get_r_inscription_by_inscription_id", "summary": "Fetches inscription details using the recursive endpoint.", "tags": [ "r" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/r-inscription-inscription-id" }, "description": "Fetches inscription details using the recursive endpoint. Recursive endpoints are whitelisted endpoints that allow access to on-chain data, including the content of other inscriptions.", "parameters": [ { "name": "inscription_id", "in": "path", "schema": { "type": "string", "description": "The inscription ID to look up." }, "required": true, "description": "The inscription ID to look up." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "charms": { "type": "array", "items": {}, "description": "Array of charms associated with the inscription" }, "content_type": { "type": "string", "description": "MIME type of the inscription content" }, "content_length": { "type": "integer", "description": "Length of the inscription content in bytes" }, "delegate": { "type": "string", "description": "Delegate inscription ID, if any" }, "fee": { "type": "integer", "description": "Transaction fee paid in satoshis" }, "height": { "type": "integer", "description": "Block height where the inscription was created" }, "id": { "type": "string", "description": "The inscription ID" }, "number": { "type": "integer", "description": "The inscription number" }, "output": { "type": "string", "description": "The output containing the inscription (txid:vout)" }, "sat": { "type": "integer", "description": "The satoshi number this inscription is attached to" }, "satpoint": { "type": "string", "description": "The satpoint location (txid:vout:offset)" }, "timestamp": { "type": "integer", "description": "Unix timestamp of the inscription creation" }, "value": { "type": "integer", "description": "Value in satoshis of the output containing the inscription" }, "address": { "type": "string", "description": "The Bitcoin address currently holding the inscription" } } } } } } } } }, "/r/metadata/{inscription_id}": { "get": { "operationId": "get_r_metadata_by_inscription_id", "summary": "Fetches the CBOR-decoded metadata for an inscription.", "tags": [ "r" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/r-metadata-inscription-id" }, "description": "Fetches the CBOR-decoded metadata for an inscription. Returns the metadata if present, or a not-found message if the inscription has no metadata.", "parameters": [ { "name": "inscription_id", "in": "path", "schema": { "type": "string", "description": "The inscription ID to retrieve metadata for." }, "required": true, "description": "The inscription ID to retrieve metadata for." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "metadata": { "type": "object", "description": "The CBOR-decoded metadata object for the inscription. Returns null if the inscription has no metadata." } } } } } } } } }, "/r/sat/{sat}/at/{index}": { "get": { "operationId": "get_r_sat_by_sat_at_by_index", "summary": "Returns the inscription ID at the specified index on a given satoshi using the recursion API.", "tags": [ "r" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/r-sat-sat-at-index" }, "parameters": [ { "name": "sat", "in": "path", "schema": { "type": "integer", "description": "The satoshi number to query." }, "required": true, "description": "The satoshi number to query." }, { "name": "index", "in": "path", "schema": { "type": "integer", "description": "The inscription index on the satoshi (0-indexed)." }, "required": true, "description": "The inscription index on the satoshi (0-indexed)." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "id": { "type": "string", "description": "The inscription ID at the specified index on the satoshi, or null if none exists" } } } } } } } } }, "/r/sat/{sat}/{page}": { "get": { "operationId": "get_r_sat_by_sat_by_page", "summary": "Returns a paginated list of inscription IDs on a given satoshi using the recursion API.", "tags": [ "r" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/r-sat-sat-page" }, "parameters": [ { "name": "sat", "in": "path", "schema": { "type": "integer", "description": "The satoshi number to query." }, "required": true, "description": "The satoshi number to query." }, { "name": "page", "in": "path", "schema": { "type": "integer", "description": "The page number for paginated results (0-indexed)." }, "required": true, "description": "The page number for paginated results (0-indexed)." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "ids": { "type": "array", "items": {}, "description": "Array of inscription IDs on the satoshi" }, "more": { "type": "boolean", "description": "Whether more pages of results are available" }, "page": { "type": "integer", "description": "The current page number" } } } } } } } } }, "/rune/{runeid}": { "get": { "operationId": "get_rune_by_runeid", "summary": "Fetches detailed information about a specific rune by its ID.", "tags": [ "rune" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/rune-runeid" }, "parameters": [ { "name": "runeid", "in": "path", "schema": { "type": "string", "description": "The rune ID in the format blockheight:txindex." }, "required": true, "description": "The rune ID in the format blockheight:txindex." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "entry": { "type": "object", "properties": { "block": { "type": "integer", "description": "Block height where the rune was etched" }, "burned": { "type": "integer", "description": "Total amount of the rune that has been burned" }, "divisibility": { "type": "integer", "description": "Number of decimal places for the rune" }, "etching": { "type": "string", "description": "Transaction ID of the etching transaction" }, "mints": { "type": "integer", "description": "Number of times the rune has been minted" }, "number": { "type": "integer", "description": "The rune number" }, "premine": { "type": "integer", "description": "Amount of the rune that was premined" }, "spaced_rune": { "type": "string", "description": "The rune name with spacer dots" }, "symbol": { "type": "string", "description": "The rune symbol character" }, "terms": { "type": "object", "description": "Minting terms, if any" }, "timestamp": { "type": "integer", "description": "Unix timestamp of the etching" }, "turbo": { "type": "boolean", "description": "Whether the rune opted into turbo mode" } }, "description": "The rune entry details" }, "id": { "type": "string", "description": "The rune ID (blockheight:txindex)" }, "mintable": { "type": "boolean", "description": "Whether the rune is currently mintable" }, "parent": { "type": "string", "description": "The parent inscription ID of the rune" } } } } } } } } }, "/runes/{page}": { "get": { "operationId": "get_runes_by_page", "summary": "Returns a paginated list of runes, ordered by most recent first.", "tags": [ "runes" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/runes-page" }, "parameters": [ { "name": "page", "in": "path", "schema": { "type": "integer", "description": "The page number for paginated results (0-indexed)." }, "required": true, "description": "The page number for paginated results (0-indexed)." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "entries": { "type": "array", "items": { "type": "object", "properties": { "rune_id": { "type": "string", "description": "The rune ID (blockheight:txindex)" }, "rune_entry": { "type": "object", "properties": { "block": { "type": "integer", "description": "Block height where the rune was etched" }, "burned": { "type": "integer", "description": "Total amount burned" }, "divisibility": { "type": "integer", "description": "Number of decimal places" }, "etching": { "type": "string", "description": "Etching transaction ID" }, "mints": { "type": "integer", "description": "Number of mints" }, "number": { "type": "integer", "description": "The rune number" }, "premine": { "type": "integer", "description": "Premined amount" }, "spaced_rune": { "type": "string", "description": "Rune name with spacers" }, "symbol": { "type": "string", "description": "Rune symbol" }, "terms": { "type": "object", "description": "Minting terms" }, "timestamp": { "type": "integer", "description": "Etching timestamp" }, "turbo": { "type": "boolean", "description": "Turbo mode flag" } }, "description": "The rune entry details" } } }, "description": "Array of [rune_id, rune_entry] tuples" }, "more": { "type": "boolean", "description": "Whether more pages of results are available" }, "next": { "type": "integer", "description": "The next page number, if available" }, "prev": { "type": "integer", "description": "The previous page number, if available" } } } } } } } } }, "/sat/{sat}": { "get": { "operationId": "get_sat_by_sat", "summary": "Returns detailed information about a specific satoshi, including its ordinal theory properties.", "tags": [ "sat" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/sat-sat" }, "parameters": [ { "name": "sat", "in": "path", "schema": { "type": "integer", "description": "The satoshi number to look up." }, "required": true, "description": "The satoshi number to look up." } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "address": { "type": "string", "description": "The Bitcoin address currently holding the satoshi" }, "block": { "type": "integer", "description": "The block height where the satoshi was mined" }, "charms": { "type": "array", "items": {}, "description": "Array of charms associated with the satoshi" }, "cycle": { "type": "integer", "description": "The cycle number of the satoshi" }, "decimal": { "type": "string", "description": "Decimal notation of the satoshi (block.offset)" }, "degree": { "type": "string", "description": "Degree notation of the satoshi" }, "epoch": { "type": "integer", "description": "The epoch of the satoshi" }, "inscriptions": { "type": "array", "items": {}, "description": "Array of inscription IDs on this satoshi" }, "name": { "type": "string", "description": "The alphabetic name of the satoshi" }, "number": { "type": "integer", "description": "The satoshi number" }, "offset": { "type": "integer", "description": "Offset within the block" }, "percentile": { "type": "string", "description": "The satoshi's position as a percentile of total supply" }, "period": { "type": "integer", "description": "The difficulty adjustment period" }, "rarity": { "type": "string", "description": "The rarity of the satoshi (common, uncommon, rare, epic, legendary, mythic)" }, "satpoint": { "type": "string", "description": "The current satpoint location" }, "timestamp": { "type": "integer", "description": "Unix timestamp of when the satoshi was mined" } } } } } } } } }, "/status": { "get": { "operationId": "get_status", "summary": "Returns the current status of the Ordinals indexer, including sync state and feature flags.", "tags": [ "status" ], "externalDocs": { "description": "Quicknode docs", "url": "https://www.quicknode.com/docs/bitcoin/status" }, "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "type": "object", "properties": { "address_index": { "type": "boolean", "description": "Whether the address index is enabled" }, "blessed_inscriptions": { "type": "integer", "description": "Total number of blessed (valid) inscriptions" }, "chain": { "type": "string", "description": "The chain name (e.g., mainnet)" }, "cursed_inscriptions": { "type": "integer", "description": "Total number of cursed inscriptions" }, "height": { "type": "integer", "description": "The current indexed block height" }, "initial_sync_time": { "type": "object", "properties": { "secs": { "type": "integer", "description": "Seconds component" }, "nanos": { "type": "integer", "description": "Nanoseconds component" } }, "description": "Time taken for initial sync" }, "inscription_index": { "type": "boolean", "description": "Whether the inscription index is enabled" }, "inscriptions": { "type": "integer", "description": "Total number of inscriptions" }, "json_api": { "type": "boolean", "description": "Whether the JSON API is enabled" }, "lost_sats": { "type": "integer", "description": "Number of lost satoshis" }, "minimum_rune_for_next_block": { "type": "string", "description": "Minimum rune name that can be etched in the next block" }, "rune_index": { "type": "boolean", "description": "Whether the rune index is enabled" }, "runes": { "type": "integer", "description": "Total number of runes" }, "sat_index": { "type": "boolean", "description": "Whether the sat index is enabled" }, "started": { "type": "string", "description": "ISO-8601 timestamp of when the indexer started" }, "transaction_index": { "type": "boolean", "description": "Whether the transaction index is enabled" }, "unrecoverably_reorged": { "type": "boolean", "description": "Whether an unrecoverable reorg has occurred" }, "uptime": { "type": "object", "properties": { "secs": { "type": "integer", "description": "Seconds component" }, "nanos": { "type": "integer", "description": "Nanoseconds component" } }, "description": "Current uptime of the indexer" } } } } } } } } } }, "servers": [ { "url": "https://docs-demo.btc.quiknode.pro/addon/3/api/v2", "description": "Quicknode Bitcoin" } ] }