API reference
Transactional
Send a single WhatsApp template message to one contact — order confirmations, booking reminders, alerts.
POST
/v1/transactionalSends an approved WhatsApp template to a contact. The send counts against your plan's conversation quota.
Body
| Field | Type | Description |
|---|---|---|
phonerequired | string | E.164 phone of an existing contact. |
templateIdrequired | string | Template id — list them via GET /v1/templates. |
variables | object | Values for the template's numbered placeholders, e.g. { "1": "Ada", "2": "Tuesday 4pm" }. |
curl -X POST https://app.deelflows.com/api/v1/transactional \
-H "Authorization: Bearer df_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"phone": "+15551234567",
"templateId": "tmpl-uuid",
"variables": { "1": "Ada", "2": "Tuesday 4pm" }
}'{ "success": true }Error responses:
| Field | Type | Description |
|---|---|---|
402 | quota_exceeded | Plan conversation quota and add-on credits exhausted. Upgrade or buy credits. |
404 | not_found | No contact with that phone. Create it first. |
422 | send_failed | WhatsApp rejected the send — template not approved, bad variables, or provider issue. |
WhatsApp only allows template messages outside the 24-hour session window — that's why this endpoint takes a
templateId rather than free text. Free-form replies belong in the Inbox.