This document is a log of changes to the WhatsApp Business Platform.
Cloud API
Added typing indicators so you can let WhatsApp users know that you are preparing a response.
Pricing
Lowered authentication-international pricing rates for Egypt, Nigeria, Pakistan, and South Africa.
Cloud API, On-Premises API
Payments API for business portfolios with Singapore addresses is no longer available.
Cloud API
Added partner-initiated WABA creation to replace the On-Behalf-Of ("OBO") account ownership model, which is being deprecated. Starting September 30, 2025, WABAs can no longer be onboarded to the OBO model.
App Dashboard
Added additional tiles to the App Dashboard > WhatsApp > Quickstart panel to make it easier for you to get started with complementary products that can help you scale business messaging:
These tiles make it easier to find documentation for these products and automatically add required permissions to an App Review request, which you can review and submit at your convenience.
Note that these tiles only appear for products that you are eligible to use.
Cloud API
Added new endpoints to support template groups and template group analytics, which allows you group sets of templates for easier analytic analysis.
Embedded Signup
Added ability for solution providers to onboard WhatsApp Business app users via Embedded Signup.
Pricing
Embedded Signup
Added ability for business customers of solution providers to claim "555" business phone numbers when onboarding via Embedded Signup.
Cloud API
Added the Block API giving businesses the ability to manage unwanted spam by blocking or unblocking specific customer phone numbers.
Multi-Partner Solutions
app_id
parameter to the POST /<WHATSAPP_BUSINESS_ACCOUNT>/set_solution_migration_intent endpoint to allow for migration off of Multi-Partner Solutions.Embedded Signup
Added Sandbox accounts for easier testing of the Embedded Signup flow.
Cloud API
131050
for messages webhooks, indicating message non-delivery due user marketing preferences.Cloud API
Added GET /<SOLUTION_ID>/access_token endpoint for getting business tokens of business customers who have onboarded to the platform via a Multi-Partner Solution.
Cloud API
Added POST /<WHATSAPP_BUSINESS_ACCOUNT>/set_solution_migration_intent endpoint to enable Tech Providers to migrate business customers from one Solution Partner and Multi-Partner Solution to another Solution Partner and Multi-Partner Solution.
All APIs
Added POST /<BUSINESS_PORTFOLIO_ID>/self_certify_whatsapp_business endpoint for partner-led business verifiation.
Pricing
Service conversations are now free for all businesses, including via AI-enabled conversational experiences.
Business Management API
Added POST /<WHATSAPP_BUSINESS_ACCOUNT_ID>/set_solution_migration_intent endpoint for adding a WABA to an active multi-partner solution.
Cloud API
package_name
and signature_hash
parameters must be defined within the supported_apps
array when creating one-tap autofill and zero-tap authentication templates.storage_configuration
parameter to the POST /<WHATSAPP_BUSINESS_PHONE_NUMBER>/settings endpoint, which can be used to enable or disable local storage.data_localization_region
parameter from the POST /<WHATSAPP_BUSINESS_PHONE_NUMBER>/register endpoint.Pricing
Updated pricing rates in India, Saudi Arabia, the United Arab Emirates, and the United Kingdom.
Cloud API
Changed steps in the App Dashboard to make it easier to become a Tech Provider.
Cloud API
Added checkout button templates (only available to India businesses that use business phone numbers with India country calling codes).
Cloud API
Cloud API
Changed media asset caching behavior from developer definable (via Cache-Control header) to a fixed time period of 10 minutes. You can still force us to fetch assets from your server instead of our cache, however. See Media Caching.
Cloud API
Cloud API
Business Management API
Cloud API
Cloud API, On-Premises API
Cloud API
biz_opaque_callback_data
character maximum from 256 to 512.Business Management API
cta_url_link_tracking_opted_out
field on WhatsApp Message Template node for enabling/disabling button click tracking.UTILITY
.Business Management API
Cloud API
health_status
field to various nodes for checking messaging health status.biz_opaque_callback_data
field to free-form messages for including arbitrary strings in messages webhooks.Embedded Signup
Embedded Signup can now be used to migrate customer business phone numbers from one WhatsApp Business Account to another.
Business Management API
Business Management API, Cloud API, On-Premises API
Cloud API
data_localization_region
field on WhatsApp Business Phone Number > Register endpoint for enabling local storage.Business Management API, Cloud API, On-Premises API
code_expiration_minutes
value (instead of a default of 10 minutes) to determine if the delivered template message should display an autofill button or copy code button.code_expiration_minutes
value, if present (or after 10 minutes, if not present).Cloud API
limited_time_offer
template component.Cloud API
ctwa_clid
property to referral
object in messages webhooks. Indicates the click ID generated when the user taps an ad that clicks to WhatsApp in order to send the message.Cloud API, On-Premises API
Business Management API
add_security_recommendation
and code_expiration_minutes
template components in component
value.200
if the user identified by token has not been granted appropriate WhatsApp Business Account Access.Cloud API
throughput
and platform_type
fields to WhatsApp Business Phone Numbers.Cloud API, On-Premises API
Embedded Signup
Added a new boolean field, override_default_response_type. When set to true
, any response types passed in response_type
will take precedence over the default types.
Embedded Signup
Added granular business tokens that exist at the client business level as an opt-in feature to help partners improve account security. In addition, we have updated the creation screens for Pre Filled Data.
Tools
Business Management API
Embedded Signup
Business Management API
Pre-verified business phone numbers now have a VERIFIED
status of 28 days (up from 14).
Cloud API
Business Management API
Authentication template copy code button text and autofill button text are now optional upon creation.
Embedded Signup
We are requiring Solution Partners to request the whatsapp_business_messaging permission to use the API calls on the Cloud API, hosted by Meta. There is now a permissions acknowledgement screen businesses must go through in order to complete Embedded Signup.
Tools
Added latency to the WhatsApp Business API Status Page.
Business Management API
Added Business Management API error code 2494100
that indicates a business phone number is temporarily in maintenance mode.
Cloud API
Tools
Added error signals that can help debug authentication templates with one-time password autofill buttons.
Cloud API
132015
instead of 132001
.132016
instead of 132001
.On-Premises API
2061
.2062
.Business Management API
Added multi-product message templates.
Cloud API
On-Premises API
Business Management API
account_alerts
webhooks field.AUTHENTICATION
, MARKETING
, or UTILITY
.Business Management API
Added hsm_id
field to DELETE WhatsApp Business Account > Message Templates endpoint. If included, deletes a single template that matches the supplied ID (instead of deleting all templates that match the supplied name).
Cloud API
Added last_onboarded_time
to WhatsApp Business Phone Number node. Indicates when a user created a business phone number on their WhatsApp Business Account by completing the Embedded Signup flow.
Business Management API
Added last_onboarded_time
field to the GET /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID> and GET <WABA_ID>/phone_numbers endpoints to enable sorting results by when a user last onboarded the Embedded Signup flow. If this parameter is not specified, the results are sorted in descending order.
Cloud API
Added WhatsApp Business Phone Number > Business Compliance Info endpoint for adding/updating a business phone number's India-based compliance information.
Embedded Signup
Business Management AI, Cloud API, On-Premises API
allow_category_change
parameter to POST WhatsApp Business Account > Message Templates endpoint.INCORRECT_CATEGORY
as a new rejection reason
value for template status webhooks.previous_category
field to WhatsApp Message Templates.Business Management API
template_category_update
webhook subscription field. If subscribed to this field, anytime a template's category changes you will receive a webhook indicating the template's previous and new category.Cloud API
You can now share location information with users by adding a Location Header in your template.
On-Premises API
Conversely, users can now share their location information with businesses via Location Request Messages.
Cloud API, On-Premises API
Migrating an India-based business phone number from On-Premises API to Cloud API no longer deletes its online selling compliance data, so you no longer have to manually repopulate this data after migration.
Business Management API
Added a new template comparison endpoint that allows you to compare template send counts and block ratios.
Cloud API, On-Premises API
Added a new WhatsApp Business Phone Number > Commerce Settings endpoint to enable/disable the shopping cart and product catalog on individual business phone numbers. See Set Commerce Settings for Cloud API and Set Commerce Settings for On-Premises API for usage instructions and to learn how these settings can help you sell products and services.
Business Management API, Cloud API
Graph API version 16 is now available. Changes to message template categories, API error responses, and webhooks have been introduced as part of this version.
Cloud API
AUTHENTICATION
MARKETING
UTILITY
code
and details
instead."code":100
) had multiple unique titles which indicated the nature of a given 100 error. All code 100 errors will now use Invalid parameter
as their title. Old titles that described the nature of a given code 100 error have been moved to the details
property. This change is also now reflected in webhooks payloads that describe a code 100 error response.Cloud API Webhooks
errors
object in webhooks triggered by v16.0+ request errors now include message
and error_data.details
properties, and title
values have changed for multiple error codes. Now, errors
objects have the following structure and data:[ { "code": <CODE>, "title" : "<TITLE>", "message": "<MESSAGE>", "error_data": { "details": "<DETAILS>" } }, ... ]
title
property value has been updated for the following error codes. Their old values now appear in error_data.details
.
130470
new title is now Re-engagement message
130429
new title is now Rate limit hit
131045
new title is now Incorrect certificate
131031
new title is now Business Account locked
131053
new title is now Media upload error
131027
new title is now Something went wrong
131042
new title is now Business eligibility payment issue
131026
new title is now Message Undeliverable
131000
new title is now Something went wrong
message
property value is the same as the title
property value, which indicates the error code's title.
This property maps to the message
property in API error response payloads.error_data.details
property now includes error code titles from the error codes listed above and describes the underlying cause of the error. This value maps to the details
property in API error response payloads.These changes are reflected in the following errors
properties in error-related webhooks:
entry.changes.value.errors
entry.changes.value.messages.errors
entry.changes.value.statuses.errors
Cloud API
Unverified businesses can now initiate up to 250 conversations in a rolling 24-hour period.
Applies to all Cloud API versions.
Added new optional phone_number_id
field to the Media endpoint. If you include this parameter and a business phone number ID, the operation will only be processed if the phone number ID matches the ID of the phone number upon which the media was uploaded.
Cloud API HTTP media caching is out of beta and available to everyone.
Cloud API will now reattempt to deliver failed webhooks notifications for up to 7 days instead of up to 30 days. See Webhooks Delivery Failure.
Business Management API
template_performance_metrics
field. Notifies you weekly of all template performance metrics, including messages sent count, messages opened count, and top reasons for blocks.Applies to all versions.
New account_alerts
field:
account_alerts
field. Notifies you of Business, WhatsApp Business Account, and business phone number alerts.New account_update
field values:
account_update.events
value: ACCOUNT_DELETED
. Indicates that a phone number has been de-registered or deleted from a WhatsApp Business Account.message_template_status_update.events
value: PENDING_DELETION
. Indicates a message template has been marked for deletion.Sample Webhooks notifications that are sent when these new events are triggered:
ACCOUNT_DELETED
: WhatsApp Business Account DeletedPENDING_DELETION
: Template Message Pending DeletionAdded the following WhatsApp Business Account node fields:
country
(applies to v15.0+
)ownership_type
(applies to v15.0+
)business_verification_status
(applies to all versions)Applies to v15.0+.
Added the following filter options to the Business Client Whatsapp Business Accounts endpoint:
creation_time
field using GREATER_THAN
, LESS_THAN
, or IN_RANGE
operators.ownership_type
using EQUAL
or IN
operators.Added the following filter options to the Business Owned WhatsApp Business Accounts endpoint:
creation_time
using GREATER_THAN
, LESS_THAN
, or IN_RANGE
operators.ownership_type
using EQUAL
or IN
operators.country
using EQUAL
or IN
operators.Applies to v15.0+
Added the following WhatsApp Business Phone Number node fields:
is_official_business_account
messaging_limit_tier
In addition, you can filter WhatsApp Business Account Phone Numbers endpoint by is_official_business_account
.
Cloud API now supports up to 500 (up from 350) messages per second (mps) of combined text and media messages, by request. See Throughput for details.
If you already have 350 mps it will be increased to 500 mps automatically. If you already requested 350 mps but the process has not been completed, you will receive 500 mps upon completion.
We are now beta testing Cloud API media HTTP caching. If you are a Solution Partner, see Media HTTP Caching to learn how to use headers in your server responses that instruct us to cache your media assets for reuse with future messages.
Cloud API now supports captions on documents sent to and received from customers. See Media Object in the Media reference.
WhatsApp Business Accounts can now have up to 6,000 message templates if their parent business has been verified and at least one of the parent business's WhatsApp Business Accounts has a business phone number with an approved display name.
As part of this change, translated versions of a message template now count against a WhatsApp Business Account's template limit.
Businesses in India can now use a credit card to pay for messages sent using the platform. See Add a Credit Card to Your WhatsApp Business Platform Account.
You can now migrate a business phone number to and from Cloud API WhatsApp Business Accounts. See Migrate Phone Number to a Different WABA.
Cloud API
components.parameters.text
) for message templates that only use a body component (components.type:body
) can now total up to 32,768 characters. See Parameters object.Embedded Signup
Embedded Signup now supports mobile web browsers. The user interface will automatically optimize for a mobile experience when it detects that the viewer is using a mobile web browser.
Embedded Signup
Businesses that have been onboarded by a Solution Partner through the Embedded Signup or "On Behalf Of" process can now initiate up to 250 conversations with unique customers in a rolling 24-hour period, immediately.
Cloud API
about
field on business profiles is now supported. See Business Profiles for details.Cloud API
Latest documentation for requesting migration from 80 messages per second to 250 messages per second of combined sending and receiving of text and media messages is now available. See Throughput.
Cloud API
sticker
property and for animated sticker asset requirements.Cloud API
Announcing Backwards Incompatible Changes for Future Versions v2.43 and v2.45
v2.43
October 11, 2022v2.43
, there will be changes to the behavior of the contacts
endpoint
status
will change. Regardless of whether a user has WhatsApp, it will always return valid
for status
in the response and a wa_id
. There is no guarantee that the returned wa_id will be valid. These changes are applicable for both direct responses, as well as webhook responses for non-blocking calls status
and wa_id
returned in the contacts
node. In addition, sending a message on v2.39.1
or higher can be completed without calling the contacts
node Ensure your code handles a potential 1013
User is not valid error when trying to send a template message, which will be returned if you attempt to send the template message to a phone number without a WhatsApp account
For non template messages, sending a message to a phone number without a WhatsApp account will return a 470
error
v2.45
January 10, 2023Starting in v2.45
, the optional cert
parameter in the shards
node will become mandatory for all requests. Please update your integration to always include a valid cert
when calling the shards
node
Starting in v2.41.2
, businesses can use the application
node to filter out sent message statuses they are not interested in through the message
object within the webhooks
object. In v2.45
, sent_status
will be deprecated, so update your integration to use the webhooks
object in the application
node for all webhook controls
As of v2.39.1
, recipient_id
is available in both the statuses
object and in the message
object. In v2.45
, recipient_id
will be removed in the statuses
object, so update your integration to use recipient_id
under the message
object
On-Premises API v2.41.3
2.41.3
The v2.41.3
version of our Business API client includes:
Added a new table index on message_receipt_log
that could benefit partners with high throughput needs. For instance, this improvement allows partners to send more than 200 messages/second.
On-Premises API v2.41.2
In v2.41.2, we are introducing DB schema changes to improve the performance of the system. As a result, upgrades from v2.37.2 and v2.39.x for set ups with large databases which have millions of message and contact entries will take longer than usual.
Generally, perform upgrades during off-peak hours and upgrade lower-throughput setups first.
For large databases, follow these steps:
Once done, you will be able to upgrade API versions with minimal down time. It is strongly recommended to bring the API client down before using the dbupgrade tool.
Ensure the dbupgrade tool completes successfully (exit code 0), and avoid or limit API requests while the upgrade is taking place.
We recommend increasing the query timeout on your database servers to one hour, until the upgrade completes successfully.
This client version contains the following features and updates:
delivered
and read
webhook notifications which gives them greater control over webhook notifications for messages. This can be achieved through the settings/applications endpoint.namespace
field is optional for the template object.Cloud API
Starting today, the WhatsApp Business Cloud API is open to all developers building products or services for themselves or their organizations. To get started, see our guide. If you are interested in offering API access to your customers, please join our waitlist.
Business Management API
The following values for the category
parameter for the /WHATSAPP-BUSINESS-ACCOUNT-ID/message_template
endpoint have been deprecated for v14.0
and later:
|
|
|
The following values have been added:
TRANSACTIONAL
MARKETING
On-Premises API v2.39.4
This client version contains all features and fixes shipped with v2.39.1
. Additionally, this release:
v2.39.2
.v2.39.3
.v2.39.4
is installed, businesses will get notified they received a disappearing message by a webhooks notification with type set to "ephemeral"
. Businesses will not be able to see the message's content.When we launched v2.39.3
, the disappearing messages issue was handled by WhatsApp automatically disabling these messages in the chat thread with the client. For v2.39.4
, we will not do that. With this version, businesses that receive disappearing messages must ask the customer to disable disappearing messages and resend their latest message.
On-Premises API v2.3.8
2.3.8
AWS Service Templates
Cloud API
Starting today, the Cloud API includes the following upgrades:
On-Premises API 2.3.7
2.3.7
AWS Service Templates
Embedded Signup
We’re making it easier for businesses and partners to scale on the WhatsApp Business Platform with an improved onboarding experience. Starting May 2, 2022, businesses will be able to message customers immediately after signup and only need to complete Business Verification when they’re ready to scale business-initiated conversations or request to become an Official Business Account.
The changes mean that onboarded businesses will be able to:
These are the changes being implemented on May 2, 2022:
The changes listed above have no impact on pricing. See pricing for more details.
Cloud API
Starting today, the Cloud API is generally available to all existing Solution Partners and direct clients. Additionally, we’re releasing the following features for Cloud API developers:
POST
calls to PHONE_NUMBER_ID/deregister
in order to remove a phone number from the WhatsApp Business API. See Registration for information.referral
object is different from the On-Premises API's referral
object.Additionally, we are announcing that App Review is no longer required for first-party developers using the Cloud API. All developers are subject to the WhatsApp Business Platform messaging limits.
On-Premises API v2.37.2
This version contains the same features as v2.37.1
, but there's a different expiration date. v2.37.2
expires on Sep 22, 2022.
Some Kubernetes developers may see CrashLoopBackOff
for their webapp container and their container may fail to start. To fix that, add following line in the Kubernetes deployment YML
file under webapp configuration:
command: ["/opt/whatsapp/bin/wait_on_mysql.sh", "/opt/whatsapp/bin/launch_within_docker.sh"]
On-Premises API v2.39.3
The v2.39.3
version of our Business API client is available for developers today. The new client includes two fixes and additional logs to support debugging. The two fixes are:
Cloud API
Starting today, Cloud API beta users can start sending and list and reply button messages. See the following documentation for more details:
Starting today, Cloud API beta users can add a preview URL box to text messages that include a URL. See the following documentation for more details:
On-Premises API v2.39.2
We just released the On-Premises API v2.39.2
. This version fixes a bug that prevented video messages from being sent under certain circumstances.
Cloud API
Starting today, Cloud API beta users can start sending and receiving video messages. The following documentation provides more information:
WhatsApp Business Platform
Starting today, WhatsApp has switched from a notification-based pricing model to a conversation-based pricing model. Businesses are charged per conversation, which includes all messages delivered in a 24 hour session. See Conversation-Based Pricing for information.
Cloud API
On-Premises API v2.39.1
The 2.39.1
version of our Business API client is available for developers starting today. The new client includes:
1031
.hsm
type and the webhook_payload_conversation_pricingmodel_disabled
application setting.Starting with the new API client version, you may provide your phone’s certificate when you are setting up multiconnect. That means that, when calling the /v1/account/shards endpoint, you can add the Base64-encoded certificate in the cert field. See Scale Your API Client With Multiconnect for information.
We have added graph.whatsapp.com
to the list of WhatsApp server hostnames that the Business API client requires connectivity to. See Set Up and Debug Your Network, Hostnames for information.
With v2.39
, we have added error code 1031
. You will get this error if your account has been locked and can’t send any messages due to an integrity policy violation. See Error and Status Messages and Policy Enforcement for information.
hsm
type has been deprecated with v2.39
. You should use the template
type instead.webhook_payload_conversation_pricingmodel_disabled
has been deprecated.Some video messages fail to send under certain circumstances.