Lähetä Admin API -pyyntö

Lähetä Admin API -pyyntö -toiminto voi käyttää useimpia GraphQL Admin API:n muuntoja kauppaasi tehtäviin muutoksiin, mukaan lukien muunnot, jotka eivät ole vielä saatavilla toimintoina Flow'ssa.

Kentät

Lähetä Admin API -pyyntö -toiminto sisältää seuraavat kentät.

Lähetä Admin API -pyyntö -toiminnossa käytettävät kentät.
KenttäKuvaus
MuuntoPakollinen. Shopify GraphQL Admin API:n muunto, jonka haluat kutsua. Muunto on API, joka suorittaa toiminnon tai päivittää tietoja.
Muunnon syötteetPakollinen. Tiedot (JSON-muodossa), jotka sinun on lähetettävä osana muuntopyyntöäsi. Jokainen muunto vaatii eri tietojoukon, joka on dokumentoitu kunkin muunnon yhteydessä annetussa linkissä. Tarvittavan JSON-tiedon muodostamiseen voit käyttää Liquidiä tai Suorita koodi -toimintoa.

Käynnistimet

Lähetä Admin API -pyyntö -toimintoa voidaan käyttää missä tahansa työnkulussa minkä tahansa käynnistimen kanssa, kunhan työnkulku tarjoaa tarvittavat tiedot muunnon syötteiden muodostamiseen.

Esimerkit

Esimerkki 1: Tuotteessa käytettävän mallin päivittäminen

Tässä esimerkissä käytetään Lähetä Admin API -pyyntö -toimintoa kutsumaan productUpdate-muuntoa tuotteessa käytettävän mallin päivittämiseksi.

id-kenttä on pakollinen, ja sen on oltava kelvollinen tuotteen GID. Tässä se asetetaan {{product.id}}-liquid-muuttujalla. Tämä edellyttää, että työnkulussasi on käynnistin, joka tarjoaa tuoteobjektin.

templateSuffix on sen mallin nimi, jota haluat käyttää tuotteessa. Jos esimerkiksi haluat käyttää pre-order-mallia, aseta templateSuffix-arvoksi pre-order.

{
  "input": {
    "templateSuffix": "pre-order",
    "id": "{{product.id}}"
  }
}

Esimerkki 2: Asiakkaan verovapautuksen tilan päivittäminen

Tässä esimerkissä käytetään Lähetä Admin API -pyyntö -toimintoa kutsumaan customerUpdate-muuntoa asiakkaan verovapautuksen tilan päivittämiseksi.

id-kenttä on pakollinen, ja sen on oltava kelvollinen asiakkaan GID. Tässä se asetetaan {{order.customer.id}}-liquid-muuttujalla. Tämä edellyttää, että työnkulussasi on käynnistin, joka tarjoaa tilausobjektin.

taxExempt-kenttä on totuusarvo, joka ilmaisee, onko asiakas verovapaa. Tässä esimerkissä sen arvoksi asetetaan true.

{
  "input": {
    "id": "{{order.customer.id}}",
    "taxExempt": true
  }
}

Esimerkki 3: Asiakkaan alueen päivittäminen

Tässä esimerkissä käytetään Lähetä Admin API -pyyntö -toimintoa kutsumaan customerUpdate-muuntoa asiakkaan alueen päivittämiseksi.

id-kenttä on pakollinen, ja sen on oltava kelvollinen asiakkaan GID. Tässä se asetetaan {{customer.id}}-liquid-muuttujalla. Tämä edellyttää, että työnkulussasi on käynnistin, joka tarjoaa asiakasobjektin.

locale-kenttä on merkkijono, joka edustaa asiakkaan aluetta. Tässä esimerkissä sen arvoksi asetetaan en.

{
  "input": {
    "id": "{{customer.id}}",
    "locale": "en"
  }
}

Liquid-vinkit

Flow tukee json-liquid-suodatinta, joka voi olla hyödyllinen syötteen muodostamisessa. Kaikissa seuraavissa esimerkeissä käytetään customerUpdate-muuntoa, ja niissä oletetaan, että työnkulussasi on käynnistin, joka tarjoaa asiakasobjektin.

Merkkijonojen käsittely

Seuraavassa esimerkissä päivitetään asiakkaan huomautus:

{% assign revisedNote = customer.note | append: " Hello from Flow!" %}

{
  "input": {
    "id": "{{ customer.id }}",
    "note": {{ revisedNote | json }},
  }
}

json-suodatin lisää merkkijonoon ohjausmerkit kelvollisen JSON-muodon varmistamiseksi. Työnkulun suorittamisen jälkeen tuloksena on seuraava JSON:

{
  "input": {
    "id": "gid://shopify/Customer/1234",
    "note": "Had a \"great experience\" with their latest order. Hello from Flow!",
  }
}

