Whatsapp Business API — Developer Guide
Welcome to the Notify Africa WABA API! This guide will help you quickly integrate Whatsapp Business API capabilities into your applications using RESTful endpoints. You’ll find example requests, developer tips, important notes, and code snippets.
Quick Start
First, create or obtain your API key from API Management. The WABA send endpoints use that API key as a Bearer token.
All WABA send endpoints expect:
Authorization: Bearer {API-KEY}
Replace {API-KEY} with your actual API key.
All endpoints below are relative to:
https://notify-web-assistant-api.beagile.africa
Endpoints Overview
| Action | Endpoint | Method |
|---|---|---|
| Send WhatsApp Text Message | /v1/waba-api/messages/text | POST |
| Send WhatsApp Template Message | /v1/waba-api/messages/template | POST |
Tip: All endpoint paths are relative to the base URL above.
1. Send a WhatsApp Text Message
Sends a plain text WhatsApp Business message to one or more recipients.
Example Request (cURL) — Text Message
curl -X POST https://notify-web-assistant-api.beagile.africa/v1/waba-api/messages/text \
-H "Authorization: Bearer {API-KEY}" \
-H "Content-Type: application/json" \
-d '{
"to": ["255700000001"],
"text": "Hello from the Notify Africa WABA API"
}'
Response Sample — Text Message
{
"status": 200,
"message": "WhatsApp text message send attempted",
"data": {
"results": [
{
"to": "255700000001",
"success": true,
"messageId": "wamid.HBgLMjU1NzAwMDAwMDAxFQIAERgSODZBRD...",
"error": null
}
]
},
"pagination": null
}
Helpful Notes — Text Message
toaccepts either a single string or an array of phone numbers.- Duplicate recipients are removed automatically before sending.
- The API processes up to
500recipients per request. - Each result entry returns its own
success,messageId, anderrorvalues.
2. Send a WhatsApp Template Message
Sends an approved WhatsApp template message to one or more recipients.
Example Request (cURL) — Template Message (With template_parameters)
curl -X POST https://notify-web-assistant-api.beagile.africa/v1/waba-api/messages/template \
-H "Authorization: Bearer {API-KEY}" \
-H "Content-Type: application/json" \
-d '{
"to": ["255700000001"],
"template_name": "hello_world",
"template_parameters": {
"body": {
"1": "John",
"2": "Acme Ltd",
"3": "INV-2026-001"
}
},
}'
Example Request (cURL) — Template Message (Without template_parameters)
curl -X POST https://notify-web-assistant-api.beagile.africa/v1/waba-api/messages/template \
-H "Authorization: Bearer {API-KEY}" \
-H "Content-Type: application/json" \
-d '{
"to": ["255700000001"],
"template_name": "hello_world",
"template_parameters": {}
},
}'
Response Sample — Template Message
{
"status": 200,
"message": "WhatsApp template message send attempted",
"data": {
"results": [
{
"to": "255700000001",
"success": true,
"messageId": "wamid.HBgLMjU1NzAwMDAwMDAxFQIAERgSNjQ1R...",
"error": null
}
]
},
"pagination": null
}
Helpful Notes — Template Message
template_namemust match an approved template already available in the connected WhatsApp Business account.template_parameterscan be sent as a simple object or grouped underbody,header, andbuttons.- Body parameters are ordered by key, so numeric keys such as
"1","2", and"3"are the safest choice. - Media URLs in template parameters are converted into WhatsApp image, video, or document components automatically when supported.
Related Webhook Management
Outbound webhook delivery is managed on Notify Portal, visit it and add your webhook URL and start receiving webhook events on messages delivery.
Pro Tips
- Store your API key in environment variables and never hard-code it in source code.
- Use the text endpoint for free-form business-initiated content only when your WhatsApp setup and policy allow it.
- Use the template endpoint for approved template sends, especially for first-contact or outbound notifications.
- Log the returned
messageIdfor support, reconciliation, and downstream webhook matching.