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

GetContacts#

Test Postman

Метод предназначен для получения списка контактов текущего аккаунта.

Обновление информации о контактах может занимать до 5 минут.

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

Запрос#

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

GET
{{apiUrl}}/waInstance{{idInstance}}/getContacts/{{apiTokenInstance}}

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

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

Параметр Тип Обязательный Описание
count integer Нет При указании числа count={{number}}, отображается указанное количество контактов
Если контактов меньше, чем указанное число, то отображаются все контакты
По умолчанию показываются все контакты

Пример запроса с указанным количеством контактов#

GET
{{apiUrl}}/waInstance{{idInstance}}/getContacts/{{apiTokenInstance}}?count=50

Ответ#

Поля ответа#

Поле Тип Описание
chatId string Идентификатор корреспондента или группового чата
name string Имя пользователя или группы в Telegram
contactName string Имя контакта из контактной книги
type string Тип контакта. По умолчанию user
phoneNumber integer Номер телефона (если скрыт настройками приватности или контакт является группой, принимает значение 0)

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

[
    {
        "chatId": "10000000",
        "name": "Василиса",
        "contactName": "Василиса Премудрая", 
        "type": "user",
        "phoneNumber": 79876543210
    },
    {
        "chatId": "10000001",
        "name": "Иван",
        "contactName": "Иван Царевич",
        "type": "user",
        "phoneNumber": 79998887766
    },
    {
        "chatId": "10000002",
        "name": "Лягушка",
        "contactName": "Царевна Лягушка",
        "type": "user",
        "phoneNumber": 0
    }
]

Ошибки#

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

Код HTTP Описание ошибки Возможные решения
200 Метод возвращает пустой массив [] Обратиться в службу техподдержки.

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

import requests

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

payload = {}
headers= {}

response = requests.request("GET", url, headers=headers, data = payload)

print(response.text.encode('utf8'))
curl --location '{{apiUrl}}/waInstance{{idInstance}}/getContacts/{{apiTokenInstance}}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
    .append({{apiUrl}})
    .append("/waInstance").append({{idInstance}})
    .append("/getContacts/")
    .append({{apiTokenInstance}});

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

var response = Unirest.get(requestUrl.toString())
    .header("Content-Type", "application/json")
    .asString();

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

    Set http = CreateObject("MSXML2.XMLHTTP")

    http.Open "GET", url, False
    http.Send

    response = http.responseText

    Debug.Print response

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

    Set http = Nothing
End Sub