В этой статье
Если вы ищете chatgpt api docs, начните с Developer quickstart OpenAI API, а не со страницы подписки ChatGPT. Quickstart относится к API Platform: там создают ключ проекта, выбирают SDK или HTTP-вызов и отправляют запрос к модели.
ChatGPT и OpenAI API — разные продукты
ChatGPT и OpenAI API связаны одной экосистемой, но решают разные задачи. Подписка ChatGPT даёт доступ к пользовательскому интерфейсу и его функциям. Она сама по себе не является API-ключом, не настраивает API-биллинг и не разрешает приложению вызывать api.openai.com.
Для программного запроса нужен отдельный проект в API Platform, API-ключ и настроенные там условия биллинга. Доступные модели, цены и лимиты зависят от проекта и могут меняться, поэтому перед запуском сверяйте их с актуальной документацией.
Куда идти в документации
- Для первого запуска — Developer quickstart. Он ведёт от настройки ключа к установке SDK и минимальному запросу.
- Для параметров и схем — OpenAI API Reference. Там ищут точные поля запроса, структуру ответа, коды ошибок и сведения о лимитах.
- Для переноса старого кода — Migrate to the Responses API.
Chat Completionsчасто встречается в существующих проектах, но новый пример здесь строится наResponses API.
На дату проверки, 4 октября 2026 года, базовый текстовый запрос отправляется на POST https://api.openai.com/v1/responses. В запросе нужны bearer-авторизация, model и input.
После настройки API, если вам отдельно нужна подписка или другой цифровой доступ, можно посмотреть каталог цифровых сервисов Amber Market. Это не пополнение OpenAI API и не замена API Platform; актуальные товары и условия проверяйте перед заказом.
Сначала ключ, потом код
Создайте API-ключ в проекте OpenAI Platform и передайте его процессу через переменную окружения. В macOS или Linux:
export OPENAI_API_KEY="your_api_key_here"
В PowerShell:
$env:OPENAI_API_KEY = "your_api_key_here"
setx записывает переменную для следующих сессий, но уже открытый терминал её не увидит. Поэтому после изменения окружения откройте новый терминал или задайте переменную в текущем.
Ключ нельзя помещать в браузерный JavaScript, мобильное приложение, git-репозиторий или опубликованный пример — это соответствует рекомендациям OpenAI по безопасности API-ключей. Публичный клиент должен обращаться к вашему серверу, а сервер — к OpenAI. Если ключ утёк, отзовите его и создайте новый: минификация фронтенд-кода секретом его не делает.
Первый запрос через Python SDK
Установите актуальную версию официального пакета в окружении проекта:
python -m pip install openai
Создайте example.py:
from openai import OpenAI
client = OpenAI()
response = client.responses.create(
model="gpt-6-astra",
input="Ответь одной фразой: API подключён?",
)
print(response.output_text)
SDK читает OPENAI_API_KEY из окружения, поэтому передавать ключ в коде не нужно. Запустите файл:
python example.py
response.output_text — удобное текстовое представление результата. Имя модели взято из текущего Quickstart; перед запуском всё равно проверьте её доступность в своём проекте.
Для Node.js официальный SDK устанавливается так:
npm install openai
Минимальный example.mjs:
import OpenAI from "openai";
const client = new OpenAI();
const response = await client.responses.create({
model: "gpt-6-astra",
input: "Ответь одной фразой: API подключён?",
});
console.log(response.output_text);
Запустите его командой:
node example.mjs
Оба SDK вызывают тот же endpoint и используют ту же bearer-авторизацию, что и ручной HTTP-запрос. SDK лишь берёт на себя сборку запроса и разбор ответа.
Тот же запрос через curl
Для проверки сети и ключа без SDK выполните прямой HTTP-вызов:
curl https://api.openai.com/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-d '{
"model": "gpt-6-astra",
"input": "Ответь одной фразой: API подключён?"
}'
В PowerShell тело удобнее собрать как объект:
$body = @{
model = "gpt-6-astra"
input = "Ответь одной фразой: API подключён?"
} | ConvertTo-Json
Invoke-RestMethod `
-Uri "https://api.openai.com/v1/responses" `
-Method Post `
-Headers @{ Authorization = "Bearer $env:OPENAI_API_KEY" } `
-ContentType "application/json; charset=utf-8" `
-Body ([System.Text.Encoding]::UTF8.GetBytes($body))
В полном JSON-ответе будут идентификатор и выходные элементы. SDK собирает текст в response.output_text, поэтому для первого smoke test не нужно вручную обходить массив output.
Как проверить результат и найти причину ошибки
Настройка закончена, если одновременно выполнены три условия:
- Процесс получил
OPENAI_API_KEYименно из своего окружения. - Сервер вернул успешный HTTP-ответ, а
output_textнепустой. - Запрос использовал модель, доступную вашему проекту сейчас.
Разбирайте ошибки по границе, на которой они возникли:
- ошибка авторизации — проверьте имя переменной, пробелы в ключе и проект;
404или ошибка модели — проверьте имя модели и её доступность;429— отделите rate limit от отсутствующей квоты по телу ответа и настройкам проекта;- отсутствие HTTP-ответа — проверьте сеть, прокси и корпоративный TLS.
После минимального вызова можно разобрать запрос через curl, затем изучить роли и структуру сообщений OpenAI API. Для 429, rate limit и insufficient_quota пригодится диагностика этих ошибок.
Смысл первого запроса — проверить границу между приложением, SDK, ключом и API. Когда она работает, следующие возможности Responses API добавляются поверх проверенной авторизации, а не скрывают ошибку в базовой настройке.
Источники
- Developer quickstart — OpenAI APIOpenAI Developers
- OpenAI API Platform DocumentationOpenAI Developers
- Migrate to the Responses APIOpenAI Developers
- Best Practices for API Key SafetyOpenAI Help Center