#Создать чат из письма

POST /v1/mail/messages/:id/chat

Создаёт групповой чат из письма.

#Параметры

Параметр В Тип Обяз. Описание
id path integer да Идентификатор письма, из которого создаётся чат

#Поля запроса (body)

Поле Тип Обяз. Описание
messageId integer да Идентификатор письма, из которого создаётся чат

#Примеры

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

Terminal
curl -X POST \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"messageId": 123}' \
  https://vibecode.bitrix24.tech/v1/mail/messages/123/chat

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

Terminal
curl -X POST \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"messageId": 123}' \
  https://vibecode.bitrix24.tech/v1/mail/messages/123/chat

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

javascript
const res = await fetch(
  'https://vibecode.bitrix24.tech/v1/mail/messages/123/chat',
  {
    method: 'POST',
    headers: {
      'X-Api-Key': 'YOUR_API_KEY',
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({ messageId: 123 }),
  }
)
const body = await res.json()
if (!body.success) throw new Error(body.error.code)
console.log(`Чат: ${body.data.chatId}, уже существовал: ${body.data.existing}`)

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

javascript
const res = await fetch(
  'https://vibecode.bitrix24.tech/v1/mail/messages/123/chat',
  {
    method: 'POST',
    headers: {
      'X-Api-Key': 'YOUR_APP_KEY',
      'Authorization': 'Bearer USER_SESSION_TOKEN',
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({ messageId: 123 }),
  }
)

#Поля ответа

Поле Тип Описание
success boolean true при успешном выполнении
data.success boolean Внутренний признак успеха операции
data.chatId integer Идентификатор чата
data.messageId integer Идентификатор письма, из которого создан чат
data.existing boolean true, если чат уже существовал до этого вызова

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

JSON
{
  "success": true,
  "data": {
    "success": true,
    "chatId": 89,
    "messageId": 123,
    "existing": false
  }
}

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

422 — нарушена валидация (не передан messageId):

JSON
{
  "success": false,
  "error": {
    "code": "BITRIX_ERROR",
    "message": "Ошибка при валидации объекта запроса"
  }
}

#Ошибки

HTTP Код Описание
400 INVALID_PARAMS Нечисловой или отрицательный :id в пути
401 MISSING_API_KEY Не передан заголовок X-Api-Key
401 INVALID_API_KEY Неверный или просроченный ключ
401 KEY_INACTIVE Ключ деактивирован
401 KEY_EXPIRED Срок действия ключа истёк
401 TOKEN_MISSING Ключ не привязан к порталу Битрикс24
403 SCOPE_DENIED Ключу не хватает скоупа mail
422 BITRIX_ERROR Не передан messageId, либо Битрикс24 отклонил запрос
429 RATE_LIMITED Превышен лимит запросов
502 BITRIX_UNAVAILABLE Битрикс24 недоступен

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

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

  • Идентификатор письма указывается дважды — в пути :id и в теле messageId; передавайте оба с одним значением.

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