Wyślij żądanie API Admin
Czynność Wyślij żądanie API Admin może używać większości mutacji w GraphQL Admin API do wprowadzania zmian w sklepie, w tym mutacji, które nie są jeszcze dostępne jako czynności we Flow.
Na tej stronie
Pola
Czynność Wyślij żądanie API Admin zawiera następujące pola.
Pole | Opis |
---|---|
Mutacja | Wymagane. Mutacja Shopify GraphQL Admin, którą chcesz wywołać. Mutacja to interfejs API, który wykonuje działanie lub aktualizuje dane. |
Dane wejściowe mutacji | Wymagane. Dane (w JSON), które musisz wysłać w ramach żądania mutacji. Każda mutacja wymaga innego zestawu danych, który jest udokumentowany w linku dostarczonym dla każdej mutacji. Aby utworzyć niezbędne pliki JSON, możesz użyć Liquid lub czynności Wykonaj kod. |
Wyzwalacze
Czynność Wyślij żądanie API Admin może być używana w każdym workflow z dowolnym wyzwalaczem, o ile workflow zapewnia dane niezbędne do utworzenia danych wejściowych mutacji.
Przykłady
Przykład 1: Zaktualizuj szablon używany dla produktu
W tym przykładzie użyjemy czynności Wyślij żądanie API Admin, aby wywołać mutację productUpdate
w celu aktualizacji szablonu używanego dla produktu.
Pole id
jest wymagane i musi być prawidłowym GID produktu. Tutaj ustawiamy je za pomocą zmiennej Liquid {{product.id}}
. Zakłada to, że workflow ma wyzwalacz, który dostarcza obiekt produktu.
templateSuffix
to nazwa szablonu, który chcesz zastosować do produktu. Na przykład, jeśli chcesz zastosować szablon pre-order
, ustaw templateSuffix na pre-order
.
{
"input": {
"templateSuffix": "pre-order",
"id": "{{product.id}}"
}
}
Przykład 2: Zaktualizuj status zwolnienia podatkowego klienta
W tym przykładzie użyjemy czynności Wyślij żądanie API Admin, aby wywołać mutację customerUpdate
w celu aktualizacji statusu zwolnienia podatkowego klienta.
Pole id
jest wymagane i musi być prawidłowym GID klienta. Tutaj ustawiamy je za pomocą zmiennej Liquid {{order.customer.id}}
. Zakłada to, że workflow ma wyzwalacz, który dostarcza obiekt zamówienia.
Pole taxExempt
jest wartością logiczną, która wskazuje, czy klient jest zwolniony z podatku. W tym przykładzie ustawiamy je na true
.
{
"input": {
"id": "{{order.customer.id}}",
"taxExempt": true
}
}
Przykład 3: Zaktualizuj ustawienia regionalne klienta
W tym przykładzie użyjemy czynności Wyślij żądanie API Admin, aby wywołać mutację customerUpdate
w celu aktualizacji ustawień regionalnych klienta.
Pole id
jest wymagane i musi być prawidłowym GID klienta. Tutaj ustawiamy je za pomocą zmiennej Liquid {{customer.id}}
. Zakłada to, że workflow ma wyzwalacz, który dostarcza obiekt klienta.
Pole locale
jest ciągiem znaków reprezentującym ustawienia regionalne klienta. W tym przykładzie ustawiamy je na en
.
{
"input": {
"id": "{{customer.id}}",
"locale": "en"
}
}
Wskazówki dotyczące Liquid
Flow obsługuje filtr liquid json
, który może być przydatny przy tworzeniu danych wejściowych. Wszystkie poniższe przykłady używają mutacji customerUpdate
i zakłada się, że Twój workflow ma wyzwalacz, który dostarcza obiekt klienta.
Praca z ciągami znaków
W poniższym przykładzie aktualizowana jest uwaga dotycząca klienta:
{% assign revisedNote = customer.note | append: " Hello from Flow!" %}
{
"input": {
"id": "{{ customer.id }}",
"note": {{ revisedNote | json }},
}
}
Filtr json
dekoduje ciąg znaków, aby zapewnić poprawność JSON. Wynikiem tego jest następujący JSON po uruchomieniu workflow:
{
"input": {
"id": "gid://shopify/Customer/1234",
"note": "Had a \"great experience\" with their latest order. Hello from Flow!",
}
}
Praca z tablicami
Przykład tablicy
Filtr json
przekształca tablicę liquid w tablicę JSON. W poniższym przykładzie wyświetlana jest tablica JSON po podaniu tablicy liquid:
{% assign tags = "tag1,tag2,tag3" | split: "," %}
{
"input": {
"id": "{{ customer.id }}",
"tags": {{ tags | json }}
}
}
Wynikiem tego jest następujący JSON po uruchomieniu workflow:
{
"input": {
"id": "gid://shopify/Customer/1234",
"tags": ["tag1","tag2","tag3"]
}
}
Przykład pętli For
W poniższym przykładzie wykorzystana jest pętla do wyprowadzania elementów tablicy oddzielonych przecinkami:
{% assign tags = "tag1,tag2,tag3" | split: "," %}
{
"input": {
"id": "{{ customer.id }}",
"tags": [
{% for tag in tags %}
"{{ tag }}"{% unless forloop.last %},{% endunless %}
{% endfor %}
]
}
}
Wynikiem tego jest następujący JSON po uruchomieniu workflow:
{
"input": {
"id": "gid://shopify/Customer/1234",
"tags": [
"tag1",
"tag2",
"tag3"
]
}
}
Przykład mapy
Filtr mapa może służyć do uzyskania tablicy określonej właściwości z tablicy obiektów. W poniższym przykładzie tablica właściwości city
została wyodrębniona z tablicy adresów klientów:
{
"input": {
"id": "{{ customer.id }}",
"tags": {{ customer.addresses | map: "city" | json }}
}
}
Wynikiem tego jest następujący JSON po uruchomieniu workflow:
{
"input": {
"id": "gid://shopify/Customer/1234",
"tags": ["Ottawa","Toronto"]
}
}
Ograniczenia
Czynność Wyślij żądanie API Admin ma następujące ograniczenia:
- Czynność spowoduje wyświetlenie list
Mutations
orazMutation inputs
z wersji Admin API używanej przez Flow. - Gdy zostaną wydane nowe wersje API, ta czynność może zakończyć się niepowodzeniem, jeśli użyto mutacji lub pola, które zostały zmienione lub są nieaktualne.
- Czynność nie obsługuje zapytań GraphQL, tylko mutacje.
- Czynność nie obsługuje mutacji, które zostały wycofane.
- Czynność nie obsługuje pewnych mutacji specyficznych dla niektórych aplikacji, w tym niektórych mutacji subskrypcji, działań marketingowych i rabatów.
- Czynność nie obsługuje mutacji asynchronicznych ani mutacji zwracających typ
Job
. - Czynność nie obsługuje mutacji, które nie implementują interfejsu Węzeł.
Szablony
Dodaj darmowe (z rabatem w wysokości 100%) pozycje do nowych zamówień
Ten szablon dodaje darmowe, objęte rabatem pozycje do nowych zamówień, jeśli dana pozycja jest w magazynie. Sprawdza zapasy, stosuje rabat w wysokości 100% i aktualizuje zamówienie bez powiadamiania klienta. Ta automatyzacja, sprawdzi się jako narzędzie do: (1) poprawy satysfakcji klientów poprzez dołączanie niespodziewanego podarunku w postaci darmowej pozycji do zmówienia, (2) promowania nowych lub mniej znanych produktów poprzez dodawanie ich jako darmowych próbek do zamówień lub (3) usprawnienia promocji poprzez automatyzację dołączania i obejmowania rabatami pozycji. Wyświetl szablon
Zezwól na składanie zamówień przez firmy utworzone na podstawie żądań utworzenia konta firmy
Przypis uprawnienie do składania zamówień, gdy firma zostanie utworzona na podstawie żądań utworzenia konta firmy. Wyświetl szablon
Zmień szablon produktu, gdy zapasy wariantów są wyczerpane lub ponownie dostępne
Zaktualizuj szablon produktu na podstawie zapasów dla wariantów produktu. Workflow umożliwia przełączanie się między szablonami dla zapasów w magazynie (domyślny szablon sklepu), zapasów wyczerpanych i w sytuacji, gdy przynajmniej jeden z wariantów jest wyczerpany. Wyświetl szablon
Realizuj zamówienia dotyczące pozycji cyfrowych
Realizuje zamówienia dotyczące pozycji, które nie mają wymaganego adresu fizycznej dostawy, takie jak pozycje cyfrowe, lub pasujące do listy SKU. Uruchomienie następuje raz dla każdej lokalizacji realizacji („zamówienia do realizacji”) dla nowego zamówienia. Wyświetl szablon