#Переслать письмо

POST /v1/mail/messages/:id/forward

Пересылает письмо: включает все вложения исходного и цитирует его текст. Сохраняется в папку Отправленные.

#Параметры

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

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

Поле Тип Обяз. Описание
forwardMessageId integer да Идентификатор пересылаемого письма
from string да Адрес отправителя. Допустимые значения — из GET /v1/mail/mailboxes/:id/senders
to array of strings да Адреса получателей
subject string да Тема письма
body string да Текст письма
cc array of strings нет Адреса для копии
bcc array of strings нет Адреса для скрытой копии

#Примеры

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

Terminal
curl -X POST \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  https://vibecode.bitrix24.tech/v1/mail/messages/1234/forward \
  -d '{
    "forwardMessageId": 1234,
    "from": "sender@example.com",
    "to": ["recipient@example.com"],
    "subject": "Fwd: Тема письма",
    "body": "Пересылаю письмо"
  }'

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

Terminal
curl -X POST \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  https://vibecode.bitrix24.tech/v1/mail/messages/1234/forward \
  -d '{
    "forwardMessageId": 1234,
    "from": "sender@example.com",
    "to": ["recipient@example.com"],
    "subject": "Fwd: Тема письма",
    "body": "Пересылаю письмо"
  }'

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

javascript
const messageId = 1234
const res = await fetch(
  `https://vibecode.bitrix24.tech/v1/mail/messages/${messageId}/forward`,
  {
    method: 'POST',
    headers: {
      'X-Api-Key': 'YOUR_API_KEY',
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      forwardMessageId: messageId,
      from: 'sender@example.com',
      to: ['recipient@example.com'],
      subject: 'Fwd: Тема письма',
      body: 'Пересылаю письмо',
    }),
  }
)
const data = await res.json()
console.log(data.data.to)

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

javascript
const messageId = 1234
const res = await fetch(
  `https://vibecode.bitrix24.tech/v1/mail/messages/${messageId}/forward`,
  {
    method: 'POST',
    headers: {
      'X-Api-Key': 'YOUR_APP_KEY',
      'Authorization': 'Bearer USER_SESSION_TOKEN',
      'Content-Type': 'application/json',
    },
    body: JSON.stringify({
      forwardMessageId: messageId,
      from: 'sender@example.com',
      to: ['recipient@example.com'],
      subject: 'Fwd: Тема письма',
      body: 'Пересылаю письмо',
    }),
  }
)
const data = await res.json()

#Поля ответа

Поле Тип Описание
success boolean true при успешном выполнении запроса
data.success boolean true при успешной пересылке
data.to array of strings Список адресов, которым отправлено письмо

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

JSON
{
  "success": true,
  "data": {
    "success": true,
    "to": ["recipient@example.com"]
  }
}

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

400 — некорректный параметр пути:

JSON
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "id must be a positive integer"
  }
}

#Ошибки

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

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

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

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

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