Перейти к содержанию

ForwardMessages#

Test Postman

Метод предназначен для пересылки сообщений в личный или групповой чат. Пересылаемое сообщение будет добавлено в очередь на отправку. Сообщение на отправку хранится 24 часа в очереди и будет отправлено сразу же после авторизации телефона. Скорость отправки сообщений из очереди регулирует параметр Интервал отправки сообщений.

Запрос#

Для отправки требуется выполнить запрос по адресу:

POST
{{apiUrl}}/waInstance{{idInstance}}/forwardMessages/{{apiTokenInstance}}

Для получения параметров запроса apiUrl, idInstance и apiTokenInstance обратитесь к разделу Перед началом работы.

Параметры запроса#

Параметр Тип Обязательный Описание
chatId string Да Идентификатор чата, куда пересылается сообщение
chatIdFrom string Да Идентификатор чата, с которого пересылается сообщение
messages array Да Коллекция идентификаторов пересылаемых сообщений
typingTime integer Нет Время показа уведомления набора сообщения в чате собеседника.
Время ограничено значениями от 1000 до 20000 миллисекунд (от 1 до 20 секунд).

Настройка инстанса

Для корректной работы с механизмом пересылки сообщений система должна знать о сообщении, которое будет переслано. Убедится о том что сообщение доступно к пересылке можно запросив метод журналирования getMessage, если сообщение отсутствует в системе, то пересылать такое сообщение невозможно.

  • Для пересылки входящих сообщений необходимо включить настройку Получать уведомления о входящих сообщениях и файлах.

  • Для пересылки исходящих сообщений отправленных с телефона, включите настройку Получать уведомления о сообщениях, отправленных с телефона.

Так сообщения будут попадать в систему и их можно будет пересылать.
Установку настроек можно сделать методом SetSettings или через личный кабинет.

Для пересылки отредактированного сообщения включите webhook editedMessageWebhook.

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

Отправка сообщения в чат:

{
    "chatId": "10000000",
    "chatIdFrom": "10000001",
    "messages": [
        "1769666251009",
        "1769666251008",
        "1769666251007"
    ]
}

Ответ#

Поля ответа#

Поле Тип Описание
messages array Идентификаторы отправленных сообщений

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

{
  "messages": [
            "1769666251000", 
            "1769666251001", 
            "1769666251002"
  ]
}

Ошибки ForwardMessages#

Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки

Код HTTP Идентификатор ошибки Описание
400 Bad Request
Validation failed
Ошибка валидации
400 Validation failed.
Details: 'messages' must contain at least 1 items
Ошибка валидации. Поле messages не должно быть пустым.

Отправка с неверным идентификатором сообщения

В случае некорректного указания messages, система вернёт код 200 и id отправляемого сообщения, но оно не будет доставлено получателю.

Получателю приходит неотредактированное сообщение

Неотредактированное сообщение придёт получателю приходит в случае выключенного webhook editedMessageWebhook.

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

import requests   

url = "{{apiUrl}}/waInstance{{idInstance}}/forwardMessages/{{apiTokenInstance}}"

payload = {
  "chatId": "10000000",
  "chatIdFrom": "10000001",
  "messages": [
    "1769666251000",
    "1769666251001"
  ]
}

headers = {
  'Content-Type': 'application/json'
}

response = requests.post(url, json=payload, headers=headers)

print(response.text.encode('utf8'))
curl --location --request POST '{{apiUrl}}/waInstance{{idInstance}}/forwardMessages/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "chatId": "10000000",
    "chatIdFrom": "10000001",
    "messages": [
        "1769666251000", 
        "1769666251001", 
        "1769666251002"
    ]
}'