WhatsApp error 200: no access token provided
Error code 200 means the request reached Meta without an access token. Meta's description is "No access token was provided" and the API returns the message 'Provide valid app ID'. It appears on certain GET endpoints such as whatsapp_business_profile. Codes 200 to 299 also cover permissions that were not granted or have been removed.
Meta's code for "No access token was provided", returned with the message 'Provide valid app ID'.
The range Meta lists for a permission that was not granted or has been removed.
Without it, whatsapp_business_management calls on WABAs your business does not own return 200.
Also returned when a number is deregistered without the whatsapp_business_management permission.
Why does error 200 say 'Provide valid app ID'?
Because that is the message the API returns, even though the actual problem is a missing token.
Meta's error reference says code 200 occurs on certain GET endpoints, such as whatsapp_business_profile, when no token is included, and that the API returns the message 'Provide valid app ID'. The same reference notes that other endpoints may return 190 or 104 instead for the same omission.
So the wording points at the app ID, and the fix is the token. Check that the Authorization header is present and spelled correctly, and that the variable holding the token was actually populated when the request was built.
When does error 200 mean a missing permission instead?
When the token is present but the app lacks the permission the call needs.
Meta lists the range 200 to 299 as "Permission is either not granted or has been removed", with the same remedy as code 10: check the token in the access token debugger. Two specific cases are documented. The permissions guide says an app using whatsapp_business_management on WABAs its business does not own, without Advanced access, gets error 200. The registration guide says deregistering a number without whatsapp_business_management returns error 200. The access token guide adds a third: a System User token whose user has no access to the queried resource is rejected with 200.
Read the message text to tell the cases apart. A missing token says 'Provide valid app ID'.
How is error 200 different from error 190?
Error 190 means a token was sent and has expired. Error 200, in its first meaning, means no token was sent.
Meta's reference states this distinction directly: the remedy for 200 is to make sure the request includes a valid access token, and it calls the condition distinct from 190, which covers expired or invalid tokens.
That changes where to look. A 190 sends you to token lifetimes and renewal. A 200 with 'Provide valid app ID' sends you to the code that builds the request, because the credential never left your system.
Common mistakes
- Looking for an app ID problem. The message says app ID, but Meta's documented cause is a request with no token.
- Renewing the token when it was never sent. A new token that the request still omits produces the same error.
- Treating every 200 as a missing token. With a token present, the 200 to 299 range means a missing permission.
EasyCoexistence holds the credentials for each connection it onboards and shows the phone number ID and connection status on the dashboard, so a request can be checked against values Meta actually issued.
Frequently asked questions
Can error 200 appear on a working number?
Yes. It describes the request, not the number. A number in perfect health still rejects a call that arrives without a token.
Why did one endpoint return 200 and another 190?
Meta says that for a missing token some GET endpoints return 200, while other endpoints may return 190 or 104.
Does deregistering a number need a special permission?
Yes. Meta's registration guide says deregistering without whatsapp_business_management returns error 200.
Is error 200 related to error 10?
In its permission meaning, yes. Both carry the description that a permission was not granted or has been removed.
Keep reading
Ready to get started?
Set up WhatsApp Coexistence in minutes, not months. The app keeps working on the phone.
Start Free TrialVerified on