n8n-io/n8n · error
SET_CREDENTIAL_FIELD
SET_CREDENTIAL_FIELD
Error message
${nodeRef} has a field named "${assignment.name}" which appears to be storing credentials. Use n8n's credential system instead. What it means
Fires in validateNode when a manual-mode Set assignment has a name that isCredentialFieldName flags as a credential-like field (e.g. names resembling password, apiKey, token). Storing secrets as Set node field values puts them in plaintext in the workflow JSON and execution data; the validator rejects this pattern. The offending input is the assignment.name string; this is a lint-style guard, not a runtime throw.
Solutions
- Remove the credential-valued assignment and attach an n8n credential to the node that needs the secret instead
- If the field is legitimate (not a secret), rename it so it no longer matches credential-style names
- Pass the secret via an expression referencing a credential-backed node's output rather than a literal value
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at packages/@n8n/workflow-sdk/src/workflow-builder/plugins/validators/set-node-validator.ts:185 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/788b6c32bb1e5aa5.
Report an issue: GitHub.
Appendix: source
Thrown at packages/@n8n/workflow-sdk/src/workflow-builder/plugins/validators/set-node-validator.ts:185
});
}
}
if (assignment.value === undefined) {
issues.push({
code: 'SET_INVALID_ASSIGNMENT',
message: `${nodeRef} assignment at index ${index} is missing the "value" field.`,
severity: 'error',
violationLevel: 'major',
nodeName: displayName,
parameterPath: `${parameterPath}.value`,
originalName: origForWarning,
});
}
if (isNonEmptyString(assignment.name) && isCredentialFieldName(assignment.name)) {
issues.push({
code: 'SET_CREDENTIAL_FIELD',
message: `${nodeRef} has a field named "${assignment.name}" which appears to be storing credentials. Use n8n's credential system instead.`,
severity: 'warning',
nodeName: displayName,
originalName: origForWarning,
});
}
}
return issues;
},
};
View on GitHub (pinned to 5ac6606e81)