Блог

Настройка API-ключа для Codex: получение, конфигурация и устранение ошибок

Большинство разработчиков предпочитают вызывать ИИ-сервисы по API-ключу: это гибко, удобно автоматизировать и не зависит от входа через браузер. Но многие руководства для начинающих работу с Codex описывают только вход по логину и паролю ChatGPT, и пользователям непонятно, как работают API-ключи. В этой статье мы разберём оба способа аутентификации и их различия, а также покажем, как единый API-ключ в TeamoRouter всё упрощает.

Почему многие разработчики предпочитают API-ключ входу через ChatGPT

У API-ключей есть явные преимущества перед входом через аккаунт ChatGPT:

  • Автоматизация: CI/CD-пайплайны, скрипты и автоматические задачи не могут вызывать API через вход в браузере.
  • Оплата по использованию: вы точно знаете, сколько стоит каждый запрос, и не рискуете остаться с истёкшей подпиской.
  • Один ключ для многих инструментов: один API-ключ работает в Codex CLI, приложении ChatGPT (с пользовательским эндпоинтом), IDE-плагинах и не только.
  • Командная работа: несколько разработчиков делят общий баланс с централизованным управлением.

Однако на пути к получению API-ключа напрямую у OpenAI есть два реальных препятствия: международная оплата (нужна зарубежная кредитная карта) и сетевые ограничения в некоторых регионах.

Два способа аутентификации: вход через ChatGPT и API-ключ

Параметр Вход через ChatGPT API-ключ
Настройка codex login с OAuth-авторизацией Задать переменную окружения OPENAI_API_KEY
Где применяется CLI (по умолчанию), Web, App CLI (явно), собственные скрипты
Оплата Подписка ChatGPT Plus/Pro ($20-$200/мес.) Оплата API по использованию
Плюсы Работает из коробки, не нужно управлять ключами Гибко, автоматизируется, можно делиться
Минусы Вход зависит от браузера, OAuth может зависать Нужно настраивать переменные окружения и беречь ключ
Доступ в регионах с ограничениями Для OAuth нужен прокси Нужен API-шлюз

Вход через ChatGPT

bash
codex
# Browser opens for OAuth authorization
# Codex automatically gets the access token after login

Вход по API-ключу

bash
export OPENAI_API_KEY="sk-xxxxxxxxxxxx"
export OPENAI_BASE_URL="https://api.teamorouter.com/v1"

codex

Кому подходит API-ключ

  • Тем, кто автоматизирует: встраивает Codex в CI/CD, скрипты или пакетные задания
  • Командам: несколько разработчиков с общим ключом и общим балансом
  • Тем, кто работает в нескольких инструментах: общая квота API для Codex CLI, IDE-плагинов и собственных приложений
  • Тем, кто контролирует расходы: нужна точная оплата по использованию без привязки к подписке

Как настроить переменные окружения

macOS / Linux

bash
# Temporary (current terminal session)
export OPENAI_API_KEY="sk-teamo-xxxxxxxx"
export OPENAI_BASE_URL="https://api.teamorouter.com/v1"

# Permanent (write to shell profile)
echo 'export OPENAI_API_KEY="sk-teamo-xxxxxxxx"' >> ~/.zshrc
echo 'export OPENAI_BASE_URL="https://api.teamorouter.com/v1"' >> ~/.zshrc
source ~/.zshrc

Windows PowerShell

powershell
# Temporary
$env:OPENAI_API_KEY="sk-teamo-xxxxxxxx"
$env:OPENAI_BASE_URL="https://api.teamorouter.com/v1"

# Permanent (current user)
[Environment]::SetEnvironmentVariable("OPENAI_API_KEY", "sk-teamo-xxxxxxxx", "User")
[Environment]::SetEnvironmentVariable("OPENAI_BASE_URL", "https://api.teamorouter.com/v1", "User")

Файл .env (рекомендуется)

Создайте файл .env для настройки на уровне проекта:

bash
OPENAI_API_KEY=sk-teamo-xxxxxxxx
OPENAI_BASE_URL=https://api.teamorouter.com/v1

Затем загрузите его в терминале:

bash
export $(cat .env | xargs)
codex

