เชนที่รองรับ
เครือข่ายบล็อกเชนที่รองรับ, Chain ID, โครงสร้าง URL และความพร้อมใช้งานของฟีเจอร์ ตรวจสอบ endpoint, เมธอด และความครอบคลุมของชุดข้อมูลในแต่ละเชน
BlockVectra คือผู้ให้บริการข้อมูลบล็อกเชนแบบมัลติเชน: รองรับ JSON-RPC ในทุกเชนที่เราสนับสนุน และรองรับ Data API ในเชนที่เปิดให้บริการ
คีย์เดียว ใช้ได้ทุกเชน
- คีย์เดียวใช้ได้ทุกเครือข่าย: API key เดียวกันสามารถใช้ได้กับทุกเครือข่ายบล็อกเชนที่ BlockVectra รองรับ โดยไม่ต้องแยกคีย์ตามเชน
- ระบุเชนใน URL: ทุกคำขอจะระบุชื่อเชนอย่างชัดเจนผ่านส่วนพาธ
{chain} - การใช้งานรวมข้ามเชน: ยอดคงเหลือของบัญชี, บักเก็ตจำกัดอัตรา Compute Unit (CU) และขีดจำกัดคำขอต่อวินาทีของแพ็กเกจฟรีจะแชร์ร่วมกันในทุกเชน
- ราคา: ดูที่ หน้าแสดงราคา
ทดลองใช้โดยไม่ต้องมี API key
เลือก public RPC endpoint ฟรี สำหรับเมธอดของกระเป๋าเงินโดยไม่ต้องใช้ API key โดยมีการแสดงรายการเมธอดสาธารณะและขีดจำกัดต่อ IP แยกตามเครือข่าย โปรดดู เริ่มต้นใช้งานอย่างรวดเร็ว สำหรับตัวอย่างการเรียกใช้งาน
เทมเพลต URL
โครงสร้าง URL มาตรฐานสำหรับการเรียกใช้ JSON-RPC และ Data API:
| บริการ | โหมด | เทมเพลต URL | หมายเหตุ |
|---|---|---|---|
| JSON-RPC | คีย์ในพาธ | POST /v1/{chain}/{api_key} | รูปแบบที่ง่ายที่สุด แนะนำสำหรับ curl และ HTTP client |
| JSON-RPC | คีย์ในส่วนหัว | POST /v1/{chain} | ส่งคีย์ในส่วนหัวคำขอ x-api-key: {api_key} |
| Data API | REST endpoint | GET /v1/data/{chain}/… | ส่งคีย์ในส่วนหัวคำขอ x-api-key |
| Status | สถานะสาธารณะ | GET /v1/status | ไม่ต้องใช้คีย์ ส่งคืนสถานะและบล็อกล่าสุดของแต่ละเชนสาธารณะ |
หมายเหตุ: คำขอที่ไม่มีส่วนระบุเชน (เช่น
POST /v1หรือPOST /v1/) จะส่งคืน HTTP 404 พร้อมเนื้อหาว่างเปล่า (empty body) ดูรายละเอียดการตั้งค่าได้ที่ เริ่มต้นใช้งานอย่างรวดเร็ว
เมทริกซ์เชนที่รองรับ
เครือข่ายบล็อกเชนที่พร้อมใช้งานในปัจจุบันบน BlockVectra พร้อมความสามารถในการให้บริการ:
แสดง endpoint, เมธอดที่ใช้ API key, การสมัครรับข้อมูล (subscription), การส่งธุรกรรม, ขีดจำกัดของสถานะและบันทึก (logs), ชุดข้อมูล, เทสต์เน็ตที่เกี่ยวข้อง และคู่มือแยกตามแต่ละเชน ข้อมูลที่ไม่ทราบจะยังคงแสดงว่าไม่ทราบ สามารถขยายดูรายละเอียดของเชนใต้เมทริกซ์เพื่อดูตัวอย่างคำขอที่เชนนั้นรองรับ
| เชน | {chain} | Chain ID | Tracing | Endpoint สาธารณะ | WebSocket | Data API | จำนวนเมธอดที่ใช้ API key | Webhook push | ส่งธุรกรรม | ส่งธุรกรรม (endpoint สาธารณะแบบไม่ต้องใช้ API key) | ช่วงประวัติสถานะ | ช่วงบล็อกสูงสุดของ eth_getLogs | ชุดข้อมูล Data API | testnet ที่เกี่ยวข้อง | คู่มือที่เกี่ยวข้อง |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| RPC และ Data API ของ arb_mainnet | arb_mainnet | 42161 | ✓ | https://api.blockvectra.com/v1/arb_mainnet/public | ไม่รองรับ | เปิดให้บริการ | 43 | รองรับ · การยืนยัน 1–1 (ค่าเริ่มต้น 1) คู่มือ Webhook push | รองรับ | รองรับ | สถานะย้อนหลังสำหรับ 5,000 บล็อกล่าสุด | 1,000 บล็อก | บล็อก, ธุรกรรม, ธุรกรรมของแอดเดรส, การโอน, เมทาดาตาของโทเค็น, ความสดใหม่ของข้อมูล | ไม่ระบุ | ไม่ระบุ |
| RPC และ Data API ของ base_mainnet | base_mainnet | 8453 | — | https://api.blockvectra.com/v1/base_mainnet/public | ไม่รองรับ | เปิดให้บริการ | 39 | รองรับ · การยืนยัน 1–1 (ค่าเริ่มต้น 1) คู่มือ Webhook push | รองรับ | รองรับ | สถานะย้อนหลังสำหรับ 10,000 บล็อกล่าสุด | 1,000 บล็อก | บล็อก, ธุรกรรม, ธุรกรรมของแอดเดรส, การโอน, เมทาดาตาของโทเค็น, ความสดใหม่ของข้อมูล | ไม่ระบุ | Base |
| RPC และ Data API ของ bsc_mainnet | bsc_mainnet | 56 | — | https://api.blockvectra.com/v1/bsc_mainnet/public | ไม่รองรับ | เปิดให้บริการ | 25 | รองรับ · การยืนยัน 1–1 (ค่าเริ่มต้น 1) คู่มือ Webhook push | รองรับ | รองรับ | สถานะย้อนหลังสำหรับ 100 บล็อกล่าสุด | 1,000 บล็อก | บล็อก, ธุรกรรม, ธุรกรรมของแอดเดรส, การโอน, เมทาดาตาของโทเค็น, ความสดใหม่ของข้อมูล | ไม่ระบุ | ไม่ระบุ |
| RPC และ Data API ของ Ethereum | eth_mainnet | 1 | ✓ | https://api.blockvectra.com/v1/eth_mainnet/public | ไม่รองรับ | เปิดให้บริการ | 38 | รองรับ · การยืนยัน 1–1 (ค่าเริ่มต้น 1) คู่มือ Webhook push | รองรับ | รองรับ | สถานะย้อนหลังสำหรับ 250,000 บล็อกล่าสุด | 1,000 บล็อก | บล็อก, ธุรกรรม, ธุรกรรมของแอดเดรส, การโอน, เมทาดาตาของโทเค็น, ความสดใหม่ของข้อมูล | ไม่ระบุ | ไม่ระบุ |
| RPC และ Data API ของ eth_sepolia | eth_sepolia | 11155111 | — | https://api.blockvectra.com/v1/eth_sepolia/public | ไม่รองรับ | เปิดให้บริการ | 29 | รองรับ · การยืนยัน 1–1 (ค่าเริ่มต้น 1) คู่มือ Webhook push | รองรับ | รองรับ | ไม่ระบุ | 1,000 บล็อก | บล็อก, ธุรกรรม, ธุรกรรมของแอดเดรส, การโอน, เมทาดาตาของโทเค็น, ความสดใหม่ของข้อมูล | ไม่ระบุ | ไม่ระบุ |
| RPC และ Data API ของ HyperEVM | hyperevm_mainnet | 999 | — | https://api.blockvectra.com/v1/hyperevm_mainnet/public | ไม่รองรับ | เปิดให้บริการ | 24 | รองรับ · การยืนยัน 1–1 (ค่าเริ่มต้น 1) คู่มือ Webhook push | ไม่รองรับ | ไม่รองรับ | ไม่ระบุ | 1,000 บล็อก | บล็อก, ธุรกรรม, ธุรกรรมของแอดเดรส, การโอน, เมทาดาตาของโทเค็น, ยอดคงเหลือ, ผู้ถือ, NFT, ความสดใหม่ของข้อมูล | ไม่ระบุ | HyperEVM backfill and polling |
| RPC และ Data API ของ polygon_mainnet | polygon_mainnet | 137 | ✓ | https://api.blockvectra.com/v1/polygon_mainnet/public | ไม่รองรับ | เปิดให้บริการ | 43 | รองรับ · การยืนยัน 1–1 (ค่าเริ่มต้น 1) คู่มือ Webhook push | รองรับ | รองรับ | สถานะย้อนหลังสำหรับ 126 บล็อกล่าสุด | 1,000 บล็อก | บล็อก, ธุรกรรม, ธุรกรรมของแอดเดรส, การโอน, เมทาดาตาของโทเค็น, ความสดใหม่ของข้อมูล | ไม่ระบุ | ไม่ระบุ |
| RPC และ Data API ของ Robinhood Chain | robinhood_mainnet | 4663 | ✓ | https://api.blockvectra.com/v1/robinhood_mainnet/public | รองรับ (newHeads, logs) | เปิดให้บริการ | 43 | รองรับ · การยืนยัน 1–1 (ค่าเริ่มต้น 1) คู่มือ Webhook push | รองรับ | รองรับ | สถานะย้อนหลังสำหรับ 900 บล็อกล่าสุด | 1,000 บล็อก | บล็อก, ธุรกรรม, ธุรกรรมของแอดเดรส, การโอน, เมทาดาตาของโทเค็น, ยอดคงเหลือ, ผู้ถือ, NFT, การสวอป DEX, ราคา DEX, หุ้นโทเค็นไนซ์, Trace, ความสดใหม่ของข้อมูล | ไม่ระบุ | Robinhood Chain Stock token multiplier Tokenized stocks |
| RPC ของ robinhood_testnet | robinhood_testnet | 46630 | ✓ | https://api.blockvectra.com/v1/robinhood_testnet/public | รองรับ (newHeads, logs) | ยังไม่พร้อมใช้งาน | 43 | รองรับ · การยืนยัน 1–1 (ค่าเริ่มต้น 1) คู่มือ Webhook push | รองรับ | รองรับ | สถานะย้อนหลังสำหรับ 1,023 บล็อกล่าสุด | 1,000 บล็อก | ไม่รองรับ | ไม่ระบุ | Testnet faucet Robinhood Chain Testnet starter |
ขั้นตอนถัดไปเมื่อมี API key
arb_mainnet
eth_getLogs
set -eu
MAX_LOGS_BLOCK_RANGE=1000
head=$(curl -fsS 'https://api.blockvectra.com/v1/arb_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}' | python3 -c 'import json,sys; print(int(json.load(sys.stdin)["result"],16))')
from=$((head >= MAX_LOGS_BLOCK_RANGE ? head - MAX_LOGS_BLOCK_RANGE + 1 : 0))
from_hex=$(printf '0x%x' "$from")
to_hex=$(printf '0x%x' "$head")
curl -fsS 'https://api.blockvectra.com/v1/arb_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' \
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_getLogs\",\"params\":[{\"fromBlock\":\"$from_hex\",\"toBlock\":\"$to_hex\"}]}"eth_getLogsData API
curl -fsS 'https://api.blockvectra.com/v1/data/arb_mainnet/status/freshness' -H "x-api-key: $BLOCKVECTRA_API_KEY"Data APIสร้างการติดตาม Webhook · สร้างการติดตาม Webhook · การใช้งานและ CU · เติมเงิน
base_mainnet
eth_getLogs
set -eu
MAX_LOGS_BLOCK_RANGE=1000
head=$(curl -fsS 'https://api.blockvectra.com/v1/base_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}' | python3 -c 'import json,sys; print(int(json.load(sys.stdin)["result"],16))')
from=$((head >= MAX_LOGS_BLOCK_RANGE ? head - MAX_LOGS_BLOCK_RANGE + 1 : 0))
from_hex=$(printf '0x%x' "$from")
to_hex=$(printf '0x%x' "$head")
curl -fsS 'https://api.blockvectra.com/v1/base_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' \
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_getLogs\",\"params\":[{\"fromBlock\":\"$from_hex\",\"toBlock\":\"$to_hex\"}]}"eth_getLogsData API
curl -fsS 'https://api.blockvectra.com/v1/data/base_mainnet/status/freshness' -H "x-api-key: $BLOCKVECTRA_API_KEY"Data APIสร้างการติดตาม Webhook · สร้างการติดตาม Webhook · การใช้งานและ CU · เติมเงิน
bsc_mainnet
eth_getLogs
set -eu
MAX_LOGS_BLOCK_RANGE=1000
head=$(curl -fsS 'https://api.blockvectra.com/v1/bsc_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}' | python3 -c 'import json,sys; print(int(json.load(sys.stdin)["result"],16))')
from=$((head >= MAX_LOGS_BLOCK_RANGE ? head - MAX_LOGS_BLOCK_RANGE + 1 : 0))
from_hex=$(printf '0x%x' "$from")
to_hex=$(printf '0x%x' "$head")
curl -fsS 'https://api.blockvectra.com/v1/bsc_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' \
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_getLogs\",\"params\":[{\"fromBlock\":\"$from_hex\",\"toBlock\":\"$to_hex\"}]}"eth_getLogsData API
curl -fsS 'https://api.blockvectra.com/v1/data/bsc_mainnet/status/freshness' -H "x-api-key: $BLOCKVECTRA_API_KEY"Data APIสร้างการติดตาม Webhook · สร้างการติดตาม Webhook · การใช้งานและ CU · เติมเงิน
Ethereum
eth_getLogs
set -eu
MAX_LOGS_BLOCK_RANGE=1000
head=$(curl -fsS 'https://api.blockvectra.com/v1/eth_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}' | python3 -c 'import json,sys; print(int(json.load(sys.stdin)["result"],16))')
from=$((head >= MAX_LOGS_BLOCK_RANGE ? head - MAX_LOGS_BLOCK_RANGE + 1 : 0))
from_hex=$(printf '0x%x' "$from")
to_hex=$(printf '0x%x' "$head")
curl -fsS 'https://api.blockvectra.com/v1/eth_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' \
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_getLogs\",\"params\":[{\"fromBlock\":\"$from_hex\",\"toBlock\":\"$to_hex\"}]}"eth_getLogsData API
curl -fsS 'https://api.blockvectra.com/v1/data/eth_mainnet/status/freshness' -H "x-api-key: $BLOCKVECTRA_API_KEY"Data APIสร้างการติดตาม Webhook · สร้างการติดตาม Webhook · การใช้งานและ CU · เติมเงิน
eth_sepolia
eth_getLogs
set -eu
MAX_LOGS_BLOCK_RANGE=1000
head=$(curl -fsS 'https://api.blockvectra.com/v1/eth_sepolia' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}' | python3 -c 'import json,sys; print(int(json.load(sys.stdin)["result"],16))')
from=$((head >= MAX_LOGS_BLOCK_RANGE ? head - MAX_LOGS_BLOCK_RANGE + 1 : 0))
from_hex=$(printf '0x%x' "$from")
to_hex=$(printf '0x%x' "$head")
curl -fsS 'https://api.blockvectra.com/v1/eth_sepolia' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' \
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_getLogs\",\"params\":[{\"fromBlock\":\"$from_hex\",\"toBlock\":\"$to_hex\"}]}"eth_getLogsData API
curl -fsS 'https://api.blockvectra.com/v1/data/eth_sepolia/status/freshness' -H "x-api-key: $BLOCKVECTRA_API_KEY"Data APIสร้างการติดตาม Webhook · สร้างการติดตาม Webhook · การใช้งานและ CU · เติมเงิน
HyperEVM
eth_getLogs
set -eu
MAX_LOGS_BLOCK_RANGE=1000
head=$(curl -fsS 'https://api.blockvectra.com/v1/hyperevm_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}' | python3 -c 'import json,sys; print(int(json.load(sys.stdin)["result"],16))')
from=$((head >= MAX_LOGS_BLOCK_RANGE ? head - MAX_LOGS_BLOCK_RANGE + 1 : 0))
from_hex=$(printf '0x%x' "$from")
to_hex=$(printf '0x%x' "$head")
curl -fsS 'https://api.blockvectra.com/v1/hyperevm_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' \
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_getLogs\",\"params\":[{\"fromBlock\":\"$from_hex\",\"toBlock\":\"$to_hex\"}]}"eth_getLogsData API
curl -fsS 'https://api.blockvectra.com/v1/data/hyperevm_mainnet/status/freshness' -H "x-api-key: $BLOCKVECTRA_API_KEY"Data APIสร้างการติดตาม Webhook · สร้างการติดตาม Webhook · การใช้งานและ CU · เติมเงิน
polygon_mainnet
eth_getLogs
set -eu
MAX_LOGS_BLOCK_RANGE=1000
head=$(curl -fsS 'https://api.blockvectra.com/v1/polygon_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}' | python3 -c 'import json,sys; print(int(json.load(sys.stdin)["result"],16))')
from=$((head >= MAX_LOGS_BLOCK_RANGE ? head - MAX_LOGS_BLOCK_RANGE + 1 : 0))
from_hex=$(printf '0x%x' "$from")
to_hex=$(printf '0x%x' "$head")
curl -fsS 'https://api.blockvectra.com/v1/polygon_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' \
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_getLogs\",\"params\":[{\"fromBlock\":\"$from_hex\",\"toBlock\":\"$to_hex\"}]}"eth_getLogsData API
curl -fsS 'https://api.blockvectra.com/v1/data/polygon_mainnet/status/freshness' -H "x-api-key: $BLOCKVECTRA_API_KEY"Data APIสร้างการติดตาม Webhook · สร้างการติดตาม Webhook · การใช้งานและ CU · เติมเงิน
Robinhood Chain
eth_getLogs
set -eu
MAX_LOGS_BLOCK_RANGE=1000
head=$(curl -fsS 'https://api.blockvectra.com/v1/robinhood_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}' | python3 -c 'import json,sys; print(int(json.load(sys.stdin)["result"],16))')
from=$((head >= MAX_LOGS_BLOCK_RANGE ? head - MAX_LOGS_BLOCK_RANGE + 1 : 0))
from_hex=$(printf '0x%x' "$from")
to_hex=$(printf '0x%x' "$head")
curl -fsS 'https://api.blockvectra.com/v1/robinhood_mainnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' \
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_getLogs\",\"params\":[{\"fromBlock\":\"$from_hex\",\"toBlock\":\"$to_hex\"}]}"eth_getLogsData API
curl -fsS 'https://api.blockvectra.com/v1/data/robinhood_mainnet/status/freshness' -H "x-api-key: $BLOCKVECTRA_API_KEY"Data APIWebSocket
echo '{"jsonrpc":"2.0","id":1,"method":"eth_subscribe","params":["newHeads"]}' | websocat --no-close -H="x-api-key: $BLOCKVECTRA_API_KEY" 'wss://api.blockvectra.com/v1/robinhood_mainnet'WebSocketสร้างการติดตาม Webhook · สร้างการติดตาม Webhook · การใช้งานและ CU · เติมเงิน
robinhood_testnet
eth_getLogs
set -eu
MAX_LOGS_BLOCK_RANGE=1000
head=$(curl -fsS 'https://api.blockvectra.com/v1/robinhood_testnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}' | python3 -c 'import json,sys; print(int(json.load(sys.stdin)["result"],16))')
from=$((head >= MAX_LOGS_BLOCK_RANGE ? head - MAX_LOGS_BLOCK_RANGE + 1 : 0))
from_hex=$(printf '0x%x' "$from")
to_hex=$(printf '0x%x' "$head")
curl -fsS 'https://api.blockvectra.com/v1/robinhood_testnet' -H "x-api-key: $BLOCKVECTRA_API_KEY" -H 'Content-Type: application/json' \
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_getLogs\",\"params\":[{\"fromBlock\":\"$from_hex\",\"toBlock\":\"$to_hex\"}]}"eth_getLogsWebSocket
echo '{"jsonrpc":"2.0","id":1,"method":"eth_subscribe","params":["newHeads"]}' | websocat --no-close -H="x-api-key: $BLOCKVECTRA_API_KEY" 'wss://api.blockvectra.com/v1/robinhood_testnet'WebSocketสร้างการติดตาม Webhook · สร้างการติดตาม Webhook · การใช้งานและ CU · เติมเงิน
HyperEVM
บล็อก HyperEVM รวมธุรกรรมระบบของ HyperCore (จากแอดเดรส 0x2222…2222 หรือ 0x20…, gasPrice 0)
การส่งธุรกรรมยังไม่รองรับบนเชนนี้ (eth_sendRawTransaction ส่งกลับ -32601 method_not_allowed); เมธอดการอ่านทำงานได้ตามปกติ
ต้องการเชนอื่นหรือไม่? แจ้งให้เราทราบ →
Ethereum
- Chain ID:
1 - ชื่อเชน (
{chain}ใน URL):eth_mainnetเช่นPOST /v1/eth_mainnet/{api_key}หรือGET /v1/data/eth_mainnet/…
JSON-RPC
- เมธอด: เมธอดที่พร้อมใช้งานสำหรับแต่ละเชนจะกำหนดโดย
methods.allow/denyในGET /v1/chains(ดู นโยบายเมธอด) เมธอดที่อยู่นอกเหนือขอบเขตดังกล่าวจะส่งคืน-32601 - เฉพาะข้อมูลล่าสุด: หน้าต่างสถานะย้อนหลังจะกำหนดโดย
state_window_blocksในGET /v1/chainsการค้นหาสถานะย้อนหลังที่อยู่นอกหน้าต่างจะส่งคืน-32011(ไม่คิดค่าบริการ); การค้นหาบล็อก, ใบเสร็จ (receipt) และบันทึก (log) นอกหน้าต่างจะส่งคืน-32000 old data not available due to pruning(ไม่คิดค่าบริการ); การค้นหาธุรกรรมด้วยแฮชนอกหน้าต่างจะส่งคืนresult: null eth_getLogs: ช่วงบล็อกสูงสุดต่อคำขอกำหนดโดยmax_logs_block_rangeในGET /v1/chains
Data API
- เฉพาะข้อมูลล่าสุด: ความครอบคลุมของข้อมูล Ethereum กำหนดโดย
coverage.from_blockในGET /v1/data/chainsหมายเลขบล็อกหรือช่วงที่ต่ำกว่าจุดเริ่มต้นจะส่งคืน422 no_coverage; แฮชธุรกรรมที่หลุดออกจากหน้าต่างไปแล้วจะส่งคืน404 - เมื่อ
from_blockเป็นnull: จุดเริ่มต้นจะไม่ทราบค่าชั่วคราว อย่าถือว่าเป็น0หรือเป็นประวัติทั้งหมด และอย่าส่งคำขอย้อนหลัง (ตามหมายเลขบล็อก, ช่วง หรือแฮช) สำหรับ Ethereum จนกว่าค่านี้จะกลับมาเป็นจำนวนเต็มอีกครั้ง คำขอเหล่านี้จะส่งคืน503 unavailable 503 gateway_overloaded: ลองใหม่อีกครั้งพร้อม backoff (Retry-After: 1)- ชุดข้อมูล: ชุดข้อมูลที่ Ethereum ให้บริการจะระบุไว้ใน
featuresของGET /v1/data/chains; ชุดข้อมูลอื่นจะส่งคืน422 no_coverage(ไม่คิดค่าบริการ) ธุรกรรมและการโอนของแอดเดรสจะครอบคลุมเฉพาะในหน้าต่างเท่านั้น: การตอบกลับที่คร่อมจุดเริ่มต้นจะถูกระบุเป็นmeta.coverage: "partial"
การค้นหาเชนโดยใช้โปรแกรม
ใช้ endpoint สาธารณะเหล่านี้เพื่อค้นหาเชนที่รองรับและสถานะของเชน:
1. สถานะการให้บริการ (GET /v1/status)
endpoint สาธารณะที่ไม่ต้องใช้ API key (CORS *) โดยจะแสดงรายการเฉพาะเชนที่เปิดให้บริการแก่สาธารณะ และส่งคืนสถานะพร้อมบล็อกล่าสุดที่ได้รับการทำดัชนี:
curl -s "https://api.blockvectra.com/v1/status"ตัวอย่างการตอบกลับ:
{
"checked_at": "2026-09-28T07:40:00Z",
"gateway": { "status": "ok" },
"chains": [
{
"chain": "robinhood_mainnet",
"name": "Robinhood Chain",
"chain_id": 4663,
"jsonrpc": true,
"data": true,
"status": "ok",
"data_status": "ok",
"sync": { "stage": "synced", "node_block": 74600000, "target_block": null },
"head": {
"block": 74600000,
"time": "2026-09-28T07:39:58Z",
"lag_seconds": 3
}
},
{
"chain": "eth_mainnet",
"name": "Ethereum",
"chain_id": 1,
"jsonrpc": true,
"data": true,
"status": "ok",
"data_status": "ok",
"sync": { "stage": "synced", "node_block": 26010000, "target_block": null },
"head": {
"block": 26010000,
"time": "2026-09-28T07:39:59Z",
"lag_seconds": 1
}
}
]
}ฟิลด์ name ของแต่ละรายการจะเป็นชื่อแสดงผลภาษาอังกฤษของเชนเสมอ jsonrpc และ data จะรายงานว่าเชนนั้นเปิดให้บริการสำหรับ JSON-RPC และ Data API หรือไม่ตามลำดับ; status จะเป็น "ok" หรือ "unavailable" หากเชนกำลังซิงค์อยู่ การเรียกใช้เชนนั้นจะส่งคืน -32010 ใน /v1/status นั้น status จะรายงานว่า JSON-RPC ทำงานปกติหรือไม่ และ data_status จะรายงานว่า Data API ทำงานปกติหรือไม่ ("ok", "syncing" หรือ "unavailable"); ใน /v1/data/chains ค่า coverage.has_data ที่เป็น false หมายความว่าเชนยังไม่มีข้อมูลที่ได้รับการทำดัชนี
2. เชนของ Data API (GET /v1/data/chains)
ต้องระบุ API key ในส่วนหัว x-api-key (คิดค่าบริการ) ส่งคืนรายการเชนสาธารณะที่ Data API ให้บริการ โดยแต่ละเชนจะระบุสิ่งที่ให้บริการ (features), บล็อกที่ข้อมูลครอบคลุม (coverage), มาร์กเกอร์ฉันทามติ safe/finalized ของโหนดและสถานะ (finality) ตลอดจนขีดจำกัดต่อคำขอ (limits):
curl -s "https://api.blockvectra.com/v1/data/chains" \
-H "x-api-key: $BLOCKVECTRA_API_KEY"ตัวอย่างการตอบกลับ:
{
"data": [
{
"chain": "robinhood_mainnet",
"chain_slug": "ROBINHOOD_MAINNET",
"name": "Robinhood Chain",
"chain_id": 4663,
"chain_external_id": "eip155:4663",
"features": [
"blocks", "transactions", "address_transactions", "transfers", "token_metadata",
"balances", "holders", "nfts", "dex_swaps", "dex_prices", "stocks", "traces", "freshness"
],
"coverage": { "from_block": 0, "traces_from_block": 1000000, "has_data": true },
"finality": { "model": "node_tags", "status": "ok", "safe_block": 74599400, "finalized_block": 74598900 },
"limits": { "max_page_size": 500, "max_window_blocks": 100000, "max_pools_for_token": 200, "max_batch_addresses": 100 }
},
{
"chain": "eth_mainnet",
"chain_slug": "ETH_MAINNET",
"name": "Ethereum",
"chain_id": 1,
"chain_external_id": "eip155:1",
"features": ["blocks", "transactions", "address_transactions", "transfers", "token_metadata", "freshness"],
"coverage": { "from_block": 1000000, "traces_from_block": null, "has_data": true },
"finality": { "model": "node_tags", "status": "stale", "safe_block": 26009950, "finalized_block": 26009900 },
"limits": { "max_page_size": 500, "max_window_blocks": 100000, "max_pools_for_token": 200, "max_batch_addresses": 100 }
}
]
}finality จะรายงานมาร์กเกอร์ฉันทามติของโหนด (model คือ "node_tags"), สุขภาพของมาร์กเกอร์ (status คือ "ok", "stale" หรือ "unavailable") และ safe_block กับ finalized_block ปัจจุบัน (safe_block >= finalized_block และทั้งสองค่าจะเป็น null เฉพาะเมื่อสถานะเป็น "unavailable")
coverage.from_block คือบล็อกต่ำสุดที่ได้รับการทำดัชนี ซึ่งอ่านค่าแบบเรียลไทม์ โดยจะมีค่าเป็น 0 เมื่อประวัติของเชนครอบคลุมไปถึงบล็อกแรก (genesis) ค่านี้จะเป็น null ได้ก็ต่อเมื่อเชนไม่มีบล็อกที่ได้รับการทำดัชนีเลย (has_data = false) หรือในระหว่างที่ไม่สามารถระบุจุดเริ่มต้นได้: ให้ถือว่า null คือไม่ทราบค่า — ไม่ใช่ประวัติที่สมบูรณ์และไม่ใช่ 0 — และคำขอย้อนหลังจะส่งคืน 503 unavailable โปรดอ่านค่าจาก endpoint นี้ระหว่างรันไทม์เสมอแทนที่จะฮาร์ดโค้ดค่าไว้ สำหรับ coverage.traces_from_block คือบล็อกแรกที่มีข้อมูล trace โดยคำขอ trace ก่อนหน้าบล็อกนี้ หรือที่อยู่ในช่วงที่มีช่องว่าง จะส่งคืน 422 no_coverage (ไม่คิดค่าบริการ)
การเรียกใช้ /v1/data/{chain}/… ด้วยเชนที่ไม่รู้จักหรือไม่เปิดเผยต่อสาธารณะจะส่งคืน HTTP 404 พร้อม error.code เป็น not_found (ไม่คิดค่าบริการ; ชื่อเชนต้องเป็น slug ตัวพิมพ์เล็กที่ตรงกันทุกประการ)
อัปเดตล่าสุด:
เริ่มต้นอย่างรวดเร็ว
อ่านความสูงของบล็อกโดยไม่ต้องใช้คีย์ สร้าง API key ส่งคำขอที่ยืนยันตัวตนครั้งแรก จากนั้นคิวรีกิจกรรมของหุ้น ดึงข้อมูล log ย้อนหลัง หรือรับ webhook
JSON-RPC
เมธอด JSON-RPC ที่รองรับ, น้ำหนัก CU และรหัสข้อผิดพลาด ตั้งค่า endpoint, เลือกเชน และตรวจสอบความพร้อมใช้งานของเมธอด, ราคา และกฎการเรียกเก็บเงิน