Sending Messages
All send endpoints live under /v1/notify/:channel/ and require an API Key in the X-Api-Key header.
Supported channels
| Channel value | Description |
|---|---|
whatsapp | WhatsApp via connected account |
telegram | Telegram via bot token |
sms | SMS via configured provider |
Message lifecycle
Every message goes through these statuses:
queued → sent → delivered → read
↓
failed
| Status | Meaning |
|---|---|
queued | Accepted, waiting for worker |
sent | Handed to provider |
delivered | Provider confirmed delivery |
read | Recipient opened the message |
failed | All retry attempts exhausted |
Subscribe to webhooks to receive status changes in real time.
Common response fields
Every send endpoint returns a message object with at least:
{
"id": "msg_01j...",
"tenantId": "ten_01j...",
"provider": "whatsapp",
"to": "+905551234567",
"status": "queued",
"createdAt": "2025-01-01T12:00:00.000Z"
}
Rate limits
Rate limits depend on your plan and API key configuration. Exceeded limits return 429 Too Many Requests.