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

GetMessage#

Test Postman Apidog

Метод возвращает сообщение чата.

Для метода используются ограничения на частоту запросов в секунду.

Запрос#

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

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

Префикс v3 стал необязательным параметром запроса

Для вашего удобства унифицировали формат запросов методов API для всех мессенджеров.
Подробнее о правилах вызова методов читайте в статье Выполнение запросов.

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

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

Параметр Тип Обязательный Описание
chatId string Да Идентификатор личного или группового чата, сообщение которого требуется получить
idMessage string Да ID сообщения

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

Запрос сообщения:

{
  "chatId": "10000000",
  "idMessage": "1763115112345"
}

Ответ#

Ответ содержит полученное или отправленное сообщение из чата.

Поля ответа#

Объект с полями:

Поле Тип Описание
type string Вид сообщения: outgoing - исходящее сообщение; incoming - входящее сообщение
idMessage string Идентификатор входящего сообщения
timestamp integer Время принятия сообщения в UNIX-формате
statusMessage string Статус исходящего сообщения. Присутствует только для type = outgoing. Возможные значения:
sent - отправлено
delivered - доставлено
read - прочитано/просмотрено/прослушано
sendByApi boolean Флаг указывает отправлено сообщение из API или нет. Присутствует только для type = outgoing
typeMessage string Тип сообщения, возможные значения:
textMessage - текстовое сообщение
imageMessage - сообщение с изображением
videoMessage - видео сообщение
documentMessage - сообщение с файлом документа
audioMessage - аудио сообщение
stickerMessage - сообщение со стикером
reactionMessage - сообщение с реакцией
chatId string Идентификатор чата, в котором получено сообщение.
senderId string Идентификатор отправителя сообщения. Присутствует только для type = incoming
senderName string Имя отправителя сообщения. Присутствует только для type = incoming
senderContactName string Имя отправителя из списка контактов телефонной книги. Присутствует только для type = incoming
isForwarded boolean Флаг указывает является ли сообщение пересланным
forwardingScore integer Количество пересылок сообщения
textMessage string Текст сообщения, если typeMessage=textMessage/extendedTextMessage
downloadUrl string Ссылка на скачивание файла, если typeMessage = imageMessage /videoMessage/documentMessage/audioMessage / stickerMessage
caption string Описание файла, если typeMessage = imageMessage/videoMessage /documentMessage / stickerMessage
fileName string Название файла, если typeMessage = imageMessage/videoMessage /documentMessage. Поле заполняется корректно только для typeMessage = documentMessage, в остальных случаях название файла генерируется автоматически
jpegThumbnail string Превью изображения в base64 кодировке, если typeMessage = imageMessage/videoMessage/documentMessage
mimeType string Тип файла, согласно класификации Media Types, если typeMessage = imageMessage/videoMessage/documentMessage / stickerMessage
isAnimated boolean Флаг указывает анимирован ли файл, если typeMessage = imageMessage/videoMessage/documentMessage/audioMessage / stickerMessage
quotedMessage object Объект данных о цитируемом сообщении, если typeMessage = quotedMessage/reactionMessage
deletedMessageId string Идентификатор сообщения которое удалили. Присутствует если сообщение было удалено
editedMessageId string Идентификатор сообщения которое отредактировали. Присутствует если сообщение было отредактировано
isEdited boolean Флаг указывает редактировали ли сообщение
isDeleted boolean Флаг указывает удалили ли сообщение

Поля объекта extendedTextMessage:

Поле Тип Описание
text string Текст ссылки
description string Описание ссылки
title string Заголовок ссылки
jpegThumbnail string Превью изображения в base64 кодировке
isForwarded boolean Флаг указывает является ли сообщение пересланным
forwardingScore integer Количество пересылок сообщения

Поля объекта extendedTextMessageData:

Поле Тип Описание
text string Реакция (эмоджи) на сообщение

Поля объекта quotedMessage:

Поле Тип Описание
stanzaId string ID цитируемого сообщения
participant string ID чата получателя
typeMessage string Тип цитириуемого сообщения

Остальные поля объекта quotedMessage заполняются в зависимости от типа цитируемого сообщения и идентичны полям описанных выше

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

Примеры тел ответа входящего сообщения#

Текстовое сообщение#
    {
        "type": "incoming",
        "idMessage": "1763115112345",
        "timestamp": 1706522263,
        "typeMessage": "textMessage",
        "chatId": "10000000",
        "textMessage": "Я использую GREEN-API для отправки этого сообщения!",
        "senderId": "10000000",
        "senderName": "Ходабрыш Пробешёлов",
        "senderContactName": "Ходабрыш Пробешёлов"
    }
Текстовое сообщение из группы#
    {
        "type": "incoming",
        "idMessage": "1763115112345",
        "timestamp": 1706522263,
        "typeMessage": "textMessage",
        "chatId": "-69876543210123",
        "textMessage": "Я использую GREEN-API для отправки этого сообщения!",
        "senderId": "10000000",
        "senderName": "Ходабрыш Пробешёлов",
        "senderContactName": "Ходабрыш Пробешёлов"
    }
