n8n-expression-syntax

Validate and fix n8n expression syntax for dynamic content and webhook data.

Updated Mar 21, 2026
One-click install
npx skills add https://github.com/TuBl/n8n --skill n8n-expression-syntax-tubl
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: n8n-expression-syntax
Source: https://github.com/TuBl/n8n/tree/main/.codex/skills/n8n-mcp-skills-v1.1.0/n8n-expression-syntax
Command: npx skills add https://github.com/TuBl/n8n --skill n8n-expression-syntax-tubl

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Writing and debugging n8n expressions can be error-prone due to complex syntax ({{}}), tricky data paths, and the common pitfall of webhook data being nested under .body. This guide helps users understand the correct patterns and avoid the most frequent mistakes when working with expressions in workflows.

Core Features & Use Cases

  • Understand and apply the standard expression format using double curly braces for dynamic content across $json, $node, $now, and $env.
  • Learn how to access webhook data correctly, noting that user data resides under the body property of the webhook output.
  • Master referencing data from other nodes with proper quoting for spaces and exact node name casing, plus common debugging patterns.
  • Use practical examples to validate and troubleshoot expressions within real workflows, improving reliability and maintainability.

Quick Start

Create a simple workflow with a Webhook node and access values using the body path in the JSON payload to see how expressions resolve.

Frequently Asked Questions about n8n-expression-syntax

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I access webhook data in n8n expressions without errors?

Access webhook data in n8n expressions by targeting the body property of the webhook output. User data sent to the webhook resides under the body path, so referencing $json.body ensures correct payload extraction and avoids common data path mistakes.

What is the correct syntax for referencing data from other nodes in n8n workflows?

Referencing data from other nodes in n8n workflows requires exact node name casing and proper quoting for spaces. Use standard expression syntax with double curly braces to resolve cross-node variables like $node dynamically across your workflow scenarios.

Why does my n8n expression syntax fail inside a Code node?

n8n expression syntax fails inside a Code node when dynamic expression patterns are used unnecessarily. You should avoid wrapping standard JavaScript variables in double curly braces within Code nodes, as this causes syntax parsing errors during workflow execution.

How do I use $json and $node variables correctly in n8n workflow expressions?

Use $json and $node variables in n8n workflow expressions by wrapping them in double curly braces for dynamic content. These core variables allow you to access incoming JSON payloads and reference data outputs from preceding nodes across typical workflow scenarios.

What are common n8n expression mistakes when building dynamic workflow content?

Common n8n expression mistakes include incorrect webhook body nesting, failing to quote node names with spaces, and misusing expressions inside Code nodes. Validating syntax patterns against core variables like $json and $node prevents these frequent workflow debugging issues.

Can I use environment variables and timestamps in n8n expressions?

You can use environment variables and timestamps in n8n expressions by referencing $env and $now within double curly braces. These core variables resolve dynamically during workflow execution to inject secure environment configurations and current time data into your nodes.