Перейти к основному содержанию
Эта страница переведена с помощью ИИ. За эталон принимается английская версия.Открыть английскую версию →
Документация на уровне endpoint находится во вкладке API Reference. Каждый endpoint там имеет интерактивную панель Try it, работающую на OpenAPI-playground от Mintlify — заполните параметры в браузере и проверьте на live mainnet (или devnet, где доступен) напрямую. Эта страница — нарративный спутник: какие сервисы существуют, когда использовать какой и общие соглашения, связывающие все. Если вы ищете “что принимает GET /pools/info/ids”, переходите на API Reference; если ищете “какой сервис мне интегрировать”, читайте дальше.

Одиннадцать сервисов вкратце

Raydium поддерживает одиннадцать публичных HTTP-сервисов. Каждый документирован как отдельная группа во вкладке API Reference и имеет OpenAPI-спецификацию, питающую интерактивный playground. Версионирование находится в hostname для сервисов v3 / v1 — дополнительного версионирования на уровне пути нет. Breaking changes поставляются с новым хостом с периодом перекрытия; команда публично обязалась на минимум 6 месяцев перекрытия при любой миграции v3 → v4.

Выберите сервис

Общие соглашения

Огибающая ответа

Каждый сервис, кроме IPFS, возвращает одну и ту же JSON-огибающую:
При ошибке:
Некоторые сервисы дополнительно включают целое число error.code (API v3 использует это для стабильных идентификаторов ошибок между minor-версиями). Точную форму смотрите на странице обзора каждого сервиса.

Аутентификация

Встречаются два паттерна:
  • Без аутентификации — все сервисы кроме Forum. Вызывайте их анонимно через HTTPS.
  • Handshake с подписью кошелька — требуется для LaunchLab Forum API. Подпишите Solana ed25519-сообщение вида time:<unix-seconds> своим кошельком, отправьте подпись + адрес кошелька на LaunchLab Auth API /request-token, получите JWT и передавайте его как заголовок ray-token при последующих вызовах форума.
Mintlify-playground принимает ray-token на панели аутентификации перед отправкой запросов форума; значение хранится в браузере только.

Лимиты запросов

Все хосты находятся за Cloudflare с прогрессивным rate-лимитингом на IP-адрес источника. Опубликованные рекомендации для интеграций: Всплески выше опубликованных лимитов возвращают HTTP 429 с заголовком Retry-After. Агрегаторы или боты, которым нужны более высокие лимиты, должны связаться с командой Raydium вместо атаки на публичные хосты — запуск собственного индексера против on-chain program IDs также опция для read-heavy рабочих нагрузок.

Кэширование и консистентность

  • Большинство read-endpoint API v3 кэшируются на edge на 5–60 секунд; конкретные TTL указаны на странице API Reference каждого endpoint.
  • Кэш инвалидируется индексером на program-touching событиях, которые он наблюдает.
  • Во время больших reorg или перегруженности может быть расхождение на 1–2 слота между представлением API и on-chain-состоянием. SDK и прямые RPC-чтения всегда более актуальны — если клиент собирается подписать транзакцию, пере-загрузите релевантные аккаунты через RPC, никогда не доверяйте значению API вслепую.

Формат ошибок

Ошибки возвращаются как HTTP 4xx/5xx с той же огибающей (success: false, заполненный msg). API v3 дополнительно включает стабильный error.code:
error.code стабилен между minor-версиями API; рассматривайте его как основной сигнал в логике клиента и msg как человекочитаемую поверхность.

Соглашение аргумента mint-pair

Многие endpoint API v3 принимают mint1=…&mint2=… и требуют mint1 < mint2 (порядок восходящих pubkey-байтов). Это так, чтобы API мог вернуть один и тот же canonical пул независимо от предпочитаемого порядка аргументов вызывающей стороны. Отсортируйте два мinted токена на стороне клиента перед построением URL — endpoint-документация в API Reference повторяет это ограничение, где оно применяется.

Рекомендуемые клиент-паттерны

  1. Гидрируйте один раз, обновляйте ленивым образом. Вытащите GET /main/info и GET /mint/list (оба на API v3) при загрузке приложения и кэшируйте локально с TTL в 1 час. Оба тяжело кэшируются на edge и редко меняются.
  2. Загружайте в bulk, где endpoint это позволяет. GET /pools/info/ids?ids=… принимает список через запятую — загрузите десять пулов в одном запросе, не десять запросов.
  3. Избегайте горячих path-путей для fetch цен. GET /mint/price годится для UI-рендеринга; никогда не зацикливайте в боте. Для торговых ботов запустите индексер или подпишитесь на programSubscribe-события RPC напрямую.
  4. Зеркалируйте или проксируйте для высокого throughput. Что угодно выше потолка опубликованного rate-limit должно подаваться из вашего собственного кэш-слоя, не напрямую с публичных хостов. Агрегаторы с sustained >120 req/min к transaction-v1 должны запускать собственный quote / route engine.
  5. Пере-загружайте прямо перед подписанием. API-ответы могут быть стариком на 5–60 секунд. Для действительно корректного снимка пула во время подписания пере-прочитайте релевантные аккаунты через SDK или прямой RPC-вызов getMultipleAccounts. Рассматривайте API-значения как hint для поиска, не как источник сведения.
  6. Используйте Transaction API для низкоубыточной интеграции. Если вы не хотите включать SDK в ваш клиент (мобайл-native, бот в constrained-среде), Transaction API вернет base64-encoded versioned транзакцию для подписания пользователем. Возвращаемый swapResponse вкладывает quote — рассматривайте его как действительный на ~30 секунд.

Куда дальше

  • Справочник endpoint (интерактивный)API Reference. Каждый сервис имеет собственную группу; кликните любой endpoint для параметров, формы ответа, примеров кода и Try-it панели.
  • TypeScript SDKsdk-api/typescript-sdk. SDK потребляет API v3 внутренне для нескольких путей; для построения транзакций всегда пере-загружает состояние из RPC, никогда не доверяет API вслепую.
  • Trade API интеграцияintegration-guides/aggregator. Паттерны для подключения ликвидности Raydium в многоDEX агрегатор.
  • AI-friendly документацияsdk-api/ai-integration. Указатели для AI-coding агентов, которым нужно вызывать эти API.