One API for WhatsApp Business
Send WhatsApp messages, receive replies and delivery updates, and connect your own systems with one API.
Base URL
https://api.saei.automize.sa/v1All requests go to this URL over HTTPS, with your key in the Authorization header.
curl -X POST https://api.saei.automize.sa/v1/messages \
-H "Authorization: Bearer $SAEI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"to": "+966500000001",
"type": "text",
"text": { "body": "Hello from SAEI" }
}'Send your first message in three steps
Test keys simulate the whole lifecycle without touching WhatsApp, so you can build and verify before you go live.
Create a test key in Developers → API keys. Test keys simulate everything and never reach WhatsApp.
Send a message to the magic number +966500000001. It walks through sent, delivered and read.
Add a webhook endpoint and watch the delivery events arrive, signed.
Three things that govern every integration
The 24-hour window
Free-form messages only reach a customer within 24 hours of their last message; outside it, send an approved template.
Objects and ids
Every object has a prefixed id (msg_, ct_, conv_, cmp_…). Store ids as opaque strings.
Events, not polling
Messages, contacts, conversations, templates, campaigns and flows push their changes to your endpoint, signed with Standard Webhooks.
A page per resource
Each resource explains itself first, then lists its endpoints with copy-ready code samples.
- MessagesSend text, templates, buttons and media.
- TemplatesCreate templates and track approval.
- ContactsSync customers and custom fields.
- ConversationsRead the inbox and assign to your team.
- CampaignsLaunch bulk sends and track results.
- FlowsDrive automated replies from your system.
- MediaUpload images and files, then use them.
- NumbersManage the connected WhatsApp numbers.
- WebhooksRegister and manage your endpoints.
- Account and usageSee your limits and consumption.
- Test modeSimulate everything with no real send.
Written guides, not just a reference
Fifteen guides covering the road from your first key to running in production.
Frequently asked questions
What is the difference between the SAEI API and Meta's WhatsApp Cloud API?
The WhatsApp Cloud API sends messages. The SAEI API adds what a real integration needs on top: contacts, templates and their approval, conversations and assignment, campaigns, flows, media, and a signed event for every change — behind one key and one base URL.
Can I try it before connecting a WhatsApp number?
Yes. Create a test key and send to the magic number: the message walks through sent, delivered and read in full, without touching WhatsApp and with no message cost.
How do I verify a webhook really came from you?
Every event is signed per the Standard Webhooks specification. Compute the signature over the request body with your secret and compare, and any request we did not send is rejected. The "Receiving webhooks" guide walks through it.
Which languages are the code samples in?
Every endpoint in the reference shows a copy-ready sample in eight languages, and the OpenAPI description plus a Postman collection are there if you would rather generate your own client.
Are the docs available in Arabic and English?
Yes — the whole reference is bilingual, field names, descriptions and error messages included, and you can switch language from inside the docs.