Настройка Codex · обновлено 26.08.2026

Подключите Codex к Model.sale.

Используйте один prepaid-ключ Model.sale в Codex CLI, Codex App или VS Code. Подключение работает через Responses protocol, секрет остаётся локальным, а списания идут из того же кошелька, что и остальные API-запросы.

01 · Подготовка
Аккаунт и балансСоздайте ключ в dashboard и пополните баланс минимум на $5. Перед отправкой средства резервируются, затем списывается фактический usage.
02 · Настройка
Responses endpointИспользуйте https://api.model.sale/v1 и модель из ответа /v1/models.
03 · Проверка
Первый запросОтправьте короткий prompt, сохраните request ID и проверьте токены и charge на странице Usage.

Перед началом

  1. Войдите на model.sale и создайте API key в разделе API Keys. Полный секрет показывается один раз.
  2. Пополните Billing или используйте одноразовый Telegram-тестовый кредит, если аккаунт подходит под условия.
  3. Откройте GET https://api.model.sale/v1/models и выберите модель со статусом live. Не угадывайте ID и не подменяйте модель автоматически.
  4. Установите Codex и выберите ниже environment-метод или конфигурацию TOML.
Правило безопасности: не вставляйте рабочий ключ в URL, аргументы installer, Git, issue, скриншот или общий чат. При утечке сразу отзовите его и создайте новый.

Вариант A — локальная переменная окружения

Это самый простой вариант для Codex CLI и локальной разработки. Клиент читает значение во время запуска, а не из текста команды.

mkdir -p "$HOME/.config/model-sale"
umask 077
read -rsp "Model.sale API key: " MODEL_SALE_API_KEY; echo
printf 'export MODEL_SALE_API_KEY=%q\n' "$MODEL_SALE_API_KEY" > "$HOME/.config/model-sale/env"
chmod 600 "$HOME/.config/model-sale/env"
unset MODEL_SALE_API_KEY
source "$HOME/.config/model-sale/env"

Последнюю строку можно добавить в ~/.zshrc или ~/.bashrc. После изменения environment перезапустите Codex.

Вариант B — custom provider Codex

В ~/.codex/config.toml задайте provider, но не храните в нём сам секрет: используйте ссылку через env_key.

[model_providers.model_sale]
name = "Model.sale"
base_url = "https://api.model.sale/v1"
env_key = "MODEL_SALE_API_KEY"
wire_api = "responses"

Перед изменением сохраните копию текущего config. Выберите provider model_sale и live-модель из каталога. Название пункта в интерфейсе может отличаться в разных версиях Codex.

Codex App и VS Code

  1. Откройте настройки provider или custom endpoint в приложении/расширении.
  2. Укажите base URL: https://api.model.sale/v1.
  3. Выберите wire protocol Responses, если клиент задаёт этот вопрос.
  4. Укажите имя переменной ключа MODEL_SALE_API_KEY; не вставляйте secret в project-файл.
  5. Перезапустите приложение или перезагрузите окно VS Code и выберите live-модель.

Основной путь — /v1/responses. Клиент должен сохранить запрошенный model ID и показать ошибку, если выбранная модель недоступна.

Проверка минимальным запросом

Запустите команду из того же shell, из которого будет запускаться Codex. Короткий prompt помогает не тратить лишний баланс.

curl https://api.model.sale/v1/responses \
  -H "Authorization: Bearer $MODEL_SALE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-5.6-luna","input":"Reply exactly: OK"}'
ПроверкаОжидаемый результат
Status200 и Responses JSON.
Request IDЕсть x-model-sale-request-id; сохраните его для поддержки.
UsageInput/output usage виден в ответе или Usage, reservation закрыт.
БалансКошелёк уменьшился на charge, остаток reservation освобождён.

Streaming

Для streaming задайте stream: true. События передаются сразу, а terminal usage нужен для точного settlement.

Reasoning

Запрашивайте только уровни reasoning, которые указаны в capability выбранной модели.

Лимиты

Действуют RPM, TPM, concurrency и spend caps ключа. Модель не подменяется автоматически из-за лимита.

Если что-то не работает

СимптомЧто проверить
401 unauthorizedПеременная загружена в процесс Codex, ключ начинается с ms_live_ и не отозван. Не выводите secret в лог.
402 / insufficient balanceПополните wallet и проверьте available/reserved balance. Начальный резерв возвращается после terminal usage.
404 model not foundОбновите /v1/models и скопируйте точный live ID без provider-алиасов.
429 limitДождитесь окна лимита, уменьшите параллелизм или измените ограничения ключа в dashboard.
Модель не появиласьПерезапустите Codex, проверьте wire_api = "responses", base URL без двойного /v1 и curl-тест.
Streaming оборвалсяСохраните request ID и проверьте Usage. Не повторяйте запрос много раз: повторная inference-работа может списаться отдельно.

Откат и безопасность ключа

Для отката восстановите резервную копию ~/.codex/config.toml, удалите ~/.config/model-sale/env и строку source из shell profile. Если компьютер общий или secret мог быть скопирован, отзовите ключ в API Keys.

Model.sale хранит только метаданные, необходимые для биллинга и операций, а не prompt и response body. Отключайте подробное логирование в собственном клиенте, если оно может записать Authorization или содержимое модели.

FAQ

Это OpenAI API key?

Нет. Используйте ключ Model.sale и base URL Model.sale. Формат Responses совместим с клиентами Codex, но credential относится к вашему аккаунту Model.sale.

Можно указать любое имя модели?

Нет, используйте только ID из /v1/models. Каталог меняется при проверках доступности, а unavailable-модели не принимают customer traffic.

Где посмотреть расходы?

Откройте Usage после запроса. Там видны endpoint, модель, статус, токены, charge и request ID без сохранения текста prompt.