Status codes

Interpret the HTTP status codes returned by the RESTful API, for developers handling API responses and errors.

The HTTP status codes returned by the RESTful API. The meaning of each code follows the response descriptions in the API Reference.

CodeMeaning
200 OKThe request was successful.
201 CreatedA new object was created, for example a code generator, a list, or a message template.
202 AcceptedThe request was accepted for processing. The final result is not part of this response. For messages, the delivery status arrives later through callbacks; see the status guides.
206 Partial ContentReturned by the WhatsApp message template creation endpoints when Meta reports an error for part of the template, for example when content already exists for a language. The response body includes errors.reason and errors.details.
400 Bad RequestThe request is not valid. The response includes a JSON body with the error reason (errors.reason).
401 UnauthorizedThe request could not be authenticated. The API Reference describes cases such as a missing or malformed API key and "User not allowed".
403 ForbiddenYou do not have permission to perform the operation.
404 Not FoundThe requested object does not exist, for example a list, a template, a code generator, or a request ID.
409 ConflictThe object already exists or the data is duplicated, for example a contact that is already on a list or blocklist.
410 GoneThe API Reference endpoint pages describe this response as "Token expired" (expired JWT). Create a new API key; see Access your API key.
412 Precondition FailedA required precondition for the operation is not met.
422 Unprocessable EntityThe request is well formed but cannot be processed. Documented for creating a code generator.
429 Too Many RequestsThe rate limit was exceeded. Documented for the notification endpoint.
500 Internal Server ErrorThe server encountered an unexpected error.
502 Bad GatewayDocumented for creating carousel message templates: the authorization with Meta failed.

Not every endpoint documents every code. Check the Responses section of each endpoint in the API Reference for the exact cases and response bodies.