# WhatsApp Broadcast

### Component Definition

| Field Name        | Description                                                                                                                                                                                       | Required                                                        |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------- |
| Authorization     | Generated token id                                                                                                                                                                                | Yes                                                             |
| name              | Name of your broadcast                                                                                                                                                                            | Yes                                                             |
| channel           | Channel id of your used channel                                                                                                                                                                   | Yes                                                             |
| sendingMode       | <p>The sending method you will use. <br>Currently there are 2 sending mode, i.e : send immediately (now)  and scheduled send (scheduled)</p><p></p><p>possible value: <em>Now, Scheduled</em></p> | Yes                                                             |
| scheduledDate     | <p>The date and time scheduled for sending broadcast</p><p></p><p>Field format: "yyyy-mm-dd hh:mm:sss"</p>                                                                                        | Yes, when sending mode is *'Scheduled'*                         |
| templateId        | <p>Id of the template that you want to use for your broadcast</p><p></p><p>wa-template-id must defined first in 3Dolphins UI</p>                                                                  | <p>Yes</p><p></p>                                               |
| recipient         | <p>your recipient id</p><p></p><p>acquired from creating recipient with Recipient endpoint</p>                                                                                                    | Yes                                                             |
| headerVariables   | Variable object of your header                                                                                                                                                                    | Yes, only when WhatsApp template being used has macro in Header |
| bodyVariables     | Variable object of your body                                                                                                                                                                      | Yes, only when WhatsApp template being used has macro in Body   |
| content           | <p>the contents of your broadcast message.</p><p></p><p>Note : For WhatsApp broadcast you can only attach one media on a single broadcast</p>                                                     | Yes                                                             |
| botId             | your bot id when the dialog trigger is used.                                                                                                                                                      | No                                                              |
| dialogId          | your dialog id that will be used as trigger dialog.                                                                                                                                               | No                                                              |
| whatsappRecipient | your phone number's recipients.                                                                                                                                                                   | Yes                                                             |

{% hint style="info" %}
You don't need to use whatsappRecipient field if you already use recipient field. This also applies in a reverse way.
{% endhint %}

### Create Recipients

| Method     | POST                                                                                                                                                  |
| ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| Media Type | application/json                                                                                                                                      |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast/upload/recipient&#xD;[&#xD;](https://venom.3dolphins.ai:9443/dolphin/apiv1/graph/broadcast/multiple) |
| Header     | Authorization : Bearer \[generatedToken]                                                                                                              |

#### Body Create Recipients

To create recipients, you must upload your recipient number with format .xlsx You must fill the recipients data and save it with format xlsx, like the image below.

![recipient-import-document.xlsx](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MNQidQwa-0K9_KnQpoc%2F-MWghnZmORFyMFlBVPJt%2F-MWXjvZ3SX6D-POV3-Px%2Fupload%20recipient%20xlsx.png?alt=media\&token=f407a4d2-4f2d-4eaf-9a36-1c88a4c794e2)

You can choose **form-data** format on **Body** and fill the key with *'uploadFile'*, change the type with *file* then you can click **select files** button to select recipient document on your device. Click ***Send*** button to upload file.

![](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MNQidQwa-0K9_KnQpoc%2F-MWTdTlrAlg3AOoJ5cHl%2F-MWXjbTk_QuUiTntv5Sv%2Fupload%20recipient.png?alt=media\&token=f64f035e-3434-4207-bb5a-69110ec179e8)

#### Response

Response status: 200

```
{
  "recipient_id": "[recipient id]" *generated automatically by system
}
```

### Verify Phone Number

| Method     | POST                                                                                                                                                                                      |
| ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Media Type | application/json                                                                                                                                                                          |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast/verify/{your-channel-id}&#xD;[&#xD;](https://venom.3dolphins.ai:9443/dolphin/apiv1/graph/broadcast/multiple)                             |
| Header     | Authorization : Bearer \[generatedToken]                                                                                                                                                  |
| Body       | <p>\["{phone-number-1}", "{phone-number-2}" , .... ]</p><p></p><p><strong>Note</strong>: Phone number must filled with format '62' (country code) or '0',</p><p>Can't filled with '+'</p> |

#### Response

Response status: 200