Сообщение с документом или медиа#
    {
        "type": "incoming",
        "idMessage": "1763115112345",
        "timestamp": 1754986980,
        "typeMessage": "stickerMessage", // "imageMessage"/"videoMessage"/`documentMessage`/`audioMessage`
        "chatId": "-69876543210123",
        "downloadUrl": "https://media-3100.storage.yandexcloud.net/3100000000/07dde0a-01dc-4dd9-8afb-707cbf610943.png",
        "caption": "",
        "fileName": "07dde0a-01dc-4dd9-8afb-707cbf610943.png",
        "jpegThumbnail": "",
        "isAnimated": true,
        "mimeType": "image/png",
        "forwardingScore": 0,
        "isForwarded": false,
        "senderId": "10000000",
        "senderName": "Ходабрыш Пробешёлов",
        "senderContactName": "Ходабрыш Пробешёлов"
    }

Примеры тел ответа исходящего сообщения#

Текстовое сообщение#
{
    "type": "outgoing",
    "idMessage": "1763115112345",
    "timestamp": 1755178760,
    "typeMessage": "extendedTextMessage",
    "chatId": "10000000",
    "textMessage": "Я использую GREEN-API для отправки этого сообщения!",
    "extendedTextMessage": {
        "text": "Я использую GREEN-API для отправки этого сообщения!",
        "description": "",
        "title": "",
        "forwardingScore": 0,
        "isForwarded": false
    },
    "statusMessage": "delivered",
    "sendByApi": true,
}
Текстовое сообщение из группы#
{
    "type": "outgoing",
    "idMessage": "1763115112345",
    "timestamp": 1706522263,
    "typeMessage": "extendedTextMessage",
    "chatId": "-69876543210123",
    "textMessage": "Я использую GREEN-API для отправки этого сообщения!",
    "extendedTextMessage": {
        "text": "Я использую GREEN-API для отправки этого сообщения!",
        "description": "",
        "title": "",
        "forwardingScore": 0,
        "isForwarded": false
    },
    "statusMessage": "delivered",
    "sendByApi": true,
}

Ошибки GetMessage#

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

Код HTTP Идентификатор ошибки Описание
400 Bad Request
Validation failed
Ошибка валидации
400 Validation failed.
Details: 'idMessage' is not allowed to be empty
Ошибка валидации. Поле idMessage не должно быть пустым
400 Validation failed.
Details: 'message id' must be at least 16 symbols
Ошибка валидации. Поле idMessage должно содержать минимум 16 символов
400 chatId not found `` не найдено.
Какие могут быть причины:
1. Сообщение все еще находится в очереди сообщений, и система не успела его обработать. Вы можете запросить метод ShowMessagesQueue для проверки сообщений.
400 Message not found by id '{{idMessage}}' IDMessage не найдено.
Какие могут быть причины:
1. Сообщение все еще находится в очереди сообщений, и система не успела его обработать. Вы можете запросить метод ShowMessagesQueue для проверки сообщений.
2. Неверно указан чат, номер сообщения или инстанс на котором происходит запрос сообщения.

Примеры кода#

import requests

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

payload = "{\r\n\"chatId\": \"10000000\, \"idMessage\": \"1763115112345\" \"r\n}"
headers = {
  'Content-Type': 'application/json'
}

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

print(response.text.encode('utf8'))
curl --location '{{apiUrl}}/waInstance{{idInstance}}/getMessage/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "chatId": "10000000",
    "idMessage": "1763115112345"
}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/getMessage/")
    .append({{apiTokenInstance}});

var headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);

var jsonBody = "{\"chatId\": \"10000000\",\"idMessage\": \"1763115112345\"}";

var requestEntity = new HttpEntity<>(jsonBody, headers);

var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.POST, requestEntity, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/getMessage/")
    .append({{apiTokenInstance}});

var response = Unirest.post(requestUrl.toString())
    .header("Content-Type", "application/json")
    .body("{\"chatId\": \"10000000\",\"idMessage\": \"1763115112345\"}")
    .asString();

System.out.println(response);
Sub GetMessage()
    Dim url As String
    Dim RequestBody 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}}/getMessage/{{apiTokenInstance}}"

    ' chatId - identifier of the personal or group chat whose message you want to receive, idMessage - message ID
    RequestBody = "{""chatId"":""10000000"",""idMessage"":""1763115112345""}"

    Set http = CreateObject("MSXML2.XMLHTTP")

    With http
        .Open "POST", url, False
        .setRequestHeader "Content-Type", "application/json"
        .send RequestBody
    End With

    response = http.responseText

    Debug.Print response

    ' Outputting the answer to the desired cell
    Range("A1").Value = response

    Set http = Nothing
End Sub