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

SendContact#

Метод предназначен для отправки сообщения с контактом. Формируется визитная карточка контакта и отправляется в чат. Сообщение будет добавлено в очередь на отправку. Сообщение на отправку хранится 24 часа в очереди и будет отправлено сразу же после авторизации телефона. Скорость отправки сообщений из очереди регулирует параметр Интервал отправки сообщений.

Запрос#

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

POST {{APIUrl}}/waInstance{{idInstance}}/sendContact/{{apiTokenInstance}}

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

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

Параметр Тип Обязательный Описание
chatId string Да Идентификатор чата
contact object Да Объект о контакте
quotedMessageId string Нет Идентификатор цитируемого сообщения,если указан то сообщение отправится с цитированием указанного сообщения чата

Параметры объекта contact:

Параметр Тип Обязательный Описание
phoneContact integer Да номер телефона контакта в международном формате (без +) 11 или 12 цифр
firstName string Если не указаны middleName, lastName, company Имя контакта
middleName string Если не указаны firstName, lastName, company Отчество контакта
lastName string Если не указаны middleName, firstName, company Фамилия контакта
company string Если не указаны middleName, lastName, firstName Название компании контакта

Пример тела запроса#

Отправка сообщения в личный чат:

{
    "chatId": "11001234567@c.us",
    "contact": {
        "phoneContact": 79001234568,
        "firstName": "Артем",
        "middleName": "Петрович",
        "lastName": "Евпаторийский",
        "company": "Велосипед"
    }
}

Отправка сообщения в групповой чат:

{
    "chatId": "120363043968066561@g.us",
    "contact": {
        "phoneContact": 79001234568,
        "firstName": "Артем",
        "middleName": "Петрович",
        "lastName": "Евпаторийский",
        "company": "Велосипед"
    }
}

Отправка сообщения с цитированием:

{
    "chatId": "11001234567@c.us",
    "quotedMessageId": "361B0E63F2FDF95903B6A9C9A102F34B",
    "contact": {
        "phoneContact": 79001234568,
        "firstName": "Артем",
        "middleName": "Петрович",
        "lastName": "Евпаторийский",
        "company": "Велосипед"
    }
}

Ответ#

Поля ответа#

Поле Тип Описание
idMessage string Идентификатор отправленного сообщения

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

{
    "idMessage": "3EB0C767D097B7C7C030"
}

Ошибки SendContact#

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

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

import requests

url = "{{APIUrl}}/waInstance{{idInstance}}/sendContact/{{apiTokenInstance}}"

payload = "{\r\n\t\"chatId\": \"11001234567@c.us\",\r\n\t\"contact\": {\r\n\t\t\"phoneContact\": 79001234568,\r\n    \t\"firstName\": \"Артем\",\r\n\t\t\"middleName\": \"Петрович\",\r\n\t\t\"lastName\": \"Евпаторийский\",\r\n\t\t\"company\": \"Велосипед\"\r\n\t}\r\n}\r\n"
headers = {
  'Content-Type': 'application/json'
}

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

print(response.text.encode('utf8'))
curl --location '{{APIUrl}}/waInstance{{idInstance}}/sendContact/{{apiTokenInstance}}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "chatId": "123456780910@c.us",
    "contact": {
        "phoneContact": 111111111111,
        "firstName": "Артем",
        "middleName": "Петрович",
        "lastName": "Евпаторийский",
        "company": "Велосипед"
    }
}'
var restTemplate = new RestTemplate();
var requestUrl = new StringBuilder();
requestUrl
    .append("https://api.greenapi.com")
    .append("/waInstance").append({{idInstance}})
    .append("/sendContact/")
    .append({{apiTokenInstance}});

var headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);

var jsonBody = "{\r\n\t\"chatId\": \"11001234567@c.us\",\r\n\t\"contact\": {\r\n\t\t\"phoneContact\": 79001234568,\r\n    \t\"firstName\": \"Артем\",\r\n\t\t\"middleName\": \"Петрович\",\r\n\t\t\"lastName\": \"Евпаторийский\",\r\n\t\t\"company\": \"Велосипед\"\r\n\t}\r\n}\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("https://api.greenapi.com")
    .append("/waInstance").append({{idInstance}})
    .append("/sendContact/")
    .append({{apiTokenInstance}});

var response = Unirest.post(requestUrl.toString())
    .header("Content-Type", "application/json")
    .body("{\r\n\t\"chatId\": \"11001234567@c.us\",\r\n\t\"contact\": {\r\n\t\t\"phoneContact\": 79001234568,\r\n    \t\"firstName\": \"Артем\",\r\n\t\t\"middleName\": \"Петрович\",\r\n\t\t\"lastName\": \"Евпаторийский\",\r\n\t\t\"company\": \"Велосипед\"\r\n\t}\r\n}\r\n")
    .asString();

System.out.println(response);
Sub SendContact()
    Dim url As String
    Dim RequestBody As String
    Dim http As Object
    Dim response As String

    ' The idInstance and apiTokenInstance values are available in your account, double brackets must be removed
    url = "{{APIUrl}}/waInstance{{idInstance}}/sendContact/{{apiTokenInstance}}"

    ' chatId - chat identifier, phoneContact - contact phone number in international format (without +) 11 or 12 digits, firstName - contact name, middleName - contact's middle name, lastName - contact's last name, company - contact's company name
    RequestBody = "{""chatId"":""71234567890@c.us"",""contact"":{""phoneContact"":70123456789,""firstName"":""Артем"",""middleName"":""Петрович"",""lastName"":""Евпаторский"",""company"":""Велосипед""}}"

    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