Skip to content

SAEI for developers

Send WhatsApp messages, receive replies and delivery updates, and connect your own systems with one API.

Base URL

https://api.saei.automize.sa/v1

All requests go to this URL over HTTPS, with your key in the Authorization header.

Send your first message in three steps

  1. 1

    Create a test key in Developers → API keys. Test keys simulate everything and never reach WhatsApp.

  2. 2

    Send a message to the magic number +966500000001. It walks through sent, delivered and read.

  3. 3

    Add a webhook endpoint and watch the delivery events arrive, signed.

Quickstart
On the customer's phoneApproximate look
Your businessBusiness account

Then these webhook events arrive

  1. Sentmessage.sent
  2. Deliveredmessage.delivered
  3. Readmessage.read
Example
curl -X POST https://api.saei.automize.sa/v1/messages \
  -H "Authorization: Bearer $API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
  "to": "+966501234567",
  "type": "text",
  "text": {
    "body": "أهلًا سارة! طلبك جاهز للاستلام 🎉"
  },
  "reference": "order-10482"
}'
Response

Accepted by WhatsApp (or by the simulator, in test mode).

{
  "id": "msg_48213",
  "object": "message",
  "livemode": false,
  "direction": "outbound",
  "channel": "whatsapp",
  "from": "+966112345678",
  "to": "+966501234567",
  "type": "text",
  "text": {
    "body": "أهلًا سارة! طلبك جاهز للاستلام 🎉"
  },
  "status": "accepted",
  "error": null,
  "reference": "order-10482",
  "conversation_id": "conv_311",
  "provider_message_id": "wamid.HBgMOTY2NTAxMjM0NTY3FQIAERgSMEM4",
  "created_at": "2026-10-01T09:30:00Z",
  "updated_at": "2026-10-01T09:30:00Z"
}

Browse by resource

All resources

Concepts worth knowing

The 24-hour window
Free-form messages only reach a customer within 24 hours of their last message; outside it, send an approved template.
Read the guide
Objects and ids
Every object has a prefixed id (msg_, ct_, conv_, cmp_…). Store ids as opaque strings.
Read the guide
Events, not polling
Messages, contacts, conversations, templates, campaigns and flows push their changes to your endpoint, signed with Standard Webhooks.
Read the guide