Функции, описанные в этой статье, предназначены только для SME.
Для передачи информации об изменении статуса доставки сообщения
Запрос который передает на ваш сервер информацию об изменении статуса доставки сообщения. Параметры запроса передаются в теле запроса и аналогичны ответу для метода (GET) imOutMessageId.
URL-адрес подключения
Для создания callback-оповещения выполняется POST-запрос на URL-адрес, указанный вами при регистрации или в личном кабинете в разделе профиль.
Должен использоваться только HTTPS протокол.
Формат запроса
В теле запроса передается JSON-объект с данными о доставке сообщения (аналогичный телу ответа на запрос (GET) imOutMessage
).
{ "imOutMessageId": "91973e62-6dad-48f8-9b10-dcc7bdc7f3a9", "dlvStatus": "read", "dlvStatusAt": "2020-01-10T19:03:52.355+0300", "dlvError": null, "rate": null, "reserveSms": null }
Параметры запроса
Параметр | Тип данных | Описание |
imOutMessageId | string | Идентификатор сообщения |
dlvStatus | string | Статус сообщения. Возможные значения |
dlvStatusAt | string | Время последнего обновления статуса сообщения. Указывается формате ISO 8601. Например, 2019-12-26T19:03:52.355+0300 |
dlvError | string | Ошибка, возникшая при доставке сообщения. Возможные значения |
rate | string | Цена доставки резервного SMS-сообщения, если SMS было отправлено |
reserveSms | string | Статус доставки резервного SMS-сообщения. |
Формат ответа
В ответ на запрос от вашего сервера должен возвращаться статус его выполнения с кодом 200.
Для передачи сообщения, отправленного пользователем на сервер
Этот метод позволяет выполнить отправку входящего сообщения пользователя на ваш сервер, в результате которого можно просмотреть это сообщение. Метод аналогичен функции imOutMessageDlvStatusCallback. В личном кабинете обязательно должен быть прописан Callback URL. Адрес должен начинаться с HTTPS. Функция передачи сообщения должна использоваться, например, если отправляются HSM сообщения с чат-кнопками. В этом случае в теле запроса будет присутсвовать параметр payload. Это код кнопки на которую нажал пользователь. Код указывается при создании шаблона HSM.
URL-адрес подключения
Для отправки входящего сообщения, выполняется POST-запрос на URL-адрес, указанный вами при регистрации или в личном кабинете в разделе профиль.
Должен использоваться только HTTPS протокол.
Параметры запроса
В теле запроса передается JSON-объект с входящим сообщением пользователя и его параметрами (аналогичный телу запроса (POST) imOutMessageDlvStatusCallback
).
{ "id": 43407125, "imSubject": "subject", "address": "79XXXXXXXXX", "receivedAt": "2021-10-20T08:42:51.354+0000", "imType": "whatsapp", "contentType": "text", "text": "Hello edna", "caption": null, "attachmentUrl": null, "attachmentName": null, "longitude": null, "latitude": null, "locationAddress": null, "userName": "Joe", "firstName": null, "lastName": null, "avatarUrl": null, "apiKeyId": 121, "historyMessages": [ null ], "imSubjectId": 864 }
Параметры запроса
Параметр | Тип запроса | Описание |
id | string | Идентификатор сообщения. Генерируется сторонней системой, после чего значение должно быть передано в запрос |
imsubject | string | Текст подписи в сообщении |
address | string | Номер абонента WhatsApp, c которого было отрпавлено сообщение в формате 79ХХХХХХХХХХ |
receivedAt | string | Время принятого сообщения |
imType | string | Определяет канал взаимодействия, который используется для доставки сообщения |
contentType | string | Определяет тип сообщения. Может быть текст, кнопка, изображение, документ, аудио или видео |
text | string | Текст сообщения |
attachmentUrl | string | URL прикрепленного изображения/документа/видео |
attachmentName | string (optional) | Название прикрепленного изображения/документа/видео. |
longitude | string | Долгота отправителя |
latitude | string | Широта отправителя |
locationAddress | string | Адрес локации |
caption | string | Название локации |
userName | string | Никнейм пользователя в whatsapp |
firstName | string | Имя пользователя в whatsapp |
lastName | string | Фамилия пользователя в whatsapp |
avatarUrl | string | Аватар пользователя |
payload | string | Код кнопки. Указывается при создании HSM шаблона |
apiKeyId | string | Код ключа аккаунта |
Формат ответа
В ответ на запрос от сервера клиента должен возвращаться статус его выполнения с кодом 200.