Taulukoiden käsittely

Taulukkoesimerkki

json-suodatin muuntaa liquid-taulukon JSON-taulukoksi. Seuraavassa esimerkissä luodaan JSON-taulukko, kun sille annetaan syötteenä liquid-taulukko:

{% assign tags = "tag1,tag2,tag3" | split: "," %}

{
  "input": {
    "id": "{{ customer.id }}",
    "tags": {{ tags | json }}
  }
}

Työnkulun suorittamisen jälkeen tuloksena on seuraava JSON:

{
  "input": {
    "id": "gid://shopify/Customer/1234",
    "tags": ["tag1","tag2","tag3"]
  }
}

For-silmukkaesimerkki

Seuraavassa esimerkissä silmukkaa käytetään tulostamaan taulukon alkiot pilkuilla erotettuina:

{% assign tags = "tag1,tag2,tag3" | split: "," %}

{
  "input": {
    "id": "{{ customer.id }}",
    "tags": [
      {% for tag in tags %}
        "{{ tag }}"{% unless forloop.last %},{% endunless %}
      {% endfor %}
    ]
  }
}

Kun työnkulku suoritetaan, tuloksena on seuraava JSON:

{
  "input": {
    "id": "gid://shopify/Customer/1234",
    "tags": [
        "tag1",
        "tag2",
        "tag3"
    ]
  }
}

Map-esimerkki

map-suodattimella voidaan poimia tietyn ominaisuuden taulukko objektien taulukosta. Seuraavassa esimerkissä poimitaan city-ominaisuuksien taulukko asiakkaan osoitteiden taulukosta:

{
  "input": {
    "id": "{{ customer.id }}",
    "tags": {{ customer.addresses | map: "city" | json }}
  }
}

Työnkulun suorittamisen jälkeen tuloksena on seuraava JSON:

{
  "input": {
    "id": "gid://shopify/Customer/1234",
    "tags": ["Ottawa","Toronto"]
  }
}

Rajoitukset

Lähetä Admin API -pyyntö -toiminnolla on seuraavat rajoitukset:

  • Toiminto näyttää luettelon muunnoista ja muuntojen syötteistä Flow'n käyttämästä Admin API -versiosta.
  • Kun uusia API-versioita julkaistaan, tämä toiminto saattaa epäonnistua, jos se käyttää muuntoa tai kenttää, jota on muutettu tai joka on poistettu käytöstä.
  • Toiminto ei tue GraphQL-kyselyitä, ainoastaan muuntoja.
  • Toiminto ei tue muuntoja, jotka on poistettu käytöstä.
  • Toiminto ei tue joitakin muuntoja, jotka ovat ominaisia tietyille sovelluksille, mukaan lukien jotkin toistuvien tilausten, markkinointitoimintojen ja alennusten muunnot.
  • Toiminto ei tue asynkronisia muuntoja eikä muuntoja, jotka palauttavat Job-tyypin.
  • Toiminto ei tue muuntoja, jotka eivät toteuta Node-rajapintaa.

Mallit

Ilmaisen tuotteen (100 % alennus) lisääminen uusiin tilauksiin

Tämä malli lisää uusiin tilauksiin ilmaisen, alennetun tuotteen, jos tuotetta on varastossa. Se tarkistaa varaston, lisää 100 %:n alennuksen ja päivittää tilauksen ilmoittamatta siitä asiakkaalle. Tämä automaatio on hyödyllinen, jos haluat 1) parantaa asiakastyytyväisyyttä lisäämällä tilaukseen yllätyslahjan, 2) markkinoida uusia tai vähemmän tunnettuja tuotteita lisäämällä niitä ilmaisina näytteinä tilauksiin tai 3) tehostaa kampanjoita automatisoimalla ilmaisten tuotteiden lisäämisen ja alennuksen soveltamisen. Näytä malli

Tilausten salliminen yrityksille, jotka on luotu yritystilin pyynnöillä

Määritä tilausoikeus, kun yritys luodaan yritystilin pyynnön perusteella. Näytä malli

Vaihda tuotemalli, kun versiot loppuvat varastosta tai niitä on jälleen saatavilla

Päivitä tuotemalli tuotteen versioiden varastotilanteen mukaan. Työnkulun avulla voit vaihtaa malleja sen mukaan, onko tuotetta varastossa (kaupan oletusmalli), onko se loppunut varastosta vai onko vähintään yksi sen versioista loppunut varastosta. Näytä malli

Täytä kaikki tilauksen digitaaliset tuotteet

Täyttää kaikki tuotteet, jotka eivät vaadi fyysistä toimitusta, kuten digitaaliset tuotteet, tai jotka vastaavat annettua SKU-koodiluetteloa. Suoritetaan kerran kutakin uuden tilauksen jakelupaikkaa (”jakelutilaus”) kohti. Näytä malli