Skapa din första webhook

Skapa din första webhook

Kopiera sidan

Steg för steg: skapa en webhook-ändpunkt, autentisera den, mappa din payload och koppla den till ett Shopify Flow-arbetsflöde.

Här får du en steg-för-steg-guide från en tom app till ett Shopify Flow-arbetsflöde som körs när ditt eget system ger signal om det. Det tar ungefär tio minuter.

1. Skapa en webhook

Webhooks -> Skapa webhook. På sidan frågas först vad som ska utlösa denna webhook, och inställningarna anpassas därefter:

Ditt svar Vad du får
Ett automatiseringsverktyg (n8n, Make, Zapier, egen kod) Ett genererat token, klart att klistra in i verktyget
En tjänst som signerar sina webhooks (Stripe, GitHub, ...) Verifiering av signatur för den tjänst du väljer - se Verifiering av signerade webhooks
Ett skript för en webbläsare eller en webbutik CORS är aktiverat - se CORS, appens proxy-URL och webbläsarens anrop
Ingenting - kör det enligt ett schema En webhook som hämtar en URL enligt ett tidsschema; fliken ”Schema” öppnas därefter - se Schemalagd URL-avfrågning
Något annat, eller bestäm senare Du väljer själv autentiseringsmetod

Ge den ett namn som du kommer att känna igen senare (”Påminnelse om plånbokskort”, ”Kontaktformulär”) och spara. Alla inställningar kan ändras i efterhand.

Du har nu en webhook-URL som slutar med en kortkod, till exempel https://.../webhook/ab12cd34. Denna URL är den slutpunkt som ditt system skickar POST-förfrågningar till.

På sidan ”Skapa webhook” ställs frågan ”Vad ska utlösa denna webhook?”, där alternativet ”Ingenting - kör den enligt ett schema” är valt och det anges att fliken ”Schema” öppnas därefter
För att skapa en webhook måste man först bestämma vad som ska utlösa den. Svaret avgör vilken autentiseringsmetod som ska användas; ”Inget - kör den enligt ett schema” öppnar fliken Schema därefter.
Webhook-redigeraren: namn och autentisering till vänster, kortet ”Endpoint” med status, webhook-URL och webhook-ID till höger, ovanför ”Live Preview”, ”Test” och ”Usage”
Webhook-redigeraren. Inställningarna finns till vänster; kortet ”Endpoint” till höger innehåller webhook-URL:en som ska ges till avsändaren samt webhook-ID:t som du använder i Shopify Flow.

2. Välj hur de som ringer ska styrka sin identitet

Öppna webhooken och välj en autentiseringsmetod. Se Autentisering för en fullständig jämförelse - här är en kort sammanfattning:

  • Statisk token - passar nästan alla. Tryck på knappen ”Generera”, kopiera token, skicka den i rubriken X-Api-Key.
  • HMAC SHA-256 - för avsändare som signerar sina förfrågningar (Stripe, GitHub och liknande).
  • Inget - endast för teständamål. Vem som helst som har webbadressen kan starta ditt arbetsflöde.

3. Berätta vilka områden som är viktiga för dig

Under ”Avancerade inställningar” kan du koppla upp till fyra fält från din JSON-data. Om ditt system skickar:

Fliken ”Avancerade inställningar” där fält 1 till fält 4 är kopplade till orderId, status, total och note
Avancerade inställningar: koppla upp till fyra värden från förfrågans huvuddel. De skickas till Shopify Flow som fieldOne till fieldFour.
json
{ "customer": { "email": "someone@example.com" }, "orderId": "1001" }

Mappa fieldOne till orderId och fieldTwo till customer.email - använd punkter för hierarkiska sökvägar. Fullständig information finns i Kartläggning av nyttolast och Shopify Flow-variabler.

4. Skicka en testförfrågan

En anropning öppnades i ”History” med dess begärandehuvuden, nyttolast, status, varaktighet och identifierare
Efter en testförfrågan visas anropet i Historik tillsammans med den mottagna datamängden.
bash
curl -X POST https://your-app-url/webhook/ab12cd34 \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: your-token" \
  -d '{"orderId":"1001","customer":{"email":"someone@example.com"}}'

Öppna historiken. Där bör du kunna se anropet med dess status, rubriker och datainnehåll. Om det inte finns där listar Historik och felsökning alla orsaker till avslag.

5. Skapa arbetsflödet i Shopify Flow

I Shopify Flow skapar du ett arbetsflöde som börjar med utlösaren ”Webhook Trigger”.

  1. Lägg till utlösaren och klicka på ”Spela in händelser”.
  2. Gå tillbaka hit, öppna anropet i historiken och tryck på ”Replay”. Shopify Flow har nu en ett verkligt exempel på en nyttolast att arbeta med - mycket enklare än att gissa fältnamn.
  3. Lägg till ett villkor: Webhook ID ska stämma överens med ditt webhooks ID (som visas på webhooksidan). Varje arbetsflöde med webhook-utlösare tar emot händelser från alla dina webhooks, så detta Det är villkoret som gör att arbetsflödet endast reagerar på just detta.
  4. Lägg till dina åtgärder genom att använda {{fieldOne}} till {{fieldFour}}.
  5. Aktivera arbetsflödet.
Shopify Flow
I Shopify Flow väljer du ”Välj en utlösare”, öppnar ”Workflow Webhooks” och väljer ”Webhook-utlösare”.
Plus-ikonen under steget ”Webhook-utlösare” öppnades och visade alternativen ”Åtgärd” och ”Villkor”
Plustecknet under ett steg innehåller de två delarna som utgör ett arbetsflöde: ett villkor och en åtgärd.
Ett villkor i Shopify Flow: Webhook-ID:t är lika med ID:t för en webhook
Det första steget i varje arbetsflöde: ett villkor baserat på webhook-ID:t, så att arbetsflödet endast körs för just denna webhook.
Shopify Flow
Vad utlösaren skickar vidare till ditt arbetsflöde: webhook-ID:t och dina fyra mappade fält, visade tillsammans med värdena från en nyligen gjord begäran.
Shopify Flow
Använd de mappade fälten överallt där en Shopify Flow-åtgärd tar emot en variabel, till exempel här i ämnesraden och meddelandetexten i ett internt e-postmeddelande.
Det färdiga arbetsflödet: Webhook-utlösare, ett villkor baserat på webhook-ID:t, följt av att ett internt e-postmeddelande skickas i ”True”-grenen
Det färdiga arbetsflödet: utlösare, villkor baserat på webhook-ID:t, följt av din åtgärd i ”True”-grenen.

6. Gå live

Rikta ditt riktiga system mot webhook-URL:en. Kontrollera de första anropen i historiken för att se till att de kommer fram och genomförs framgångsrikt.

Om din avsändare gör ett nytt försök när tidsgränsen har löpt ut ska du aktivera Skydd mot dubbla leveranser, så att ett nytt försök inte kan köra ditt arbetsflöde två gånger.

Sidan ”Webhooks” visar sex webhooks, var och en med antal anrop, autentisering och en markering som anger om den är aktiverad eller inaktiverad
Sidan ”Webhooks”. Varje rad visar hur ofta webhooken har anropats, hur de som anropar den autentiserar sig och om den är aktiverad; via menyn till höger kan du aktivera, inaktivera eller ta bort den.