Перейти к содержимому

Лимиты на модели

Лимиты на модели

POST https://gptunnel.ru/api/v1/access/setModelLimits

Задаёт дневной и/или месячный лимит расходов по конкретным моделям для сотрудников (вкладка «Настройки доступа» → «Основные модели» → «Лимит модели» в интерфейсе) — каждому логину свой список моделей. Запрос принимает массив пар { login, models } (до 25 логинов). Каждый элемент обрабатывается независимо; при повторе логина берётся первое вхождение.

Значения лимитов

Каждая запись в models — это { model, dailyLimit?, monthlyLimit? }:

Поля модели (models[])

ПараметрТипОписание
model*stringId модели из GET /v1/models (например, gpt-4o). Неизвестный id → ошибка model_not_found по логину
dailyLimitnumberДневной лимит в рублях (RUB). 0 = без лимита
monthlyLimitnumberМесячный лимит в рублях (RUB). 0 = без лимита

Нужно передать хотя бы одно из полей dailyLimit / monthlyLimit. Обновляются только переданные поля — если передать только dailyLimit, месячный лимит не изменится.

Кто может менять

Запрос выполняется от имени роли создателя API-ключа. Менять лимиты можно у сотрудников с ролью равной или ниже своей (кроме своего аккаунта):

  • ключ должен принадлежать роли owner или admin (иначе весь запрос вернёт 403);
  • действовать можно над сотрудником с равной или более низкой ролью; сотрудника с более высокой ролью или свой собственный аккаунт изменить нельзя (по такому логину — forbidden).

Headers

ПараметрТипОписание
Authorization*stringAPI ключ

Параметры запроса

ПараметрТипОписание
items*object[]Массив пар «логин + модели» (от 1 до 25). Каждый элемент: { login, models }
items[].login*stringЛогин сотрудника
items[].models*object[]Список { model, dailyLimit?, monthlyLimit? } (от 1 до 100), хотя бы один лимит в каждом

В ответе: updated — скольким логинам применены лимиты, failed — сколько с ошибкой, failedLogins — перечень логинов с ошибкой (причина и пояснение по каждому). Для причины model_not_found в элемент добавляется unknownModels — список неизвестных id моделей этого логина (ни одна его модель не применена).

Причины ошибок в failedLogins:

Причины ошибок

ПараметрТипОписание
not_foundstringСотрудника с таким логином нет в организации
forbiddenstringРоль цели выше вашей, либо это ваш собственный аккаунт
model_not_foundstringВ списке этого логина есть неизвестный id модели. Все неизвестные id — в поле unknownModels; ни одна модель логина не применена
errorstringНепредвиденная ошибка при обработке этого сотрудника

Пример запроса

Окно терминала
curl --request POST \
--url https://gptunnel.ru/api/v1/access/setModelLimits \
--header 'Authorization: YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"items": [
{
"login": "ivanov",
"models": [
{ "model": "gpt-4o", "dailyLimit": 500, "monthlyLimit": 10000 },
{ "model": "gpt-4o-mini", "dailyLimit": 0 }
]
}
]
}'

Пример ответа

{
"code": 0,
"updated": 1,
"failed": 0,
"failedLogins": []
}