Send HTTP-anmodning
Handlingen Send HTTP-anmodning knytter dit workflow til en webserver eller en webadresse og sender HTTP-anmodninger.
Når Flow har sendt din HTTP-anmodning, venter det maksimalt på en HTTP-svarkode i 30 sekunder. Hvis Flow ikke har modtaget et svar efter 30 sekunder, lukker det forbindelsen til din app. Senere prøver det at sende anmodningen igen.
På denne side
Felter
Handlingen Send HTTP-anmodning indeholder følgende felter.
Felt | Beskrivelse |
---|---|
HTTP-metode | Metoden til den HTTP-anmodning, der skal sendes. Handlingen Send HTTP-anmodning understø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
Handlingen Send HTTP-anmodning kan bruges i alle workflows.
Eksempler
Kald Shopify GraphQL Admin API'en
I dette eksempel bruger du Flow til at redigere en produkttitel ved at kalde productUpdate-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 bruge Admin API-adgangstoken til at kalde API'en i dette eksempel.
Følg derefter disse trin i Flow:
- Vælg udløseren Produktstatus er opdateret. Dette giver dig mulighed for at teste dette workflow ved at ændre status for et produkt.
- Føj Send HTTP-anmodning til dit workflow, og knyt den til udløseren.
- Åbn konfigurationspanelet ved at klikke på trinnet Send HTTP-anmodning.
- I feltet HTTP-metode indtaster du
POST
. - I feltet Webadresse skal du indtaste
https://admin.shopify.com/store/shopname/api/2023-01/graphql.json
som erstatning for dit butiksdomæne og den ønskede API-version. - I afsnittet Sidehoveder skal du indtaste en Nøgle på
X-Shopify-Access-Token
og en Værdi påYOUR_API_SECRET_KEY
, som du fik i det første trin. - I afsnittet Sidehoveder indtaster du endnu et sidehoved med en Nøgle på
Content-Type
og en Værdi påapplication/json
. - Indtast følgende i afsnittet Brødtekst:
json
{"query": "mutation { productUpdate(input: {id: \"{{ product.id }}\", title: \"{{product.title}}-edited\"}) { product { id } } }"}
- Denne kode tilføjer
-edited
i 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 fra Kladde til Aktiv eller 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 behandler HTTP-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. |
Begrænsninger
Handlingen Send HTTP-anmodning har følgende begrænsninger:
- Handlingen returnerer ikke data til Flow-miljøet som følge af mutationen.