result a result_info doručená na vaši webhook callback URL poté, co byla zpráva odeslána. Pochopení obou povrchů vám pomůže rozlišit mezi selháními na úrovni požadavku (kde se nic neodeslalo) a selháními na úrovni doručení (kde byla zpráva přijata, ale nedosáhla příjemce).
HTTP status kódy
Následující tabulka pokrývá všechny HTTP status kódy, které můžete obdržet z SmsManager API. Odpověď200 znamená, že server přijal váš požadavek — ale stále byste měli zkontrolovat pole rejected v těle odpovědi pro zachycení případných selhání jednotlivých příjemců.
Odpověď
200 z /message nebo /messages nezaručuje, že každý příjemce zprávu obdržel. Vždy kontrolujte pole rejected v těle odpovědi a sledujte webhook callbacky pro finální výsledky doručení.Hodnoty result zprávy
Po odeslání zprávy SmsManager doručí jeden nebo více webhook callbacků na vaši nakonfigurovanou callback URL. Každý callback obsahuje poleresult, které odráží aktuální stav doručení zprávy. Můžete obdržet více callbacků pro stejnou zprávu, jak se její stav vyvíjí (například sending → sent → delivered).
Stavové kódy a hodnoty result_info
Každý stav odeslané zprávy má číselný stavový kód (status_code). Tabulka uvádí všechny stavové kódy a jejich mapování na pole result a result_info ve webhooku.
Pomlčka (—) znamená, že SmsManager pro daný stav pole
result_info nevyplňuje.
Pole
result_info je nepovinné. Ve webhook události může chybět nebo být prázdné. Logiku vaší aplikace stavte na poli result a result_info používejte pro logování, diagnostiku a podporu.GET /message v REST API: stav odeslání v poli status_code a stav doručení v poli delivery_code. Nepleťte si tyto kódy s chybovými kódy HTTP/XML API, které mají vlastní číslování.
Hodnoty od poskytovatele kanálu
Kromě hodnot z tabulky můžeresult_info obsahovat chybu, kterou vrátil poskytovatel kanálu, hlavně WhatsApp. Tyto hodnoty mají formát [kód] Popis, ale kterákoli část může chybět:
WhatsApp chybové kódy (jako
131042) sledují WhatsApp error code referenci Mety. Ohledně úplného seznamu specifických WhatsApp kódů a jejich významu se podívejte na dokumentaci Mety.Běžné chyby a jejich řešení
Neplatný API klíč
Neplatný API klíč
Váš požadavek byl odmítnut, protože API klíč chybí, je poškozený nebo neodpovídá žádnému aktivnímu klíči na vašem účtu.Řešení: Přihlaste se na app.smsmanager.com/api-cloud a zkopírujte váš aktuální API klíč. Předejte jej v každém požadavku pomocí hlavičky Alternativně jej můžete předat jako query parametr
x-api-key:apikey, i když přístup přes hlavičku je doporučený z bezpečnostních důvodů.Nedostatečný kredit
Nedostatečný kredit
Váš účet nemá dostatek kreditu k odeslání požadovaných zpráv. Postihované zprávy se objeví s
result: rejected a result_info: [307] Insufficient credit ve vašich webhook callbaccích.Řešení: Dobijte kredit účtu na app.smsmanager.com. Po dobití neuspělé zprávy zopakujte.Neplatné telefonní číslo
Neplatné telefonní číslo
Telefonní číslo, které jste poskytli, nebylo možno parsovat nebo normalizovat na platné E.164 číslo.Řešení: Použijte formát E.164 bez úvodního Kompletní seznam přijatých formátů najdete v Telefonní čísla.
+ nebo 00. Například české číslo +420 777 123 456 by mělo být odesláno jako:Zpráva odmítnuta
Zpráva odmítnuta
Zpráva se objeví v poli
rejected odpovědi API nebo dorazí do vašeho webhooku s result: rejected.Řešení: Přesnou příčinu ve webhooku obvykle najdete v poli result_info — jeho kód vyhledejte v tabulce stavových kódů výše. Dvě nejčastější příčiny jsou nedostatečný kredit a neplatné telefonní číslo. Zkontrolujte obojí:- Ověřte kreditní zůstatek na app.smsmanager.com.
- Potvrďte, že telefonní číslo je ve formátu E.164 bez úvodního
+(např.420777123456).
Zpráva ukazuje 'sent' ale ne 'delivered'
Zpráva ukazuje 'sent' ale ne 'delivered'
Obdrželi jste webhook s
result: sent, ale nikdy jste neobdrželi navazující callback result: delivered.To je v mnoha případech normální. Stav sent znamená, že operatér přijal zprávu, ale potvrzení doručení (DLR) závisí na tom, zda operatér podporuje potvrzení a zda je zařízení příjemce dostupné. Někteří operatoři a sítě nevracejí potvrzení doručení vůbec.Pokud je zpráva časově citlivá, zvažte použití záložního kanálu (např. SMS → Viber) přes parametr flow.Unsupported Media Type (415)
Unsupported Media Type (415)
Obdrželi jste odpověď Všechny ostatní JSON API v2 endpointy (
415 Unsupported Media Type při volání simple POST endpointu.Řešení: Endpoint POST /simple/message vyžaduje form-encoded data, ne JSON. Nastavte hlavičku Content-Type na:/message, /messages) přijímají application/json.Chybové kódy Verify API
Verify API vrací strukturované chybové objekty se strojově čitelným kódemerror spolu s čitelným message. Ve vaší aplikační logice používejte pole error pro zpracování konkrétních podmínek selhání.