canonical: https://jentic.com/apis/mempool.space/mempool

# mempool.space REST API

The mempool.space REST API exposes Bitcoin blockchain data - blocks, transactions, addresses, mempool state, mining statistics, Lightning Network nodes and channels, and fee estimates - across 42 endpoints. The API is open and unauthenticated for public use, which makes it well suited to wallets, explorers, fee-estimation services, and on-chain analytics tooling that need direct access to Bitcoin network state without operating a full node.

## For AI agents

Query Bitcoin blockchain data - blocks, transactions, addresses, mempool, mining stats, Lightning Network, and fee estimates. Open public API, no authentication required.

## Scope

Does not broadcast transactions in a wallet, manage private keys, or trade - use for read-only Bitcoin chain, mempool, and Lightning data only.

## Capabilities

- Look up the transaction history and UTXO set for a Bitcoin address via `/api/address/{address}`
- Retrieve a block by hash including its full transaction list and miner data
- Estimate next-block, half-hour, and hour fee rates from the live mempool
- Track current mempool size, fee histogram, and unconfirmed transaction count
- Query Lightning Network node and channel data for routing and analytics
- Get Bitcoin price history and difficulty adjustment progress for on-chain dashboards

## Use cases

### Wallet Fee Estimation

Self-custody wallets call `/api/v1/fees/recommended` to suggest a fee rate when the user composes a Bitcoin transaction. The endpoint returns next-block, half-hour, and hour estimates derived from real mempool state, which gives wallet UX a more accurate picture than static fee tables and helps users avoid over- or under-paying.

Example prompt: Call `/api/v1/fees/recommended`, return the next-block fee rate in sats/vB, and use it as the default in the wallet's send screen.

### Bitcoin Address Monitoring

Treasury and accounting tools watch deposit addresses for incoming Bitcoin payments. `/api/address/{address}/txs` returns confirmed and unconfirmed transactions for an address, which lets a polling worker detect new payments, count confirmations, and reconcile against an order or invoice without running a node.

Example prompt: Poll `/api/address/{address}/txs` every 30 seconds, compare against the last seen txid, and emit a 'payment received' event when a new transaction reaches one confirmation.

### Lightning Network Analytics

Lightning routing nodes and analytics dashboards consume mempool.space's Lightning endpoints to map node connectivity, channel capacity, and historical liquidity. The data underpins routing-fee strategy and capacity planning for node operators who need an external view of the public graph.

Example prompt: Pull the top 100 Lightning nodes by capacity, then fetch each node's channel list, and produce a CSV of node pubkey, alias, and aggregate capacity.

### AI Agent On-Chain Research

An AI research agent can answer Bitcoin questions - 'what's the current next-block fee, what's the mempool backlog, is this transaction confirmed' - by chaining mempool.space calls. Through Jentic, the agent loads the address, transaction, and fee endpoints as discoverable tools and composes the answer without writing custom HTTP code.

Example prompt: Search Jentic for 'check bitcoin transaction status', execute `/api/tx/{txid}`, then if not confirmed call `/api/v1/fees/recommended` to suggest a fee bump.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/api/address/{address}` | Get balance and transaction summary for an address |
| GET | `/api/address/{address}/txs` | List transactions for an address |
| GET | `/api/address/{address}/utxo` | List UTXOs for an address |
| GET | `/api/v1/validate-address/{address}` | Validate Bitcoin address format |
| GET | `/api/block/{hash}` | Get block by hash |
| GET | `/api/v1/difficulty-adjustment` | Get difficulty adjustment progress |
| GET | `/api/v1/prices` | Get current Bitcoin price |
| GET | `/api/v1/historical-price` | Get historical Bitcoin price |

## Key resources

- **Addresses** — Endpoints for address balances, transaction history, and UTXO sets.
- **Transactions** — Lookup by txid, broadcast, and inspect confirmation status.
- **Blocks** — Fetch blocks by hash or height with their transactions.
- **Mempool** — Real-time mempool size, fee histogram, and unconfirmed transactions.
- **Mining** — Difficulty adjustment, hashrate, mining pools, and reward statistics.
- **Lightning** — Lightning Network node, channel, and topology data.
- **Fees and Prices** — Recommended fee rates and historical Bitcoin prices.

## Why Jentic

- **Setup:** Wiring mempool.space by hand means hand-coding each address, block, fee, and price call against the mempool.space host and adding credentials only for a self-hosted instance behind auth. Through Jentic you install once, import the mempool.space REST API from the API Directory, store any self-hosted credential once, and your agent calls it.
- **Permission scoping:** mempool.space puts the address, block hash, or txid in the URL path (`/api/address/{address}`, `/api/block/{hash}`), so a rule can pin your agent to reading data for a given address or block. You choose the operations it may call, and this API is read-only chain and mempool data, so nothing writes to the chain.
- **Credential handling:** Any credential for a self-hosted mempool.space instance is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'check bitcoin transaction status' or 'estimate bitcoin fee', and Jentic returns the matching endpoint with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **CoinGecko** — Multi-asset crypto pricing rather than Bitcoin chain data
- **CoinAPI** — Commercial multi-exchange market data API
- **Binance** — Exchange order books and trading rather than chain data

## FAQ

### What authentication does the mempool.space REST API use?

The public hosted API requires no authentication - all 42 endpoints are open. Self-hosted mempool.space instances can sit behind a reverse proxy that adds auth; through Jentic any such credential is held in the encrypted vault and injected at request time.

### Can I get a fee estimate for a Bitcoin transaction with mempool.space?

Yes. `/api/v1/fees/recommended` returns next-block, 30-minute, and hour fee rates in sats/vB derived from live mempool state, and `/api/v1/fees/mempool-blocks` exposes the projected fee bands of the next several blocks.

### What are the rate limits for the mempool.space REST API?

The hosted API enforces fair-use rate limits per IP that are not numerically published in the spec. Heavy users should run a self-hosted mempool.space instance - the project is fully open source - or use a paid mirror to bypass shared limits.

### How do I look up a Bitcoin address through Jentic?

Run `pip install jentic`, search for `look up bitcoin address`, load `/api/address/{address}`, and execute with the address. Jentic returns the address summary including balance and recent transaction count.

### Does the mempool.space API cover the Lightning Network?

Yes. The API exposes Lightning Network node and channel data, including node capacity, alias, and channel topology, which lets analytics tools and routing nodes consume the public graph without running their own Lightning daemon.

### Can I limit what my agent is allowed to do with the mempool.space REST API?

Yes. Because you run Jentic One yourself, your own rules decide which mempool.space operations and credentials the agent may use. This API puts the address, block hash, or txid in the URL path (`/api/address/{address}`, `/api/block/{hash}`), so you can pin the agent to reading data for a specific address or block and pick exactly which endpoints it may call. Since every operation is read-only chain and mempool data, nothing the agent does can write to the Bitcoin network.
