Shopify Flowで使用されているAPIデータをプレビューする

ワークフローの構築時に、条件とアクションにストアのデータを使用することが度々あります。Shopify Flowでは、GraphQL Admin APIを呼び出してストアデータにアクセスします。つまり、API内のほぼすべてのフィールドにアクセスできるということになります。

ワークフローを構築する際、APIに基づいてフィールド名と説明が度々表示されることがありますが、APIによって出力されるデータについて知る必要があるかもしれません。たとえば、下書き注文から作成された注文のアプリ名を知りたいと思う場合があります。また、ワークフローがデータやその形式を期待どおりに出力しているかについて確認が必要な場合もあります。

データを確認するために、Shopify Flowにはいくつかの選択肢があります。

管理画面でフィールドを見つける

ほとんどの場合、管理画面でデータを見つけることができます。たとえば、product.titleは商品ページに表示されます。

ライブワークフローでフィールドを使用する

[ログ出力] アクションを利用すると、ワークフローでフィールドを安全に使用できます。ワークフローを実行すると、[ログ出力] アクションにより、変数とテキストの出力が実行履歴ページに印刷されます。[内部メールを送信] などの通知アクションを使用することもできます。

ログ出力を使用する手順

  1. 手動でトリガーできるトリガーを選択します。
  2. ワークフローに [ログ出力] アクションを追加し、トリガーに接続します。
  3. [ログ出力] 設定で、[変数を追加] をクリックして、表示する変数を [出力] セクションに追加します。
  4. 追加したら [ワークフローをオン] をクリックします。
  5. ワークフローを手動で実行するか、トリガーを起動してワークフローを実行します。たとえば、「注文が作成されたとき」というトリガーを使用している場合は、テスト注文を作成します。
  6. ワークフローを実行した後、変数のアクティビティログを確認します。

リソースJSONページを参照する

管理画面のリソースページ (注文商品お客様ページなど) では、そのページに使用されているデータを表示できます。このデータは、Shopify Flowが使用する名前および形式と完全に一致するものではありませんが、値はGraphQL Admin APIのものと一致します。データを確認するには、URLに.jsonを追加します。

たとえば、管理画面で [注文] ページに移動し、注文をクリックして注文に移動します。ブラウザのアドレスバーに表示されているページアドレスを以下のように変更します。

https://https://admin.shopify.com/store/<shopname>/orders/3804849891234

次のような形にします。

https://https://admin.shopify.com/store/<shopname>/orders/3804849891234.json

GraphiQLまたは外部サービスのAPIツールを使用する

外部サービスのAPIツール (Postmanなど) やShopifyが無償提供しているGraphiQLを使用すれば、APIに直接クエリを実行できます。この方法によって最も正確な結果が得られますが、実行するにはGraphQLクエリの作成にある程度精通している必要があります。

GraphiQLについて、Shopifyでは、一般的なデータを含むウェブベースのGraphiQLエクスプローラーGraphiQLアプリの両方を提供しています。GraphiQLを使用すると、Shopify Flowで表示されるフィールド名と完全に一致するGraphQLクエリを構築することができます。このアプリを使用している場合、値はストアと完全に一致します。

このツールを使用することで、実際のショップデータを使用して、Shopify Flowがどのようなデータを使用しているかを正確に把握することができます。たとえば、次のようなクエリを作成します。

{
  orders(first:5, reverse:true) {
    nodes {
      createdAt
      app {
        name
      }
      channelInformation {
        app {
          title
        }
      }
    }
  }
}

次の結果では、変数order / app / nameによって注文のアプリ名が表示されます。この場合、注文は下書き注文アプリから作成されたので、値はDraft Ordersになります。チャネル情報は、Point of Saleアプリでのみ利用できます。

{
  "data": {
    "orders": {
      "nodes": [
        {
          "createdAt": "2023-04-10T12:32:41Z",
          "app": {
            "name": "Draft Orders"
          },
          "channelInformation": null
        },
        {
          "createdAt": "2023-04-10T12:29:12Z",
          "app": {
            "name": "Draft Orders"
          },
          "channelInformation": null
        },
        {
          "createdAt": "2023-03-17T20:23:10Z",
          "app": {
            "name": "Draft Orders"
          },
          "channelInformation": null
        },
        {
          "createdAt": "2023-03-17T20:20:53Z",
          "app": {
            "name": "Draft Orders"
          },
          "channelInformation": null
        },
        {
          "createdAt": "2023-03-17T15:45:15Z",
          "app": {
            "name": "Point of Sale"
          },
          "channelInformation": {
            "app": {
              "title": "Point of Sale"
            }
          }
        }
      ]
    }
  }

Shopifyで販売を開始する準備はできていますか?

無料体験を試す