Перейти к основному содержанию
API управления токенами делает то же, что страница «Токены» в консоли, но из вашего кода. Обычно его используют, чтобы автоматически выдавать каждому клиенту ключ с лимитом или отключать пачку ключей после завершения проекта. Вызовы по таким ключам списываются с баланса вашего аккаунта.
AccessToken даёт полный контроль над аккаунтом. Храните его только на сервере.
  • Не передавайте его в браузер или приложение и не отдавайте клиенту. Клиенты получают только API-ключи, которые вы для них создали.
  • Неверный токен возвращает HTTP 200 с success: false, поэтому проверяйте success в каждом вызове.

Эндпоинты

Список и поиск возвращают по 10 ключей на страницу, p начинается с 0. Поле key в этих ответах замаскировано; полный ключ для вызовов моделей возвращает эндпоинт показа ключа.

Поля нового ключа

Поле billing_type определяет, какие модели ключ может вызывать. Ключи с оплатой по использованию вызывают только такие модели, ключи с оплатой за вызов — только модели за вызов, а ключи «сначала по использованию» (в консоли — 按量优先) вызывают оба типа. Три режима объяснены в разделе Тарификация и цены.

Создание и показ ключа

Скрипт создаёт ключ с лимитом 5 USD, сроком действия 30 дней и двумя разрешёнными моделями, а затем показывает полный ключ. Нужна библиотека requests (python -m pip install requests).
Показанный ключ работает как API-ключ моделей (Authorization: Bearer <key>), с префиксом sk- или без него. Сохраните его в хранилище секретов, прежде чем передавать клиенту. Не вызывайте эндпоинт показа ключа многократно: на него действует жёсткий лимит частоты.

Обновление, отключение и удаление

Обновление заменяет объект ключа целиком. Прочитайте ключ через GET /api/token/{id}, измените нужные поля и отправьте весь объект обратно через PUT. Если отправить только часть полей, остальные могут сброситься.
Изменения вступают в силу сразу:
  • Отключённый или удалённый ключ при вызове модели получает HTTP 401 Invalid token.
  • Модель вне списка разрешённых возвращает HTTP 403 с сообщением, что токену нельзя использовать эту модель.

Ошибки

Частые вопросы

С чьего баланса списывается плата за ключ клиента?

С вашего. Задайте remain_quota каждого ключа как предел расходов. Достигнув предела, ключ перестаёт работать и не может тратить остаток вашего баланса.

Как узнать, сколько потратил каждый ключ?

Поле used_quota в списке и в карточке ключа — это его суммарный расход. Для разбивки по времени или модели используйте API журнала вызовов с параметром token_name.

Я задал model_limits, но поле игнорируется. Почему?

Список разрешённых моделей читается только из models. Передайте в него ID моделей одной строкой через запятую.

Связанные материалы