ВойтиВыбрать тариф
Документация

Две настройки. Любой агент.

Любому инструменту нужны две вещи: Base URL CodingPass и ваш ключ. Вставьте ключ один раз — и все фрагменты на этой странице готовы к копированию.

Base URL

https://codingpass.ai

Совместимый с Anthropic

Messages API. Claude Code, Cline и SDK Anthropic. Без /v1 в конце.

https://codingpass.ai/v1

Совместимый с OpenAI

Chat Completions и Responses. Codex, OpenCode и SDK OpenAI.

Ваша настройка

Вставьте ключ, выберите инструмент.

Остаётся в этой вкладке и только подставляется во фрагменты на странице.

Модель

У каждого инструмента есть разумная модель по умолчанию. Какие модели отвечают, решает ваш тариф.

Добавьте две строки export в ~/.zshrc или ~/.bashrc, откройте новый терминал и запустите Claude Code.

~/.zshrc
export ANTHROPIC_BASE_URL="https://codingpass.ai"
export ANTHROPIC_AUTH_TOKEN="cp-live-your-key"
Затем запустите
claude --model claude-sonnet-5-5
Полное руководство: Claude Code

Проверьте, что ключ работает

Запросите список моделей, доступных ключу. Если пришёл список в JSON, ключ и URL верны; 401 значит, что ключ неверный.

Терминал
curl https://codingpass.ai/v1/models \
  -H "Authorization: Bearer cp-live-your-key"

Вашего инструмента нет в списке?

Подойдёт любой инструмент, где можно задать Base URL Anthropic или OpenAI. Найдите поле Base URL или своего провайдера, вставьте URL и ключ и возьмите ID модели на странице Модели.

Не получается? Напишите на [email protected]: название инструмента и заголовок x-request-id из ответа.

Ошибки

Каждая ошибка, её статус и что делать.

Шлюз отвечает стандартным HTTP-статусом и в формате ошибок, который ваш клиент уже знает. type тот же, что у Anthropic и OpenAI, и SDK обрабатывают его как обычно; message написан для людей. Код ошибки из таблицы виден рядом с каждым неудачным запросом в журнале запросов консоли.

Два формата в зависимости от эндпоинта

Эндпоинты, совместимые с Anthropic (/v1/messages, /v1/messages/count_tokens)
HTTP/1.1 429 Too Many Requests
retry-after: 4253
x-should-retry: false
x-ratelimit-remaining-5h: 0
x-ratelimit-reset-5h: 1h10m53s
x-request-id: req_8f2c41d07ab3

{
  "type": "error",
  "error": {
    "type": "rate_limit_error",
    "message": "Account limit reached: your 5h quota is used up for all models. Resets at …"
  }
}
Эндпоинты, совместимые с OpenAI (/v1/chat/completions, /v1/responses, /v1/models)
HTTP/1.1 401 Unauthorized
x-request-id: req_5b1f09c2e7d4

{
  "error": {
    "message": "Invalid API key",
    "type": "authentication_error",
    "param": null,
    "code": null
  }
}
Ошибки шлюза по HTTP-статусу
СтатусКодКогда возникает и что делать
400Неверный запрос
400invalid_requestinvalid_request_error

Некорректное тело запроса

Когда возникает: Тело не является корректным JSON, или не хватает обязательного поля: model, messages или, для Anthropic API, max_tokens.

Что делать:

  • Обновите клиент. Старые версии иногда отправляют поля в устаревшем виде.
  • Если вызываете API из своего кода, сверьте тело с API-справочником провайдера.
401Аутентификация
401invalid_api_keyauthentication_error

API key не принят

Когда возникает: Ключ не передан, введён с ошибкой, удалён или отправлен в заголовке, который шлюз не читает.

Что делать:

  • Скопируйте ключ заново в разделе Ключи консоли, без пробелов и переносов строк.
  • Клиенты Anthropic передают его как x-api-key, OpenAI-совместимые — как Authorization: Bearer.
  • После удаления или замены ключа обновите его во всех клиентах, где ещё стоит старый.
403Доступ
403no_subscriptionpermission_error

Нет активного тарифа

Когда возникает: Ключ действителен, но у аккаунта нет активного тарифа: его не покупали, срок закончился или не прошёл платёж за продление.

Что делать:

  • Проверьте тариф и статус оплаты в разделе Оплата.
  • Тарифа ещё нет? Выберите его на странице Цены. Как только он активен, тот же ключ работает.
404Не найдено
404 / 405wrong_base_urlnot_found_error

Неверный Base URL или метод

Когда возникает: Запрос пришёл на путь или с методом, которые шлюз не обслуживает. Обычно в Base URL лишний или недостающий /v1, или адрес API открыли в браузере как веб-страницу.

Что делать:

  • Клиенты Anthropic, например Claude Code, используют Base URL без /v1; OpenAI-совместимые клиенты добавляют /v1. Оба значения есть в тексте ошибки.
  • Скопируйте Base URL из руководства по настройке вашего инструмента, а не набирайте вручную.
  • Отправляйте запросы методом POST. У API нет веб-страницы, которую можно открыть в браузере.
404model_not_foundinvalid_request_error

Модели нет в вашем тарифе

Когда возникает: ID модели написан с ошибкой, или модель не входит в ваш тариф.

Что делать:

  • Скопируйте точный ID модели на странице Модели.
  • Проверьте, что модель входит в ваш тариф. В старших тарифах моделей больше.
413Слишком большой
413body_too_largeinvalid_request_error

Запрос слишком большой

Когда возникает: Тело запроса превышает лимит размера шлюза — обычно из-за очень длинного контекста или больших вложений.

Что делать:

  • Сожмите или очистите диалог (/compact в Claude Code) и повторите.
  • Прикрепляйте меньше файлов и изображений или файлы поменьше.
