Send WhatsApp Smart Template (Unstructured Data, Single Recipient)
Send a WhatsApp smart template by templateId. Provide unstructured data in JSON or multipart form-data; AI maps it to template variables. Important: include the end userβs phone number or a resolvable contact identifier in the payload so the AI knows the recipient. Idempotent: identical requests within a 10 minute window count as one send (the original response is replayed), so webhook retries never message the recipient twice. The response includes messageId to track delivery via the message status endpoint. Supports optional integrationData payload. Requires x-api-key as query param. Optional stage and from-phone-number queries.
Path Parameters
The template ID of the message to be sent
Query Parameters
API key needed to authorize the request
The stage id to send the message to
The channel phone number to send the message from
Body
The payload to send with the template message. Can be JSON or form data. To add integration data use the key integrationData and the value should be a JSON object with the following structure: { "integrationContactId": "value", "integrationDealId": "value", "additionalData": { "key": "value" } }
The body is of type object.
Response
Message accepted for delivery. Use messageId with GET /public/whatsapp/message/status/{messageId} to track the delivery status. Retrying the exact same request within 10 minutes does not send a second message: it returns the response of the original request, so webhook retriers such as Klaviyo, Zapier or Make cannot duplicate a send. To intentionally message the same recipient twice, change the body or wait past the window.
