Package Information
Downloads: 44 weekly / 194 monthly
Latest Version: 0.1.0
Author: Ammar Alshuaibi
Documentation
n8n-nodes-schema-guard
Schema Guard — A data-contract enforcer for n8n.
Validates incoming JSON items against a schema, auto-fills defaults, renames fields, and routes invalid records — bringing typed pipelines to n8n.
Why?
Workflows break silently when upstream JSON shapes change.
Schema Guard catches those changes at runtime, preventing bad data from cascading through your pipeline.
Features
| Capability | Description |
|---|---|
| Validate | Check every item against a JSON Schema (draft-07 / 2020-12) |
| Auto-Generate Schema | Infer the schema from the first incoming item automatically |
| Auto-Fill Defaults | Missing fields are populated from schema default values or custom defaults |
| Rename Fields | Map old field names to new ones before validation |
| Route / Drop / Error | Choose what happens to invalid items — route them to a second output, drop them silently, or halt the workflow |
| Structured Errors | Invalid items carry _schemaErrors with detailed diagnostics |
Installation
In n8n (Community Nodes)
- Go to Settings → Community Nodes
- Enter
n8n-nodes-schema-guard - Click Install
Manual / npm
npm install n8n-nodes-schema-guard
Then restart n8n.
Usage
1. Validate Mode
Paste a JSON Schema into the JSON Schema field. Every incoming item is validated against it.
{
"type": "object",
"properties": {
"email": { "type": "string", "format": "email" },
"age": { "type": "integer", "minimum": 0 },
"role": { "type": "string", "default": "viewer" }
},
"required": ["email"]
}
2. Auto-Generate Schema Mode
No schema? No problem. Schema Guard inspects the first item and derives a schema from it, then validates all items against that shape.
Options
| Option | Default | Description |
|---|---|---|
| Auto-Fill Defaults | true |
Fills missing fields from schema default values |
| Custom Defaults | {} |
Extra field → value pairs applied before validation |
| Rename Fields | {} |
{"old_name": "newName"} mapping applied before validation |
| Include Error Details | true |
Attaches _schemaErrors array to invalid items |
| Additional Properties | true |
Whether to allow fields not in the schema |
Outputs
| Output | Contents |
|---|---|
| Valid (top) | Items that passed validation |
| Invalid (bottom) | Items that failed (when On Invalid = "Route to Second Output") |
On Invalid Item
- Route to Second Output — invalid items are sent to the second output with error metadata
- Drop Silently — invalid items are removed entirely
- Stop Workflow With Error — throws an error, halting execution
Example Workflow
HTTP Request → Schema Guard → IF → Database
↓ (invalid)
Slack Notification
Development
git clone https://github.com/ammaralshuaibi/n8n-nodes-schema-guard.git
cd n8n-nodes-schema-guard
npm install
npm run build