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

Удалить сообщение

DELETE /v1/chats/:dialogId/messages/:messageId

Удаляет сообщение из диалога. Восстановить удалённое сообщение через API нельзя — создавайте новое при необходимости.

Параметры

Параметр Тип Обяз. Описание
dialogId (path) string да Идентификатор диалога: числовой ID пользователя или chatXXX для групповых. chatXXX — поле id строки последних диалогов, ID пользователя — из списка пользователей
messageId (path) number да ID сообщения — из ответа отправки или поле id сообщения ленты чата
format (query) string нет v2 включает режим v2 — см. «Режим v2» ниже. Любое другое значение игнорируется, ответ прежний. Повтор format не отклоняется: из format=v1&format=v2 берётся последнее значение, то есть режим v2, а format=v2&format=v1 даёт прежний ответ. Форма format[]=v2 включает режим v2, если все её значения — v2

Режим v2. format=v2 удаляет сообщение. В data приходит { "result": true } вместо true. Режим не принимает полей тела и параметров строки запроса кроме format: всё лишнее отклоняется с 400 INVALID_PARAMS, а не уходит на портал. Сообщение должно принадлежать диалогу из пути: после проверки входа платформа читает этот диалог, не вступая в чат, и, если сообщения в нём нет, отвечает 404 ENTITY_NOT_FOUND, ничего не удаляя. Алиас me определяется до этой проверки. Обычный режим dialogId не проверяет.

Примеры

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

Terminal
curl -X DELETE https://vibecode.bitrix24.tech/v1/chats/42/messages/36889 \
  -H "X-Api-Key: YOUR_API_KEY"

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

Terminal
curl -X DELETE https://vibecode.bitrix24.tech/v1/chats/42/messages/36889 \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/chats/42/messages/36889', {
  method: 'DELETE',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

const { success, data } = await res.json()

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/chats/42/messages/36889', {
  method: 'DELETE',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})

const { success, data } = await res.json()

curl — режим v2

Terminal
curl -X DELETE "https://vibecode.bitrix24.tech/v1/chats/42/messages/36889?format=v2" \
  -H "X-Api-Key: YOUR_API_KEY"

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе
data boolean true при успешном удалении
data.result boolean Режим v2: true при успешном удалении

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

Обычный режим:

JSON
{
  "success": true,
  "data": true
}

Режим v2 — format=v2:

JSON
{
  "success": true,
  "data": {
    "result": true
  }
}

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

422 — сообщение не найдено, время на изменение истекло или нет прав:

JSON
{
  "success": false,
  "error": {
    "code": "BITRIX_ERROR",
    "message": "Time has expired for modification or you don't have access",
    "b24Code": "CANT_EDIT_MESSAGE"
  }
}

Ошибки

HTTP Код Описание
400 INVALID_PARAMS messageId не является положительным целым числом — проверяется до обращения в Битрикс24
422 BITRIX_ERROR Битрикс24 вернул ошибку — сообщение не найдено или недоступно (подробности в message). Код портала — в error.b24Code
400 INVALID_PARAMS Только режим v2: поле тела или параметр строки запроса кроме format
404 ENTITY_NOT_FOUND Только режим v2: сообщения нет в диалоге из пути (сообщение другого диалога или несуществующее) — ничего не удалено
403 WRITE_BLOCKED_READONLY_KEY Ключ только для чтения — см. права доступа
403 SCOPE_DENIED Ключ не имеет скоупа im
401 TOKEN_MISSING Ключ не имеет настроенных токенов
502 ME_ALIAS_RESOLUTION_FAILED Только режим v2: не удалось определить пользователя для алиаса me

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

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

Системные сообщения. Сообщения, отправленные с system: true, имеют authorId = 0. Удалить такое сообщение можно только при наличии прав администратора чата.

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