NocoDB to n8n Integration
Patterns for connecting NocoDB data events to n8n workflow automation. Covers webhook triggers, data sync, and cross-service operations.
Integration Patterns
Pattern 1: NocoDB Webhook → n8n Workflow
Trigger an n8n workflow when NocoDB records change.
Setup steps:
- Create an n8n workflow with a Webhook trigger node
- Copy the webhook URL from n8n
- Create a NocoDB webhook pointing to that URL
n8n workflow structure:
[Webhook] → [Parse NocoDB Payload] → [Business Logic] → [Response]
NocoDB webhook payload format:
{
"type": "records.after.insert",
"data": {
"table_id": "tbl_xxx",
"rows": [
{
"Id": 1,
"Title": "New Record",
"Status": "active"
}
]
}
}
Supported NocoDB webhook events:
records.after.insert— new record createdrecords.after.update— record modifiedrecords.after.delete— record deletedrecords.after.bulkInsert— bulk records createdrecords.after.bulkUpdate— bulk records modified
Pattern 2: n8n Reads NocoDB Data via MCP
n8n workflow reads NocoDB records using the NocoDB MCP tools.
Tool: mcp__nocodb__queryRecords
Input: {
"tableId": "tbl_xxx",
"where": "(Status,eq,active)",
"limit": 100
}
Use this pattern when:
- n8n workflow needs to look up related data
- Workflow processes records in batches
- Data enrichment before sending to external services
Pattern 3: n8n Writes Back to NocoDB
n8n workflow creates or updates NocoDB records after processing.
Tool: mcp__nocodb__createRecords
Input: {
"tableId": "tbl_xxx",
"records": [
{
"Title": "Processed Item",
"Status": "completed",
"processed_at": "2026-04-07T12:00:00Z"
}
]
}
Pattern 4: Scheduled n8n Sync
n8n Schedule trigger polls NocoDB for records matching criteria and processes them.
[Schedule Trigger (every 5min)] → [Query NocoDB Records] → [Filter Changed] → [Process] → [Update Status in NocoDB]
Use for:
- Periodic data sync to external services
- Batch processing of queued records
- Report generation from NocoDB data
Workflow Naming Convention
Follow the project convention: [Domain] - [Action] - [Trigger]
Examples:
Orders - Process Payment - NocoDB WebhookUsers - Sync to CRM - ScheduleInventory - Update Stock - NocoDB Webhook
Error Handling
- n8n Error Trigger node — catch workflow failures, log to NocoDB error table
- Retry logic — use n8n retry settings for transient failures (429, 5xx)
- Dead letter table — create a
failed_eventsNocoDB table for manual review - Idempotency — check record ID before processing to avoid duplicates
Best Practices
- Name webhook trigger nodes descriptively:
NocoDB - New Order Created - Parse and validate the NocoDB payload early in the workflow
- Use NocoDB record IDs (not display values) for lookups
- Log the webhook event type for debugging
- Set n8n workflow to production mode for reliable execution
- Keep webhook URLs in environment variables, not hardcoded in NocoDB