suspend()
ワークフローの実行を現在のステップで一時停止し、明示的に再開されるまで待機します。ワークフローの状態は保存され、後で続行することができます。
使用例
const approvalStep = new Step({
id: "needsApproval",
execute: async ({ context, suspend }) => {
if (context.steps.amount > 1000) {
await suspend();
}
return { approved: true };
},
});
パラメーター
metadata?:
Record<string, any>
中断された状態に保存するオプションのデータ
戻り値
Promise<void>:
Promise
ワークフローが正常に一時停止されたときに解決されます
その他の例
メタデータを含む一時停止:
const reviewStep = new Step({
id: "review",
execute: async ({ context, suspend }) => {
await suspend({
reason: "Needs manager approval",
requestedBy: context.user,
});
return { reviewed: true };
},
});