diff --git a/web/src/components/app/campaigns/sequences/CampaignFlow.tsx b/web/src/components/app/campaigns/sequences/CampaignFlow.tsx
index 0df36229..0ac2e3d3 100644
--- a/web/src/components/app/campaigns/sequences/CampaignFlow.tsx
+++ b/web/src/components/app/campaigns/sequences/CampaignFlow.tsx
@@ -75,8 +75,10 @@ import { SelectMenu, type SelectOption } from "@/components/ui/select-menu";
import type { AppError } from "@/lib/api/client/normalizeError";
import buildError from "@/lib/helper/buildError";
import SequenceView from "./SequenceView";
+import StepVariants from "./StepVariants";
import CategoryPicker from "@/components/app/contacts/CategoryPicker";
-import type { SequenceAction, SequenceActionType } from "@/lib/api/models/app/campaigns/sequences/Action";
+import type { ActionKV, SequenceAction, SequenceActionType } from "@/lib/api/models/app/campaigns/sequences/Action";
+import { useAutomations } from "@/lib/api/hooks/app/automations/useAutomations";
import TaskTypePicker from "@/components/app/crm/TaskTypePicker";
import DealStagePicker from "@/components/app/crm/DealStagePicker";
import useMembers from "@/lib/api/hooks/app/organizations/useMembers";
@@ -388,6 +390,7 @@ const ACTION_META: Record
) : (
-
+
+
+
+
)}
@@ -1722,6 +1735,7 @@ const ADD_ACTION_OPTIONS: { type: SequenceActionType; label: string }[] = [
{ type: "move_deal_stage", label: "Move deal stage" },
{ type: "unsubscribe", label: "Unsubscribe" },
{ type: "notify", label: "Notify (webhook)" },
+ { type: "run_automation", label: "Run automation" },
];
function AddNodeMenu({
@@ -1812,6 +1826,9 @@ function defaultActionFor(type: SequenceActionType): SequenceAction {
if (type === "move_deal_stage") {
return { type };
}
+ if (type === "run_automation") {
+ return { type, automation_values: [] };
+ }
return { type };
}
@@ -2098,6 +2115,8 @@ function ActionEditor({
)}
+ {action.type === "run_automation" && }
+