Deel Flows

API reference

Transactional

Send a single WhatsApp template message to one contact — order confirmations, booking reminders, alerts.

POST/v1/transactional

Sends an approved WhatsApp template to a contact. The send counts against your plan's conversation quota.

Body

FieldTypeDescription
phonerequiredstringE.164 phone of an existing contact.
templateIdrequiredstringTemplate id — list them via GET /v1/templates.
variablesobjectValues for the template's numbered placeholders, e.g. { "1": "Ada", "2": "Tuesday 4pm" }.
curl
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" }
  }'
Response 200
{ "success": true }

Error responses:

FieldTypeDescription
402quota_exceededPlan conversation quota and add-on credits exhausted. Upgrade or buy credits.
404not_foundNo contact with that phone. Create it first.
422send_failedWhatsApp 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.
Transactional API — Deel Flows Docs