ReadChat#
Метод предназначен для отметки сообщений в выбранном чате прочитанными. Могут быть отмечены прочитанными все сообщения в чате или только одно выбранное сообщение.
Для корректной работы метода, требуется включить настройку инстанса
Получать уведомления о входящих сообщениях и файлах
через личный кабинет или методом SetSettingsСообщения, полученные после применения настроек, получат статус read.
Сообщения, полученные до применения настроек, останутся в статусе delivered.
Запрос#
Для отметки сообщений в чате прочитанными требуется выполнить запрос по адресу:
{{apiUrl}}/waInstance{{idInstance}}/readChat/{{apiTokenInstance}}
Для получения параметров запроса apiUrl
, idInstance
и apiTokenInstance
обратитесь к разделу Перед началом работы.
Параметры запроса#
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
chatId | string | Да | Идентификатор чата |
idMessage | string | Нет | Идентификатор входящего сообщения, которое необходимо отметить прочитанным. Если не указан, то все непрочитанные сообщения в чате будут отмечены прочитанными. |
Пример тела запроса#
Отметка прочтения одного сообщения в чате:
{
"chatId": "11001234567@c.us",
"idMessage": "B275A7AA0D6EF89BB9245169BDF174E6"
}
Отметка прочтения всех сообщений в чате:
{
"chatId": "11001234567@c.us"
}
Ответ#
Поля ответа#
Поле | Тип | Описание |
---|---|---|
setRead | boolean | Флаг отметки сообщений прочитанными |
Пример тела ответа#
{
"setRead": true
}
Ошибки ReadChatMessage#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
Код HTTP | Идентификатор ошибки | Описание |
---|---|---|
400 | Bad Request Validation failed | Ошибка Валидации |
Примеры кода#
import requests
url = "{{apiUrl}}/waInstance{{idInstance}}/readChat/{{apiTokenInstance}}"
payload = "{\r\n\t\"chatId\": \"11001234567@c.us\",\r\n\t\"idMessage\": \"B275A7AA0D6EF89BB9245169BDF174E6\"\r\n}\r\n"
headers = {
'Content-Type': 'application/json'
}
response = requests.post(url, json=payload)
print(response.text.encode('utf8'))
curl --location '{{apiUrl}}/waInstance{{idInstance}}/readChat/{{apiTokenInstance}}
--header 'Content-Type: application/json' \
--data-raw '{
"chatId": "79001234567@c.us",
"idMessage": "B275A7AA0D6EF89BB9245169BDF174E6"
}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/readChat/")
.append({{apiTokenInstance}});
var headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
var jsonBody = "{\"chatId\": \"11001234567@c.us\",\"idMessage\": \"BAE5F4886F6F2D05\"}";
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("/readChat/")
.append({{apiTokenInstance}});
var response = Unirest.post(requestUrl.toString())
.header("Content-Type", "application/json")
.body("{\"chatId\": \"11001234567@c.us\",\"idMessage\": \"BAE5F4886F6F2D05\"}")
.asString();
System.out.println(response);
Sub ReadChat()
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}}/readChat/{{apiTokenInstance}}"
' chatId - chat in which messages will be read (@c.us for private chats, @g.us for group chats)
RequestBody = "{""chatId"":""71234567890@c.us""}"
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