```
{
  "status": "success",
  "data": [
    {
      "input": "phone-number-1",
      "status": "valid"
    },
    {
      "input": "phone-number-2",
      "status": "invalid"
    }
  ],
  "hasMore": false,
  "nextIndex": 0,
  "prevIndex": 0,
  "totalResults": 0
}
```

### Send Broadcast Text

| Method     | POST                                                  |
| ---------- | ----------------------------------------------------- |
| Media Type | application/json                                      |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast&#xD; |
| Header     | Authorization: Bearer \[generatedToken]               |

#### Body :

```
{
    "name":"your-broadcast-name",
    "channel":"channel-used-for-broadcast",
    "sendingMode":"sending-mode",
    "scheduledDate":"2021-01-01 23:30:334",
    "templateId" : "wa-template-id", 
    "recipient": "recipient-id",  
    "content" : [
        
    ]
}
```

#### Response: 200

```
{
  "status": "success",
  "data": {
    "id": "[broadcast-id]"
  },
  "message": "Successfully make Broadcast Item",
  "hasMore": false,
  "nextIndex": 0,
  "prevIndex": 0,
  "totalResults": 0
}
```

#### Example Send Broadcast Text&#x20;

Below is a representation when using the WhatsApp broadcast API for sending a broadcast text on the 3Dolphins application.

![Send Broadcast Text ](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MNQidQwa-0K9_KnQpoc-1386589149%2Fuploads%2FoFwVoktgouNUnr2M5qe7%2FCreate%20Notification%20edit.png?alt=media\&token=4f7d598a-555a-4ffe-b8f7-d200dc979b05)

When you enter the **channel** field using the channel id in the API, it will be like selecting an **account** on the application, as well as the **templateId** field like selecting the **notification template**. The **name** field will also be the **title** for your notification. **SendingMode** field is like specify the **sending option** to be used (if you use 'schedule', you can choose the time when the notification will be sent).

### Send Broadcast Image

| Method     | POST                                                  |
| ---------- | ----------------------------------------------------- |
| Media Type | application/json                                      |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast&#xD; |
| Header     | Authorization: Bearer \[generatedToken]               |

#### Body :

```
{
    "name":"your-broadcast-name",
    "channel":"channel-used-for-broadcast",
    "sendingMode":"sending-mode",
    "scheduledDate":"2021-01-01 23:30:334",
    "templateId" : "wa-template-id", 
    "recipient": "recipient-id",  
    "content" : [
       {     
            "type": "image",
            "url": "your-url-for-image", | url https, format jpg/png
        }
    ]
}
```

#### Response: 200

```
{
  "status": "success",
  "data": {
    "id": "[broadcast-id]"
  },
  "message": "Successfully make Broadcast Item",
  "hasMore": false,
  "nextIndex": 0,
  "prevIndex": 0,
  "totalResults": 0
}
```

#### Example Send Broadcast Image

Below is a representation when using the WhatsApp broadcast API for sending a broadcast image on the 3Dolphins application.

![Send Broadcast Image](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MNQidQwa-0K9_KnQpoc-1386589149%2Fuploads%2FBTghr8oVOW7AFFRke5XU%2FCreate%20Notification%20image%20edit.png?alt=media\&token=a8c176b0-38db-4046-bf9a-94fb0194cad3)

When you enter the **channel** field using the channel id in the API, it will be like selecting an **account** on the application, as well as the **templateId** field like selecting the **notification template** (when using images notification template, you must fill in the 'type' field with 'image' and your image url with https format and image extension type). The **name** field will also be the **title** for your notification. **SendingMode** field is like specify the **sending option** to be used (if you use 'schedule', you can choose the time when the notification will be sent).

### Send Broadcast Video

| Method     | POST                                                  |
| ---------- | ----------------------------------------------------- |
| Media Type | application/json                                      |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast&#xD; |
| Header     | Authorization: Bearer \[generatedToken]               |

#### Body :

```
{
    "name":"your-broadcast-name",
    "channel":"channel-used-for-broadcast",
    "sendingMode":"sending-mode",
    "scheduledDate":"2021-01-01 23:30:334",
    "templateId" : "wa-template-id", 
    "recipient": "recipient-id",  
    "content" : [
        {
            "type": "video",
            "url": "your-url-for-video", | url https, format mp4
        }
    ]
}
```

