WhatsApp message templates
Templates are pre-approved message formats required when reaching out to customers who have not contacted you first. Think of them as pre-written scripts that Meta reviews and approves in advance. Once approved, you can send them to any customer at any time. See Send a template message for how to deliver one.
WhatsApp on SignalWire is in early-access alpha. Template management through the SignalWire Dashboard is planned; today, templates are managed via the API or directly in the Meta Business dashboard.
Template components
A template is made up of components. A Body component is required; the header, footer, and buttons are optional.
Parameters
Templates support variable placeholders so you can personalize messages with customer names, order
numbers, and so on. There are two styles, set by parameter_format:
- Positional (
positional): referenced as{{1}},{{2}},{{3}}in order. - Named (
named): referenced by descriptive labels like{{first_name}}or{{order_status}}.
Categories
The category field must be one of:
marketing: promotional messages, offers, announcementsutility: transactional messages, order updates, account alertsauthentication: one-time passwords and verification codes
Manage templates
Templates are managed through the API. For the full request and response schemas, see the reference:
The example below creates an order-update template with positional parameters. The components
array is the heart of the request; each component’s fields depend on its type.
Approval and updates
Templates must be reviewed and approved by Meta before use. Approval typically takes a few minutes
to a few hours. A template’s current state is reported in its template_status field. It must be
approved before it can be used to send messages.
A template can only be updated while it is not yet approved. Once approved, delete and recreate it to make changes.
Anywhere a template ID is accepted, you can use either the SignalWire template ID (a UUID) or the Meta template ID (a numeric string).