Перейти к основному содержанию

Обзор

Узлы OrbitFlare RPC принимают HTTP-запросы в соответствии со спецификацией JSON-RPC 2.0. Этот API позволяет вам взаимодействовать с блокчейном Solana для запроса данных и отправки транзакций.

Формат запроса

Чтобы выполнить JSON-RPC запрос, отправьте HTTP POST-запрос со следующими параметрами:
  • Endpoint: https://fra.rpc.orbitflare.com?api_key=YOUR_LICENSE_KEY
  • Заголовок: Content-Type: application/json
  • Тело: JSON-объект со следующими полями:

Пример запроса

Формат ответа

Ответы представляют собой JSON-объекты, содержащие:

Commitment

Многие методы принимают параметр commitment, указывающий степень подтверждения данных:
  • processed: Последний блок (самый быстрый, не подтверждён)
  • confirmed: Подтверждён супербольшинством (баланс между скоростью и финальностью)
  • finalized: Финализирован супербольшинством (самый медленный, полностью подтверждён)
Пример с commitment:

Пакетные запросы

Вы можете отправить несколько запросов в одном HTTP-вызове, передав массив объектов запросов:

Распространённые типы

Проверка работоспособности

Вы можете проверить работоспособность узла с помощью GET-запроса:
Возможные ответы:
  • ok: Узел работает исправно и актуален
  • behind { slots: number }: Узел отстаёт на N слотов
  • error: Узел неисправен

Доступные методы

Аккаунт и программа

  • getAccountInfo
  • getMultipleAccounts
  • getProgramAccounts
  • getMinimumBalanceForRentExemption

Блоки и слоты

  • getBlock
  • getBlocks
  • getBlockHeight
  • getSlot
  • getSlotLeader

Транзакции

  • getTransaction
  • getSignatureStatuses
  • getSignaturesForAddress
  • sendTransaction
  • simulateTransaction

Токены

  • getTokenAccountBalance
  • getTokenAccountsByDelegate
  • getTokenAccountsByOwner
  • getTokenSupply

Ограничения скорости

Ограничения скорости зависят от тарифного плана. Точные значения RPS и TPS для каждого плана см. на странице Аутентификация и лимиты.

Лучшие практики

  1. Используйте подходящий уровень commitment
    • Используйте processed для обновлений интерфейса
    • Используйте confirmed для большинства операций
    • Используйте finalized для критических операций
  2. Оптимизируйте запросы
    • Используйте пакетные запросы там, где это возможно
    • Реализуйте корректное кэширование
    • Выбирайте подходящие интервалы опроса
  3. Обрабатывайте ошибки
    • Реализуйте надлежащую обработку ошибок
    • Используйте экспоненциальную задержку при повторных попытках
    • Отслеживайте сбои запросов

Смотрите также

Аутентификация и лимиты

Настройка API-ключа, форматы эндпоинтов, ограничения скорости и подключений.

Коды ошибок

HTTP-коды состояния, ошибки JSON-RPC и способы их обработки.

WebSocket API

Подписки в реальном времени на аккаунты, слоты, логи и многое другое.

Поддержка

По вопросам технической поддержки или вопросам о нашем RPC-сервисе: