Client Documentation
Get StartedStatus Page
  • 360Dialog
    • Why you should use 360dialog as Business Solution Provider (BSP)
    • Prices, plans and payment options
  • client hub
    • 360Dialog Client Hub
    • Numbers
      • Manage your WABA
        • Account Statuses
    • Activity
    • Funds
      • Month Closing Invoice (MCI)
    • Payment Management
    • API Keys
    • Template Message Management
    • Partner Change
    • Cancellation
    • Downgrade
  • WhatsApp Marketing
    • Best practices to maintain Account Health and prevent being blocked
    • Driving users to your WhatsApp account
      • WhatsApp Channels
    • Business Search
    • Linking a WABA to a Facebook Page /EN
      • Vinculando uma conta WABA à uma página do Facebook /PT
      • Cómo vincular un WABA a una página de Facebook /ES
    • Linking a WABA to Google Message Ads
    • Ads that Click to WhatsApp (CTWA) /EN
      • Anúncios de Clique para o WhatsApp (CTWA) /PT
        • Como usar o WhatsApp para marketing e vendas? /PT
      • Anuncios que Click to WhatsApp (CTWA) /ES
        • ¿Cómo usar WhatsApp para marketing y ventas? /ES
    • Conversions API (CAPI)
    • Create Ads lookalike audience based on WhatsApp events
    • MM Lite API Beta
      • Onboarding
      • Sending Messages
  • waba basics
    • WhatsApp Business Platform
    • WhatsApp Accounts structure
    • WABA for Government Agencies
    • WABA Policy Enforcement
    • Architecture and Security
    • The Basics (Overview)
    • Webhook Events and Notifications
    • Messaging API
      • Messaging Health Status
      • Step to Step to move to Cloud API
        • [will be deprecated] WABA Integration (On-Premise)
    • Migrating Phone Numbers
      • Migrate number from Meta or alternate BSP to 360dialog Cloud API
      • Migrate a phone number to a new WABA
      • Migrate to alternate BSP
  • waba management
    • Creating new WABA
      • Using a new phone number
      • WhatsApp Coexistence
        • Coexistence Onboarding
        • Coexistence Webhooks
    • Display Name Guidelines
    • Meta Business Verification
    • Official Business Account (OBA) or blue badge
    • WABA Profile Info
    • Capacity, Quality Rating, and Messaging Limits
      • Accelerated Onboarding
    • Hosting type Change
  • waba Messaging
    • Sandbox (Test API Key)
    • Receiving messages
    • Before sending a message
      • Checklist for Message Broadcasts and Campaigns
    • Conversations
    • Messaging
    • Conversational Components
    • Media Messages
      • Upload, retrieve or delete media
    • Template Messages
      • Template Elements
      • Sending Template Messages
      • Authentication Templates
        • Zero-Tap Authentication Templates
        • One-Tap Autofill Authentication Templates
        • Copy Code Authentication Templates
      • Catalog Templates
      • Product Card Carousel Templates
      • Single-Product Message Templates
      • Coupon Code Templates
      • Limited-Time Offer Templates
      • Multi-Product Templates
    • Interactive Messages
      • Single and Multi Product Messages
      • Location Request Message
    • Flows
    • Products & Catalogs
    • Contacts and Location Messages
    • Payments (India Only)
      • Receive WhatsApp Payments via Payments Gateway
      • Receive WhatsApp Payments via Payment Links
      • Order Details Template Message
    • Payments (Singapore only)
      • Receive WhatsApp Payments via Stripe
  • Partners
    • Partner Documentation
  • Support
    • Help and Support
      • Opening Hours & Response Time
      • Status Pages
      • Meta Support
      • Common Issues
      • How to contact Support
    • Error Messages
    • Imprint & Data Privacy
    • FAQ
Powered by GitBook
On this page
  • Sending a Template Message
  • API Reference
  • [will be deprecated] If the WABA is registered in On-premise API
  • Delivery Sequence of Multiple Messages
  • Template Pacing
  • Per-User Marketing Template Message Limits
  • Experiments

Was this helpful?

  1. waba Messaging
  2. Template Messages

Sending Template Messages

PreviousTemplate ElementsNextAuthentication Templates

Last updated 4 months ago

Was this helpful?

Sending a Template Message

It is only possible to send Templates with Active status. A message template status can change automatically from Active to Paused or Disabled based on feedback from customers. See .

