Shopify Flowで自動化する
スケジュールの開始時、終了時、失敗時、他者による編集の検出時にワークフローを実行し、Flowからスケジュールを開始、終了、作成します。
Metaschedulerは、Shopify Flowにトリガーとアクションを追加します。トリガーはすべてのプランで、アクションはExtraとUnlimitedで利用できます。どちらも設定 > FlowのFlowを開くから確認できます。なお、Flowではトリガー、アクション、フィールドの名前が英語で表示されます。このページでは、英語の名前の後ろに日本語の訳を添えています。
トリガー
どのトリガーも、ワークフローにSchedule ID (スケジュールID)、Schedule name (スケジュール名)、Timing (タイミング)(AT、WINDOW、RECURRING、ROLLOUT)、Rollout ID (ロールアウトID)(ない場合は空)、変更したResources (リソース)を渡します。長いリストは、Flowのサイズ制限に収まるよう省略されます。
| トリガー | 実行されるタイミング | 追加のフィールド |
|---|---|---|
| Schedule started (スケジュールが開始された) | スケジュールが変更を行ったとき。 | |
| Schedule ended (スケジュールが終了した) | スケジュールの変更が終了したとき、または元に戻されたとき。 | |
| Change failed (変更が失敗した) | 一部の項目で変更を行えなかったとき。 | Target (対象)、Error message (エラーメッセージ) |
| Drift detected (外部の変更を検出した) | Metaschedulerの変更後にほかのユーザーが項目を変更したため、元に戻されなかったとき。 | Target、Resource ID (リソースID) |
Targetは、variant.priceやproduct.statusのような変更の種類のキーです(変更の種類を参照)。
アクション
| アクション | 内容 | フィールド |
|---|---|---|
| Start schedule now (スケジュールを今すぐ開始) | スケジュールの変更を今すぐ行います。 | Schedule ID |
| End schedule now (スケジュールを今すぐ終了) | 適用中のスケジュールを今すぐ終了し、項目を元に戻します。 | Schedule ID |
| Create schedule from template (テンプレートからスケジュールを作成) | 渡した項目に対して、スケジュール済みのスケジュールを作成します。 | Template (テンプレート)、Resource IDs (リソースID)、Start time (開始時刻)、End time (終了時刻)、Schedule name |
Metaschedulerのトリガーから、アクションに渡すSchedule IDを取得できます。
テンプレートからスケジュールを作成
Templateは次のいずれかです。
| テンプレート | 変更内容 | リソースIDの種類 |
|---|---|---|
product-active | 商品のステータスをアクティブに | 商品ID |
product-draft | 商品のステータスを下書きに | 商品ID |
product-unlisted | 商品のステータスを未掲載に | 商品ID |
metaobject-active | メタオブジェクトのステータスをアクティブに | メタオブジェクトのエントリID |
metaobject-draft | メタオブジェクトのステータスを下書きに | メタオブジェクトのエントリID |
Resource IDsはShopifyのIDで、1行に1つ、またはカンマ区切りで入力します。Start timeは、オフセット付きのISO 8601形式の日付と時刻です。変更を維持する場合はEnd timeを空にし、その時刻に元に戻す場合は設定します。
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 dropFlowから作成したスケジュールにも、アプリと同じくプランの上限が適用されます。アクションが失敗した場合は、ワークフローの実行ログに理由が表示されます。
活用例
- Change failed (変更が失敗した) → セールの担当者に社内メールまたはSlackメッセージを送信する。
- Drift detected (外部の変更を検出した) → 商品にメモを追加するか、編集したチームに通知する。
- タイミングが
ROLLOUTのSchedule started (スケジュールが開始された) → ローンチ用のチャンネルに投稿する。 - 商品に
pre-orderタグが付いた → ローンチ日を開始時刻にして、product-activeでCreate schedule from template (テンプレートからスケジュールを作成)する。
Schedule executed (legacy) (スケジュールが実行された(旧バージョン))は、以前のバージョンのMetaschedulerから移行したスケジュールでのみ実行されます。新しいワークフローには、Schedule started (スケジュールが開始された)を使ってください。
解決しませんか?お気軽にご相談ください。