Skip to main content
Templates stay in Omni Channel. The API only lists them and sends.
1

Dashboard (once)

Omni Channel: verified email mailbox and/or WhatsApp profile + templates.Start an API / Custom CRM campaign. Copy campaignId.
2

Lead setup — does this campaign’s template exist?

Paste campaignId into Lead setup (Try it).
Read checks: ok: true means that profile/template exists. readyFor.email / readyFor.whatsapp tells you which channels you can send.Copy email.lead or whatsapp.lead. Fill email / phone (and whatsappParams using paramLabels).Optional: Validate lead with that body — nothing is created. ok: true means POST /leads will pass.To browse every template: GET /api/v1/omni/templates (add ?campaignId= to mark selected). Copy email.templates[].lead or whatsapp.templates[].lead.
3

POST /leads

Passing a wrong emailTemplateId / whatsappTemplateId returns 422 (*_not_found) instead of silently using another template.
4

Check status

201 repeats the template ids. Poll GET /api/v1/contacts/{contactId} for whatsappQueueStatus / emailStatus.Sandbox keys accept but never send.
Omit template ids to auto-pick Omni defaults. Pass ids when the CRM must choose a specific template.