Agent Skills
Use the Notify Africa integration skill to build SMS and WhatsApp Business integrations.
The notify-africa-integration skill gives coding agents the integration rules and API paths they need to work with Notify Africa safely.
When to use it
Use this skill when building or fixing Notify Africa SMS or WhatsApp Business integrations, including bearer authentication, sender IDs, delivery-status checks, and official SDK setup.
Integration rules
- Never hard-code API tokens. Read them from environment variables or a secret manager.
- Send SMS and WhatsApp Business API requests to
https://api.notify.africa. - Use
Authorization: Bearer {API-TOKEN}for SMS andAuthorization: Bearer {API-KEY}for WhatsApp Business. One API key can be authorized for both services. - Send
Content-Type: application/jsononPOSTrequests. - Format phone numbers internationally without
+, such as255XXXXXXXXX. - Use a Notify Africa-provisioned
sender_idfor SMS and store returnedmessageIdvalues for delivery tracking. - WhatsApp freeform text sends work only within Meta's 24-hour customer-service window; otherwise, use an approved template.
Choose an integration path
- For JavaScript or TypeScript SMS integrations, prefer the official package unless the project already uses direct HTTP.
- For Go, Python, or PHP, review the matching SDK guide before writing raw HTTP.
- Use direct HTTP for unsupported languages, small scripts, or constrained runtimes.
- Use the WhatsApp Business HTTP API for WhatsApp; SMS SDK methods do not cover WhatsApp Business.
Common endpoints
| Service | Method | Endpoint |
|---|---|---|
| SMS | POST | /api/v1/api/messages/send |
| SMS | POST | /api/v1/api/messages/batch |
| SMS | GET | /api/v1/api/messages/status/{messageId} |
| WhatsApp Business | POST | /v1/waba-api/messages/text |
| WhatsApp Business | POST | /v1/waba-api/messages/template |
| WhatsApp Business | GET | /v1/waba-api/messages/{messageId}/status |
| WhatsApp Business | POST | /v1/waba-api/webhooks |
Before finishing
- Show the required environment variables.
- Include a minimal success path and non-200 error path.
- Do not log tokens or full bearer headers.
- Persist or return the
messageIdwhen delivery status matters.
