whatsapp.message.updated webhooks. A message can fail when YCloud validates your request, when it submits the message to WhatsApp, or after WhatsApp accepts the message for delivery. Use the returned code and details to identify the cause before retrying.
Find the error code
The queued endpoint returns before the message is submitted to WhatsApp, so its initial response cannot report a later submission failure. The synchronous endpoint reports the submission result, but the message can still fail afterward. An accepted request does not confirm delivery; monitor webhooks for both endpoints.
Read the code and details
Keep the YCloud request error and the upstream WhatsApp error separate. For example, a synchronous response can containerror.code: "TOO_MANY_REQUESTS" and error.whatsappApiError.code: "131056". The first describes the API response; the second identifies the sender–recipient rate limit.
For a failed-message webhook, whatsappMessage.errorCode can contain either a YCloud code such as BALANCE_INSUFFICIENT or a WhatsApp code such as 131048. Preserve it as a string.
When whatsappApiError is available, inspect its code and error_data for the specific cause. For message API errors, error_data can contain a details property; for template API errors, it can instead be a string. Match codes rather than error titles or message text, which can change.
The numeric codes below describe upstream WhatsApp failures. For YCloud codes such as UNAUTHORIZED, PARAM_INVALID, or BALANCE_INSUFFICIENT, see Handle errors.
See Send a WhatsApp message for the sending endpoints and Configure webhooks to receive message status updates.
Sending limits and quality restrictions
See Quality and delivery controls for quality and recipient-level restrictions.
Recipient and delivery errors
Template and Flow message errors
Check the exact template name, language, status, and component definitions in YCloud before retrying.
See Manage WhatsApp templates and Manage WhatsApp Flows.
Message parameters and media
See Send a WhatsApp message and Upload WhatsApp media.
Account, phone number, and billing
Marketing message errors
These errors can occur when YCloud submits a message through Meta’s Marketing Messages API. Use the returned details to distinguish template, synchronization, and routing issues.
For this route,
100 can mean that the message must be a template, and 131009 can indicate invalid parameters or incomplete template synchronization. Use the returned details to distinguish these causes. For incomplete synchronization, wait 10 minutes before retrying.
Temporary service errors
Retry and escalate
- Correct invalid parameters, template status, account restrictions, and media problems before retrying.
- Respect recipient opt-outs and blocks. Do not retry those failures automatically.
- Use exponential backoff, jitter, and a maximum attempt count for temporary failures. Apply any waiting period specified above or in the response.
- Before resending after a timeout or an ambiguous response, reconcile the message status to avoid duplicates.
externalIdis a correlation field; do not assume it deduplicates sends.
requestId, message id, and wamid or fbtrace_id when available. Remove API keys and unnecessary personal data.
