Early access Rabtello is launching soon — a CRM built on the WhatsApp Cloud API. Get early access for your team. Request access
Developers · REST API

A first-class API
for WhatsApp messaging.

Send OTPs, order confirmations, shipping updates and broadcasts from your existing CRM, ERP or e-commerce store — through a single REST endpoint. Webhooks for everything coming the other way.

v1 · in development OpenAPI 3.1 Sandbox at launch
Send a message

One endpoint, every WhatsApp message type.

Templates, freeform replies, media, interactive buttons, list messages, location, contacts. Idempotent by default — safe to retry.

  • POST /v1/messages — send anything
  • Idempotency-Key header for safe retries
  • Per-key rate limits and quotas
  • Delivery receipts & read receipts
  • SDKs planned for Node, Python and PHP
Node cURL Python
// Send a templated order confirmation import { Rabtello } from "@rabtello/sdk"; const client = new Rabtello({ apiKey: process.env.RABTELLO_KEY, }); await client.messages.send({ to: "+971501234567", template: "order_confirmed", vars: { order: "#4821", eta: "Tue 12 May", total: "AED 899", }, idempotencyKey: "ord-4821-confirm", });
POST /webhooks/your-endpoint
// Inbound message webhook payload { "event": "message.received", "id": "msg_01HM...", "from": "+971501234567", "to": "+97144567890", "text": "Where's my order?", "contact": { "name": "Layla Al-Mansoori", "tags": ["vip", "d2c"] }, "timestamp": 1715092382 }
Webhooks

Get every event, in real time.

Subscribe to message, ticket, flow and delivery events. Signed with HMAC, retried with exponential backoff, delivered exactly once where you've enabled idempotency.

  • message.received · message.delivered
  • ticket.created · ticket.assigned
  • flow.started · flow.completed
  • HMAC-SHA256 request signing
  • Replay logs & manual redelivery
Built for production

Operationally boring, by design.

OpenAPI 3.1

Spec-first design — typed SDKs planned for Node, Python and PHP, generated from the spec.

Idempotent

Pass an Idempotency-Key and retry safely. We dedupe for 24 hours.

Rate limits

Generous defaults, transparent headers, burst allowances on every plan.

Built for uptime

Designed multi-region, with a public status page arriving at launch.

Sandbox

A free sandbox number with seedable conversations, available at launch.

Audit logs

Every API call logged with user, IP, and request ID. Exportable as JSON.

Build with us from day one.

Request early access and be first in line when the API opens — sandbox first, then live behind a single boolean flag.