n8n-code-python

Write Python code in n8n Code nodes using standard library and _input data access patterns.

Updated Feb 26, 2026
One-click install
npx skills add https://github.com/guestyorg/n8n-workflow-builder --skill n8n-code-python-guestyorg
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: n8n-code-python
Source: https://github.com/guestyorg/n8n-workflow-builder/tree/main/n8n-skills/skills/n8n-code-python
Command: npx skills add https://github.com/guestyorg/n8n-workflow-builder --skill n8n-code-python-guestyorg

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Writing Python in n8n Code nodes fails frequently because of hidden constraints: no external libraries, webhook data nested under "body", strict return format requirements, and KeyError/IndexError crashes from unsafe data access. This Skill provides the patterns and error-prevention guidance needed to write working Python Code nodes on the first attempt. ## Core Features & Use Cases - Data Access Patterns: Complete guidance on _input.all(), _input.first(), _input.item, and _node references, including the critical webhook "body" nesting gotcha. - Standard Library Reference: Documents available modules (json, datetime, re, base64, hashlib, urllib.parse, statistics) and workarounds for missing libraries like requests and pandas. - Error Prevention: Covers the top 5 Python Code node errors (ModuleNotFoundError, missing return, KeyError, IndexError, wrong return format) with fixes. - Use Case: You receive webhook data and need to filter, transform, and aggregate it in Python. The Skill shows you to access _input.first()["json"]["body"], use .get() for safe dictionary access, and return [{"json": {...}}] format. ## Quick Start Ask the AI to write a Python Code node that processes webhook data and returns filtered results in the correct n8n format.

Frequently Asked Questions about n8n-code-python

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

FAQPage Schema
How do I access webhook data in an n8n Python Code node?

Access webhook data via _input.first()["json"]["body"], since the Webhook node nests all payload data under the "body" property. Use .get("body", {}) for safe access to avoid KeyError when fields are missing.

Can I use requests or pandas in n8n Python Code nodes?

No, n8n Python Code nodes only support the standard library; importing requests, pandas, or numpy raises ModuleNotFoundError. Use the HTTP Request node for API calls or switch to JavaScript, which offers $helpers.httpRequest.

Should I use Python or JavaScript in n8n Code nodes?

JavaScript is recommended for 95% of use cases because it includes n8n helpers and the Luxon date library. Use Python only when you need standard library modules like statistics or re, or when your team prefers Python syntax.

Why does my n8n Python Code node return a format error?

The Code node requires returning a list of dictionaries each containing a "json" key, like return [{"json": {...}}]. Returning a plain dictionary, string, or list without the "json" wrapper causes workflow execution to fail.

How do I avoid KeyError in n8n Python Code nodes?

Use dictionary .get() with default values instead of direct key access, such as item.get("name", "Unknown") instead of item["name"]. For nested structures, chain .get() calls with empty dictionary defaults.