Historik och felsökning
Läs historiken över anrop, förstå alla avvisningskoder, använd Live Request Inspector och spela upp tidigare händelser.
Varje förfrågan som når en webhook registreras - oavsett om den godkänns eller avvisas. Logghistoriken är det första stället man bör titta på när något inte har hänt.
Att läsa en invokation
Öppna ”Historik” och klicka på en post. Du får se tidsstämpel, status, avsändare, varaktighet, datainnehåll, de (maskerade) begärandehuvudena, frågesträngen samt, vid misslyckanden, felmeddelandet och alla försök till omförsök.
| Status | Betydelse |
|---|---|
| Väntar på beslut | Godkänt och i kö, ännu inte överfört till Shopify Flow |
| Framgång | Shopify Flow har godkänt utlösaren |
| Misslyckades | Leveransen misslyckades permanent - på detaljsidan framgår orsaken |
Kolumnen ”Invoked by” visar varifrån ett anrop kom: User (ett externt system), Flow (en Shopify Flow-åtgärd som anropar webhooken), Test (knappen ”Test”) eller CURL.


Avslag och vad de olika innebär
En avvisad begäran når aldrig Shopify Flow. Svarets innehåll innehåller en maskinläsbar code:
| Kod | HTTP | Vad gick fel? | Åtgärd |
|---|---|---|---|
webhook_not_found |
404 | Okänd kortkod | Kontrollera webbadressen; webhooken kan ha tagits bort |
webhook_disabled |
400 | Webhook är avstängd | Aktivera den på webhook-sidan |
unauthorized |
401 | Token saknas eller är felaktigt | Kontrollera token och rubriknamnet |
missing_signature |
401 | HMAC-läge, utan signaturhuvud | Skicka den signaturhuvudrad som din förinställning förväntar sig |
invalid_signature |
401 | Signaturen stämde inte överens | Kontrollera att signeringsnyckeln stämmer och att meddelandetexten inte har ändrats under överföringen |
auth_not_configured |
401 | Autentiseringsläget är inställt men ingen token har sparats | Spara en token i webhooken |
invalid_json |
400 | Data är inte giltig JSON | Skicka giltig JSON, eller ange den Content-Type som din kropp faktiskt har (formulärdata och XML läses också in) |
invalid_body |
400 | Ett formulär eller en XML-textdel kunde inte läsas, eller så är textdelen värden null |
Skicka ett JSON-objekt eller ett meddelandekropp som överensstämmer med dess Content-Type |
mapping_field_missing |
400 | Ett kartlagt fält saknas i nyttolasten | Skicka fältet eller ta bort kopplingen |
unexpected_fields |
400 | Objektet har fält som inte är mappade | Kartlägg dem, ta bort dem eller aktivera alternativet ”Tillåt anpassad förfrågningstext” |
ip_not_allowed |
403 | Den som ringer har inte sin adress med på webhookens lista över tillåtna IP-adresser | Se IP-tillåtelselistor |
invalid_proxy_signature |
401 | Appens proxyadress anropades direkt istället för via din butiks domän | Använd webhook-URL:en exakt så som den visas i appen - se CORS, appens proxy-URL och webbläsarens anrop |
payload_too_large |
413 | Shopify Flow-dataöverföring på över 50 KB | Skicka mindre data eller stäng av knapparna för begäran om data |
quota_exceeded |
400 | Planens gräns har uppnåtts | Se Planer och användning |
Live Request Inspector
När du har en webhook öppen i redigeraren visar inspektorn vilka förfrågningar som kommer in i realtid - även de som avvisats, tillsammans med orsaken. Det här är det absolut snabbaste sättet att felsöka en avsändare: skicka en förfrågan och se hur den tas emot.
Även borttagna dubbletter visas här, märkta som sådana - se Skydd mot dubbla leveranser.
Spela om
Alla tidigare anrop kan spelas upp från respektive detaljsida. Vid uppspelning skickas samma data igen via samma webhook.
Två saker som den är särskilt bra för:
- Skapa ett arbetsflöde i Shopify Flow. Registrera händelser i webhook-utlösaren och spela sedan upp en verklig Ring så att Shopify Flow:lär sig dina faktiska fältnamn.
- Återställa efter ett avbrutet arbetsflöde. Åtgärda felet i arbetsflödet och kör sedan om de händelser som redan har körts även om det var fel.
Replays markeras som sådana i historiken och räknas inte in i ditt abonnemang.
Vanliga situationer
Anrop kommer in men arbetsflödet körs inte. Det beror nästan alltid på villkoret för webhook-ID. Ett arbetsflöde med webhook-utlösare tar emot händelser från alla webhooks som du äger, så det krävs ett villkor som matchar det specifika webhook-ID:t - se Skapa din första webhook.
Arbetsflödet körs två gånger. Antingen använder två arbetsflöden webhook-utlösaren utan specifika villkor, eller så gör din avsändare ett nytt försök. Historiken visar vilket av alternativen som gäller: två poster innebär att två förfrågningar har kommit in. Aktivera Skydd mot dubbla leveranser.
Det finns inget alls i historiken. Förfrågan nådde aldrig fram till oss. Kontrollera URL:en och kortkoden, och se till att avsändaren inte har några problem med TLS eller DNS på sin sida.
Statusen fastnar på ”Väntar”. Leveransen försöks på nytt med backoff; vid ett permanent fel ändras statusen till ”Misslyckades” med angiven orsak. Om statusen förblir ”Väntar” ovanligt länge, kontrollera status.codecreationlabs.cloud.
