Trimitere solicitare Admin API
Acțiunea Trimitere solicitare Admin API poate utiliza majoritatea mutațiilor din GraphQL Admin API pentru a aduce modificări magazinului dvs., inclusiv mutații care nu sunt încă disponibile ca acțiuni în Flow.
În această pagină
Câmpuri
Acțiunea Trimitere solicitare Admin API conține următoarele câmpuri.
| Câmp | Descriere |
|---|---|
| Mutație | Necesar. Mutația Shopify GraphQL Admin pe care doriți să o apelați. O mutație este un API care execută o acțiune sau actualizează date. |
| Intrări mutație | Necesar. Datele (în format JSON) pe care trebuie să le trimiteți ca parte a solicitării de mutație. Fiecare mutație necesită un set diferit de date, care este documentat în linkul furnizat pentru fiecare mutație. Pentru a construi fișierul JSON necesar, puteți utiliza Liquid sau o acțiune Rulare cod. |
Declanșatori
Acțiunea Trimitere solicitare Admin API poate fi utilizată în orice flux de lucru, cu orice declanșator, atâta timp cât fluxul de lucru furnizează datele necesare pentru a construi intrările mutației.
Exemple
Exemplul 1: Actualizarea șablonului utilizat pentru un produs
În acest exemplu, vom utiliza acțiunea Trimitere solicitare Admin API pentru a apela mutația productUpdate pentru a actualiza șablonul utilizat pentru un produs.
Câmpul id este necesar și trebuie să fie un GID de produs valid. Aici, îl setăm cu variabila Liquid {{product.id}}. Acest lucru presupune că fluxul dvs. de lucru are un declanșator care furnizează un obiect de produs.
templateSuffix este numele șablonului pe care doriți să-l aplicați produsului. De exemplu, dacă doriți să aplicați șablonul pre-order, veți seta templateSuffix la pre-order.
{
"input": {
"templateSuffix": "pre-order",
"id": "{{product.id}}"
}
}Exemplul 2: Actualizarea stării de scutire de impozit a unui client
În acest exemplu, vom utiliza acțiunea Trimitere solicitare Admin API pentru a apela mutația customerUpdate pentru a actualiza starea de scutire de impozit a unui client.
Câmpul id este necesar și trebuie să fie un GID de client valid. Aici, îl setăm cu variabila Liquid {{order.customer.id}}. Acest lucru presupune că fluxul dvs. de lucru are un declanșator care furnizează un obiect de comandă.
Câmpul taxExempt este o variabilă booleană care indică dacă respectivul client este scutit de impozit. În acest exemplu, îl setăm la true.
{
"input": {
"id": "{{order.customer.id}}",
"taxExempt": true
}
}Exemplul 3: Actualizarea parametrilor locali ai unui client
În acest exemplu, vom utiliza acțiunea Trimitere solicitare Admin API pentru a apela mutația customerUpdate pentru a actualiza parametrii locali ai unui client.
Câmpul id este necesar și trebuie să fie un GID de client valid. Aici, îl setăm cu variabila Liquid {{customer.id}}. Acest lucru presupune că fluxul dvs. de lucru are un declanșator care furnizează un obiect de client.
Câmpul locale este un șir care reprezintă parametrii locali ai clientului. În acest exemplu, îl setăm la en.
{
"input": {
"id": "{{customer.id}}",
"locale": "en"
}
}Sfaturi Liquid
Flow acceptă un filtru liquid json care poate fi util în construirea intrării. Următoarele exemple utilizează toate mutația customerUpdate și presupun că fluxul dvs. de lucru are un declanșator care furnizează un obiect de client.
Lucrul cu șiruri
Următorul exemplu actualizează nota privind un client:
{% assign revisedNote = customer.note | append: " Hello from Flow!" %}
{
"input": {
"id": "{{ customer.id }}",
"note": {{ revisedNote | json }},
}
}Filtrul json aplică o secvență escape șirului pentru a asigura un format JSON corespunzător. Acest lucru are ca rezultat următorul JSON după ce rulează fluxul de lucru:
{
"input": {
"id": "gid://shopify/Customer/1234",
"note": "Had a \"great experience\" with their latest order. Hello from Flow!",
}
}Lucrul cu matrice
Exemplu de matrice
Filtrul json transformă o matrice liquid într-o matrice JSON. Următorul exemplu are ca rezultat o matrice JSON atunci când i se furnizează o matrice liquid:
{% assign tags = "tag1,tag2,tag3" | split: "," %}
{
"input": {
"id": "{{ customer.id }}",
"tags": {{ tags | json }}
}
}Acest lucru are ca rezultat următorul JSON după ce rulează fluxul de lucru:
{
"input": {
"id": "gid://shopify/Customer/1234",
"tags": ["tag1","tag2","tag3"]
}
}Exemplu de buclă For
Următorul exemplu utilizează o buclă pentru a afișa elementele unei matrice, separate prin virgulă:
{% assign tags = "tag1,tag2,tag3" | split: "," %}
{
"input": {
"id": "{{ customer.id }}",
"tags": [
{% for tag in tags %}
"{{ tag }}"{% unless forloop.last %},{% endunless %}
{% endfor %}
]
}
}Acest lucru are ca rezultat următorul JSON atunci când rulează fluxul de lucru:
{
"input": {
"id": "gid://shopify/Customer/1234",
"tags": [
"tag1",
"tag2",
"tag3"
]
}
}Exemplu de mapare
Filtrul map poate fi utilizat pentru a obține o matrice a unei anumite proprietăți dintr-o matrice de obiecte. În exemplul următor, o matrice de proprietăți city este extrasă dintr-o matrice de adrese ale clienților:
{
"input": {
"id": "{{ customer.id }}",
"tags": {{ customer.addresses | map: "city" | json }}
}
}Acest lucru are ca rezultat următorul JSON după ce rulează fluxul de lucru:
{
"input": {
"id": "gid://shopify/Customer/1234",
"tags": ["Ottawa","Toronto"]
}
}Limitări
Acțiunea Trimitere solicitare Admin API are următoarele limitări:
- Acțiunea va afișa o listă de
MutațiișiIntrări mutațiedin versiunea de Admin API utilizată de Flow. - Atunci când sunt lansate versiuni noi de API, această acțiune poate eșua dacă utilizează o mutație sau un câmp care a fost modificat sau perimat.
- Acțiunea nu acceptă interogări GraphQL, ci doar mutații.
- Acțiunea nu acceptă mutațiile care au fost perimate.
- Acțiunea nu acceptă unele mutații care sunt specifice anumitor aplicații, inclusiv unele mutații privind abonamentele, activitățile de marketing și reducerile.
- Acțiunea nu acceptă mutații asincrone sau mutații care returnează un tip de
Job. - Acțiunea nu acceptă mutații care nu implementează interfața Node.
Șabloane
Adăugare articol gratuit (cu reducere de 100%) la comenzile noi
Acest șablon adaugă un articol gratuit, cu reducere, la comenzile noi, dacă articolul este în stoc. Acesta verifică inventarul, aplică o reducere de 100% și actualizează comanda fără a notifica clientul. Această automatizare ar fi utilă pentru (1) a spori satisfacția clienților prin includerea unui articol surpriză gratuit în comanda lor, (2) a promova produse noi sau mai puțin cunoscute prin adăugarea lor ca mostre gratuite în comenzi sau (3) pentru a eficientiza promoțiile prin automatizarea includerii și a reducerii articolelor gratuite. Vizualizare șablon
Permiterea plasării comenzilor pentru societățile create prin solicitări de cont de societate
Alocați o permisiune de comandă atunci când o societate este creată printr-o solicitare de cont de societate. Vizualizați șablonul
Schimbați șablonul de produs atunci când variantele sunt în lipsă de stoc sau revin în stoc
Actualizați un șablon de produs în funcție de inventarul variantelor produsului. Fluxul de lucru vă permite să comutați între șabloane pentru produse în stoc (șablonul implicit al magazinului), în lipsă de stoc și atunci când una sau mai multe variante sunt în lipsă de stoc. Vizualizați șablonul
Onorați orice articole digitale dintr-o comandă
Onorează orice articole pentru care nu este necesară expedierea fizică, cum ar fi articolele digitale, sau care corespund unei liste de numere de inventar (SKU). Se execută o dată pentru fiecare locație de executare a comenzii („comanda de onorare”) aferentă unei comenzi noi. Vizualizați șablonul