The following scenarios can cause a message to appear as sent but not delivered. For many of these reasons, we will not disclose the underlying cause of the error, due to privacy and policy reasons.
In some scenarios, the API returns an error code with an error message describing the nature of the error. Example scenarios:
Using a non-WhatsApp communication method, ask the WhatsApp user to:
Businesses in Cuba, Iran, North Korea, Syria, and three sanctioned regions in Ukraine (Crimea, Donetsk, Luhansk) are not eligible to use the WhatsApp Business Platform.
WhatsApp Messenger (WhatsApp) and WhatsApp Business app users in Cuba, Iran, North Korea, Syria, and three sanctioned regions in Ukraine (Crimea, Donetsk, Luhansk) are not eligible to receive messages sent via the WhatsApp Business Platform.
As of May 15, 2024, Türkiye is no longer restricted for Cloud API business messaging. Cloud API businesses can now initiate conversations and receive messages from WhatsApp users with Turkish numbers.
In rare cases, the same message may trigger both success and failure message status update webhooks. For example, a message may trigger message webhooks with "status":"delivered"
and another webhook with "status":"failed"
. This can happen when a customer is logged in to WhatsApp on multiple devices and the message is successfully delivered to one device but not the other. Any message that triggers a "delivered"
message status webhook has been delivered to at least one of the user's devices.
2
- API ServiceWhen we update the API, you may experience up to 5 minutes of downtime. During this period of time, the service is unavailable. We try to make these updates with minimal disruption to businesses, but you may end up being affected
We suggest that you wait 5 minutes and try to make the API call again.
These errors are returned when there was a problem with the access token you are using for the API call.
You can directly paste the access token you are using into the Access Token Debugger. Then, check if you have selected the whatsapp_business_management
and whatsapp_business_messaging
permissions.
If your token doesn’t have access to the permissions, you need to generate a new one. While generating the token, make sure to select:
whatsapp_business_management
and whatsapp_business_messaging
WhatsApp develops and operates the WhatsApp Business API, which enables businesses to communicate with WhatsApp consumer users on the WhatsApp network. When using the Cloud API, Meta will host the WhatsApp Business API for you and provide an endpoint for the WhatsApp service for your incoming and outgoing WhatsApp communications.
Please view information about the sunset of the On-Premises API.
Access to Cloud API is free, and we expect it to generate additional cost savings for developers, as Meta hosts and maintains the Cloud API.
We want to make it clear what it means to message with a business on WhatsApp. Some businesses may choose to use Meta or another company to help them manage and store their messages. When a business chooses to manage their messages with another company, we will let consumers know by showing a different system message. Learn more.
The Cloud API architecture significantly simplifies the Solution Partner's operational and infrastructure requirements to integrate with WhatsApp Business Platform. First, it removes the infrastructure requirements to run Business API docker containers (CAPEX savings). Second, it obviates the need of operational responsibilities to manage the deployment (OPEX savings). For details, refer to the architecture diagram comparing the On-Premises and Cloud API deployments.
Solution Partners and direct clients do not need the WebApp and CoreApp containers that are used in the On-Premises API. Meta will manage all database data and media data on behalf of the Solution Partner or direct client.
As your on-premises performance depends heavily on your hardware, software, and connectivity to WhatsApp servers, if you wish to understand these differences, you can perform your own load tests on Cloud API as you might have done for your own on-premises installation. You can also refer to our performance comparison to understand more details around how the on-premise and Cloud APIs compare.
Migrating between the on-premises and Cloud APIs is seamless, and can be done bidirectionally. See migration details for more information.
Please view our WhatsApp Business API Status Page for Cloud API specific observability metrics.
Please view the API Status Page document for more details.
Availability is updated once a day.
There could be situations where certain user errors can be automatically counted incorrectly toward downtime. In these situations, we will override the downtime to uptime after detailed analysis within a week.
There may be issues that do not impact our global availability. In these cases, the WhatsApp Business API Status Page will have a status to reflect that there may be some disruptions that are not affecting global availability. Please submit a Direct Support ticket to investigate further.
There are the cases where downtimes in availability are not automatically tracked:
Any issues that surface before admission into our system after this point will appear as either error or missed success. Also issues encountered after the first attempt to emit the webhook will continue to be retried, until it is successfully delivered to the webhook endpoint.
The other cases that are reflected in the availability dashboard after manual detection are (not system error):
In both cases WhatsApp will detect and account for those issues after the fact, near real time, but not real time.
We do not currently offer commercially available product service level agreements for uptime and/or latency.
We will have disaster recovery and data replication across multiple regions. The expected downtime would be within our SLA and usually in the order of less than a minute to less than five minutes.