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

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` — все привязанные модели удаляются вместе с ним. Этот эндпоинт нужен, чтобы убрать одну модель, оставив остальные.

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