Codex API: почему по этому запросу находят три разные вещи?
Коротко: под словами «Codex API» нет одного продукта - слово склеивает три разные вещи. Первый смысл: интерфейс старых моделей Codex, выключенный ещё в 2023 году. Второй: нынешний Codex, который по устройству агент, а по названию похож на модель. Третий: способ платить за этого агента ключом вместо подписки. Развожу все три по очереди и показываю, какой из них твой.
Запрос «Codex API» набирают люди с несовместимыми задачами. Один читает статью 2022 года и хочет дёрнуть модель, которая писала код по описанию. Второй уже поставил агента и боится, что с карты начнут списывать деньги. Третий пишет автоматизацию и ищет, как запустить Codex без человека за клавиатурой.
Поисковик валит их в одну выдачу, и оттуда растёт путаница. Живые подсказки по этому запросу выглядят так: «codex api ключ», «codex api купить», «codex api price», «codex api key free». Половина из них - про кассу, половина - про программный доступ, и ни одна не про то, что такое Codex API как таковой.
Отдельно оговорю тёзок. Слово Codex занято не только OpenAI: так называются и другие продукты, вплоть до сервисов с данными блокчейна, у которых есть собственный платный интерфейс. Здесь речь только про Codex от OpenAI - агента для работы с кодом. Про сам инструмент есть отдельная карточка: что такое Codex.
Есть ли у OpenAI отдельный Codex API?
Коротко: отдельного продукта с таким именем нет. Есть платформенный API с ключом, есть агент Codex в виде программы на твоей машине, и есть возможность оплатить работу агента ключом. Три разные сущности, одна касса, одно слово в поиске. Дальше показываю, как они соотносятся.
Разложу конструкцию по деталям. У OpenAI есть платформа - обычный интерфейс, куда программа шлёт запрос с ключом и получает ответ модели. Это то, что называется OpenAI API, и Codex тут ни при чём: через платформу работают все модели компании.
Отдельно есть Codex - агент. Это программа, которая ставится тебе на машину или запускается в облаке, читает твои файлы, правит их и запускает команды. Разницу между агентом и обычным чатом я разбирал отдельно: ИИ-агент. Codex существует в четырёх видах: командная строка, расширение для редактора, облачный режим и приложение ChatGPT.
И только третьим слоем появляется то, что люди зовут Codex API: возможность перевести оплату с подписки на ключ. Отдельного интерфейса тут нет - это настройка входа.
Отсюда практический вывод. Если ты ищешь адрес, куда слать запросы «в Codex API», ты его не найдёшь - такого адреса нет. Способ запустить агента программно при этом есть - в документации он зовётся неинтерактивным режимом.
Что случилось со старым Codex API в 2023 году?
Коротко: исходные модели Codex выключены больше трёх лет назад. Снятие с поддержки объявили 20 марта 2023 года, а доступ закрыли 23 марта 2023 года - через три дня. В таблице замен OpenAI на их месте сегодня стоит gpt-4o. Разбираю, почему это до сих пор ломает людям настройку.
Первый Codex был именно моделью. Четыре имени: code-davinci-002, code-davinci-001, code-cushman-002 и code-cushman-001. Их дёргали через платформу как любую другую модель, и вот это в 2021-2022 годах и называли Codex API с полным основанием.
Обе даты фиксирует страница деприкаций OpenAI - так у них называется список моделей, снятых с поддержки. Объявление датировано 20 марта 2023 года, дата выключения - 23 марта 2023 года. Три дня вместо привычных месяцев на переезд - шума тогда было много.
Практическое следствие важнее истории. Интернет забит туториалами той эпохи, и они выглядят убедительно: там есть код, есть имя модели, есть ключ. Человек повторяет всё дословно, получает ответ вида «модель не существует» и решает, что напортачил с настройкой или с ключом.
Не напортачил. Если в инструкции встречается code-davinci или code-cushman, она описывает интерфейс, которого нет. Проверка занимает секунду: имя модели из статьи ищется в действующем прайсе OpenAI, и если его там нет - статью можно закрывать.
Почему у моделей Codex так быстро меняются имена?
Коротко: потому что Codex-модели живут по правилу специализированных вариантов, у которых заявленный срок поддержки - от трёх месяцев. Доступ к целой пачке имён с корнем codex выключили 23 июля 2026 года. Хуже того, документация OpenAI на этот счёт сама себе противоречит. Место расхождения покажу дословно.
Начну с правила. Страница деприкаций делит модели по срокам: у специализированных вариантов обычных моделей - чат-версий, Codex-версий, исследовательских - заявлен срок «не менее трёх месяцев». Три месяца для имени модели, которое ты вписал в скрипт, - это очень мало.
Теперь факты. В списке моделей, доступ к которым закрыт 23 июля 2026 года, стоят сразу пять имён с корнем codex: gpt-5-codex, gpt-5.1-codex, gpt-5.1-codex-max, gpt-5.1-codex-mini и gpt-5.2-codex. Замена почти для всех - gpt-5.6-sol. Ещё раньше, 12 февраля 2026 года, из API убрали codex-mini-latest.
А вот место, где документация ломается. Отдельная страница модели gpt-5-codex на сайте OpenAI открывается до сих пор и показывает цену 1,25 доллара за миллион входных токенов и 10 долларов за миллион выходных. При этом страница деприкаций говорит, что доступ к этой модели закрыт 23 июля 2026 года, а в действующем прайсе в категории Codex её нет вовсе.
Вывод для читателя простой: не доверяй одной странице. Если планируешь обращаться к модели Codex по имени, сверяйся с прайсом и со страницей деприкаций одновременно, а само имя держи в настройке - чтобы поменять его одной строкой, когда очередное выключат.
Чем вход по ключу отличается от входа по подписке?
Коротко: документация описывает ровно два входа - через ChatGPT для доступа по подписке и по ключу для оплаты по факту использования. Разница не только в кассе: при входе по ключу меняются правила хранения данных, отваливается облачный режим и перестают действовать включённые в план кредиты. Различия свёл в таблицу.
Сначала дословная формулировка первоисточника. Документация Codex перечисляет два способа: «Sign in with ChatGPT for subscription access» и «Sign in with an API key for usage-based access». То есть подписка против оплаты за использование.
Кассовую часть - какие вообще бывают способы заплатить за агента и как провести оплату из России - я здесь не разворачиваю, она разобрана отдельно: как оплатить Codex. Тут интересно другое: что меняется технически.
| Вход через ChatGPT | Вход по ключу | |
|---|---|---|
| За что платишь | подписка, кредиты включены в план | токены по тарифам платформы |
| Облачный Codex | работает | недоступен, нужен вход через ChatGPT |
| Правила данных | настройки рабочего пространства ChatGPT | настройки организации в API |
| Где смотреть расход | счётчик плана | счёт платформы |
| Типичный сценарий | работа руками в своей папке | запуск без человека: сборка, автоматизация |
Отдельно выделю фразу, из-за которой ломается больше всего ожиданий. Документация говорит прямо: при входе по ключу Codex использует обычные тарифы API вместо включённых в план кредитов ChatGPT. То есть подписка в этот момент не экономит ничего - она просто не участвует.
Как устроены сами лимиты плана, сколько они держатся и почему единой цифры нет - это тема соседнего разбора: лимиты Codex.
Сколько стоит Codex API и из чего складывается счёт?
Коротко: платформа считает токены, поэтому цену надо смотреть у конкретной модели. В действующем прайсе в категории Codex стоит gpt-5.3-codex: 1,75 доллара за миллион входных токенов и 14 за миллион выходных. Режим Fast mode стоит ровно вдвое дороже. Дальше - что именно попадает в счёт.
Сначала про единицу счёта. Токен - это кусочек текста примерно в три-четыре символа: ими модель меряет и твой вопрос, и свой ответ, и счёт платформы выставляется именно за них. Цифры из прайса OpenAI на 13 сентября 2026 года выглядят так.
| Позиция | gpt-5.3-codex, обычный режим | gpt-5.3-codex, Fast mode |
|---|---|---|
| Входные токены, за 1 млн | 1,75 доллара | 3,50 доллара |
| Кэшированные входные, за 1 млн | 0,175 доллара | 0,35 доллара |
| Выходные токены, за 1 млн | 14 долларов | 28 долларов |
Дальше важная часть, которую в прайсе не пишут. Миллион токенов звучит как много, но в счёт агента попадает не только твой вопрос. Туда идёт содержимое файлов, которые он открыл, история диалога на каждом новом шаге, описания подключённых инструментов и рассуждения модели. Агент по своей природе перечитывает контекст на каждом круге, поэтому входных токенов у него всегда сильно больше, чем кажется по длине твоего запроса.
Кэшированные входные токены в таблице стоят в десять раз дешевле обычных - это та самая повторяющаяся часть контекста, которую платформа узнаёт между запросами.
Конкретную сумму за месяц я намеренно не называю: она зависит от размера проекта и от того, насколько длинные круги делает агент. Единственный честный способ узнать свою цифру - посмотреть счёт платформы после пары рабочих дней.
Как обратиться к Codex из скрипта?
Коротко: программный доступ к агенту существует, но в документации он зовётся неинтерактивным режимом. Команда codex exec выполняет задачу без человека за клавиатурой, ключ для неё подаётся переменной CODEX_API_KEY. Документация отдельно просит не выставлять эту переменную на весь job. Ниже - как это выглядит и где грабли.
Вот тот самый вход, который люди ищут под словами Codex API. Агент умеет отработать задачу и завершиться, печатая результат машиночитаемо:
CODEX_API_KEY=<твой-ключ> codex exec --json "разбери открытые баги"
Переменная CODEX_API_KEY документирована именно для неинтерактивных сценариев: её читают codex exec, codex review, TypeScript SDK и удалённый exec-server. Это не то же самое, что вход руками в терминале - тот разобран в статье про установку Codex.
Теперь предупреждение, которое стоит прочитать до того, как ключ уедет в репозиторий. Документация формулирует его жёстко: не задавай OPENAI_API_KEY или CODEX_API_KEY как переменную, видимую всему заданию сборки целиком, если это задание выкачивает или запускает код из репозитория. Причина в том, что скрипты сборки, тесты, хуки зависимостей и любой чужой готовый шаг в том же job прочитают эту переменную без всякого труда.
Правильная форма - подать ключ только той команде, которой он нужен, как в примере выше. Для GitHub Actions у OpenAI есть отдельное готовое действие, которое ставит Codex и поднимает прокси к платформе само.
Codex SDK: как встроить агента в свою программу?
Коротко: если Codex нужен внутри чужого приложения, для этого есть SDK - библиотеки для TypeScript и Python. Они запускают локальные потоки агента и возвращают результат в код. Команда codex mcp-server при этом удалена, её заменил Codex app server. Разбираю, что именно ставится и чем управляется.
TypeScript-библиотека ставится через npm install @openai/codex-sdk и требует Node.js версии 18 или новее. Работает она на стороне сервера: создаёт поток, гоняет его с твоим запросом и отдаёт финальный ответ, а поток можно продолжить или возобновить по идентификатору.
Python-библиотека ставится через pip install openai-codex и требует Python 3.10 или новее. Она управляет локальным app-server агента и умеет задавать режим песочницы прямо при старте: read_only только читает файлы, workspace_write пишет внутри рабочей папки, full_access снимает ограничения файловой системы.
Отдельно отмечу то, что ломает старые инструкции. В документации прямо сказано: команда codex mcp-server и отдельный бинарник codex-mcp-server удалены, вместо них для существующих интеграций используется Codex app server. Все гайды 2025 года, где Codex поднимают как MCP-сервер, описывают то, чего уже нет. Что такое сам протокол и зачем он нужен - в словаре: что такое MCP.
Где живёт ключ и что с ним нельзя делать?
Коротко: по умолчанию Codex кладёт данные входа в обычный текстовый файл auth.json в своей папке, и обращаться с ним нужно как с паролем. Хранилище переключается настройкой на системное или на память процесса. Администратор рабочего пространства может вообще запретить один из способов входа. Дальше - три вещи, которые стоит сделать заранее.
- Где это лежит. Данные входа кэшируются локально - в файле
~/.codex/auth.jsonлибо в системном хранилище учётных данных. Командная строка и расширение редактора делят один кэш: вышел из одного, придётся войти заново и в другом. - Как поменять место хранения. За это отвечает настройка
cli_auth_credentials_store, у неё четыре значения.fileкладёт данные в auth.json.keyringуводит их в системное хранилище и падает, если его нет.autoвыбирает системное с откатом на файл.ephemeralдержит данные только в памяти процесса - для сборочного конвейера осмысленно именно это: ключ не остаётся на диске. - Чего делать нельзя. Документация формулирует это буквально: относись к
~/.codex/auth.jsonкак к паролю, он содержит токены доступа, не коммить его, не вставляй в тикеты и не пересылай в чат.
И ещё одна штука, про которую мало кто знает заранее. В управляемых рабочих пространствах администратор может зафиксировать способ входа настройкой forced_login_method - разрешить только вход через ChatGPT или только по ключу. Если твои текущие данные входа не совпадают с ограничением, Codex просто разлогинит тебя и завершится. Установка тут ни при чём - так выглядит политика организации.
Почему подписка и ключ спорят друг с другом?
Коротко: потому что два входа исторически плохо уживались на одной машине, и это самый частый источник неожиданных списаний. В трекере openai/codex лежит серия обращений об этом за 2025 год, все они закрыты. Понимать их всё равно полезно: форма путаницы никуда не делась. Три сюжета повторяются чаще всего, их и разбираю.
Сюжет первый: ключ подхватывается сам. Одно из обращений описывает ситуацию, когда командная строка забирает OPENAI_API_KEY из файла .env в папке проекта - оболочка подгружает его автоматически, человек об этом не знает. Дальше идут ошибки 401 и невнятный статус входа, хотя руками ключ никто не вводил.
Сюжет второй: подписка не отпускает. Сразу два обращения 2025 года описывают одно и то же с разных сторон: переключиться на ключ не получается, пока активен вход по подписке. Люди ожидали, что ключ просто перебьёт текущий вход, а он не перебивал.
Сюжет третий: неожиданный счёт. Самое обсуждаемое из этих обращений - на полсотни комментариев - заводил обладатель платного плана, который обнаружил, что при работе агента расход идёт по стороне API. Там же описан замкнутый круг: отзываешь ключ, чтобы не платить, - командная строка падает с сообщением 401 Incorrect API key provided и просит войти заново.
Все перечисленные обращения закрыты, и текущая документация развилку описывает явно, чего раньше не было. Но практический навык остаётся тот же: прежде чем грешить на установку, проверь, каким способом ты вошёл и не лежит ли в окружении ключ, о котором ты забыл.
Что печатает терминал, когда доступ не тот?
Коротко: почти все отказы вокруг доступа сводятся к четырём строкам, и каждая означает свою причину. Переустанавливать агента тут бесполезно: она возвращает ту же строку на том же месте. Ниже - расшифровка и первое действие для каждого случая.
| Строка в терминале | Причина | Первое действие |
|---|---|---|
401 Incorrect API key provided |
ключ недействителен, отозван или подставлен не тот | проверить, не подхватился ли ключ из окружения или из .env проекта |
Код invalid_api_key в деталях ошибки |
то же самое, но видно код ошибки платформы | выпустить новый ключ в кабинете платформы |
| Codex разлогинил и завершился | администратор зафиксировал способ входа через forced_login_method |
войти тем способом, который разрешён в рабочем пространстве |
| Облачный режим не пускает при рабочем ключе | Codex cloud требует входа через ChatGPT | для облака войти через ChatGPT, ключ оставить локальным сценариям |
Отдельная категория, которая к доступу отношения не имеет, - когда запрос вообще не уходит с машины. Это чаще всего про страновые ограничения и туннель, и разобрано оно отдельно: Codex и VPN.
Кому Codex API правда нужен, а кому лишний слой?
Коротко: ключ оправдан там, где агента запускают без человека, и почти не оправдан там, где человек сидит за клавиатурой. Для обычной работы в своей папке подписка проще и понятнее по деньгам. Развилку по ситуациям свёл в таблицу, чтобы не платить дважды.
| Ситуация | Что разумнее | Почему |
|---|---|---|
| Работаешь руками в своём проекте | вход через ChatGPT | кредиты включены в план, счёт не растёт от длинных сессий |
| Запускаешь агента на сборке или по расписанию | ключ и codex exec |
человека за клавиатурой нет, браузерный вход невозможен |
| Встраиваешь агента в своё приложение | Codex SDK и ключ | нужен программный интерфейс вместо терминала |
| Нужен облачный Codex | только вход через ChatGPT | по ключу облако не работает |
| Хочешь сэкономить на подписке | ни то ни другое | ключ не дешевле, он просто считает иначе |
Последнюю строку поясню, потому что именно на ней чаще всего ошибаются. Ключ - это не скидка и не обход лимитов плана. Это другая касса с оплатой по факту: подписка даёт предсказуемый потолок расходов, ключ даёт предсказуемую доступность. Что из этого ценнее, зависит от того, кто и когда запускает агента.
И честная граница этого разбора. Здесь я объясняю устройство доступа и его цену. Сравнение Codex с соседями по рынку лежит в отдельном материале: Codex или Claude Code. Направление агента на чужой или свой сервер с моделью - тоже отдельная тема: локальный ИИ-агент.
Что дальше
Коротко: вывод «ключ мне не нужен» - такой же законный итог разбора, как и обратный. Подписка закрывает работу руками, ключ закрывает запуск без человека. Для второго случая порядок действий укладывается в три шага, и он прямо под этим абзацем.
Если ключ всё-таки нужен, действуй по порядку:
- Выпусти отдельный ключ в кабинете платформы OpenAI - под конкретную задачу, а не один на всё сразу. Отозвать такой ключ можно, не ломая остальное.
- Отдай ключ одной команде. Переменная, видимая всему заданию сборки, читается любым чужим кодом внутри этого же задания - именно так ключи и утекают.
- Переключи хранилище входа настройкой
cli_auth_credentials_storeна системное или на память процесса, чтобы ключ не оставался лежать текстом на диске.
Чего делать не стоит: класть ключ в файл окружения проекта. Оттуда он подхватывается сам, без твоего ведома, и потом даёт отказы, которые выглядят как поломка установки.
Соседние разборы, если тема зацепила рядом:
- Как оплатить Codex - четыре кассы агента и порядок оплаты из России.
- Лимиты Codex - как устроено окно расхода на подписке.
- Как установить Codex - если программы на машине пока нет.
- Codex и VPN - если запрос не уходит с машины.
- Словарь: ИИ-агент - разбор самого понятия, без привязки к Codex.
И вещь, которая от способа входа не зависит вообще. Правила проекта, скиллы и схема памяти живут обычными текстовыми файлами: агент читает их одинаково на подписке и на ключе, и переезд с одного входа на другой их не ломает. Готовый такой комплект собран в базе знаний ClaudeBase.
Источники
- Authentication, документация Codex - формулировки двух способов входа, требование ChatGPT для облака, тарифы API вместо кредитов плана, хранение данных входа и настройки
cli_auth_credentials_storeиforced_login_method. - Deprecations, документация OpenAI API - даты по исходным моделям Codex (объявлено 20.03.2023, выключено 23.03.2023), список моделей, выключенных 23.07.2026, снятие codex-mini-latest 12.02.2026 и правило трёх месяцев для специализированных вариантов.
- Pricing, документация OpenAI API - действующие цены категории Codex по модели gpt-5.3-codex, обычный режим и Fast mode.
- GPT-5-Codex, страница модели - страница, которая всё ещё открывается со старой ценой, источник расхождения с деприкациями.
- Environment variables, документация Codex - назначение переменной
CODEX_API_KEYи перечень команд, которые её читают. - Non-interactive mode, документация Codex - запрет на переменную уровня job, форма подачи ключа одной команде, отсылка к готовому действию для GitHub Actions.
- Codex SDK, документация Codex - библиотеки для TypeScript и Python, требования к версиям, режимы песочницы и удаление команды
codex mcp-server. - Обращение про неожиданный счёт по стороне API - откуда взялось сообщение
401 Incorrect API key providedи почему отзыв ключа ломал вход. Закрыто, создано 08.08.2025, 53 комментария. - Ключ, подхваченный из файла
.envпроекта - как оболочка подгружает переменную сама и что после этого показывает статус входа. Закрыто, создано 15.08.2025. - Переключение на ключ при активной подписке ChatGPT Teams - жалоба на то, что вход по подписке не отпускает. Закрыто, создано 26.08.2025, 9 комментариев.
- Вход по ключу через переменную окружения при активной подписке - тот же сюжет с другой стороны. Закрыто, создано 07.09.2025, 7 комментариев.