Operation-aware node configuration guidance. Use when configuring nodes, understanding property dependencies, determining required fields, choosing between get_node_essentials and get_node_info, or learning common configuration patterns by node type.
Installer avec Codex ou Claude Copiez ce prompt, collez-le dans Codex, Claude ou un autre assistant, puis laissez-le vérifier la page du skill et l'installer pour vous.
Une commande directe contourne le prompt de vérification. Examinez la source avant de l'exécuter.
Operation-aware node configuration guidance. Use when configuring nodes, understanding property dependencies, determining required fields, choosing between get_node_essentials and get_node_info, or learning common configuration patterns by node type.
n8n Node Configuration
Expert guidance for operation-aware node configuration with property dependencies.
Configuration Philosophy
Progressive disclosure: Start minimal, add complexity as needed
Configuration best practices:
get_node_essentials is the most used discovery pattern
56 seconds average between configuration edits
91.7% success rate with essentials-based configuration
Key insight: Most configurations need only essentials, not full schema!
Core Concepts
1. Operation-Aware Configuration
Not all fields are always required - it depends on operation!
Example: Slack node
// For operation='post'
{
"resource": "message",
"operation": "post",
"channel": "#general", // Required for post"text": "Hello!"// Required for post
}
// For operation='update'
{
"resource": "message",
"operation": "update",
: ,
:
}
"messageId"
"123"
// Required for update (different!)
"text"
"Updated!"
// Required for update
// channel NOT required for update
Key: Resource + operation determine which fields are required!
2. Property Dependencies
Fields appear/disappear based on other field values
Example: HTTP Request node
// When method='GET'
{
"method": "GET",
"url": "https://api.example.com"// sendBody not shown (GET doesn't have body)
}
// When method='POST'
{
"method": "POST",
"url": "https://api.example.com",
"sendBody": true, // Now visible!"body": { // Required when sendBody=true"contentType": "json",
"content": {...}
}
}
Mechanism: displayOptions control field visibility
3. Progressive Discovery
Use the right tool for the right job:
get_node_essentials (91.7% success rate)
Quick overview
Required fields
Common options
Use first - covers 90% of needs
get_property_dependencies (for complex nodes)
Shows what fields depend on others
Reveals conditional requirements
Use when essentials isn't enough
get_node_info (full schema)
Complete documentation
All possible fields
Use when essentials + dependencies insufficient
Configuration Workflow
Standard Process
1. Identify node type and operation
↓
2. Use get_node_essentials
↓
3. Configure required fields
↓
4. Validate configuration
↓
5. If dependencies unclear → get_property_dependencies
↓
6. Add optional fields as needed
↓
7. Validate again
↓
8. Deploy
{
"resource": "channel",
"operation": "create",
"name": "new-channel", // Required"isPrivate": false// Optional// Note: text NOT required for this operation
}
// Adding every possible field
{
"method": "GET",
"url": "...",
"sendQuery": false,
"sendHeaders": false,
"sendBody": false,
"timeout": 10000,
"ignoreResponseCode": false,
// ... 20 more optional fields
}
Good:
// Start minimal
{
"method": "GET",
"url": "...",
"authentication": "none"
}
// Add fields only when needed
❌ Don't: Skip Validation
Bad:
// Configure and deploy without validatingconst config = {...};
n8n_update_partial_workflow({...}); // YOLO
Good:
// Validate before deployingconst config = {...};
const result = validate_node_operation({...});
if (result.valid) {
n8n_update_partial_workflow({...});
}
❌ Don't: Ignore Operation Context
Bad:
// Same config for all Slack operations
{
"resource": "message",
"operation": "post",
"channel": "#general",
"text": "..."
}
// Then switching operation without updating config
{
"resource": "message",
"operation": "update", // Changed"channel": "#general", // Wrong field for update!"text": "..."
}
Good:
// Check requirements when changing operationget_node_essentials({
nodeType: "nodes-base.slack"
});
// See what update operation needs (messageId, not channel)
Best Practices
✅ Do
Start with get_node_essentials
91.7% success rate
Faster than get_node_info
Sufficient for most needs
Validate iteratively
Configure → Validate → Fix → Repeat
Average 2-3 iterations is normal
Read validation errors carefully
Use property dependencies when stuck
If field seems missing, check dependencies
Understand what controls field visibility
get_property_dependencies reveals rules
Respect operation context
Different operations = different requirements
Always check essentials when changing operation
Don't assume configs are transferable
Trust auto-sanitization
Operator structure fixed automatically
Don't manually add/remove singleValue
IF/Switch metadata added on save
❌ Don't
Jump to get_node_info immediately
Try essentials first
Only escalate if needed
Full schema is overwhelming
Configure blindly
Always validate before deploying
Understand why fields are required
Check dependencies for conditional fields
Copy configs without understanding
Different operations need different fields
Validate after copying
Adjust for new context
Manually fix auto-sanitization issues
Let auto-sanitization handle operator structure
Focus on business logic
Save and let system fix structure
Detailed References
For comprehensive guides on specific topics:
DEPENDENCIES.md - Deep dive into property dependencies and displayOptions