#### Response: 200

```
{
  "status": "success",
  "data": {
    "id": "[broadcast-id]"
  },
  "message": "Successfully make Broadcast Item",
  "hasMore": false,
  "nextIndex": 0,
  "prevIndex": 0,
  "totalResults": 0
}
```

#### Example Send Broadcast Video&#x20;

Below is a representation when using the WhatsApp broadcast API for sending a broadcast video on the 3Dolphins application.

![Send Broadcast Video](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MNQidQwa-0K9_KnQpoc-1386589149%2Fuploads%2FAiiTWYUf0d3Vc6xOVpOj%2FCreate%20Notification%20video%20edit.png?alt=media\&token=a72adcd6-7c22-4997-bbb8-4b6b60006461)

When you enter the **channel** field using the channel id in the API, it will be like selecting an **account** on the application, as well as the **templateId** field like selecting the **notification template** (when using video notification template, you must fill in the 'type' field with 'video' and your video url with https format and video extension type). The **name** field will also be the **title** for your notification. **SendingMode** field is like specify the **sending option** to be used (if you use 'schedule', you can choose the time when the notification will be sent).

### Send Broadcast Document

| Method     | POST                                                  |
| ---------- | ----------------------------------------------------- |
| Media Type | application/json                                      |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast&#xD; |
| Header     | Authorization : Bearer \[generatedToken]              |

#### Body:

```
{
    "name":"your-broadcast-name",
    "channel":"channel-used-for-broadcast",
    "sendingMode":"sending-mode",
    "scheduledDate":"2021-01-01 23:30:334",
    "templateId" : "wa-template-id", 
    "recipient": "recipient-id",  
    "content" : [
        {
            "type": "document",
            "url": "your-url-for-document", | url https, format pdf
        }
    ]
}
```

#### Response

Response status: 200

```
{
  "status": "success",
  "data": {
    "id": "[broadcast-id]"
  },
  "message": "Successfully make Broadcast Item",
  "hasMore": false,
  "nextIndex": 0,
  "prevIndex": 0,
  "totalResults": 0
}
```

#### Example Send Broadcast Document

Below is a representation when using the WhatsApp broadcast API for sending a broadcast document on the 3Dolphins application.

![Send Broadcast Document](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MNQidQwa-0K9_KnQpoc-1386589149%2Fuploads%2FkxSye5zsp960sevrwlqd%2FCreate%20Notification%20document%20edit.png?alt=media\&token=249d2f75-4968-41e4-9b05-9deaf195d5ba)

When you enter the **channel** field using the channel id in the API, it will be like selecting an **account** on the application, as well as the **templateId** field like selecting the **notification template** (when using document notification template, you must fill in the 'type' field with 'document' and your document url with https format and document extension type). The **name** field will also be the **title** for your notification. **SendingMode** field is like specify the **sending option** to be used (if you use 'schedule', you can choose the time when the notification will be sent).

### Send Broadcast Quick Reply

| Method     | POST                                                  |
| ---------- | ----------------------------------------------------- |
| Media Type | application/json                                      |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast&#xD; |
| Header     | Authorization : Bearer \[generatedToken]              |

#### Body :

```
{
    "name":"your-broadcast-name",
    "channel":"channel-used-for-broadcast",
    "sendingMode":"sending-mode",
    "scheduledDate":"2021-01-01 23:30:334",
    "templateId" : "wa-template-id", 
    "recipient": "recipient-id",  
    "content" : [ 
    
    ]
}
```

#### Response

Response status: 200

```
{
  "status": "success",
  "data": {
    "id": "[broadcast-id]"
  },
  "message": "Successfully make Broadcast Item",
  "hasMore": false,
  "nextIndex": 0,
  "prevIndex": 0,
  "totalResults": 0
}
```

#### Example Send Broadcast Quick Reply

Below is a representation when using the WhatsApp broadcast API for sending a broadcast quick reply on the 3Dolphins application.

![Send Broadcast Quick Reply](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MNQidQwa-0K9_KnQpoc-1386589149%2Fuploads%2FASOFuoIRpQFdiXqeSTT7%2FCreate%20notification%20quick%20reply%20edit.png?alt=media\&token=38c81616-99c8-4fdb-80bd-274d39e0dc51)

