Tài liệu tham khảo Blockchain Data API

Tài liệu tham khảo yêu cầu Blockchain Data API: các endpoint REST, xác thực API key, tham số, schema phản hồi, lỗi và trọng số CU cho dữ liệu chuỗi đã lập chỉ mục.

Tổng quan

Sử dụng tài liệu tham khảo Blockchain Data API này để xây dựng các yêu cầu REST cho các khối, giao dịch, địa chỉ, token, NFT, hoạt động DEX, cổ phiếu token hóa đã được lập chỉ mục và độ tươi mới của bộ dữ liệu. Để chọn một bộ dữ liệu và kiểm tra tính khả dụng của chuỗi, hãy bắt đầu với danh mục bộ dữ liệu; đối với số dư token và lịch sử chuyển tiền của ví, hãy làm theo hướng dẫn tài sản ví.

  • Base URL: https://api.blockvectra.com/v1/data — mọi route ngoại trừ /chains đều có tiền tố là mã định danh chuỗi (ví dụ: https://api.blockvectra.com/v1/data/{chain}/…)
  • Giao thức: HTTP GET (cùng với POST cho tra cứu token hàng loạt tại /{chain}/tokens:batch), phản hồi JSON
  • Xác thực: Yêu cầu API key — truyền key của bạn trong header yêu cầu x-api-key. Các yêu cầu được đo lường và tính phí bằng Compute Units (CU); chỉ các phản hồi thành công 2xx mới bị tính phí
  • Ethereum: phạm vi bao phủ dữ liệu được xác định bởi coverage.from_block trong GET /v1/data/chains, và bao gồm một tập hợp các bộ dữ liệu nhỏ hơn — xem Chuỗi được hỗ trợ → Ethereum

Trọng số CU của Data API được liệt kê trên trang Bảng giá và được trả về bởi GET /v1/plans. Xem Khởi động nhanh → Gọi Data API để biết các yêu cầu và cấu trúc phản hồi mẫu. Về việc tạo phiên bản đường dẫn, quy tắc tương thích ngược và các khuyến nghị SDK, hãy xem Phiên bản và tính tương thích của API.

Chuỗi

Data API cung cấp dữ liệu đã lập chỉ mục theo phạm vi của từng chuỗi: https://api.blockvectra.com/v1/data/{chain}/….

Các bộ dữ liệu và tính năng khả dụng khác nhau tùy theo chuỗi; xem Chuỗi được hỗ trợ để biết ma trận khả năng đầy đủ. GET https://api.blockvectra.com/v1/data/chains báo cáo features, coverage, finality và limits của từng chuỗi. Các yêu cầu nằm ngoài phạm vi bao phủ của một bộ dữ liệu sẽ trả về HTTP 422 no_coverage (không tính phí); chuỗi không xác định hoặc không công khai sẽ trả về HTTP 404 với error.code là not_found (không tính phí; tên chuỗi phải là các slug chữ thường chính xác).

Lỗi

Mỗi phản hồi lỗi đều có dạng {"error":{"code","message"}}; chỉ 409 not_indexed_yet có thể kèm theo indexed_through (khối đã được lập chỉ mục cao nhất trên chuỗi đó), và trường này sẽ vắng mặt khi chuỗi chưa có dữ liệu được lập chỉ mục. Các mã lỗi khách hàng thường gặp nhất:

Trạng tháierror.codeÝ nghĩaHành động
402insufficient_balanceSố dư trả phí hoặc hạn mức miễn phí đã cạn kiệt; khi số dư được xác định, error.data bao gồm balance_units và balance_cu (không tính phí)Nạp tiền on-chain trên trang Thanh toán của console, hoặc đợi hạn mức miễn phí được làm mới
404not_found{chain} không xác định hoặc không công khai, hoặc đối tượng không tồn tạiSửa lại yêu cầu
409not_indexed_yetYêu cầu vượt quá as_of_block (khối mới nhất đã ghi hoàn tất; bao gồm indexed_through), hash phân giải vượt quá as_of_block, hoặc chuỗi chưa có dữ liệu được lập chỉ mục (không có indexed_through)Khi có indexed_through, hãy thăm dò (poll) cho đến khi khối của bạn hoặc to_block bằng hoặc thấp hơn giá trị đó; khi không có, hãy đợi chuỗi bắt đầu lập chỉ mục (coverage.has_data trong GET /v1/data/chains hiển thị trạng thái)
422no_coverageThiếu sót vĩnh viễn: chuỗi thiếu khả năng đó, hoặc khối nằm trước phạm vi bao phủ được lập chỉ mục/traceThay đổi yêu cầu; thử lại sẽ không có tác dụng
429rate_limitedGiới hạn tốc độ CU của key (phản hồi bao gồm Retry-After) hoặc giới hạn tốc độ gọi của tài khoản (không có Retry-After); không tính phíThử lại sau Retry-After giây
429cost_exceeds_burstMột yêu cầu đơn lẻ có chi phí vượt quá dung lượng burst của key; không có Retry-After (không tính phí)Chia nhỏ yêu cầu; thử lại nguyên trạng sẽ không bao giờ thành công
503unavailableTạm thời không khả dụng; phản hồi mang theo Retry-After. Cũng được trả về cho các yêu cầu lịch sử trên chuỗi có coverage.from_block hiện tại là nullThử lại sau Retry-After giây
503gateway_overloadedĐã đạt giới hạn đồng thời của tài khoản trên tất cả các key và chuỗi của tài khoản đó, hoặc dịch vụ tạm thời bận; Retry-After: 1 (không tính phí)Giảm số yêu cầu đồng thời trên toàn bộ tài khoản và đợi Retry-After giây trước khi thử lại

Danh mục endpoint

Dưới đây là đặc tả gốc bằng tiếng Anh.

Chain

Phương thứcĐường dẫnMô tả
GET/chainsList supported chains
GET/{chain}/blocks/{number}Get a block by number
GET/{chain}/blocks/hash/{hash}Get a block by hash
GET/{chain}/blocks/{number}/transactionsList a block's transactions
GET/{chain}/transactions/{hash}Get a transaction by hash

Status

Phương thứcĐường dẫnMô tả
GET/{chain}/status/freshnessFreshness and lag per dataset

Addresses

Phương thứcĐường dẫnMô tả
GET/{chain}/addresses/{address}/transactionsList an address's transactions
GET/{chain}/addresses/{address}/transfersList an address's token transfers
GET/{chain}/addresses/{address}/balancesList an address's ERC-20 balances

Tokens

Phương thứcĐường dẫnMô tả
GET/{chain}/tokens/{token}/transfersList a token contract's transfers
GET/{chain}/tokens/{token}/holdersList a token's holders
GET/{chain}/tokens/{token}Get token metadata
POST/{chain}/tokens:batchBatch get token metadata

NFTs

Phương thứcĐường dẫnMô tả
GET/{chain}/nfts/{contract}/{token_id}Get one NFT's owner/holders
GET/{chain}/nftsList NFTs owned by an address

DEX

Phương thứcĐường dẫnMô tả
GET/{chain}/dex/swapsList DEX swaps by pool or token
GET/{chain}/dex/pricesDaily DEX token prices

Stocks

Phương thứcĐường dẫnMô tả
GET/{chain}/stocksDaily leaderboard of tokenized stocks
GET/{chain}/stocks/{token}Get one tokenized stock

Traces

Phương thứcĐường dẫnMô tả
GET/{chain}/blocks/{number}/tracesHistorical callTracer trace tree for a whole block
GET/{chain}/transactions/{hash}/traceHistorical callTracer trace tree for one transaction

Dưới đây là đặc tả gốc bằng tiếng Anh.

Cập nhật lần cuối:

Trên trang này