Blockchain API is a RESTful API for accessing Bitcoin blockchain data. It provides endpoints to retrieve information about blocks, transactions, addresses, and more. The API supports both mainnet and testnet environments.
👉 View Swagger UI
Method: GET
Path: /v1/indexer/blockchain/info
Swagger Link: View in Swagger UI
Get the current blockchain information, including chain type, block count, and best block hash.
Method: GET
Path: /v1/indexer/fees/recommended
Swagger Link: View in Swagger UI
Get the recommended fees for different confirmation times. (like mempool.space)
Method: GET
Path: /v1/indexer/height/{height}/block
Swagger Link: View in Swagger UI
Get block info by height.
height
(path) (required): Block heightMethod: GET
Path: /v1/indexer/block/id/{blockid}
Swagger Link: View in Swagger UI
Get block info by blockid.
blockid
(path) (required): Block idMethod: GET
Path: /v1/indexer/block/{height}/txs
Swagger Link: View in Swagger UI
Get txs by block height.
height
(path) (required): Block heightcursor
(query) (required): Start offsetsize
(query) (required): Number of items returnedMethod: GET
Path: /v1/indexer/tx/{txid}
Swagger Link: View in Swagger UI
Get tx info by txid.
txid
(path) (required): Tx idMethod: GET
Path: /v1/indexer/tx/{txid}/ins
Swagger Link: View in Swagger UI
Get the inputs of a tx.
txid
(path) (required): Tx idcursor
(query) (required): Start offsetsize
(query) (required): Number of items returnedMethod: GET
Path: /v1/indexer/tx/{txid}/outs
Swagger Link: View in Swagger UI
Get the outputs of a tx.
txid
(path) (required): Tx idcursor
(query) (required): Start offsetsize
(query) (required): Number of items returnedMethod: GET
Path: /v1/indexer/rawtx/{txid}
Swagger Link: View in Swagger UI
Get the raw tx by txid.
txid
(path) (required): Tx idMethod: GET
Path: /v1/indexer/utxo/{txid}/{index}
Swagger Link: View in Swagger UI
Get the UTXO by txid and index.
txid
(path) (required): Tx idindex
(path) (required): Tx idThe return result of this UTXO interface will have three scenarios:
When UTXO has not been spent, it will return the information of this UTXO, and isSpent will be set to false.
When UTXO has been spent, but the transaction that spent it has not yet been confirmed, it will return the information of this UTXO, and isSpent will be set to true.
When UTXO has been spent and the transacted spend has been confirmed, it will return null.
BRC20 inscriptions of type TRANSFER (those that have undergone transfers) and MINT inscriptions, which no longer hold value, will no longer be available for query after this update. Before Upgrade:
{
"code": 0,
"msg": "ok",
"data": {
"txid": "...",
"vout": 0,
"satoshi": 546,
"scriptType": "5120",
"scriptPk": "...",
"codeType": 9,
"address": "...",
"height": 815539,
"idx": 2516,
"isOpInRBF": false,
"isSpent": false,
"inscriptionsCount": 2,
"inscriptions": [
{
"inscriptionNumber": 38012882,
"inscriptionId": "...",
"offset": 0,
"moved": false,
"sequence": 0,
"isCursed": false,
"isVindicate": false,
"isBRC20Ext": false,
"isBRC20": true
},
{
"inscriptionNumber": 38012883,
"inscriptionId": "....",
"offset": 0,
"moved": false,
"sequence": 0,
"isCursed": false,
"isVindicate": false,
"isBRC20Ext": false,
"isBRC20": false
}
]
}
}
After Upgrade:
{
"code": 0,
"msg": "ok",
"data": {
"txid": "...",
"vout": 0,
"satoshi": 546,
"scriptType": "5120",
"scriptPk": "...",
"codeType": 9,
"address": "...",
"height": 815539,
"idx": 2516,
"isOpInRBF": false,
"isSpent": false,
"inscriptionsCount": 2,
"inscriptions": [
{
"inscriptionNumber": 38012883,
"inscriptionId": "....",
"offset": 0,
"moved": false,
"sequence": 0,
"isCursed": false,
"isVindicate": false,
"isBRC20Ext": false,
"isBRC20": false
}
]
}
}
Migration Guidance:
Method: POST
Path: /v1/indexer/local_pushtx
Swagger Link: View in Swagger UI
Push rawtx to bitcoin node.
Method: POST
Path: /v1/indexer/local_pushtxs
Swagger Link: View in Swagger UI
Push rawtxs to bitcoin node.
Method: GET
Path: /v1/indexer/address/{address}/balance
Swagger Link: View in Swagger UI
Get the balance by address.
address
(path) (required): AddressMethod: GET
Path: /v1/indexer/address/{address}/history
Swagger Link: View in Swagger UI
Get transaction history by address.
address
(path) (required): Addresscursor
(query) (required): Start offsetsize
(query) (required): Number of items returnedMethod: GET
Path: /v1/indexer/address/{address}/utxo-data
Swagger Link: View in Swagger UI
Retrieve the UTXOs of an address that do not contain inscriptions. Note that this excludes, but does not completely cover, assets from protocols such as Alkanes, Runes, and others. To obtain the UTXOs of an address that are available for spending as BTC, please use the available-utxo endpoint.
address
(path) (required): Addresscursor
(query) (required): Start offsetsize
(query) (required): Number of items returnedMethod: GET
Path: /v1/indexer/address/{address}/available-balance
Swagger Link: View in Swagger UI
This interface will return the current address’s available balance that can be used for BTC spending. Balances of assets such as inscriptions, runes, and alkanes will not be included.
address
(path) (required): AddressMethod: GET
Path: /v1/indexer/address/{address}/available-utxo-data
Swagger Link: View in Swagger UI
This interface will return the current address’s available UTXO list that can be used for BTC spending. UTXOs of assets such as inscriptions, runes, and alkanes will not be included. The UTXO management tool (https://unisat.io/utxo) can unlock these UTXOs, making them available again. Additionally, UTXOs with less than 600 satoshis will not be returned to avoid potential unspendable outputs from unrecognized asset protocols or burns.
address
(path) (required): Addresscursor
(query) (required): Start offsetsize
(query) (required): Number of items returned