BYTETOOLS

Blockstream Esplora API

Free Blockstream Esplora API with no key: Bitcoin blocks, transactions, addresses, UTXOs and mempool data. Open source and self-hostable. Tested example.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-20

What is the Blockstream Esplora API?

Blockstream's Esplora API is a free, key-free Bitcoin blockchain explorer API providing blocks, transactions, address balances, UTXO sets and mempool state, with the entire stack open source and self-hostable.

Esplora is the API behind Blockstream's block explorer, and it is fully open source — which matters for Bitcoin applications where trusting a third party for chain data is a real consideration. You can run your own instance against your own node.

The endpoints are refreshingly direct: some return a bare number as plain text rather than a JSON object. `/blocks/tip/height` returns just the integer, which is efficient but will break a client that assumes every response is JSON.

Quick facts

Base URL
https://blockstream.info/api
Authentication
No API key required on the public instance.
Rate limit
No published hard limit; heavy users should self-host.
Pricing
Free and open source.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the Blockstream Esplora API

Every request below was executed against the live API on 2026-08-20, and the response shown is the real body it returned — not an illustration.

1. Get the current Bitcoin block height

GET https://blockstream.info/api/blocks/tip/height

curl
curl 'https://blockstream.info/api/blocks/tip/height'
JavaScript (fetch)
const res = await fetch("https://blockstream.info/api/blocks/tip/height");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://blockstream.info/api/blocks/tip/height", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200
963222

Parameters

ParameterTypeRequiredDescription
blocks/tip/heightpathOptionalCurrent chain tip height — returns a bare number. blocks/tip/height
block/<hash>pathOptionalBlock details by hash. block/000000...
address/<addr>pathOptionalAddress balance and transaction stats. address/bc1q...
address/<addr>/utxopathOptionalUnspent outputs for an address. utxo
tx/<txid>pathOptionalTransaction details. tx/abc123

Response fields

(tip/height)integer
A bare integer, not JSON — the current block height.
(address) chain_statsobject
Confirmed funded and spent totals for the address.
(address) mempool_statsobject
Unconfirmed activity for the address.
(tx) status.confirmedboolean
Whether the transaction is confirmed.
(tx) vin / voutarray
Transaction inputs and outputs with values in satoshis.
(block) height / timestamp / tx_countinteger
Block metadata.

What you can build with the Blockstream Esplora API

  • Build a Bitcoin block explorer or wallet backend
  • Monitor an address for incoming payments
  • Verify transaction confirmations
  • Track chain tip height for sync status

Common errors and how to fix them

JSON parse error on tip/height

That endpoint returns a bare number as plain text.

Fix: Not every Esplora endpoint returns JSON — read the response as text for scalar endpoints.

Values seem enormous

Amounts are in satoshis.

Fix: Divide by 100,000,000 to get BTC.

Rate limiting on the public instance

Shared infrastructure.

Fix: Self-host Esplora against your own Bitcoin node for production use.

Blockstream Esplora API — frequently asked questions

Is the Blockstream API free?

Yes, the public instance is free with no API key, and the whole Esplora stack is open source and self-hostable.

Why does the block height endpoint fail to parse as JSON?

It returns a bare integer as plain text. Several Esplora endpoints return scalars rather than JSON objects — read them as text.

Should I use the public instance in production?

For a real Bitcoin application, self-host Esplora against your own node. That removes both the rate limit and the trust dependency on a third party for chain data.

What units are amounts in?

Satoshis — the smallest Bitcoin unit. Divide by 100,000,000 to get BTC.

Tools that pair with this API

Blockstream Esplora is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-20; always check the official documentation before relying on this API in production, as terms and limits can change.