Shopify Flow 和 GraphQL Admin API

Flow 使用 Shopify GraphQL Admin API 来构建可扩展和增强 Shopify 后台的自动化功能和集成。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` 变量。

您无需精通 API 即可使用 Flow 应用创建工作流,但对变量名称及其定义稍作了解有助于您构建所需的特定工作流逻辑。例如,了解客户的 `displayName` 与其 `firstName` 之间的区别,可以帮助您的工作流根据预期用途访问正确的数据。在您构建工作流时,每个变量都附有定义,并且您可以点击 Info 来详细了解任何变量或定义。

商店数据和 GraphQL Admin API

工作流在条件和操作中使用您商店中的数据。Flow 使用 GraphQL Admin API 访问商店数据,这意味着您可以访问该 API 中的几乎所有字段。如果某个操作没有触发器或“获取数据”操作提供的必要数据,则工作流不会运行,并且会显示一条错误消息。

例如,某个工作流以创建客户触发器开始,并将客户数据导入该工作流。如果该触发器之后是添加订单标签操作(该操作需要订单数据而非客户数据),则工作流将导致数据缺失错误。

您可能需要预览数据或查看 API 文档,以便了解 API 输出并在 Flow 中使用的数据,并确保您的工作流输出您预期的数据。

字段参数和 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 的评估方式。
  • 当字段变为可为空时,可能会影响条件或 Liquid 的评估方式。
  • 当枚举值发生更改或添加了新的联合或接口类型时,可能会影响 Liquid 或代码。
  • 当变更参数发生更改时,可能会影响“发送 Admin API 请求”操作的配置。

某些工作流可能需要手动更新。在这些情况下,工作流可能会显示需要更新不支持的 API 错误,并引导您查看相关的 API 文档 以便在工作流编辑器中进行必要的更改。完成并保存这些更新后,工作流会自动更新以使用 Flow 中可用的最新 API 版本。

您可以选择暂时忽略问题,以便对存在 API 版本兼容性错误的工作流进行紧急更改。如果这些问题未得到解决,则当 Shopify 不再支持旧版 API 时,该工作流可能会停止运行或导致错误。