Public endpoints
| Service | URL | Protocol |
|---|---|---|
| EVM JSON-RPC | https://rpc.bkc.network | HTTP POST, JSON-RPC 2.0 |
| EVM WebSocket | wss://ws.bkc.network | JSON-RPC over WebSocket (eth_subscribe) |
| CometBFT RPC | https://comet-rpc.bkc.network | HTTP GET/POST (JSON-RPC and URI) |
| Cosmos REST (LCD) | https://api.bkc.network | HTTP, grpc-gateway |
| Cosmos gRPC | grpc.bkc.network:443 | gRPC over TLS |
| Explorer API | https://explorer.bkc.network/api | Blockscout REST (/api/v2/…) and Etherscan-compatible |
| Faucet API | https://faucet.bkc.network/api | see Get test BKC |
All HTTP endpoints return Access-Control-Allow-Origin: *.
Which one to use
| You want to… | Use |
|---|---|
| read contract state, balances, logs, receipts | EVM JSON-RPC |
| subscribe to new blocks | EVM WebSocket (newHeads) |
| send any transaction (including EVM writes) | CometBFT RPC — via the SDK or Hardhat plugin |
| query accounts, sequences, staking, governance | REST or gRPC |
| look up a Cosmos tx by hash, or search txs by event | CometBFT RPC /tx, /tx_search or REST /cosmos/tx/v1beta1/… |
| verify contracts, list token holders | Explorer API |
Smoke test
bash
curl -s -X POST https://rpc.bkc.network -H 'content-type: application/json' \
--data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}' # {"result":"0x40000"}
curl -s https://comet-rpc.bkc.network/status | jq -r .result.sync_info.latest_block_height
curl -s https://api.bkc.network/cosmos/base/tendermint/v1beta1/blocks/latest | jq -r .block.header.height
grpcurl grpc.bkc.network:443 cosmos.base.tendermint.v1beta1.Service/GetLatestBlock | jq -r .block.header.heightFair use
The public endpoints are shared testnet infrastructure with no API keys. For load tests, indexers or production-like traffic, run your own full node.
