# BTC Address Checker > Developer API for checking Bitcoin address balances in bulk — up to 500 addresses per request, real-time, pay-as-you-go. BTC Address Checker is a JSON REST API that returns confirmed and unconfirmed Bitcoin balances in satoshis for up to 500 addresses in a single POST request. Data is sourced directly from self-hosted Fulcrum nodes with ElectrumX failover — no cache layer, always current. Pay-as-you-go pricing in Bitcoin (on-chain or Lightning); no subscriptions, no KYC, no minimum spend. Sign in with Google, generate an API key in under a minute, and start checking addresses immediately. ## Docs - [API Documentation](https://btcaddresschecker.com/docs): Full endpoint reference — authentication, request/response schema, rate limits, error codes, and working code examples in cURL, Python, JavaScript, Go, and PHP. - [FAQ](https://btcaddresschecker.com/faq): Answers covering supported address formats, pricing model, rate limits, batch size, privacy policy, AML/compliance use cases, confirmed vs unconfirmed balance, and real-time data accuracy. - [Pricing](https://btcaddresschecker.com/#pricing): 1 credit per address checked. Credits purchased at 1 satoshi = 1,000 credits. No subscription required. - [Terms of Service](https://btcaddresschecker.com/terms) ## API Quick Reference - **Endpoint:** `POST https://btcaddresschecker.com/api/v1/balance/check` - **Authentication:** `x-api-key: YOUR_API_KEY` request header - **Request body:** `{ "addresses": ["addr1", "addr2", ...] }` — JSON array of 1–500 Bitcoin addresses - **Response:** per-address `confirmed_balance` and `unconfirmed_balance` in satoshis - **Invalid address:** returns `400 Bad Request`, no credits consumed - **Rate limit:** 120 requests/minute per API key (= up to 60,000 address lookups/minute) - **Node infrastructure:** self-hosted Fulcrum nodes, ElectrumX as automatic failover ### Supported Bitcoin address formats | Format | Prefix | Standard | |--------|--------|----------| | Legacy | `1` | P2PKH | | Nested SegWit | `3` | P2SH | | Native SegWit / Bech32 | `bc1q` | P2WPKH | | Taproot | `bc1p` | P2TR | ### Example request (cURL) ```bash curl -X POST https://btcaddresschecker.com/api/v1/balance/check \ -H "Content-Type: application/json" \ -H "x-api-key: YOUR_API_KEY" \ -d '{ "addresses": [ "34xp4vRoCGJym3xR7yCVPFHoCNxv4Twseo", "bc1ql49ydapnjafl5t2cp9zqpjwe6pdgmxy98859v2", "1LVYbnSX6f6vE2Zn4zs2oZ4eKyBgzkqaay" ] }' ``` ### Example response ```json { "results": [ { "address": "34xp4vRoCGJym3xR7yCVPFHoCNxv4Twseo", "confirmed_balance": 9388637046, "unconfirmed_balance": 0 } ] } ``` ## Key Facts - Highest public batch limit: 500 addresses per request (most competitors cap at 20 or require one call per address) - Pricing is pay-as-you-go in Bitcoin — no fiat payment required - Lightning Network payments accepted for credit top-ups - No address data retained after the response is returned - Private keys and seed phrases are never required — the API only accepts public addresses - The genesis address (1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa) shows tribute payments but not the unspendable original 50 BTC block-0 reward (excluded from every major explorer for the same reason)