Skip to content

SendContact#

The method is aimed for sending a contact message. Contact visit card is created and sent to a chat. The message will be added to the send queue. Linked device not required when sending. Messages will be kept for 24 hours in the queue until account will be authorized The rate at which messages are sent from the queue is managed by Message sending delay parameter.

Request#

To send a contact message, you have to execute a request at:

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

For APIUrl, idInstance and apiTokenInstance request parameters, refer to Before you start section.

Request parameters#

Parameter Type Mandatory Description
chatId string Yes Chat Id
contact object Yes Contact object
quotedMessageId string No Quoted message Id, if present the message will be sent quoting the specified chat message

contact object parameters:

Parameter Type Mandatory Description
phoneContact integer Yes contact phone number in international format (no +) 11 or 12 digits
firstName string If middleName, lastName, company not specified Contact name
middleName string If firstName, lastName, company not specified Contact middle name
lastName string If middleName, firstName, company not specified Contact last name
company string If middleName, lastName, firstName not specified Contact company name

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

Sending a message to a personal chat:

{
    "chatId": "11001234567@c.us",
    "contact": {
        "phoneContact": 79001234568,
        "firstName": "Artem",
        "middleName": "Petrovich",
        "lastName": "Evpatoriysky",
        "company": "Bicycle"
    }
}

Sending a message to a group chat:

{
    "chatId": "11001234567-1581234048@g.us",
    "contact": {
        "phoneContact": 79001234568,
        "firstName": "Artem",
        "middleName": "Petrovich",
        "lastName": "Evpatoriysky",
        "company": "Bicycle"
    }
}

Sending a quoted message:

{
    "chatId": "11001234567@c.us",
    "quotedMessageId": "361B0E63F2FDF95903B6A9C9A102F34B",
    "contact": {
        "phoneContact": 79001234568,
        "firstName": "Artem",
        "middleName": "Petrovich",
        "lastName": "Evpatoriysky",
        "company": "Bicycle"
    }
}

Response#

Response parameters#

Parameter Type Description
idMessage string Outgoing message Id

Response body example#

{
    "idMessage": "3EB0C767D097B7C7C030"
}

SendContact errors#

For a list of errors common to all methods, refer to Common errors section

Request examples#

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"":""Artyom"",""middleName"":""Petrovich"",""lastName"":""Evpatorsky"",""company"":""Bicycle""}}"

    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