ERPC Bitcoin RPC 端點文件
Bitcoin RPC 端點文件
將 ERPC 作為您的 Bitcoin RPC 端點,用於處理 HTTP JSON-RPC 請求。Bitcoin RPC 是 ERPC 在 Global Edge Blockchain Infrastructure 中提供的 RPC APIs 之一,API key 可以在 ERPC Web Dashboard 中管理。
您可以直接使用與 Solana、Ethereum 和 Avalanche 相同的 RPC key。
請透過
api-key 查詢參數傳遞 API key,或以 Authorization: Bearer <YOUR_API_KEY> 傳送。兩者同時存在時,以查詢參數為準。端點
將 JSON-RPC 請求以 HTTP POST 方式傳送至:
text
https://edge.erpc.global/bitcoin?api-key=<YOUR_API_KEY>https://edge.erpc.global/bitcoin?api-key=<YOUR_API_KEY>或傳送至專用主機:
text
https://bitcoin.erpc.global?api-key=<YOUR_API_KEY>https://bitcoin.erpc.global?api-key=<YOUR_API_KEY>僅接受傳送至
/ 的請求。範例
以下是在查詢參數中帶入 API key 的 HTTP 請求範例。
bash
curl 'https://edge.erpc.global/bitcoin?api-key=<YOUR_API_KEY>' --header 'Content-Type: application/json' --data '{
"jsonrpc":"1.0","id":1,
"method":"getblockcount",
"params":[]
}'curl 'https://edge.erpc.global/bitcoin?api-key=<YOUR_API_KEY>' --header 'Content-Type: application/json' --data '{
"jsonrpc":"1.0","id":1,
"method":"getblockcount",
"params":[]
}'以下是在
Authorization 標頭中帶入 API key 的同一請求。bash
curl 'https://edge.erpc.global/bitcoin' --header 'Content-Type: application/json' --header 'Authorization: Bearer <YOUR_API_KEY>' --data '{
"jsonrpc":"1.0","id":1,
"method":"getblockcount",
"params":[]
}'curl 'https://edge.erpc.global/bitcoin' --header 'Content-Type: application/json' --header 'Authorization: Bearer <YOUR_API_KEY>' --data '{
"jsonrpc":"1.0","id":1,
"method":"getblockcount",
"params":[]
}'Bitcoin 接受將
jsonrpc 設為 1.0 或 2.0,也可以省略,且每次呼叫都需要 id。您可以在 ERPC Web Dashboard 上取得和檢視您的 API key。
批次請求
每次 HTTP 請求支援包含 1 到 100 個呼叫的 JSON-RPC 批次請求。每次呼叫都需要有自己的
id,且同一批次內的 id 值不可重複。批次中的每次呼叫都會作為單獨的呼叫計量。請求本文最大為 1 MiB。用量計量
用量以 token 計量,token 費率可能因方法而異。HTTP 批次請求中的每次呼叫都會單獨計量。
Free 方案限制
在 Free 方案中,您的帳戶每 10 秒可以傳送一個請求。此限制依帳戶計算,而不是依端點計算,因此傳送至另一條鏈的請求也可能計入此限制。過早傳送的請求會收到 HTTP
429 回應,retry-after 標頭會給出以秒為單位的等待時間。在 Free 方案中,包含兩個或更多 JSON-RPC 呼叫的請求會收到 HTTP
429 回應,且其中的呼叫都不會被傳送:每個呼叫都會收到錯誤碼為 -32041 的 JSON-RPC 錯誤。請改為逐個傳送這些呼叫。支援的方法
此端點提供以下 32 個 Bitcoin Core JSON-RPC 方法。
decoderawtransaction, decodescript, estimatesmartfee, getbestblockhash, getblock, getblockchaininfo, getblockcount, getblockfilter, getblockhash, getblockheader, getblockstats, getchaintips, getchaintxstats, getconnectioncount, getdifficulty, getmempoolancestors, getmempooldescendants, getmempoolinfo, getmininginfo, getnetworkinfo, getrawmempool, getrawtransaction, gettransaction, gettxout, gettxoutproof, gettxoutsetinfo, sendrawtransaction, testmempoolaccept, validateaddress, verifychain, verifymessage, verifytxoutproof未列出的方法會收到 HTTP
400 回應。回應狀態碼
| HTTP 狀態碼 | 意義 |
|---|---|
| 200 | 上游 JSON-RPC 回應。JSON-RPC 錯誤同樣以 HTTP 200 返回:保留請求的 id 與 error.code,error.message 為 ERPC upstream error,且不返回 error.data |
| 400 | 不在「支援的方法」清單中的方法或路徑、無效的 JSON-RPC 請求、空批次或超過 100 個呼叫的批次、批次中重複的 id,或超過 1 MiB 的請求本文 |
| 401 | 缺少 API key 或 API key 無效,或不符合該 key 的 IP 或 Origin 限制 |
| 405 | 使用了 POST 以外的請求方法 |
| 426 | 請求了 WebSocket Upgrade。此端點僅支援 HTTP |
| 429 | 已被限速,包括上文的 Free 方案限制:每 10 秒超過一個請求,或一個請求中包含兩個或更多呼叫。若有 retry-after 標頭,請等待其指定的秒數 |
| 502 | 上游請求無法完成:上游回應失敗、回應超過 8 MiB,或 30 秒內未回應 |
| 503 | 服務暫時無法使用 |
Bitcoin RPC 方法和文件
有關標準方法、參數和規範的完整列表,請參閱官方文件。






