# 使用 Shopify Flow 自动化

> 在计划开始、结束、失败或发现外部编辑时运行工作流，并从 Flow 启动、结束或创建计划。

指南 · 阅读约 3 分钟 · 更新于 2026年11月4日

Metascheduler 为 [Shopify Flow](https://apps.shopify.com/flow) 添加了触发器和操作。所有套餐都可以使用触发器，操作则适用于 Extra 和 Unlimited 套餐。您可以在**设置 > Flow** 中找到两者，并通过**打开 Flow** 进入 Flow。Flow 在所有语言中都以英文显示触发器、操作和字段的名称。本页在英文名称后附上了中文翻译。

## 触发器

每个触发器都会向您的工作流提供**计划 ID（Schedule ID）**、**计划名称（Schedule name）**、**时间（Timing）**（`AT`、`WINDOW`、`RECURRING` 或 `ROLLOUT`）、**发布 ID（Rollout ID）**（或为空）以及它更改的**资源（Resources）**。过长的列表会被截断，以符合 Flow 的大小限制。

| 触发器 | 运行时机 | 额外字段 |
| --- | --- | --- |
| **Schedule started** (计划已开始) | 计划进行其更改时。 |   |
| **Schedule ended** (计划已结束) | 计划的更改结束或被改回时。 |   |
| **Change failed** (更改失败) | 某项更改无法应用到部分项目时。 | **目标（Target）**、**错误消息（Error message）** |
| **Drift detected** (检测到外部更改) | 在 Metascheduler 更改之后，有人又更改了某个项目，因此没有被改回。 | **目标（Target）**、**资源 ID（Resource ID）** |

**目标（Target）**是更改类型的键，例如 `variant.price` 或 `product.status`（请参阅[更改类型](https://metascheduler.app/zh-CN/help/change-types.md)）。

*价格更改失败时向团队发送邮件的工作流。*

## 操作

| 操作 | 作用 | 字段 |
| --- | --- | --- |
| **Start schedule now** (立即开始计划) | 立即进行计划的更改。 | **计划 ID（Schedule ID）** |
| **End schedule now** (立即结束计划) | 立即结束一个生效中的计划，并将其项目改回。 | **计划 ID（Schedule ID）** |
| **Create schedule from template** (从模板创建计划) | 为您传入的项目创建一个已安排的计划。 | **模板（Template）**、**资源 ID（Resource IDs）**、**开始时间（Start time）**、**结束时间（End time）**、**计划名称（Schedule name）** |

Metascheduler 触发器会提供**计划 ID（Schedule ID）**，您可以将它传给操作。

### 从模板创建计划

**模板（Template）**是以下之一：

| 模板 | 更改内容 | 资源 ID 是 |
| --- | --- | --- |
| `product-active` | 将产品状态设为活跃 | 产品 ID |
| `product-draft` | 将产品状态设为草稿 | 产品 ID |
| `product-unlisted` | 将产品状态设为未上架 | 产品 ID |
| `metaobject-active` | 将元对象状态设为活跃 | 元对象条目 ID |
| `metaobject-draft` | 将元对象状态设为草稿 | 元对象条目 ID |

**资源 ID（Resource IDs）**是 Shopify ID，每行一个，或用逗号分隔。**开始时间（Start time）**是带偏移量的 ISO 8601 日期和时间。将**结束时间（End time）**留空表示保留更改，或设置结束时间让它届时还原。

```text
Template:      product-active
Resource IDs:  gid://shopify/Product/8123456789
               gid://shopify/Product/8123456790
Start time:    2026-11-27T09:00:00+01:00
End time:      2026-11-30T23:59:00+01:00
Schedule name: Black Friday drop
```

从 Flow 创建的计划与在应用中一样受套餐限制。如果某个操作失败，原因会显示在工作流的运行日志中。

## 点子

- **Change failed** (更改失败) → 向负责促销的人发送内部邮件或 Slack 消息。
- **Drift detected** (检测到外部更改) → 在产品上添加备注，或通知编辑过它的团队。
- 时间为 `ROLLOUT` 的**Schedule started** (计划已开始) → 在您的上新频道发帖。
- 产品被打上 `pre-order` 标签 → 使用 `product-active` 在上新日期**Create schedule from template** (从模板创建计划)。

> **旧版触发器**
>
> **Schedule executed (legacy)** (计划已执行（旧版）)只会为从旧版 Metascheduler 迁移过来的计划触发。新的工作流请使用**Schedule started** (计划已开始)。

## 相关文章

- [处理待您处理的事项](https://metascheduler.app/zh-CN/help/needs-you.md): “待您处理”列出了只有您能做的决定，例如计划期间被编辑的内容，或失败的更改。这里说明每一项的含义和该怎么做。
- [套餐和限制](https://metascheduler.app/zh-CN/help/plans-and-limits.md): 每个套餐包含什么、哪些内容计入限制，以及更改套餐时会发生什么。
- [示例：在设定的时间推出产品](https://metascheduler.app/zh-CN/help/product-launch.md): 在 9:00 整发布一个新的产品系列并将其添加到菜单，或者进行每周六都会回归的仅限周末上新。
