Для AI-агентов: markdown этой страницы — /docs-content/ai/credentials/models-delete.md индекс документации — /llms.txt

Удалить модель ключа

DELETE /v1/ai/credentials/:credId/models/:modelRowId

Удаляет одну модель, привязанную к BYOK-ключу. После удаления модель пропадает из GET /v1/models, а запросы к ней через /v1/chat/completions возвращают 404 ai_model_not_found. История вызовов в AiUsageLog сохраняется.

Параметры

Параметр Тип Обяз. Описание
credId (path) string да ID ключа из GET /v1/ai/credentials
modelRowId (path) string да ID записи модели (data[].id) из GET /v1/ai/credentials/:id/models — это не modelId, а первичный ключ записи AiModel

Примеры

curl — личный ключ

Terminal
curl -X DELETE https://vibecode.bitrix24.tech/v1/ai/credentials/cred_custom_xyz/models/aimodel_xyz789 \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth-приложение

Terminal
curl -X DELETE https://vibecode.bitrix24.tech/v1/ai/credentials/cred_custom_xyz/models/aimodel_xyz789 \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

JavaScript — личный ключ

javascript
const credId = 'cred_custom_xyz'
const modelRowId = 'aimodel_xyz789'
const res = await fetch(
  `https://vibecode.bitrix24.tech/v1/ai/credentials/${credId}/models/${modelRowId}`,
  { method: 'DELETE', headers: { 'X-Api-Key': 'YOUR_API_KEY' } },
)

const { success } = await res.json()
if (success) console.log('Модель удалена из каталога ключа')

JavaScript — OAuth-приложение

javascript
const credId = 'cred_custom_xyz'
const modelRowId = 'aimodel_xyz789'
const res = await fetch(
  `https://vibecode.bitrix24.tech/v1/ai/credentials/${credId}/models/${modelRowId}`,
  {
    method: 'DELETE',
    headers: {
      'X-Api-Key': 'YOUR_APP_KEY',
      'Authorization': 'Bearer USER_SESSION_TOKEN',
    },
  },
)

if ((await res.json()).success) console.log('OK')

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе

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

HTTP-статус 200 OK:

JSON
{
  "success": true
}

Пример ответа при ошибке

404 not_found — ключ или модель не найдены, либо ключ принадлежит другому пользователю:

JSON
{
  "success": false,
  "error": {
    "code": "not_found",
    "message": "Credential not found"
  }
}

Ошибки

HTTP Код Описание
404 not_found Ключ с таким credId не найден / не принадлежит вам, либо модель с таким modelRowId не привязана к ключу
403 scope_missing API-ключу не хватает скоупа vibe:ai

Полный список общих ошибок API — Ошибки.

Лимит удаления моделей: 30 запросов в минуту.

Известные особенности

modelRowId — первичный ключ записи, не modelId. Один и тот же modelId может встречаться у разных ключей (одинаковая модель gpt-4o у двух BYOK), поэтому удаление идёт по уникальному id записи AiModel. Получите его из GET /v1/ai/credentials/:id/models, поле data[].id.

История вызовов сохраняется. Записи AiUsageLog не удаляются — статистика по этой модели за прошлые периоды останется в GET /v1/ai/usage. Поля modelId и providerId в логах хранятся как строки, без FK-связи с таблицей AiModel.

Не путайте с DEPRECATED. Модель в статусе DEPRECATED ещё работает — её просто не рекомендуется использовать. Удалённая модель полностью пропадает: запросы к её modelId возвращают 404 ai_model_not_found. Чтобы пометить модель устаревшей вместо удаления — обратитесь к администратору портала.

Каскадное удаление с ключом. Если удалить сам ключ через DELETE /v1/ai/credentials/:id — все привязанные модели удаляются вместе с ним. Этот эндпоинт нужен, чтобы убрать одну модель, оставив остальные.

Смотрите также