SendContact#
Метод предназначен для отправки сообщения с контактом.
Сообщение добавляется в очередь на отправку.
Скорость отправки сообщений из очереди устанавливает интервал отправки сообщений.
Для метода используются ограничения на частоту запросов в секунду.
Запрос#
Для отправки сообщения с контактом требуется выполнить запрос по адресу:
POST
{{apiUrl}}/waInstance{{idInstance}}/sendContact/{{apiTokenInstance}}
Для получения параметров запроса apiUrl, idInstance и apiTokenInstance обратитесь к разделу Перед началом работы.
Параметры запроса#
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
chatId | string | Да | Идентификатор чата |
contact | object | Да | Объект контакта |
quotedMessageId | string | Нет | Идентификатор цитируемого сообщения |
typingTime | integer | Нет | Время показа уведомления набора сообщения в чате собеседника. Принимает значение в диапазоне от 1000 до 20000 миллисекунд (от 1 до 20 секунд) |
typingType | string | Нет | Тип набора сообщения. Возможные значения: |
text - "печатает..." (по умолчанию) | |||
record_voice_note - "записывает голосовое..." | |||
upload_voice_note - "отправляет голосовое..." | |||
record_video_note - "записывает видео-сообщение..". | |||
upload_video_note - "отправляет видео-сообщение..." | |||
record_video - "записывает видео..." | |||
upload_video - "отправляет видео..." | |||
upload_photo - "отправляет фото..." | |||
upload_document - "отправляет файл..." | |||
choose_sticker - "выбирает стикер..." | |||
choose_location - "выбирает локацию..." | |||
choose_contact - "выбирает контакт..." |
Параметры объекта contact:
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
phoneContact | integer | Да | Номер телефона контакта |
firstName | string | Да | Имя контакта |
lastName | string | Нет | Фамилия контакта |
company | string | Нет | Компания контакта |
Пример тела запроса#
Отправка сообщения в личный чат#
{
"chatId": "10000000",
"contact": {
"phoneContact": 79876543210,
"firstName": "Иван",
"lastName": "Иванов",
"company": ""
}
}
Отправка сообщения в групповой чат#
{
"chatId": "-10000000000000",
"contact": {
"phoneContact": 79876543210,
"firstName": "Иван",
"lastName": "Иванов",
"company": ""
}
}
Отправка сообщения с цитированием#
{
"chatId": "10000000",
"quotedMessageId": "1769676078000",
"contact": {
"phoneContact": 79876543210,
"firstName": "Иван",
"lastName": "Иванов",
"company": ""
}
}
Ответ#
Поля ответа#
| Поле | Тип | Описание |
|---|---|---|
idMessage | string | Идентификатор отправленного сообщения |
Пример тела ответа#
{
"idMessage": "1769676078000"
}
Ошибки#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
| Код HTTP | Идентификатор ошибки | Описание |
|---|---|---|
| 400 | Bad Request Validation failed | Ошибка валидации |
Примеры кода#
import requests
url = "{{apiUrl}}/waInstance{{idInstance}}/sendContact/{{apiTokenInstance}}"
payload = {
"chatId": "10000000",
"contact": {
"phoneContact": 79876543210,
"firstName": "Иван",
"lastName": "Иванов",
"company": ""
}
}
headers = {'Content-Type': 'application/json'}
response = requests.post(url, json=payload, headers=headers)
print(response.text.encode('utf8'))
curl --location '{{apiUrl}}/waInstance{{idInstance}}/sendContact/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data-raw '{
"chatId": "10000000",
"contact": {
"phoneContact": 79876543210,
"firstName": "Иван",
"lastName": "Иванов",
"company": ""
}
}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/sendContact/")
.append({{apiTokenInstance}});
var headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
var jsonBody = "{\r\n\t\"chatId\": \"10000000\",\r\n\t\"contact\": {\r\n\t\t\"chatId\": \"10000000\",\r\n" };
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("/sendContact/")
.append({{apiTokenInstance}});
var response = Unirest.post(requestUrl.toString())
.header("Content-Type", "application/json")
.body("{\r\n\t\"chatId\": \"10000000\",\r\n\t\"contact\": {\r\n\t\t\"chatId\": \"10000000\",\r\n")
.asString();
System.out.println(response);