API-ключ и API-токен: что это такое, чем отличаются и как ими пользоваться
API-ключ, API-токен, API key, Авторизация API, Безопасность API, AI API
API-ключ или API-токен нужен почти в любой интеграции с нейросетью. Пользователь получает секретную строку, приложение добавляет ее к запросу, а API по ней понимает, кто обращается к сервису, какие права у клиента и с какого баланса списывать использование. В поиске встречаются формулировки «api токен», «api ключ токен», «получить api токен» и «где взять апи токен» — на практике речь чаще всего идет об одном и том же механизме авторизации.
Важно не путать API-ключ с токенами текста. API key — это код доступа, а текстовые токены — единицы, по которым языковая модель считает объем входа и ответа. Один API-ключ может использоваться для миллионов текстовых токенов, пока на аккаунте есть лимит или положительный баланс.
Чем API key отличается от access token
Терминология зависит от конкретного сервиса. API key обычно создается в личном кабинете и “живет” до ручного отзыва. Access token может быть временным, выпускаться после Auth-авторизации и иметь срок действия. Для AI API чаще используется постоянный секретный ключ, который передается в HTTP-заголовке.
Понятие: API key
Для чего нужно: Идентификация и авторизация приложения
Где хранить: На сервере, в secret manager или переменной окружения
Типичный вид: sk-...
Понятие: Access token
Для чего нужно: Временный доступ от имени пользователя или приложения
Где хранить: В защищенном хранилище с учетом срока “жизни”
Типичный вид: длинная секретная строка
Понятие: Bearer token
Для чего нужно: Способ передачи токена в HTTP-заголовке
Где хранить: Не хранится отдельно от самого секрета
Типичный вид: Authorization: Bearer ...
Понятие: Токены модели
Для чего нужно: Измерение объема текста и стоимости
Где хранить: Не являются секретом
Типичный вид: input/output tokens
Как получить API-токен и сделать первый запрос
Обычно путь одинаков: зарегистрироваться у API-провайдера, открыть раздел ключей, создать новый ключ и сохранить его в безопасном месте. В RUTOKEN ключ используется для доступа к совместимым маршрутам OpenAI, Claude, Gemini и другим моделям. На главной странице сервиса показаны маршруты /v1/chat/completions, /v1/responses, /v1/messages и Gemini-совместимый generateContent.
Для OpenAI-совместимого запроса ключ обычно передается как Bearer-токен:
curl -X POST "BASE_URL/v1/chat/completions" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"gpt-5.6-luna","messages":[{"role":"user","content":"Привет!"}]}'
В реальном проекте адрес API и идентификатор модели нужно брать из документации провайдера. Не вставляйте секрет прямо в исходный код, особенно если репозиторий отправляется в GitHub.
Как хранить API-ключ безопасно
Для локальной разработки подойдет переменная окружения: например, RUTOKEN_API_KEY. Для сервера лучше использовать менеджер ключей облачной платформы или закрытое хранилище CI/CD. Ключ нельзя размещать в браузерном JavaScript, мобильном приложении в открытом виде, публичном .env, логах запросов и скриншотах.
Полезная практика — выдавать разные ключи для разработки, тестирования и production. Тогда компрометация одного окружения не затронет остальные. Если сервис поддерживает ограничения по проектам, IP или лимитам расходов, их также стоит включить.
Почему API возвращает 401 или 403
Ошибка 401 обычно означает, что ключ не передан, передан неверно или уже отозван. Ошибка 403 чаще связана с отсутствием прав на конкретный ресурс. Сначала проверьте заголовок авторизации и отсутствие лишних пробелов, затем убедитесь, что выбранная модель доступна аккаунту. Если ключ случайно попал в публичный репозиторий, правильным решением будет немедленно отозвать его и выпустить новый.
API-токен в RUTOKEN
RUTOKEN позволяет использовать единый код доступа к разным AI-моделям. Это удобно, когда приложение должно переключаться между несколькими семействами моделей, но разработчик не хочет для каждой интеграции строить отдельную авторизацию и биллинг. В каталоге можно сравнивать модели и стоимость, а в приложении менять прежде всего значение model и при необходимости формат совместимого маршрута.
Актуальный список моделей и цен: https://rutoken.ai/pricing. Поскольку стоимость и доступность моделей меняются, перед запуском production-нагрузки проверяйте каталог.
Чек-лист перед запуском API в production
Перед запуском убедитесь, что ключ не хранится в коде и не попадает в клиентские логи. Выпустите отдельный production-ключ, задайте понятное имя проекта, настройте лимит расходов и уведомления. Проверьте таймауты и обработку 401, 403, 429 и 5xx, а также сценарий ротации ключа без простоя сервиса. Если приложение обслуживает несколько команд, лучше выдавать отдельные ключи или проекты: так проще видеть потребление и быстро отключать проблемную интеграцию.
Полезно один раз намеренно отозвать тестовый ключ и проверить, что приложение корректно сигнализирует об ошибке, а не уходит в бесконечный retry. Такой небольшой тест часто обнаруживает проблемы раньше, чем реальная ротация секрета.
Вопросы и ответы
API key и API token — это одно и то же?
Во многих AI API эти слова используют как синонимы. Технически token — более широкое понятие, а API key это секретный код доступа к приложению.
Где взять API-токен?
В личном кабинете выбранного API-провайдера, в разделе ключей или credentials. Ключ создается после регистрации и не должен передаваться посторонним.
Можно ли вставить API key прямо в код?
Для одноразового локального теста это возможно, но для проекта лучше использовать переменные окружения или менеджер секретов. В публичный репозиторий ключ попадать не должен.
Что делать, если API-токен “утек”?
Отозвать скомпрометированный ключ, создать новый, заменить его во всех окружениях и проверить историю запросов и расходов.
Чем API-токен отличается от токенов GPT или Claude?
API-токен дает доступ к сервису. Текстовые токены измеряют объем данных, которые модель получила и сгенерировала, и часто используются для расчета стоимости.
Примечание об актуальности: названия моделей, доступность и цены могут меняться. Перед публикацией и запуском нагрузки сверяйте данные с актуальным каталогом RUTOKEN.