Blockchain Data API 接口参考

用 Data API 查询区块、交易、地址、代币等已公开链上数据,在请求头传入 API key,按调用量计量与计费;请求超出所选数据集覆盖范围时返回 422 no_coverage 且不计费,可先核对覆盖率。

概述

用这份 Blockchain Data API 参考构造 REST 请求,查询已索引的区块、交易、地址、代币、NFT、DEX 活动、代币化股票与数据集新鲜度。选择数据集、检查链支持情况时先看数据集目录;查询钱包代币余额与转账历史时参考钱包资产教程。

  • 基础 URL:https://api.blockvectra.com/v1/data——除 /chains 外,所有路由都以链标识为前缀(如 https://api.blockvectra.com/v1/data/{chain}/…)
  • 协议:HTTP GET(批量查代币元数据 /{chain}/tokens:batch 用 POST),JSON 响应
  • 认证:需要 API key——在请求头 x-api-key 中传入你的 key。请求按 CU 计量与计费,仅对 2xx 成功响应计费
  • 以太坊:数据覆盖以 GET /v1/data/chains 的 coverage.from_block 为准,可用数据集也更少,见支持的链 → 以太坊
  • TypeScript SDK (GitHub) · DEX 日价示例 · npm · WETH/USDG · robinhood_mainnet · 2026-10-01 UTC · JSON
npm install @blockvectra/data-api

需要按游标续传历史?带检查点的 ERC-20 转账示例每次运行保存一页及该页原始 meta;用相同的固定查询和状态文件重跑,即从原来的 opaque cursor 继续。分页耗尽不等于历史完整,请另行核对 coverage。仅支持 ERC-20。安装预构建包即可直接运行,无需本地生成 schema 或从源码编译。

Data API 各操作的 CU 权重列于定价页,也可通过 GET /v1/plans 接口获取。具体请求与响应示例请参考快速上手 → 调用 Data API。关于路径版本、向后兼容规则与对接建议,请参阅 API 版本与兼容性。

链

Data API 按链提供索引数据:https://api.blockvectra.com/v1/data/{chain}/…。

各链支持的数据集与特性因链而异,完整支持矩阵见支持的链。GET https://api.blockvectra.com/v1/data/chains 会返回每条链的 features、coverage、finality 与 limits。请求超出数据集覆盖范围时返回 HTTP 422 no_coverage(不计费);请求未知或未公开的链名返回 HTTP 404,error.code 为 not_found(不计费;链名必须为全小写 slug)。

错误

每个错误响应都是 {"error":{"code","message"}};只有 409 not_indexed_yet 可能额外带 indexed_through(该链已索引到的最高区块);当整条链尚无任何索引数据时该字段不存在。客户最常遇到的错误码:

状态码error.code含义建议操作
402insufficient_balance付费余额或免费额度已耗尽;余额已知时 error.data 附带 balance_units 与 balance_cu(不计费)在控制台账单页进行链上充值,或等待免费额度补足
404not_found{chain} 未知或未公开,或对象不存在修正请求
409not_indexed_yet请求超过最新已写入区块 as_of_block(附带 indexed_through)、哈希解析出的区块高于 as_of_block,或整条链尚无任何索引数据(不带 indexed_through)带 indexed_through 时轮询等待,直到区块号或 to_block 不高于它;不带时等待该链开始索引(GET /v1/data/chains 的 coverage.has_data 显示当前状态)
422no_coverage永久性缺口:该链不支持此能力,或区块早于索引/trace 覆盖范围修改请求;重试不会成功
429rate_limitedkey 的 CU 速率超限(响应带 Retry-After)或账户调用速率超限(不带 Retry-After);不计费等待 Retry-After 秒后重试
429cost_exceeds_burst单个请求的 CU 超过该 key 的突发容量;不带 Retry-After(不计费)拆小请求;按原样重试永远不会成功
503unavailable暂时不可用;响应带 Retry-After。当某条链的 coverage.from_block 暂为 null 时,对它的历史请求也返回此错误等待 Retry-After 秒后重试
503gateway_overloaded账户跨所有 key、所有链的并发请求达到上限,或服务暂时繁忙;带 Retry-After: 1(不计费)降低本账户的并发请求数,按 Retry-After 等待后重试

接口一览

Chain

方法路径说明
GET/chains列出支持的链
GET/{chain}/blocks/{number}按区块号获取区块
GET/{chain}/blocks/hash/{hash}按哈希获取区块
GET/{chain}/blocks/{number}/transactions列出区块的交易
GET/{chain}/transactions/{hash}按哈希获取交易

Status

方法路径说明
GET/{chain}/status/freshness各数据集的新鲜度与延迟

Addresses

方法路径说明
GET/{chain}/addresses/{address}/transactions列出地址的交易
GET/{chain}/addresses/{address}/transfers列出地址的代币转账
GET/{chain}/addresses/{address}/balances列出地址的 ERC-20 余额

Tokens

方法路径说明
GET/{chain}/tokens/{token}/transfers列出代币合约的转账
GET/{chain}/tokens/{token}/holders列出代币的持有者
GET/{chain}/tokens/{token}获取代币元数据
POST/{chain}/tokens:batch批量获取代币元数据

NFTs

方法路径说明
GET/{chain}/nfts/{contract}/{token_id}获取单个 NFT 的所有者/持有者
GET/{chain}/nfts列出地址拥有的 NFT

DEX

方法路径说明
GET/{chain}/dex/swaps按资金池或代币列出 DEX 兑换
GET/{chain}/dex/pricesDEX 代币每日价格

Stocks

方法路径说明
GET/{chain}/stocks代币化股票每日排行榜
GET/{chain}/stocks/{token}获取单个代币化股票

Traces

方法路径说明
GET/{chain}/blocks/{number}/traces整个区块的历史 callTracer 追踪树
GET/{chain}/transactions/{hash}/trace单笔交易的历史 callTracer 追踪树

最后更新:

本页目录