Поддерживаемые сети

Поддерживаемые сети блокчейна, Chain ID, структуры URL и доступность возможностей. Обзор эндпоинтов, методов и покрытия наборов данных по каждой сети.

BlockVectra — это мультичейн-провайдер блокчейн-данных: JSON-RPC во всех поддерживаемых сетях и Data API там, где он доступен.

Один ключ для всех сетей

  • Универсальный ключ: один и тот же API key работает во всех поддерживаемых сетях BlockVectra — отдельные ключи для каждой сети не требуются.
  • Сеть в URL: каждый запрос явно указывает сеть с помощью сегмента пути {chain}.
  • Общий учет: баланс аккаунта, корзины лимитов Compute Units (CU) и посекундные лимиты бесплатного тарифа действуют совместно для всех сетей.
  • Цены: см. раздел Цены.

Тестирование без API key

Выберите бесплатный публичный эндпоинт RPC для вызова методов кошелька без API key. Публичные методы и лимиты на IP указаны для каждой сети; пример вызова см. в разделе Быстрый старт.

Шаблоны URL

Стандартные структуры URL для вызова JSON-RPC и Data API:

СервисРежимШаблон URLПримечания
JSON-RPCКлюч в путиPOST /v1/{chain}/{api_key}Простейший формат; рекомендуется для curl и HTTP-клиентов
JSON-RPCКлюч в заголовкеPOST /v1/{chain}Передавайте ключ в заголовке запроса x-api-key: {api_key}
Data APIREST-эндпоинтыGET /v1/data/{chain}/…Передавайте ключ в заголовке запроса x-api-key
СтатусПубличный статусGET /v1/statusКлюч не требуется; возвращает статус и вершину каждой публичной сети

Примечание: запрос без сегмента сети (например, POST /v1 или POST /v1/) возвращает HTTP 404 с пустым телом. Подробности настройки см. в разделе Быстрый старт.

Матрица поддерживаемых сетей

Сети блокчейна, доступные на данный момент в BlockVectra, и возможности их сервисов:

Эндпоинты, методы с API key, подписки, отправка транзакций, лимиты состояния и логов, наборы данных, связанные тестнеты и руководства представлены для каждой сети. Неизвестные данные остаются неуказанными. Разверните сеть под матрицей, чтобы увидеть поддерживаемые ею запросы.

Сеть{chain}Chain IDTracingПубличный эндпоинтWebSocketData APIЧисло методов с API keyWebhook-уведомленияОтправка транзакцийОтправка транзакций (публичная конечная точка без key)Окно истории состоянияМаксимальный диапазон блоков для eth_getLogsНаборы данных Data APIСвязанные тестовые сетиСвязанные руководства
arb_mainnet: RPC и Data APIarb_mainnet42161✓https://api.blockvectra.com/v1/arb_mainnet/publicНе поддерживаетсяДоступно43Поддерживается · Подтверждения 1–1 (по умолчанию 1)
Руководство по Webhook-уведомлениям
ПоддерживаетсяПоддерживаетсяИсторическое состояние за последние 6,000 блоков1,000 блоковБлоки, Транзакции, Транзакции адреса, Переводы, Метаданные токенов, Свежесть данныхНеизвестноНеизвестно
base_mainnet: RPC и Data APIbase_mainnet8453—https://api.blockvectra.com/v1/base_mainnet/publicНе поддерживаетсяДоступно39Поддерживается · Подтверждения 1–1 (по умолчанию 1)
Руководство по Webhook-уведомлениям
ПоддерживаетсяПоддерживаетсяИсторическое состояние за последние 10,000 блоков1,000 блоковБлоки, Транзакции, Транзакции адреса, Переводы, Метаданные токенов, Свежесть данныхНеизвестноBase
bsc_mainnet: RPC и Data APIbsc_mainnet56—https://api.blockvectra.com/v1/bsc_mainnet/publicНе поддерживаетсяДоступно25Поддерживается · Подтверждения 1–1 (по умолчанию 1)
Руководство по Webhook-уведомлениям
ПоддерживаетсяПоддерживаетсяИсторическое состояние за последние 100 блоков1,000 блоковБлоки, Транзакции, Транзакции адреса, Переводы, Метаданные токенов, Свежесть данныхНеизвестноНеизвестно
Ethereum: RPC и Data APIeth_mainnet1✓https://api.blockvectra.com/v1/eth_mainnet/publicНе поддерживаетсяДоступно38Поддерживается · Подтверждения 1–1 (по умолчанию 1)
Руководство по Webhook-уведомлениям
ПоддерживаетсяПоддерживаетсяИсторическое состояние за последние 250,000 блоков1,000 блоковБлоки, Транзакции, Транзакции адреса, Переводы, Метаданные токенов, Свежесть данныхНеизвестноНеизвестно
eth_sepolia: RPC и Data APIeth_sepolia11155111—https://api.blockvectra.com/v1/eth_sepolia/publicНе поддерживаетсяДоступно29Поддерживается · Подтверждения 1–1 (по умолчанию 1)
Руководство по Webhook-уведомлениям
ПоддерживаетсяПоддерживаетсяНеизвестно1,000 блоковБлоки, Транзакции, Транзакции адреса, Переводы, Метаданные токенов, Свежесть данныхНеизвестноНеизвестно
HyperEVM: RPC и Data APIhyperevm_mainnet999—https://api.blockvectra.com/v1/hyperevm_mainnet/publicНе поддерживаетсяДоступно24Поддерживается · Подтверждения 1–1 (по умолчанию 1)
Руководство по Webhook-уведомлениям
Не поддерживаетсяНе поддерживаетсяНеизвестно1,000 блоковБлоки, Транзакции, Транзакции адреса, Переводы, Метаданные токенов, Балансы, Держатели, NFT, Свежесть данныхНеизвестноHyperEVM backfill and polling
polygon_mainnet: RPC и Data APIpolygon_mainnet137✓https://api.blockvectra.com/v1/polygon_mainnet/publicНе поддерживаетсяДоступно43Поддерживается · Подтверждения 1–1 (по умолчанию 1)
Руководство по Webhook-уведомлениям
ПоддерживаетсяПоддерживаетсяИсторическое состояние за последние 126 блоков1,000 блоковБлоки, Транзакции, Транзакции адреса, Переводы, Метаданные токенов, Свежесть данныхНеизвестноНеизвестно
Robinhood Chain: RPC и Data APIrobinhood_mainnet4663✓https://api.blockvectra.com/v1/robinhood_mainnet/publicПоддерживается (newHeads, logs)Доступно43Поддерживается · Подтверждения 1–1 (по умолчанию 1)
Руководство по Webhook-уведомлениям
ПоддерживаетсяПоддерживаетсяИсторическое состояние за последние 900 блоков1,000 блоковБлоки, Транзакции, Транзакции адреса, Переводы, Метаданные токенов, Балансы, Держатели, NFT, Свопы DEX, Цены DEX, Токенизированные акции, Трассировки, Свежесть данныхНеизвестноRobinhood Chain
Stock token multiplier

