n8n-io/n8n · error
MISSING_TRIGGER
MISSING_TRIGGER
Error message
Workflow has no trigger node. It will need to be started manually.
What it means
Workflow-level validator: no node in the built workflow is a trigger type and the allowNoTrigger validation option is not set. The workflow is technically valid but can only run via manual/CLI start, which is usually unintended, so a MISSING_TRIGGER issue is emitted.
Solutions
- Add a trigger node (manual, schedule, webhook, app trigger) to the workflow
- Pass allowNoTrigger in validation options if manual start is intentional
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at packages/@n8n/workflow-sdk/src/workflow-builder/plugins/validators/missing-trigger-validator.ts:41 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of n8n-io/n8n@5ac6606e81 (2026-08-12).
Data as JSON: /api/errors/ca2ff34f182d2332.
Report an issue: GitHub.
Appendix: source
Thrown at packages/@n8n/workflow-sdk/src/workflow-builder/plugins/validators/missing-trigger-validator.ts:41
// Per-node validation not used - we do workflow-level validation
validateNode: (): ValidationIssue[] => [],
validateWorkflow(ctx: PluginContext): ValidationIssue[] {
// Check if the allowNoTrigger option is set
if (ctx.validationOptions?.allowNoTrigger) {
return [];
}
// Check if any node is a trigger
const hasTrigger = [...ctx.nodes.values()].some((graphNode) =>
isTriggerNodeType(graphNode.instance.type),
);
if (!hasTrigger) {
return [
{
code: 'MISSING_TRIGGER',
message: 'Workflow has no trigger node. It will need to be started manually.',
severity: 'informational',
},
];
}
return [];
},
};
View on GitHub (pinned to 5ac6606e81)