Workflows
Create, trigger, and manage automated outreach sequences.
Tools (8)
Section titled “Tools (8)”list_workflows
Section titled “list_workflows”Full name: campaignstack_list_workflows
List all workflows for a campaign. Returns workflow IDs, names, status, enabled flag, and node count. Use the returned workflowId values with campaignstack_get_workflow to inspect workflow details, or campaignstack_trigger_workflow to execute a workflow.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
campaignId | string | Yes | — | (min length: 1) |
get_workflow
Section titled “get_workflow”Full name: campaignstack_get_workflow
Get a workflow by ID with all nodes (type, label, config, position, execution target) and edges. If the workflow is not found, use campaignstack_list_workflows to find valid workflow IDs.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workflowId | string | Yes | — | (min length: 1) |
get_workflow_node_types
Section titled “get_workflow_node_types”Full name: campaignstack_get_workflow_node_types
Returns the complete vocabulary of workflow node types available for building automation graphs. For each node type includes: nodeType key, label, description, configHint (exact TypeScript-style config shape), a concrete example node, exit handles for branching nodes, and credit cost per execution. Also returns graphShape documentation (how to structure nodes/edges) and a minimal end-to-end example graph. Use this before calling campaignstack_create_workflow to ensure you author a valid graph.
create_workflow
Section titled “create_workflow”Full name: campaignstack_create_workflow
Create a new workflow from a graph you author. The graph defines automation nodes (e.g. linkedin:profile_view, linkedin:connection_request, flow:wait) and directed edges. Use campaignstack_get_workflow_node_types first to discover valid node types, their configHint shapes, and the required graph format. Returns { workflowId, nodeCount } on success. sourceConfig is optional — omit it to get a default campaign_pool source with icpScoreMin 50. Signal-intake graphs (lead-list-based source providers) are not supported by this tool.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workspaceId | string | No | — | Defaults to the API key’s workspace |
campaignId | string | No | — | Associate this workflow with a campaign |
name | string | Yes | — | (min length: 1) |
graph | object | Yes | — | Workflow graph: nodes (nodeType, label, config) + edges (sourceIndex, targetIndex). Use campaignstack_get_workflow_node_types to discover valid node types. |
sourceConfig | object | No | — | Source node configuration (providers format only). Omit to use the default: a single campaign_pool provider with icpScoreMin 50. Signal-intake graphs using lead-list-based sources are not supported by this tool. |
update_workflow
Section titled “update_workflow”Full name: campaignstack_update_workflow
Update a workflow’s name, description, and/or graph. Provide name/description to patch metadata; provide graph to replace the non-anchor nodes and edges. Both can be supplied in a single call. Set existingNodeId on graph nodes that update an existing node in place — claimed nodes keep their in-flight leads, while removing a node that still holds active leads fails with NODE_HAS_ACTIVE_LEADS (drain it first with campaignstack_cancel_node_leads). Graph replacement runs validation — invalid graphs are rejected and the workflow is left unchanged. To enable or disable a workflow use campaignstack_update_workflow_status instead.
delete_workflow
Section titled “delete_workflow”Full name: campaignstack_delete_workflow
Permanently delete a workflow and all associated data. This action is irreversible and cascades to: workflow nodes, edges, lead-list source providers, node lead-list entries (lead progress), per-lead workflow contexts, and webhook tokens tied to this workflow. Use campaignstack_list_workflows to find workflow IDs. If you want to stop a workflow without deleting it, use campaignstack_update_workflow_status instead.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workflowId | string | Yes | — | (min length: 1) |
update_workflow_status
Section titled “update_workflow_status”Full name: campaignstack_update_workflow_status
Enable or disable a workflow. When enabled, the workflow will process leads according to its node configuration. Use campaignstack_get_workflow to inspect the current node configuration first.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workflowId | string | Yes | — | (min length: 1) |
enabled | boolean | Yes | — |
trigger_workflow
Section titled “trigger_workflow”Full name: campaignstack_trigger_workflow
Trigger workflow execution for specific leads or all leads in the workflow’s lead list. Leads are set to ‘waiting’ status at the workflow entry node and will be processed by the workflow executor. Use campaignstack_list_workflows to find workflow IDs, and campaignstack_get_lead_list to see available leads.
Parameters
Section titled “Parameters”| Name | Type | Required | Default | Description |
|---|---|---|---|---|
workflowId | string | Yes | — | (min length: 1) |
leadIds | string[] | No | — |