> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ruachnet.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Send a Bulk Template Message

> Send the same template content and variables to multiple WhatsApp recipients

Use `BulkPayload` when every recipient receives the same template variable values. Supply recipients as a comma-separated string in `RecieverNumber`.

## Request fields

**SenderNumber** `string` *required*

Active WhatsApp sender number returned by the connectors endpoint.

**MetaTemplateId** `string` *required*

Identifier of the approved Meta template to send.

**BulkPayload** `object` *required*

Shared payload applied to every recipient.

**BulkPayload.RecieverNumber** `string` *required*

One or more recipient numbers in international format, separated by commas.

**BulkPayload.HeaderVariable** `string`

Value for a dynamic text header. A header supports at most one variable.

**BulkPayload.BodyVariables** `string[]`

Values for body placeholders, in the same order as the placeholders in the approved template.

## Template without variables

```bash theme={null}
curl --request POST \
  --url "https://app.notify.ng/api/whatsapp/v1/Send" \
  --user "$CLIENT_ID:$API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
    "SenderNumber": "15551234567",
    "MetaTemplateId": "12121212212",
    "BulkPayload": {
      "RecieverNumber": "15559876543,15557654321"
    }
  }'
```

## Header and body variables

```json theme={null}
{
  "SenderNumber": "15551234567",
  "MetaTemplateId": "12121212212",
  "BulkPayload": {
    "RecieverNumber": "15559876543,15557654321",
    "HeaderVariable": "Order update",
    "BodyVariables": [
      "Amina",
      "ORD-1042"
    ]
  }
}
```

If the template contains only header variables or only body variables, omit the unused property.

> [!WARNING]
>
> The number and order of values must match the approved template. The header accepts a maximum of one variable.

## Success response

```json theme={null}
{
  "statusCode": 0,
  "status": "Success",
  "messages": [
    {
      "messageId": "3f2504e0-4f89-41d3-9a0c-0305e82c3301",
      "receiverNumber": "15559876543"
    },
    {
      "messageId": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3dcb6d",
      "receiverNumber": "15557654321"
    }
  ]
}
```

**statusCode** `number`

`0` indicates a successful request.

**status** `string`

Human-readable request status.

**messages** `object[]`

One accepted message record per recipient.

**messages\[].messageId** `string`

Unique message identifier.

**messages\[].receiverNumber** `string`

Recipient associated with the message identifier.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.