WhatsApp Business API

DecisionTelecom WhatsApp API позволяет отправлять и получать деловые сообщения WhatsApp в любую страну мира и из нее через API. Каждое сообщение идентифицируется уникальным случайным идентификатором, поэтому пользователи всегда могут проверить статус сообщения, используя заданную конечную точку.

WhatsApp API использует HTTPS с ключом доступа, который используется в качестве авторизации API. Полезные данные запросов и ответов форматируются как JSON с использованием кодировки UTF-8.

API Авторизация - Базовый ключ доступа Base64.

Чтобы получить ключ API, пожалуйста, свяжитесь с вашим менеджером по работе с клиентами.

Auth

Basic Auth

$userHashKey = 'User Hash Key provided by your account manager';
	$ch = curl_init('https://web.it-decision.com/v1/api/send-whatsapp');
	curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
	curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
	curl_setopt($ch, CURLOPT_USERPWD, "$userHashKey");
	curl_setopt($ch, CURLOPT_TIMEOUT, 30);
	curl_setopt($ch, CURLOPT_POST, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($requestParams)); // $requestParams - raquest array with correct data
	curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
	$result = curl_exec($ch);
	curl_close($ch);

API Send WhatsApp message

https://web.it-decision.com/v1/api/send-whatsapp
{
    "source_addr": "Custom Company",             
    "destination_addr": 8882222200,              
    "message_type":1,                   
    "text":"Message content",                     
    "file_url":"https://yourdomain.com/images/image.jpg", // file extension is a mandatory attribute
    "callback_url":"https://yourdomain.com/whatsapp-callback",
    "template_name":"image_tmp_en",               
    "template_params":"{
        "to": "recipient_wa_id",
        "type": "template",
        "template": {
        "namespace": "your-namespace",
        "language": {
          "policy": "deterministic",
          "code": "your-language-and-locale-code"
        },
        "name": "your-template-name",
        "components": [
        {
          "type" : "header",
          "parameters": [
          // The following parameters code example includes several different possible header types, 
          // not all are required for a media message template API call.

          {
          "type": "text",
          "text": "replacement_text"
          }

          // OR

          {
          "type": "image",
          "image": {
            "link": "http(s)://the-url",
            # provider is an optional parameter
            "provider": {
            "name" : "provider-name"
            },
          }
          }
        ]
        // end header
        },
        {
          "type" : "body",
          "parameters": [
          {
            "type": "text",
            "text": "replacement_text"
          },
          {
            // Any additional template parameters
          }
          ] 
          // end body
          },
        ]
        }
    }"
  }

source_addr:

<= 20 chars - from whom the message

destination_addr:

<= 20 chars - to whom the message

message_type:

Type of message to be sent:

1 text message

2 message with media data (jpg, jpeg or png images)

4 message based on registered template

text:

<= 4096 chars - text of WhatsApp message

file_url:

Correct URL with image for media message. Correct file extensions:

jpg or jpeg (mime type is image/jpeg)

png (mime type is image/png)

callback_url:

Correct URL for message status callback

template_name:

Registered template name (only for template message)

template_params:

JSON data of all the necessary parameters to send a template message.

 https://developers.facebook.com/docs/whatsapp/api/messages/message-templates/media-message-templates
{
   "message_id":554	
}

message_id:

Sent message ID

API Receive WhatsApp message:

https://web.it-decision.com/v1/api/receive-whatsapp
{
   "message_id":554	
}

message_id:

The ID of the message whose status you want to get

{
   "message_id":554, 			
   "status":1, 					
}

message_id:

The ID of the message whose status you want to get

status:

Current WhatsApp message status

WhatsApp messages statuses

Errors

Примеры Отправки WhatsApp сообщений:

curl --location 'https://web.it-decision.com/v1/api/send-whatsapp' \
--header 'Authorization: Basic api key' \
--header 'Content-Type: application/json' \
--data ' {"to":"38063xxxxxxx","type":"template","template":{"namespace":"xxxxx_xxxx_xxx_

Last updated