GetContactInfo#
Метод предназначен для получения информации о контакте.
Запрос#
Для получения информации о контакте требуется выполнить запрос по адресу:
POST
{{apiUrl}}/waInstance{{idInstance}}/getContactInfo/{{apiTokenInstance}}
Для получения параметров запроса apiUrl
, idInstance
и apiTokenInstance
обратитесь к разделу Перед началом работы.
Параметры запроса#
Параметр | Тип | Обязательный | Описание |
---|---|---|---|
chatId | string | Да | Идентификатор корреспондента |
Пример тела запроса#
{
"chatId": "71234567890@c.us"
}
Ответ#
Поля ответа#
Поле | Тип | Описание |
---|---|---|
avatar | string | ссылка на аватар |
name | string | Имя контакта. Возможные значения: |
1) Если есть входящая переписка/реакции от аккаунта, то получаем имя из профиля WhatsApp; | ||
2) Если нет входящей переписки/реакций от аккаунта, то получаем пустую строку. | ||
contactName | string | Имя контакта из телефонной книги. Возможные значения: |
1) Если номер сохранён в контактах, то получаем имя из контактной книги; | ||
2) Если номер не добавлен или удалён из контактной книги, то получаем пустую строку. | ||
email | string | Электронная почта контакта |
category | string | Категория бизнес контакта |
description | string | Описание бизнес контакта |
products | object | Карточки товаров контакта |
chatId | string | Идентификатор корреспондента |
lastSeen | string | Время последнего статуса онлайн |
isArchive | boolean | Статус архивации чата, принимает значения true/false |
isDisappearing | boolean | Статус исчезающих сообщений чата, принимает значения true/false |
isMute | boolean | Статус уведомлений чата, принимает значения true/false |
messageExpiration | integer | Время жизни сообщений в чате, в секундах |
muteExpiration | integer | Время, через сколько будут включены уведомления в чате |
isBusiness | boolean | Флаг, который указывает использует ли контакт WhatsApp Business, принимает значения true/false |
Поля объекта products
Параметр | Тип | Описание |
---|---|---|
id | string | id товара |
imageUrls | object | Ссылки на изображения товара |
availability | string | Доступность товара |
reviewStatus | object | Статус валидации товара |
name | string | Название товара |
description | string | Описание товара |
price | string | Цена товара |
isHidden | boolean | Состояние товара |
Поля объекта imageUrls
Параметр | Тип | Описание |
---|---|---|
requested | string | Ссылка на изображение товара с маленьким разрешением (превью) |
original | string | Ссылка на изображение товара с большим разрешением (оригинал) |
Поля объекта reviewStatus
Параметр | Тип | Описание |
---|---|---|
whatsapp | string | Товар одобрен WhatsApp-ом |
Пример тела ответа#
{
"avatar": "https://pps.whatsapp.net/v/t61.24694-24/24_1349471992200940_2091838963901201896_n.jpg?ccb=11-4&oh=01_AVzZilQn10nj9M9cfQV4PW5dgdXOkiOuD_jCqP2MCXIpyA",
"name": "Dealer",
"contactName": "Dealer",
"email": "24service@tt.tt",
"category": "Automotive Dealership",
"description": "Официальный сервис",
"products": [
{
"id": "42079728159",
"imageUrls": {
"requested": "https://mmg.whatsapp.net/v/t45.5328-4/263329037_6625110154227932_2879714823340281709_n.jpg?stp=dst-jpg_p100x100&ccb=1-7&_nc_sid=c48759&_nc_ohc=NKICbZlqfPMAX9077mo&_nc_ad=z-m&_nc_cid=0&_nc_ht=mmg.whatsapp.net&oh=01_AVwYzx7CckCFf8F8xIIZ5m2AGdeC8YTnLyd29",
"original": "https://mmg.whatsapp.net/v/t45.5328-4/263329037_6625110154227932_2879714823340281709_n.jpg?ccb=1-7&_nc_sid=c48759&_nc_ohc=NKICbZlqfPMAX9077mo&_nc_ad=z-m&_nc_cid=0&_nc_ht=mmg.whatsapp.net&oh=01_AVzn_O9azpKNRs1iPId0TQkGYk4D7HZFSQMeobvRiR"
},
"reviewStatus": {
"whatsapp": "APPROVED"
},
"availability": "in stock",
"name": "Замена",
"description": "От 1000 р.",
"price": null,
"isHidden": false
},
{
"id": "3545870328871389",
"imageUrls": {
"requested": "https://mmg.whatsapp.net/v/t45.5328-4/261250418_4513761695371199_1710541959703469822_n.jpg?stp=dst-jpg_p100x100&ccb=1-7&_nc_sid=c48759&_nc_ohc=eps8lAw2_3MAX_mWW8K&_nc_ad=z-m&_nc_cid=0&_nc_ht=mmg.whatsapp.net&oh=01_AVxT3HnbR04qKZJSOeK4d8p-noZokqly9QbpYFK-c_8kSA&oe",
"original": "https://mmg.whatsapp.net/v/t45.5328-4/261250418_4513761695371199_1710541959703469822_n.jpg?ccb=1-7&_nc_sid=c48759&_nc_ohc=eps8lAw2_3MAX_mWW8K&_nc_ad=z-m&_nc_cid=0&_nc_ht=mmg.whatsapp.net&oh=01_AVx2wTCmzof0BoZDmIUpD328CtpJmlvEXGdVzew&o"
},
"reviewStatus": {
"whatsapp": "APPROVED"
},
"availability": "in stock",
"name": "Техническое обслуживание",
"price": null,
"isHidden": false
}
],
"chatId": "71234567890@c.us",
"lastSeen": null,
"isArchive": false,
"isDisappearing": false,
"isMute": false,
"messageExpiration": 0,
"muteExpiration": null,
"isBusiness": true
}
Ошибки GetContactInfo#
Перечень общих для всех методов ошибок смотрите в разделе Стандартные ошибки
Код HTTP | Идентификатор ошибки | Описание |
---|---|---|
400 | Bad Request Validation failed | Ошибка валидации |
400 | Bad Request1 Validation failed. Details: The method GetContactInfo does not support group chats, to work with groups, use the GetGroupData method | Пустое тело запроса либо неверное chatId либо метод был использован с groupId |
500 | Internal Server Error interface conversion: interface {} is bool, not string | Неверно указан тип данных поля chatId |
Примеры кода#
import requests
url = "{{apiUrl}}/waInstance{{idInstance}}/getContactInfo/{{apiTokenInstance}}"
payload = {"chatId": "71234567890@c.us"}
headers = {
'Content-Type': 'application/json'
}
response = requests.request("GET", url, headers=headers, data = payload)
print(response.text.encode('utf8'))
curl --location '{{apiUrl}}/waInstance{{idInstance}}/getContactInfo/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data-raw '{
"chatId": "71234567890@c.us"
}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/getContactInfo/")
.append({{apiTokenInstance}});
var headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
var jsonBody = "{\"chatId\": \"71234567890@c.us\"}";
var requestEntity = new HttpEntity<>(jsonBody, headers);
var response = restTemplate.exchange(requestUrl.toString(), HttpMethod.GET, requestEntity, String.class);
System.out.println(response);
var requestUrl = new StringBuilder();
requestUrl
.append({{apiUrl}})
.append("/waInstance").append({{idInstance}})
.append("/getContactInfo/")
.append({{apiTokenInstance}});
var response = Unirest.post(requestUrl.toString())
.header("Content-Type", "application/json")
.body("{\"chatId\": \"71234567890@c.us\"}")
.asString();
System.out.println(response);
Sub GetContactInfo()
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}}/GetContactInfo/{{apiTokenInstance}}"
' chatId - is the number to send the message to (@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