Shopify Flow と GraphQL Admin API

Flow は Shopify GraphQL Admin API を使用して、管理画面を拡張・強化するオートメーションや連携を構築します。Flow は API のバージョン 2026-01 を使用して、ワークフローの 条件変数を評価したり、Shopify ストアで アクションを実行したりします。Flow は API を呼び出すことでストアデータにアクセスするため、Flow から API で利用可能なほぼすべてのフィールドにアクセスできます。

Shopify は 3 か月ごとに新しい API バージョンをリリースするため、フィールドが変更または廃止された際には、一部のワークフローで更新が必要になる場合があります。

ワークフローでの GraphQL Admin API の使用

Flow のほとんどのアクションでは、GraphQL Admin API を使用して Shopify ストアに変更を加えます。たとえば、「注文にタグを追加」アクションでは tagsAdd ミューテーションを使用します。「Admin API リクエストを送信」アクションでは、Flow のアクションとしてまだ利用できないものを含め、ほとんどのミューテーションを使用できます。

ワークフローを作成する際、GraphQL Admin API の構文に基づいたフィールド名や説明をよく目にします。たとえば、ワークフローでバリエーションの販売可能な合計数量を特定するには、variants_item.inventoryQuantity 変数を使用します。また、お客様がメールニュースレターを購読したロケーションを特定するには、emailSubscriptionMethod 変数を使用します。

Flow アプリでワークフローを作成するために API に精通している必要はありませんが、変数名とその定義について少し理解しておくと、目的の特定のワークフローロジックを構築するのに役立ちます。たとえば、お客様の displayNamefirstName の違いを知っておくと、用途に応じてワークフローが正しいデータにアクセスするのに役立ちます。ワークフローの構築時には各変数に定義が含まれており、情報 をクリックして、任意の変数や定義について詳しく確認できます。

ストアデータと GraphQL Admin API

ワークフローは、ストアのデータを条件やアクションで使用します。Flow は GraphQL Admin API を使用してストアデータにアクセスします。つまり、API のほぼすべてのフィールドにアクセスできるということです。アクションに、トリガーまたは データ取得アクションによって提供される必要なデータがない場合、ワークフローは実行されず、エラーメッセージが表示されます。

たとえば、ワークフローが 「お客様作成」 トリガーで開始され、お客様のデータがワークフローにインポートされるとします。そのトリガーの後に、お客様のデータではなく注文のデータを必要とする 「注文にタグを追加」 アクションが続く場合、ワークフローでデータ欠落エラーが発生します。

API から出力されて Flow で使用される内容を理解し、ワークフローが想定どおりのデータを出力するようにするために、データをプレビューする、または API ドキュメントを確認する必要がある場合があります。

フィールドの引数と GraphQL Admin API

GraphQL Admin API のフィールドの中には、返されるデータを絞り込むための追加パラメーターである、引数 を必要とするものがあります。たとえば、product.inCollection フィールドでは、どのコレクションを確認するかを識別するために、コレクションの id 引数が必要です。引数がないと、フィールドは結果を返すことができません。

Flow では、必要な引数の値を指定することで、これらのフィールドから変数を作成でき、これをワークフロー内で使用できるようになります。また、後続のステップで参照しやすいように変数にカスタム名を割り当てることもできます。たとえば、product.inCollection(id: "gid://shopify/Collection/123456")product.inSummerBestsellers と名付けることができます。

引数を持つフィールドから変数を作成する方法について、詳しくはこちらをご覧ください。

各メタフィールドのネームスペースとキーをご自身で定義するため、引数は常にストア固有のものになります。そのため、メタフィールドから変数を作成するには、Flow で追加情報を指定する必要があります。Flow でのメタフィールドについて、詳しくはこちらをご覧ください。

API のバージョン管理

Shopify は 3 か月ごとに新しい API バージョンをリリースし、Flow はできるだけ早く新しいバージョンを採用しますが、最新バージョンより遅れる可能性があります。可能な場合はバージョン間の変更が自動的に解決されますが、以下のような状況を含め、一部の変更は単純ではない場合があります。

  • フィールドは削除されたものの、代替が提供されず、条件や Liquid の評価方法に影響を与える可能性がある場合。
  • フィールドが null 許容になり、条件や Liquid の評価方法に影響を与える可能性がある場合。
  • enum 値が変更されるか、新しい union 型または interface 型が追加され、Liquid またはコードに影響を与える可能性がある場合。
  • ミューテーションの引数が変更され、「Admin API リクエストを送信」アクションの設定に影響を与える可能性がある場合。

一部のワークフローは、手動で更新する必要がある場合があります。このような場合、ワークフローに 「更新が必要です」 または 「サポートされていない API」 というエラーが表示され、ワークフローエディタで必要な変更を行うよう、関連する API ドキュメントへと誘導されることがあります。これらの更新が完了して保存されると、ワークフローは自動的に更新され、Flow で利用可能な最新の API バージョンを使用するようになります。

API バージョンの互換性エラーがあるワークフローに緊急の変更を加えるために、一時的に問題を無視することを選択できます。これらの問題が解決されない場合、古い API バージョンが Shopify でサポートされなくなった時点で、ワークフローの実行が停止したり、エラーが発生したりする可能性があります。