Admin API talebi gönder

Admin API talebi gönder işlemi, Shopify GraphQL Admin API'ye bir mutasyon gönderir. Bunu yaptığınızda Flow'u kullanarak, API'nin izin verdiği neredeyse her işlemi gerçekleştirebilirsiniz.

Alanlar

Admin API talebi gönder işlemi aşağıdaki alanları içerir.

Admin API talebi gönder işleminde kullanılan alanlar.
AlanAçıklama
MutasyonGerekli. Çağırmak istediğiniz Shopify GraphQL Admin mutasyonu. Mutasyon, işlem yapan veya verileri güncelleyen bir API'dir.
Mutasyon girdileriGerekli. Mutasyon talebinizin bir parçası olarak göndermeniz gereken veriler (JSON olarak). Her mutasyon, mutasyon için sağlanan bağlantıda belgelenmiş olan farklı bir veri kümesi gerektirir. Gerekli JSON öğesini oluşturmak için Liquid'i veya Kodu çalıştır işlemini kullanabilirsiniz.

Tetikleyiciler

Admin API talebi gönder işlemi, iş akışı mutasyon girdilerini oluşturmak için gerekli verileri sağladığı sürece, herhangi bir iş akışında ve herhangi bir tetikleyiciyle kullanılabilir.

Örnekler

Örnek 1: Bir ürün için kullanılan şablonu güncelleme

Bu örnekte, bir üründe kullanılan şablonu güncellemek üzere productUpdate mutasyonunu çağırmak için Admin API talebi gönder işlemini kullanacağız.

id alanı gereklidir ve geçerli bir ürün GID'si olmalıdır. Burada, bu alanı {{product.id}} Liquid değişkeni olarak ayarlıyoruz. Bu örnekte, iş akışınızın ürün nesnesi sağlayan bir tetikleyiciye sahip olduğu varsayılmaktadır.

templateSuffix, ürüne uygulamak istediğiniz şablonun adıdır. Örneğin, pre-order şablonunu uygulamak istiyorsanız templateSuffix'i pre-order olarak ayarlamanız gerekir.

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

Örnek 2: Bir müşterinin vergi muafiyet durumunu güncelleme

Bu örnekte, müşterinin vergi muafiyet durumunu güncellemek üzere customerUpdate mutasyonunu çağırmak için Admin API talebi gönder işlemini kullanacağız.

id alanı gereklidir ve geçerli bir müşteri GID'si olmalıdır. Burada, bu alanı {{order.customer.id}} Liquid değişkeni olarak ayarlıyoruz. Bu örnekte, iş akışınızın sipariş nesnesi sağlayan bir tetikleyiciye sahip olduğu varsayılmaktadır.

taxExempt alanı, müşterinin vergiden muaf olup olmadığını gösteren bir booledir (boolean). Bu örnekte, bu alanı true olarak ayarlıyoruz.

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

Örnek 3: Müşterinin yerel ayarlarını güncelleştirme

Bu örnekte, müşterinin yerel ayarını güncellemek amacıyla customerUpdate mutasyonunu çağırmak için Admin API talebi gönder işlemini kullanacağız.

id alanı gereklidir ve geçerli bir müşteri GID'si olmalıdır. Burada, bu alanı {{customer.id}} Liquid değişkeni olarak ayarlıyoruz. Bu örnekte, iş akışınızın müşteri nesnesi sağlayan bir tetikleyiciye sahip olduğu varsayılmaktadır.

locale alanı, müşterinin yerel ayarlarını temsil eden bir dizedir. Bu örnekte, bu alanı en olarak ayarlıyoruz.

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

Liquid ipuçları

Flow, girdiyi yapılandırırken faydalı olabilecek bir json liquid filtresini destekler. Aşağıdaki örneklerin tamamında customerUpdate mutasyonu kullanılır ve iş akışınızın, müşteri nesnesi sağlayan bir tetikleyicisi olduğu varsayılır.

Dizelerle çalışma

Aşağıdaki örnek, bir müşteriyle ilgili notu günceller:

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

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

