Kody błędów WhatsApp Cloud API
To wszystkie udokumentowane przez nas kody błędów WhatsApp Cloud API, zebrane w jednej tabeli wraz ze znaczeniem i informacją, czy ponowienie żądania pomoże. Większość nie pomoże: błędy są deterministyczne, więc to samo żądanie kończy się tak samo, a pętla ponowień zmienia nieprawidłowe żądanie w przekroczenie limitu.
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
Jak czytać kolumnę ponowienia
Zawiera trzy wartości, a błędny wybór między nimi jest najkosztowniejszą pomyłką w całym tym zestawieniu.
„Nie” oznacza, że błąd jest deterministyczny. Nie powiodło się żądanie, szablon lub stan odbiorcy, a ponowne wysłanie identycznego żądania wywoła ten sam błąd i zużyje przepustowość potrzebną później. „Tak” oznacza, że błąd leżał po stronie Meta i właściwe opóźnienie rzeczywiście go rozwiązuje. „Poczekaj” oznacza, że przyczyna jest rzeczywista, lecz tymczasowa: to limit lub blokada, która znika samoistnie. Ponowienie przed jej usunięciem nic nie daje i może ją przedłużyć.
Dlaczego większości z nich nie należy ponawiać
Ponieważ platforma zwraca konkretne kody zamiast ogólnych. Nieprawidłowy parametr, nieistniejący szablon, zamknięte okno wiadomości i odbiorca, który zrezygnował z otrzymywania wiadomości, są znane w chwili udzielenia odpowiedzi, więc Meta nazywa je wprost, zamiast kończyć żądanie niejasnym błędem.
- Problem z żądaniem nie stanie się poprawny przy drugiej próbie.
- Problem z szablonem tkwi w szablonie, którego żądanie nie może zmienić.
- Problem z oknem lub rezygnacją odbiorcy dotyczy jego stanu, nie Twojego.
- Ograniczenie konta jest decyzją, a ponowienie żądania nie jest odwołaniem.
Co rejestrować po otrzymaniu jednego z tych kodów
Tyle, by zdiagnozować problem bez jego odtwarzania. To różnica między pięciominutową naprawą a całym dniem zgadywania.
- Pełną odpowiedź z błędem, w tym trace id, o które prosi pomoc Meta.
- Treść żądania w wysłanej postaci, nie w zamierzonej. Różnica między nimi jest zwykle źródłem problemu.
- Identyfikator numeru telefonu, aby odróżnić problem jednego numeru od problemu całego konta.
- Znacznik czasu, aby sprawdzić błąd względem stanu połączenia w danym momencie.
Kody występujące tylko w Coexistence
Są dwa i powodują zamieszanie, bo wyglądają jak zwykłe błędy wysyłania. 2593107 i 2593108 dotyczą synchronizacji historii czatów, czyli etapu kopiowania ostatnich rozmów z aplikacji WhatsApp Business po pierwszym połączeniu numeru.
Nie są to błędy wiadomości i nie oznaczają nieudanego połączenia. Jeśli synchronizacja przekroczy limit lub odbędzie się poza wyznaczonym oknem, numer pozostanie połączony i będzie normalnie wysyłać wiadomości, ale skopiuje się mniej historii, niż oczekiwano. Odczytanie tych kodów jako zerwanego połączenia prowadzi do odłączenia numeru i rozpoczęcia od nowa, co powoduje utratę większej części historii zamiast jej odzyskania.
Najczęściej zadawane pytania
Które błędy należy ponawiać?
131016 i 131000, z wykładniczym zwiększaniem opóźnienia. 130429, 132015 i 133008 znikają samoistnie po odczekaniu. Wszystkie pozostałe są deterministyczne.
Czy kod błędu oznacza, że mój numer jest odłączony?
Zwykle nie. Większość tych kodów dotyczy żądania, szablonu lub odbiorcy. Problemy z połączeniem pojawiają się jako webhooki konta i jakości, a nie jako błędy wysyłania.
Czym jest trace id?
To identyfikator w odpowiedzi z błędem, który pozwala pomocy Meta znaleźć konkretne żądanie. Rejestruj go przy każdym błędzie, bo bez niego nie da się skutecznie obsłużyć zgłoszenia.
Czy te kody są takie same u każdego dostawcy?
Tak. Pochodzą z Cloud API Meta, więc są identyczne niezależnie od dostawcy, który połączył numer. Dostawca może jedynie zmienić sposób, w jaki do Ciebie docierają.
Gotowy, aby zacząć?
Skonfiguruj WhatsApp Coexistence w kilka minut, nie miesięcy. Aplikacja nadal działa na telefonie.
Rozpocznij bezpłatny okres próbnyPrzez 7 dni nic nie zapłacisz. Anuluj w dowolnym momencie.