Historikk og feilsøking
Les historikken over anrop, få oversikt over alle avvisningskoder, bruk Live Request Inspector og gjenta tidligere hendelser.
Hver forespørsel som kommer inn til en webhook, blir loggført - uansett om den blir godkjent eller avvist. Logghistorikken er det første stedet man bør sjekke når noe ikke har skjedd.
Å lese en bønn
Åpne Historikk og klikk på en oppføring. Du får tidsstempel, status, oppringeren, varighet, nyttelasten, de (maskerte) forespørselshodene, spørringsstrengen, og ved feil: feilmeldingen og hvert nytt forsøk.
| Status | Betydning |
|---|---|
| Venter på behandling | Godkjent og satt i kø, men ennå ikke levert til Shopify Flow |
| Suksess | Shopify Flow har godkjent utløseren |
| Mislykket | Leveringen mislyktes permanent - på detaljsiden kan du se hvorfor |
Kolonnen Invoked by viser hvor et anrop kom fra: User (et eksternt system), Flow (en Shopify Flow-handling som utløser webhooken), Test (Test-knappen) eller CURL.


Avslag, og hva hvert enkelt betyr
En avvist forespørsel når aldri Shopify Flow. Svarteksten inneholder en maskinlesbar code:
| Kode | HTTP | Hva gikk galt? | Løsning |
|---|---|---|---|
webhook_not_found |
404 | Kortkode ukjent | Sjekk nettadressen; webhooken kan ha blitt slettet |
webhook_disabled |
400 | Webhook er slått av | Aktiver den på webhook-siden |
unauthorized |
401 | Token mangler eller er feil | Kontroller tokenet og navnet på overskriften |
missing_signature |
401 | HMAC-modus, uten signaturhode | Send signaturhodet som forhåndsinnstillingen din forventer |
invalid_signature |
401 | Signaturen stemte ikke overens | Bekreft signeringsnøkkelen og at innholdet ikke er endret under overføringen |
auth_not_configured |
401 | Autentiseringsmodus er angitt, men ingen token er lagret | Lagre et token på webhooken |
invalid_json |
400 | Dataene er ikke gyldig JSON | Send gyldig JSON, eller angi den Content-Type-typen som selve brødteksten faktisk har (skjemaopplysninger og XML leses også) |
invalid_body |
400 | Det var ikke mulig å lese et skjema eller en XML-tekstdel, eller tekstdelen er den bokstavelige verdien null |
Send et JSON-objekt eller en brødtekst som samsvarer med Content-Type-hodet |
mapping_field_missing |
400 | Et kartlagt felt mangler i nyttelasten | Send feltet, eller fjern tilknytningen til det |
unexpected_fields |
400 | Objektet har felt som ikke er tilordnet | Kartlegg dem, fjern dem eller aktiver Tillat tilpasset forespørselstekst |
ip_not_allowed |
403 | Innringerens adresse står ikke på webhookens liste over tillatte IP-adresser | Se IP-tillatelseslister |
invalid_proxy_signature |
401 | Appens proxyadresse ble anropet direkte, i stedet for via nettbutikkens domene | Bruk webhook-URL-en nøyaktig slik den vises i appen - se CORS, appens proxy-URL og nettleserforespørsler |
payload_too_large |
413 | Shopify Flow-data på over 50 KB | Send mindre, eller slå av bryterne for forespørselsdata |
quota_exceeded |
400 | Planens grense er nådd | Se Planer og bruk |
Live Request Inspector
Når du har en webhook åpen i redigeringsverktøyet, viser inspektoren forespørsler som kommer inn i sanntid - inkludert de som blir avvist, med begrunnelse. Dette er uten tvil den raskeste måten å feilsøke en avsender på: send en forespørsel og se hvordan den blir mottatt.
Også undertrykte duplikater vises her, merket som sådan - se Beskyttelse mot dobbeltlevering.
Gjenta
Alle tidligere utløsninger kan spilles av på detaljsiden for den aktuelle utløsningen. Ved avspilling sendes den samme nyttelasten på nytt via den samme webhooken.
Det er veldig bra til to ting:
- Opprette en arbeidsflyt i Shopify Flow. Registrer hendelser i Webhook-utløseren, og spill deretter av en ekte Kjør kommandoen slik at Shopify Flow lærer seg de faktiske feltnavnene dine.
- Gjenopprette etter en avbrutt arbeidsflyt. Rett opp arbeidsflyten, og kjør deretter hendelsene som ble utført på nytt selv om det var feil.
Gjengivelser er merket som sådan i historikken og teller ikke med i abonnementet ditt.
Vanlige situasjoner
Det kommer inn anrop, men arbeidsflyten kjører ikke. Nesten alltid skyldes dette betingelsen for webhook-ID. En arbeidsflyt med «Webhook Trigger» mottar hendelser fra alle webhooker du eier, så den trenger en betingelse som samsvarer med den spesifikke webhook-ID-en - se Opprett din første webhook.
Arbeidsflyten kjører to ganger. Enten bruker to arbeidsflyter «Webhook Trigger» uten spesifikke betingelser, eller så prøver avsenderen på nytt. Loggen viser hva som er tilfelle: to oppføringer betyr at det kom inn to forespørsler. Slå på Beskyttelse mot dobbeltlevering.
Det står ingenting i historikken. Forespørselen kom aldri frem til oss. Sjekk URL-adressen og kortkoden, og at avsenderen ikke har problemer med TLS eller DNS på sin side.
Statusen står fast på Venter. Leveringen forsøkes på nytt med backoff; ved en permanent feil endres statusen til «Mislykket» med angivelse av årsaken. Hvis statusen forblir «Venter» uvanlig lenge, sjekk status.codecreationlabs.cloud.