429Лимиты
429quota_exceededrate_limit_error

Квота израсходована

Когда возникает: Достигнут 5-часовой, недельный или месячный лимит — для одной модели или для всего аккаунта. В сообщении указаны окно и время сброса; retry-after показывает, сколько секунд ждать.

Что делать:

  • Дождитесь времени сброса из сообщения.
  • Если в лимит упёрлась только одна модель, переключитесь на другую. Остальные продолжают работать.
  • Используйте сброс квоты в разделе Оплата. Полный сброс обнуляет использование за 5 часов, неделю и месяц; недельный — за 5 часов и неделю.
  • Для более высоких лимитов перейдите на старший тариф на странице Цены. Как работают окна, описано в разделе Лимиты использования.
429concurrency_limitedrate_limit_errorМожно повторить

Слишком много одновременных запросов

Когда возникает: Тариф допускает фиксированное число одновременных запросов, а новый пришёл, когда все слоты были заняты.

Что делать:

  • Запускайте меньше агентов или субагентов параллельно.
  • Повторите через секунду. В ответе есть retry-after: 1.
  • Старшие тарифы допускают больше одновременных запросов. Сравните их на странице Цены.
429no_upstream_availablerate_limit_errorМожно повторить

Модель перегружена

Когда возникает: Эта модель сейчас загружена полностью.

Что делать:

  • Подождите столько секунд, сколько указано в заголовке retry-after, и повторите запрос.
  • Пока переключитесь на другую модель из вашего тарифа.
5xxПровайдер модели
4xx / 5xxupstream_errorapi_errorМожно повторить

Провайдер модели вернул ошибку

Когда возникает: Провайдер модели отклонил запрос или не смог его выполнить, и шлюз передал его статус и сообщение как есть. 502 значит, что запрос не удался и после повторов.

Что делать:

  • Прочитайте сообщение провайдера. Ошибка 4xx обычно указывает, что поменять в запросе.
  • При 5xx повторите через несколько секунд. Если ошибка повторяется, проверьте страницу статуса.
503Недоступно
503plan_unavailableapi_errorМожно повторить

Тариф временно недоступен для проверки

Когда возникает: Шлюз ненадолго не смог загрузить ваш тариф. Проблема на нашей стороне, а не в вашем ключе.

Что делать:

  • Повторите запрос через несколько секунд.
  • Если это длится дольше нескольких минут, проверьте страницу статуса и напишите на [email protected].
503quota_unavailableapi_errorМожно повторить

Квота временно недоступна для проверки

Когда возникает: Шлюз не смог прочитать ваши счётчики использования и отклонил запрос, чтобы не гадать. Проблема на нашей стороне.

Что делать:

  • Повторите запрос через несколько секунд.
  • Если это длится дольше нескольких минут, проверьте страницу статуса и напишите на [email protected].
503upstream_unavailableapi_errorМожно повторить

Не удалось обработать запрос

Когда возникает: Модель не смогла принять запрос до начала ответа. Обычно помогает повтор.

Что делать:

  • Повторите запрос через несколько секунд.
  • Если это длится дольше нескольких минут, проверьте страницу статуса и напишите на [email protected].
503no_upstreamapi_error

Модель сейчас не обслуживается

Когда возникает: Модель входит в ваш тариф, но сейчас недоступна.

Что делать:

  • Пока переключитесь на другую модель из вашего тарифа.
  • Если это длится дольше нескольких минут, проверьте страницу статуса и напишите на [email protected].
200 / 499Во время ответа
200stream_incompleteapi_errorМожно повторить

Поток оборвался

Когда возникает: Ответ начался с 200, но поток закончился раньше, чем ответ был готов. Клиент показывает ответ, оборванный на середине, или ошибку в конце.

Что делать:

  • Повторите запрос через несколько секунд.
  • Проверьте прокси или VPN между вами и API: они могут обрывать долгие соединения.
499client_aborted

Отменено клиентом

Когда возникает: Клиент закрыл соединение до конца ответа: вы нажали Esc или Ctrl+C, у клиента истёк тайм-аут или пропала сеть. 499 есть только в вашем журнале запросов; клиент его не получает.

Что делать:

  • Если запрос отменили вы, исправлять нечего.
  • Если это происходит само, увеличьте тайм-аут клиента. Длинные ответы могут идти несколько минут.

Ошибки с пометкой «можно повторить» временные: подождите секунду-две или столько секунд, сколько в retry-after, и отправьте тот же запрос снова. Большинство SDK делают это сами при 429 и 5xx. Остальные ошибки сначала требуют изменений на вашей стороне.

Полезные заголовки ответа

Заголовки ответа, которые добавляет шлюз
ЗаголовокЗначение
x-request-idУникальный ID запроса — тот же, что в истории использования. Укажите его в письме на [email protected].
retry-afterСколько секунд ждать перед повтором. Приходит с 429 и с временными 503.
x-should-retryПриходит со значением false при quota_exceeded: официальные SDK Anthropic и OpenAI перестают повторять запрос сами, потому что ждать нужно целое окно.
x-ratelimit-remaining-<window>Приходит при quota_exceeded, значение — 0. Суффикс — сработавшее окно: 5h, week или month. Касается ли это всего аккаунта или одной модели, сказано в тексте ошибки.
x-ratelimit-reset-<window>Приходит при quota_exceeded: сколько осталось до освобождения этого окна, например 1h10m53s.
x-ratelimit-limit-concurrencyПриходит при concurrency_limited: сколько запросов ваш тариф выполняет одновременно. x-ratelimit-remaining-concurrency равен 0. Не приходит, если 429 вызван нехваткой мощности у поставщика.