LastIncomingMessages#
Метод возвращает крайние входящие сообщения инстанса. По умолчанию возвращаются последние сообщения за 24 часа.
Чтобы получить входящие сообщения, включите настройку
Получать уведомления о входящих сообщениях и файлах
методом SetSettings или через личный кабинет.Применение настроек занимает до 5 минут.
Чтобы получить сообщения, отправленные и полученные с телефона до подключения инстанса, необходимо после сохранения настроек на инстансе сделать разлогин и авторизоваться повторно.
Метод LastIncomingMessages возвращает только ту историю, которую системе отдает WhatsApp.
Появления сообщений в журнале может занимать время до 2 минут, методы журналов необходимо использовать только для получения истории переписки. Для быстрого получения сообщений необходимо использовать систему уведомлений.
Запрос#
Для получения входящих сообщений требуется выполнить запрос по адресу:
{{apiUrl}}/waInstance{{idInstance}}/lastIncomingMessages/{{apiTokenInstance}}?minutes={{minutes_count}}
Для получения параметров запроса apiUrl
, idInstance
и apiTokenInstance
обратитесь к разделу Перед началом работы.
Параметры URL запроса#
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
minutes | integer | нет | Время в минутах, за которое требуется показать сообщения (по умолчанию равно 1440 минут) |
Ответ#
Поля ответа#
Массив объектов с полями:
Поле | Тип | Описание |
---|---|---|
type | string | Вид сообщения, incoming - входящее сообщение |
idMessage | string | Идентификатор входящего сообщения |
timestamp | integer | Время принятия сообщения в UNIX-формате |
typeMessage | string | Тип сообщения, возможные значения: |
textMessage - текстовое сообщение | ||
imageMessage - сообщение с изображением | ||
videoMessage - видео сообщение | ||
documentMessage - сообщение с файлом документа | ||
audioMessage - аудио сообщение | ||
stickerMessage - сообщение со стикером | ||
reactionMessage - сообщение с реакцией | ||
locationMessage - сообщение геолокации | ||
contactMessage - сообщение с контактом | ||
extendedTextMessage - сообщение со ссылкой и превью | ||
pollMessage - сообщение с опросом | ||
pollUpdateMessage - сообщение с обновлением опросом | ||
incomingBlock - уведомление о добавлении чата в список заблокированных контактов. (Уведомление временно не работает) | ||
quotedMessage - сообщение с цитированием | ||
buttonsMessage - сообщение с кнопками (Метод временно не работает) | ||
templateMessage - сообщение с шаблонными кнопками (Метод временно не работает) | ||
listMessage - сообщение с кнопкой со списком (Метод временно не работает) | ||
buttonsResponseMessage - ответ с кнопками (Метод временно не работает) | ||
templateButtonsReplyMessage - ответ с фигурными кнопками (Метод временно не работает) | ||
listResponseMessage - ответ со списком (Метод временно не работает) | ||
chatId | string | Идентификатор чата, в котором получено сообщение. По умолчанию принимает значение 10000000000@c.us , если typeMessage = incomingBlock |
senderId | string | Идентификатор отправителя сообщения. По умолчанию принимает значение 10000000000@c.us , если typeMessage = incomingBlock |
senderName | string | Имя отправителя сообщения |
senderContactName | string | Имя отправителя из списка контактов текущего аккаунта |
isForwarded | boolean | Флаг указывает является ли сообщение пересланным |
forwardingScore | integer | Количество пересылок сообщения |
textMessage | string | Текст сообщения, если typeMessage =textMessage /extendedTextMessage |
downloadUrl | string | Ссылка на скачивание файла, если typeMessage = imageMessage /videoMessage /documentMessage /audioMessage /stickerMessage |
caption | string | Описание файла, если typeMessage = imageMessage /videoMessage /documentMessage /audioMessage /stickerMessage |
fileName | string | Название файла, если typeMessage = imageMessage /videoMessage /documentMessage /audioMessage /stickerMessage . Поле заполняется корректно только для typeMessage = documentMessage , в остальных случаях название файла генерируется автоматически |
jpegThumbnail | string | Превью изображения в base64 кодировке, если typeMessage = imageMessage /videoMessage /documentMessage /audioMessage /stickerMessage |
mimeType | string | Тип файла, согласно класификации Media Types, если typeMessage = imageMessage /videoMessage /documentMessage /audioMessage /stickerMessage |
isAnimated | boolean | Флаг указывает анимирован ли файл, если typeMessage = imageMessage /videoMessage /documentMessage /audioMessage /stickerMessage |
chatState | string | Состояние чата, если typeMessage = incomingBlock |
location | object | Объект о структуре локации, если typeMessage = locationMessage |
contact | object | Объект о структуре контакта, если typeMessage = contactMessage |
extendedTextMessage | object | Объект с текстовым сообщением (расширенный), если typeMessage = extendedTextMessage /quotedMessage |
extendedTextMessageData | object | Объект с реакцией, если typeMessage = reactionMessage |
pollMessageData | object | Объект о структуре данных опроса, если typeMessage = pollMessage /pollUpdateMessage |
quotedMessage | object | Объект данных о цитируемом сообщении, если typeMessage = quotedMessage /reactionMessage |
Поля объекта location
:
Поле | Тип | Описание |
---|---|---|
nameLocation | string | Название локации |
address | string | Адрес локации |
latitude | double | Широта локации |
longitude | double | Долгота локации |
jpegThumbnail | string | Превью изображения в base64 кодировке |
isForwarded | boolean | Флаг указывает является ли сообщение пересланным |
forwardingScore | integer | Количество пересылок сообщения |
Поля объекта contact
:
Поле | Тип | Описание |
---|---|---|
displayName | string | Отображаемое имя контакта |
vcard | string | Структура VCard (визитной карточки контакта) |
isForwarded | boolean | Флаг указывает является ли сообщение пересланным |
forwardingScore | integer | Количество пересылок сообщения |
Поля объекта extendedTextMessage
:
Поле | Тип | Описание |
---|---|---|
text | string | Текст ссылки |
description | string | Описание ссылки |
title | string | Заголовок ссылки |
previewType | string | Тип превью ссылки. Значение previewType :None устарело |
jpegThumbnail | string | Превью изображения в base64 кодировке |
forwardingScore | integer | Количество пересылок сообщения |
isForwarded | boolean | Флаг указывает является ли сообщение пересланным |
mediaType | string | Тип медиа сообщения, например "IMAGE" (только для рекламных сообщений) |
sourceId | string | Id рекламы (только для рекламных сообщений) |
sourceType | string | Тип источника, например "ad" (только для рекламных сообщений) |
sourceUrl | string | Ссылка на рекламу (только для рекламных сообщений) |
thumbnailUrl | string | Ссылка на превью изображения (только для рекламных сообщений) |
stanzaId | string | ID цитируемого сообщения. Присутствует только для typeMessage = quotedMessage |
participant | string | ID чата получателя/отправителя. Присутствует только для typeMessage = quotedMessage |
Поля объекта extendedTextMessageData
:
Поле | Тип | Описание |
---|---|---|
text | string | Реакция (эмоджи) на сообщение |
Поля объекта pollMessageData
:
Поле | Тип | Описание |
---|---|---|
stanzaId | string | id сообщения с исходящим опросом. Присутствует только для typeMessage =pollUpdateMessage |
name | string | Текст опроса |
options | array | Массив данных о вариантах выбора. Присутствует только для typeMessage =pollMessage |
votes | array | Массив данных ответов. Присутствует только для typeMessage =pollUpdateMessage |
multipleAnswers | boolean | Флаг о разрешении нескольких ответов |
Поля массива options
Параметр | Тип | Описание |
---|---|---|
optionName | string | Текст варианта выбора |
Поля массива votes
:
Параметр | Тип | Описание |
---|---|---|
optionName | string | Текст варианта выбора |
optionVoters | array | Массив идентификаторов проголосовавших аккаунтов |
Поля объекта quotedMessage
:
Поле | Тип | Описание |
---|---|---|
stanzaId | string | ID цитируемого сообщения |
participant | string | ID чата получателя |
typeMessage | string | Тип цитириуемого сообщения |
Остальные поля объекта
quotedMessage
заполняются в зависимости от типа цитируемого сообщения и идентичны полям описанных выше
Пример тела ответа#
[
{
"type": "incoming",
"idMessage": "9DB14F14A253D33F4A9CD84123456789",
"timestamp": 1706522263,
"typeMessage": "textMessage",
"chatId": "120363153000000000@g.us",
"textMessage": "Привет",
"senderId": "70000000012@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
},
{
"type": "incoming",
"idMessage": "EAAE5A5CD000000000",
"timestamp": 1706601620,
"typeMessage": "imageMessage", //"videoMessage"/`documentMessage`/`audioMessage`/`stickerMessage`
"chatId": "120363153000000000@g.us",
"downloadUrl": "{{APIUrl}}/waInstance1234/downloadFile/EA1BD1AE042DC4F3609867126309D67C.jpg",
"caption": "Как тебе?",
"fileName": "03963bac-6020-423c-80df-1aa123456789.jpg",
"jpegThumbnail": "/9j/4AAQSkZJ/aAAgBAwEBPwCVYw//xAApEAACAx/2kOVh/VKAoAH/leFhX//+AAMA/9k=",
"mimeType": "image/jpeg",
"isAnimated": false,
"isForwarded": true,
"forwardingScore": 1,
"senderId": "70000000012@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
},
{
"type": "incoming",
"idMessage": "3A1EBA0F23004BD415BB",
"timestamp": 1706601621,
"typeMessage": "reactionMessage",
"chatId": "70000000012@c.us",
"extendedTextMessageData": {
"text": "😄"
},
"quotedMessage": {
"stanzaId": "46618B98B3B9DF50F123456789123456",
"participant": "70000000012@c.us",
},
"senderId": "70000000013@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
},
{
"type": "incoming",
"idMessage": "3A8427EF85F000000000",
"timestamp": 1706674611,
"typeMessage": "locationMessage",
"chatId": "70000000012@c.us",
"location": {
"nameLocation": "Cafe",
"address": "Астана",
"jpegThumbnail": "/9j/4AAQSkZJRgABAQAASABIAAD/4QBYRX",
"latitude": 51.1280000000000,
"longitude": 71.4307620000000,
"forwardingScore": 0,
"isForwarded": false
},
"senderId": "70000000012@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
},
{
"type": "incoming",
"idMessage": "3AA2C1D83560000000000",
"timestamp": 1706675513,
"typeMessage": "contactMessage",
"chatId": "70000000012@c.us",
"contact": {
"displayName": "Виктор Петров",
"vcard": "BEGIN:VCARD\nVERSION:3.0\nN:;Виктор Петров;;;\nFN:Виктор Петров\nTEL;type=CELL;type=VOICE;waid=70000000013:+7 000 000-00-13\nEND:VCARD",
"forwardingScore": 0,
"isForwarded": false
},
"senderId": "70000000012@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
},
{
"type": "incoming",
"idMessage": "3A66D7F0B50000000000",
"timestamp": 1706675928,
"typeMessage": "extendedTextMessage",
"chatId": "70000000012@c.us",
"textMessage": "Hqhqhhqh\nhttps://green-api.com/",
"extendedTextMessage": {
"text": "Hqhqhhqh\nhttps://green-api.com/",
"description": "GREEN API - интеграция с WhatsApp на любом языке программирования PHP, JavaScript, 1С, Python, Java, C#, VBA",
"title": "Green API для отправки и получения сообщений Whatsapp",
"previewType": "None",
"jpegThumbnail": "/9j/4AAQSkZJRgABAQAASAB9k=",
"forwardingScore": 0,
"isForwarded": false
},
"senderId": "70000000012@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
},
{
"type": "incoming",
"idMessage": "3A71511C3A0000000000",
"timestamp": 1706676278,
"typeMessage": "pollMessage",
"chatId": "70000000012@c.us",
"pollMessageData": {
"name": "Выберите любимый цвет",
"options": [
{
"optionName": "Красный"
},
{
"optionName": "Зеленый"
}
],
"multipleAnswers": true
},
"senderId": "70000000012@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
},
{
"type": "incoming",
"idMessage": "3A0493ED90000000000000",
"timestamp": 1706676447,
"typeMessage": "pollUpdateMessage",
"chatId": "70000000012@c.us",
"pollMessageData": {
"name": "Куда пойдем?",
"stanzaId": "46618B98B3B9DF50F123456789123456",
"votes": [
{
"optionName": "Пляж",
"optionVoters": [
"70000000012@c.us"
]
},
{
"optionName": "Горы",
"optionVoters": []
}
],
"multipleAnswers": true
},
"senderId": "70000000012@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
},
{
"type": "incoming",
"typeMessage": "incomingBlock", //Уведомление временно не работает
"timestamp": 1706676650,
"chatId": "10000000000@c.us",
"senderId": "10000000000@c.us",
"chatState": "blocked"
},
{
"type": "incoming",
"idMessage": "3AB0EB938BA0000000000",
"timestamp": 1706677013,
"typeMessage": "quotedMessage",
"chatId": "70000000012@c.us",
"extendedTextMessage": {
"text": "За пляж",
"stanzaId": "46618B98B3B9DF50F123456789123456",
"participant": "70000000012@c.us"
},
"quotedMessage": {
"stanzaId": "46618B98B3B9DF50F123456789123456",
"participant": "70000000012@c.us",
"typeMessage": "pollMessage",
"pollMessageData": {
"name": "Куда пойдем?",
"options": [],
"multipleAnswers": true
}
},
"senderId": "70000000012@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
},
{
"type": "incoming",
"idMessage": "3A70B27A6020000000000",
"timestamp": 1706677254,
"typeMessage": "quotedMessage",
"chatId": "70000000012@c.us",
"extendedTextMessage": {
"text": "Круто!",
"stanzaId": "EAAE5A5CD000000000",
"participant": "70000000012@c.us"
},
"quotedMessage": {
"stanzaId": "EAAE5A5CD000000000",
"participant": "70000000012@c.us",
"typeMessage": "imageMessage", //"videoMessage"/`documentMessage`/`audioMessage`/`stickerMessage`
"downloadUrl": "",
"caption": "",
"fileName": "",
"jpegThumbnail": "/9j/4AAQSkZJRgABAQAAA=",
"mimeType": "image/jpeg",
"isAnimated": false,
"isForwarded": false,
"forwardingScore": 0
},
"senderId": "70000000012@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
}
{
"type": "incoming",
"idMessage": "F7AEC1B7086ECDC7E6E45923F5EDB825",
"timestamp": 1728018697,
"typeMessage": "extendedTextMessage",
"chatId": "79001234568@c.us",
"textMessage": "https://fb.me/gUdvBWgIH",
"extendedTextMessage": {
"text": "Новый инстанс для вашего бизнеса!",
"description": "",
"title": "Green API",
"jpegThumbnail": "/9j/4AAQSkZJRgABAQAAAQABAAD/7QCEUGhvdG9zaG9wIDMuMAA4qIJUeuMEjYwGc9BtFMXTYvgsnm4ADy6HLLZDqn1Ye5RMev+ae1hED2B9dQIARwjvDIwYCg4/r/9k=",
"forwardingScore": 0,
"isForwarded": false,
"mediaType": "IMAGE",
"sourceUrl": "https://fb.me/gUdvBWgIH",
"thumbnailUrl": "https://scontent.xx.fbcdn.net/v/t39.30808-6/436945887_122115998378256688_307643393252141869_n.jpg?stp=dst-jpg_s851x315&_nc_cat=111&ccb=1-7&_nc_sid=5f2048&_nc_ohc=x61r6W-VrJIAb69T4Dl&_nc_ad=z-m&_nc_cid=0&_nc_ht=scontent.xx&oh=00_AfDLFkjNOBYEntBu6SYaUOxDuxbvarjKha9Ez5RQUXjsfg&oe=662D7680"
},
"senderId": "79001234568@c.us",
"senderName": "Николай",
"senderContactName": "Коля"
}
]
Ошибки LastIncomingMessages#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
Примеры кода#
import requests
url = "{{apiUrl}}/waInstance{{idInstance}}/lastIncomingMessages/{{apiTokenInstance}}?minutes=3240"
payload = {}
headers= {}
response = requests.request("GET", url, headers=headers, data = payload)
print(response.text.encode('utf8'))
curl --location '{{apiUrl}}/waInstance{{idInstance}}/lastIncomingMessages/{{apiTokenInstance}}?minutes=3240'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/lastIncomingMessages/")
.append({{apiTokenInstance}});
var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.GET, null, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/lastIncomingMessages/")
.append({{apiTokenInstance}});
var response = Unirest.get(requestUrl.toString())
.header("Content-Type", "application/json")
.asString();
System.out.println(response);
Sub LastIncomingMessages()
Dim url As String
Dim http As Object
Dim response As String
' The apiUrl, idInstance and apiTokenInstance values are available in console, double brackets must be removed
url = "{{apiUrl}}/waInstance{{idInstance}}/lastIncomingMessages/{{apiTokenInstance}}"
Set http = CreateObject("MSXML2.XMLHTTP")
http.Open "GET", url, False
http.send
response = http.responseText
Debug.Print response
' Outputting the answer to the desired cell
Range("A1").Value = response
Set http = Nothing
End Sub