Как настроить base URL

Codex CLI определяет эндпоинт API по переменной окружения OPENAI_BASE_URL. По умолчанию это https://api.openai.com/v1. Если вы работаете в сети с ограничениями, укажите в ней TeamoRouter:

bash
export OPENAI_BASE_URL="https://api.teamorouter.com/v1"

Или задайте переменные прямо в строке с командой codex:

bash
OPENAI_BASE_URL="https://api.teamorouter.com/v1" OPENAI_API_KEY="sk-teamo-xxxxxxxx" codex

Примечание: должен ли OPENAI_BASE_URL включать /v1, зависит от того, как в инструменте реализован протокол. Codex CLI использует Responses API (/v1/responses), поэтому baseUrl должен содержать путь /v1.

Частые ошибки и их устранение

Неверный API-ключ (invalid API key)

bash
Error: 401 Unauthorized
{
  "error": {
    "message": "Incorrect API key provided",
    "type": "invalid_request_error"
  }
}

Что проверить:

  • Убедитесь, что переменная окружения задана: echo $OPENAI_API_KEY
  • Проверьте, что вокруг ключа нет лишних пробелов или переносов строк
  • Убедитесь, что срок действия API-ключа не истёк

Недостаточно средств (insufficient balance)

bash
Error: 429 Too Many Requests
{
  "error": {
    "message": "You exceeded your current quota",
    "type": "insufficient_quota"
  }
}

Что проверить:

  • Войдите в консоль TeamoRouter и проверьте баланс
  • Убедитесь, что на аккаунте, к которому привязан API-ключ, достаточно средств

Нет доступа к модели (model no permission)

bash
Error: 403 Forbidden
{
  "error": {
    "message": "The model `gpt-4o` is not available for your API key",
    "type": "access_terminated"
  }
}

Что проверить:

  • Убедитесь, что у API-ключа есть права на запрошенную модель
  • Проверьте список разрешённых моделей в консоли TeamoRouter

Ошибка в настройке baseUrl

bash
Error: 404 Not Found

Что проверить:

  • Убедитесь, что OPENAI_BASE_URL содержит путь /v1
  • Проверьте, что в конце URL нет завершающего слеша

FAQ

Можно ли использовать кредиты API, которые идут вместе с ChatGPT Plus?

Нет. Подписка ChatGPT Plus ($20/мес.) и оплата API по использованию — полностью независимые системы: кредиты Plus работают только на chat.openai.com, и потратить их через API-ключ нельзя. И наоборот: использование API не идёт в счёт подписки Plus.

Можно ли использовать один API-ключ в Codex CLI и других инструментах?

Да. Один и тот же API-ключ подходит для Codex CLI, пользовательских эндпоинтов ChatGPT, IDE-плагинов и не только. Единый API-ключ TeamoRouter поддерживает одновременно Codex, Claude Code и Gemini CLI — достаточно настроить baseUrl по документации каждого инструмента.

Есть ли риск утечки API-ключа?

Да, если ключ зашит в исходный код и закоммичен на GitHub. Используйте переменные окружения или файлы .env и добавьте .env в .gitignore.

Нужна ли кредитная карта, чтобы получить API-ключ в TeamoRouter?

Нет. Зарегистрируйтесь, чтобы получить API-ключ, пополните баланс перед использованием и оплачивайте через Alipay или другие локальные способы — минимальная сумма пополнения невелика.

В Codex CLI есть и OPENAI_API_KEY, и вход через ChatGPT — что приоритетнее?

Если задана переменная OPENAI_API_KEY, Codex CLI аутентифицируется по API-ключу и игнорирует активную сессию ChatGPT.

С чего начать

  1. Зарегистрируйтесь в TeamoRouter и получите API-ключ
  2. По руководству по установке Codex настройте переменные окружения и baseUrl
  3. Запустите codex в терминале и начинайте писать код

Настроить Codex бесплатно →

Стабильный доступ к Codex, Claude Code и Gemini CLI через TeamoRouter.

Готовы подключиться?Войдите в консоль, пополните баланс и создайте API-ключ.
Настройка API-ключа для Codex: получение, конфигурация и устранение ошибок · TeamoRouter