Currently, you can send the following template types:

  • : To send a text-based message template, make a POST call to the endpoint below and attach a text message object.

  • : When sending messages with media such as images, videos, or audio files, see our Media documentation to find details.

  • : Interactive message templates expand the content you can send recipients beyond the standard message template and media messages template types to include interactive buttons.

  • : Showcase your products to customers directly from a template message.

  • : Send location-based message templates.

  • with one-time password buttons: Specific Authentication Templates to authenticate and validate OTPs directly from WhatsApp.

API Reference

POST https://waba-v2.360dialog.io/messages

Request Body

Name
Type
Description

to*

string

Recipient wa_id

type*

string

Message type

language*

string

Template language

policy*

string

Delivery policy

code*

string

Language code

name*

string

Template name

messaging_product*

string

Required for Cloud API. Messaging service used for the request. Use "whatsapp".

A successful response includes an object with an identifier prefixed with wamid. Use the ID listed after wamid to track your message status.

{
  "messaging_product": "whatsapp",
  "contacts": [{
      "input": "PHONE_NUMBER",
      "wa_id": "WHATSAPP_ID",
    }]
  "messages": [{
      "id": "wamid.ID",
    }]
}

[will be deprecated] If the WABA is registered in On-premise API

As announced in November 2023, Meta is transitioning to a fully Cloud-hosted WhatsApp Business Platform and will stop supporting On-Premise API in October 2025.

Starting from On-Premise client v2.53, all new feature updates will be exclusively delivered to Cloud API. While the On-Premise API client will receive quarterly releases, they will focus solely on bug fixes and security patches. From May 15, 2024, 360dialog will not allow for new numbers to be onboarded with On-Premise API. We will continue supporting already registered On-Premise API throughout 2024, but we strongly recommend to start changing the hosting type of numbers to Cloud as soon as possible. Learn here how to integrate with Cloud API.

POST https://waba.360dialog.io/v1/messages

There is no limit to the number of parameters allowed in a Message Template.

Request Body

Name
Type
Description

to

string

Recipient wa_id

type

string

Message type

namespace

string

Template namespace

language

string

Template language

policy

string

Delivery policy

code

string

Language code

name

string

Template name

{
  "messaging_product": "whatsapp",
  "contacts": [{
      "input": "PHONE_NUMBER",
      "wa_id": "WHATSAPP_ID",
    }]
  "messages": [{
      "id": "wamid.ID",
    }]
}

Delivery Sequence of Multiple Messages

Template Pacing

Starting April 30, 2024, template pacing applies to both marketing and utility templates.

For Marketing Templates campaigns with fewer recipients that do not reach their 'pace limit', their messages will not be subjected to pacing. This 'pace limit' number is dynamically determined by Meta and may vary depending on the template or business.

When a template is paced, messages will be sent normally until an unspecified threshold is reached. Once this threshold is reached, subsequent messages using that template will be held to allow enough time for customer feedback. Once Meta receives a good quality signal, subsequent messages using that template will be scaled to the entire target audience. If they receive a bad quality signal, subsequent messages using that template will be dropped, giving the business the opportunity to adjust content, targeting, etc.

Utility Template Pacing

API Behaviour

The immediate response from the messages endpoint will indicate if the message was sent (accepted) or held (held_for_quality_assessment) with the message_status property in the message object.

If the feedback is negative and changes the template's quality to low quality:

  • The template's status will be set to PAUSED

  • Each held message will be dropped and trigger a messages webhook with "status":"failed" and "code":"132015" (Cloud API users) or "code":"2061" ( On-Premises API users)

  • Admins of the WhatsApp Business Account owning business will be informed of the dropped messages by Meta Business Suite notification, WhatsApp Manager banner, and email

Note that Meta has internal guardrails in place to ensure that we evaluate and make a pacing decision within a reasonable time to avoid impact on time sensitive campaigns. The goal is that even if paced, campaign messages with highest throughput still get delivered within an hour (99 percentile).

appropriate messages webhooks. See Webhooks and events.

Per-User Marketing Template Message Limits

Starting April 1, 2025, Meta will temporarily pause delivery of all marketing template messages to WhatsApp users who have a United States phone number (a number composed of a +1 dialing code and a US area code). This pause is intended to allow Meta to focus on building a better consumer experience in the US, which will ultimately lead to improved outcomes for businesses.

