Получите API-ключ
Откройте панель управления OrbitFlare и перейдите в раздел Dashboard > Apex, чтобы создать ключ. Каждый ключ относится к тарифу, а тариф задаёт ваш минимум чаевых и лимит запросов.HTTP: заголовок или параметр запроса
По HTTP ключ передаётся с каждым запросом. Передать его можно двумя способами:/send, /send-bin, /send-batch, /send-bundle).
getTipAccounts, getVersion, health и GET /ping не требуют ключа. Всё, что отправляет транзакцию, требует.
При отсутствующем или недействительном ключе возвращается ошибка JSON-RPC -32001 или HTTP 401 на простых маршрутах. См. Ошибки и лимиты запросов.
QUIC: клиентский сертификат
В QUIC отдельные запросы не аутентифицируются, и ваш API-ключ никогда не передаётся по сети. Вместо этого:- Ваш клиент выводит ключевую пару ed25519 из API-ключа.
- Он предъявляет этот публичный ключ в своём клиентском TLS-сертификате во время QUIC-рукопожатия.
- Эндпоинт Apex сопоставляет публичный ключ с вашим аккаунтом. С этого момента каждый поток в этом соединении принадлежит вам.
orbitflare-apex и модуль Go orbitflare-apex-go делают всё это за вас. Для других языков вывод ключа выглядит так:
new_dummy_x509_certificate в крейте solana-tls-utils). Эндпоинт проверяет только ключ внутри сертификата. Остальные поля сертификата игнорируются.
Тестовый вектор: из API-ключа test-api-key выводится публичный ключ 2ovF9aU8fszHXpZwxaC1S9NF2m5VVDRBUvDUVQvXs4Tv.
Если рукопожатие не удалось, эндпоинт закрывает соединение с кодом ошибки приложения:
Проверьте свой выведенный ключ
Панель управления показывает клиентский публичный ключ рядом с каждым API-ключом. Если ваше QUIC-соединение отклоняется, сравните эти два ключа. С помощью крейта Rust:Браузеры
Каждый HTTP-ответ содержитAccess-Control-Allow-Origin: *, а на предварительные запросы OPTIONS даётся ответ, поэтому вы можете обращаться к эндпоинту Apex из браузерного кода.
Эндпоинты Apex обслуживаются по обычному HTTP на порту 80. Страница, которая сама загружена по HTTPS, подпадает под правила браузера о смешанном содержимом, поэтому тестируйте в той среде, в которой планируете выпускать продукт.