Tokenized stocks
robinhood_testnet: RPCrobinhood_testnet46630✓https://api.blockvectra.com/v1/robinhood_testnet/publicПоддерживается (newHeads, logs)Пока недоступно43Поддерживается · Подтверждения 1–1 (по умолчанию 1)
Руководство по Webhook-уведомлениям
ПоддерживаетсяПоддерживаетсяИсторическое состояние за последние 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_getLogs

Data 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_getLogs

Data 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_getLogs

Data 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_getLogs

Data 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_getLogs

Data 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_getLogs

Data 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_getLogs

Data 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_getLogs

Data API

curl -fsS 'https://api.blockvectra.com/v1/data/robinhood_mainnet/status/freshness' -H "x-api-key: $BLOCKVECTRA_API_KEY"
Data API

WebSocket

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_getLogs

WebSocket

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 (не тарифицируется); запросы блоков, квитанций и логов за пределами окна возвращают -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: повторите попытку с задержкой (Retry-After: 1).
  • Наборы данных: наборы данных, доступные для Ethereum, перечислены в features в GET /v1/data/chains; остальные возвращают 422 no_coverage (не тарифицируется). Транзакции по адресам и переводы охватывают только недавнее окно: ответ, выходящий за его начало, помечается как meta.coverage: "partial".

Программный поиск сетей

Используйте эти публичные эндпоинты для получения информации о поддерживаемых сетях и их статусе:

1. Статус сервиса (GET /v1/status)

Публичный эндпоинт, не требующий 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 только в случае, если status равен "unavailable").

Поле coverage.from_block — это наименьший проиндексированный блок, считываемый в реальном времени. Оно равно 0, если история сети доходит до блока генезиса. Значение может быть null только в случае, если сеть вообще не имеет проиндексированных блоков (has_data = false), либо пока начальная точка не может быть определена: рассматривайте null как неизвестное значение — а не как полную историю и не как 0 — и исторические запросы в этом случае возвращают 503 unavailable. Всегда получайте это значение из эндпоинта во время выполнения программы, а не прописывайте жестко в коде. coverage.traces_from_block — это первый блок с данными трассировки; запрос трассировки до него или в пределах пропуска возвращает 422 no_coverage (не тарифицируется).

Вызов /v1/data/{chain}/… с неизвестной или непубличной сетью возвращает HTTP 404 с error.code not_found (не тарифицируется; имя сети должно быть точным слагом в нижнем регистре).

Последнее обновление:

На этой странице