Working with Templates
A template is a reusable message blueprint: structured content with dynamic variables, links, media, and interactive buttons that adapts automatically to SMS, WhatsApp, and RCS. You build a template once, get it approved, and then send personalized messages at scale by referencing its template ID.
Start sending right away. Sent includes 6 pre-built OTP and verification templates available immediately after email and phone verification, no custom template creation or approval needed. Custom templates require a completed account setup.
Learn how to create, customize, and manage message templates effectively across SMS, WhatsApp, and RCS channels.
Playlist
Template documentation
Create a template in the dashboard
Build a template in the visual builder: header, body, dynamic variables, footer, buttons, and submitting for review.
Template definition reference
Every field, limit, and status of the template definition JSON used by the API and by the builder's View JSON action.
How templates work
Why templates are channel-agnostic, how content adapts per channel, and how the template lifecycle is managed.
Create your first template
A guided quickstart for creating and submitting your first template.
How template approval works
Every custom template starts as a draft, and drafts cannot be sent on any channel. Submitting a template for review starts approval:
- With a connected WhatsApp Business Account, Meta reviews the template. A Meta approval applies to every channel; a Meta rejection blocks only WhatsApp.
- Without a connected WhatsApp Business Account, Sent's compliance team reviews the template, and each channel is approved or rejected individually.
Approval is tracked per channel: a message sends on a channel only after the template is approved for that channel, and sends against unapproved templates are blocked. The pre-built OTP and verification templates are already approved on all channels. Refer to template statuses for the full status list and review routing details.
Template best practices
Following these guidelines helps you avoid common issues with template creation and approval.
Keep templates concise and transactional. Templates that clearly serve a transactional or utility purpose (order updates, appointment reminders, verification codes) are approved faster and categorized correctly more often than templates with ambiguous intent.
Avoid marketing language in utility templates. Even a single promotional phrase can cause Meta to re-categorize your utility template as marketing. Stick to factual, action-oriented language that directly relates to the triggering event.
Test with a simple text-only template first. Before building a template with media, buttons, and multiple variables, first create and send a basic text-only template. This confirms your WhatsApp Business Account connection, permissions, and API integration are all working correctly. Add complexity from there.
Use meaningful template names.
Use descriptive, consistent names like order_confirmation, shipping_update, or otp_verification rather than generic names like template1 or test. Send requests can reference a template by name, and renaming later means updating every place that name appears in your code.
Plan for approval time. Build template review time into your development workflow. Submit templates for approval well before you need them in production. Having a library of pre-approved templates ready to go prevents delays when launching new features.
If a template is failing to save, stuck in review, or miscategorized, see WhatsApp Template Issues for symptom-by-symptom fixes.
Manage templates via the API
| Action | Endpoint |
|---|---|
| Create a template | POST /v3/templates |
| List templates | GET /v3/templates |
| Get a template | GET /v3/templates/{id} |
| Update a template | PUT /v3/templates/{id} |
| Delete a template | DELETE /v3/templates/{id} |
Template status changes are delivered to your webhook endpoint as templates events; see webhook event types.
Managing Contacts
Import your user base into Sent, honor opt-outs, and control channel routing per contact. Covers automatic contact creation, phone validation, and search.
Create a Template in the Dashboard
Step-by-step directions for building a message template in the Sent dashboard: header, body, dynamic variables, buttons, category, and review submission.