Mga error code ng WhatsApp Cloud API
Narito ang lahat ng error code ng WhatsApp Cloud API na dokumentado namin, nasa isang table, kasama ang kahulugan ng bawat isa at kung makakatulong ang pag-retry. Karamihan ay hindi: deterministic ang mga ito, kaya pareho ang bagsak ng parehong request at maaaring gawing rate limit ng retry loop ang maling request.
Request
| Code | What it means | Retry |
|---|---|---|
| 100 | A parameter is unsupported, misspelled or malformed. | No |
| 131008 | A required parameter was not included at all. | No |
| 131009 | A parameter is present with a value the endpoint rejects. | No |
| 131021 | Sender and recipient are the same number. | No |
| 131051 | The message type is not supported, often a Coexistence limit. | No |
| 131052 | Meta could not download media a customer sent. | No |
| 131053 | Meta could not upload media you sent. Size, format or reach. | No |
Template
| Code | What it means | Retry |
|---|---|---|
| 132000 | The number of parameters does not match the template. | No |
| 132001 | No template exists with that name and language pair. | No |
| 132007 | The template breaks messaging policy. Rewrite and resubmit. | No |
| 132012 | Parameter format does not match what the template defines. | No |
| 132015 | The template is paused after a quality decline. Temporary. | Wait |
| 132016 | The template is permanently disabled. It will not come back. | No |
Window and recipient
Registration and PIN
| Code | What it means | Retry |
|---|---|---|
| 131045 | The number was never registered for Cloud API messaging. | No |
| 133010 | The number is not registered. Registration must be completed. | No |
| 133006 | The number must be verified before it can be registered. | No |
| 133005 | The two-step verification PIN was wrong. Stop guessing. | No |
| 133008 | Too many PIN attempts. Registration is locked for a period. | Wait |
Access and account
| Code | What it means | Retry |
|---|---|---|
| 190 | The access token expired or was invalidated. | No |
| 368 | The account is restricted after a policy violation. | No |
| 131031 | The account is restricted, or its data does not match Meta's. | No |
| 131042 | A payment problem on the business account blocks sending. | No |
| 131049 | Meta blocked the message to protect ecosystem health. | No |
Rate limits
Transient
Coexistence sync
Paano basahin ang retry column
Mayroon itong tatlong value, at ang maling pagpili sa mga ito ang pinakamagastos na pagkakamali sa buong reference na ito.
Ang No ay nangangahulugang deterministic ang failure. Ang request, template o state ng recipient ang may problema, at ang muling pagpapadala ng parehong request ay magbubunga ng parehong error habang kumokonsumo ng throughput na kakailanganin ninyo sa susunod. Ang Yes ay nangangahulugang sa panig ng Meta nangyari ang failure at tunay na malulutas ito ng backoff. Ang Wait ay nangangahulugang totoo pero pansamantala ang kondisyon: limit o lock na kusang nawawala, kaya walang nagagawa ang pag-retry bago ito mawala at maaari pa itong mapahaba.
Bakit hindi maaaring i-retry ang karamihan sa mga ito
Dahil partikular na code, hindi generic, ang ibinabalik ng platform. Ang maling parameter, template na wala, saradong messaging window at recipient na nag-opt out ay malalaman na sa oras ng response, kaya pinapangalanan ito ng Meta sa halip na mag-fail nang malabo.
- Hindi nagiging tama ang problemang nasa request sa ikalawang attempt.
- Nasa template ang problema sa template, at hindi ito kayang baguhin ng request.
- Tungkol sa state ng recipient, hindi sa inyong state, ang problema sa window o opt-out.
- Desisyon ang restriction sa account, at hindi apela ang pag-retry.
Ano ang dapat i-log kapag dumating ang isa sa mga ito
Sapat na impormasyon para ma-diagnose ito nang hindi na kailangang i-reproduce, na siyang pagkakaiba ng limang minutong pag-aayos at isang araw ng paghuhula.
- Ang buong error response, kasama ang trace id na hinihingi ng Meta support.
- Ang request body na naipadala, hindi ang nilayon ninyong ipadala. Karaniwang nasa pagitan ng dalawang ito ang bug.
- Ang phone number id, para matukoy kung sa isang numero lang ang problema o sa buong account.
- Ang timestamp, para maikumpara ang failure sa state ng koneksyon sa sandaling iyon.
Mga code na umiiral lamang sa Coexistence
Dalawa ang mga ito, at nakalilito dahil mukha silang ordinaryong send failure. Parehong tungkol sa chat history synchronisation ang 2593107 at 2593108. Ito ang hakbang na kumokopya ng mga kamakailang conversation mula sa WhatsApp Business app kapag unang na-connect ang isang numero.
Hindi mga messaging error ang mga ito at hindi ibig sabihin na nag-fail ang koneksyon. Kapag lumampas sa limit nito ang sync o tumakbo sa labas ng window, mananatiling connected at normal na magse-send ang numero, pero mas kaunti ang makokopyang history kaysa inaasahan. Kapag binasa ito bilang sirang koneksyon, maaaring i-disconnect at magsimula ulit ang mga user, na mas maraming history ang nawawala sa halip na nababawi.
Mga madalas itanong
Aling mga error ang dapat i-retry?
131016 at 131000, na may exponential backoff. Kusang nawawala ang 130429, 132015 at 133008 kapag naghintay kayo. Deterministic ang lahat ng iba pa.
Ibig bang sabihin ng error code ay disconnected ang numero?
Karaniwan, hindi. Karamihan ay tungkol sa request, template o recipient. Lumalabas ang mga problema sa koneksyon bilang account at quality webhook, hindi bilang send error.
Ano ang trace id?
Isang identifier sa error response na tumutulong sa Meta support na hanapin ang partikular na request. I-log ito sa bawat failure; kung wala ito, hindi maaaksyunan ang ticket.
Pareho ba ang mga code na ito sa bawat provider?
Oo. Mula ang mga ito sa Cloud API ng Meta, kaya pareho ang mga ito kahit sinong provider ang nag-connect ng numero. Ang mababago lang ng provider ay kung gaano kalinaw na nakararating sa inyo ang mga ito.
Handa na po ba kayong magsimula?
I-set up ang WhatsApp Coexistence sa loob ng ilang minuto, hindi buwan. Patuloy na gumagana ang app sa telepono.
Magsimula ng Libreng TrialWalang sisingilin sa loob ng 7 araw. Mag-cancel anumang oras.