When you enter the **channel** field using the channel id in the API, it will be like selecting an **account** on the application, as well as the **templateId** field like selecting the **notification template**. The **name** field will also be the **title** for your notification. **SendingMode** field is like specify the **sending option** to be used (if you use 'schedule', you can choose the time when the notification will be sent).

### Send Broadcast Macro in Body

| Method     | POST                                                  |
| ---------- | ----------------------------------------------------- |
| Media Type | application/json                                      |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast&#xD; |
| Header     | Authorization : Bearer \[generatedToken]              |

#### Body :

```
{
    "name":"your-broadcast-name",
    "channel":"channel-used-for-broadcast",
    "sendingMode":"sending-mode",
    "scheduledDate":"2021-01-01 23:30:334",
    "templateId" : "wa-template-id", 
    "recipient": "recipient-id",  
    "bodyVariables" : [ 
        {
            "type": "personalized", 
            "key": "{{1}}", 
            "value": "Nama"
        },  
        {
            "type": "personalized", 
            "key": "{{2}}", 
            "value": "Title"
        }
    ],
    "content" : [ 
    
    ]
}
```

#### Response

Response status: 200

```
{
  "status": "success",
  "data": {
    "id": "[broadcast-id]"
  },
  "message": "Successfully make Broadcast Item",
  "hasMore": false,
  "nextIndex": 0,
  "prevIndex": 0,
  "totalResults": 0
}
```

| Field            | Description                                                                                             |
| ---------------- | ------------------------------------------------------------------------------------------------------- |
| Variables Object | Variables Object is required object for template that has macro. The object has key and value component |
| Key              | This key refer to macro that available in broadcast template, example : {0}, {1}, {2}                   |
| Value            | Value refer to field we define in recipient file, as shown below                                        |

Example of macro variable:

![Macro Variable](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MNQidQwa-0K9_KnQpoc%2F-MWTdTlrAlg3AOoJ5cHl%2F-MWTfEdCbL19QtKXYrfg%2Fimage.png?alt=media\&token=1cf5aae2-2207-4bfc-b371-c46c6528826c)

Example of recipient file (must be .xlsx format) :

![recipient-file.xlsx](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MNQidQwa-0K9_KnQpoc%2F-MWTdTlrAlg3AOoJ5cHl%2F-MWTfUyr_dVQAtknoDX6%2Fimage.png?alt=media\&token=f8ab6a52-4470-4570-8dd2-05a4c614c69b)

In the example above, field that is being defined is Nama and Title. We can use this field on our Header Variables/Body Variables.

**Example Send Broadcast Macro in Body**&#x20;

Below is a representation when using the WhatsApp broadcast API for sending a broadcast macro in the notification body.

![Send Broadcast Macro in Body](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MNQidQwa-0K9_KnQpoc-1386589149%2Fuploads%2FRnjZmP5CDBeoLCBkmLVz%2FCreate%20Notification%20Body%20Macro%20edit.png?alt=media\&token=6ebac404-c1c7-4055-85b5-8f7ffbbda22b)

When you enter the **channel** field using the channel id in the API, it will be like selecting an **account** on the application, as well as the **templateId** field like selecting the **notification template**. The **name** field will also be the **title** for your notification. The **template variables** field for the body will appear when you use a broadcast macro to fill in the values for the **key, type,** and **value** fields. **SendingMode** field is like specify the **sending option** to be used (if you use 'schedule', you can choose the time when the notification will be sent).

### Send Broadcast Macro in Header and Body

**Component Explanation:**

| Field            | Description                                                                                             |
| ---------------- | ------------------------------------------------------------------------------------------------------- |
| Variables Object | Variables Object is required object for template that has macro. The object has key and value component |
| Key              | This key refer to macro that available in broadcast template, example : {0}, {1}, {2}                   |
| Value            | Value refer to field we define in recipient file, as shown below                                        |

Example of macro variable:

![Macro Variable](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MNQidQwa-0K9_KnQpoc%2F-MWTdTlrAlg3AOoJ5cHl%2F-MWTfEdCbL19QtKXYrfg%2Fimage.png?alt=media\&token=1cf5aae2-2207-4bfc-b371-c46c6528826c)

