Skip to content

Send features

2 min read

POST /v1/send delivers one recipient per call. That keeps retries and error handling simple: if you have one thousand customers, your app (or a Campaign) issues one thousand sends. Kirisan still applies the same plan quota and channel rules as the dashboard.

Building blocks

PieceRole
keysWhich device / bot / sender may send
contentTemplate ID or inline message per channel
targetRecipient address plus optional variables
contextOptional scheduling / behaviour flags

Send — channels, templates, and fallback

Send — target and variables

Important rules

  • Email always uses a saved template — there is no inline HTML body on /v1/send.
  • WABA free-form text, media, and reply buttons (or list) only work inside Meta’s customer-care window — no template needed while that window is open. Outside it, use an approved template. Quick reply / URL / call buttons exist only on Meta templates.
  • Variables such as {{name}} in the message are filled from target.variables (same idea as the Send form).
  • Fallbacks let a second channel try if the first fails — useful when WhatsApp is down but Telegram or email can still reach the user.
  • Attachments and storage still follow Plans and quota; a denied plan strips or rejects media the same way as the UI.

Learn more

Next

Practice with editable samples: API playground.