Skip to main content

Предварительные требования

Вам понадобятся:
  • API-ключ Apex из панели управления OrbitFlare в разделе Dashboard > Apex. Apex находится в бета-версии и доступен только по приглашениям.
  • Файл ключевой пары Solana с балансом (в формате JSON-массива, который записывает solana-keygen), на котором есть не менее 0.002 SOL на чаевые и комиссии.
  • Любой URL Solana RPC для получения blockhash и подтверждения, например ваш эндпоинт OrbitFlare RPC.
Все примеры читают одни и те же переменные окружения:
Эти примеры отправляют настоящую транзакцию в mainnet. Если она попадёт в блок, вы заплатите чаевые 0.001 SOL плюс сетевую комиссию. Если не попадёт, она ничего не стоит.

Отправьте свою первую транзакцию

1

Проверьте, что эндпоинт Apex доступен

GET /ping не требует ключа и возвращает pong:
2

Получите аккаунты для чаевых

Ваша транзакция должна перевести не меньше минимума вашего тарифа (0.001 SOL на стандартном тарифе) на один из этих аккаунтов. См. Чаевые.
3

Соберите, подпишите, отправьте и подтвердите

Каждая вкладка содержит полную программу. Она собирает memo-транзакцию с вычислительным бюджетом и чаевыми, отправляет её через JSON-RPC sendTransaction и ждёт подтверждения.cURL не умеет подписывать транзакции, поэтому вкладка cURL использует небольшой скрипт на Node.js, который собирает и подписывает транзакцию и выводит её в base64. Всё остальное делается обычным cURL.
Успешный sendTransaction возвращает подпись транзакции:
Принята не значит попала в блок. Подпись возвращается, как только эндпоинт Apex получил транзакцию и начал отправлять её наперегонки. Всегда подтверждайте через getSignatureStatuses на Solana RPC, как это делает каждый пример.

Зависимости Rust

Вкладка Rust использует QUIC-клиент, то есть самый быстрый путь. Крейт скоро появится на crates.io под именем apex-sender-client. До тех пор устанавливайте его из GitHub-репозитория OrbitFlare:
Полное описание API см. в разделе Клиент на Rust.

Уже вызываете sendTransaction?

Apex использует стандартный для Solana формат sendTransaction, поэтому перенос существующего кода сводится к замене URL и двум изменениям:
  1. Направьте вызовы отправки на http://<code>.apex.orbitflare.com и добавьте заголовок x-api-key (или ?api-key=).
  2. Добавьте инструкцию чаевых в каждую транзакцию.
Для всего остального продолжайте использовать свой обычный Solana RPC: blockhash, чтение аккаунтов, симуляция и подтверждение. Эндпоинты Apex принимают только отправку.

Что дальше?

Отправка транзакций

Бинарный HTTP, пакеты и QUIC-потоки.

Чаевые

Правило чаевых целиком и то, как чаевые используются.

Ошибки и лимиты запросов

Каждый код отклонения и что с ним делать.

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

Прогретые соединения, размер чаевых, подтверждение и повторы.