Example of recipient file (must be .xlsx format) :

![recipient-file.xlsx](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MNQidQwa-0K9_KnQpoc%2F-MWTdTlrAlg3AOoJ5cHl%2F-MWTfUyr_dVQAtknoDX6%2Fimage.png?alt=media\&token=f8ab6a52-4470-4570-8dd2-05a4c614c69b)

In example above, field that being defined is Nama and Title. We can use this field on our Header Variables/Body Variables.

| Method     | POST                                                  |
| ---------- | ----------------------------------------------------- |
| Media Type | application/json                                      |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast&#xD; |
| Header     | Authorization : Bearer \[generatedToken]              |

#### Body :

```
{
    "name":"your-broadcast-name",
    "channel":"channel-used-for-broadcast",
    "sendingMode":"sending-mode",
    "scheduledDate":"2021-01-01 23:30:334",
    "templateId" : "wa-template-id", 
    "recipient": "recipient-id",  
    
    "headerVariables" : [ 
        {"key": "{{1}}", "value": "Nama"}
     ],
    "bodyVariables" : [
        {"key": "{{1}}", "value": "Nama"},  
        {"key": "{{2}}", "value": "Tanggal"}
     ],
    "content" : [ 
    
    ]
}
```

#### Response

Response status: 200

```
{
  "status": "success",
  "data": {
    "id": "[broadcast-id]"
  },
  "message": "Successfully make Broadcast Item",
  "hasMore": false,
  "nextIndex": 0,
  "prevIndex": 0,
  "totalResults": 0
}
```

The example of headerVariables above has a meaning, you mapping value of field Name into macro {1} The example of bodyVariables above has a meaning, you mapping value of field Name into macro {1} and value of field Tanggal into macro {2}.

When broadcast being send into the recipient macro {1} and {2} would replaced with the value from recipient file. On this example, the macro would replaced with M.Ridwan and 22-04-2021. So the end result would be like this:

> Halo, M.Ridwan
>
> Terima kasih sudah mendaftarkan diri anda. Berikut lampiran datanya Nama: M. Ridwan Tanggal keberangkatan: 22-04-2021

**Example Send Broadcast Macro in Header and Body**&#x20;

Below is a representation when using the WhatsApp broadcast API for sending a broadcast macro in the notification header and body.

