Base RPC URL:免 key 接入、curl 与 viem 示例
通过公开 RPC URL 或 API key 连接 Base 主网:在路径或请求头传入密钥,调用 eth_chainId 读取链并查询最新区块高度,页面给出请求示例、每 IP 限额与响应字段说明,缺少密钥时返回错误码。
先用下方 Base 主网公开 RPC URL 免 key 读取链 ID。支持方法与每 IP 限额见 Base 链页;调用 public.methods 之外、链允许的方法时使用 key。
curl -sS "https://api.blockvectra.com/v1/base_mainnet/public" \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'链信息与端点
针对 Base 的每次请求均通过 URL 路径中的 base_mainnet 标识目标链。JSON-RPC 同时支持在 URL 路径中携带 Key 以及在请求头中传入 x-api-key 两种鉴权写法。
| 参数 / 端点 | 取值 / 模板 | 鉴权方式 |
|---|---|---|
| Chain ID(EIP-155) | 8453 | — |
| JSON-RPC(路径携带 Key) | POST https://api.blockvectra.com/v1/base_mainnet/{api_key} | URL 路径中传入 API key |
| JSON-RPC(请求头携带 Key) | POST https://api.blockvectra.com/v1/base_mainnet | 传入 x-api-key: {api_key} 请求头 |
| WebSocket(路径携带 Key) | wss://api.blockvectra.com/v1/base_mainnet/{api_key} | URL 路径中传入 API key |
| WebSocket(请求头携带 Key) | wss://api.blockvectra.com/v1/base_mainnet | 传入 x-api-key: {api_key} 或 Authorization: Bearer {api_key} 请求头 |
| WebSocket 订阅类型 | newHeads, logs | — |
| Data API 基址 | GET https://api.blockvectra.com/v1/data/base_mainnet/… | 传入 x-api-key: {api_key} 请求头 |
| 公开状态端点 | GET https://api.blockvectra.com/v1/status | 无需鉴权(公开) |
直接运行的 curl 与 viem 示例
可以使用 curl 或 viem 等客户端直接发起 JSON-RPC 调用。请在环境变量 BLOCKVECTRA_API_KEY 中配置你的 API key:
通过 x-api-key 请求头查询 EIP-155 链 ID:
curl -s "https://api.blockvectra.com/v1/base_mainnet" \
-H "Content-Type: application/json" \
-H "x-api-key: $BLOCKVECTRA_API_KEY" \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'响应结构说明
接口响应严格遵循 JSON-RPC 2.0 规范:
- 成功响应:返回包含
jsonrpc: "2.0"、对应请求整数id以及十六进制编码字符串result的对象(eth_chainId返回十六进制链 ID;eth_blockNumber返回最新区块高度)。 - 未开放方法:请求未开放的方法返回 JSON-RPC 错误码
-32601(method not available,不计费)。 - 超出状态窗口:查询超出历史状态保留窗口的区块返回 JSON-RPC 错误码
-32011(不计费)。 - 缺失 API Key:未提供 API key 时返回 HTTP 401 与 JSON-RPC 错误码
-32024(missing_api_key,不计费)。 - 参数错误:请求参数格式不符合要求返回 JSON-RPC 错误码
-32602(不计费)。
支持情况与方法策略
实时参数见 GET /v1/chains(methods、max_logs_block_range、state_window_blocks)。
网络参数与调用限制
- eth_getLogs 单次区块跨度: 单次最多 1000 个区块
- 历史状态窗口: 最近 10000 个区块(超出窗口返回 -32011)
- 执行追踪(debug_trace*): 暂不支持
各链允许的方法见 支持的链
区块链 Data API
实时参数见 GET /v1/chains(data)。
Blockchain Data API 状态
已开放 — Base 主网的 Blockchain Data API 现已开放。支持的数据集与接口请参阅数据集目录。 浏览数据集目录 →
查找合约的直接调用并读取 receipt
要列出固定区块区间内直接发给你的合约的交易并读取 receipt,先翻页读取地址交易端点,再对每个返回的哈希调用 eth_getTransactionReceipt。区间两端都包含,200 个区块即 TO_BLOCK = FROM_BLOCK + 199。
export CONTRACT=0x... # 你的合约地址
export FROM_BLOCK=... # 区间起点(含)
export TO_BLOCK=... # 区间终点(含)
curl -sS "https://api.blockvectra.com/v1/data/base_mainnet/addresses/$CONTRACT/transactions?from_block=$FROM_BLOCK&to_block=$TO_BLOCK&direction=to&limit=500" \
-H "x-api-key: $BLOCKVECTRA_API_KEY"data中每一项都有hash。响应顶层若有next_cursor,用相同查询参数再加&cursor=<next_cursor>重新请求,游标原样传回;next_cursor不再出现时停止。即使next_cursor还在,一页也可能少于limit条,甚至为空。- 每一页都检查
meta.coverage。partial表示区间被裁剪,或起点早于该数据集的已索引起点,此时列表没有覆盖整个区间。空列表不能证明区间内没有调用。 - 用同一个 key 在同一条链上逐个读取 receipt。
hash本身已带0x,把data里的完整值原样放进TX_HASH,不要再加一个0x:
curl -sS "https://api.blockvectra.com/v1/base_mainnet" \
-H "Content-Type: application/json" \
-H "x-api-key: $BLOCKVECTRA_API_KEY" \
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"eth_getTransactionReceipt\",\"params\":[\"$TX_HASH\"]}"按层处理错误:
- Data API:
409 not_indexed_yet表示区间高于已索引的最新区块,稍后重试,或加clamp=true,它会把to_block截到已索引的最新区块并返回meta.coverage = "partial"(裁剪后的结果不再覆盖你原来的固定区间;若from_block本身就高于已索引的最新区块,clamp=true仍返回 409);409 window_too_large表示区间超过 100,000 个区块;422 no_coverage表示区间不在该数据集范围内;503 unavailable带Retry-After,等待至少这么多秒后用同一个游标重试。 - JSON-RPC:HTTP 错误或响应体里的
error对象都是调用失败。"result": null表示该哈希没有返回 receipt,不算成功,请稍后重试或核对哈希。receipt 非空也不代表交易成功:status为0x1是成功,0x0表示已 revert。
这里只列出 to 为该合约的顶层交易,不含事件、内部调用,也不含经由其他合约间接调用该合约的交易。支持的方法与区间以 GET /v1/chains 和实际响应为准。分页与事件查询见eth_getLogs 与代币转账 API。
开始使用与获取 API Key
新账户注册即得 30,000,000 CU,无需信用卡。- Web 控制台:通过以太坊钱包签名登录,并在控制台创建 API key。详细步骤请参阅快速上手指南。
- 程序化开户:自主 AI Agent、自动化工作流与脚本可通过以太坊钱包签名(EIP-191)免浏览器登录并创建 API key。详见程序化开户指南。
- AI Agent:自主 AI Agent 可通过官方 MCP 服务自动发现 Base 支持特性。详见 AI Agent 集成指南。
- 限额提升:首次付费充值后,解除账户级每秒调用上限;每个 key 仍有默认 CU 速率与突发上限。关于当前费率与计费规则,请参阅定价页面。
相关指南与资源
- Base 官方开发者文档:关于 Base 网络的详细技术规范、Gas 机制与合约信息,请参阅官方 Base 文档。
- 钱包自定义 RPC:如需在 MetaMask 或 Rabby 中配置 Base 的自定义 RPC 端点,请参阅钱包自定义 RPC 指南。
- 交易模拟:在广播交易前预演执行并检查状态变化,请参阅交易模拟指南(eth_simulateV1)。
下一步
最后更新: