Создать событие из письма

POST /v1/mail/messages/:id/calendar-event

Создаёт событие календаря из письма.

Параметры

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

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

Поле Тип Обяз. Описание
messageId integer да Идентификатор письма, из которого создаётся событие
dateFrom string да Дата и время начала события, формат YYYY-MM-DD HH:MM:SS
dateTo string да Дата и время окончания события, формат YYYY-MM-DD HH:MM:SS
name string нет Название события. По умолчанию — тема письма
description string нет Описание события

Примеры

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

Terminal
curl -X POST \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"messageId": 123, "dateFrom": "2026-06-01 10:00:00", "dateTo": "2026-06-01 11:00:00", "name": "Встреча по запросу"}' \
  https://vibecode.bitrix24.tech/v1/mail/messages/123/calendar-event

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, "dateFrom": "2026-06-01 10:00:00", "dateTo": "2026-06-01 11:00:00", "name": "Встреча по запросу"}' \
  https://vibecode.bitrix24.tech/v1/mail/messages/123/calendar-event

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

javascript
const res = await fetch(
  'https://vibecode.bitrix24.tech/v1/mail/messages/123/calendar-event',
  {
    method: 'POST',
    headers: {
      'X-Api-Key': 'YOUR_API_KEY',
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      messageId: 123,
      dateFrom: '2026-06-01 10:00:00',
      dateTo: '2026-06-01 11:00:00',
      name: 'Встреча по запросу',
    }),
  }
)
const body = await res.json()
if (!body.success) throw new Error(body.error.code)
console.log(`Событие создано: ${body.data.eventId}`)

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

javascript
const res = await fetch(
  'https://vibecode.bitrix24.tech/v1/mail/messages/123/calendar-event',
  {
    method: 'POST',
    headers: {
      'X-Api-Key': 'YOUR_APP_KEY',
      'Authorization': 'Bearer USER_SESSION_TOKEN',
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      messageId: 123,
      dateFrom: '2026-06-01 10:00:00',
      dateTo: '2026-06-01 11:00:00',
      name: 'Встреча по запросу',
    }),
  }
)

Поля ответа

Поле Тип Описание
success boolean true при успешном создании
data.success boolean Внутренний признак успеха операции
data.eventId integer Идентификатор созданного события
data.messageId integer Идентификатор письма, из которого создано событие

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

JSON
{
  "success": true,
  "data": {
    "success": true,
    "eventId": 712,
    "messageId": 123
  }
}

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

422 — нарушена валидация (не передан messageId, не переданы или неверный формат dateFrom/dateTo):

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, не переданы или неверный формат dateFrom/dateTo, либо Битрикс24 отклонил запрос
429 RATE_LIMITED Превышен лимит запросов
502 BITRIX_UNAVAILABLE Битрикс24 недоступен

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

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

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

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