SendTyping#
Метод предназначен для отправки уведомления о наборе текста в чат.
Для метода используются ограничения на частоту запросов в секунду.
Запрос#
Для отправки уведомления требуется выполнить запрос по адресу:
{{apiUrl}}/v3/waInstance{{idInstance}}/sendTyping/{{apiTokenInstance}}
Для получения параметров запроса apiUrl
, idInstance
и apiTokenInstance
обратитесь к разделу Перед началом работы.
Параметры запроса#
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
chatId | string | Да | Идентификатор чата |
typingTime | integer | Да | Время показа уведомления набора сообщения в чате собеседника. Время ограничено значениями от 1000 до 20000 миллисекунд (от 1 до 20 секунд). |
typingType | string | Нет | Тип набора сообщения. Для набора текста поле указывать не надо. Для отправки остальных уведомлений нужно передать следующие значения: recording для аудио, video для видеофайлов, image для картинки, file для файлов. |
Примечание
Время доставки уведомления будет складываться из интервала отправки сообщений из очереди (delaySendMessagesMilliseconds
) и заданного времени набора текста (typingTime
).
Пример тела запроса#
Отправка уведомления набора текста:
{
"chatId": "10000000",
"typingTime": 10000
}
Отправка уведомления записи аудиосообщения:
{
"chatId": "10000000",
"typingTime": 10000,
"typingType": "recording"
}
Отправка уведомления отправки видео:
{
"chatId": "10000000",
"typingTime": 10000,
"typingType": "video"
}
Отправка уведомления отправки файла:
{
"chatId": "10000000",
"typingTime": 10000,
"typingType": "file"
}
Отправка уведомления отправки изображения:
{
"chatId": "10000000",
"typingTime": 10000,
"typingType": "image"
}
Ответ#
Пример тела ответа#
Успешное выполнение метода#
Тело ответа пустое. При успехе ответ сервера 200.
Выполнение метода с ошибкой#
{
"statusCode": 400,
"timestamp": "2025-09-04T04:37:29.118Z",
"path": "/waInstance310000001/sendTyping/9ece01c05bbe44768fb674840138bbe6af876fe49b69418fbf",
"message": "Validation failed. Details: 'chatId' must be one of [string]"
}
Ошибки SendTyping#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
Код HTTP | Идентификатор ошибки | Описание |
---|---|---|
400 | Validation failed | 'typingTime' должно быть числом |
400 | Validation failed | typingTime' должно быть больше или равно 1000 |
400 | Validation failed | 'typingTime' должно быть меньше или равно 20000 |
Примеры кода#
import requests
url = "{{apiUrl}}/v3/waInstance{{idInstance}}/sendTyping/{{apiTokenInstance}}"
payload = {
"chatId": "10000000",
"typingTime": 10000
}
headers = {
'Content-Type': 'application/json'
}
response = requests.post(url, json=payload, headers=headers)
print(response.text.encode('utf8'))
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => '/v3/waInstance/waInstance%7B%7BidInstance%7D%7D/sendTyping/%7B%7BapiTokenInstance%7D%7D',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"chatId": "10000000",
"typingTime": 10000
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
curl --location -g --request POST '/v3/waInstance{{idInstance}}/sendTyping/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data-raw '{
"chatId": "10000000",
"typingTime": 10000
}'
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("/v3/waInstance{{idInstance}}/sendTyping/{{apiTokenInstance}}")
.header("Content-Type", "application/json")
.body("{\r\n \"chatId\": \"10000000\",\r\n \"typingTime\": 10000,\r\n}")
.asString();