Send HTTP-anmodning
HandlingenSend HTTP-anmodningknytter dit workflow til en webserver eller en webadresse og sender HTTP-anmodninger.
Når Flow har sendt din HTTP-anmodning, venter det maksimalt på enHTTP-svarkodei 30 sekunder. Hvis Flow ikke har modtaget et svar efter 30 sekunder, lukker det forbindelsen til din app og sender anmodningen igen.
Felter
HandlingenSend HTTP-anmodningindeholder følgende felter.
| Felt | Beskrivelse |
|---|---|
| HTTP-metode | Metoden til den HTTP-anmodning, der skal sendes. HandlingenSend HTTP-anmodningunderstøtter følgende metoder:
|
| Webadresse | Webadressen for den server, HTTP-anmodningen sendes til. |
| Sidehoveder | HTTP-anmodningens nøgle/værdi-par. Du kan angive flere nøgle/værdi-par. |
| Brødtekst | Det indhold, der skal sendes til serveren. |
Udløsere
HandlingenSend HTTP-anmodningkan bruges i alle workflows.
Eksempler
Kald Shopify GraphQL Admin API'en
I dette eksempel bruger du Flow til at redigere en produkttitel ved at kaldeproductUpdate-API'en.
Inden du begynder, skal du gøre følgende:
- Opsæt og installer en tilpasset app,der har omfanget
write_products.Du skal brugeAPI'en Secret Keytil at kalde API'en i dette eksempel.
Følg derefter disse trin i Flow:
- Vælg udløserenProduktstatus er opdateret. Dette giver dig mulighed for at teste dette workflow ved at ændre status for et produkt.
- FøjSend HTTP-anmodningtil dit workflow, og knyt den til udløseren.
- Åbn konfigurationspanelet ved at klikke på trinnetSend HTTP-anmodning.
- I feltetHTTP-metodeindtaster du
POST. - I feltetWebadresseskal du indtaste
https://YOUR-SHOP-DOMAIN.myshopify.com/admin/api/2023-01/graphql.jsonsom erstatning for dit butiksdomæne og den ønskede API-version. - I afsnittetSidehovederskal du indtaste enNøglepå
X-Shopify-Access-Tokenog enVærdipåYOUR_API_SECRET_KEY, som du fik i det første trin. - I afsnittetSidehovederindtaster du endnu et sidehoved med enNøglepå
Content-Typeog enVærdipåapplication/json. - Indtast følgende i afsnittetBrødtekst:
json {"query": "mutation { productUpdate(input: {id: \"{{ product.id }}\", title: \"{{product.title}}-edited\"}) { product { id } } }"}
- Denne kode tilføjer
-editedi slutningen af din titel - Mellemrum og nye linjer er relevante for Liquid-editoren, så undgå at tilføje eller fjerne mellemrum. Med undtagelse af output-Liquid skal du også undgå at skjule parenteser som f.eks.
{{og}}, da de er forbeholdt Liquid-variabler.
- Konfigurer resten af workflowet, og aktivér det.
- Test den ved at ændre statussen for et produkt fraKladdetilAktiveller omvendt.
Kald en ekstern API
I dette eksempel på et workflow, sendes der en POST HTTP-anmodning til en server, når en ordre betales.
Svarkoder
Nedenstående tabel beskriver, hvordan Flow behandlerHTTP-svarkoden, når den modtager et svar.
| HTTP-svarkode | Sådan behandler Flow svarkoden |
|---|---|
| 2XX eller 3XX Success | Flow markerer HTTP-anmodningen som succesfuld og udfører de efterfølgende handlinger i workflowet. |
| 429 eller 5XX Error | Flow prøver automatisk handlingen igen i op til 24 timer, indtil det modtager et andet svar eller får timeout. |
| Anden svarkode | Hvis din app returnerer en kode, som ikke er beskrevet i denne tabel, eller får timeout, mens den prøver handlinger igen, vil Flow markere HTTP-anmodningen som mislykket. De efterfølgende handlinger i workflowet udføres ikke. |