![Send Broadcast Macro in Header and Body](https://2268349083-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MNQidQwa-0K9_KnQpoc-1386589149%2Fuploads%2FrGun5mCE9MjFIHBMd9JX%2FCreate%20Notification%20Header%20Body%20Macro%20edit.png?alt=media\&token=f82b6842-583d-479b-867b-d5e4ff99cfc0)

When you enter the **channel** field using the channel id in the API, it will be like selecting an **account** on the application, as well as the **templateId** field like selecting the **notification template**. The **name** field will also be the **title** for your notification. The **template variables** field for header and body will appear when you use a broadcast macro to fill in the values for the **key, type,** and **value** fields. **SendingMode** field is like specify the **sending option** to be used (if you use 'schedule', you can choose the time when the notification will be sent).

### Send Multiple Broadcast

Multiple broadcast allows you to create more than one broadcast at once.&#x20;

| Method     | POST                                                                                                                                          |
| ---------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| Media Type | application/json                                                                                                                              |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast/multiple&#xD;[&#xD;](https://venom.3dolphins.ai:9443/dolphin/apiv1/graph/broadcast/multiple) |
| Header     | Authorization: Bearer \[generatedToken]                                                                                                       |

#### Body for Multiple Broadcast :

```
[ 
*code for first broadcast request
{ 
   "name":"your-broadcast-name", 
   "channel":"channel-used-for-broadcast", 
   "sendingMode":"sending-mode",
   "scheduledDate":"2021-01-01 23:30:334",
   "content" : [ 
     { 
        "type" : "text", 
        "message": "First broadcast" 
      } 
   ] 
},
*code for second broadcast request
{ 
   "name":"your-broadcast-name", 
   "channel":"channel-used-for-broadcast", 
   "sendingMode":"sending-mode",
   "scheduledDate":"2021-01-01 23:30:334",
   "content" : [ 
     { 
        "type" : "text", 
        "message": "Second broadcast" 
      } 
   ] 
}
]
```

#### Response

Response status: 200

```
{
  "status": "success",
  "data": [
    {
      "id": "[id]",
      "message": "Successfully make Broadcast Item",
      "status": "success"
    },
     {
      "id": "[id]",
      "message": "Successfully make Broadcast Item",
      "status": "success"
    }
  ],
  "hasMore": false,
  "nextIndex": 0,
  "prevIndex": 0,
  "totalResults": 0
}
```

### Get Broadcast Detail by ID

| Method     | GET                                                                                                                                         |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| Media Type | application/json                                                                                                                            |
| URL        | https\://\[server]/dolphin/apiv1/graph/broadcast/detail&#xD;[&#xD;](https://venom.3dolphins.ai:9443/dolphin/apiv1/graph/broadcast/multiple) |
| Header     | <p>Authorization : Bearer \[generatedToken]</p><p>Broadcast id: \[broadcast id]</p>                                                         |

#### Response

Response status : 200

```
{
    "status": "success",
    "data": {
        "id": "your-broadcast-id",
        "spell": [
            "New Notification",
            "{\"header\":[],\"body\":[{\"type\":\"static\",\"key\":\"{{1}}\",\"value\":\"{value}\"},{\"type\":\"static\",\"key\":\"{{2}}\",\"value\":\"{value}\"}]}"
        ],
        "owner": "owner-id",
        "createdDate": 1614657234000,
        "createdBy": "created-by-id",
        "modifiedDate": 1614657340548,
        "modifiedBy": "system",
        "templateId": "template-id",
        "actionDate": 1614657339000,
        "name": "New Notification",
        "message": "{\"header\":[],\"body\":[{\"type\":\"static\",\"key\":\"{{1}}\",\"value\":\"{value}\"},{\"type\":\"static\",\"key\":\"{{2}}\",\"value\":\"{value}\"}]}",
        "recipient": [
            "{\"type\":\"contact\",\"id\":\"{recipient-id}\",\"phone\":\"{phone-number}\",\"selected\":true}"
        ],
        "status": "Sent",
        "channel": "your-channel-id",
        "channelType": "your-channel-type",
        "sendingMode": "Now",
        "scheduledDate": 1614657339000,
        "scheduledTime": "10:55"
    },
    "hasMore": false,
    "nextIndex": 0,
    "prevIndex": 0,
    "totalResults": 0
}
```

### Create Broadcast WhatsApp

{% hint style="info" %}
Broadcast template id must be created first in order to use WhatsApp broadcast API.
{% endhint %}

| Method       | POST                                                                                                                            |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------- |
| Content Type | application/json                                                                                                                |
| URL          | https\://\[server]/graph/broadcast/whatsapp&#xD;[&#xD;](https://venom.3dolphins.ai:9443/dolphin/apiv1/graph/broadcast/multiple) |
| Header       | Authorization : Bearer \[generatedToken]                                                                                        |

#### Body:

```
{
  "name": "Broadcast",
  "recipient": "string",
  "status": "string",
  "channel": "2ada6f6e1bxxxxxxxxxxxx",
  "sendingMode": "Now",
  "templateId": "8a2d8a2a3xxxxxxxxx",
  "scheduledDate": "string",
  "botId": "string",
  "dialogId": "string",
  "content": [
    {
      "type": "string",
      "url": "string",
      "message": "string"
    }
  ],
  "headerVariables": [
    {
      "key": "string",
      "value": "string"
    }
  ],
  "bodyVariables": [
    {
      "key": "{{1}}",
      "value": "Panggilan"
    },{
      "key": "{{2}}",
      "value": "Nama"
    }
  ],
  "whatsappRecipient": [
    {
      "Recipient": "62818xxxxxxxx",
            "Panggilan": "Zulfa",
            "Nama": "Fahimah"
        
    }
  ]
}
```

#### Response:

Response Status: 200

```
{
 {
  "status": "success",
  "data": {
    "id": "173ae7e440xxxxxxxxxxx"
  },
  "message": "Successfully make Broadcast Item"
}
```
