Для получения списка событий инициируется POST-запрос на адрес:
https://whatsgate.ru/api/v1/events-get
В теле запроса передается объект:
{
"WhatsappID" : "XXXXXXXXXXXXX",
"date" : "YYYY-MM-DD HH:MM:SS",
"action" : "message",
"page_cnt" : "10",
"page" : "1"
}
все указанные поля в данном объекте являются необязательными, т.е. для получения полного списка событий достаточно передать пустой объект. Поля WhatsappID и action - являются фильтрами, поле date ограничивает события указанной датой. Дата используется следующим образом: при получении событий, мы анализируем дату последнего события, и передаем ее в следующем запросе в поле date для получения свежих событий.
WhatsappID - фильтр по идентификатору WhatsApp, используется для точного совпадения и возвращает в результате события для указанной сессии. Если не указывать, то система вернет события для всех сессий, в том числе и удаленных.
date - ограничивает события указанной датой. Дата используется следующим образом: при получении событий, мы анализируем дату последнего события, и передаем ее в следующем запросе в поле date для получения свежих событий.
action - фильтр по типу события. Может принимать одно из указанных значений:
message - входящее сообщение.
ack - просмотр сообщения.
media - входящий медиа-файл.
sent - сообщение отправлено (событие происходит только при асинхронной отправке сообщения)
error - ошибка
disconnect - отсоединение Whatsapp и удаление сессии
page_cnt - максимальное количество событий, возвращаемых на одной странице запроса. По умолчанию - 10, максимальное значение - 100.
page - номер страницы запроса. По умолчанию - 1
Объект успешного ответа на запрос
{
"result": "OK",
"pages" : 1,
"elements" : 2,
"page" : 1,
"data" : [
//
]
}
result - при успешном выполнении запроса содержит «OK»
pages - количество страниц при указанных фильтрах
elements - количество элементов в результате при указанных фильтрах (количество событий)
page - номер текущей страницы
-