Uygun bir JSON oluşturmak için json filtresi dizeden kaçar. Bu, iş akışı çalıştırıldıktan sonra aşağıdaki JSON ile sonuçlanır:

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

Dizilerle çalışma

Dizi örneği

json filtresi, bir liquid dizisini JSON dizisine dönüşür. Aşağıdaki örnek, bir liquid dizisi sağlandığında bir JSON dizisi çıktısı oluşturur:

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

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

Bu, iş akışı çalıştırıldıktan sonra aşağıdaki JSON ile sonuçlanır:

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

For döngüsü örneği

Aşağıdaki örnekte, virgüllerle ayrılmış bir dizinin öğelerini içeren bir çıktı sağlamak için bir döngü kullanılmaktadır:

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

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

Bu, iş akışı çalıştırıldığında aşağıdaki JSON ile sonuçlanır:

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

Harita örneği

Map filtresi bir nesneler dizisinden, belirli bir özelliğin dizisini almak için kullanılabilir. Aşağıdaki örnekte bir müşteri adresleri dizisinden, city özelliklerini içeren bir dizi çıkarılmaktadır:

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

Bu, iş akışı çalıştırıldıktan sonra aşağıdaki JSON ile sonuçlanır:

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

Sınırlamalar

Admin API talebi gönder işlemi aşağıdaki sınırlamalara tabidir:

  • İşlem, Shopify Admin API'nin 2024-04 sürümünden Mutations ve Mutation inputs listesini gösterir.
  • Admin API sürümü yükseltildiğinde bu işlem, hataya neden olan bir değişikliğin bulunduğu bir alana dayanıyorsa başarısız olabilir.
  • İşlem, GraphQL sorgularını değil, yalnızca mutasyonları destekler.
  • İşlem, kullanımdan kaldırılmış olan mutasyonları desteklemez.
  • Bu işlem, bazı abonelik, pazarlama faaliyeti ve indirim mutasyonları da dahil olmak üzere, belirli uygulamalara özgü bazı mutasyonları desteklemez.
  • İşlem, senkronize olmayan mutasyonları veya Job türünü döndüren mutasyonları desteklemez.
  • İşlem, Node arabirimini uygulamayan mutasyonları desteklemez .

Şablonlar

Yeni siparişlere ücretsiz (%100 indirimli) ürün ekleme

Bu şablon, yeni siparişlere stokta varsa ücretsiz ve indirimli bir ürün ekler. Envanteri kontrol eder, %100 indirim uygular ve müşteriye bildirim göndermeden siparişi günceller. Bu otomasyon (1) siparişlerine sürpriz ücretsiz bir ürün ekleyerek müşteri memnuniyetini artırmak, (2) yeni veya daha az bilinen ürünleri siparişlere ücretsiz numune olarak ekleyerek tanıtmak veya (3) ücretsiz ürünleri ekleme ve indirim uygulama işlemini otomatik hale getirerek promosyonları kolaylaştırmak için yararlı olacaktır. Şablonu görüntüleyin

Şirket hesabı talepleri tarafından oluşturulan şirketlerin sipariş vermelerine izin ver

Şirket hesabı talebiyle bir şirket oluşturulduğunda bir sipariş verme izni atayın. Şablonu görüntüleyin

Varyasyonlar stokta olmadığında veya tekrar stoka eklendiğinde ürün şablonunu değiştirme

Bir ürün şablonunu, ürün varyasyonlarının envanter durumuna göre güncelleyin. İş akışı, ürünün stokta olduğu (mağazanın varsayılan şablonu), stokta olmadığı ve bir veya birden fazla varyasyonun stokta olmadığı durumlara ait şablonlar arasında geçiş yapmanıza olanak sağlar. Şablonu görüntüle

Bir siparişteki tüm dijital ürünleri gönderme

Dijital ürünler gibi fiziksel teslimat gerektirmeyen veya belirli bir SKU listesiyle eşleşen tüm ürünleri gönderir. Her yeni siparişte, her gönderim konumu ("gönderim siparişi") için bir defa çalışır. Şablonu görüntüleyin

Aradığınız cevapları bulamıyor musunuz? Yardımcı olmak için buradayız.