Admin API 요청 보내기

Send Admin API request 작업을 사용하면 Flow에서 아직 작업으로 사용할 수 없는 뮤테이션을 비롯하여 GraphQL Admin API의 대부분의 뮤테이션을 통해 스토어를 변경할 수 있습니다.

필드

Send Admin API request 작업에는 다음 필드가 포함됩니다.

Send Admin API request 작업에 사용되는 필드입니다.
필드설명
뮤테이션필수. 호출하려는 Shopify GraphQL Admin 뮤테이션입니다. 뮤테이션은 작업을 수행하거나 데이터를 업데이트하는 API입니다.
뮤테이션 입력필수. 뮤테이션 요청의 일부로 전송해야 하는 데이터(JSON 형식)입니다. 각 뮤테이션에는 서로 다른 데이터 세트가 필요하며, 이는 각 뮤테이션에 제공된 링크에 설명되어 있습니다. 필요한 JSON을 구성하려면 Liquid 또는 코드 실행 작업을 사용할 수 있습니다.

트리거

Send Admin API request 작업은 모든 워크플로에서 어떤 트리거와도 함께 사용할 수 있습니다. 단, 워크플로가 뮤테이션 입력을 구성하는 데 필요한 데이터를 제공해야 합니다.

예 1: 제품에 사용되는 템플릿 업데이트하기

이 예에서는 Send Admin API request 작업을 사용하여 productUpdate 뮤테이션을 호출해 제품에 사용되는 템플릿을 업데이트합니다.

id 필드는 필수이며 유효한 제품 GID여야 합니다. 여기서는 {{product.id}} Liquid 변수를 사용하여 설정합니다. 이는 워크플로에 제품 개체를 제공하는 트리거가 있다고 가정합니다.

templateSuffix는 제품에 적용하려는 템플릿의 이름입니다. 예를 들어 pre-order 템플릿을 적용하려면 templateSuffix를 pre-order로 설정하면 됩니다.

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

예 2: 고객의 세금 면제 상태 업데이트하기

이 예에서는 Send Admin API request 작업을 사용하여 customerUpdate 뮤테이션을 호출해 고객의 세금 면제 상태를 업데이트합니다.

id 필드는 필수이며 유효한 고객 GID여야 합니다. 여기서는 {{order.customer.id}} Liquid 변수를 사용하여 설정합니다. 이는 워크플로에 주문 개체를 제공하는 트리거가 있다고 가정합니다.

taxExempt 필드는 고객의 세금 면제 여부를 나타내는 부울(boolean) 값입니다. 이 예에서는 true로 설정합니다.

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

예 3: 고객의 로케일 업데이트하기

이 예에서는 Send Admin API request 작업을 사용하여 customerUpdate 뮤테이션을 호출해 고객의 로케일을 업데이트합니다.

id 필드는 필수이며 유효한 고객 GID여야 합니다. 여기서는 {{customer.id}} Liquid 변수를 사용하여 설정합니다. 이는 워크플로에 고객 개체를 제공하는 트리거가 있다고 가정합니다.

locale 필드는 고객의 로케일을 나타내는 문자열입니다. 이 예에서는 en으로 설정합니다.

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

Liquid 팁

Flow는 입력을 구성하는 데 유용한 json liquid 필터를 지원합니다. 다음 예는 모두 customerUpdate 뮤테이션을 사용하며, 워크플로에 고객 개체를 제공하는 트리거가 있다고 가정합니다.

문자열 작업

다음 예는 고객의 참고 사항을 업데이트합니다.

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

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

json 필터는 문자열을 이스케이프하여 올바른 JSON 형식을 보장합니다. 워크플로가 실행되면 다음과 같은 JSON이 생성됩니다.

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

배열 작업

배열 예

json 필터는 liquid 배열을 JSON 배열로 변환합니다. 다음 예는 liquid 배열이 제공될 때 JSON 배열을 출력합니다.

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

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

워크플로가 실행되면 다음과 같은 JSON이 생성됩니다.

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

For 루프 예

다음 예에서는 루프를 사용하여 배열의 요소를 쉼표로 구분하여 출력합니다.

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

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

워크플로가 실행되면 다음과 같은 JSON이 생성됩니다.

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

Map 예

map 필터를 사용하면 개체 배열에서 특정 속성의 배열을 가져올 수 있습니다. 다음 예에서는 고객 주소 배열에서 city 속성 배열을 추출합니다.

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

워크플로가 실행되면 다음과 같은 JSON이 생성됩니다.

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

제한 사항

Send Admin API request 작업에는 다음과 같은 제한 사항이 있습니다.

  • 이 작업은 Flow에서 사용하는 Admin API 버전의 뮤테이션뮤테이션 입력 목록을 표시합니다.
  • 변경되거나 지원이 중단된 뮤테이션 또는 필드를 사용하는 경우, 새 API 버전이 출시될 때 이 작업이 실패할 수 있습니다.
  • 이 작업은 GraphQL 쿼리는 지원하지 않고 뮤테이션만 지원합니다.
  • 이 작업은 지원이 중단된 뮤테이션을 지원하지 않습니다.
  • 이 작업은 일부 구독, 마케팅 활동, 할인 뮤테이션을 포함하여 특정 앱에만 해당하는 일부 뮤테이션을 지원하지 않습니다.
  • 이 작업은 비동기 뮤테이션 또는 Job 유형을 반환하는 뮤테이션을 지원하지 않습니다.
  • 이 작업은 Node 인터페이스를 구현하지 않는 뮤테이션을 지원하지 않습니다.

템플릿

새 주문에 무료(100% 할인) 품목 추가

이 템플릿은 품목의 재고가 있는 경우 새 주문에 무료 할인 품목을 추가합니다. 재고를 확인하고 100% 할인을 적용하며 고객에게 알리지 않고 주문을 업데이트합니다. 이 자동화는 (1) 주문에 깜짝 무료 품목을 포함하여 고객 만족도를 높이거나, (2) 주문에 무료 샘플로 추가하여 신제품이나 잘 알려지지 않은 제품을 홍보하거나, (3) 무료 품목의 포함 및 할인을 자동화하여 프로모션을 간소화하는 데 유용합니다. 템플릿 보기

회사 계정 요청으로 생성된 회사의 주문 허용

회사 계정 요청을 통해 회사가 생성되면 주문 권한을 할당합니다. 템플릿 보기

이형 상품이 품절되거나 재입고될 때 제품 템플릿 변경

제품 이형 상품의 재고에 따라 제품 템플릿을 업데이트합니다. 이 워크플로를 사용하면 재고 있음(스토어의 기본 템플릿), 품절, 하나 이상의 이형 상품 품절 시 템플릿 간에 전환할 수 있습니다. 템플릿 보기

주문 내 모든 디지털 품목 주문 처리

디지털 품목과 같이 실제 배송이 필요하지 않거나 SKU 목록과 일치하는 품목의 주문을 처리합니다. 새 주문에 대해 각 주문 처리 위치('fulfillment order')마다 한 번씩 실행됩니다. 템플릿 보기