Attempting to send a template message to a WhatsApp user with a US phone number after this date will result in error 131049.

WhatsApp may limit the number of marketing template messages a person receives from any business in a given period of time, starting with delivering fewer marketing conversations to those users who are less likely to engage with them. In most WhatsApp markets, this is determined based on a number of factors, including a dynamic view of an individual’s marketing message read rate, and is not related to your business specifically.

For individuals with United States phone numbers (numbers composed of a +1 dialing code and a US area code), where WhatsApp is growing quickly but at an earlier stage, WhatsApp will not deliver any marketing template messages to focus on building the consumer experience.

Why it's important

WhatsApp has found that per-user marketing template limits maximize message engagement and improve the user experience, measured through improvements in user read rates and sentiment. This limit helps WhatsApp users find business messaging more valuable and feel less like they receive too many business messages.

How this Applies to Your Business

Example:

  • A second marketing template message can be sent in an existing conversation.

What to watch for: 131049 Error Code

If you do receive one this error code and suspect it is due to the limit, avoid immediately resending the template message, as it will only result in another error response. Instead, retry in increasing larger time increments until the message is delivered, since the limit may be in effect for differing periods of time.

Experiments

Meta's ongoing experiment on the WhatsApp Business Platform is focused on evaluating how marketing messages impact consumer experience and engagement. As part of this experiment, approximately 1% of WhatsApp consumers will not receive marketing messages.

When sending a series of messages, the order in which messages are delivered is not guaranteed to match the order of your API requests. If you need to ensure the sequence of message delivery, confirm receipt of a delivered status in a messages webhook before sending the next message in your message sequence. See

Template pacing is a mechanism that allows time for customers to provide early on newly created or unpaused marketing or utility templates. This identifies and pauses templates that have received poor feedback, giving the business time to adjust their contents before they are sent to too many customers, thereby reducing the likelihood of negative feedback impacting the business.

Template pacing is valid for utility and marketing templates. Newly created templates, , and templates that may have been created previously but don’t have a GREEN quality rating are potentially subject to pacing. — for example, low quality resulting in a template pause — is one of the primary reasons for template pacing and you may see other templates get paced.

Utility templates are subject to pacing only if the number had a utility Once a utility template has been paused, newly created templates, paused templates that are unpaused, and templates that may have been created previously but don’t have GREEN quality rating are potentially subject to pacing for the next 7 days.

If the feedback is positive and changes the template's quality rating to high quality, the held messages will be released and sent normally which will trigger the sent and delivered webhooks. will send the quality update and the webhook will send the sent and delivered updates.

A will be sent with an event value of paused

A webhook will be triggered with the quality change

See to learn how to unpause a template that has been paused due to pacing.

Thus, if Meta internal guardrails are reached before a template has received enough feedback to change its quality to high or low, the held messages will be released normally along with any appropriate messages webhooks. See

The limit only applies to that would normally open a If a marketing conversation is already open between you and a WhatsApp user, marketing template messages sent to the user will not be affected. Further marketing template messages can only be sent in an open marketing conversation if the person responds to any message.

The first marketing template message is delivered and opens a new customer service window. The per-user marketing template message limit applies.

Each time the WhatsApp user responds in an existing conversation window, you can send one additional marketing template message. You can also send unlimited messages.

If a marketing template message is not delivered to a given user due to the limit, Cloud API will return error code 131049 with the description “This message was not delivered to maintain a healthy ecosystem engagement.” See error code: 131049 in

To understand more about these limits and how to adapt strategies, .

Businesses will not be charged for undelivered messages. While there is no guaranteed timeframe for how long a number may be part of the experiment, we do not recommend retrying to send marketing messages to consumers with experimentation error codes unless there is an active conversation open. See and on Meta's Official Documentation.

Template Statuses
Text-based message templates
Media-based message templates
Interactive message templates
Multi-Product Message templates
Location-based message templates
Authentication templates
Webhooks and events.
feedback
paused templates that are unpaused
Template quality history
template paused.
The message_template_quality_update
messages
message_template_quality_update
message_template_quality_update
Template Pausing
Webhooks and events.
marketing template messages
new marketing conversation.
24-hour marketing conversation
free-form
Error Messages.
read our blog post on this subject
Cloud API
On-Premise Experiments