Bitcoin RPC + EVM Translation + Cross-Chain Identity.
One API key. All chains. Sub-second responses.
Get a key, make a request. That's it.
Send Lightning payment to [email protected], then email [email protected] with payment hash. Keys issued within 1 hour.
# Get current Bitcoin block height
curl https://api.nativebtc.org/v1/block-height \
-H "X-API-Key: fp_your_key_here"
# JSON-RPC — works with ethers.js, web3.js, viem
curl -X POST https://api.nativebtc.org/v1/rpc \
-H "Content-Type: application/json" \
-H "X-API-Key: fp_your_key_here" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
const { JsonRpcProvider } = require('ethers');
const provider = new JsonRpcProvider(
'https://api.nativebtc.org/v1/rpc',
{ name: 'bitcoin', chainId: 0xD9B4BEF9 },
{ staticNetwork: true, batchMaxCount: 1,
fetchOptions: { headers: { 'X-API-Key': 'fp_your_key_here' } } }
);
const block = await provider.getBlockNumber();
console.log('Bitcoin block:', block);
| Method | Path | Description |
|---|---|---|
| POST | /v1/rpc | JSON-RPC — eth_* translated to Bitcoin + native BTC methods |
| GET | /v1/block-height | Current Bitcoin block height |
| GET | /v1/fee-estimate?blocks=6 | Fee estimate (sat/vB) for target confirmation |
| GET | /v1/balance/:address | Address balance (Bitcoin or EVM-translated) |
| GET | /v1/utxos/:address | UTXO set for a Bitcoin address |
| GET | /v1/tx/:txid | Transaction details by txid |
| GET | /v1/identity/evm-to-btc/:address | Resolve EVM address → BTC identity |
| GET | /v1/identity/btc-to-evm/:address | Resolve BTC address → EVM identity |
| GET | /v1/derive/:chain/:evmAddress | Derive chain address (solana, xrp, cardano, polkadot, tron) |
| GET | /v1/tiers | Available API tiers no auth |
| GET | /health | Service health check no auth |
| Method | Path | Description |
|---|---|---|
| GET | /v1/mempool/stats | Mempool size, fees, congestion level, fee estimates for 1–144 blocks |
| GET | /v1/mempool/fees?target=10 | Fee landscape — distribution histogram + recommended rate for target |
| GET | /v1/mempool/txs?limit=25&sort=fee_desc | Paginated mempool snapshot (sort: fee_desc, time_desc, size_desc) |
| GET | /v1/mempool/address/:address | Pending transactions for a Bitcoin address |
| GET | /v1/mempool/tx/:txid | Detailed mempool entry — fees, ancestors, descendants, RBF flag |
| GET | /v1/mempool/tx/:txid/replacements | RBF replacement tracking — was this tx bumped? |
| WS | /v1/mempool/stream?key=fp_xxx | WebSocket — live stream of new mempool transactions + stats |
All standard Ethereum JSON-RPC methods are translated to Bitcoin equivalents in real-time.
| EVM Method | Bitcoin Equivalent | Notes |
|---|---|---|
| eth_chainId | — | Returns 0xD9B4BEF9 (Bitcoin mainnet magic) |
| eth_blockNumber | getblockcount | Current block height |
| eth_getBalance | UTXO scan | Address balance in satoshis |
| eth_gasPrice | estimatesmartfee | Fee rate in sat/vB |
| eth_getBlockByNumber | getblock | Full block data |
| eth_getTransactionByHash | getrawtransaction | Decoded transaction |
| eth_sendRawTransaction | sendrawtransaction | Broadcast signed tx |
Native Bitcoin RPC methods (getblock, estimatesmartfee, etc.) are also supported directly.
Real-time mempool data direct from our Bitcoin Core full node. Fee sniping, RBF tracking, congestion monitoring.
# Get fee distribution + recommended rate for 6-block target
curl "https://api.nativebtc.org/v1/mempool/fees?target=6" \
-H "X-API-Key: fp_your_key_here"
# Response includes histogram of fee rates across entire mempool
const ws = new WebSocket(
'wss://api.nativebtc.org/v1/mempool/stream?key=fp_your_key_here'
);
ws.onmessage = (event) => {
const msg = JSON.parse(event.data);
if (msg.type === 'new_txs') {
console.log(`${msg.count} new txs`, msg.transactions);
}
if (msg.type === 'stats') {
console.log('Mempool:', msg.data.mempool.size, 'txs');
}
};
// Commands: subscribe:txs, subscribe:stats, filter:address:bc1q...
ws.send('subscribe:stats');
# See pending transactions for any Bitcoin address
curl "https://api.nativebtc.org/v1/mempool/address/bc1q..." \
-H "X-API-Key: fp_your_key_here"
# Returns direction (incoming/outgoing), fee rate, value
# Check if a transaction was replaced (fee bumped)
curl "https://api.nativebtc.org/v1/mempool/tx/abc123.../replacements" \
-H "X-API-Key: fp_your_key_here"
# Returns: wasReplaced, replacedBy txid, fee delta
Pay in Bitcoin. Get your API key within 1 hour.
No credit cards. No banks. Bitcoin-native.
After payment, email [email protected] with:
1. Payment hash or screenshot
2. Your project name
3. Tier you paid for
Pass your API key via the X-API-Key header on every request:
curl https://api.nativebtc.org/v1/block-height \
-H "X-API-Key: fp_your_key_here"
Rate limit info is returned in response headers: X-RateLimit-Limit, X-RateLimit-Remaining, X-DailyLimit-Remaining.
If you exceed your limit, you'll receive a 429 with a Retry-After header.
Send sats via Lightning. Get your API key within 1 hour.
Email Payment Confirmation →Bitcoin-only. No credit cards. No banks.