@n8n-as-code/skills 2.2.0 → 2.3.0-next.113
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/n8n-credentials-ontology.json +1 -1
- package/dist/assets/n8n-docs-complete.json +427 -489
- package/dist/assets/n8n-knowledge-index.json +135 -201
- package/dist/assets/n8n-nodes-index.json +5 -5
- package/dist/assets/n8n-nodes-technical.json +6 -6
- package/dist/assets/workflows-index.json +1 -1
- package/package.json +2 -2
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
"generatedAt": "2026-05-
|
|
2
|
+
"generatedAt": "2026-05-21T11:29:42.708Z",
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"sourceUrl": "https://docs.n8n.io/llms.txt",
|
|
5
|
-
"totalPages":
|
|
5
|
+
"totalPages": 1283,
|
|
6
6
|
"statistics": {
|
|
7
7
|
"byCategory": {
|
|
8
8
|
"other": 516,
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
"code": 20,
|
|
13
13
|
"data": 38,
|
|
14
14
|
"flow-logic": 8,
|
|
15
|
-
"hosting":
|
|
15
|
+
"hosting": 92,
|
|
16
16
|
"integrations": 309,
|
|
17
17
|
"cluster-nodes": 105,
|
|
18
18
|
"trigger-nodes": 107,
|
|
@@ -711,7 +711,7 @@
|
|
|
711
711
|
},
|
|
712
712
|
"hosting": {
|
|
713
713
|
"description": "Self-hosting, deployment, and infrastructure",
|
|
714
|
-
"totalPages":
|
|
714
|
+
"totalPages": 92,
|
|
715
715
|
"pages": [
|
|
716
716
|
"page-0145",
|
|
717
717
|
"page-0146",
|
|
@@ -802,7 +802,6 @@
|
|
|
802
802
|
"page-0231",
|
|
803
803
|
"page-0232",
|
|
804
804
|
"page-0233",
|
|
805
|
-
"page-0234",
|
|
806
805
|
"page-0235",
|
|
807
806
|
"page-0236",
|
|
808
807
|
"page-0237"
|
|
@@ -2798,13 +2797,13 @@
|
|
|
2798
2797
|
"nodeName": null,
|
|
2799
2798
|
"nodeType": null,
|
|
2800
2799
|
"content": {
|
|
2801
|
-
"markdown": "# Release notes\n\nNew features and bug fixes for n8n.\n\nYou can also view the [Releases](https://github.com/n8n-io/n8n/releases) in the GitHub repository.\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.4 Current `beta`: 2.22.0\n\n## How to update n8n\n\nThe steps to update your n8n depend on which n8n platform you use. Refer to the documentation for your n8n:\n\n- [Cloud](../manage-cloud/update-cloud-version/)\n- Self-hosted options:\n - [npm](../hosting/installation/npm/)\n - [Docker](../hosting/installation/docker/)\n\n## Semantic versioning in n8n\n\nn8n uses [semantic versioning](https://semver.org/). All version numbers are in the format `MAJOR.MINOR.PATCH`. Version numbers increment as follows:\n\n- MAJOR version when making incompatible changes which can require user action.\n- MINOR version when adding functionality in a backward-compatible manner.\n- PATCH version when making backward-compatible bug fixes.\n\nOlder versions\n\nYou can find the release notes for older versions of n8n: [1.x](1-x/) and [0.x](0-x/)\n\n## n8n@2.22.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.22.0...n8n@2.22.1) for this version.\\\n**Release date:** 2026-05-21\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.22.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.0...n8n@2.22.0) for this version.\\\n**Release date:** 2026-05-19\n\nThis release contains bug fixes.\n\n### Contributors\n\n[kimsehwan96](https://github.com/kimsehwan96)\\\n[sinehypernova-0718](https://github.com/sinehypernova-0718)\\\n[manuelgruber](https://github.com/manuelgruber)\\\n[muzahmood](https://github.com/muzahmood)\\\n[mvanhorn](https://github.com/mvanhorn)\\\n[ABDULALMAS](https://github.com/ABDULALMAS)\\\n[ChrisJr404](https://github.com/ChrisJr404)\\\n[aikido-autofix[bot]](https://github.com/apps/aikido-autofix)\\\n[KhadyotTakale](https://github.com/KhadyotTakale)\\\n[rajats-dev](https://github.com/rajats-dev)\\\n[TheMazeIsAmazing](https://github.com/TheMazeIsAmazing)\\\n[onyxraven](https://github.com/onyxraven)\\\n[fendy3002](https://github.com/fendy3002)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.5...n8n@2.21.6) for this version.\\\n**Release date:** 2026-05-21\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.4...n8n@2.21.5) for this version.\\\n**Release date:** 2026-05-20\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.2...n8n@2.21.3) for this version.\\\n**Release date:** 2026-05-15\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.1...n8n@2.21.2) for this version.\\\n**Release date:** 2026-05-14\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.0...n8n@2.21.1) for this version.\\\n**Release date:** 2026-05-13\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.21.0) for this version.\\\n**Release date:** 2026-05-12\n\nThis release contains bug fixes.\n\n### Contributors\n\n[etairl](https://github.com/etairl)\\\n[devareddy05](https://github.com/devareddy05)\\\n[aikido-autofix[bot]](https://github.com/apps/aikido-autofix)\\\n[sudarshan12s](https://github.com/sudarshan12s)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.10\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.9...n8n@2.20.10) for this version.\\\n**Release date:** 2026-05-18\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.9\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.8...n8n@2.20.9) for this version.\\\n**Release date:** 2026-05-15\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.8\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.7-exp.0...n8n@2.20.8) for this version.\\\n**Release date:** 2026-05-15\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.7\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.6...n8n@2.20.7) for this version.\\\n**Release date:** 2026-05-14\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.5...n8n@2.20.6) for this version.\\\n**Release date:** 2026-05-08\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.4...n8n@2.20.5) for this version.\\\n**Release date:** 2026-05-07\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.20.4) for this version.\\\n**Release date:** 2026-05-07\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.2...n8n@2.20.3) for this version.\\\n**Release date:** 2026-05-07\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.20.1) for this version.\\\n**Release date:** 2026-05-06\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.0...n8n@2.20.0) for this version.\\\n**Release date:** 2026-05-05\n\nThis release contains bug fixes and features.\n\n### Microsoft Agent 365 Trigger node\n\nThe [Microsoft Agent 365 Trigger node](../integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.microsoftagent365trigger/) lets you build n8n agents that show up as members of your team inside Microsoft 365 apps. Once deployed, your agent gets its own identity in your Microsoft tenant, with an email address you can @mention in Teams, send email to, or grant permissions to a SharePoint site, just like a teammate.\n\nA Microsoft Agent 365 Trigger node with a chat model, memory, and tools across Zendesk, Salesforce, PagerDuty, Datadog, and a sub-workflow.\n\n#### How it works\n\nYou build the agent in n8n using the Microsoft Agent 365 Trigger node:\n\n- Add a system prompt and give the agent access to tools, MCP servers, and your existing workflows using [sub-workflows as tools](../flow-logic/subworkflows/).\n- Set up the agent on the Microsoft side (see the [Microsoft Agent 365 documentation](https://learn.microsoft.com/en-us/microsoft-agent-365/) for the configuration steps). This gives the agent an Entra ID identity with an email address that you can @mention, email, or grant SharePoint permissions to.\n- Microsoft handles identity, lifecycle, security, and compliance for the agent on their side (via Entra ID, Purview, and Defender). n8n handles workflow-level governance like RBAC, credential management, and execution logs.\n\n#### Things to keep in mind\n\n- If you already use n8n with Microsoft services through individual nodes (Outlook, Teams, SharePoint, and so on), those workflows continue to work as before. Agent 365 is a new path for teams that want their agents to show up *inside* Microsoft apps and interact like a member of the team.\n- The node requires a Microsoft 365 tenant.\n\nFor the full launch story, see the [n8n blog post](https://blog.n8n.io/deploy-n8n-agents-that-show-up-as-members-of-the-team-inside-microsoft-apps/).\n\n### Contributors\n\n[jjnyn](https://github.com/jjnyn)\\\n[haimingZZ](https://github.com/haimingZZ)\\\n[majiayu000](https://github.com/majiayu000)\\\n[moseoh](https://github.com/moseoh)\\\n[Omc12](https://github.com/Omc12)\\\n[Gulianrdgd](https://github.com/Gulianrdgd)\\\n[jeanibarz](https://github.com/jeanibarz)\\\n[uppinote20](https://github.com/uppinote20)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.4...n8n@2.19.5) for this version.\\\n**Release date:** 2026-05-07\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.3...n8n@2.19.4) for this version.\\\n**Release date:** 2026-05-06\n\nThis release contains bug fixes.\n\n## n8n@2.19.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.2...n8n@2.19.3) for this version.\\\n**Release date:** 2026-05-06\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.1...n8n@2.19.2) for this version.\\\n**Release date:** 2026-05-01\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.1...n8n@2.19.2) for this version.\\\n**Release date:** 2026-04-30\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.0...n8n@2.19.1) for this version.\\\n**Release date:** 2026-04-29\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.0...n8n@2.19.0) for this version.\\\n**Release date:** 2026-04-28\n\nThis release contains bug fixes.\n\n### Contributors\n\n[abhishekDeshmukh74](https://github.com/abhishekDeshmukh74)\\\n[jeanibarz](https://github.com/jeanibarz)\\\n[yetval](https://github.com/yetval)\\\n[corazzione](https://github.com/corazzione)\\\n[kuishou68](https://github.com/kuishou68)\\\n[MDub3y](https://github.com/MDub3y)\\\n[aikido-autofix[bot]](https://github.com/apps/aikido-autofix)\\\n[Vitalini](https://github.com/Vitalini)\\\n[sinehypernova-0718](https://github.com/sinehypernova-0718)\\\n[nihaals](https://github.com/nihaals)\\\n[yuniq-neko](https://github.com/yuniq-neko)\\\n[patdt](https://github.com/patdt)\\\n[pedrodicati](https://github.com/pedrodicati)\\\n[GauthierPLM](https://github.com/GauthierPLM)\\\n[Gulianrdgd](https://github.com/Gulianrdgd)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.7\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.6...n8n@2.18.7) for this version.\\\n**Release date:** 2026-05-04\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.5...n8n@2.18.6) for this version.\\\n**Release date:** 2026-05-01\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.4...n8n@2.18.5) for this version.\\\n**Release date:** 2026-04-28\n\nThis release contains bug fixes and features.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.3...n8n@2.18.4) for this version.\\\n**Release date:** 2026-04-27\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.2...n8n@2.18.3) for this version.\\\n**Release date:** 2026-04-24\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.1...n8n@2.18.2) for this version.\\\n**Release date:** 2026-04-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.0...n8n@2.18.1) for this version.\\\n**Release date:** 2026-04-22\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.0...n8n@2.18.0) for this version.\\\n**Release date:** 2026-04-21\n\nThis release contains bug fixes.\n\n### Contributors\n\n[jcampbell](https://github.com/jcampbell)\\\n[robrown-hubspot](https://github.com/robrown-hubspot)\\\n[rahulps1000](https://github.com/rahulps1000)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.8\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.7...n8n@2.17.8) for this version.\\\n**Release date:** 2026-04-27\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.7\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.6...n8n@2.17.7) for this version.\\\n**Release date:** 2026-04-24\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.5...n8n@2.17.6) for this version.\\\n**Release date:** 2026-04-23\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.4...n8n@2.17.5) for this version.\\\n**Release date:** 2026-04-22\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.3...n8n@2.17.4) for this version.\\\n**Release date:** 2026-04-22\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.2...n8n@2.17.3) for this version.\\\n**Release date:** 2026-04-20\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.1...n8n@2.17.2) for this version.\\\n**Release date:** 2026-04-16\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.0...n8n@2.17.1) for this version.\\\n**Release date:** 2026-04-15\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.16.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.16.0...n8n@2.16.1) for this version.\\\n**Release date:** 2026-04-15\n\nThis release contains bug fixes.\n\n## n8n@2.16.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.15.0...n8n@2.16.0) for this version.\\\n**Release date:** 2026-04-07\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.15.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.14.0...n8n@2.15.0) for this version.\\\n**Release date:** 2026-03-30\n\nThis release contains bug fixes.\n\n### Contributors\n\n[manusjs](https://github.com/manusjs)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.14.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.14.1...n8n@2.14.2) for this version.\\\n**Release date:** 2026-03-26\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.14.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.14.0...n8n@2.14.1) for this version.\\\n**Release date:** 2026-03-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.14.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.13.2...n8n@2.14.0) for this version.\\\n**Release date:** 2026-03-24\n\nThis release contains bug fixes.\n\n### Contributors\n\n[pkaya89](https://github.com/pkaya89)\\\n[kesku](https://github.com/kesku)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.13.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.13.3...n8n@2.13.4) for this version.\\\n**Release date:** 2026-03-26\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.13.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.13.2...n8n@2.13.3) for this version.\\\n**Release date:** 2026-03-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.13.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.13.1...n8n@2.13.2) for this version.\\\n**Release date:** 2026-03-20\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.13.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.13.0...n8n@2.13.1) for this version.\\\n**Release date:** 2026-03-18\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.13.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.12.0...n8n@2.13.0) for this version.\\\n**Release date:** 2026-03-16\n\nThis release contains bug fixes and features.\n\n### Visual diff comes to version history\n\nOpen version history, click **Compare changes**, pick any two versions, and the canvas renders both side by side with changed nodes highlighted. A change count badge on each version helps you spot significant edits at a glance.\n\nVisual diff is available on Cloud Pro and above.\n\n### Project-scoped external secrets: full team access (Enterprise)\n\nWhat's new:\n\n- Project admins manage their own vault connections from project settings.\n- Project editors can use project-scoped secrets in credentials once the instance admin enables access.\n- [Custom roles](../user-management/rbac/custom-roles/) now include five secrets scopes: list, read, create, update, and delete.\n- Instance admins/owners no longer need to be project members for secrets to resolve.\n\n**For instance admins:** go to **Settings > External Secrets** and enable the **System Roles** toggle, or use custom roles for more granular control.\n\n**For project admins:** go to **Project Settings > External Secrets** to create and manage project-level connections. Instance-level connections shared with you appear as read-only.\n\nRefer to [External secrets](../external-secrets/) for more information. Project-scoped external secrets are available on n8n Enterprise.\n\n### Folder-based filtering in the push and pull dialog (Enterprise)\n\nThe push and pull dialogs now include a **Folder** filter alongside Status and Owner. Selecting a folder scopes the list to workflows in that folder and its subfolders, shown as a hierarchical tree with folder-level checkboxes. Text search also matches folder names.\n\nFolder-based filtering is available on n8n Enterprise (requires [Environments](../source-control-environments/setup/) configured).\n\n### Contributors\n\n[tbigby-kristin](https://github.com/tbigby-kristin)\\\n[ajuijas](https://github.com/ajuijas)\\\n[ByteEVM](https://github.com/ByteEVM)\\\n[mjain](https://github.com/mjain)\\\n[bram2w](https://github.com/bram2w)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.12.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.12.1...n8n@2.12.2) for this version.\\\n**Release date:** 2026-03-13\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.12.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.12.0...n8n@2.12.1) for this version.\\\n**Release date:** 2026-03-11\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.12.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.11.0...n8n@2.12.0) for this version.\\\n**Release date:** 2026-03-09\n\nThis release contains bug fixes and features.\n\n### 1Password is now available as an external secrets provider (Enterprise)\n\nn8n now supports 1Password Connect Server as an [external secrets](../external-secrets/) provider, alongside HashiCorp Vault, AWS Secrets Manager, Azure Key Vault, and GCP Secret Manager.\n\nSecrets are fetched at runtime and never stored in n8n: 1Password stays the single source of truth. Multi-field items are available as structured sub-paths: `$secrets.<vault>.<item>.<field>`.\n\n#### How to connect\n\n1. Deploy a 1Password Connect Server and create an access token scoped to the vaults n8n should read.\n1. In n8n, go to **Settings > External Secrets**, select **1Password**, and enter your Connect Server URL and token.\n\nRequires self-hosted 1Password Connect Server with read-only access. 1Password as an external secrets provider is available on n8n Enterprise.\n\n### Contributors\n\n`github-actions[bot]` [amenk](https://github.com/amenk)\\\n[bpk9](https://github.com/bpk9)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.11.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.11.3...n8n@2.11.4) for this version.\\\n**Release date:** 2026-03-13\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.11.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.11.2...n8n@2.11.3) for this version.\\\n**Release date:** 2026-03-13\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.11.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.11.1...n8n@2.11.2) for this version.\\\n**Release date:** 2026-03-06\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.11.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.11.0...n8n@2.11.1) for this version.\\\n**Release date:** 2026-03-04\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.11.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.10.0...n8n@2.11.0) for this version.\\\n**Release date:** 2026-03-02\n\nThis release contains bug fixes and features.\n\n### Easier credential setup on Cloud\n\nSetting up credentials on n8n Cloud is now much simpler. For supported services, just click the **Connect** button, authenticate with the service, and you're ready to go. Skip the manual setup for Slack, Firecrawl, HubSpot, GitHub, Google Calendar, PagerDuty, Apify, and more.\n\nSetting up Slack credentials with managed OAuth.\n\n#### Things to keep in mind\n\n- If you prefer to use your own OAuth configuration, you can still switch to manual setup from the auth mode dropdown at any time.\n- This feature is only available on n8n Cloud, where n8n manages the OAuth apps on your behalf.\n\n### Custom roles: Assignments tab (Enterprise)\n\nInstance admins now have a dedicated **Assignments** tab on each [custom role](../user-management/rbac/custom-roles/) showing every user assigned to that role, which project they're in, and a direct link to manage them — no more navigating project by project.\n\nCustom roles are available on n8n Enterprise.\n\n### Project-scoped external secrets: instance admin setup (Enterprise)\n\nInstance admins can now create vault connections scoped to a specific project. Secrets from that connection appear only within that project's credentials, not across the instance. Instance-level connections are unaffected.\n\nRefer to [External secrets](../external-secrets/) for more information. Project-scoped external secrets are available on n8n Enterprise.\n\n### Workflow execute as a separate permission scope (Enterprise)\n\n`workflow:execute` is now a distinct scope in [custom project roles](../user-management/rbac/custom-roles/), separate from editing and publishing. Users can be granted run access without being able to modify the workflow, which is a common compliance requirement for sensitive workflows.\n\nThis scope is available on n8n Enterprise.\n\n### Contributors\n\n[ByteEVM](https://github.com/ByteEVM)\\\n[onyxraven](https://github.com/onyxraven)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.10.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.10.3...n8n@2.10.4) for this version.\\\n**Release date:** 2026-03-06\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.10.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.10.2...n8n@2.10.3) for this version.\\\n**Release date:** 2026-03-04\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.10.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.10.1...n8n@2.10.2) for this version.\\\n**Release date:** 2026-02-27\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.10.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.10.0...n8n@2.10.1) for this version.\\\n**Release date:** 2026-02-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.10.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.0...n8n@2.10.0) for this version.\\\n**Release date:** 2026-02-23\n\nThis release contains bug fixes and features.\n\n### Multiple connections per external secrets provider\n\nYou can now set up more than one connection for a single [external secrets](../external-secrets/) provider. The updated UI makes it easier to configure and manage multiple connections under the same provider type.\n\n### Performance improvements for large workflow and credential volumes\n\nImproved the reliability of the workflows and credentials listing pages for large-scale instances, reducing loading times by 30% to 80%.\n\n### Contributors\n\n[peteawood](https://github.com/peteawood)\\\n[horiyee](https://github.com/horiyee)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.3...n8n@2.9.4) for this version.\\\n**Release date:** 2026-02-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.4-exp.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.4...n8n@2.9.4-exp.0) for this version.\\\n**Release date:** 2026-02-27\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.2...n8n@2.9.3) for this version.\\\n**Release date:** 2026-02-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.3-exp.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.3...n8n@2.9.3-exp.0) for this version.\\\n**Release date:** 2026-02-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.1...n8n@2.9.2) for this version.\\\n**Release date:** 2026-02-23\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.0...n8n@2.9.1) for this version.\\\n**Release date:** 2026-02-18\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.8.0...n8n@2.9.0) for this version.\\\n**Release date:** 2026-02-16\n\nThis release contains bug fixes.\n\n### Contributors\n\n[ByteEVM](https://github.com/ByteEVM) [LudwigGerdes](https://github.com/LudwigGerdes)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.8.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.8.3...n8n@2.8.4) for this version.\\\n**Release date:** 2026-02-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.8.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.8.2...n8n@2.8.3) for this version.\\\n**Release date:** 2026-02-13\n\nThis release contains a bug fix and features.\n\n### Personal space policies (Enterprise)\n\nA new **Security & policies** settings section provides a central place for enforcing security requirements on your instance. In addition to the existing two-factor authentication enforcement, admins can now control what users can do in their personal spaces.\n\nAvailable policies include:\n\n- **Sharing**: control whether users can share workflows and credentials from their personal space.\n- **Workflow publishing**: control whether users can publish workflows from their personal space.\n\nThis release builds on the recent updates to the permissions model, including [custom project roles](../user-management/rbac/custom-roles/), to better support policy-driven governance.\n\nPersonal space policies are available on n8n Enterprise.\n\nThe new Security & policies settings section.\n\n### Custom roles: improved discoverability and permission visibility (Enterprise)\n\nThe project role selector now separates built-in system roles and custom roles into distinct sections, making it easier to find and choose the right role. Hovering over a role shows a summary of its configured permissions, with an option to view the full permission details.\n\nSystem roles and custom roles are now displayed in separate sections.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.8.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.8.1...n8n@2.8.2) for this version.\\\n**Release date:** 2026-02-12\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.8.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.8.0...n8n@2.8.1) for this version.\\\n**Release date:** 2026-02-11\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.4...n8n@2.7.5) for this version.\\\n**Release date:** 2026-02-13\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.3...n8n@2.7.4) for this version.\\\n**Release date:** 2026-02-11\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.2...n8n@2.7.3) for this version.\\\n**Release date:** 2026-02-09\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.6.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.6.3...n8n@2.6.4) for this version.\\\n**Release date:** 2026-02-06\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.8.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.0...n8n@2.8.0) for this version.\\\n**Release date:** 2026-02-09\n\nThis release contains bug fixes and features.\n\n### Stronger external secrets validation (Enterprise)\n\nn8n now verifies that the current user has access to the referenced vaults before allowing a credential that uses **$secrets...** expressions to be saved. If access is missing, the save operation fails. This prevents secret values from being exposed through guessed secret paths.\n\n### Improved API auditability (Enterprise)\n\nAPI endpoints have been expanded to provide clearer visibility into project membership and credentials:\n\n- `GET /projects/{projectId}/users` returns all members of a project including their assigned role.\n- `GET /credentials` returns a paginated list of all credentials across the instance, including the project they belong to.\n\nThis makes it easier to audit who has access to which projects and credentials without manually reviewing each one in the UI.\n\n### More granular workflow permissions\n\nWorkflow publishing permissions for [custom roles](../user-management/rbac/custom-roles/) have been split into two separate scopes: **workflow:publish** and **workflow:unpublish**. This enables more precise access control in governance scenarios where unpublishing needs to be managed independently.\n\n### Performance and stability improvements\n\n- Improved performance for instances with very large user counts, reducing slowdowns caused by user-related operations.\n- Fixed a high-memory issue that could cause crashes during Source Control push flows in large deployments with many workflows and credentials.\n\n### Minor fixes\n\n- Canvas: improved node repositioning on insertion to reduce overlaps and spacing issues.\n- Log streaming: fixed proxy configuration handling for webhook destinations so requests work reliably when a proxy is configured.\n\n### Deprecated nodes\n\n#### Motorhead node\n\nThe [Motorhead](../integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.memorymotorhead/) memory node is now deprecated because the Motorhead project is no longer maintained. The node is hidden from the nodes panel for new selections, but existing workflows using this node will continue to work.\n\n### Contributors\n\n[AmitAnveri](https://github.com/AmitAnveri)\\\n[derandreas-dt](https://github.com/derandreas-dt)\\\n[ongdisheng](https://github.com/ongdisheng)\\\n[vCaisim](https://github.com/vCaisim)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.1...n8n@2.7.2) for this version.\\\n**Release date:** 2026-02-04\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.0...n8n@2.7.1) for this version.\\\n**Release date:** 2026-02-03\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.6.0...n8n@2.7.0) for this version.\\\n**Release date:** 2026-02-02\n\nThis release contains bug fixes.\n\n### Contributors\n\n[LostInBrittany](https://github.com/LostInBrittany)\\\n[adriencohen](https://github.com/adriencohen)\\\n[ibex088](https://github.com/ibex088)\\\n[rutgere-indeed](https://github.com/rutgere-indeed)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.7-exp.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.7...n8n@2.4.7-exp.0) for this version.\\\n**Release date:** 2026-01-29\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.6.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.6.2...n8n@2.6.3) for this version.\\\n**Release date:** 2026-02-02\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.8\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.7...n8n@2.4.8) for this version.\\\n**Release date:** 2026-01-29\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.6.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.6.1...n8n@2.6.2) for this version.\\\n**Release date:** 2026-01-28\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.7\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.6...n8n@2.4.7) for this version.\\\n**Release date:** 2026-01-28\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.5.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.5.1...n8n@2.5.2) for this version.\\\n**Release date:** 2026-01-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.5...n8n@2.4.6) for this version.\\\n**Release date:** 2026-01-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.4...n8n@2.4.5) for this version.\\\n**Release date:** 2026-01-22\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.6.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.5.0...n8n@2.6.0) for this version.\\\n**Release date:** 2026-01-26\n\nThis release contains bug fixes.\n\n### Human-in-the-loop for AI tool calls\n\nYou can now require explicit human approval before an AI Agent executes specific tools.\n\nHuman-in-the-loop (HITL) for AI tool calls enforces review directly at the tool level. A gated tool cannot execute unless a human explicitly approves the action, giving you deterministic control over high-impact operations like deleting records, writing to production systems, or sending high-impact emails. This removes the uncertainty of prompt-based safeguards and insulates you from probabilistic agent behavior.\n\nBecause the review step is implemented using standard n8n integrations, approvals are not limited to a single user or interface. Decisions can be routed across people and systems, enforcing approval from the right person using the channels they already work in.\n\n#### What you can do\n\n- Require explicit human approval for any tool the agent can call, including the MCP Client tool or sub-workflows exposed as tools\n- Apply approval selectively, so some tools execute autonomously while others require review\n- Route approvals across users and channels (for example, send a Slack-initiated action for approval by another user via email)\n- Add safety checks for high-impact or potentially destructive operations without complex workflow patterns or brittle prompt logic.\n\n#### How to use it\n\nStart with a workflow where an AI Agent is connected to one or more tools.\n\n1. On the connection from the AI Agent to the tool you want to gate, click the **+** icon and choose **Add human review step** (hovering over the icon shows the tooltip).\n1. The **Tools panel** opens with nodes you can use to handle the review step. Select the one you want to use.\n1. Configure the approval step in the added node’s parameters. Depending on the integration, you can define the approver, the message they receive, the available actions (for example, approve or deny), and the associated buttons.\n\n[](/_video/release-notes/HITLToolCalls.webm)\n\nGet precise control over where human judgment is required, without limiting what your agent can do. Learn more [here](../advanced-ai/human-in-the-loop-tools/).\n\n### Contributors\n\n[ibex088](https://github.com/ibex088)\\\n[johnlinp](https://github.com/johnlinp)\\\n[loganaden](https://github.com/loganaden)\\\n[Jameswlepage](https://github.com/Jameswlepage)\\\n[cesars-gh](https://github.com/cesars-gh)\\\n[antman1p](https://github.com/antman1p)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.5.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.0...n8n@2.5.0) for this version.\\\n**Release date:** 2026-01-20\n\nThis release contains bug fixes.\n\n### Chat node: human-in-the-loop actions\n\nThe **Chat** node now includes two new Actions for human-in-the-loop interactions in agentic workflows:\n\n- **Send a message**: send a message to the user and continue the workflow\n- **Send a message and wait for response**: send a message and pause execution until the user replies. Users can respond with free text in the Chat or by clicking inline approval buttons, as defined in the node’s configuration.\n\nThese Actions can be used as deterministic workflow steps or as tools for an **AI Agent**, enabling multi-turn human interaction within a single execution when using the **Chat Trigger**.\n\nWhen used as an agent tool, the agent can ask for clarification before proceeding, helping it better interpret user intent and follow instructions. Agents can also send updates during long-running workflows using these Actions.\n\n#### How to\n\n1. Trigger your workflow with the **Chat Trigger** node. In the node parameters, add the *Response Mode* option and set it to *Using Response Nodes*.\n1. Add a **Chat** node later in the workflow, or add it as a tool for an **AI Agent**. Select one of the following operations: *Send a message* or *Send a message and wait for response*.\n\n#### Keep in mind\n\n- If you want an AI Agent to choose between sending a message or waiting for input, add two **Chat** tool nodes, one for each action.\n- For AI Agents triggered by the **Chat Trigger** node, adding **Send a message and wait for response** is recommended so the agent can request clarification when needed.\n\nLearn more in the [Chat node documentation](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.chat/#operation).\n\n[](/_video/release-notes/ChatHITL.webm)\n\n### Contributors\n\n[AbdulTawabJuly](https://github.com/AbdulTawabJuly)\\\n[ByteEVM](https://github.com/ByteEVM)\\\n[sudarshan12s](https://github.com/sudarshan12s)\\\n[KaanAydinli](https://github.com/KaanAydinli)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.2...n8n@2.4.3) for this version.\\\n**Release date:** 2026-01-15\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.5...n8n@2.3.6) for this version.\\\n**Release date:** 2026-01-16\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.3...n8n@2.4.4) for this version.\\\n**Release date:** 2026-01-16\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.4...n8n@2.3.5) for this version.\\\n**Release date:** 2026-01-14\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.0...n8n@2.4.1) for this version.\\\n**Release date:** 2026-01-13\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.1...n8n@2.3.2) for this version.\\\n**Release date:** 2026-01-09\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.0...n8n@2.4.0) for this version.\\\n**Release date:** 2026-01-12\n\nThis release contains bug fixes.\n\n### TLS support for Syslog log streaming\n\nThe Syslog log streaming destination now supports TLS over TCP for encrypted connections. This enables secure log streaming to enterprise SIEM and observability platforms that require encrypted transport. With this release, log streaming is now compatible with a broader range of enterprise SIEM platforms.\n\n### Update credentials via API\n\nn8n's public API now supports updating existing credentials by ID via a new *PATCH /credentials/:id* endpoint. Previously, credentials could only be created through the API so any changes required deleting and recreating the credential.\n\nWhen updating, you can either replace all credential data at once (useful for bulk updates) or set *isPartialData: true* to merge changes with existing data. Ideal for automated secret rotation or fixing individual values without losing your configuration.\n\n### Contributors\n\n[JonLaliberte](https://github.com/JonLaliberte)\\\n[davidpanic](https://github.com/davidpanic)\\\n[TomTom101](https://github.com/TomTom101)\\\n[garritfra](https://github.com/garritfra)\\\n[maximepvrt](https://github.com/maximepvrt)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.2...n8n@2.3.3) for this version.\\\n**Release date:** 2026-01-13\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.3...n8n@2.3.4) for this version.\\\n**Release date:** 2026-01-13\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.0...n8n@2.3.1) for this version.\\\n**Release date:** 2026-01-07\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.4...n8n@2.2.5) for this version.\\\n**Release date:** 2026-01-08\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.3...n8n@2.2.4) for this version.\\\n**Release date:** 2026-01-06\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.0...n8n@2.3.0) for this version.\\\n**Release date:** 2026-01-05\n\nThis release contains bug fixes.\n\n### Contributors\n\n[Shashwat-06](https://github.com/Shashwat-06)\\\n[ByteEVM](https://github.com/ByteEVM)\\\n[mithredate](https://github.com/mithredate)\\\n[belyas](https://github.com/belyas)\\\n[saurabhssonkar](https://github.com/saurabhssonkar)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.2...n8n@2.2.3) for this version.\\\n**Release date:** 2026-01-05\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.1...n8n@2.2.2) for this version.\\\n**Release date:** 2025-12-30\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.4...n8n@2.1.5) for this version.\\\n**Release date:** 2025-12-30\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.3...n8n@2.1.4) for this version.\\\n**Release date:** 2025-12-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.2...n8n@2.1.3) for this version.\\\n**Release date:** 2025-12-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.0...n8n@2.2.1) for this version.\\\n**Release date:** 2025-12-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.0...n8n@2.2.0) for this version.\n\n**Release date:** 2025-12-22\n\nThis release contains bug fixes.\n\n### More granular workflow permissions within Custom Project Roles (Enterprise)\n\nCustom Project Roles allow you to define fine-grained permissions at the project level. With this release, workflow permissions have been further refined by separating workflow editing from workflow publishing.\n\nThis change makes it easier to align access controls with internal processes where building workflows and publishing them are handled by different users or teams.\n\nCustom Project Roles\n\n### Log streaming: More audit events for improved observability\n\nLog streaming now includes additional audit events to improve visibility into operational and security-relevant changes.\n\nThis update adds events for manual workflow cancellations and workflow activation/deactivation (publish/unpublish), variable lifecycle events (create/update/delete), and user management actions (including enabling/disabling 2FA).\n\nWorkflow settings updates are also logged with the specific parameters that changed (for example, selecting a new error workflow), instead of a generic “updated” event.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.1...n8n@2.1.2) for this version.\\\n**Release date:** 2025-12-22\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.0...n8n@2.1.1) for this version.\\\n**Release date:** 2025-12-17\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.2...n8n@2.0.3) for this version.\\\n**Release date:** 2025-12-17\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0...n8n@2.1.0) for this version.\\\n**Release date:** 2025-12-16\n\nThis release contains bug fixes and features.\n\n### **Time Saved node**\n\nPreviously, teams could only track a single fixed time saved value for each workflow regardless of which path an execution takes. The new Time Saved node enables more precise time savings calculations where different execution paths will save different amounts of time.\n\nWith this release you can now:\n\n- **Choose fixed value or dynamic time tracking**: Use fixed time saved for simple workflows, or use one or many time saved nodes to calculate savings dynamically based on the actual execution path taken\n- **Configure per-item calculations**: When using the Time Saved node, choose whether to calculate time saved once for all items or multiply by the number of items processed\n\nThe new Time Saved node provides increased accuracy for complex workflows where different execution paths save different amounts of time.\n\nn8n automatically totals the time from all Time Saved nodes executed during each workflow run and reports it within the insights dashboard.\n\n### Contributors\n\n[Akcthecoder200](https://github.com/Akcthecoder200)\\\n[rishiraj-58](https://github.com/rishiraj-58)\\\n[rlafferty](https://github.com/rlafferty)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.1...n8n@2.0.2) for this version.\\\n**Release date:** 2025-12-12\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0...n8n@2.0.1) for this version.\\\n**Release date:** 2025-12-10\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0-rc.3...n8n@2.0.0) for this version.\\\n**Release date:** 2025-12-05\n\n### Major Version Change\n\nn8n 2.0.0 is a hardening release, not a feature release. It strengthens n8n's position as an enterprise-grade platform with secure-by-default execution, removal of legacy options that caused edge-case bugs, and better performance under load. The goal is a more predictable foundation you can rely on for mission-critical workflows.\n\nThis release is currently in **beta**. There's no urgency to upgrade immediately — take time to review the breaking changes and assess your workflows using the migration tool before upgrading.\n\nFor the full story behind 2.0, read our [announcement blog post](https://blog.n8n.io/introducing-n8n-2-0/).\n\n### Breaking changes\n\nVersion 2.0 includes breaking changes across security defaults, data handling, and configuration. Key changes include:\n\n- Task runners enabled by default (Code node executions now run in isolated environments)\n- Environment variable access blocked from Code nodes by default\n- ExecuteCommand and LocalFileTrigger nodes disabled by default\n- In-memory binary data mode removed\n\nReview the complete list and migration guidance in the [v2.0 breaking changes docs.](https://docs.n8n.io/2-0-breaking-changes/)\n\n### Before you upgrade\n\nUse the **Migration Report** tool to identify workflow-level and instance-level issues that need attention before upgrading.\n\nSee the [v2.0 migration tool docs](https://docs.n8n.io/migration-tool-v2/) for details.\n\n### Product updates\n\n**Publish / Save workflow paradigm**\n\nn8n 2.0 introduces a safer approach to updating live workflows. The `Save` button now preserves your edits without changing production. A new `Publish` button lets you explicitly push changes live when ready. See [Publish workflows](https://docs.n8n.io/workflows/publish/) for details.\n\n**Canvas and navigation improvements**\n\nSubtle refinements to the workflow editor canvas and reorganized sidebar navigation.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0-rc.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0-rc.3...n8n@2.0.0-rc.4) for this version.\\\n**Release date:** 2025-12-05\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0-rc.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0-rc.2...n8n@2.0.0-rc.3) for this version.\\\n**Release date:** 2025-12-04\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0-rc.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0-rc.1...n8n@2.0.0-rc.2) for this version.\\\n**Release date:** 2025-12-04\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0-rc.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0-rc.0...n8n@2.0.0-rc.1) for this version.\\\n**Release date:** 2025-12-04\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0-rc.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.122.0...n8n@2.0.0-rc.0) for this version.\\\n**Release date:** 2025-12-02\n\nThis release contains bug fixes.\n\n### Contributors\n\n[farzad528](https://github.com/farzad528)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\nOlder versions\n\nYou can find the release notes for older versions of n8n: [1.x](1-x/) and [0.x](0-x/)\n",
|
|
2802
|
-
"excerpt": "# Release notes New features and bug fixes for n8n. You can also view the [Releases](https://github.com/n8n-io/n8n/releases) in the GitHub repository. Stable and Beta versions n8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12). Current `stable`: 2.21.
|
|
2800
|
+
"markdown": "# Release notes\n\nNew features and bug fixes for n8n.\n\nYou can also view the [Releases](https://github.com/n8n-io/n8n/releases) in the GitHub repository.\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## How to update n8n\n\nThe steps to update your n8n depend on which n8n platform you use. Refer to the documentation for your n8n:\n\n- [Cloud](../manage-cloud/update-cloud-version/)\n- Self-hosted options:\n - [npm](../hosting/installation/npm/)\n - [Docker](../hosting/installation/docker/)\n\n## Semantic versioning in n8n\n\nn8n uses [semantic versioning](https://semver.org/). All version numbers are in the format `MAJOR.MINOR.PATCH`. Version numbers increment as follows:\n\n- MAJOR version when making incompatible changes which can require user action.\n- MINOR version when adding functionality in a backward-compatible manner.\n- PATCH version when making backward-compatible bug fixes.\n\nOlder versions\n\nYou can find the release notes for older versions of n8n: [1.x](1-x/) and [0.x](0-x/)\n\n## n8n@2.22.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.22.0...n8n@2.22.1) for this version.\\\n**Release date:** 2026-05-21\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.22.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.0...n8n@2.22.0) for this version.\\\n**Release date:** 2026-05-19\n\nThis release contains bug fixes.\n\n### Contributors\n\n[kimsehwan96](https://github.com/kimsehwan96)\\\n[sinehypernova-0718](https://github.com/sinehypernova-0718)\\\n[manuelgruber](https://github.com/manuelgruber)\\\n[muzahmood](https://github.com/muzahmood)\\\n[mvanhorn](https://github.com/mvanhorn)\\\n[ABDULALMAS](https://github.com/ABDULALMAS)\\\n[ChrisJr404](https://github.com/ChrisJr404)\\\n[aikido-autofix[bot]](https://github.com/apps/aikido-autofix)\\\n[KhadyotTakale](https://github.com/KhadyotTakale)\\\n[rajats-dev](https://github.com/rajats-dev)\\\n[TheMazeIsAmazing](https://github.com/TheMazeIsAmazing)\\\n[onyxraven](https://github.com/onyxraven)\\\n[fendy3002](https://github.com/fendy3002)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.5...n8n@2.21.6) for this version.\\\n**Release date:** 2026-05-21\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.4...n8n@2.21.5) for this version.\\\n**Release date:** 2026-05-20\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.2...n8n@2.21.3) for this version.\\\n**Release date:** 2026-05-15\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.1...n8n@2.21.2) for this version.\\\n**Release date:** 2026-05-14\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.0...n8n@2.21.1) for this version.\\\n**Release date:** 2026-05-13\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.21.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.21.0) for this version.\\\n**Release date:** 2026-05-12\n\nThis release contains bug fixes.\n\n### Contributors\n\n[etairl](https://github.com/etairl)\\\n[devareddy05](https://github.com/devareddy05)\\\n[aikido-autofix[bot]](https://github.com/apps/aikido-autofix)\\\n[sudarshan12s](https://github.com/sudarshan12s)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.10\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.9...n8n@2.20.10) for this version.\\\n**Release date:** 2026-05-18\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.9\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.8...n8n@2.20.9) for this version.\\\n**Release date:** 2026-05-15\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.8\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.7-exp.0...n8n@2.20.8) for this version.\\\n**Release date:** 2026-05-15\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.7\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.6...n8n@2.20.7) for this version.\\\n**Release date:** 2026-05-14\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.5...n8n@2.20.6) for this version.\\\n**Release date:** 2026-05-08\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.4...n8n@2.20.5) for this version.\\\n**Release date:** 2026-05-07\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.20.4) for this version.\\\n**Release date:** 2026-05-07\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.2...n8n@2.20.3) for this version.\\\n**Release date:** 2026-05-07\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.20.1) for this version.\\\n**Release date:** 2026-05-06\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.20.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.0...n8n@2.20.0) for this version.\\\n**Release date:** 2026-05-05\n\nThis release contains bug fixes and features.\n\n### Microsoft Agent 365 Trigger node\n\nThe [Microsoft Agent 365 Trigger node](../integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.microsoftagent365trigger/) lets you build n8n agents that show up as members of your team inside Microsoft 365 apps. Once deployed, your agent gets its own identity in your Microsoft tenant, with an email address you can @mention in Teams, send email to, or grant permissions to a SharePoint site, just like a teammate.\n\nA Microsoft Agent 365 Trigger node with a chat model, memory, and tools across Zendesk, Salesforce, PagerDuty, Datadog, and a sub-workflow.\n\n#### How it works\n\nYou build the agent in n8n using the Microsoft Agent 365 Trigger node:\n\n- Add a system prompt and give the agent access to tools, MCP servers, and your existing workflows using [sub-workflows as tools](../flow-logic/subworkflows/).\n- Set up the agent on the Microsoft side (see the [Microsoft Agent 365 documentation](https://learn.microsoft.com/en-us/microsoft-agent-365/) for the configuration steps). This gives the agent an Entra ID identity with an email address that you can @mention, email, or grant SharePoint permissions to.\n- Microsoft handles identity, lifecycle, security, and compliance for the agent on their side (via Entra ID, Purview, and Defender). n8n handles workflow-level governance like RBAC, credential management, and execution logs.\n\n#### Things to keep in mind\n\n- If you already use n8n with Microsoft services through individual nodes (Outlook, Teams, SharePoint, and so on), those workflows continue to work as before. Agent 365 is a new path for teams that want their agents to show up *inside* Microsoft apps and interact like a member of the team.\n- The node requires a Microsoft 365 tenant.\n\nFor the full launch story, see the [n8n blog post](https://blog.n8n.io/deploy-n8n-agents-that-show-up-as-members-of-the-team-inside-microsoft-apps/).\n\n### Contributors\n\n[jjnyn](https://github.com/jjnyn)\\\n[haimingZZ](https://github.com/haimingZZ)\\\n[majiayu000](https://github.com/majiayu000)\\\n[moseoh](https://github.com/moseoh)\\\n[Omc12](https://github.com/Omc12)\\\n[Gulianrdgd](https://github.com/Gulianrdgd)\\\n[jeanibarz](https://github.com/jeanibarz)\\\n[uppinote20](https://github.com/uppinote20)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.4...n8n@2.19.5) for this version.\\\n**Release date:** 2026-05-07\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.3...n8n@2.19.4) for this version.\\\n**Release date:** 2026-05-06\n\nThis release contains bug fixes.\n\n## n8n@2.19.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.2...n8n@2.19.3) for this version.\\\n**Release date:** 2026-05-06\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.1...n8n@2.19.2) for this version.\\\n**Release date:** 2026-05-01\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.1...n8n@2.19.2) for this version.\\\n**Release date:** 2026-04-30\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.0...n8n@2.19.1) for this version.\\\n**Release date:** 2026-04-29\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.19.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.0...n8n@2.19.0) for this version.\\\n**Release date:** 2026-04-28\n\nThis release contains bug fixes.\n\n### Contributors\n\n[abhishekDeshmukh74](https://github.com/abhishekDeshmukh74)\\\n[jeanibarz](https://github.com/jeanibarz)\\\n[yetval](https://github.com/yetval)\\\n[corazzione](https://github.com/corazzione)\\\n[kuishou68](https://github.com/kuishou68)\\\n[MDub3y](https://github.com/MDub3y)\\\n[aikido-autofix[bot]](https://github.com/apps/aikido-autofix)\\\n[Vitalini](https://github.com/Vitalini)\\\n[sinehypernova-0718](https://github.com/sinehypernova-0718)\\\n[nihaals](https://github.com/nihaals)\\\n[yuniq-neko](https://github.com/yuniq-neko)\\\n[patdt](https://github.com/patdt)\\\n[pedrodicati](https://github.com/pedrodicati)\\\n[GauthierPLM](https://github.com/GauthierPLM)\\\n[Gulianrdgd](https://github.com/Gulianrdgd)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.7\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.6...n8n@2.18.7) for this version.\\\n**Release date:** 2026-05-04\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.5...n8n@2.18.6) for this version.\\\n**Release date:** 2026-05-01\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.4...n8n@2.18.5) for this version.\\\n**Release date:** 2026-04-28\n\nThis release contains bug fixes and features.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.3...n8n@2.18.4) for this version.\\\n**Release date:** 2026-04-27\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.2...n8n@2.18.3) for this version.\\\n**Release date:** 2026-04-24\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.1...n8n@2.18.2) for this version.\\\n**Release date:** 2026-04-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.18.0...n8n@2.18.1) for this version.\\\n**Release date:** 2026-04-22\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.18.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.0...n8n@2.18.0) for this version.\\\n**Release date:** 2026-04-21\n\nThis release contains bug fixes.\n\n### Contributors\n\n[jcampbell](https://github.com/jcampbell)\\\n[robrown-hubspot](https://github.com/robrown-hubspot)\\\n[rahulps1000](https://github.com/rahulps1000)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.8\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.7...n8n@2.17.8) for this version.\\\n**Release date:** 2026-04-27\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.7\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.6...n8n@2.17.7) for this version.\\\n**Release date:** 2026-04-24\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.5...n8n@2.17.6) for this version.\\\n**Release date:** 2026-04-23\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.4...n8n@2.17.5) for this version.\\\n**Release date:** 2026-04-22\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.3...n8n@2.17.4) for this version.\\\n**Release date:** 2026-04-22\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.2...n8n@2.17.3) for this version.\\\n**Release date:** 2026-04-20\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.1...n8n@2.17.2) for this version.\\\n**Release date:** 2026-04-16\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.17.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.17.0...n8n@2.17.1) for this version.\\\n**Release date:** 2026-04-15\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.16.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.16.0...n8n@2.16.1) for this version.\\\n**Release date:** 2026-04-15\n\nThis release contains bug fixes.\n\n## n8n@2.16.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.15.0...n8n@2.16.0) for this version.\\\n**Release date:** 2026-04-07\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.15.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.14.0...n8n@2.15.0) for this version.\\\n**Release date:** 2026-03-30\n\nThis release contains bug fixes.\n\n### Contributors\n\n[manusjs](https://github.com/manusjs)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.14.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.14.1...n8n@2.14.2) for this version.\\\n**Release date:** 2026-03-26\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.14.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.14.0...n8n@2.14.1) for this version.\\\n**Release date:** 2026-03-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.14.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.13.2...n8n@2.14.0) for this version.\\\n**Release date:** 2026-03-24\n\nThis release contains bug fixes.\n\n### Contributors\n\n[pkaya89](https://github.com/pkaya89)\\\n[kesku](https://github.com/kesku)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.13.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.13.3...n8n@2.13.4) for this version.\\\n**Release date:** 2026-03-26\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.13.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.13.2...n8n@2.13.3) for this version.\\\n**Release date:** 2026-03-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.13.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.13.1...n8n@2.13.2) for this version.\\\n**Release date:** 2026-03-20\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.13.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.13.0...n8n@2.13.1) for this version.\\\n**Release date:** 2026-03-18\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.13.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.12.0...n8n@2.13.0) for this version.\\\n**Release date:** 2026-03-16\n\nThis release contains bug fixes and features.\n\n### Visual diff comes to version history\n\nOpen version history, click **Compare changes**, pick any two versions, and the canvas renders both side by side with changed nodes highlighted. A change count badge on each version helps you spot significant edits at a glance.\n\nVisual diff is available on Cloud Pro and above.\n\n### Project-scoped external secrets: full team access (Enterprise)\n\nWhat's new:\n\n- Project admins manage their own vault connections from project settings.\n- Project editors can use project-scoped secrets in credentials once the instance admin enables access.\n- [Custom roles](../user-management/rbac/custom-roles/) now include five secrets scopes: list, read, create, update, and delete.\n- Instance admins/owners no longer need to be project members for secrets to resolve.\n\n**For instance admins:** go to **Settings > External Secrets** and enable the **System Roles** toggle, or use custom roles for more granular control.\n\n**For project admins:** go to **Project Settings > External Secrets** to create and manage project-level connections. Instance-level connections shared with you appear as read-only.\n\nRefer to [External secrets](../external-secrets/) for more information. Project-scoped external secrets are available on n8n Enterprise.\n\n### Folder-based filtering in the push and pull dialog (Enterprise)\n\nThe push and pull dialogs now include a **Folder** filter alongside Status and Owner. Selecting a folder scopes the list to workflows in that folder and its subfolders, shown as a hierarchical tree with folder-level checkboxes. Text search also matches folder names.\n\nFolder-based filtering is available on n8n Enterprise (requires [Environments](../source-control-environments/setup/) configured).\n\n### Contributors\n\n[tbigby-kristin](https://github.com/tbigby-kristin)\\\n[ajuijas](https://github.com/ajuijas)\\\n[ByteEVM](https://github.com/ByteEVM)\\\n[mjain](https://github.com/mjain)\\\n[bram2w](https://github.com/bram2w)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.12.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.12.1...n8n@2.12.2) for this version.\\\n**Release date:** 2026-03-13\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.12.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.12.0...n8n@2.12.1) for this version.\\\n**Release date:** 2026-03-11\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.12.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.11.0...n8n@2.12.0) for this version.\\\n**Release date:** 2026-03-09\n\nThis release contains bug fixes and features.\n\n### 1Password is now available as an external secrets provider (Enterprise)\n\nn8n now supports 1Password Connect Server as an [external secrets](../external-secrets/) provider, alongside HashiCorp Vault, AWS Secrets Manager, Azure Key Vault, and GCP Secret Manager.\n\nSecrets are fetched at runtime and never stored in n8n: 1Password stays the single source of truth. Multi-field items are available as structured sub-paths: `$secrets.<vault>.<item>.<field>`.\n\n#### How to connect\n\n1. Deploy a 1Password Connect Server and create an access token scoped to the vaults n8n should read.\n1. In n8n, go to **Settings > External Secrets**, select **1Password**, and enter your Connect Server URL and token.\n\nRequires self-hosted 1Password Connect Server with read-only access. 1Password as an external secrets provider is available on n8n Enterprise.\n\n### Contributors\n\n`github-actions[bot]` [amenk](https://github.com/amenk)\\\n[bpk9](https://github.com/bpk9)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.11.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.11.3...n8n@2.11.4) for this version.\\\n**Release date:** 2026-03-13\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.11.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.11.2...n8n@2.11.3) for this version.\\\n**Release date:** 2026-03-13\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.11.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.11.1...n8n@2.11.2) for this version.\\\n**Release date:** 2026-03-06\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.11.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.11.0...n8n@2.11.1) for this version.\\\n**Release date:** 2026-03-04\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.11.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.10.0...n8n@2.11.0) for this version.\\\n**Release date:** 2026-03-02\n\nThis release contains bug fixes and features.\n\n### Easier credential setup on Cloud\n\nSetting up credentials on n8n Cloud is now much simpler. For supported services, just click the **Connect** button, authenticate with the service, and you're ready to go. Skip the manual setup for Slack, Firecrawl, HubSpot, GitHub, Google Calendar, PagerDuty, Apify, and more.\n\nSetting up Slack credentials with managed OAuth.\n\n#### Things to keep in mind\n\n- If you prefer to use your own OAuth configuration, you can still switch to manual setup from the auth mode dropdown at any time.\n- This feature is only available on n8n Cloud, where n8n manages the OAuth apps on your behalf.\n\n### Custom roles: Assignments tab (Enterprise)\n\nInstance admins now have a dedicated **Assignments** tab on each [custom role](../user-management/rbac/custom-roles/) showing every user assigned to that role, which project they're in, and a direct link to manage them — no more navigating project by project.\n\nCustom roles are available on n8n Enterprise.\n\n### Project-scoped external secrets: instance admin setup (Enterprise)\n\nInstance admins can now create vault connections scoped to a specific project. Secrets from that connection appear only within that project's credentials, not across the instance. Instance-level connections are unaffected.\n\nRefer to [External secrets](../external-secrets/) for more information. Project-scoped external secrets are available on n8n Enterprise.\n\n### Workflow execute as a separate permission scope (Enterprise)\n\n`workflow:execute` is now a distinct scope in [custom project roles](../user-management/rbac/custom-roles/), separate from editing and publishing. Users can be granted run access without being able to modify the workflow, which is a common compliance requirement for sensitive workflows.\n\nThis scope is available on n8n Enterprise.\n\n### Contributors\n\n[ByteEVM](https://github.com/ByteEVM)\\\n[onyxraven](https://github.com/onyxraven)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.10.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.10.3...n8n@2.10.4) for this version.\\\n**Release date:** 2026-03-06\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.10.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.10.2...n8n@2.10.3) for this version.\\\n**Release date:** 2026-03-04\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.10.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.10.1...n8n@2.10.2) for this version.\\\n**Release date:** 2026-02-27\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.10.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.10.0...n8n@2.10.1) for this version.\\\n**Release date:** 2026-02-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.10.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.0...n8n@2.10.0) for this version.\\\n**Release date:** 2026-02-23\n\nThis release contains bug fixes and features.\n\n### Multiple connections per external secrets provider\n\nYou can now set up more than one connection for a single [external secrets](../external-secrets/) provider. The updated UI makes it easier to configure and manage multiple connections under the same provider type.\n\n### Performance improvements for large workflow and credential volumes\n\nImproved the reliability of the workflows and credentials listing pages for large-scale instances, reducing loading times by 30% to 80%.\n\n### Contributors\n\n[peteawood](https://github.com/peteawood)\\\n[horiyee](https://github.com/horiyee)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.3...n8n@2.9.4) for this version.\\\n**Release date:** 2026-02-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.4-exp.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.4...n8n@2.9.4-exp.0) for this version.\\\n**Release date:** 2026-02-27\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.2...n8n@2.9.3) for this version.\\\n**Release date:** 2026-02-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.3-exp.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.3...n8n@2.9.3-exp.0) for this version.\\\n**Release date:** 2026-02-25\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.1...n8n@2.9.2) for this version.\\\n**Release date:** 2026-02-23\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.9.0...n8n@2.9.1) for this version.\\\n**Release date:** 2026-02-18\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.9.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.8.0...n8n@2.9.0) for this version.\\\n**Release date:** 2026-02-16\n\nThis release contains bug fixes.\n\n### Contributors\n\n[ByteEVM](https://github.com/ByteEVM) [LudwigGerdes](https://github.com/LudwigGerdes)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.8.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.8.3...n8n@2.8.4) for this version.\\\n**Release date:** 2026-02-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.8.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.8.2...n8n@2.8.3) for this version.\\\n**Release date:** 2026-02-13\n\nThis release contains a bug fix and features.\n\n### Personal space policies (Enterprise)\n\nA new **Security & policies** settings section provides a central place for enforcing security requirements on your instance. In addition to the existing two-factor authentication enforcement, admins can now control what users can do in their personal spaces.\n\nAvailable policies include:\n\n- **Sharing**: control whether users can share workflows and credentials from their personal space.\n- **Workflow publishing**: control whether users can publish workflows from their personal space.\n\nThis release builds on the recent updates to the permissions model, including [custom project roles](../user-management/rbac/custom-roles/), to better support policy-driven governance.\n\nPersonal space policies are available on n8n Enterprise.\n\nThe new Security & policies settings section.\n\n### Custom roles: improved discoverability and permission visibility (Enterprise)\n\nThe project role selector now separates built-in system roles and custom roles into distinct sections, making it easier to find and choose the right role. Hovering over a role shows a summary of its configured permissions, with an option to view the full permission details.\n\nSystem roles and custom roles are now displayed in separate sections.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.8.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.8.1...n8n@2.8.2) for this version.\\\n**Release date:** 2026-02-12\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.8.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.8.0...n8n@2.8.1) for this version.\\\n**Release date:** 2026-02-11\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.4...n8n@2.7.5) for this version.\\\n**Release date:** 2026-02-13\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.3...n8n@2.7.4) for this version.\\\n**Release date:** 2026-02-11\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.2...n8n@2.7.3) for this version.\\\n**Release date:** 2026-02-09\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.6.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.6.3...n8n@2.6.4) for this version.\\\n**Release date:** 2026-02-06\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.8.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.0...n8n@2.8.0) for this version.\\\n**Release date:** 2026-02-09\n\nThis release contains bug fixes and features.\n\n### Stronger external secrets validation (Enterprise)\n\nn8n now verifies that the current user has access to the referenced vaults before allowing a credential that uses **$secrets...** expressions to be saved. If access is missing, the save operation fails. This prevents secret values from being exposed through guessed secret paths.\n\n### Improved API auditability (Enterprise)\n\nAPI endpoints have been expanded to provide clearer visibility into project membership and credentials:\n\n- `GET /projects/{projectId}/users` returns all members of a project including their assigned role.\n- `GET /credentials` returns a paginated list of all credentials across the instance, including the project they belong to.\n\nThis makes it easier to audit who has access to which projects and credentials without manually reviewing each one in the UI.\n\n### More granular workflow permissions\n\nWorkflow publishing permissions for [custom roles](../user-management/rbac/custom-roles/) have been split into two separate scopes: **workflow:publish** and **workflow:unpublish**. This enables more precise access control in governance scenarios where unpublishing needs to be managed independently.\n\n### Performance and stability improvements\n\n- Improved performance for instances with very large user counts, reducing slowdowns caused by user-related operations.\n- Fixed a high-memory issue that could cause crashes during Source Control push flows in large deployments with many workflows and credentials.\n\n### Minor fixes\n\n- Canvas: improved node repositioning on insertion to reduce overlaps and spacing issues.\n- Log streaming: fixed proxy configuration handling for webhook destinations so requests work reliably when a proxy is configured.\n\n### Deprecated nodes\n\n#### Motorhead node\n\nThe [Motorhead](../integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.memorymotorhead/) memory node is now deprecated because the Motorhead project is no longer maintained. The node is hidden from the nodes panel for new selections, but existing workflows using this node will continue to work.\n\n### Contributors\n\n[AmitAnveri](https://github.com/AmitAnveri)\\\n[derandreas-dt](https://github.com/derandreas-dt)\\\n[ongdisheng](https://github.com/ongdisheng)\\\n[vCaisim](https://github.com/vCaisim)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.1...n8n@2.7.2) for this version.\\\n**Release date:** 2026-02-04\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.7.0...n8n@2.7.1) for this version.\\\n**Release date:** 2026-02-03\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.7.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.6.0...n8n@2.7.0) for this version.\\\n**Release date:** 2026-02-02\n\nThis release contains bug fixes.\n\n### Contributors\n\n[LostInBrittany](https://github.com/LostInBrittany)\\\n[adriencohen](https://github.com/adriencohen)\\\n[ibex088](https://github.com/ibex088)\\\n[rutgere-indeed](https://github.com/rutgere-indeed)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.7-exp.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.7...n8n@2.4.7-exp.0) for this version.\\\n**Release date:** 2026-01-29\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.6.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.6.2...n8n@2.6.3) for this version.\\\n**Release date:** 2026-02-02\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.8\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.7...n8n@2.4.8) for this version.\\\n**Release date:** 2026-01-29\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.6.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.6.1...n8n@2.6.2) for this version.\\\n**Release date:** 2026-01-28\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.7\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.6...n8n@2.4.7) for this version.\\\n**Release date:** 2026-01-28\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.5.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.5.1...n8n@2.5.2) for this version.\\\n**Release date:** 2026-01-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.5...n8n@2.4.6) for this version.\\\n**Release date:** 2026-01-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.4...n8n@2.4.5) for this version.\\\n**Release date:** 2026-01-22\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.6.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.5.0...n8n@2.6.0) for this version.\\\n**Release date:** 2026-01-26\n\nThis release contains bug fixes.\n\n### Human-in-the-loop for AI tool calls\n\nYou can now require explicit human approval before an AI Agent executes specific tools.\n\nHuman-in-the-loop (HITL) for AI tool calls enforces review directly at the tool level. A gated tool cannot execute unless a human explicitly approves the action, giving you deterministic control over high-impact operations like deleting records, writing to production systems, or sending high-impact emails. This removes the uncertainty of prompt-based safeguards and insulates you from probabilistic agent behavior.\n\nBecause the review step is implemented using standard n8n integrations, approvals are not limited to a single user or interface. Decisions can be routed across people and systems, enforcing approval from the right person using the channels they already work in.\n\n#### What you can do\n\n- Require explicit human approval for any tool the agent can call, including the MCP Client tool or sub-workflows exposed as tools\n- Apply approval selectively, so some tools execute autonomously while others require review\n- Route approvals across users and channels (for example, send a Slack-initiated action for approval by another user via email)\n- Add safety checks for high-impact or potentially destructive operations without complex workflow patterns or brittle prompt logic.\n\n#### How to use it\n\nStart with a workflow where an AI Agent is connected to one or more tools.\n\n1. On the connection from the AI Agent to the tool you want to gate, click the **+** icon and choose **Add human review step** (hovering over the icon shows the tooltip).\n1. The **Tools panel** opens with nodes you can use to handle the review step. Select the one you want to use.\n1. Configure the approval step in the added node’s parameters. Depending on the integration, you can define the approver, the message they receive, the available actions (for example, approve or deny), and the associated buttons.\n\n[](/_video/release-notes/HITLToolCalls.webm)\n\nGet precise control over where human judgment is required, without limiting what your agent can do. Learn more [here](../advanced-ai/human-in-the-loop-tools/).\n\n### Contributors\n\n[ibex088](https://github.com/ibex088)\\\n[johnlinp](https://github.com/johnlinp)\\\n[loganaden](https://github.com/loganaden)\\\n[Jameswlepage](https://github.com/Jameswlepage)\\\n[cesars-gh](https://github.com/cesars-gh)\\\n[antman1p](https://github.com/antman1p)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.5.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.0...n8n@2.5.0) for this version.\\\n**Release date:** 2026-01-20\n\nThis release contains bug fixes.\n\n### Chat node: human-in-the-loop actions\n\nThe **Chat** node now includes two new Actions for human-in-the-loop interactions in agentic workflows:\n\n- **Send a message**: send a message to the user and continue the workflow\n- **Send a message and wait for response**: send a message and pause execution until the user replies. Users can respond with free text in the Chat or by clicking inline approval buttons, as defined in the node’s configuration.\n\nThese Actions can be used as deterministic workflow steps or as tools for an **AI Agent**, enabling multi-turn human interaction within a single execution when using the **Chat Trigger**.\n\nWhen used as an agent tool, the agent can ask for clarification before proceeding, helping it better interpret user intent and follow instructions. Agents can also send updates during long-running workflows using these Actions.\n\n#### How to\n\n1. Trigger your workflow with the **Chat Trigger** node. In the node parameters, add the *Response Mode* option and set it to *Using Response Nodes*.\n1. Add a **Chat** node later in the workflow, or add it as a tool for an **AI Agent**. Select one of the following operations: *Send a message* or *Send a message and wait for response*.\n\n#### Keep in mind\n\n- If you want an AI Agent to choose between sending a message or waiting for input, add two **Chat** tool nodes, one for each action.\n- For AI Agents triggered by the **Chat Trigger** node, adding **Send a message and wait for response** is recommended so the agent can request clarification when needed.\n\nLearn more in the [Chat node documentation](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-langchain.chat/#operation).\n\n[](/_video/release-notes/ChatHITL.webm)\n\n### Contributors\n\n[AbdulTawabJuly](https://github.com/AbdulTawabJuly)\\\n[ByteEVM](https://github.com/ByteEVM)\\\n[sudarshan12s](https://github.com/sudarshan12s)\\\n[KaanAydinli](https://github.com/KaanAydinli)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.2...n8n@2.4.3) for this version.\\\n**Release date:** 2026-01-15\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.6\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.5...n8n@2.3.6) for this version.\\\n**Release date:** 2026-01-16\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.3...n8n@2.4.4) for this version.\\\n**Release date:** 2026-01-16\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.4...n8n@2.3.5) for this version.\\\n**Release date:** 2026-01-14\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.4.0...n8n@2.4.1) for this version.\\\n**Release date:** 2026-01-13\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.1...n8n@2.3.2) for this version.\\\n**Release date:** 2026-01-09\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.4.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.0...n8n@2.4.0) for this version.\\\n**Release date:** 2026-01-12\n\nThis release contains bug fixes.\n\n### TLS support for Syslog log streaming\n\nThe Syslog log streaming destination now supports TLS over TCP for encrypted connections. This enables secure log streaming to enterprise SIEM and observability platforms that require encrypted transport. With this release, log streaming is now compatible with a broader range of enterprise SIEM platforms.\n\n### Update credentials via API\n\nn8n's public API now supports updating existing credentials by ID via a new *PATCH /credentials/:id* endpoint. Previously, credentials could only be created through the API so any changes required deleting and recreating the credential.\n\nWhen updating, you can either replace all credential data at once (useful for bulk updates) or set *isPartialData: true* to merge changes with existing data. Ideal for automated secret rotation or fixing individual values without losing your configuration.\n\n### Contributors\n\n[JonLaliberte](https://github.com/JonLaliberte)\\\n[davidpanic](https://github.com/davidpanic)\\\n[TomTom101](https://github.com/TomTom101)\\\n[garritfra](https://github.com/garritfra)\\\n[maximepvrt](https://github.com/maximepvrt)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.2...n8n@2.3.3) for this version.\\\n**Release date:** 2026-01-13\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.3...n8n@2.3.4) for this version.\\\n**Release date:** 2026-01-13\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.3.0...n8n@2.3.1) for this version.\\\n**Release date:** 2026-01-07\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.4...n8n@2.2.5) for this version.\\\n**Release date:** 2026-01-08\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.3...n8n@2.2.4) for this version.\\\n**Release date:** 2026-01-06\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.3.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.0...n8n@2.3.0) for this version.\\\n**Release date:** 2026-01-05\n\nThis release contains bug fixes.\n\n### Contributors\n\n[Shashwat-06](https://github.com/Shashwat-06)\\\n[ByteEVM](https://github.com/ByteEVM)\\\n[mithredate](https://github.com/mithredate)\\\n[belyas](https://github.com/belyas)\\\n[saurabhssonkar](https://github.com/saurabhssonkar)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.2...n8n@2.2.3) for this version.\\\n**Release date:** 2026-01-05\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.1...n8n@2.2.2) for this version.\\\n**Release date:** 2025-12-30\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.5\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.4...n8n@2.1.5) for this version.\\\n**Release date:** 2025-12-30\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.3...n8n@2.1.4) for this version.\\\n**Release date:** 2025-12-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.2...n8n@2.1.3) for this version.\\\n**Release date:** 2025-12-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.2.0...n8n@2.2.1) for this version.\\\n**Release date:** 2025-12-23\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.2.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.0...n8n@2.2.0) for this version.\n\n**Release date:** 2025-12-22\n\nThis release contains bug fixes.\n\n### More granular workflow permissions within Custom Project Roles (Enterprise)\n\nCustom Project Roles allow you to define fine-grained permissions at the project level. With this release, workflow permissions have been further refined by separating workflow editing from workflow publishing.\n\nThis change makes it easier to align access controls with internal processes where building workflows and publishing them are handled by different users or teams.\n\nCustom Project Roles\n\n### Log streaming: More audit events for improved observability\n\nLog streaming now includes additional audit events to improve visibility into operational and security-relevant changes.\n\nThis update adds events for manual workflow cancellations and workflow activation/deactivation (publish/unpublish), variable lifecycle events (create/update/delete), and user management actions (including enabling/disabling 2FA).\n\nWorkflow settings updates are also logged with the specific parameters that changed (for example, selecting a new error workflow), instead of a generic “updated” event.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.1...n8n@2.1.2) for this version.\\\n**Release date:** 2025-12-22\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.1.0...n8n@2.1.1) for this version.\\\n**Release date:** 2025-12-17\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.2...n8n@2.0.3) for this version.\\\n**Release date:** 2025-12-17\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.1.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0...n8n@2.1.0) for this version.\\\n**Release date:** 2025-12-16\n\nThis release contains bug fixes and features.\n\n### **Time Saved node**\n\nPreviously, teams could only track a single fixed time saved value for each workflow regardless of which path an execution takes. The new Time Saved node enables more precise time savings calculations where different execution paths will save different amounts of time.\n\nWith this release you can now:\n\n- **Choose fixed value or dynamic time tracking**: Use fixed time saved for simple workflows, or use one or many time saved nodes to calculate savings dynamically based on the actual execution path taken\n- **Configure per-item calculations**: When using the Time Saved node, choose whether to calculate time saved once for all items or multiply by the number of items processed\n\nThe new Time Saved node provides increased accuracy for complex workflows where different execution paths save different amounts of time.\n\nn8n automatically totals the time from all Time Saved nodes executed during each workflow run and reports it within the insights dashboard.\n\n### Contributors\n\n[Akcthecoder200](https://github.com/Akcthecoder200)\\\n[rishiraj-58](https://github.com/rishiraj-58)\\\n[rlafferty](https://github.com/rlafferty)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.1...n8n@2.0.2) for this version.\\\n**Release date:** 2025-12-12\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0...n8n@2.0.1) for this version.\\\n**Release date:** 2025-12-10\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0-rc.3...n8n@2.0.0) for this version.\\\n**Release date:** 2025-12-05\n\n### Major Version Change\n\nn8n 2.0.0 is a hardening release, not a feature release. It strengthens n8n's position as an enterprise-grade platform with secure-by-default execution, removal of legacy options that caused edge-case bugs, and better performance under load. The goal is a more predictable foundation you can rely on for mission-critical workflows.\n\nThis release is currently in **beta**. There's no urgency to upgrade immediately — take time to review the breaking changes and assess your workflows using the migration tool before upgrading.\n\nFor the full story behind 2.0, read our [announcement blog post](https://blog.n8n.io/introducing-n8n-2-0/).\n\n### Breaking changes\n\nVersion 2.0 includes breaking changes across security defaults, data handling, and configuration. Key changes include:\n\n- Task runners enabled by default (Code node executions now run in isolated environments)\n- Environment variable access blocked from Code nodes by default\n- ExecuteCommand and LocalFileTrigger nodes disabled by default\n- In-memory binary data mode removed\n\nReview the complete list and migration guidance in the [v2.0 breaking changes docs.](https://docs.n8n.io/2-0-breaking-changes/)\n\n### Before you upgrade\n\nUse the **Migration Report** tool to identify workflow-level and instance-level issues that need attention before upgrading.\n\nSee the [v2.0 migration tool docs](https://docs.n8n.io/migration-tool-v2/) for details.\n\n### Product updates\n\n**Publish / Save workflow paradigm**\n\nn8n 2.0 introduces a safer approach to updating live workflows. The `Save` button now preserves your edits without changing production. A new `Publish` button lets you explicitly push changes live when ready. See [Publish workflows](https://docs.n8n.io/workflows/publish/) for details.\n\n**Canvas and navigation improvements**\n\nSubtle refinements to the workflow editor canvas and reorganized sidebar navigation.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0-rc.4\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0-rc.3...n8n@2.0.0-rc.4) for this version.\\\n**Release date:** 2025-12-05\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0-rc.3\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0-rc.2...n8n@2.0.0-rc.3) for this version.\\\n**Release date:** 2025-12-04\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0-rc.2\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0-rc.1...n8n@2.0.0-rc.2) for this version.\\\n**Release date:** 2025-12-04\n\nThis release contains a bug fix.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0-rc.1\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.0.0-rc.0...n8n@2.0.0-rc.1) for this version.\\\n**Release date:** 2025-12-04\n\nThis release contains bug fixes.\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\n## n8n@2.0.0-rc.0\n\nView the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.122.0...n8n@2.0.0-rc.0) for this version.\\\n**Release date:** 2025-12-02\n\nThis release contains bug fixes.\n\n### Contributors\n\n[farzad528](https://github.com/farzad528)\n\nFor full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases) on GitHub.\n\nOlder versions\n\nYou can find the release notes for older versions of n8n: [1.x](1-x/) and [0.x](0-x/)\n",
|
|
2801
|
+
"excerpt": "# Release notes New features and bug fixes for n8n. You can also view the [Releases](https://github.com/n8n-io/n8n/releases) in the GitHub repository. Stable and Beta versions n8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12). Current `stable`: 2.21.5 Current `beta`: 2.22.0 ## How to update n8n The steps to...",
|
|
2803
2802
|
"sections": [
|
|
2804
2803
|
{
|
|
2805
2804
|
"title": "Release notes",
|
|
2806
2805
|
"level": 1,
|
|
2807
|
-
"content": "New features and bug fixes for n8n.\n\nYou can also view the [Releases](https://github.com/n8n-io/n8n/releases) in the GitHub repository.\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
2806
|
+
"content": "New features and bug fixes for n8n.\n\nYou can also view the [Releases](https://github.com/n8n-io/n8n/releases) in the GitHub repository.\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0"
|
|
2808
2807
|
}
|
|
2809
2808
|
]
|
|
2810
2809
|
},
|
|
@@ -2930,7 +2929,7 @@
|
|
|
2930
2929
|
"relatedPages": []
|
|
2931
2930
|
},
|
|
2932
2931
|
"searchIndex": {
|
|
2933
|
-
"fullText": "2.x # release notes\n\nnew features and bug fixes for n8n.\n\nyou can also view the [releases](https://github.com/n8n-io/n8n/releases) in the github repository.\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.4 current `beta`: 2.22.0\n\n## how to update n8n\n\nthe steps to update your n8n depend on which n8n platform you use. refer to the documentation for your n8n:\n\n- [cloud](../manage-cloud/update-cloud-version/)\n- self-hosted options:\n - [npm](../hosting/installation/npm/)\n - [docker](../hosting/installation/docker/)\n\n## semantic versioning in n8n\n\nn8n uses [semantic versioning](https://semver.org/). all version numbers are in the format `major.minor.patch`. version numbers increment as follows:\n\n- major version when making incompatible changes which can require user action.\n- minor version when adding functionality in a backward-compatible manner.\n- patch version when making backward-compatible bug fixes.\n\nolder versions\n\nyou can find the release notes for older versions of n8n: [1.x](1-x/) and [0.x](0-x/)\n\n## n8n@2.22.1\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.22.0...n8n@2.22.1) for this version.\\\n**release date:** 2026-05-21\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.22.0\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.0...n8n@2.22.0) for this version.\\\n**release date:** 2026-05-19\n\nthis release contains bug fixes.\n\n### contributors\n\n[kimsehwan96](https://github.com/kimsehwan96)\\\n[sinehypernova-0718](https://github.com/sinehypernova-0718)\\\n[manuelgruber](https://github.com/manuelgruber)\\\n[muzahmood](https://github.com/muzahmood)\\\n[mvanhorn](https://github.com/mvanhorn)\\\n[abdulalmas](https://github.com/abdulalmas)\\\n[chrisjr404](https://github.com/chrisjr404)\\\n[aikido-autofix[bot]](https://github.com/apps/aikido-autofix)\\\n[khadyottakale](https://github.com/khadyottakale)\\\n[rajats-dev](https://github.com/rajats-dev)\\\n[themazeisamazing](https://github.com/themazeisamazing)\\\n[onyxraven](https://github.com/onyxraven)\\\n[fendy3002](https://github.com/fendy3002)\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.6\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.5...n8n@2.21.6) for this version.\\\n**release date:** 2026-05-21\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.5\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.4...n8n@2.21.5) for this version.\\\n**release date:** 2026-05-20\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.3\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.2...n8n@2.21.3) for this version.\\\n**release date:** 2026-05-15\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.2\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.1...n8n@2.21.2) for this version.\\\n**release date:** 2026-05-14\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.1\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.0...n8n@2.21.1) for this version.\\\n**release date:** 2026-05-13\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.0\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.21.0) for this version.\\\n**release date:** 2026-05-12\n\nthis release contains bug fixes.\n\n### contributors\n\n[etairl](https://github.com/etairl)\\\n[devareddy05](https://github.com/devareddy05)\\\n[aikido-autofix[bot]](https://github.com/apps/aikido-autofix)\\\n[sudarshan12s](https://github.com/sudarshan12s)\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.10\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.9...n8n@2.20.10) for this version.\\\n**release date:** 2026-05-18\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.9\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.8...n8n@2.20.9) for this version.\\\n**release date:** 2026-05-15\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.8\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.7-exp.0...n8n@2.20.8) for this version.\\\n**release date:** 2026-05-15\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.7\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.6...n8n@2.20.7) for this version.\\\n**release date:** 2026-05-14\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.6\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.5...n8n@2.20.6) for this version.\\\n**release date:** 2026-05-08\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.5\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.4...n8n@2.20.5) for this version.\\\n**release date:** 2026-05-07\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.4\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.20.4) for this version.\\\n**release date:** 2026-05-07\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.3\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.2...n8n@2.20.3) for this version.\\\n**release date:** 2026-05-07\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.1\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.20.1) for this version.\\\n**release date:** 2026-05-06\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.0\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.0...n8n@2.20.0) for this version.\\\n**release date:** 2026-05-05\n\nthis release contains bug fixes and features.\n\n### microsoft agent 365 trigger node\n\nthe [microsoft agent 365 trigger node](../integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.microsoftagent365trigger/) lets you build n8n agents that show up as members of your team inside microsoft 365 apps. once deployed, your agent gets its own identity in your microsoft tenant, with an email address you can @mention in teams, send email to, or grant permissions to a sharepoint site, just like a teammate.\n\na microsoft agent 365 trigger node with a chat model, memory, and tools across zendesk, salesforce, pagerduty, datadog, and a sub-workflow.\n\n#### how it works\n\nyou build the agent in n8n using the microsoft agent 365 trigger node:\n\n- add a system prompt and give the agent access to tools, mcp servers, and your existing workflows using [sub-workflows as tools](../flow-logic/subworkflows/).\n- set up the agent on the microsoft side (see the [microsoft agent 365 documentation](https://learn.microsoft.com/en-us/microsoft-agent-365/) for the configuration steps). this gives the agent an entra id identity with an email address that you can @mention, email, or grant sharepoint permissions to.\n- microsoft handles identity, lifecycle, security, and compliance for the agent on their side (via entra id, purview, and defender). n8n handles workflow-level governance like rbac, credential management, and execution logs.\n\n#### things to keep in mind\n\n- if you already use n8n with microsoft services through individual nodes (outlook, teams, sharepoint, and so on), those workflows continue to work as before. agent 365 is a new path for teams that want their agents to show up *inside* microsoft apps and interact like a member of the team.\n- the node requires a microsoft 365 tenant.\n\nfor the full launch story, see the [n8n blog post](https://blog.n8n.io/deploy-n8n-agents-that-show-up-as-members-of-the-team-inside-microsoft-apps/).\n\n### contributors\n\n[jjnyn](https://github.com/jjnyn)\\\n[haimingzz](https://github.com/haimingzz)\\\n[majiayu000](https://github.com/majiayu000)\\\n[moseoh](https://github.com/moseoh)\\\n[omc12](https://github.com/omc12)\\\n[gulianrdgd](https://github.com/gulianrdgd)\\\n[jeanibarz](https://github.com/jeanibarz)\\\n[uppinote20](https://github.com/uppinote20)\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.19.5\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.4...n8n@2.19.5) for this version.\\\n**release date:** 2026-05-07\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.19.4\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.3...n8n@2.19.4) for this version.\\\n**release date:** 2026-05-06\n\nthis release contains bug fixes.\n\n## n8n@2.19.3\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.2...n8n@2.19.3) for this version.\\\n**release date:** 2026-05-0",
|
|
2932
|
+
"fullText": "2.x # release notes\n\nnew features and bug fixes for n8n.\n\nyou can also view the [releases](https://github.com/n8n-io/n8n/releases) in the github repository.\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## how to update n8n\n\nthe steps to update your n8n depend on which n8n platform you use. refer to the documentation for your n8n:\n\n- [cloud](../manage-cloud/update-cloud-version/)\n- self-hosted options:\n - [npm](../hosting/installation/npm/)\n - [docker](../hosting/installation/docker/)\n\n## semantic versioning in n8n\n\nn8n uses [semantic versioning](https://semver.org/). all version numbers are in the format `major.minor.patch`. version numbers increment as follows:\n\n- major version when making incompatible changes which can require user action.\n- minor version when adding functionality in a backward-compatible manner.\n- patch version when making backward-compatible bug fixes.\n\nolder versions\n\nyou can find the release notes for older versions of n8n: [1.x](1-x/) and [0.x](0-x/)\n\n## n8n@2.22.1\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.22.0...n8n@2.22.1) for this version.\\\n**release date:** 2026-05-21\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.22.0\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.0...n8n@2.22.0) for this version.\\\n**release date:** 2026-05-19\n\nthis release contains bug fixes.\n\n### contributors\n\n[kimsehwan96](https://github.com/kimsehwan96)\\\n[sinehypernova-0718](https://github.com/sinehypernova-0718)\\\n[manuelgruber](https://github.com/manuelgruber)\\\n[muzahmood](https://github.com/muzahmood)\\\n[mvanhorn](https://github.com/mvanhorn)\\\n[abdulalmas](https://github.com/abdulalmas)\\\n[chrisjr404](https://github.com/chrisjr404)\\\n[aikido-autofix[bot]](https://github.com/apps/aikido-autofix)\\\n[khadyottakale](https://github.com/khadyottakale)\\\n[rajats-dev](https://github.com/rajats-dev)\\\n[themazeisamazing](https://github.com/themazeisamazing)\\\n[onyxraven](https://github.com/onyxraven)\\\n[fendy3002](https://github.com/fendy3002)\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.6\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.5...n8n@2.21.6) for this version.\\\n**release date:** 2026-05-21\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.5\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.4...n8n@2.21.5) for this version.\\\n**release date:** 2026-05-20\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.3\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.2...n8n@2.21.3) for this version.\\\n**release date:** 2026-05-15\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.2\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.1...n8n@2.21.2) for this version.\\\n**release date:** 2026-05-14\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.1\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.21.0...n8n@2.21.1) for this version.\\\n**release date:** 2026-05-13\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.21.0\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.21.0) for this version.\\\n**release date:** 2026-05-12\n\nthis release contains bug fixes.\n\n### contributors\n\n[etairl](https://github.com/etairl)\\\n[devareddy05](https://github.com/devareddy05)\\\n[aikido-autofix[bot]](https://github.com/apps/aikido-autofix)\\\n[sudarshan12s](https://github.com/sudarshan12s)\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.10\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.9...n8n@2.20.10) for this version.\\\n**release date:** 2026-05-18\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.9\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.8...n8n@2.20.9) for this version.\\\n**release date:** 2026-05-15\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.8\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.7-exp.0...n8n@2.20.8) for this version.\\\n**release date:** 2026-05-15\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.7\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.6...n8n@2.20.7) for this version.\\\n**release date:** 2026-05-14\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.6\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.5...n8n@2.20.6) for this version.\\\n**release date:** 2026-05-08\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.5\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.4...n8n@2.20.5) for this version.\\\n**release date:** 2026-05-07\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.4\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.20.4) for this version.\\\n**release date:** 2026-05-07\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.3\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.2...n8n@2.20.3) for this version.\\\n**release date:** 2026-05-07\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.1\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.20.0...n8n@2.20.1) for this version.\\\n**release date:** 2026-05-06\n\nthis release contains bug fixes.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.20.0\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.0...n8n@2.20.0) for this version.\\\n**release date:** 2026-05-05\n\nthis release contains bug fixes and features.\n\n### microsoft agent 365 trigger node\n\nthe [microsoft agent 365 trigger node](../integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.microsoftagent365trigger/) lets you build n8n agents that show up as members of your team inside microsoft 365 apps. once deployed, your agent gets its own identity in your microsoft tenant, with an email address you can @mention in teams, send email to, or grant permissions to a sharepoint site, just like a teammate.\n\na microsoft agent 365 trigger node with a chat model, memory, and tools across zendesk, salesforce, pagerduty, datadog, and a sub-workflow.\n\n#### how it works\n\nyou build the agent in n8n using the microsoft agent 365 trigger node:\n\n- add a system prompt and give the agent access to tools, mcp servers, and your existing workflows using [sub-workflows as tools](../flow-logic/subworkflows/).\n- set up the agent on the microsoft side (see the [microsoft agent 365 documentation](https://learn.microsoft.com/en-us/microsoft-agent-365/) for the configuration steps). this gives the agent an entra id identity with an email address that you can @mention, email, or grant sharepoint permissions to.\n- microsoft handles identity, lifecycle, security, and compliance for the agent on their side (via entra id, purview, and defender). n8n handles workflow-level governance like rbac, credential management, and execution logs.\n\n#### things to keep in mind\n\n- if you already use n8n with microsoft services through individual nodes (outlook, teams, sharepoint, and so on), those workflows continue to work as before. agent 365 is a new path for teams that want their agents to show up *inside* microsoft apps and interact like a member of the team.\n- the node requires a microsoft 365 tenant.\n\nfor the full launch story, see the [n8n blog post](https://blog.n8n.io/deploy-n8n-agents-that-show-up-as-members-of-the-team-inside-microsoft-apps/).\n\n### contributors\n\n[jjnyn](https://github.com/jjnyn)\\\n[haimingzz](https://github.com/haimingzz)\\\n[majiayu000](https://github.com/majiayu000)\\\n[moseoh](https://github.com/moseoh)\\\n[omc12](https://github.com/omc12)\\\n[gulianrdgd](https://github.com/gulianrdgd)\\\n[jeanibarz](https://github.com/jeanibarz)\\\n[uppinote20](https://github.com/uppinote20)\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.19.5\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.4...n8n@2.19.5) for this version.\\\n**release date:** 2026-05-07\n\nthis release contains a bug fix.\n\nfor full release details, refer to [releases](https://github.com/n8n-io/n8n/releases) on github.\n\n## n8n@2.19.4\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.3...n8n@2.19.4) for this version.\\\n**release date:** 2026-05-06\n\nthis release contains bug fixes.\n\n## n8n@2.19.3\n\nview the [commits](https://github.com/n8n-io/n8n/compare/n8n@2.19.2...n8n@2.19.3) for this version.\\\n**release date:** 2026-05-0",
|
|
2934
2933
|
"importantTerms": [
|
|
2935
2934
|
"github",
|
|
2936
2935
|
"release",
|
|
@@ -16825,7 +16824,7 @@
|
|
|
16825
16824
|
"nodeName": null,
|
|
16826
16825
|
"nodeType": null,
|
|
16827
16826
|
"content": {
|
|
16828
|
-
"markdown": "# Docker Installation\n\nn8n recommends using [Docker](https://www.docker.com/) for most self-hosting needs. It provides a clean, isolated environment, avoids operating system and tooling incompatibilities, and makes database and environment management simpler.\n\nYou can also use n8n in Docker with [Docker Compose](../server-setups/docker-compose/). You can find Docker Compose configurations for various architectures in the [n8n-hosting repository](https://github.com/n8n-io/n8n-hosting).\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nYou can also follow along with our video guide here:\n\n## Prerequisites\n\nBefore proceeding, install Docker:\n\n- [Docker Desktop](https://docs.docker.com/get-docker/) is available for Mac, Windows, and Linux. Docker Desktop includes the Docker Engine and Docker Compose.\n- [Docker Engine](https://docs.docker.com/engine/install/) and [Docker Compose](https://docs.docker.com/compose/install/linux/) are also available as separate packages for Linux. Use this for Linux machines without a graphical environment or when you don't want the Docker Desktop UI.\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
16827
|
+
"markdown": "# Docker Installation\n\nn8n recommends using [Docker](https://www.docker.com/) for most self-hosting needs. It provides a clean, isolated environment, avoids operating system and tooling incompatibilities, and makes database and environment management simpler.\n\nYou can also use n8n in Docker with [Docker Compose](../server-setups/docker-compose/). You can find Docker Compose configurations for various architectures in the [n8n-hosting repository](https://github.com/n8n-io/n8n-hosting).\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nYou can also follow along with our video guide here:\n\n## Prerequisites\n\nBefore proceeding, install Docker:\n\n- [Docker Desktop](https://docs.docker.com/get-docker/) is available for Mac, Windows, and Linux. Docker Desktop includes the Docker Engine and Docker Compose.\n- [Docker Engine](https://docs.docker.com/engine/install/) and [Docker Compose](https://docs.docker.com/compose/install/linux/) are also available as separate packages for Linux. Use this for Linux machines without a graphical environment or when you don't want the Docker Desktop UI.\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## Starting n8n\n\nFrom your terminal, run the following commands, replacing the `<YOUR_TIMEZONE>` placeholders with [your timezone](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List):\n\n```\ndocker volume create n8n_data\n\ndocker run -it --rm \\\n --name n8n \\\n -p 5678:5678 \\\n -e GENERIC_TIMEZONE=\"<YOUR_TIMEZONE>\" \\\n -e TZ=\"<YOUR_TIMEZONE>\" \\\n -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true \\\n -e N8N_RUNNERS_ENABLED=true \\\n -v n8n_data:/home/node/.n8n \\\n docker.n8n.io/n8nio/n8n\n```\n\nThis command creates a volume to store persistent data, downloads the required n8n image, and starts the container with the following settings:\n\n- Maps and exposes port `5678` on the host.\n- Sets the timezone for the container:\n - the `TZ` environment variable sets the system timezone to control what scripts and commands like `date` return.\n - the [`GENERIC_TIMEZONE` environment variable](../../configuration/environment-variables/timezone-localization/) sets the correct timezone for schedule-oriented nodes like the [Schedule Trigger node](../../../integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/).\n- Enforces secure file permissions for the n8n configuration file.\n- Enables [task runners](../../configuration/task-runners/), the recommended way of executing tasks in n8n.\n- Mounts the `n8n_data` volume to the `/home/node/.n8n` directory to persist your data across container restarts.\n\nOnce running, you can access n8n by opening: <http://localhost:5678>\n\n## Using with PostgreSQL\n\nBy default, n8n uses SQLite to save [credentials](../../../glossary/#credential-n8n), past executions, and workflows. n8n also supports PostgreSQL, configurable using environment variables as detailed below.\n\nPersisting the `.n8n` directory still recommended\n\nWhen using PostgreSQL, n8n doesn't need to use the `.n8n` directory for the SQLite database file. However, the directory still contains other important data like encryption keys, instance logs, and source control feature assets. While you can work around some of these requirements, (for example, by setting the [`N8N_ENCRYPTION_KEY` environment variable](../../configuration/environment-variables/deployment/)), it's best to continue mapping a persistent volume for the directory to avoid potential issues.\n\nTo use n8n with PostgreSQL, execute the following commands, replacing the placeholders (depicted within angled brackets, for example `<POSTGRES_USER>`) with your actual values:\n\n```\ndocker volume create n8n_data\n\ndocker run -it --rm \\\n --name n8n \\\n -p 5678:5678 \\\n -e GENERIC_TIMEZONE=\"<YOUR_TIMEZONE>\" \\\n -e TZ=\"<YOUR_TIMEZONE>\" \\\n -e N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true \\\n -e N8N_RUNNERS_ENABLED=true \\\n -e DB_TYPE=postgresdb \\\n -e DB_POSTGRESDB_DATABASE=<POSTGRES_DATABASE> \\\n -e DB_POSTGRESDB_HOST=<POSTGRES_HOST> \\\n -e DB_POSTGRESDB_PORT=<POSTGRES_PORT> \\\n -e DB_POSTGRESDB_USER=<POSTGRES_USER> \\\n -e DB_POSTGRESDB_SCHEMA=<POSTGRES_SCHEMA> \\\n -e DB_POSTGRESDB_PASSWORD=<POSTGRES_PASSWORD> \\\n -v n8n_data:/home/node/.n8n \\\n docker.n8n.io/n8nio/n8n\n```\n\nYou can find a complete `docker-compose` file for PostgreSQL in the [n8n hosting repository](https://github.com/n8n-io/n8n-hosting/tree/main/docker-compose/withPostgres).\n\n## Updating\n\nTo update n8n, in Docker Desktop, navigate to the **Images** tab and select **Pull** from the context menu to download the latest n8n image:\n\nYou can also use the command line to pull the latest, or a specific version:\n\n```\n# Pull latest (stable) version\ndocker pull docker.n8n.io/n8nio/n8n\n\n# Pull specific version\ndocker pull docker.n8n.io/n8nio/n8n:1.81.0\n\n# Pull next (unstable) version\ndocker pull docker.n8n.io/n8nio/n8n:next\n```\n\nAfter pulling the updated image, stop your n8n container and start it again. You can also use the command line. Replace `<container_id>` in the commands below with the container ID you find in the first command:\n\n```\n# Find your container ID\ndocker ps -a\n\n# Stop the container with the `<container_id>`\ndocker stop <container_id>\n\n# Remove the container with the `<container_id>`\ndocker rm <container_id>\n\n# Start the container\ndocker run --name=<container_name> [options] -d docker.n8n.io/n8nio/n8n\n```\n\n### Updating Docker Compose\n\nIf you run n8n using a Docker Compose file, follow these steps to update n8n:\n\n```\n# Navigate to the directory containing your docker compose file\ncd </path/to/your/compose/file/directory>\n\n# Pull latest version\ndocker compose pull\n\n# Stop and remove older version\ndocker compose down\n\n# Start the container\ndocker compose up -d\n```\n\n## n8n with tunnel\n\nDanger\n\nUse this for local development and testing. It isn't safe to use it in production.\n\nDevelopment tooling\n\nThe tunnel feature is a convenience tool for local development. The underlying implementation may change between n8n versions.\n\nTo use webhooks for trigger nodes of external services like GitHub, n8n has to be reachable from the web. n8n provides a tunnel service using [cloudflared](https://github.com/cloudflare/cloudflared) that redirects requests from the web to your local n8n instance. Docker must be installed for the tunnel to work.\n\nThere are two ways to use the tunnel, depending on how you run n8n:\n\n### Full stack\n\nThis runs n8n and cloudflared together in containers. The tunnel URL prints on startup and everything is wired automatically:\n\n```\npnpm stack --tunnel\n```\n\n### Services only\n\nIf you prefer to run n8n locally with `pnpm dev` or `pnpm start`, you can start cloudflared as a standalone service:\n\n```\n# Terminal 1: Start the cloudflared tunnel service\npnpm --filter n8n-containers services --services cloudflared\n\n# Terminal 2: Start n8n locally\npnpm dev\n```\n\nThe `services` command:\n\n1. Starts cloudflared pointing at `host.docker.internal:5678` (your local n8n).\n1. Fetches the public tunnel URL from cloudflared's metrics endpoint.\n1. Writes a `.env` file to `packages/cli/bin/.env` with `WEBHOOK_URL` and `N8N_PROXY_HOPS=1`.\n1. `pnpm dev` and `pnpm start` pick up that `.env` automatically via dotenv.\n\nClean up when done:\n\n```\npnpm --filter n8n-containers services:clean\n```\n\n## Next steps\n\n- Find more information about Docker setup in the README file for the [Docker image](https://github.com/n8n-io/n8n/tree/master/docker/images/n8n).\n- Learn more about [configuring](../../configuration/environment-variables/) and [scaling](../../scaling/overview/) n8n.\n- Or explore using n8n: try the [Quickstarts](../../../try-it-out/).\n",
|
|
16829
16828
|
"excerpt": "# Docker Installation n8n recommends using [Docker](https://www.docker.com/) for most self-hosting needs. It provides a clean, isolated environment, avoids operating system and tooling incompatibilities, and makes database and environment management simpler. You can also use n8n in Docker with [Docker Compose](../server-setups/docker-compose/). You can find Docker Compose configurations for various architectures in the [n8n-hosting repository](https://github.com/n8n-io/n8n-hosting). Self-host...",
|
|
16830
16829
|
"sections": [
|
|
16831
16830
|
{
|
|
@@ -16951,7 +16950,7 @@
|
|
|
16951
16950
|
"relatedPages": []
|
|
16952
16951
|
},
|
|
16953
16952
|
"searchIndex": {
|
|
16954
|
-
"fullText": "docker # docker installation\n\nn8n recommends using [docker](https://www.docker.com/) for most self-hosting needs. it provides a clean, isolated environment, avoids operating system and tooling incompatibilities, and makes database and environment management simpler.\n\nyou can also use n8n in docker with [docker compose](../server-setups/docker-compose/). you can find docker compose configurations for various architectures in the [n8n-hosting repository](https://github.com/n8n-io/n8n-hosting).\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nyou can also follow along with our video guide here:\n\n## prerequisites\n\nbefore proceeding, install docker:\n\n- [docker desktop](https://docs.docker.com/get-docker/) is available for mac, windows, and linux. docker desktop includes the docker engine and docker compose.\n- [docker engine](https://docs.docker.com/engine/install/) and [docker compose](https://docs.docker.com/compose/install/linux/) are also available as separate packages for linux. use this for linux machines without a graphical environment or when you don't want the docker desktop ui.\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.
|
|
16953
|
+
"fullText": "docker # docker installation\n\nn8n recommends using [docker](https://www.docker.com/) for most self-hosting needs. it provides a clean, isolated environment, avoids operating system and tooling incompatibilities, and makes database and environment management simpler.\n\nyou can also use n8n in docker with [docker compose](../server-setups/docker-compose/). you can find docker compose configurations for various architectures in the [n8n-hosting repository](https://github.com/n8n-io/n8n-hosting).\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nyou can also follow along with our video guide here:\n\n## prerequisites\n\nbefore proceeding, install docker:\n\n- [docker desktop](https://docs.docker.com/get-docker/) is available for mac, windows, and linux. docker desktop includes the docker engine and docker compose.\n- [docker engine](https://docs.docker.com/engine/install/) and [docker compose](https://docs.docker.com/compose/install/linux/) are also available as separate packages for linux. use this for linux machines without a graphical environment or when you don't want the docker desktop ui.\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## starting n8n\n\nfrom your terminal, run the following commands, replacing the `<your_timezone>` placeholders with [your timezone](https://en.wikipedia.org/wiki/list_of_tz_database_time_zones#list):\n\n```\ndocker volume create n8n_data\n\ndocker run -it --rm \\\n --name n8n \\\n -p 5678:5678 \\\n -e generic_timezone=\"<your_timezone>\" \\\n -e tz=\"<your_timezone>\" \\\n -e n8n_enforce_settings_file_permissions=true \\\n -e n8n_runners_enabled=true \\\n -v n8n_data:/home/node/.n8n \\\n docker.n8n.io/n8nio/n8n\n```\n\nthis command creates a volume to store persistent data, downloads the required n8n image, and starts the container with the following settings:\n\n- maps and exposes port `5678` on the host.\n- sets the timezone for the container:\n - the `tz` environment variable sets the system timezone to control what scripts and commands like `date` return.\n - the [`generic_timezone` environment variable](../../configuration/environment-variables/timezone-localization/) sets the correct timezone for schedule-oriented nodes like the [schedule trigger node](../../../integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/).\n- enforces secure file permissions for the n8n configuration file.\n- enables [task runners](../../configuration/task-runners/), the recommended way of executing tasks in n8n.\n- mounts the `n8n_data` volume to the `/home/node/.n8n` directory to persist your data across container restarts.\n\nonce running, you can access n8n by opening: <http://localhost:5678>\n\n## using with postgresql\n\nby default, n8n uses sqlite to save [credentials](../../../glossary/#credential-n8n), past executions, and workflows. n8n also supports postgresql, configurable using environment variables as detailed below.\n\npersisting the `.n8n` directory still recommended\n\nwhen using postgresql, n8n doesn't need to use the `.n8n` directory for the sqlite database file. however, the directory still contains other important data like encryption keys, instance logs, and source control feature assets. while you can work around some of these requirements, (for example, by setting the [`n8n_encryption_key` environment variable](../../configuration/environment-variables/deployment/)), it's best to continue mapping a persistent volume for the directory to avoid potential issues.\n\nto use n8n with postgresql, execute the following commands, replacing the placeholders (depicted within angled brackets, for example `<postgres_user>`) with your actual values:\n\n```\ndocker volume create n8n_data\n\ndocker run -it --rm \\\n --name n8n \\\n -p 5678:5678 \\\n -e generic_timezone=\"<your_timezone>\" \\\n -e tz=\"<your_timezone>\" \\\n -e n8n_enforce_settings_file_permissions=true \\\n -e n8n_runners_enabled=true \\\n -e db_type=postgresdb \\\n -e db_postgresdb_database=<postgres_database> \\\n -e db_postgresdb_host=<postgres_host> \\\n -e db_postgresdb_port=<postgres_port> \\\n -e db_postgresdb_user=<postgres_user> \\\n -e db_postgresdb_schema=<postgres_schema> \\\n -e db_postgresdb_password=<postgres_password> \\\n -v n8n_data:/home/node/.n8n \\\n docker.n8n.io/n8nio/n8n\n```\n\nyou can find a complete `docker-compose` file for postgresql in the [n8n hosting repository](https://github.com/n8n-io/n8n-hosting/tree/main/docker-compose/withpostgres).\n\n## updating\n\nto update n8n, in docker desktop, navigate to the **images** tab and select **pull** from the context menu to download the latest n8n image:\n\nyou can also use the command line to pull the latest, or a specific version:\n\n```\n# pull latest (stable) version\ndocker pull docker.n8n.io/n8nio/n8n\n\n# pull specific version\ndocker pull docker.n8n.io/n8nio/n8n:1.81.0\n\n# pull next (unstable) version\ndocker pull docker.n8n.io/n8nio/n8n:next\n```\n\nafter pulling the updated image, stop your n8n container and start it again. you can also use the command line. replace `<container_id>` in the commands below with the container id you find in the first command:\n\n```\n# find your container id\ndocker ps -a\n\n# stop the container with the `<container_id>`\ndocker stop <container_id>\n\n# remove the container with the `<container_id>`\ndocker rm <container_id>\n\n# start the container\ndocker run --name=<container_name> [options] -d docker.n8n.io/n8nio/n8n\n```\n\n### updating docker compose\n\nif you run n8n using a docker compose file, follow these steps to update n8n:\n\n```\n# navigate to the directory containing your docker compose file\ncd </path/to/your/compose/file/directory>\n\n# pull latest version\ndocker compose pull\n\n# stop and remove older version\ndocker compose down\n\n# start the container\ndocker compose up -d\n```\n\n## n8n with tunnel\n\ndanger\n\nuse this for local development and testing. it isn't safe to use it in production.\n\ndevelopment tooling\n\nthe tunnel feature is a convenience tool for local development. the underlying implementation may change between n8n versions.\n\nto use webhooks for trigger nodes of external services like github, n8n has to be reachable from the web. n8n provides a tunnel service using [cloudflared](https://github.com/cloudflare/cloudflared) that redirects requests from the web to your local n8n instance. docker must be installed for the tunnel to work.\n\nthere are two ways to use the tunnel, depending on how you run n8n:\n\n### full stack\n\nthis runs n8n and cloudflared together in containers. the tunnel url prints on startup and everything is wired automatically:\n\n```\npnpm stack --tunnel\n```\n\n### services only\n\nif you prefer to run n8n locally with `pnpm dev` or `pnpm start`, you can start cloudflared as a standalone service:\n\n```\n# terminal 1: start the cloudflared tunnel service\npnpm --filter n8n-containers services --services cloudflared\n\n# terminal 2: start n8n locally\npnpm dev\n```\n\nthe `services` command:\n\n1. starts cloudflared pointing at `host.docker.internal:5678` (your local n8n).\n1. fetches the public tunnel url from cloudflared's metrics endpoint.\n1. writes a `.env` file to `packages/cli/bin/.env` with `webhook_url` and `n8n_proxy_hops=1`.\n1. `pnpm dev` and `pnpm start` pick up that `.env` automatically via dotenv.\n\nclean up when done:\n\n```\npnpm --filter n8n-containers services:clean\n```\n\n## next steps\n\n- find more information about docker setup in the readme file for the [docker image](https://github.com/n8n-io/n8n/tree/master/docker/images/n8n).\n- learn more about [configuring](../../configuration/environment-variables/) and [scaling](../../scaling/overview/) n8n.\n- or explore using n8n: try the [quickstarts](../../../try-it-out/).\n docker installation pull latest (stable) version pull specific version pull next (unstable) version find your container id stop the container with the `<container_id>` remove the container with the `<container_id>` start the container navigate to the directory containing your docker compose file pull latest version stop and remove older version start the container terminal 1: start the cloudflared tunnel service terminal 2: start n8n locally",
|
|
16955
16954
|
"importantTerms": [
|
|
16956
16955
|
"docker",
|
|
16957
16956
|
"compose",
|
|
@@ -17016,13 +17015,13 @@
|
|
|
17016
17015
|
"nodeName": null,
|
|
17017
17016
|
"nodeType": null,
|
|
17018
17017
|
"content": {
|
|
17019
|
-
"markdown": "# npm\n\nnpm is a quick way to get started with n8n on your local machine. You must have [Node.js](https://nodejs.org/en/) installed. n8n requires a Node.js version between 20.19 and 24.x, inclusive.\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
17020
|
-
"excerpt": "# npm npm is a quick way to get started with n8n on your local machine. You must have [Node.js](https://nodejs.org/en/) installed. n8n requires a Node.js version between 20.19 and 24.x, inclusive. Stable and Beta versions n8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12). Current `stable`: 2.21.
|
|
17018
|
+
"markdown": "# npm\n\nnpm is a quick way to get started with n8n on your local machine. You must have [Node.js](https://nodejs.org/en/) installed. n8n requires a Node.js version between 20.19 and 24.x, inclusive.\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## Try n8n with npx\n\nYou can try n8n without installing it using npx.\n\nFrom the terminal, run:\n\n```\nnpx n8n\n```\n\nThis command will download everything that's needed to start n8n. You can then access n8n and start building workflows by opening <http://localhost:5678>.\n\n## Install globally with npm\n\nTo install n8n globally, use npm:\n\n```\nnpm install n8n -g\n```\n\nTo install or update to a specific version of n8n use the `@` syntax to specify the version. For example:\n\n```\nnpm install -g n8n@0.126.1\n```\n\nTo install `next`:\n\n```\nnpm install -g n8n@next\n```\n\nAfter the installation, start n8n by running:\n\n```\nn8n\n# or\nn8n start\n```\n\n### Next steps\n\nTry out n8n using the [Quickstarts](../../../try-it-out/).\n\n## Updating\n\nTo update your n8n instance to the `latest` version, run:\n\n```\nnpm update -g n8n\n```\n\nTo install the `next` version:\n\n```\nnpm install -g n8n@next\n```\n\n## n8n with tunnel\n\nDanger\n\nUse this for local development and testing. It isn't safe to use it in production.\n\nDevelopment tooling\n\nThe tunnel feature is a convenience tool for local development. The underlying implementation may change between n8n versions.\n\nTo use webhooks for trigger nodes of external services like GitHub, n8n has to be reachable from the web. n8n provides a tunnel service using [cloudflared](https://github.com/cloudflare/cloudflared) that redirects requests from the web to your local n8n instance. Docker must be installed for the tunnel to work.\n\nThere are two ways to use the tunnel, depending on how you run n8n:\n\nDocker required\n\nThe tunnel uses cloudflared, which runs as a Docker container. Make sure [Docker](https://docs.docker.com/get-docker/) is installed on your machine, even when running n8n via npm.\n\nFor npm installations, use the **services only** approach. Start cloudflared as a standalone service, then run n8n locally:\n\n```\n# Terminal 1: Start the cloudflared tunnel service\npnpm --filter n8n-containers services --services cloudflared\n\n# Terminal 2: Start n8n locally\npnpm dev\n```\n\nThe `services` command starts cloudflared, fetches the public tunnel URL, and writes a `.env` file to `packages/cli/bin/.env` with `WEBHOOK_URL` and `N8N_PROXY_HOPS=1`. n8n picks up this `.env` automatically on startup.\n\nClean up when done:\n\n```\npnpm --filter n8n-containers services:clean\n```\n\nFor the full stack approach (n8n and cloudflared both in containers), refer to the [Docker tunnel setup](../docker/#n8n-with-tunnel).\n\n## Reverting an upgrade\n\nInstall the older version that you want to go back to.\n\nIf the upgrade involved a database migration:\n\n1. Check the feature documentation and release notes to see if there are any manual changes you need to make.\n1. Run `n8n db:revert` on your current version to roll back the database. If you want to revert more than one database migration, you need to repeat this process.\n\n## Windows troubleshooting\n\nIf you are experiencing issues running n8n on Windows, make sure your Node.js environment is correctly set up. Follow Microsoft's guide to [Install NodeJS on Windows](https://learn.microsoft.com/en-us/windows/dev-environment/javascript/nodejs-on-windows).\n",
|
|
17019
|
+
"excerpt": "# npm npm is a quick way to get started with n8n on your local machine. You must have [Node.js](https://nodejs.org/en/) installed. n8n requires a Node.js version between 20.19 and 24.x, inclusive. Stable and Beta versions n8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12). Current `stable`: 2.21.5 Current `beta...",
|
|
17021
17020
|
"sections": [
|
|
17022
17021
|
{
|
|
17023
17022
|
"title": "npm",
|
|
17024
17023
|
"level": 1,
|
|
17025
|
-
"content": "npm is a quick way to get started with n8n on your local machine. You must have [Node.js](https://nodejs.org/en/) installed. n8n requires a Node.js version between 20.19 and 24.x, inclusive.\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
17024
|
+
"content": "npm is a quick way to get started with n8n on your local machine. You must have [Node.js](https://nodejs.org/en/) installed. n8n requires a Node.js version between 20.19 and 24.x, inclusive.\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0"
|
|
17026
17025
|
},
|
|
17027
17026
|
{
|
|
17028
17027
|
"title": "or",
|
|
@@ -17069,7 +17068,7 @@
|
|
|
17069
17068
|
"relatedPages": []
|
|
17070
17069
|
},
|
|
17071
17070
|
"searchIndex": {
|
|
17072
|
-
"fullText": "npm # npm\n\nnpm is a quick way to get started with n8n on your local machine. you must have [node.js](https://nodejs.org/en/) installed. n8n requires a node.js version between 20.19 and 24.x, inclusive.\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.
|
|
17071
|
+
"fullText": "npm # npm\n\nnpm is a quick way to get started with n8n on your local machine. you must have [node.js](https://nodejs.org/en/) installed. n8n requires a node.js version between 20.19 and 24.x, inclusive.\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## try n8n with npx\n\nyou can try n8n without installing it using npx.\n\nfrom the terminal, run:\n\n```\nnpx n8n\n```\n\nthis command will download everything that's needed to start n8n. you can then access n8n and start building workflows by opening <http://localhost:5678>.\n\n## install globally with npm\n\nto install n8n globally, use npm:\n\n```\nnpm install n8n -g\n```\n\nto install or update to a specific version of n8n use the `@` syntax to specify the version. for example:\n\n```\nnpm install -g n8n@0.126.1\n```\n\nto install `next`:\n\n```\nnpm install -g n8n@next\n```\n\nafter the installation, start n8n by running:\n\n```\nn8n\n# or\nn8n start\n```\n\n### next steps\n\ntry out n8n using the [quickstarts](../../../try-it-out/).\n\n## updating\n\nto update your n8n instance to the `latest` version, run:\n\n```\nnpm update -g n8n\n```\n\nto install the `next` version:\n\n```\nnpm install -g n8n@next\n```\n\n## n8n with tunnel\n\ndanger\n\nuse this for local development and testing. it isn't safe to use it in production.\n\ndevelopment tooling\n\nthe tunnel feature is a convenience tool for local development. the underlying implementation may change between n8n versions.\n\nto use webhooks for trigger nodes of external services like github, n8n has to be reachable from the web. n8n provides a tunnel service using [cloudflared](https://github.com/cloudflare/cloudflared) that redirects requests from the web to your local n8n instance. docker must be installed for the tunnel to work.\n\nthere are two ways to use the tunnel, depending on how you run n8n:\n\ndocker required\n\nthe tunnel uses cloudflared, which runs as a docker container. make sure [docker](https://docs.docker.com/get-docker/) is installed on your machine, even when running n8n via npm.\n\nfor npm installations, use the **services only** approach. start cloudflared as a standalone service, then run n8n locally:\n\n```\n# terminal 1: start the cloudflared tunnel service\npnpm --filter n8n-containers services --services cloudflared\n\n# terminal 2: start n8n locally\npnpm dev\n```\n\nthe `services` command starts cloudflared, fetches the public tunnel url, and writes a `.env` file to `packages/cli/bin/.env` with `webhook_url` and `n8n_proxy_hops=1`. n8n picks up this `.env` automatically on startup.\n\nclean up when done:\n\n```\npnpm --filter n8n-containers services:clean\n```\n\nfor the full stack approach (n8n and cloudflared both in containers), refer to the [docker tunnel setup](../docker/#n8n-with-tunnel).\n\n## reverting an upgrade\n\ninstall the older version that you want to go back to.\n\nif the upgrade involved a database migration:\n\n1. check the feature documentation and release notes to see if there are any manual changes you need to make.\n1. run `n8n db:revert` on your current version to roll back the database. if you want to revert more than one database migration, you need to repeat this process.\n\n## windows troubleshooting\n\nif you are experiencing issues running n8n on windows, make sure your node.js environment is correctly set up. follow microsoft's guide to [install nodejs on windows](https://learn.microsoft.com/en-us/windows/dev-environment/javascript/nodejs-on-windows).\n npm or terminal 1: start the cloudflared tunnel service terminal 2: start n8n locally",
|
|
17073
17072
|
"importantTerms": [
|
|
17074
17073
|
"install",
|
|
17075
17074
|
"tunnel",
|
|
@@ -17208,7 +17207,7 @@
|
|
|
17208
17207
|
"nodeName": null,
|
|
17209
17208
|
"nodeType": null,
|
|
17210
17209
|
"content": {
|
|
17211
|
-
"markdown": "# Hosting n8n on Amazon Web Services\n\nThis hosting guide shows you how to self-host n8n with Amazon Web Services (AWS). It uses n8n with Postgres as a database backend using Kubernetes to manage the necessary resources and reverse proxy.\n\n## Hosting options\n\nAWS offers several ways suitable for hosting n8n, including EC2 (virtual machines), and EKS (containers running with Kubernetes).\n\nThis guide uses [EKS](https://aws.amazon.com/eks/) as the hosting option. Using Kubernetes requires some additional complexity and configuration, but is the best method for scaling n8n as demand changes.\n\n## Prerequisites\n\nThe steps in this guide use a mix of the AWS UI and [the eksctl CLI tool for EKS](https://eksctl.io).\n\nWhile not mentioned in the documentation for eksctl, you also need to [install the AWS CLI tool](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html), and [configure authentication of the tool](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html).\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
17210
|
+
"markdown": "# Hosting n8n on Amazon Web Services\n\nThis hosting guide shows you how to self-host n8n with Amazon Web Services (AWS). It uses n8n with Postgres as a database backend using Kubernetes to manage the necessary resources and reverse proxy.\n\n## Hosting options\n\nAWS offers several ways suitable for hosting n8n, including EC2 (virtual machines), and EKS (containers running with Kubernetes).\n\nThis guide uses [EKS](https://aws.amazon.com/eks/) as the hosting option. Using Kubernetes requires some additional complexity and configuration, but is the best method for scaling n8n as demand changes.\n\n## Prerequisites\n\nThe steps in this guide use a mix of the AWS UI and [the eksctl CLI tool for EKS](https://eksctl.io).\n\nWhile not mentioned in the documentation for eksctl, you also need to [install the AWS CLI tool](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html), and [configure authentication of the tool](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html).\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## Create a cluster\n\nUse the eksctl tool to create a cluster specifying a name and a region with the following command:\n\n```\neksctl create cluster --name n8n --region <your-aws-region>\n```\n\nThis can take a while to create the cluster.\n\nOnce the cluster is created, eksctl automatically sets the kubectl context to the cluster.\n\n## Clone configuration repository\n\nKubernetes and n8n require a series of configuration files. You can clone these from [this repository](https://github.com/n8n-io/n8n-hosting). The following steps tell you what each file does, and what settings you need to change.\n\nClone the repository with the following command:\n\n```\ngit clone https://github.com/n8n-io/n8n-hosting.git\n```\n\nAnd change directory:\n\n```\ncd n8n-hosting/kubernetes\n```\n\n## Configure Postgres\n\nFor larger scale n8n deployments, Postgres provides a more robust database backend than SQLite.\n\n### Configure volume for persistent storage\n\nTo maintain data between pod restarts, the Postgres deployment needs a persistent volume. The default AWS storage class, [gp3](https://docs.aws.amazon.com/ebs/latest/userguide/general-purpose.html#gp3-ebs-volume-type), is suitable for this purpose. This is defined in the `postgres-claim0-persistentvolumeclaim.yaml` manifest.\n\n```\n…\nspec:\n storageClassName: gp3\n accessModes:\n - ReadWriteOnce\n…\n```\n\n### Postgres environment variables\n\nPostgres needs some environment variables set to pass to the application running in the containers.\n\nThe example `postgres-secret.yaml` file contains placeholders you need to replace with values of your own for user details and the database to use.\n\nPostgreSQL uses a root user (`POSTGRES_USER`) for setup and administration, but it’s best practice to create a separate non-root user (`POSTGRES_NON_ROOT_USER`) for n8n. The root user has full control, while n8n only needs the non-root user permissions to run. Configuring both improves security and helps prevent accidental changes to the database system.\n\nThe `postgres-deployment.yaml` manifest then uses the values from this manifest file to send to the application pods.\n\n## Configure n8n\n\n### Create a volume for file storage\n\nWhile not essential for running n8n, using persistent volumes helps maintain files uploaded while using n8n and if you want to persist [manual n8n encryption keys](../../../configuration/environment-variables/deployment/) between restarts, which saves a file containing the key into file storage during startup.\n\nThe `n8n-claim0-persistentvolumeclaim.yaml` manifest creates this, and the n8n Deployment mounts that claim in the `volumes` section of the `n8n-deployment.yaml` manifest.\n\n```\n…\nvolumes:\n - name: n8n-claim0\n persistentVolumeClaim:\n claimName: n8n-claim0\n…\n```\n\n### Pod resources\n\n[Kubernetes](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) lets you specify the minimum resources application containers need and the limits they can run to. The example YAML files cloned above contain the following in the `resources` section of the `n8n-deployment.yaml` file:\n\n```\n…\nresources:\n requests:\n memory: \"250Mi\"\n limits:\n memory: \"500Mi\"\n…\n```\n\nThis defines a minimum of 250mb per container, a maximum of 500mb, and lets Kubernetes handle CPU. You can change these values to match your own needs. As a guide, here are the resources values for the n8n cloud offerings:\n\n- **Start**: 320mb RAM, 10 millicore CPU burstable\n- **Pro (10k executions)**: 640mb RAM, 20 millicore CPU burstable\n- **Pro (50k executions)**: 1280mb RAM, 80 millicore CPU burstable\n\n### Optional: Environment variables\n\nYou can configure n8n settings and behaviors using environment variables.\n\nCreate an `n8n-secret.yaml` file. Refer to [Environment variables](../../../configuration/environment-variables/) for n8n environment variables details.\n\n## Deployments\n\nThe two deployment manifests (`n8n-deployment.yaml` and `postgres-deployment.yaml`) define the n8n and Postgres applications to Kubernetes.\n\nThe manifests define the following:\n\n- Send the environment variables defined to each application pod\n- Define the container image to use\n- Set resource consumption limits\n- The `volumes` defined earlier and `volumeMounts` to define the path in the container to mount volumes.\n- Scaling and restart policies. The example manifests define one instance of each pod. You should change this to meet your needs.\n\n## Services\n\nThe two service manifests (`postgres-service.yaml` and `n8n-service.yaml`) expose the services to the outside world using the Kubernetes load balancer using ports 5432 and 5678 respectively by default.\n\n## Send to Kubernetes cluster\n\nSend all the manifests to the cluster by running the following command in the `n8n-kubernetes-hosting` directory:\n\n```\nkubectl apply -f .\n```\n\nNamespace error\n\nYou may see an error message about not finding an \"n8n\" namespace as that resources isn't ready yet. You can run the same command again, or apply the namespace manifest first with the following command:\n\n```\nkubectl apply -f namespace.yaml\n```\n\n## Set up DNS\n\nn8n typically operates on a subdomain. Create a DNS record with your provider for the subdomain and point it to a static address of the instance.\n\nTo find the address of the n8n service running on the instance:\n\n1. Open the **Clusters** section of the **Amazon Elastic Kubernetes Service** page in the AWS console.\n1. Select the name of the cluster to open its configuration page.\n1. Select the **Resources** tab, then **Service and networking** > **Services**.\n1. Select the **n8n** service and copy the **Load balancer URLs** value. Use this value suffixed with the n8n service port (5678) for DNS.\n\nUse HTTP\n\nThis guide uses HTTP connections for the services it defines, for example in `n8n-deployment.yaml`. However, if you click the **Load balancer URLs** value, EKS takes you to an \"HTTPS\" URL which results in an error. To solve this, when you open the n8n subdomain, make sure to use HTTP.\n\n## Delete resources\n\nIf you need to delete the setup, you can remove the resources created by the manifests with the following command:\n\n```\nkubectl delete -f .\n```\n\n## Next steps\n\n- Learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- Or explore using n8n: try the [Quickstarts](../../../../try-it-out/).\n",
|
|
17212
17211
|
"excerpt": "# Hosting n8n on Amazon Web Services This hosting guide shows you how to self-host n8n with Amazon Web Services (AWS). It uses n8n with Postgres as a database backend using Kubernetes to manage the necessary resources and reverse proxy. ## Hosting options AWS offers several ways suitable for hosting n8n, including EC2 (virtual machines), and EKS (containers running with Kubernetes). This guide uses [EKS](https://aws.amazon.com/eks/) as the hosting option. Using Kubernetes requires some addit...",
|
|
17213
17212
|
"sections": [
|
|
17214
17213
|
{
|
|
@@ -17256,7 +17255,7 @@
|
|
|
17256
17255
|
"relatedPages": []
|
|
17257
17256
|
},
|
|
17258
17257
|
"searchIndex": {
|
|
17259
|
-
"fullText": "amazon web services # hosting n8n on amazon web services\n\nthis hosting guide shows you how to self-host n8n with amazon web services (aws). it uses n8n with postgres as a database backend using kubernetes to manage the necessary resources and reverse proxy.\n\n## hosting options\n\naws offers several ways suitable for hosting n8n, including ec2 (virtual machines), and eks (containers running with kubernetes).\n\nthis guide uses [eks](https://aws.amazon.com/eks/) as the hosting option. using kubernetes requires some additional complexity and configuration, but is the best method for scaling n8n as demand changes.\n\n## prerequisites\n\nthe steps in this guide use a mix of the aws ui and [the eksctl cli tool for eks](https://eksctl.io).\n\nwhile not mentioned in the documentation for eksctl, you also need to [install the aws cli tool](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html), and [configure authentication of the tool](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html).\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.
|
|
17258
|
+
"fullText": "amazon web services # hosting n8n on amazon web services\n\nthis hosting guide shows you how to self-host n8n with amazon web services (aws). it uses n8n with postgres as a database backend using kubernetes to manage the necessary resources and reverse proxy.\n\n## hosting options\n\naws offers several ways suitable for hosting n8n, including ec2 (virtual machines), and eks (containers running with kubernetes).\n\nthis guide uses [eks](https://aws.amazon.com/eks/) as the hosting option. using kubernetes requires some additional complexity and configuration, but is the best method for scaling n8n as demand changes.\n\n## prerequisites\n\nthe steps in this guide use a mix of the aws ui and [the eksctl cli tool for eks](https://eksctl.io).\n\nwhile not mentioned in the documentation for eksctl, you also need to [install the aws cli tool](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html), and [configure authentication of the tool](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html).\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## create a cluster\n\nuse the eksctl tool to create a cluster specifying a name and a region with the following command:\n\n```\neksctl create cluster --name n8n --region <your-aws-region>\n```\n\nthis can take a while to create the cluster.\n\nonce the cluster is created, eksctl automatically sets the kubectl context to the cluster.\n\n## clone configuration repository\n\nkubernetes and n8n require a series of configuration files. you can clone these from [this repository](https://github.com/n8n-io/n8n-hosting). the following steps tell you what each file does, and what settings you need to change.\n\nclone the repository with the following command:\n\n```\ngit clone https://github.com/n8n-io/n8n-hosting.git\n```\n\nand change directory:\n\n```\ncd n8n-hosting/kubernetes\n```\n\n## configure postgres\n\nfor larger scale n8n deployments, postgres provides a more robust database backend than sqlite.\n\n### configure volume for persistent storage\n\nto maintain data between pod restarts, the postgres deployment needs a persistent volume. the default aws storage class, [gp3](https://docs.aws.amazon.com/ebs/latest/userguide/general-purpose.html#gp3-ebs-volume-type), is suitable for this purpose. this is defined in the `postgres-claim0-persistentvolumeclaim.yaml` manifest.\n\n```\n…\nspec:\n storageclassname: gp3\n accessmodes:\n - readwriteonce\n…\n```\n\n### postgres environment variables\n\npostgres needs some environment variables set to pass to the application running in the containers.\n\nthe example `postgres-secret.yaml` file contains placeholders you need to replace with values of your own for user details and the database to use.\n\npostgresql uses a root user (`postgres_user`) for setup and administration, but it’s best practice to create a separate non-root user (`postgres_non_root_user`) for n8n. the root user has full control, while n8n only needs the non-root user permissions to run. configuring both improves security and helps prevent accidental changes to the database system.\n\nthe `postgres-deployment.yaml` manifest then uses the values from this manifest file to send to the application pods.\n\n## configure n8n\n\n### create a volume for file storage\n\nwhile not essential for running n8n, using persistent volumes helps maintain files uploaded while using n8n and if you want to persist [manual n8n encryption keys](../../../configuration/environment-variables/deployment/) between restarts, which saves a file containing the key into file storage during startup.\n\nthe `n8n-claim0-persistentvolumeclaim.yaml` manifest creates this, and the n8n deployment mounts that claim in the `volumes` section of the `n8n-deployment.yaml` manifest.\n\n```\n…\nvolumes:\n - name: n8n-claim0\n persistentvolumeclaim:\n claimname: n8n-claim0\n…\n```\n\n### pod resources\n\n[kubernetes](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) lets you specify the minimum resources application containers need and the limits they can run to. the example yaml files cloned above contain the following in the `resources` section of the `n8n-deployment.yaml` file:\n\n```\n…\nresources:\n requests:\n memory: \"250mi\"\n limits:\n memory: \"500mi\"\n…\n```\n\nthis defines a minimum of 250mb per container, a maximum of 500mb, and lets kubernetes handle cpu. you can change these values to match your own needs. as a guide, here are the resources values for the n8n cloud offerings:\n\n- **start**: 320mb ram, 10 millicore cpu burstable\n- **pro (10k executions)**: 640mb ram, 20 millicore cpu burstable\n- **pro (50k executions)**: 1280mb ram, 80 millicore cpu burstable\n\n### optional: environment variables\n\nyou can configure n8n settings and behaviors using environment variables.\n\ncreate an `n8n-secret.yaml` file. refer to [environment variables](../../../configuration/environment-variables/) for n8n environment variables details.\n\n## deployments\n\nthe two deployment manifests (`n8n-deployment.yaml` and `postgres-deployment.yaml`) define the n8n and postgres applications to kubernetes.\n\nthe manifests define the following:\n\n- send the environment variables defined to each application pod\n- define the container image to use\n- set resource consumption limits\n- the `volumes` defined earlier and `volumemounts` to define the path in the container to mount volumes.\n- scaling and restart policies. the example manifests define one instance of each pod. you should change this to meet your needs.\n\n## services\n\nthe two service manifests (`postgres-service.yaml` and `n8n-service.yaml`) expose the services to the outside world using the kubernetes load balancer using ports 5432 and 5678 respectively by default.\n\n## send to kubernetes cluster\n\nsend all the manifests to the cluster by running the following command in the `n8n-kubernetes-hosting` directory:\n\n```\nkubectl apply -f .\n```\n\nnamespace error\n\nyou may see an error message about not finding an \"n8n\" namespace as that resources isn't ready yet. you can run the same command again, or apply the namespace manifest first with the following command:\n\n```\nkubectl apply -f namespace.yaml\n```\n\n## set up dns\n\nn8n typically operates on a subdomain. create a dns record with your provider for the subdomain and point it to a static address of the instance.\n\nto find the address of the n8n service running on the instance:\n\n1. open the **clusters** section of the **amazon elastic kubernetes service** page in the aws console.\n1. select the name of the cluster to open its configuration page.\n1. select the **resources** tab, then **service and networking** > **services**.\n1. select the **n8n** service and copy the **load balancer urls** value. use this value suffixed with the n8n service port (5678) for dns.\n\nuse http\n\nthis guide uses http connections for the services it defines, for example in `n8n-deployment.yaml`. however, if you click the **load balancer urls** value, eks takes you to an \"https\" url which results in an error. to solve this, when you open the n8n subdomain, make sure to use http.\n\n## delete resources\n\nif you need to delete the setup, you can remove the resources created by the manifests with the following command:\n\n```\nkubectl delete -f .\n```\n\n## next steps\n\n- learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- or explore using n8n: try the [quickstarts](../../../../try-it-out/).\n hosting n8n on amazon web services",
|
|
17260
17259
|
"importantTerms": [
|
|
17261
17260
|
"this",
|
|
17262
17261
|
"yaml",
|
|
@@ -17321,7 +17320,7 @@
|
|
|
17321
17320
|
"nodeName": null,
|
|
17322
17321
|
"nodeType": null,
|
|
17323
17322
|
"content": {
|
|
17324
|
-
"markdown": "# Hosting n8n on Azure\n\nThis hosting guide shows you how to self-host n8n on Azure. It uses n8n with Postgres as a database backend using Kubernetes to manage the necessary resources and reverse proxy.\n\n## Prerequisites\n\nYou need [The Azure command line tool](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli)\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
17323
|
+
"markdown": "# Hosting n8n on Azure\n\nThis hosting guide shows you how to self-host n8n on Azure. It uses n8n with Postgres as a database backend using Kubernetes to manage the necessary resources and reverse proxy.\n\n## Prerequisites\n\nYou need [The Azure command line tool](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli)\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## Hosting options\n\nAzure offers several ways suitable for hosting n8n, including Azure Container Instances (optimized for running containers), Linux Virtual Machines, and Azure Kubernetes Service (containers running with Kubernetes).\n\nThis guide uses the Azure Kubernetes Service (AKS) as the hosting option. Using Kubernetes requires some additional complexity and configuration, but is the best method for scaling n8n as demand changes.\n\nThe steps in this guide use a mix of the Azure UI and command line tool, but you can use either to accomplish most tasks.\n\n## Open the Azure Kubernetes Service\n\nFrom [the Azure portal](https://portal.azure.com/) select **Kubernetes services**.\n\n## Create a cluster\n\nFrom the Kubernetes services page, select **Create** > **Create a Kubernetes cluster**.\n\nYou can select any of the configuration options that suit your needs, then select **Create** when done.\n\n## Set Kubectl context\n\nThe remainder of the steps in this guide require you to set the Azure instance as the Kubectl context. You can find the connection details for a cluster instance by opening its details page and then the **Connect** button. The resulting code snippets shows the steps to paste and run into a terminal to change your local Kubernetes settings to use the new cluster.\n\n## Clone configuration repository\n\nKubernetes and n8n require a series of configuration files. You can clone these from [this repository](https://github.com/n8n-io/n8n-hosting). The following steps tell you which file configures what and what you need to change.\n\nClone the repository with the following command:\n\n```\ngit clone https://github.com/n8n-io/n8n-hosting.git\n```\n\nAnd change directory:\n\n```\ncd n8n-hosting/kubernetes\n```\n\n## Configure Postgres\n\nFor larger scale n8n deployments, Postgres provides a more robust database backend than SQLite.\n\n### Configure volume for persistent storage\n\nTo maintain data between pod restarts, the Postgres deployment needs a persistent volume. The default storage class is suitable for this purpose and is defined in the `postgres-claim0-persistentvolumeclaim.yaml` manifest.\n\nSpecialized storage classes\n\nIf you have specialised or higher requirements for storage classes, [read more on the options Azure offers in the documentation](https://learn.microsoft.com/en-us/azure/aks/concepts-storage#storage-classes).\n\n### Postgres environment variables\n\nPostgres needs some environment variables set to pass to the application running in the containers.\n\nThe example `postgres-secret.yaml` file contains placeholders you need to replace with your own values. Postgres will use these details when creating the database..\n\nThe `postgres-deployment.yaml` manifest then uses the values from this manifest file to send to the application pods.\n\n## Configure n8n\n\n### Create a volume for file storage\n\nWhile not essential for running n8n, using persistent volumes is required for:\n\n- Using nodes that interact with files, such as the binary data node.\n- If you want to persist [manual n8n encryption keys](../../../configuration/environment-variables/deployment/) between restarts. This saves a file containing the key into file storage during startup.\n\nThe `n8n-claim0-persistentvolumeclaim.yaml` manifest creates this, and the n8n Deployment mounts that claim in the `volumes` section of the `n8n-deployment.yaml` manifest.\n\n```\n…\nvolumes:\n - name: n8n-claim0\n persistentVolumeClaim:\n claimName: n8n-claim0\n…\n```\n\n### Pod resources\n\n[Kubernetes lets you](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) optionally specify the minimum resources application containers need and the limits they can run to. The example YAML files cloned above contain the following in the `resources` section of the `n8n-deployment.yaml` file:\n\n```\n…\nresources:\n requests:\n memory: \"250Mi\"\n limits:\n memory: \"500Mi\"\n…\n```\n\nThis defines a minimum of 250mb per container, a maximum of 500mb, and lets Kubernetes handle CPU. You can change these values to match your own needs. As a guide, here are the resources values for the n8n cloud offerings:\n\n- **Start**: 320mb RAM, 10 millicore CPU burstable\n- **Pro (10k executions)**: 640mb RAM, 20 millicore CPU burstable\n- **Pro (50k executions)**: 1280mb RAM, 80 millicore CPU burstable\n\n### Optional: Environment variables\n\nYou can configure n8n settings and behaviors using environment variables.\n\nCreate an `n8n-secret.yaml` file. Refer to [Environment variables](../../../configuration/environment-variables/) for n8n environment variables details.\n\n## Deployments\n\nThe two deployment manifests (`n8n-deployment.yaml` and `postgres-deployment.yaml`) define the n8n and Postgres applications to Kubernetes.\n\nThe manifests define the following:\n\n- Send the environment variables defined to each application pod\n- Define the container image to use\n- Set resource consumption limits with the `resources` object\n- The `volumes` defined earlier and `volumeMounts` to define the path in the container to mount volumes.\n- Scaling and restart policies. The example manifests define one instance of each pod. You should change this to meet your needs.\n\n## Services\n\nThe two service manifests (`postgres-service.yaml` and `n8n-service.yaml`) expose the services to the outside world using the Kubernetes load balancer using ports 5432 and 5678 respectively.\n\n## Send to Kubernetes cluster\n\nSend all the manifests to the cluster with the following command:\n\n```\nkubectl apply -f .\n```\n\nNamespace error\n\nYou may see an error message about not finding an \"n8n\" namespace as that resources isn't ready yet. You can run the same command again, or apply the namespace manifest first with the following command:\n\n```\nkubectl apply -f namespace.yaml\n```\n\n## Set up DNS\n\nn8n typically operates on a subdomain. Create a DNS record with your provider for the subdomain and point it to the IP address of the n8n service. Find the IP address of the n8n service from the **Services & ingresses** menu item of the cluster you want to use under the **External IP** column. You need to add the n8n port, \"5678\" to the URL.\n\nStatic IP addresses with AKS\n\n[Read this tutorial](https://learn.microsoft.com/en-us/azure/aks/static-ip) for more details on how to use a static IP address with AKS.\n\n## Delete resources\n\nRemove the resources created by the manifests with the following command:\n\n```\nkubectl delete -f .\n```\n\n## Next steps\n\n- Learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- Or explore using n8n: try the [Quickstarts](../../../../try-it-out/).\n",
|
|
17325
17324
|
"excerpt": "# Hosting n8n on Azure This hosting guide shows you how to self-host n8n on Azure. It uses n8n with Postgres as a database backend using Kubernetes to manage the necessary resources and reverse proxy. ## Prerequisites You need [The Azure command line tool](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli) Self-hosting knowledge prerequisites Self-hosting n8n requires technical knowledge, including: - Setting up and configuring servers and containers - Managing application reso...",
|
|
17326
17325
|
"sections": [
|
|
17327
17326
|
{
|
|
@@ -17373,7 +17372,7 @@
|
|
|
17373
17372
|
"relatedPages": []
|
|
17374
17373
|
},
|
|
17375
17374
|
"searchIndex": {
|
|
17376
|
-
"fullText": "azure # hosting n8n on azure\n\nthis hosting guide shows you how to self-host n8n on azure. it uses n8n with postgres as a database backend using kubernetes to manage the necessary resources and reverse proxy.\n\n## prerequisites\n\nyou need [the azure command line tool](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli)\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.
|
|
17375
|
+
"fullText": "azure # hosting n8n on azure\n\nthis hosting guide shows you how to self-host n8n on azure. it uses n8n with postgres as a database backend using kubernetes to manage the necessary resources and reverse proxy.\n\n## prerequisites\n\nyou need [the azure command line tool](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli)\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## hosting options\n\nazure offers several ways suitable for hosting n8n, including azure container instances (optimized for running containers), linux virtual machines, and azure kubernetes service (containers running with kubernetes).\n\nthis guide uses the azure kubernetes service (aks) as the hosting option. using kubernetes requires some additional complexity and configuration, but is the best method for scaling n8n as demand changes.\n\nthe steps in this guide use a mix of the azure ui and command line tool, but you can use either to accomplish most tasks.\n\n## open the azure kubernetes service\n\nfrom [the azure portal](https://portal.azure.com/) select **kubernetes services**.\n\n## create a cluster\n\nfrom the kubernetes services page, select **create** > **create a kubernetes cluster**.\n\nyou can select any of the configuration options that suit your needs, then select **create** when done.\n\n## set kubectl context\n\nthe remainder of the steps in this guide require you to set the azure instance as the kubectl context. you can find the connection details for a cluster instance by opening its details page and then the **connect** button. the resulting code snippets shows the steps to paste and run into a terminal to change your local kubernetes settings to use the new cluster.\n\n## clone configuration repository\n\nkubernetes and n8n require a series of configuration files. you can clone these from [this repository](https://github.com/n8n-io/n8n-hosting). the following steps tell you which file configures what and what you need to change.\n\nclone the repository with the following command:\n\n```\ngit clone https://github.com/n8n-io/n8n-hosting.git\n```\n\nand change directory:\n\n```\ncd n8n-hosting/kubernetes\n```\n\n## configure postgres\n\nfor larger scale n8n deployments, postgres provides a more robust database backend than sqlite.\n\n### configure volume for persistent storage\n\nto maintain data between pod restarts, the postgres deployment needs a persistent volume. the default storage class is suitable for this purpose and is defined in the `postgres-claim0-persistentvolumeclaim.yaml` manifest.\n\nspecialized storage classes\n\nif you have specialised or higher requirements for storage classes, [read more on the options azure offers in the documentation](https://learn.microsoft.com/en-us/azure/aks/concepts-storage#storage-classes).\n\n### postgres environment variables\n\npostgres needs some environment variables set to pass to the application running in the containers.\n\nthe example `postgres-secret.yaml` file contains placeholders you need to replace with your own values. postgres will use these details when creating the database..\n\nthe `postgres-deployment.yaml` manifest then uses the values from this manifest file to send to the application pods.\n\n## configure n8n\n\n### create a volume for file storage\n\nwhile not essential for running n8n, using persistent volumes is required for:\n\n- using nodes that interact with files, such as the binary data node.\n- if you want to persist [manual n8n encryption keys](../../../configuration/environment-variables/deployment/) between restarts. this saves a file containing the key into file storage during startup.\n\nthe `n8n-claim0-persistentvolumeclaim.yaml` manifest creates this, and the n8n deployment mounts that claim in the `volumes` section of the `n8n-deployment.yaml` manifest.\n\n```\n…\nvolumes:\n - name: n8n-claim0\n persistentvolumeclaim:\n claimname: n8n-claim0\n…\n```\n\n### pod resources\n\n[kubernetes lets you](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) optionally specify the minimum resources application containers need and the limits they can run to. the example yaml files cloned above contain the following in the `resources` section of the `n8n-deployment.yaml` file:\n\n```\n…\nresources:\n requests:\n memory: \"250mi\"\n limits:\n memory: \"500mi\"\n…\n```\n\nthis defines a minimum of 250mb per container, a maximum of 500mb, and lets kubernetes handle cpu. you can change these values to match your own needs. as a guide, here are the resources values for the n8n cloud offerings:\n\n- **start**: 320mb ram, 10 millicore cpu burstable\n- **pro (10k executions)**: 640mb ram, 20 millicore cpu burstable\n- **pro (50k executions)**: 1280mb ram, 80 millicore cpu burstable\n\n### optional: environment variables\n\nyou can configure n8n settings and behaviors using environment variables.\n\ncreate an `n8n-secret.yaml` file. refer to [environment variables](../../../configuration/environment-variables/) for n8n environment variables details.\n\n## deployments\n\nthe two deployment manifests (`n8n-deployment.yaml` and `postgres-deployment.yaml`) define the n8n and postgres applications to kubernetes.\n\nthe manifests define the following:\n\n- send the environment variables defined to each application pod\n- define the container image to use\n- set resource consumption limits with the `resources` object\n- the `volumes` defined earlier and `volumemounts` to define the path in the container to mount volumes.\n- scaling and restart policies. the example manifests define one instance of each pod. you should change this to meet your needs.\n\n## services\n\nthe two service manifests (`postgres-service.yaml` and `n8n-service.yaml`) expose the services to the outside world using the kubernetes load balancer using ports 5432 and 5678 respectively.\n\n## send to kubernetes cluster\n\nsend all the manifests to the cluster with the following command:\n\n```\nkubectl apply -f .\n```\n\nnamespace error\n\nyou may see an error message about not finding an \"n8n\" namespace as that resources isn't ready yet. you can run the same command again, or apply the namespace manifest first with the following command:\n\n```\nkubectl apply -f namespace.yaml\n```\n\n## set up dns\n\nn8n typically operates on a subdomain. create a dns record with your provider for the subdomain and point it to the ip address of the n8n service. find the ip address of the n8n service from the **services & ingresses** menu item of the cluster you want to use under the **external ip** column. you need to add the n8n port, \"5678\" to the url.\n\nstatic ip addresses with aks\n\n[read this tutorial](https://learn.microsoft.com/en-us/azure/aks/static-ip) for more details on how to use a static ip address with aks.\n\n## delete resources\n\nremove the resources created by the manifests with the following command:\n\n```\nkubectl delete -f .\n```\n\n## next steps\n\n- learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- or explore using n8n: try the [quickstarts](../../../../try-it-out/).\n hosting n8n on azure",
|
|
17377
17376
|
"importantTerms": [
|
|
17378
17377
|
"azure",
|
|
17379
17378
|
"kubernetes",
|
|
@@ -17438,7 +17437,7 @@
|
|
|
17438
17437
|
"nodeName": null,
|
|
17439
17438
|
"nodeType": null,
|
|
17440
17439
|
"content": {
|
|
17441
|
-
"markdown": "# Hosting n8n on DigitalOcean\n\nThis hosting guide shows you how to self-host n8n on a DigitalOcean droplet. It uses:\n\n- [Caddy](https://caddyserver.com) (a reverse proxy) to allow access to the Droplet from the internet. Caddy will also automatically create and manage SSL / TLS certificates for your n8n instance.\n- [Docker Compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
17440
|
+
"markdown": "# Hosting n8n on DigitalOcean\n\nThis hosting guide shows you how to self-host n8n on a DigitalOcean droplet. It uses:\n\n- [Caddy](https://caddyserver.com) (a reverse proxy) to allow access to the Droplet from the internet. Caddy will also automatically create and manage SSL / TLS certificates for your n8n instance.\n- [Docker Compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## Create a Droplet\n\n1. [Log in](https://cloud.digitalocean.com/login) to DigitalOcean.\n1. Select the project to host the Droplet, or [create a new project](https://docs.digitalocean.com/products/projects/how-to/create/).\n1. In your project, select **Droplets** from the **Manage** menu.\n1. [Create a new Droplet](https://docs.digitalocean.com/products/droplets/how-to/create/) using the [Docker image](https://marketplace.digitalocean.com/apps/docker) available on the **Marketplace** tab.\n\nDroplet resources\n\nWhen creating the Droplet, DigitalOcean asks you to choose a plan. For most usage levels, a basic shared CPU plan is enough.\n\nSSH key or Password\n\nDigitalOcean lets you choose between SSH key and password-based authentication. SSH keys are considered more secure.\n\n## Log in to your Droplet and create new user\n\nThe rest of this guide requires you to log in to the Droplet using a terminal with SSH. Refer to [How to Connect to Droplets with SSH](https://docs.digitalocean.com/products/droplets/how-to/connect-with-ssh/) for more information.\n\nYou should create a new user, to avoid working as the root user:\n\n1. Log in as root.\n\n1. Create a new user:\n\n ```\n adduser <username>\n ```\n\n1. Follow the prompts in the CLI to finish creating the user.\n\n1. Grant the new user administrative privileges:\n\n ```\n usermod -aG sudo <username>\n ```\n\n You can now run commands with superuser privileges by using `sudo` before the command.\n\n1. Follow the steps to set up SSH for the new user: [Add Public Key Authentication](https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-14-04#step-four-add-public-key-authentication-recommended).\n\n1. Log out of the droplet.\n\n1. Log in using SSH as the new user.\n\n## Clone configuration repository\n\nDocker Compose, n8n, and Caddy require a series of folders and configuration files. You can clone these from [this repository](https://github.com/n8n-io/n8n-docker-caddy) into the home folder of the logged-in user on your Droplet. The following steps will tell you which file to change and what changes to make.\n\nClone the repository with the following command:\n\n```\ngit clone https://github.com/n8n-io/n8n-docker-caddy.git\n```\n\nAnd change directory to the root of the repository you cloned:\n\n```\ncd n8n-docker-caddy\n```\n\n## Default folders and files\n\nThe host operating system (the DigitalOcean Droplet) copies the two folders you created to Docker containers to make them available to Docker. The two folders are:\n\n- `caddy_config`: Holds the Caddy configuration files.\n- `local_files`: A folder for files you upload or add using n8n.\n\n### Create Docker volumes\n\nTo persist the Caddy cache between restarts and speed up start times, create [a Docker volume](https://docs.docker.com/storage/volumes/) that Docker reuses between restarts:\n\n```\nsudo docker volume create caddy_data\n```\n\nCreate a Docker volume for the n8n data:\n\n```\nsudo docker volume create n8n_data\n```\n\n## Set up DNS\n\nn8n typically operates on a subdomain. Create a DNS record with your provider for the subdomain and point it to the IP address of the Droplet. The exact steps for this depend on your DNS provider, but typically you need to create a new \"A\" record for the n8n subdomain. DigitalOcean provide [An Introduction to DNS Terminology, Components, and Concepts](https://www.digitalocean.com/community/tutorials/an-introduction-to-dns-terminology-components-and-concepts).\n\n## Open ports\n\nn8n runs as a web application, so the Droplet needs to allow incoming access to traffic on port 80 for non-secure traffic, and port 443 for secure traffic.\n\nOpen the following ports in the Droplet's firewall by running the following two commands:\n\n```\nsudo ufw allow 80\nsudo ufw allow 443\n```\n\n## Configure n8n\n\nn8n needs some environment variables set to pass to the application running in the Docker container. The example `.env` file contains placeholders you need to replace with values of your own.\n\nOpen the file with the following command:\n\n```\nnano .env\n```\n\nThe file contains inline comments to help you know what to change.\n\nRefer to [Environment variables](../../../configuration/environment-variables/) for n8n environment variables details.\n\n## The Docker Compose file\n\nThe Docker Compose file (`docker-compose.yml`) defines the services the application needs, in this case Caddy and n8n.\n\n- The Caddy service definition defines the ports it uses and the local volumes to copy to the containers.\n- The n8n service definition defines the ports it uses, the environment variables n8n needs to run (some defined in the `.env` file), and the volumes it needs to copy to the containers.\n\nThe Docker Compose file uses the environment variables set in the `.env` file, so you shouldn't need to change it's content, but to take a look, run the following command:\n\n```\nnano docker-compose.yml\n```\n\n## Configure Caddy\n\nCaddy needs to know which domains it should serve, and which port to expose to the outside world. Edit the `Caddyfile` file in the `caddy_config` folder.\n\n```\nnano caddy_config/Caddyfile\n```\n\nChange the placeholder domain to yours. If you followed the steps to name the subdomain n8n, your full domain is similar to `n8n.example.com`. The `n8n` in the `reverse_proxy` setting tells Caddy to use the service definition defined in the `docker-compose.yml` file:\n\n```\nn8n.<domain>.<suffix> {\n reverse_proxy n8n:5678 {\n flush_interval -1\n }\n}\n```\n\nIf you were to use `automate.example.com`, your `Caddyfile` may look something like:\n\n```\nautomate.example.com {\n reverse_proxy n8n:5678 {\n flush_interval -1\n }\n}\n```\n\n## Start Docker Compose\n\nStart n8n and Caddy with the following command:\n\n```\nsudo docker compose up -d\n```\n\nThis may take a few minutes.\n\n## Test your setup\n\nIn your browser, open the URL formed of the subdomain and domain name defined earlier. Enter the user name and password defined earlier, and you should be able to access n8n.\n\n## Stop n8n and Caddy\n\nYou can stop n8n and Caddy with the following command:\n\n```\nsudo docker compose stop\n```\n\n## Updating\n\nIf you run n8n using a Docker Compose file, follow these steps to update n8n:\n\n```\n# Navigate to the directory containing your docker compose file\ncd </path/to/your/compose/file/directory>\n\n# Pull latest version\ndocker compose pull\n\n# Stop and remove older version\ndocker compose down\n\n# Start the container\ndocker compose up -d\n```\n\n## Next steps\n\n- Learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- Or explore using n8n: try the [Quickstarts](../../../../try-it-out/).\n",
|
|
17442
17441
|
"excerpt": "# Hosting n8n on DigitalOcean This hosting guide shows you how to self-host n8n on a DigitalOcean droplet. It uses: - [Caddy](https://caddyserver.com) (a reverse proxy) to allow access to the Droplet from the internet. Caddy will also automatically create and manage SSL / TLS certificates for your n8n instance. - [Docker Compose](https://docs.docker.com/compose/) to create and define the application components and how they work together. Self-hosting knowledge prerequisites Self-hosting n8n...",
|
|
17443
17442
|
"sections": [
|
|
17444
17443
|
{
|
|
@@ -17518,7 +17517,7 @@
|
|
|
17518
17517
|
"relatedPages": []
|
|
17519
17518
|
},
|
|
17520
17519
|
"searchIndex": {
|
|
17521
|
-
"fullText": "digital ocean # hosting n8n on digitalocean\n\nthis hosting guide shows you how to self-host n8n on a digitalocean droplet. it uses:\n\n- [caddy](https://caddyserver.com) (a reverse proxy) to allow access to the droplet from the internet. caddy will also automatically create and manage ssl / tls certificates for your n8n instance.\n- [docker compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.
|
|
17520
|
+
"fullText": "digital ocean # hosting n8n on digitalocean\n\nthis hosting guide shows you how to self-host n8n on a digitalocean droplet. it uses:\n\n- [caddy](https://caddyserver.com) (a reverse proxy) to allow access to the droplet from the internet. caddy will also automatically create and manage ssl / tls certificates for your n8n instance.\n- [docker compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## create a droplet\n\n1. [log in](https://cloud.digitalocean.com/login) to digitalocean.\n1. select the project to host the droplet, or [create a new project](https://docs.digitalocean.com/products/projects/how-to/create/).\n1. in your project, select **droplets** from the **manage** menu.\n1. [create a new droplet](https://docs.digitalocean.com/products/droplets/how-to/create/) using the [docker image](https://marketplace.digitalocean.com/apps/docker) available on the **marketplace** tab.\n\ndroplet resources\n\nwhen creating the droplet, digitalocean asks you to choose a plan. for most usage levels, a basic shared cpu plan is enough.\n\nssh key or password\n\ndigitalocean lets you choose between ssh key and password-based authentication. ssh keys are considered more secure.\n\n## log in to your droplet and create new user\n\nthe rest of this guide requires you to log in to the droplet using a terminal with ssh. refer to [how to connect to droplets with ssh](https://docs.digitalocean.com/products/droplets/how-to/connect-with-ssh/) for more information.\n\nyou should create a new user, to avoid working as the root user:\n\n1. log in as root.\n\n1. create a new user:\n\n ```\n adduser <username>\n ```\n\n1. follow the prompts in the cli to finish creating the user.\n\n1. grant the new user administrative privileges:\n\n ```\n usermod -ag sudo <username>\n ```\n\n you can now run commands with superuser privileges by using `sudo` before the command.\n\n1. follow the steps to set up ssh for the new user: [add public key authentication](https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-14-04#step-four-add-public-key-authentication-recommended).\n\n1. log out of the droplet.\n\n1. log in using ssh as the new user.\n\n## clone configuration repository\n\ndocker compose, n8n, and caddy require a series of folders and configuration files. you can clone these from [this repository](https://github.com/n8n-io/n8n-docker-caddy) into the home folder of the logged-in user on your droplet. the following steps will tell you which file to change and what changes to make.\n\nclone the repository with the following command:\n\n```\ngit clone https://github.com/n8n-io/n8n-docker-caddy.git\n```\n\nand change directory to the root of the repository you cloned:\n\n```\ncd n8n-docker-caddy\n```\n\n## default folders and files\n\nthe host operating system (the digitalocean droplet) copies the two folders you created to docker containers to make them available to docker. the two folders are:\n\n- `caddy_config`: holds the caddy configuration files.\n- `local_files`: a folder for files you upload or add using n8n.\n\n### create docker volumes\n\nto persist the caddy cache between restarts and speed up start times, create [a docker volume](https://docs.docker.com/storage/volumes/) that docker reuses between restarts:\n\n```\nsudo docker volume create caddy_data\n```\n\ncreate a docker volume for the n8n data:\n\n```\nsudo docker volume create n8n_data\n```\n\n## set up dns\n\nn8n typically operates on a subdomain. create a dns record with your provider for the subdomain and point it to the ip address of the droplet. the exact steps for this depend on your dns provider, but typically you need to create a new \"a\" record for the n8n subdomain. digitalocean provide [an introduction to dns terminology, components, and concepts](https://www.digitalocean.com/community/tutorials/an-introduction-to-dns-terminology-components-and-concepts).\n\n## open ports\n\nn8n runs as a web application, so the droplet needs to allow incoming access to traffic on port 80 for non-secure traffic, and port 443 for secure traffic.\n\nopen the following ports in the droplet's firewall by running the following two commands:\n\n```\nsudo ufw allow 80\nsudo ufw allow 443\n```\n\n## configure n8n\n\nn8n needs some environment variables set to pass to the application running in the docker container. the example `.env` file contains placeholders you need to replace with values of your own.\n\nopen the file with the following command:\n\n```\nnano .env\n```\n\nthe file contains inline comments to help you know what to change.\n\nrefer to [environment variables](../../../configuration/environment-variables/) for n8n environment variables details.\n\n## the docker compose file\n\nthe docker compose file (`docker-compose.yml`) defines the services the application needs, in this case caddy and n8n.\n\n- the caddy service definition defines the ports it uses and the local volumes to copy to the containers.\n- the n8n service definition defines the ports it uses, the environment variables n8n needs to run (some defined in the `.env` file), and the volumes it needs to copy to the containers.\n\nthe docker compose file uses the environment variables set in the `.env` file, so you shouldn't need to change it's content, but to take a look, run the following command:\n\n```\nnano docker-compose.yml\n```\n\n## configure caddy\n\ncaddy needs to know which domains it should serve, and which port to expose to the outside world. edit the `caddyfile` file in the `caddy_config` folder.\n\n```\nnano caddy_config/caddyfile\n```\n\nchange the placeholder domain to yours. if you followed the steps to name the subdomain n8n, your full domain is similar to `n8n.example.com`. the `n8n` in the `reverse_proxy` setting tells caddy to use the service definition defined in the `docker-compose.yml` file:\n\n```\nn8n.<domain>.<suffix> {\n reverse_proxy n8n:5678 {\n flush_interval -1\n }\n}\n```\n\nif you were to use `automate.example.com`, your `caddyfile` may look something like:\n\n```\nautomate.example.com {\n reverse_proxy n8n:5678 {\n flush_interval -1\n }\n}\n```\n\n## start docker compose\n\nstart n8n and caddy with the following command:\n\n```\nsudo docker compose up -d\n```\n\nthis may take a few minutes.\n\n## test your setup\n\nin your browser, open the url formed of the subdomain and domain name defined earlier. enter the user name and password defined earlier, and you should be able to access n8n.\n\n## stop n8n and caddy\n\nyou can stop n8n and caddy with the following command:\n\n```\nsudo docker compose stop\n```\n\n## updating\n\nif you run n8n using a docker compose file, follow these steps to update n8n:\n\n```\n# navigate to the directory containing your docker compose file\ncd </path/to/your/compose/file/directory>\n\n# pull latest version\ndocker compose pull\n\n# stop and remove older version\ndocker compose down\n\n# start the container\ndocker compose up -d\n```\n\n## next steps\n\n- learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- or explore using n8n: try the [quickstarts](../../../../try-it-out/).\n hosting n8n on digitalocean navigate to the directory containing your docker compose file pull latest version stop and remove older version start the container",
|
|
17522
17521
|
"importantTerms": [
|
|
17523
17522
|
"docker",
|
|
17524
17523
|
"compose",
|
|
@@ -17583,7 +17582,7 @@
|
|
|
17583
17582
|
"nodeName": null,
|
|
17584
17583
|
"nodeType": null,
|
|
17585
17584
|
"content": {
|
|
17586
|
-
"markdown": "# Docker-Compose\n\nThese instructions cover how to run n8n on a Linux server using Docker Compose.\n\nIf you have already installed Docker and Docker-Compose, then you can start with [step 3](#3-dns-setup).\n\nYou can find Docker Compose configurations for various architectures in the [n8n-hosting repository](https://github.com/n8n-io/n8n-hosting).\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
17585
|
+
"markdown": "# Docker-Compose\n\nThese instructions cover how to run n8n on a Linux server using Docker Compose.\n\nIf you have already installed Docker and Docker-Compose, then you can start with [step 3](#3-dns-setup).\n\nYou can find Docker Compose configurations for various architectures in the [n8n-hosting repository](https://github.com/n8n-io/n8n-hosting).\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## 1. Install Docker and Docker Compose\n\nThe way that you install Docker and Docker Compose depends on your Linux distribution. You can find specific instructions for each component in the links below:\n\n- [Docker Engine](https://docs.docker.com/engine/install/)\n- [Docker Compose](https://docs.docker.com/compose/install/linux/)\n\nAfter following the installation instructions, verify that Docker and Docker Compose are available by typing:\n\n```\ndocker --version\ndocker compose version\n```\n\n## 2. Optional: Non-root user access\n\nYou can optionally grant access to run Docker without the `sudo` command.\n\nTo grant access to the user that you're currently logged in with (assuming they have `sudo` access), run:\n\n```\nsudo usermod -aG docker ${USER}\n# Register the `docker` group membership with current session without changing your primary group\nexec sg docker newgrp\n```\n\nTo grant access to a different user, type the following, substituting `<USER_TO_RUN_DOCKER>` with the appropriate username:\n\n```\nsudo usermod -aG docker <USER_TO_RUN_DOCKER>\n```\n\nYou will need to run `exec sg docker newgrp` from any of that user's existing sessions for it to access the new group permissions.\n\nYou can verify that your current session recognizes the `docker` group by typing:\n\n```\ngroups\n```\n\n## 3. DNS setup\n\nTo host n8n online or on a network, create a dedicated subdomain pointed at your server.\n\nAdd an A record to route the subdomain accordingly:\n\n| Record type | Name | Destination |\n| ----------- | --------------------------------- | -------------------------- |\n| A | `n8n` (or your desired subdomain) | `<your_server_IP_address>` |\n\n## 4. Create an `.env` file\n\nCreate a project directory to store your n8n environment configuration and Docker Compose files and navigate inside:\n\n```\nmkdir n8n-compose\ncd n8n-compose\n```\n\nInside the `n8n-compose` directory, create an `.env` file to customize your n8n instance's details. Change it to match your own information:\n\n```\n# DOMAIN_NAME and SUBDOMAIN together determine where n8n will be reachable from\n# The top level domain to serve from\nDOMAIN_NAME=example.com\n\n# The subdomain to serve from\nSUBDOMAIN=n8n\n\n# The above example serve n8n at: https://n8n.example.com\n\n# Optional timezone to set which gets used by Cron and other scheduling nodes\n# New York is the default value if not set\nGENERIC_TIMEZONE=Europe/Berlin\n\n# The email address to use for the TLS/SSL certificate creation\nSSL_EMAIL=user@example.com\n```\n\n## 5. Create local files directory\n\nInside your project directory, create a directory called `local-files` for sharing files between the n8n instance and the host system (for example, using the [Read/Write Files from Disk node](../../../../integrations/builtin/core-nodes/n8n-nodes-base.readwritefile/)):\n\n```\nmkdir local-files\n```\n\nThe Docker Compose file below can automatically create this directory, but doing it manually ensures that it's created with the right ownership and permissions.\n\n## 6. Create Docker Compose file\n\nCreate a `compose.yaml` file. Paste the following in the file:\n\n```\nservices:\n traefik:\n image: \"traefik\"\n restart: always\n command:\n - \"--api.insecure=true\"\n - \"--providers.docker=true\"\n - \"--providers.docker.exposedbydefault=false\"\n - \"--entrypoints.web.address=:80\"\n - \"--entrypoints.web.http.redirections.entryPoint.to=websecure\"\n - \"--entrypoints.web.http.redirections.entrypoint.scheme=https\"\n - \"--entrypoints.websecure.address=:443\"\n - \"--certificatesresolvers.mytlschallenge.acme.tlschallenge=true\"\n - \"--certificatesresolvers.mytlschallenge.acme.email=${SSL_EMAIL}\"\n - \"--certificatesresolvers.mytlschallenge.acme.storage=/letsencrypt/acme.json\"\n ports:\n - \"80:80\"\n - \"443:443\"\n volumes:\n - traefik_data:/letsencrypt\n - /var/run/docker.sock:/var/run/docker.sock:ro\n\n n8n:\n image: docker.n8n.io/n8nio/n8n\n restart: always\n ports:\n - \"127.0.0.1:5678:5678\"\n labels:\n - traefik.enable=true\n - traefik.http.routers.n8n.rule=Host(`${SUBDOMAIN}.${DOMAIN_NAME}`)\n - traefik.http.routers.n8n.tls=true\n - traefik.http.routers.n8n.entrypoints=web,websecure\n - traefik.http.routers.n8n.tls.certresolver=mytlschallenge\n - traefik.http.middlewares.n8n.headers.SSLRedirect=true\n - traefik.http.middlewares.n8n.headers.STSSeconds=315360000\n - traefik.http.middlewares.n8n.headers.browserXSSFilter=true\n - traefik.http.middlewares.n8n.headers.contentTypeNosniff=true\n - traefik.http.middlewares.n8n.headers.forceSTSHeader=true\n - traefik.http.middlewares.n8n.headers.SSLHost=${DOMAIN_NAME}\n - traefik.http.middlewares.n8n.headers.STSIncludeSubdomains=true\n - traefik.http.middlewares.n8n.headers.STSPreload=true\n - traefik.http.routers.n8n.middlewares=n8n@docker\n environment:\n - N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true\n - N8N_HOST=${SUBDOMAIN}.${DOMAIN_NAME}\n - N8N_PORT=5678\n - N8N_PROTOCOL=https \n - NODE_ENV=production\n - WEBHOOK_URL=https://${SUBDOMAIN}.${DOMAIN_NAME}/\n - GENERIC_TIMEZONE=${GENERIC_TIMEZONE}\n - TZ=${GENERIC_TIMEZONE}\n volumes:\n - n8n_data:/home/node/.n8n\n - ./local-files:/files\n\nvolumes:\n n8n_data:\n traefik_data:\n```\n\nThe Docker Compose file above configures two containers: one for n8n, and one to run [traefik](https://github.com/traefik/traefik), an application proxy to manage TLS/SSL certificates and handle routing.\n\nIt also creates and mounts two [Docker Volumes](https://docs.docker.com/engine/storage/volumes/) and mounts the `local-files` directory you created earlier:\n\n| Name | Type | Container mount | Description |\n| --------------- | ----------------------------------------------------------- | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------- |\n| `n8n_data` | [Volume](https://docs.docker.com/engine/storage/volumes/) | `/home/node/.n8n` | Where n8n saves its SQLite database file and encryption key. |\n| `traefik_data` | [Volume](https://docs.docker.com/engine/storage/volumes/) | `/letsencrypt` | Where traefik saves TLS/SSL certificate data. |\n| `./local-files` | [Bind](https://docs.docker.com/engine/storage/bind-mounts/) | `/files` | A local directory shared between the n8n instance and host. In n8n, use the `/files` path to read from and write to this directory. |\n\n## 7. Start Docker Compose\n\nStart n8n by typing:\n\n```\nsudo docker compose up -d\n```\n\nTo stop the containers, type:\n\n```\nsudo docker compose stop\n```\n\n## 8. Done\n\nYou can now reach n8n using the subdomain + domain combination you defined in your `.env` file configuration. The above example would result in `https://n8n.example.com`.\n\nn8n is only accessible using secure HTTPS, not over plain HTTP.\n\nIf you have trouble reaching your instance, check your server's firewall settings and your DNS configuration.\n\n## Next steps\n\n- Learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- Or explore using n8n: try the [Quickstarts](../../../../try-it-out/).\n",
|
|
17587
17586
|
"excerpt": "# Docker-Compose These instructions cover how to run n8n on a Linux server using Docker Compose. If you have already installed Docker and Docker-Compose, then you can start with [step 3](#3-dns-setup). You can find Docker Compose configurations for various architectures in the [n8n-hosting repository](https://github.com/n8n-io/n8n-hosting). Self-hosting knowledge prerequisites Self-hosting n8n requires technical knowledge, including: - Setting up and configuring servers and containers - Ma...",
|
|
17588
17587
|
"sections": [
|
|
17589
17588
|
{
|
|
@@ -17705,7 +17704,7 @@
|
|
|
17705
17704
|
"relatedPages": []
|
|
17706
17705
|
},
|
|
17707
17706
|
"searchIndex": {
|
|
17708
|
-
"fullText": "docker compose # docker-compose\n\nthese instructions cover how to run n8n on a linux server using docker compose.\n\nif you have already installed docker and docker-compose, then you can start with [step 3](#3-dns-setup).\n\nyou can find docker compose configurations for various architectures in the [n8n-hosting repository](https://github.com/n8n-io/n8n-hosting).\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.
|
|
17707
|
+
"fullText": "docker compose # docker-compose\n\nthese instructions cover how to run n8n on a linux server using docker compose.\n\nif you have already installed docker and docker-compose, then you can start with [step 3](#3-dns-setup).\n\nyou can find docker compose configurations for various architectures in the [n8n-hosting repository](https://github.com/n8n-io/n8n-hosting).\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## 1. install docker and docker compose\n\nthe way that you install docker and docker compose depends on your linux distribution. you can find specific instructions for each component in the links below:\n\n- [docker engine](https://docs.docker.com/engine/install/)\n- [docker compose](https://docs.docker.com/compose/install/linux/)\n\nafter following the installation instructions, verify that docker and docker compose are available by typing:\n\n```\ndocker --version\ndocker compose version\n```\n\n## 2. optional: non-root user access\n\nyou can optionally grant access to run docker without the `sudo` command.\n\nto grant access to the user that you're currently logged in with (assuming they have `sudo` access), run:\n\n```\nsudo usermod -ag docker ${user}\n# register the `docker` group membership with current session without changing your primary group\nexec sg docker newgrp\n```\n\nto grant access to a different user, type the following, substituting `<user_to_run_docker>` with the appropriate username:\n\n```\nsudo usermod -ag docker <user_to_run_docker>\n```\n\nyou will need to run `exec sg docker newgrp` from any of that user's existing sessions for it to access the new group permissions.\n\nyou can verify that your current session recognizes the `docker` group by typing:\n\n```\ngroups\n```\n\n## 3. dns setup\n\nto host n8n online or on a network, create a dedicated subdomain pointed at your server.\n\nadd an a record to route the subdomain accordingly:\n\n| record type | name | destination |\n| ----------- | --------------------------------- | -------------------------- |\n| a | `n8n` (or your desired subdomain) | `<your_server_ip_address>` |\n\n## 4. create an `.env` file\n\ncreate a project directory to store your n8n environment configuration and docker compose files and navigate inside:\n\n```\nmkdir n8n-compose\ncd n8n-compose\n```\n\ninside the `n8n-compose` directory, create an `.env` file to customize your n8n instance's details. change it to match your own information:\n\n```\n# domain_name and subdomain together determine where n8n will be reachable from\n# the top level domain to serve from\ndomain_name=example.com\n\n# the subdomain to serve from\nsubdomain=n8n\n\n# the above example serve n8n at: https://n8n.example.com\n\n# optional timezone to set which gets used by cron and other scheduling nodes\n# new york is the default value if not set\ngeneric_timezone=europe/berlin\n\n# the email address to use for the tls/ssl certificate creation\nssl_email=user@example.com\n```\n\n## 5. create local files directory\n\ninside your project directory, create a directory called `local-files` for sharing files between the n8n instance and the host system (for example, using the [read/write files from disk node](../../../../integrations/builtin/core-nodes/n8n-nodes-base.readwritefile/)):\n\n```\nmkdir local-files\n```\n\nthe docker compose file below can automatically create this directory, but doing it manually ensures that it's created with the right ownership and permissions.\n\n## 6. create docker compose file\n\ncreate a `compose.yaml` file. paste the following in the file:\n\n```\nservices:\n traefik:\n image: \"traefik\"\n restart: always\n command:\n - \"--api.insecure=true\"\n - \"--providers.docker=true\"\n - \"--providers.docker.exposedbydefault=false\"\n - \"--entrypoints.web.address=:80\"\n - \"--entrypoints.web.http.redirections.entrypoint.to=websecure\"\n - \"--entrypoints.web.http.redirections.entrypoint.scheme=https\"\n - \"--entrypoints.websecure.address=:443\"\n - \"--certificatesresolvers.mytlschallenge.acme.tlschallenge=true\"\n - \"--certificatesresolvers.mytlschallenge.acme.email=${ssl_email}\"\n - \"--certificatesresolvers.mytlschallenge.acme.storage=/letsencrypt/acme.json\"\n ports:\n - \"80:80\"\n - \"443:443\"\n volumes:\n - traefik_data:/letsencrypt\n - /var/run/docker.sock:/var/run/docker.sock:ro\n\n n8n:\n image: docker.n8n.io/n8nio/n8n\n restart: always\n ports:\n - \"127.0.0.1:5678:5678\"\n labels:\n - traefik.enable=true\n - traefik.http.routers.n8n.rule=host(`${subdomain}.${domain_name}`)\n - traefik.http.routers.n8n.tls=true\n - traefik.http.routers.n8n.entrypoints=web,websecure\n - traefik.http.routers.n8n.tls.certresolver=mytlschallenge\n - traefik.http.middlewares.n8n.headers.sslredirect=true\n - traefik.http.middlewares.n8n.headers.stsseconds=315360000\n - traefik.http.middlewares.n8n.headers.browserxssfilter=true\n - traefik.http.middlewares.n8n.headers.contenttypenosniff=true\n - traefik.http.middlewares.n8n.headers.forcestsheader=true\n - traefik.http.middlewares.n8n.headers.sslhost=${domain_name}\n - traefik.http.middlewares.n8n.headers.stsincludesubdomains=true\n - traefik.http.middlewares.n8n.headers.stspreload=true\n - traefik.http.routers.n8n.middlewares=n8n@docker\n environment:\n - n8n_enforce_settings_file_permissions=true\n - n8n_host=${subdomain}.${domain_name}\n - n8n_port=5678\n - n8n_protocol=https \n - node_env=production\n - webhook_url=https://${subdomain}.${domain_name}/\n - generic_timezone=${generic_timezone}\n - tz=${generic_timezone}\n volumes:\n - n8n_data:/home/node/.n8n\n - ./local-files:/files\n\nvolumes:\n n8n_data:\n traefik_data:\n```\n\nthe docker compose file above configures two containers: one for n8n, and one to run [traefik](https://github.com/traefik/traefik), an application proxy to manage tls/ssl certificates and handle routing.\n\nit also creates and mounts two [docker volumes](https://docs.docker.com/engine/storage/volumes/) and mounts the `local-files` directory you created earlier:\n\n| name | type | container mount | description |\n| --------------- | ----------------------------------------------------------- | ----------------- | ----------------------------------------------------------------------------------------------------------------------------------- |\n| `n8n_data` | [volume](https://docs.docker.com/engine/storage/volumes/) | `/home/node/.n8n` | where n8n saves its sqlite database file and encryption key. |\n| `traefik_data` | [volume](https://docs.docker.com/engine/storage/volumes/) | `/letsencrypt` | where traefik saves tls/ssl certificate data. |\n| `./local-files` | [bind](https://docs.docker.com/engine/storage/bind-mounts/) | `/files` | a local directory shared between the n8n instance and host. in n8n, use the `/files` path to read from and write to this directory. |\n\n## 7. start docker compose\n\nstart n8n by typing:\n\n```\nsudo docker compose up -d\n```\n\nto stop the containers, type:\n\n```\nsudo docker compose stop\n```\n\n## 8. done\n\nyou can now reach n8n using the subdomain + domain combination you defined in your `.env` file configuration. the above example would result in `https://n8n.example.com`.\n\nn8n is only accessible using secure https, not over plain http.\n\nif you have trouble reaching your instance, check your server's firewall settings and your dns configuration.\n\n## next steps\n\n- learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- or explore using n8n: try the [quickstarts](../../../../try-it-out/).\n docker-compose register the `docker` group membership with current session without changing your primary group domain_name and subdomain together determine where n8n will be reachable from the top level domain to serve from the subdomain to serve from the above example serve n8n at: https://n8n.example.com optional timezone to set which gets used by cron and other scheduling nodes new york is the default value if not set the email address to use for the tls/ssl certificate creation",
|
|
17709
17708
|
"importantTerms": [
|
|
17710
17709
|
"docker",
|
|
17711
17710
|
"compose",
|
|
@@ -17770,7 +17769,7 @@
|
|
|
17770
17769
|
"nodeName": null,
|
|
17771
17770
|
"nodeType": null,
|
|
17772
17771
|
"content": {
|
|
17773
|
-
"markdown": "# Hosting n8n on Google Cloud Run\n\nThis hosting guide shows you how to self-host n8n on Google Cloud Run, a serverless container runtime. If you're just getting started with n8n and don't need a production-grade deployment, you can go with the \"easy mode\" option below for deployment. Otherwise, if you intend to use this n8n deployment at-scale, refer to the \"durable mode\" instructions further down.\n\nYou can also enable access via OAuth to Google Workspace, such as Gmail and Drive, to use these services as n8n workflow tools. Instructions for granting n8n access to these services are at the end of this documentation.\n\nIf you want to deploy to Google Kubernetes Engine (GKE) instead, you can refer to [these instructions](../google-kubernetes-engine/).\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.4 Current `beta`: 2.22.0\n\n## Before you begin: get a Google Cloud project\n\nIf you have not yet created a Google Cloud project, [do this first](https://developers.google.com/workspace/guides/create-project) (and ensure you have billing enabled on the project; even if your Cloud Run service runs for free you must have billing activated to deploy). Otherwise, navigate to the project where you want to deploy n8n.\n\n## Easy mode\n\nThis is the fastest way to deploy n8n on Cloud Run. For this deployment, n8n's data is in-memory so this is only recommended for demo purposes. **Anytime this Cloud Run service scales to zero or is redeployed, the n8n data will be lost.** Refer to the durable mode instructions below if you need a production-grade deployment.\n\nIf you have not yet created a Google Cloud project, [do this first](https://developers.google.com/workspace/guides/create-project) (and ensure you have billing enabled on the project; even if your Cloud Run service will run for free you must have billing enabled to activated to deploy). Otherwise, navigate to the project where you want to deploy n8n.\n\nOpen the Cloud Shell Terminal (on the Google Cloud console, either type \"G\" then \"S\" or click on the terminal icon on the upper right).\n\nOnce your session is open, you may need to run this command first to login (and follow the steps it asks you to complete):\n\n```\ngcloud auth login\n```\n\nYou can also explicitly enable the Cloud Run API (even if you don't do this, it will ask if you want this enabled when you deploy):\n\n```\ngcloud services enable run.googleapis.com\n```\n\nRequired: Custom health check endpoint\n\nGoogle Cloud Run reserves `/healthz` for its own health checks. Since n8n uses this path by default, it can conflict and cause connection issues in the workflow canvas. To fix this, set the `N8N_ENDPOINT_HEALTH` environment variable to a custom path (included in the deployment commands below).\n\nTo deploy n8n:\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n \\\n --region=us-west1 \\\n --allow-unauthenticated \\\n --port=5678 \\\n --no-cpu-throttling \\\n --memory=2Gi \\\n --set-env-vars=\"N8N_ENDPOINT_HEALTH=health\"\n```\n\n(you can specify whichever region you prefer, instead of \"us-west1\")\n\nOnce the deployment finishes, open another tab to navigate to the Service URL. n8n may still be loading and you will see a \"n8n is starting up. Please wait\" message, but shortly thereafter you should see the n8n login screen.\n\nOptional: If you want to keep this n8n service running for as long as possible to avoid data loss, you can also set manual scale to 1 to prevent it from autoscaling to 0.\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n \\\n --region=us-west1 \\\n --allow-unauthenticated \\\n --port=5678 \\\n --no-cpu-throttling \\\n --memory=2Gi \\\n --scaling=1 \\\n --set-env-vars=\"N8N_ENDPOINT_HEALTH=health\"\n```\n\nThis does not prevent data loss completely, such as whenever the Cloud Run service is re-deployed/updated. If you want truly persistent data, you should refer to the instructions below for how to attach a database.\n\n## Durable mode\n\nThe following instructions are intended for a more durable, production-grade deployment of n8n on Cloud Run. It includes resources such as a database for persistance and secret manager for sensitive data.\n\nIf you want to deploy the following setup via Terraform, refer to this [example](https://github.com/ryanpei/n8n-hosting/tree/main/google-cloud-run) which deploys the same setup as the following (without the OAuth setup for Google Workspace tools).\n\n## Enable APIs and set env vars\n\nOpen the Cloud Shell Terminal (on the Google Cloud console, either type \"G\" then \"S\" or click on the terminal icon on the upper right) and run these commands in the terminal session:\n\n```\n## You may need to login first\ngcloud auth login\n\ngcloud services enable run.googleapis.com\ngcloud services enable sqladmin.googleapis.com\ngcloud services enable secretmanager.googleapis.com\n```\n\nYou'll also want to set some environment variables for the remainder of these instructions:\n\n```\nexport PROJECT_ID=your-project\nexport REGION=region-where-you-want-this-deployed\n```\n\n## Setup your Postgres database\n\nRun this command to create the Postgres DB instance (it will take a few minutes to complete; also ensure you update the root-password field with your own desired password):\n\n```\ngcloud sql instances create n8n-db \\\n --database-version=POSTGRES_13 \\\n --tier=db-f1-micro \\\n --region=$REGION \\\n --root-password=\"change-this-password\" \\\n --storage-size=10GB \\\n --availability-type=ZONAL \\\n --no-backup \\\n --storage-type=HDD\n```\n\nOnce complete, you can add the database that n8n will use:\n\n```\ngcloud sql databases create n8n --instance=n8n-db\n```\n\nCreate the DB user for n8n (change the password value, of course):\n\n```\ngcloud sql users create n8n-user \\\n --instance=n8n-db \\\n --password=\"change-this-password\"\n```\n\nYou can save the password you set for this n8n-user to a file for the next step of saving the password in Secret Manager. Be sure to delete this file later.\n\n## Store sensitive data in Secret Manager\n\nWhile not required, it's absolutely recommended to store your sensitive data in Secrets Manager.\n\nCreate a secret for the database password (replace \"/your/password/file\" with the file you created above for the n8n-user password):\n\n```\ngcloud secrets create n8n-db-password \\\n --data-file=/your/password/file \\\n --replication-policy=\"automatic\"\n```\n\nCreate an encryption key (you can use your own, this example generates a random one):\n\n```\nopenssl rand -base64 -out my-encryption-key 42\n```\n\nCreate a secret for this encryption key (replace \"my-encryption-key\" if you are supplying your own):\n\n```\ngcloud secrets create n8n-encryption-key \\\n --data-file=my-encryption-key \\\n --replication-policy=\"automatic\"\n```\n\nNow you can delete my-encryption-key and the database password files you created. These values are now securely stored in Secret Manager.\n\n## Create a service account for Cloud Run\n\nYou want this Cloud Run service to be restricted to access only the resources it needs. The following commands create the service account and adds the permissions necessary to access secrets and the database:\n\n```\ngcloud iam service-accounts create n8n-service-account \\\n --display-name=\"n8n Service Account\"\n\ngcloud secrets add-iam-policy-binding n8n-db-password \\\n --member=\"serviceAccount:n8n-service-account@$PROJECT_ID.iam.gserviceaccount.com\" \\\n --role=\"roles/secretmanager.secretAccessor\"\n\ngcloud secrets add-iam-policy-binding n8n-encryption-key \\\n --member=\"serviceAccount:n8n-service-account@$PROJECT_ID.iam.gserviceaccount.com\" \\\n --role=\"roles/secretmanager.secretAccessor\"\n\ngcloud projects add-iam-policy-binding $PROJECT_ID \\\n --member=\"serviceAccount:n8n-service-account@$PROJECT_ID.iam.gserviceaccount.com\" \\\n --role=\"roles/cloudsql.client\"\n```\n\n## Deploy the Cloud Run service\n\nNow you can deploy your n8n service:\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n:latest \\\n --command=\"/bin/sh\" \\\n --args=\"-c,sleep 5;n8n start\" \\\n --region=$REGION \\\n --allow-unauthenticated \\\n --port=5678 \\\n --memory=2Gi \\\n --no-cpu-throttling \\\n --set-env-vars=\"N8N_PORT=5678,N8N_PROTOCOL=https,N8N_ENDPOINT_HEALTH=health,DB_TYPE=postgresdb,DB_POSTGRESDB_DATABASE=n8n,DB_POSTGRESDB_USER=n8n-user,DB_POSTGRESDB_HOST=/cloudsql/$PROJECT_ID:$REGION:n8n-db,DB_POSTGRESDB_PORT=5432,DB_POSTGRESDB_SCHEMA=public,GENERIC_TIMEZONE=UTC,QUEUE_HEALTH_CHECK_ACTIVE=true\" \\\n --set-secrets=\"DB_POSTGRESDB_PASSWORD=n8n-db-password:latest,N8N_ENCRYPTION_KEY=n8n-encryption-key:latest\" \\\n --add-cloudsql-instances=$PROJECT_ID:$REGION:n8n-db \\\n --service-account=n8n-service-account@$PROJECT_ID.iam.gserviceaccount.com\n```\n\nOnce the deployment finishes, open another tab to navigate to the Service URL. You should see the n8n login screen.\n\n## Troubleshooting\n\nIf you see a \"Cannot GET /\" screen this usually indicates that n8n is still starting up. You can refresh the page and it should eventually load.\n\n## (Optional) Enabling Google Workspace services as n8n tools\n\nIf you want to use Google Workspace services (Gmail, Calendar, Drive, etc.) as tools in n8n, it's recommended to setup OAuth to access these services.\n\nFirst ensure the respective APIs you want are enabled:\n\n```\n## Enable whichever APIs you need\n## Note: If you want Sheets/Docs, it's not enough to just enable Drive; these services each have their own API\ngcloud services enable gmail.googleapis.com\ngcloud services enable drive.googleapis.com\ngcloud services enable sheets.googleapis.com\ngcloud services enable docs.googleapis.com\ngcloud services enable calendar-json.googleapis.com\n```\n\nRe-deploy n8n on Cloud Run with the necessary OAuth callback URLs as environment variables:\n\n```\nexport SERVICE_URL=\"your-n8n-service-URL\"\n## e.g. https://n8n-12345678.us-west1.run.app\n\ngcloud run services update n8n \\\n --region=$REGION \\\n --update-env-vars=\"N8N_HOST=$(echo $SERVICE_URL | sed 's/https:\\/\\///'),WEBHOOK_URL=$SERVICE_URL,N8N_EDITOR_BASE_URL=$SERVICE_URL\"\n```\n\nLastly, you must setup OAuth for these services. Visit `https://console.cloud.google.com/auth` and follow these steps:\n\n1. Click \"Get Started\" if this button shows (when you have not yet setup OAuth in this Cloud project).\n1. For \"App Information\", enter whichever \"App Name\" and \"User Support Email\" you prefer.\n1. For \"Audience\", select \"Internal\" if you intend to only enable access to your user(s) within this same Google Workspace. Otherwise, you can select \"External\".\n1. Enter \"Contact Information\".\n1. If you selected \"External\", then click \"Audience\" and add any test users you need to grant access.\n1. Click \"Clients\" > \"Create client\", select \"Web application\" for \"Application type\", enter your n8n service URL into \"Authorized JavaScript origins\", and \"/rest/oauth2-credential/callback\" into \"Authorized redirect URIs\" where your YOUR-N8N-URL is also the n8n service URL (e.g. `https://n8n-12345678.us-west1.run.app/rest/oauth2-credential/callback`). Make sure you download the created client's JSON file since it contains the client secret which you will not be able to see later in the Console.\n1. Click \"Data Access\" and add the scopes you want n8n to have access for (e.g. to access Google Sheets, you need `https://googleapis.com/auth/drive.file` and `https://googleapis.com/auth/spreadsheets`)\n1. Now you should be able to use these workspace services. You can test if it works by logging into n8n, add a Tool for the respective service and add its credentials using the information in the OAuth client JSON file from step 6.\n",
|
|
17772
|
+
"markdown": "# Hosting n8n on Google Cloud Run\n\nThis hosting guide shows you how to self-host n8n on Google Cloud Run, a serverless container runtime. If you're just getting started with n8n and don't need a production-grade deployment, you can go with the \"easy mode\" option below for deployment. Otherwise, if you intend to use this n8n deployment at-scale, refer to the \"durable mode\" instructions further down.\n\nYou can also enable access via OAuth to Google Workspace, such as Gmail and Drive, to use these services as n8n workflow tools. Instructions for granting n8n access to these services are at the end of this documentation.\n\nIf you want to deploy to Google Kubernetes Engine (GKE) instead, you can refer to [these instructions](../google-kubernetes-engine/).\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## Before you begin: get a Google Cloud project\n\nIf you have not yet created a Google Cloud project, [do this first](https://developers.google.com/workspace/guides/create-project) (and ensure you have billing enabled on the project; even if your Cloud Run service runs for free you must have billing activated to deploy). Otherwise, navigate to the project where you want to deploy n8n.\n\n## Easy mode\n\nThis is the fastest way to deploy n8n on Cloud Run. For this deployment, n8n's data is in-memory so this is only recommended for demo purposes. **Anytime this Cloud Run service scales to zero or is redeployed, the n8n data will be lost.** Refer to the durable mode instructions below if you need a production-grade deployment.\n\nIf you have not yet created a Google Cloud project, [do this first](https://developers.google.com/workspace/guides/create-project) (and ensure you have billing enabled on the project; even if your Cloud Run service will run for free you must have billing enabled to activated to deploy). Otherwise, navigate to the project where you want to deploy n8n.\n\nOpen the Cloud Shell Terminal (on the Google Cloud console, either type \"G\" then \"S\" or click on the terminal icon on the upper right).\n\nOnce your session is open, you may need to run this command first to login (and follow the steps it asks you to complete):\n\n```\ngcloud auth login\n```\n\nYou can also explicitly enable the Cloud Run API (even if you don't do this, it will ask if you want this enabled when you deploy):\n\n```\ngcloud services enable run.googleapis.com\n```\n\nRequired: Custom health check endpoint\n\nGoogle Cloud Run reserves `/healthz` for its own health checks. Since n8n uses this path by default, it can conflict and cause connection issues in the workflow canvas. To fix this, set the `N8N_ENDPOINT_HEALTH` environment variable to a custom path (included in the deployment commands below).\n\nTo deploy n8n:\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n \\\n --region=us-west1 \\\n --allow-unauthenticated \\\n --port=5678 \\\n --no-cpu-throttling \\\n --memory=2Gi \\\n --set-env-vars=\"N8N_ENDPOINT_HEALTH=health\"\n```\n\n(you can specify whichever region you prefer, instead of \"us-west1\")\n\nOnce the deployment finishes, open another tab to navigate to the Service URL. n8n may still be loading and you will see a \"n8n is starting up. Please wait\" message, but shortly thereafter you should see the n8n login screen.\n\nOptional: If you want to keep this n8n service running for as long as possible to avoid data loss, you can also set manual scale to 1 to prevent it from autoscaling to 0.\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n \\\n --region=us-west1 \\\n --allow-unauthenticated \\\n --port=5678 \\\n --no-cpu-throttling \\\n --memory=2Gi \\\n --scaling=1 \\\n --set-env-vars=\"N8N_ENDPOINT_HEALTH=health\"\n```\n\nThis does not prevent data loss completely, such as whenever the Cloud Run service is re-deployed/updated. If you want truly persistent data, you should refer to the instructions below for how to attach a database.\n\n## Durable mode\n\nThe following instructions are intended for a more durable, production-grade deployment of n8n on Cloud Run. It includes resources such as a database for persistance and secret manager for sensitive data.\n\nIf you want to deploy the following setup via Terraform, refer to this [example](https://github.com/ryanpei/n8n-hosting/tree/main/google-cloud-run) which deploys the same setup as the following (without the OAuth setup for Google Workspace tools).\n\n## Enable APIs and set env vars\n\nOpen the Cloud Shell Terminal (on the Google Cloud console, either type \"G\" then \"S\" or click on the terminal icon on the upper right) and run these commands in the terminal session:\n\n```\n## You may need to login first\ngcloud auth login\n\ngcloud services enable run.googleapis.com\ngcloud services enable sqladmin.googleapis.com\ngcloud services enable secretmanager.googleapis.com\n```\n\nYou'll also want to set some environment variables for the remainder of these instructions:\n\n```\nexport PROJECT_ID=your-project\nexport REGION=region-where-you-want-this-deployed\n```\n\n## Setup your Postgres database\n\nRun this command to create the Postgres DB instance (it will take a few minutes to complete; also ensure you update the root-password field with your own desired password):\n\n```\ngcloud sql instances create n8n-db \\\n --database-version=POSTGRES_13 \\\n --tier=db-f1-micro \\\n --region=$REGION \\\n --root-password=\"change-this-password\" \\\n --storage-size=10GB \\\n --availability-type=ZONAL \\\n --no-backup \\\n --storage-type=HDD\n```\n\nOnce complete, you can add the database that n8n will use:\n\n```\ngcloud sql databases create n8n --instance=n8n-db\n```\n\nCreate the DB user for n8n (change the password value, of course):\n\n```\ngcloud sql users create n8n-user \\\n --instance=n8n-db \\\n --password=\"change-this-password\"\n```\n\nYou can save the password you set for this n8n-user to a file for the next step of saving the password in Secret Manager. Be sure to delete this file later.\n\n## Store sensitive data in Secret Manager\n\nWhile not required, it's absolutely recommended to store your sensitive data in Secrets Manager.\n\nCreate a secret for the database password (replace \"/your/password/file\" with the file you created above for the n8n-user password):\n\n```\ngcloud secrets create n8n-db-password \\\n --data-file=/your/password/file \\\n --replication-policy=\"automatic\"\n```\n\nCreate an encryption key (you can use your own, this example generates a random one):\n\n```\nopenssl rand -base64 -out my-encryption-key 42\n```\n\nCreate a secret for this encryption key (replace \"my-encryption-key\" if you are supplying your own):\n\n```\ngcloud secrets create n8n-encryption-key \\\n --data-file=my-encryption-key \\\n --replication-policy=\"automatic\"\n```\n\nNow you can delete my-encryption-key and the database password files you created. These values are now securely stored in Secret Manager.\n\n## Create a service account for Cloud Run\n\nYou want this Cloud Run service to be restricted to access only the resources it needs. The following commands create the service account and adds the permissions necessary to access secrets and the database:\n\n```\ngcloud iam service-accounts create n8n-service-account \\\n --display-name=\"n8n Service Account\"\n\ngcloud secrets add-iam-policy-binding n8n-db-password \\\n --member=\"serviceAccount:n8n-service-account@$PROJECT_ID.iam.gserviceaccount.com\" \\\n --role=\"roles/secretmanager.secretAccessor\"\n\ngcloud secrets add-iam-policy-binding n8n-encryption-key \\\n --member=\"serviceAccount:n8n-service-account@$PROJECT_ID.iam.gserviceaccount.com\" \\\n --role=\"roles/secretmanager.secretAccessor\"\n\ngcloud projects add-iam-policy-binding $PROJECT_ID \\\n --member=\"serviceAccount:n8n-service-account@$PROJECT_ID.iam.gserviceaccount.com\" \\\n --role=\"roles/cloudsql.client\"\n```\n\n## Deploy the Cloud Run service\n\nNow you can deploy your n8n service:\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n:latest \\\n --command=\"/bin/sh\" \\\n --args=\"-c,sleep 5;n8n start\" \\\n --region=$REGION \\\n --allow-unauthenticated \\\n --port=5678 \\\n --memory=2Gi \\\n --no-cpu-throttling \\\n --set-env-vars=\"N8N_PORT=5678,N8N_PROTOCOL=https,N8N_ENDPOINT_HEALTH=health,DB_TYPE=postgresdb,DB_POSTGRESDB_DATABASE=n8n,DB_POSTGRESDB_USER=n8n-user,DB_POSTGRESDB_HOST=/cloudsql/$PROJECT_ID:$REGION:n8n-db,DB_POSTGRESDB_PORT=5432,DB_POSTGRESDB_SCHEMA=public,GENERIC_TIMEZONE=UTC,QUEUE_HEALTH_CHECK_ACTIVE=true\" \\\n --set-secrets=\"DB_POSTGRESDB_PASSWORD=n8n-db-password:latest,N8N_ENCRYPTION_KEY=n8n-encryption-key:latest\" \\\n --add-cloudsql-instances=$PROJECT_ID:$REGION:n8n-db \\\n --service-account=n8n-service-account@$PROJECT_ID.iam.gserviceaccount.com\n```\n\nOnce the deployment finishes, open another tab to navigate to the Service URL. You should see the n8n login screen.\n\n## Troubleshooting\n\nIf you see a \"Cannot GET /\" screen this usually indicates that n8n is still starting up. You can refresh the page and it should eventually load.\n\n## (Optional) Enabling Google Workspace services as n8n tools\n\nIf you want to use Google Workspace services (Gmail, Calendar, Drive, etc.) as tools in n8n, it's recommended to setup OAuth to access these services.\n\nFirst ensure the respective APIs you want are enabled:\n\n```\n## Enable whichever APIs you need\n## Note: If you want Sheets/Docs, it's not enough to just enable Drive; these services each have their own API\ngcloud services enable gmail.googleapis.com\ngcloud services enable drive.googleapis.com\ngcloud services enable sheets.googleapis.com\ngcloud services enable docs.googleapis.com\ngcloud services enable calendar-json.googleapis.com\n```\n\nRe-deploy n8n on Cloud Run with the necessary OAuth callback URLs as environment variables:\n\n```\nexport SERVICE_URL=\"your-n8n-service-URL\"\n## e.g. https://n8n-12345678.us-west1.run.app\n\ngcloud run services update n8n \\\n --region=$REGION \\\n --update-env-vars=\"N8N_HOST=$(echo $SERVICE_URL | sed 's/https:\\/\\///'),WEBHOOK_URL=$SERVICE_URL,N8N_EDITOR_BASE_URL=$SERVICE_URL\"\n```\n\nLastly, you must setup OAuth for these services. Visit `https://console.cloud.google.com/auth` and follow these steps:\n\n1. Click \"Get Started\" if this button shows (when you have not yet setup OAuth in this Cloud project).\n1. For \"App Information\", enter whichever \"App Name\" and \"User Support Email\" you prefer.\n1. For \"Audience\", select \"Internal\" if you intend to only enable access to your user(s) within this same Google Workspace. Otherwise, you can select \"External\".\n1. Enter \"Contact Information\".\n1. If you selected \"External\", then click \"Audience\" and add any test users you need to grant access.\n1. Click \"Clients\" > \"Create client\", select \"Web application\" for \"Application type\", enter your n8n service URL into \"Authorized JavaScript origins\", and \"/rest/oauth2-credential/callback\" into \"Authorized redirect URIs\" where your YOUR-N8N-URL is also the n8n service URL (e.g. `https://n8n-12345678.us-west1.run.app/rest/oauth2-credential/callback`). Make sure you download the created client's JSON file since it contains the client secret which you will not be able to see later in the Console.\n1. Click \"Data Access\" and add the scopes you want n8n to have access for (e.g. to access Google Sheets, you need `https://googleapis.com/auth/drive.file` and `https://googleapis.com/auth/spreadsheets`)\n1. Now you should be able to use these workspace services. You can test if it works by logging into n8n, add a Tool for the respective service and add its credentials using the information in the OAuth client JSON file from step 6.\n",
|
|
17774
17773
|
"excerpt": "# Hosting n8n on Google Cloud Run This hosting guide shows you how to self-host n8n on Google Cloud Run, a serverless container runtime. If you're just getting started with n8n and don't need a production-grade deployment, you can go with the \"easy mode\" option below for deployment. Otherwise, if you intend to use this n8n deployment at-scale, refer to the \"durable mode\" instructions further down. You can also enable access via OAuth to Google Workspace, such as Gmail and Drive, to use these s...",
|
|
17775
17774
|
"sections": [
|
|
17776
17775
|
{
|
|
@@ -17841,7 +17840,7 @@
|
|
|
17841
17840
|
"relatedPages": []
|
|
17842
17841
|
},
|
|
17843
17842
|
"searchIndex": {
|
|
17844
|
-
"fullText": "google cloud run # hosting n8n on google cloud run\n\nthis hosting guide shows you how to self-host n8n on google cloud run, a serverless container runtime. if you're just getting started with n8n and don't need a production-grade deployment, you can go with the \"easy mode\" option below for deployment. otherwise, if you intend to use this n8n deployment at-scale, refer to the \"durable mode\" instructions further down.\n\nyou can also enable access via oauth to google workspace, such as gmail and drive, to use these services as n8n workflow tools. instructions for granting n8n access to these services are at the end of this documentation.\n\nif you want to deploy to google kubernetes engine (gke) instead, you can refer to [these instructions](../google-kubernetes-engine/).\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.4 current `beta`: 2.22.0\n\n## before you begin: get a google cloud project\n\nif you have not yet created a google cloud project, [do this first](https://developers.google.com/workspace/guides/create-project) (and ensure you have billing enabled on the project; even if your cloud run service runs for free you must have billing activated to deploy). otherwise, navigate to the project where you want to deploy n8n.\n\n## easy mode\n\nthis is the fastest way to deploy n8n on cloud run. for this deployment, n8n's data is in-memory so this is only recommended for demo purposes. **anytime this cloud run service scales to zero or is redeployed, the n8n data will be lost.** refer to the durable mode instructions below if you need a production-grade deployment.\n\nif you have not yet created a google cloud project, [do this first](https://developers.google.com/workspace/guides/create-project) (and ensure you have billing enabled on the project; even if your cloud run service will run for free you must have billing enabled to activated to deploy). otherwise, navigate to the project where you want to deploy n8n.\n\nopen the cloud shell terminal (on the google cloud console, either type \"g\" then \"s\" or click on the terminal icon on the upper right).\n\nonce your session is open, you may need to run this command first to login (and follow the steps it asks you to complete):\n\n```\ngcloud auth login\n```\n\nyou can also explicitly enable the cloud run api (even if you don't do this, it will ask if you want this enabled when you deploy):\n\n```\ngcloud services enable run.googleapis.com\n```\n\nrequired: custom health check endpoint\n\ngoogle cloud run reserves `/healthz` for its own health checks. since n8n uses this path by default, it can conflict and cause connection issues in the workflow canvas. to fix this, set the `n8n_endpoint_health` environment variable to a custom path (included in the deployment commands below).\n\nto deploy n8n:\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n \\\n --region=us-west1 \\\n --allow-unauthenticated \\\n --port=5678 \\\n --no-cpu-throttling \\\n --memory=2gi \\\n --set-env-vars=\"n8n_endpoint_health=health\"\n```\n\n(you can specify whichever region you prefer, instead of \"us-west1\")\n\nonce the deployment finishes, open another tab to navigate to the service url. n8n may still be loading and you will see a \"n8n is starting up. please wait\" message, but shortly thereafter you should see the n8n login screen.\n\noptional: if you want to keep this n8n service running for as long as possible to avoid data loss, you can also set manual scale to 1 to prevent it from autoscaling to 0.\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n \\\n --region=us-west1 \\\n --allow-unauthenticated \\\n --port=5678 \\\n --no-cpu-throttling \\\n --memory=2gi \\\n --scaling=1 \\\n --set-env-vars=\"n8n_endpoint_health=health\"\n```\n\nthis does not prevent data loss completely, such as whenever the cloud run service is re-deployed/updated. if you want truly persistent data, you should refer to the instructions below for how to attach a database.\n\n## durable mode\n\nthe following instructions are intended for a more durable, production-grade deployment of n8n on cloud run. it includes resources such as a database for persistance and secret manager for sensitive data.\n\nif you want to deploy the following setup via terraform, refer to this [example](https://github.com/ryanpei/n8n-hosting/tree/main/google-cloud-run) which deploys the same setup as the following (without the oauth setup for google workspace tools).\n\n## enable apis and set env vars\n\nopen the cloud shell terminal (on the google cloud console, either type \"g\" then \"s\" or click on the terminal icon on the upper right) and run these commands in the terminal session:\n\n```\n## you may need to login first\ngcloud auth login\n\ngcloud services enable run.googleapis.com\ngcloud services enable sqladmin.googleapis.com\ngcloud services enable secretmanager.googleapis.com\n```\n\nyou'll also want to set some environment variables for the remainder of these instructions:\n\n```\nexport project_id=your-project\nexport region=region-where-you-want-this-deployed\n```\n\n## setup your postgres database\n\nrun this command to create the postgres db instance (it will take a few minutes to complete; also ensure you update the root-password field with your own desired password):\n\n```\ngcloud sql instances create n8n-db \\\n --database-version=postgres_13 \\\n --tier=db-f1-micro \\\n --region=$region \\\n --root-password=\"change-this-password\" \\\n --storage-size=10gb \\\n --availability-type=zonal \\\n --no-backup \\\n --storage-type=hdd\n```\n\nonce complete, you can add the database that n8n will use:\n\n```\ngcloud sql databases create n8n --instance=n8n-db\n```\n\ncreate the db user for n8n (change the password value, of course):\n\n```\ngcloud sql users create n8n-user \\\n --instance=n8n-db \\\n --password=\"change-this-password\"\n```\n\nyou can save the password you set for this n8n-user to a file for the next step of saving the password in secret manager. be sure to delete this file later.\n\n## store sensitive data in secret manager\n\nwhile not required, it's absolutely recommended to store your sensitive data in secrets manager.\n\ncreate a secret for the database password (replace \"/your/password/file\" with the file you created above for the n8n-user password):\n\n```\ngcloud secrets create n8n-db-password \\\n --data-file=/your/password/file \\\n --replication-policy=\"automatic\"\n```\n\ncreate an encryption key (you can use your own, this example generates a random one):\n\n```\nopenssl rand -base64 -out my-encryption-key 42\n```\n\ncreate a secret for this encryption key (replace \"my-encryption-key\" if you are supplying your own):\n\n```\ngcloud secrets create n8n-encryption-key \\\n --data-file=my-encryption-key \\\n --replication-policy=\"automatic\"\n```\n\nnow you can delete my-encryption-key and the database password files you created. these values are now securely stored in secret manager.\n\n## create a service account for cloud run\n\nyou want this cloud run service to be restricted to access only the resources it needs. the following commands create the service account and adds the permissions necessary to access secrets and the database:\n\n```\ngcloud iam service-accounts create n8n-service-account \\\n --display-name=\"n8n service account\"\n\ngcloud secrets add-iam-policy-binding n8n-db-password \\\n --member=\"serviceaccount:n8n-service-account@$project_id.iam.gserviceaccount.com\" \\\n --role=\"roles/secretmanager.secretaccessor\"\n\ngcloud secrets add-iam-policy-binding n8n-encryption-key \\\n --member=\"serviceaccount:n8n-service-account@$project_id.iam.gserviceaccount.com\" \\\n --role=\"roles/secretmanager.secretaccessor\"\n\ngcloud projects add-iam-policy-binding $project_id \\\n --member=\"serviceaccount:n8n-service-account@$project_id.iam.gserviceaccount.com\" \\\n --role=\"roles/cloudsql.client\"\n```\n\n## deploy the cloud run service\n\nnow you can deploy your n8n service:\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n:latest \\\n --command=\"/bin/sh\" \\\n --args=\"-c,sleep 5;n8n start\" \\\n --region=$region \\\n --allow-unauthenticated \\\n --port=5678 \\\n --memory=2gi \\\n --no-cpu-throttling \\\n --set-env-vars=\"n8n_port=5678,n8n_protocol=https,n8n_endpoint_health=health,db_type=postgresdb,db_postgresdb_database=n8n,db_postgresdb_user=n8n-user,db_postgresdb_host=/cloudsql/$project_id:$region:n8n-db,db_postgresdb_port=5432,db_postgresdb_schema=public,generic_timezone=utc,queue_health_check_active=true\" \\\n --set-secrets=\"db_postgresdb_password=n8n-db-password:latest,n8n_encryption_key=n8n-encryption-key:latest\" \\\n --add-cloudsql-instances=$project_id:$region:n8n-db \\\n --service-account=n8n-service-account@$project_id.iam.gserviceaccount.com\n```\n\nonce the deployment finishes, open another tab to navigate to the service url. you should see the n8n login screen.\n\n## troubleshooting\n\nif you see a \"cannot get /\" screen this usually indicates that n8n is still starting up. you can refresh the page and it should eventually load.\n\n## (optional) enabling google workspace services as n8n tools\n\nif you want to use google workspace services (gmail, calendar, drive, etc.) as tools in n8n, it's recommended to setup oauth to access these services.\n\nfirst ensure the respective apis you want are enabled:\n\n```\n## enable whichever apis you need\n## note: if you want sheets/docs, it's not enough to just enable drive; these services ea",
|
|
17843
|
+
"fullText": "google cloud run # hosting n8n on google cloud run\n\nthis hosting guide shows you how to self-host n8n on google cloud run, a serverless container runtime. if you're just getting started with n8n and don't need a production-grade deployment, you can go with the \"easy mode\" option below for deployment. otherwise, if you intend to use this n8n deployment at-scale, refer to the \"durable mode\" instructions further down.\n\nyou can also enable access via oauth to google workspace, such as gmail and drive, to use these services as n8n workflow tools. instructions for granting n8n access to these services are at the end of this documentation.\n\nif you want to deploy to google kubernetes engine (gke) instead, you can refer to [these instructions](../google-kubernetes-engine/).\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## before you begin: get a google cloud project\n\nif you have not yet created a google cloud project, [do this first](https://developers.google.com/workspace/guides/create-project) (and ensure you have billing enabled on the project; even if your cloud run service runs for free you must have billing activated to deploy). otherwise, navigate to the project where you want to deploy n8n.\n\n## easy mode\n\nthis is the fastest way to deploy n8n on cloud run. for this deployment, n8n's data is in-memory so this is only recommended for demo purposes. **anytime this cloud run service scales to zero or is redeployed, the n8n data will be lost.** refer to the durable mode instructions below if you need a production-grade deployment.\n\nif you have not yet created a google cloud project, [do this first](https://developers.google.com/workspace/guides/create-project) (and ensure you have billing enabled on the project; even if your cloud run service will run for free you must have billing enabled to activated to deploy). otherwise, navigate to the project where you want to deploy n8n.\n\nopen the cloud shell terminal (on the google cloud console, either type \"g\" then \"s\" or click on the terminal icon on the upper right).\n\nonce your session is open, you may need to run this command first to login (and follow the steps it asks you to complete):\n\n```\ngcloud auth login\n```\n\nyou can also explicitly enable the cloud run api (even if you don't do this, it will ask if you want this enabled when you deploy):\n\n```\ngcloud services enable run.googleapis.com\n```\n\nrequired: custom health check endpoint\n\ngoogle cloud run reserves `/healthz` for its own health checks. since n8n uses this path by default, it can conflict and cause connection issues in the workflow canvas. to fix this, set the `n8n_endpoint_health` environment variable to a custom path (included in the deployment commands below).\n\nto deploy n8n:\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n \\\n --region=us-west1 \\\n --allow-unauthenticated \\\n --port=5678 \\\n --no-cpu-throttling \\\n --memory=2gi \\\n --set-env-vars=\"n8n_endpoint_health=health\"\n```\n\n(you can specify whichever region you prefer, instead of \"us-west1\")\n\nonce the deployment finishes, open another tab to navigate to the service url. n8n may still be loading and you will see a \"n8n is starting up. please wait\" message, but shortly thereafter you should see the n8n login screen.\n\noptional: if you want to keep this n8n service running for as long as possible to avoid data loss, you can also set manual scale to 1 to prevent it from autoscaling to 0.\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n \\\n --region=us-west1 \\\n --allow-unauthenticated \\\n --port=5678 \\\n --no-cpu-throttling \\\n --memory=2gi \\\n --scaling=1 \\\n --set-env-vars=\"n8n_endpoint_health=health\"\n```\n\nthis does not prevent data loss completely, such as whenever the cloud run service is re-deployed/updated. if you want truly persistent data, you should refer to the instructions below for how to attach a database.\n\n## durable mode\n\nthe following instructions are intended for a more durable, production-grade deployment of n8n on cloud run. it includes resources such as a database for persistance and secret manager for sensitive data.\n\nif you want to deploy the following setup via terraform, refer to this [example](https://github.com/ryanpei/n8n-hosting/tree/main/google-cloud-run) which deploys the same setup as the following (without the oauth setup for google workspace tools).\n\n## enable apis and set env vars\n\nopen the cloud shell terminal (on the google cloud console, either type \"g\" then \"s\" or click on the terminal icon on the upper right) and run these commands in the terminal session:\n\n```\n## you may need to login first\ngcloud auth login\n\ngcloud services enable run.googleapis.com\ngcloud services enable sqladmin.googleapis.com\ngcloud services enable secretmanager.googleapis.com\n```\n\nyou'll also want to set some environment variables for the remainder of these instructions:\n\n```\nexport project_id=your-project\nexport region=region-where-you-want-this-deployed\n```\n\n## setup your postgres database\n\nrun this command to create the postgres db instance (it will take a few minutes to complete; also ensure you update the root-password field with your own desired password):\n\n```\ngcloud sql instances create n8n-db \\\n --database-version=postgres_13 \\\n --tier=db-f1-micro \\\n --region=$region \\\n --root-password=\"change-this-password\" \\\n --storage-size=10gb \\\n --availability-type=zonal \\\n --no-backup \\\n --storage-type=hdd\n```\n\nonce complete, you can add the database that n8n will use:\n\n```\ngcloud sql databases create n8n --instance=n8n-db\n```\n\ncreate the db user for n8n (change the password value, of course):\n\n```\ngcloud sql users create n8n-user \\\n --instance=n8n-db \\\n --password=\"change-this-password\"\n```\n\nyou can save the password you set for this n8n-user to a file for the next step of saving the password in secret manager. be sure to delete this file later.\n\n## store sensitive data in secret manager\n\nwhile not required, it's absolutely recommended to store your sensitive data in secrets manager.\n\ncreate a secret for the database password (replace \"/your/password/file\" with the file you created above for the n8n-user password):\n\n```\ngcloud secrets create n8n-db-password \\\n --data-file=/your/password/file \\\n --replication-policy=\"automatic\"\n```\n\ncreate an encryption key (you can use your own, this example generates a random one):\n\n```\nopenssl rand -base64 -out my-encryption-key 42\n```\n\ncreate a secret for this encryption key (replace \"my-encryption-key\" if you are supplying your own):\n\n```\ngcloud secrets create n8n-encryption-key \\\n --data-file=my-encryption-key \\\n --replication-policy=\"automatic\"\n```\n\nnow you can delete my-encryption-key and the database password files you created. these values are now securely stored in secret manager.\n\n## create a service account for cloud run\n\nyou want this cloud run service to be restricted to access only the resources it needs. the following commands create the service account and adds the permissions necessary to access secrets and the database:\n\n```\ngcloud iam service-accounts create n8n-service-account \\\n --display-name=\"n8n service account\"\n\ngcloud secrets add-iam-policy-binding n8n-db-password \\\n --member=\"serviceaccount:n8n-service-account@$project_id.iam.gserviceaccount.com\" \\\n --role=\"roles/secretmanager.secretaccessor\"\n\ngcloud secrets add-iam-policy-binding n8n-encryption-key \\\n --member=\"serviceaccount:n8n-service-account@$project_id.iam.gserviceaccount.com\" \\\n --role=\"roles/secretmanager.secretaccessor\"\n\ngcloud projects add-iam-policy-binding $project_id \\\n --member=\"serviceaccount:n8n-service-account@$project_id.iam.gserviceaccount.com\" \\\n --role=\"roles/cloudsql.client\"\n```\n\n## deploy the cloud run service\n\nnow you can deploy your n8n service:\n\n```\ngcloud run deploy n8n \\\n --image=n8nio/n8n:latest \\\n --command=\"/bin/sh\" \\\n --args=\"-c,sleep 5;n8n start\" \\\n --region=$region \\\n --allow-unauthenticated \\\n --port=5678 \\\n --memory=2gi \\\n --no-cpu-throttling \\\n --set-env-vars=\"n8n_port=5678,n8n_protocol=https,n8n_endpoint_health=health,db_type=postgresdb,db_postgresdb_database=n8n,db_postgresdb_user=n8n-user,db_postgresdb_host=/cloudsql/$project_id:$region:n8n-db,db_postgresdb_port=5432,db_postgresdb_schema=public,generic_timezone=utc,queue_health_check_active=true\" \\\n --set-secrets=\"db_postgresdb_password=n8n-db-password:latest,n8n_encryption_key=n8n-encryption-key:latest\" \\\n --add-cloudsql-instances=$project_id:$region:n8n-db \\\n --service-account=n8n-service-account@$project_id.iam.gserviceaccount.com\n```\n\nonce the deployment finishes, open another tab to navigate to the service url. you should see the n8n login screen.\n\n## troubleshooting\n\nif you see a \"cannot get /\" screen this usually indicates that n8n is still starting up. you can refresh the page and it should eventually load.\n\n## (optional) enabling google workspace services as n8n tools\n\nif you want to use google workspace services (gmail, calendar, drive, etc.) as tools in n8n, it's recommended to setup oauth to access these services.\n\nfirst ensure the respective apis you want are enabled:\n\n```\n## enable whichever apis you need\n## note: if you want sheets/docs, it's not enough to just enable drive; these services ea",
|
|
17845
17844
|
"importantTerms": [
|
|
17846
17845
|
"this",
|
|
17847
17846
|
"cloud",
|
|
@@ -17906,7 +17905,7 @@
|
|
|
17906
17905
|
"nodeName": null,
|
|
17907
17906
|
"nodeType": null,
|
|
17908
17907
|
"content": {
|
|
17909
|
-
"markdown": "# Hosting n8n on Google Kubernetes Engine\n\nGoogle Cloud offers several options suitable for hosting n8n, including Cloud Run (optimized for running containers), Compute Engine (VMs), and Kubernetes Engine (containers running with Kubernetes).\n\nThis guide uses the Google Kubernetes Engine (GKE) as the hosting option. If you want to use Cloud Run, refer to [these instructions](../google-cloud-run/).\n\nMost of the steps in this guide use the Google Cloud UI, but you can also use the [gcloud command line tool](https://cloud.google.com/sdk/gcloud/) instead to undertake all the steps.\n\n## Prerequisites\n\n- The [gcloud command line tool](https://cloud.google.com/sdk/gcloud/)\n- The [gke-gcloud-auth-plugin](https://cloud.google.com/blog/products/containers-kubernetes/kubectl-auth-changes-in-gke) (install the gcloud CLI first)\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
17908
|
+
"markdown": "# Hosting n8n on Google Kubernetes Engine\n\nGoogle Cloud offers several options suitable for hosting n8n, including Cloud Run (optimized for running containers), Compute Engine (VMs), and Kubernetes Engine (containers running with Kubernetes).\n\nThis guide uses the Google Kubernetes Engine (GKE) as the hosting option. If you want to use Cloud Run, refer to [these instructions](../google-cloud-run/).\n\nMost of the steps in this guide use the Google Cloud UI, but you can also use the [gcloud command line tool](https://cloud.google.com/sdk/gcloud/) instead to undertake all the steps.\n\n## Prerequisites\n\n- The [gcloud command line tool](https://cloud.google.com/sdk/gcloud/)\n- The [gke-gcloud-auth-plugin](https://cloud.google.com/blog/products/containers-kubernetes/kubectl-auth-changes-in-gke) (install the gcloud CLI first)\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## Create project\n\nGCP encourages you to create projects to logically organize resources and configuration. Create a new project for your n8n deployment from your Google Cloud Console: select the project dropdown menu and then the **NEW PROJECT** button. Then select the newly created project. As you follow the other steps in this guide, make sure you have the correct project selected.\n\n## Enable the Kubernetes Engine API\n\nGKE isn't enabled by default. Search for \"Kubernetes\" in the top search bar and select \"Kubernetes Engine\" from the results.\n\nSelect **ENABLE** to enable the Kubernetes Engine API for this project.\n\n## Create a cluster\n\nFrom the [GKE service page](https://console.cloud.google.com/kubernetes/list/overview), select **Clusters** > **CREATE**. Make sure you select the \"Standard\" cluster option, n8n doesn't work with an \"Autopilot\" cluster. You can leave the cluster configuration on defaults unless there's anything specifically you need to change, such as location.\n\n## Set Kubectl context\n\nThe rest of the steps in this guide require you to set the GCP instance as the Kubectl context. You can find the connection details for a cluster instance by opening its details page and selecting **CONNECT**. The displayed code snippet shows a connection string for the gcloud CLI tool. Paste and run the code snippet in the gcloud CLI to change your local Kubernetes settings to use the new gcloud cluster.\n\n## Clone configuration repository\n\nKubernetes and n8n require a series of configuration files. You can clone these from [this repository](https://github.com/n8n-io/n8n-hosting) locally. The following steps explain the file configuration and how to add your information.\n\nClone the repository with the following command:\n\n```\ngit clone https://github.com/n8n-io/n8n-hosting.git\n```\n\nAnd change directory:\n\n```\ncd n8n-hosting/kubernetes\n```\n\n## Configure Postgres\n\nFor larger scale n8n deployments, Postgres provides a more robust database backend than SQLite.\n\n### Create a volume for persistent storage\n\nTo maintain data between pod restarts, the Postgres deployment needs a persistent volume. Running Postgres on GCP requires a specific Kubernetes Storage Class. You can read [this guide](https://cloud.google.com/architecture/deploying-highly-available-postgresql-with-gke) for specifics, but the `storage.yaml` manifest creates it for you. You may want to change the regions to create the storage in under the `allowedTopologies` > `matchedLabelExpressions` > `values` key. By default, they're set to `us-central`.\n\n```\n…\nallowedTopologies:\n - matchLabelExpressions:\n - key: failure-domain.beta.kubernetes.io/zone\n values:\n - us-central1-b\n - us-central1-c\n```\n\n### Postgres environment variables\n\nPostgres needs some environment variables set to pass to the application running in the containers.\n\nThe example `postgres-secret.yaml` file contains placeholders you need to replace with your own values. Postgres will use these details when creating the database..\n\nThe `postgres-deployment.yaml` manifest then uses the values from this manifest file to send to the application pods.\n\n## Configure n8n\n\n### Create a volume for file storage\n\nWhile not essential for running n8n, using persistent volumes is required for:\n\n- Using nodes that interact with files, such as the binary data node.\n- If you want to persist [manual n8n encryption keys](../../../configuration/environment-variables/deployment/) between restarts. This saves a file containing the key into file storage during startup.\n\nThe `n8n-claim0-persistentvolumeclaim.yaml` manifest creates this, and the n8n Deployment mounts that claim in the `volumes` section of the `n8n-deployment.yaml` manifest.\n\n```\n…\nvolumes:\n - name: n8n-claim0\n persistentVolumeClaim:\n claimName: n8n-claim0\n…\n```\n\n### Pod resources\n\n[Kubernetes lets you](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) optionally specify the minimum resources application containers need and the limits they can run to. The example YAML files cloned above contain the following in the `resources` section of the `n8n-deployment.yaml` and `postgres-deployment.yaml` files:\n\n```\n…\nresources:\n requests:\n memory: \"250Mi\"\n limits:\n memory: \"500Mi\"\n…\n```\n\nThis defines a minimum of 250mb per container, a maximum of 500mb, and lets Kubernetes handle CPU. You can change these values to match your own needs. As a guide, here are the resources values for the n8n cloud offerings:\n\n- **Start**: 320mb RAM, 10 millicore CPU burstable\n- **Pro (10k executions)**: 640mb RAM, 20 millicore CPU burstable\n- **Pro (50k executions)**: 1280mb RAM, 80 millicore CPU burstable\n\n### Optional: Environment variables\n\nYou can configure n8n settings and behaviors using environment variables.\n\nCreate an `n8n-secret.yaml` file. Refer to [Environment variables](../../../configuration/environment-variables/) for n8n environment variables details.\n\n## Deployments\n\nThe two deployment manifests (`n8n-deployment.yaml` and `postgres-deployment.yaml`) define the n8n and Postgres applications to Kubernetes.\n\nThe manifests define the following:\n\n- Send the environment variables defined to each application pod\n- Define the container image to use\n- Set resource consumption limits with the `resources` object\n- The `volumes` defined earlier and `volumeMounts` to define the path in the container to mount volumes.\n- Scaling and restart policies. The example manifests define one instance of each pod. You should change this to meet your needs.\n\n## Services\n\nThe two service manifests (`postgres-service.yaml` and `n8n-service.yaml`) expose the services to the outside world using the Kubernetes load balancer using ports 5432 and 5678 respectively.\n\n## Send to Kubernetes cluster\n\nSend all the manifests to the cluster with the following command:\n\n```\nkubectl apply -f .\n```\n\nNamespace error\n\nYou may see an error message about not finding an \"n8n\" namespace as that resources isn't ready yet. You can run the same command again, or apply the namespace manifest first with the following command:\n\n```\nkubectl apply -f namespace.yaml\n```\n\n## Set up DNS\n\nn8n typically operates on a subdomain. Create a DNS record with your provider for the subdomain and point it to the IP address of the n8n service. Find the IP address of the n8n service from the **Services & Ingress** menu item of the cluster you want to use under the **Endpoints** column.\n\nGKE and IP addresses\n\n[Read this GKE tutorial](https://cloud.google.com/kubernetes-engine/docs/tutorials/configuring-domain-name-static-ip#configuring_your_domain_name_records) for more details on how reserved IP addresses work with GKE and Kubernetes resources.\n\n## Delete resources\n\nRemove the resources created by the manifests with the following command:\n\n```\nkubectl delete -f .\n```\n\n## Next steps\n\n- Learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- Or explore using n8n: try the [Quickstarts](../../../../try-it-out/).\n",
|
|
17910
17909
|
"excerpt": "# Hosting n8n on Google Kubernetes Engine Google Cloud offers several options suitable for hosting n8n, including Cloud Run (optimized for running containers), Compute Engine (VMs), and Kubernetes Engine (containers running with Kubernetes). This guide uses the Google Kubernetes Engine (GKE) as the hosting option. If you want to use Cloud Run, refer to [these instructions](../google-cloud-run/). Most of the steps in this guide use the Google Cloud UI, but you can also use the [gcloud command...",
|
|
17911
17910
|
"sections": [
|
|
17912
17911
|
{
|
|
@@ -17958,7 +17957,7 @@
|
|
|
17958
17957
|
"relatedPages": []
|
|
17959
17958
|
},
|
|
17960
17959
|
"searchIndex": {
|
|
17961
|
-
"fullText": "google kubernetes engine # hosting n8n on google kubernetes engine\n\ngoogle cloud offers several options suitable for hosting n8n, including cloud run (optimized for running containers), compute engine (vms), and kubernetes engine (containers running with kubernetes).\n\nthis guide uses the google kubernetes engine (gke) as the hosting option. if you want to use cloud run, refer to [these instructions](../google-cloud-run/).\n\nmost of the steps in this guide use the google cloud ui, but you can also use the [gcloud command line tool](https://cloud.google.com/sdk/gcloud/) instead to undertake all the steps.\n\n## prerequisites\n\n- the [gcloud command line tool](https://cloud.google.com/sdk/gcloud/)\n- the [gke-gcloud-auth-plugin](https://cloud.google.com/blog/products/containers-kubernetes/kubectl-auth-changes-in-gke) (install the gcloud cli first)\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.
|
|
17960
|
+
"fullText": "google kubernetes engine # hosting n8n on google kubernetes engine\n\ngoogle cloud offers several options suitable for hosting n8n, including cloud run (optimized for running containers), compute engine (vms), and kubernetes engine (containers running with kubernetes).\n\nthis guide uses the google kubernetes engine (gke) as the hosting option. if you want to use cloud run, refer to [these instructions](../google-cloud-run/).\n\nmost of the steps in this guide use the google cloud ui, but you can also use the [gcloud command line tool](https://cloud.google.com/sdk/gcloud/) instead to undertake all the steps.\n\n## prerequisites\n\n- the [gcloud command line tool](https://cloud.google.com/sdk/gcloud/)\n- the [gke-gcloud-auth-plugin](https://cloud.google.com/blog/products/containers-kubernetes/kubectl-auth-changes-in-gke) (install the gcloud cli first)\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## create project\n\ngcp encourages you to create projects to logically organize resources and configuration. create a new project for your n8n deployment from your google cloud console: select the project dropdown menu and then the **new project** button. then select the newly created project. as you follow the other steps in this guide, make sure you have the correct project selected.\n\n## enable the kubernetes engine api\n\ngke isn't enabled by default. search for \"kubernetes\" in the top search bar and select \"kubernetes engine\" from the results.\n\nselect **enable** to enable the kubernetes engine api for this project.\n\n## create a cluster\n\nfrom the [gke service page](https://console.cloud.google.com/kubernetes/list/overview), select **clusters** > **create**. make sure you select the \"standard\" cluster option, n8n doesn't work with an \"autopilot\" cluster. you can leave the cluster configuration on defaults unless there's anything specifically you need to change, such as location.\n\n## set kubectl context\n\nthe rest of the steps in this guide require you to set the gcp instance as the kubectl context. you can find the connection details for a cluster instance by opening its details page and selecting **connect**. the displayed code snippet shows a connection string for the gcloud cli tool. paste and run the code snippet in the gcloud cli to change your local kubernetes settings to use the new gcloud cluster.\n\n## clone configuration repository\n\nkubernetes and n8n require a series of configuration files. you can clone these from [this repository](https://github.com/n8n-io/n8n-hosting) locally. the following steps explain the file configuration and how to add your information.\n\nclone the repository with the following command:\n\n```\ngit clone https://github.com/n8n-io/n8n-hosting.git\n```\n\nand change directory:\n\n```\ncd n8n-hosting/kubernetes\n```\n\n## configure postgres\n\nfor larger scale n8n deployments, postgres provides a more robust database backend than sqlite.\n\n### create a volume for persistent storage\n\nto maintain data between pod restarts, the postgres deployment needs a persistent volume. running postgres on gcp requires a specific kubernetes storage class. you can read [this guide](https://cloud.google.com/architecture/deploying-highly-available-postgresql-with-gke) for specifics, but the `storage.yaml` manifest creates it for you. you may want to change the regions to create the storage in under the `allowedtopologies` > `matchedlabelexpressions` > `values` key. by default, they're set to `us-central`.\n\n```\n…\nallowedtopologies:\n - matchlabelexpressions:\n - key: failure-domain.beta.kubernetes.io/zone\n values:\n - us-central1-b\n - us-central1-c\n```\n\n### postgres environment variables\n\npostgres needs some environment variables set to pass to the application running in the containers.\n\nthe example `postgres-secret.yaml` file contains placeholders you need to replace with your own values. postgres will use these details when creating the database..\n\nthe `postgres-deployment.yaml` manifest then uses the values from this manifest file to send to the application pods.\n\n## configure n8n\n\n### create a volume for file storage\n\nwhile not essential for running n8n, using persistent volumes is required for:\n\n- using nodes that interact with files, such as the binary data node.\n- if you want to persist [manual n8n encryption keys](../../../configuration/environment-variables/deployment/) between restarts. this saves a file containing the key into file storage during startup.\n\nthe `n8n-claim0-persistentvolumeclaim.yaml` manifest creates this, and the n8n deployment mounts that claim in the `volumes` section of the `n8n-deployment.yaml` manifest.\n\n```\n…\nvolumes:\n - name: n8n-claim0\n persistentvolumeclaim:\n claimname: n8n-claim0\n…\n```\n\n### pod resources\n\n[kubernetes lets you](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) optionally specify the minimum resources application containers need and the limits they can run to. the example yaml files cloned above contain the following in the `resources` section of the `n8n-deployment.yaml` and `postgres-deployment.yaml` files:\n\n```\n…\nresources:\n requests:\n memory: \"250mi\"\n limits:\n memory: \"500mi\"\n…\n```\n\nthis defines a minimum of 250mb per container, a maximum of 500mb, and lets kubernetes handle cpu. you can change these values to match your own needs. as a guide, here are the resources values for the n8n cloud offerings:\n\n- **start**: 320mb ram, 10 millicore cpu burstable\n- **pro (10k executions)**: 640mb ram, 20 millicore cpu burstable\n- **pro (50k executions)**: 1280mb ram, 80 millicore cpu burstable\n\n### optional: environment variables\n\nyou can configure n8n settings and behaviors using environment variables.\n\ncreate an `n8n-secret.yaml` file. refer to [environment variables](../../../configuration/environment-variables/) for n8n environment variables details.\n\n## deployments\n\nthe two deployment manifests (`n8n-deployment.yaml` and `postgres-deployment.yaml`) define the n8n and postgres applications to kubernetes.\n\nthe manifests define the following:\n\n- send the environment variables defined to each application pod\n- define the container image to use\n- set resource consumption limits with the `resources` object\n- the `volumes` defined earlier and `volumemounts` to define the path in the container to mount volumes.\n- scaling and restart policies. the example manifests define one instance of each pod. you should change this to meet your needs.\n\n## services\n\nthe two service manifests (`postgres-service.yaml` and `n8n-service.yaml`) expose the services to the outside world using the kubernetes load balancer using ports 5432 and 5678 respectively.\n\n## send to kubernetes cluster\n\nsend all the manifests to the cluster with the following command:\n\n```\nkubectl apply -f .\n```\n\nnamespace error\n\nyou may see an error message about not finding an \"n8n\" namespace as that resources isn't ready yet. you can run the same command again, or apply the namespace manifest first with the following command:\n\n```\nkubectl apply -f namespace.yaml\n```\n\n## set up dns\n\nn8n typically operates on a subdomain. create a dns record with your provider for the subdomain and point it to the ip address of the n8n service. find the ip address of the n8n service from the **services & ingress** menu item of the cluster you want to use under the **endpoints** column.\n\ngke and ip addresses\n\n[read this gke tutorial](https://cloud.google.com/kubernetes-engine/docs/tutorials/configuring-domain-name-static-ip#configuring_your_domain_name_records) for more details on how reserved ip addresses work with gke and kubernetes resources.\n\n## delete resources\n\nremove the resources created by the manifests with the following command:\n\n```\nkubectl delete -f .\n```\n\n## next steps\n\n- learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- or explore using n8n: try the [quickstarts](../../../../try-it-out/).\n hosting n8n on google kubernetes engine",
|
|
17962
17961
|
"importantTerms": [
|
|
17963
17962
|
"kubernetes",
|
|
17964
17963
|
"cloud",
|
|
@@ -18023,7 +18022,7 @@
|
|
|
18023
18022
|
"nodeName": null,
|
|
18024
18023
|
"nodeType": null,
|
|
18025
18024
|
"content": {
|
|
18026
|
-
"markdown": "# Hosting n8n on Heroku\n\nThis hosting guide shows you how to self-host n8n on Heroku. It uses:\n\n- [Docker Compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n- [Heroku's PostgreSQL service](https://devcenter.heroku.com/categories/heroku-postgres) to host n8n's data storage.\n- A **Deploy to Heroku** button offering a one click, with minor configuration, deployment.\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
18025
|
+
"markdown": "# Hosting n8n on Heroku\n\nThis hosting guide shows you how to self-host n8n on Heroku. It uses:\n\n- [Docker Compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n- [Heroku's PostgreSQL service](https://devcenter.heroku.com/categories/heroku-postgres) to host n8n's data storage.\n- A **Deploy to Heroku** button offering a one click, with minor configuration, deployment.\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## Use the deployment template to create a Heroku project\n\nThe quickest way to get started with deploying n8n to Heroku is using the **Deploy to Heroku** button:\n\nThis opens the **Create New App** page on Heroku. Set a name for the project, and choose the region to deploy the project to.\n\n### Configure environment variables\n\nHeroku pre-fills the configuration options defined in the `env` section of the `app.json` file, which also sets default values for the environment variables n8n uses.\n\nYou can change any of these values to suit your needs. You must change the following values:\n\n- **N8N_ENCRYPTION_KEY**, which n8n uses to [encrypt user account details](../../../configuration/environment-variables/deployment/) before saving to the database.\n- **WEBHOOK_URL** should match the application name you create to ensure that webhooks have the correct URL.\n\n### Deploy n8n\n\nSelect **Deploy app**.\n\nAfter Heroku builds and deploys the app it provides links to **Manage App** or **View** the application.\n\nHeroku and DNS\n\nRefer to the [Heroku documentation](https://devcenter.heroku.com/categories/networking-dns) to find out how to connect your domain to a Heroku application.\n\n## Changing the deployment template\n\nYou can make changes to the deployment template by forking the [repository](https://github.com/n8n-io/n8n-heroku) and deploying from you fork.\n\n### The Dockerfile\n\nBy default the Dockerfile pulls the latest n8n image, if you want to use a different or fixed version, then update the image tag on the top line of the `Dockerfile`.\n\n### Heroku and exposing ports\n\nHeroku doesn't allow Docker-based applications to define an exposed port with the `EXPOSE` command. Instead, Heroku provides a `PORT` environment variable that it dynamically populates at application runtime. The `entrypoint.sh` file overrides the default Docker image command to instead set the port variable that Heroku provides. You can then access n8n on port 80 in a web browser.\n\nDocker limitations with Heroku\n\n[Read this guide](https://devcenter.heroku.com/articles/container-registry-and-runtime#unsupported-dockerfile-commands) for more details on the limitations of using Docker with Heroku.\n\n### Configuring Heroku\n\nThe `heroku.yml` file defines the application you want to create on Heroku. It consists of two sections:\n\n- `setup` > `addons` defines the Heroku addons to use. In this case, the PostgreSQL database addon.\n- The `build` section defines how Heroku builds the application. In this case it uses the Docker buildpack to build a `web` service based on the supplied `Dockerfile`.\n\n## Next steps\n\n- Learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- Or explore using n8n: try the [Quickstarts](../../../../try-it-out/).\n",
|
|
18027
18026
|
"excerpt": "# Hosting n8n on Heroku This hosting guide shows you how to self-host n8n on Heroku. It uses: - [Docker Compose](https://docs.docker.com/compose/) to create and define the application components and how they work together. - [Heroku's PostgreSQL service](https://devcenter.heroku.com/categories/heroku-postgres) to host n8n's data storage. - A **Deploy to Heroku** button offering a one click, with minor configuration, deployment. Self-hosting knowledge prerequisites Self-hosting n8n requires t...",
|
|
18028
18027
|
"sections": [
|
|
18029
18028
|
{
|
|
@@ -18062,7 +18061,7 @@
|
|
|
18062
18061
|
"relatedPages": []
|
|
18063
18062
|
},
|
|
18064
18063
|
"searchIndex": {
|
|
18065
|
-
"fullText": "heroku # hosting n8n on heroku\n\nthis hosting guide shows you how to self-host n8n on heroku. it uses:\n\n- [docker compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n- [heroku's postgresql service](https://devcenter.heroku.com/categories/heroku-postgres) to host n8n's data storage.\n- a **deploy to heroku** button offering a one click, with minor configuration, deployment.\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.
|
|
18064
|
+
"fullText": "heroku # hosting n8n on heroku\n\nthis hosting guide shows you how to self-host n8n on heroku. it uses:\n\n- [docker compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n- [heroku's postgresql service](https://devcenter.heroku.com/categories/heroku-postgres) to host n8n's data storage.\n- a **deploy to heroku** button offering a one click, with minor configuration, deployment.\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## use the deployment template to create a heroku project\n\nthe quickest way to get started with deploying n8n to heroku is using the **deploy to heroku** button:\n\nthis opens the **create new app** page on heroku. set a name for the project, and choose the region to deploy the project to.\n\n### configure environment variables\n\nheroku pre-fills the configuration options defined in the `env` section of the `app.json` file, which also sets default values for the environment variables n8n uses.\n\nyou can change any of these values to suit your needs. you must change the following values:\n\n- **n8n_encryption_key**, which n8n uses to [encrypt user account details](../../../configuration/environment-variables/deployment/) before saving to the database.\n- **webhook_url** should match the application name you create to ensure that webhooks have the correct url.\n\n### deploy n8n\n\nselect **deploy app**.\n\nafter heroku builds and deploys the app it provides links to **manage app** or **view** the application.\n\nheroku and dns\n\nrefer to the [heroku documentation](https://devcenter.heroku.com/categories/networking-dns) to find out how to connect your domain to a heroku application.\n\n## changing the deployment template\n\nyou can make changes to the deployment template by forking the [repository](https://github.com/n8n-io/n8n-heroku) and deploying from you fork.\n\n### the dockerfile\n\nby default the dockerfile pulls the latest n8n image, if you want to use a different or fixed version, then update the image tag on the top line of the `dockerfile`.\n\n### heroku and exposing ports\n\nheroku doesn't allow docker-based applications to define an exposed port with the `expose` command. instead, heroku provides a `port` environment variable that it dynamically populates at application runtime. the `entrypoint.sh` file overrides the default docker image command to instead set the port variable that heroku provides. you can then access n8n on port 80 in a web browser.\n\ndocker limitations with heroku\n\n[read this guide](https://devcenter.heroku.com/articles/container-registry-and-runtime#unsupported-dockerfile-commands) for more details on the limitations of using docker with heroku.\n\n### configuring heroku\n\nthe `heroku.yml` file defines the application you want to create on heroku. it consists of two sections:\n\n- `setup` > `addons` defines the heroku addons to use. in this case, the postgresql database addon.\n- the `build` section defines how heroku builds the application. in this case it uses the docker buildpack to build a `web` service based on the supplied `dockerfile`.\n\n## next steps\n\n- learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- or explore using n8n: try the [quickstarts](../../../../try-it-out/).\n hosting n8n on heroku",
|
|
18066
18065
|
"importantTerms": [
|
|
18067
18066
|
"heroku",
|
|
18068
18067
|
"application",
|
|
@@ -18111,7 +18110,7 @@
|
|
|
18111
18110
|
"nodeName": null,
|
|
18112
18111
|
"nodeType": null,
|
|
18113
18112
|
"content": {
|
|
18114
|
-
"markdown": "# Hosting n8n on Hetzner cloud\n\nThis hosting guide shows you how to self-host n8n on a Hetzner cloud server. It uses:\n\n- [Caddy](https://caddyserver.com) (a reverse proxy) to allow access to the Server from the internet.\n- [Docker Compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.
|
|
18113
|
+
"markdown": "# Hosting n8n on Hetzner cloud\n\nThis hosting guide shows you how to self-host n8n on a Hetzner cloud server. It uses:\n\n- [Caddy](https://caddyserver.com) (a reverse proxy) to allow access to the Server from the internet.\n- [Docker Compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n\nSelf-hosting knowledge prerequisites\n\nSelf-hosting n8n requires technical knowledge, including:\n\n- Setting up and configuring servers and containers\n- Managing application resources and scaling\n- Securing servers and applications\n- Configuring n8n\n\nn8n recommends self-hosting for expert users. Mistakes can lead to data loss, security issues, and downtime. If you aren't experienced at managing servers, n8n recommends [n8n Cloud](https://n8n.io/cloud/).\n\nStable and Beta versions\n\nn8n releases a new minor version most weeks. The `stable` version is for production use. `beta` is the most recent release. The `beta` version may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\nCurrent `stable`: 2.21.5 Current `beta`: 2.22.0\n\n## Create a server\n\n1. [Log in](https://console.hetzner.cloud/) to the Hetzner Cloud Console.\n1. Select the project to host the server, or create a new project by selecting **+ NEW PROJECT**.\n1. Select **+ CREATE SERVER** on the project tile you want to add it to.\n\nYou can change most of the settings to suit your needs, but as this guide uses Docker to run the application, under the **Image** section, select \"Docker CE\" from the **APPS** tab.\n\nType\n\nWhen creating the server, Hetzner asks you to choose a plan. For most usage levels, the CPX11 type is enough.\n\nSSH keys\n\nHetzner lets you choose between SSH and password-based authentication. SSH is more secure. The rest of this guide assumes you are using SSH.\n\n## Log in to your server\n\nThe rest of this guide requires you to log in to the server using a terminal with SSH. Refer to [Access with SSH/rsync/BorgBackup](https://docs.hetzner.com/robot/storage-box/access/access-ssh-rsync-borg) for more information. You can find the public IP in the listing of the servers in your project.\n\n## Install Docker Compose\n\nThe Hetzner Docker app image doesn't have Docker compose installed. Install it with the following commands:\n\n```\napt update && apt -y upgrade\napt install docker-compose-plugin\n```\n\n## Clone configuration repository\n\nDocker Compose, n8n, and Caddy require a series of folders and configuration files. You can clone these from [this repository](https://github.com/n8n-io/n8n-docker-caddy) into the root user folder of the server. The following steps will tell you which file to change and what changes to make.\n\nClone the repository with the following command:\n\n```\ngit clone https://github.com/n8n-io/n8n-docker-caddy.git\n```\n\nAnd change directory to the root of the repository you cloned:\n\n```\ncd n8n-docker-caddy\n```\n\n## Default folders and files\n\nThe host operating system (the server) copies the two folders you created to Docker containers to make them available to Docker. The two folders are:\n\n- `caddy_config`: Holds the Caddy configuration files.\n- `local_files`: A folder for files you upload or add using n8n.\n\n### Create Docker volume\n\nTo persist the Caddy cache between restarts and speed up start times, create [a Docker volume](https://docs.docker.com/storage/volumes/) that Docker reuses between restarts:\n\n```\ndocker volume create caddy_data\n```\n\nCreate a Docker volume for the n8n data:\n\n```\nsudo docker volume create n8n_data\n```\n\n## Set up DNS\n\nn8n typically operates on a subdomain. Create a DNS record with your provider for the subdomain and point it to the IP address of the server. The exact steps for this depend on your DNS provider, but typically you need to create a new \"A\" record for the n8n subdomain. DigitalOcean provide [An Introduction to DNS Terminology, Components, and Concepts](https://www.digitalocean.com/community/tutorials/an-introduction-to-dns-terminology-components-and-concepts).\n\n## Open ports\n\nn8n runs as a web application, so the server needs to allow incoming access to traffic on port 80 for non-secure traffic, and port 443 for secure traffic.\n\nOpen the following ports in the server's firewall by running the following two commands:\n\n```\nsudo ufw allow 80\nsudo ufw allow 443\n```\n\n## Configure n8n\n\nn8n needs some environment variables set to pass to the application running in the Docker container. The example `.env` file contains placeholders you need to replace with values of your own.\n\nOpen the file with the following command:\n\n```\nnano .env\n```\n\nThe file contains inline comments to help you know what to change.\n\nRefer to [Environment variables](../../../configuration/environment-variables/) for n8n environment variables details.\n\n## The Docker Compose file\n\nThe Docker Compose file (`docker-compose.yml`) defines the services the application needs, in this case Caddy and n8n.\n\n- The Caddy service definition defines the ports it uses and the local volumes to copy to the containers.\n- The n8n service definition defines the ports it uses, the environment variables n8n needs to run (some defined in the `.env` file), and the volumes it needs to copy to the containers.\n\nThe Docker Compose file uses the environment variables set in the `.env` file, so you shouldn't need to change it's content, but to take a look, run the following command:\n\n```\nnano docker-compose.yml\n```\n\n## Configure Caddy\n\nCaddy needs to know which domains it should serve, and which port to expose to the outside world. Edit the `Caddyfile` file in the `caddy_config` folder.\n\n```\nnano caddy_config/Caddyfile\n```\n\nChange the placeholder subdomain to yours. If you followed the steps to name the subdomain n8n, your full domain is similar to `n8n.example.com`. The `n8n` in the `reverse_proxy` setting tells Caddy to use the service definition defined in the `docker-compose.yml` file:\n\n```\nn8n.<domain>.<suffix> {\n reverse_proxy n8n:5678 {\n flush_interval -1\n }\n}\n```\n\n## Start Docker Compose\n\nStart n8n and Caddy with the following command:\n\n```\ndocker compose up -d\n```\n\nThis may take a few minutes.\n\n## Test your setup\n\nIn your browser, open the URL formed of the subdomain and domain name defined earlier. Enter the user name and password defined earlier, and you should be able to access n8n.\n\n## Stop n8n and Caddy\n\nYou can stop n8n and Caddy with the following command:\n\n```\nsudo docker compose stop\n```\n\n## Updating\n\nIf you run n8n using a Docker Compose file, follow these steps to update n8n:\n\n```\n# Navigate to the directory containing your docker compose file\ncd </path/to/your/compose/file/directory>\n\n# Pull latest version\ndocker compose pull\n\n# Stop and remove older version\ndocker compose down\n\n# Start the container\ndocker compose up -d\n```\n\n## Next steps\n\n- Learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- Or explore using n8n: try the [Quickstarts](../../../../try-it-out/).\n",
|
|
18115
18114
|
"excerpt": "# Hosting n8n on Hetzner cloud This hosting guide shows you how to self-host n8n on a Hetzner cloud server. It uses: - [Caddy](https://caddyserver.com) (a reverse proxy) to allow access to the Server from the internet. - [Docker Compose](https://docs.docker.com/compose/) to create and define the application components and how they work together. Self-hosting knowledge prerequisites Self-hosting n8n requires technical knowledge, including: - Setting up and configuring servers and containers...",
|
|
18116
18115
|
"sections": [
|
|
18117
18116
|
{
|
|
@@ -18190,7 +18189,7 @@
|
|
|
18190
18189
|
"relatedPages": []
|
|
18191
18190
|
},
|
|
18192
18191
|
"searchIndex": {
|
|
18193
|
-
"fullText": "hetzner # hosting n8n on hetzner cloud\n\nthis hosting guide shows you how to self-host n8n on a hetzner cloud server. it uses:\n\n- [caddy](https://caddyserver.com) (a reverse proxy) to allow access to the server from the internet.\n- [docker compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.
|
|
18192
|
+
"fullText": "hetzner # hosting n8n on hetzner cloud\n\nthis hosting guide shows you how to self-host n8n on a hetzner cloud server. it uses:\n\n- [caddy](https://caddyserver.com) (a reverse proxy) to allow access to the server from the internet.\n- [docker compose](https://docs.docker.com/compose/) to create and define the application components and how they work together.\n\nself-hosting knowledge prerequisites\n\nself-hosting n8n requires technical knowledge, including:\n\n- setting up and configuring servers and containers\n- managing application resources and scaling\n- securing servers and applications\n- configuring n8n\n\nn8n recommends self-hosting for expert users. mistakes can lead to data loss, security issues, and downtime. if you aren't experienced at managing servers, n8n recommends [n8n cloud](https://n8n.io/cloud/).\n\nstable and beta versions\n\nn8n releases a new minor version most weeks. the `stable` version is for production use. `beta` is the most recent release. the `beta` version may be unstable. to report issues, use the [forum](https://community.n8n.io/c/questions/12).\n\ncurrent `stable`: 2.21.5 current `beta`: 2.22.0\n\n## create a server\n\n1. [log in](https://console.hetzner.cloud/) to the hetzner cloud console.\n1. select the project to host the server, or create a new project by selecting **+ new project**.\n1. select **+ create server** on the project tile you want to add it to.\n\nyou can change most of the settings to suit your needs, but as this guide uses docker to run the application, under the **image** section, select \"docker ce\" from the **apps** tab.\n\ntype\n\nwhen creating the server, hetzner asks you to choose a plan. for most usage levels, the cpx11 type is enough.\n\nssh keys\n\nhetzner lets you choose between ssh and password-based authentication. ssh is more secure. the rest of this guide assumes you are using ssh.\n\n## log in to your server\n\nthe rest of this guide requires you to log in to the server using a terminal with ssh. refer to [access with ssh/rsync/borgbackup](https://docs.hetzner.com/robot/storage-box/access/access-ssh-rsync-borg) for more information. you can find the public ip in the listing of the servers in your project.\n\n## install docker compose\n\nthe hetzner docker app image doesn't have docker compose installed. install it with the following commands:\n\n```\napt update && apt -y upgrade\napt install docker-compose-plugin\n```\n\n## clone configuration repository\n\ndocker compose, n8n, and caddy require a series of folders and configuration files. you can clone these from [this repository](https://github.com/n8n-io/n8n-docker-caddy) into the root user folder of the server. the following steps will tell you which file to change and what changes to make.\n\nclone the repository with the following command:\n\n```\ngit clone https://github.com/n8n-io/n8n-docker-caddy.git\n```\n\nand change directory to the root of the repository you cloned:\n\n```\ncd n8n-docker-caddy\n```\n\n## default folders and files\n\nthe host operating system (the server) copies the two folders you created to docker containers to make them available to docker. the two folders are:\n\n- `caddy_config`: holds the caddy configuration files.\n- `local_files`: a folder for files you upload or add using n8n.\n\n### create docker volume\n\nto persist the caddy cache between restarts and speed up start times, create [a docker volume](https://docs.docker.com/storage/volumes/) that docker reuses between restarts:\n\n```\ndocker volume create caddy_data\n```\n\ncreate a docker volume for the n8n data:\n\n```\nsudo docker volume create n8n_data\n```\n\n## set up dns\n\nn8n typically operates on a subdomain. create a dns record with your provider for the subdomain and point it to the ip address of the server. the exact steps for this depend on your dns provider, but typically you need to create a new \"a\" record for the n8n subdomain. digitalocean provide [an introduction to dns terminology, components, and concepts](https://www.digitalocean.com/community/tutorials/an-introduction-to-dns-terminology-components-and-concepts).\n\n## open ports\n\nn8n runs as a web application, so the server needs to allow incoming access to traffic on port 80 for non-secure traffic, and port 443 for secure traffic.\n\nopen the following ports in the server's firewall by running the following two commands:\n\n```\nsudo ufw allow 80\nsudo ufw allow 443\n```\n\n## configure n8n\n\nn8n needs some environment variables set to pass to the application running in the docker container. the example `.env` file contains placeholders you need to replace with values of your own.\n\nopen the file with the following command:\n\n```\nnano .env\n```\n\nthe file contains inline comments to help you know what to change.\n\nrefer to [environment variables](../../../configuration/environment-variables/) for n8n environment variables details.\n\n## the docker compose file\n\nthe docker compose file (`docker-compose.yml`) defines the services the application needs, in this case caddy and n8n.\n\n- the caddy service definition defines the ports it uses and the local volumes to copy to the containers.\n- the n8n service definition defines the ports it uses, the environment variables n8n needs to run (some defined in the `.env` file), and the volumes it needs to copy to the containers.\n\nthe docker compose file uses the environment variables set in the `.env` file, so you shouldn't need to change it's content, but to take a look, run the following command:\n\n```\nnano docker-compose.yml\n```\n\n## configure caddy\n\ncaddy needs to know which domains it should serve, and which port to expose to the outside world. edit the `caddyfile` file in the `caddy_config` folder.\n\n```\nnano caddy_config/caddyfile\n```\n\nchange the placeholder subdomain to yours. if you followed the steps to name the subdomain n8n, your full domain is similar to `n8n.example.com`. the `n8n` in the `reverse_proxy` setting tells caddy to use the service definition defined in the `docker-compose.yml` file:\n\n```\nn8n.<domain>.<suffix> {\n reverse_proxy n8n:5678 {\n flush_interval -1\n }\n}\n```\n\n## start docker compose\n\nstart n8n and caddy with the following command:\n\n```\ndocker compose up -d\n```\n\nthis may take a few minutes.\n\n## test your setup\n\nin your browser, open the url formed of the subdomain and domain name defined earlier. enter the user name and password defined earlier, and you should be able to access n8n.\n\n## stop n8n and caddy\n\nyou can stop n8n and caddy with the following command:\n\n```\nsudo docker compose stop\n```\n\n## updating\n\nif you run n8n using a docker compose file, follow these steps to update n8n:\n\n```\n# navigate to the directory containing your docker compose file\ncd </path/to/your/compose/file/directory>\n\n# pull latest version\ndocker compose pull\n\n# stop and remove older version\ndocker compose down\n\n# start the container\ndocker compose up -d\n```\n\n## next steps\n\n- learn more about [configuring](../../../configuration/environment-variables/) and [scaling](../../../scaling/overview/) n8n.\n- or explore using n8n: try the [quickstarts](../../../../try-it-out/).\n hosting n8n on hetzner cloud navigate to the directory containing your docker compose file pull latest version stop and remove older version start the container",
|
|
18194
18193
|
"importantTerms": [
|
|
18195
18194
|
"docker",
|
|
18196
18195
|
"compose",
|
|
@@ -20558,57 +20557,6 @@
|
|
|
20558
20557
|
},
|
|
20559
20558
|
{
|
|
20560
20559
|
"id": "page-0233",
|
|
20561
|
-
"title": "Set up SSL",
|
|
20562
|
-
"url": "https://docs.n8n.io/hosting/securing/set-up-ssl/index.md",
|
|
20563
|
-
"urlPath": "hosting/securing/set-up-ssl/index.md",
|
|
20564
|
-
"category": "hosting",
|
|
20565
|
-
"subcategory": null,
|
|
20566
|
-
"nodeName": null,
|
|
20567
|
-
"nodeType": null,
|
|
20568
|
-
"content": {
|
|
20569
|
-
"markdown": "# Set up SSL\n\nThere are two methods to support TLS/SSL in n8n.\n\n## Use a reverse proxy (recommended)\n\nUse a reverse proxy like [Traefik](https://doc.traefik.io/traefik/) or a Network Load Balancer (NLB) in front of the n8n instance. This should also take care of certificate renewals.\n\nRefer to [Security | Data encryption](https://n8n.io/legal/#security) for more information.\n\n## Pass certificates into n8n directly\n\nYou can also choose to pass certificates into n8n directly. To do so, set the `N8N_SSL_CERT` and `N8N_SSL_KEY` environment variables to point to your generated certificate and key file.\n\nYou'll need to make sure the certificate stays renewed and up to date.\n\nRefer to [Deployment environment variables](../../configuration/environment-variables/deployment/) for more information on these variables and [Configuration](../../configuration/configuration-methods/) for more information on setting environment variables.\n",
|
|
20570
|
-
"excerpt": "# Set up SSL There are two methods to support TLS/SSL in n8n. ## Use a reverse proxy (recommended) Use a reverse proxy like [Traefik](https://doc.traefik.io/traefik/) or a Network Load Balancer (NLB) in front of the n8n instance. This should also take care of certificate renewals. Refer to [Security | Data encryption](https://n8n.io/legal/#security) for more information. ## Pass certificates into n8n directly You can also choose to pass certificates into n8n directly. To do so, set the `N8...",
|
|
20571
|
-
"sections": [
|
|
20572
|
-
{
|
|
20573
|
-
"title": "Set up SSL",
|
|
20574
|
-
"level": 1,
|
|
20575
|
-
"content": "There are two methods to support TLS/SSL in n8n."
|
|
20576
|
-
}
|
|
20577
|
-
]
|
|
20578
|
-
},
|
|
20579
|
-
"metadata": {
|
|
20580
|
-
"keywords": [
|
|
20581
|
-
"reverse",
|
|
20582
|
-
"proxy",
|
|
20583
|
-
"(recommended)",
|
|
20584
|
-
"pass",
|
|
20585
|
-
"certificates",
|
|
20586
|
-
"into",
|
|
20587
|
-
"directly"
|
|
20588
|
-
],
|
|
20589
|
-
"useCases": [],
|
|
20590
|
-
"operations": [],
|
|
20591
|
-
"codeExamples": 0,
|
|
20592
|
-
"complexity": "beginner",
|
|
20593
|
-
"readingTime": "1 min",
|
|
20594
|
-
"contentLength": 936,
|
|
20595
|
-
"relatedPages": []
|
|
20596
|
-
},
|
|
20597
|
-
"searchIndex": {
|
|
20598
|
-
"fullText": "set up ssl # set up ssl\n\nthere are two methods to support tls/ssl in n8n.\n\n## use a reverse proxy (recommended)\n\nuse a reverse proxy like [traefik](https://doc.traefik.io/traefik/) or a network load balancer (nlb) in front of the n8n instance. this should also take care of certificate renewals.\n\nrefer to [security | data encryption](https://n8n.io/legal/#security) for more information.\n\n## pass certificates into n8n directly\n\nyou can also choose to pass certificates into n8n directly. to do so, set the `n8n_ssl_cert` and `n8n_ssl_key` environment variables to point to your generated certificate and key file.\n\nyou'll need to make sure the certificate stays renewed and up to date.\n\nrefer to [deployment environment variables](../../configuration/environment-variables/deployment/) for more information on these variables and [configuration](../../configuration/configuration-methods/) for more information on setting environment variables.\n set up ssl",
|
|
20599
|
-
"importantTerms": [
|
|
20600
|
-
"variables",
|
|
20601
|
-
"environment",
|
|
20602
|
-
"configuration",
|
|
20603
|
-
"traefik",
|
|
20604
|
-
"certificate",
|
|
20605
|
-
"more",
|
|
20606
|
-
"information"
|
|
20607
|
-
]
|
|
20608
|
-
}
|
|
20609
|
-
},
|
|
20610
|
-
{
|
|
20611
|
-
"id": "page-0234",
|
|
20612
20560
|
"title": "Set up SSO",
|
|
20613
20561
|
"url": "https://docs.n8n.io/hosting/securing/set-up-sso/index.md",
|
|
20614
20562
|
"urlPath": "hosting/securing/set-up-sso/index.md",
|
|
@@ -82779,6 +82727,49 @@
|
|
|
82779
82727
|
},
|
|
82780
82728
|
{
|
|
82781
82729
|
"id": "page-1115",
|
|
82730
|
+
"title": "PayPal Trigger",
|
|
82731
|
+
"url": "https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.paypaltrigger/index.md",
|
|
82732
|
+
"urlPath": "integrations/builtin/trigger-nodes/n8n-nodes-base.paypaltrigger/index.md",
|
|
82733
|
+
"category": "trigger-nodes",
|
|
82734
|
+
"subcategory": null,
|
|
82735
|
+
"nodeName": "paypaltrigger",
|
|
82736
|
+
"nodeType": "n8n-nodes-base.paypaltrigger",
|
|
82737
|
+
"content": {
|
|
82738
|
+
"markdown": "# PayPal Trigger node\n\n[PayPal](https://paypal.com) is a digital payment service that supports online fund transfers that customers can use when shopping online.\n\nCredentials\n\nYou can find authentication information for this node [here](../../credentials/paypal/).\n\nExamples and templates\n\nFor usage examples and templates to help you get started, refer to n8n's [PayPal Trigger integrations](https://n8n.io/integrations/paypal-trigger/) page.\n",
|
|
82739
|
+
"excerpt": "# PayPal Trigger node [PayPal](https://paypal.com) is a digital payment service that supports online fund transfers that customers can use when shopping online. Credentials You can find authentication information for this node [here](../../credentials/paypal/). Examples and templates For usage examples and templates to help you get started, refer to n8n's [PayPal Trigger integrations](https://n8n.io/integrations/paypal-trigger/) page....",
|
|
82740
|
+
"sections": [
|
|
82741
|
+
{
|
|
82742
|
+
"title": "PayPal Trigger node",
|
|
82743
|
+
"level": 1,
|
|
82744
|
+
"content": "[PayPal](https://paypal.com) is a digital payment service that supports online fund transfers that customers can use when shopping online.\n\nCredentials\n\nYou can find authentication information for this node [here](../../credentials/paypal/).\n\nExamples and templates\n\nFor usage examples and templates to help you get started, refer to n8n's [PayPal Trigger integrations](https://n8n.io/integrations/paypal-trigger/) page."
|
|
82745
|
+
}
|
|
82746
|
+
]
|
|
82747
|
+
},
|
|
82748
|
+
"metadata": {
|
|
82749
|
+
"keywords": [
|
|
82750
|
+
"paypal",
|
|
82751
|
+
"trigger",
|
|
82752
|
+
"node"
|
|
82753
|
+
],
|
|
82754
|
+
"useCases": [],
|
|
82755
|
+
"operations": [],
|
|
82756
|
+
"codeExamples": 0,
|
|
82757
|
+
"complexity": "beginner",
|
|
82758
|
+
"readingTime": "1 min",
|
|
82759
|
+
"contentLength": 444,
|
|
82760
|
+
"relatedPages": []
|
|
82761
|
+
},
|
|
82762
|
+
"searchIndex": {
|
|
82763
|
+
"fullText": "paypal trigger # paypal trigger node\n\n[paypal](https://paypal.com) is a digital payment service that supports online fund transfers that customers can use when shopping online.\n\ncredentials\n\nyou can find authentication information for this node [here](../../credentials/paypal/).\n\nexamples and templates\n\nfor usage examples and templates to help you get started, refer to n8n's [paypal trigger integrations](https://n8n.io/integrations/paypal-trigger/) page.\n paypal trigger node",
|
|
82764
|
+
"importantTerms": [
|
|
82765
|
+
"paypal",
|
|
82766
|
+
"trigger",
|
|
82767
|
+
"node"
|
|
82768
|
+
]
|
|
82769
|
+
}
|
|
82770
|
+
},
|
|
82771
|
+
{
|
|
82772
|
+
"id": "page-1116",
|
|
82782
82773
|
"title": "Pipedrive Trigger",
|
|
82783
82774
|
"url": "https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.pipedrivetrigger/index.md",
|
|
82784
82775
|
"urlPath": "integrations/builtin/trigger-nodes/n8n-nodes-base.pipedrivetrigger/index.md",
|
|
@@ -82821,7 +82812,7 @@
|
|
|
82821
82812
|
}
|
|
82822
82813
|
},
|
|
82823
82814
|
{
|
|
82824
|
-
"id": "page-
|
|
82815
|
+
"id": "page-1117",
|
|
82825
82816
|
"title": "Postgres Trigger",
|
|
82826
82817
|
"url": "https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.postgrestrigger/index.md",
|
|
82827
82818
|
"urlPath": "integrations/builtin/trigger-nodes/n8n-nodes-base.postgrestrigger/index.md",
|
|
@@ -82875,49 +82866,6 @@
|
|
|
82875
82866
|
]
|
|
82876
82867
|
}
|
|
82877
82868
|
},
|
|
82878
|
-
{
|
|
82879
|
-
"id": "page-1117",
|
|
82880
|
-
"title": "PayPal Trigger",
|
|
82881
|
-
"url": "https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.paypaltrigger/index.md",
|
|
82882
|
-
"urlPath": "integrations/builtin/trigger-nodes/n8n-nodes-base.paypaltrigger/index.md",
|
|
82883
|
-
"category": "trigger-nodes",
|
|
82884
|
-
"subcategory": null,
|
|
82885
|
-
"nodeName": "paypaltrigger",
|
|
82886
|
-
"nodeType": "n8n-nodes-base.paypaltrigger",
|
|
82887
|
-
"content": {
|
|
82888
|
-
"markdown": "# PayPal Trigger node\n\n[PayPal](https://paypal.com) is a digital payment service that supports online fund transfers that customers can use when shopping online.\n\nCredentials\n\nYou can find authentication information for this node [here](../../credentials/paypal/).\n\nExamples and templates\n\nFor usage examples and templates to help you get started, refer to n8n's [PayPal Trigger integrations](https://n8n.io/integrations/paypal-trigger/) page.\n",
|
|
82889
|
-
"excerpt": "# PayPal Trigger node [PayPal](https://paypal.com) is a digital payment service that supports online fund transfers that customers can use when shopping online. Credentials You can find authentication information for this node [here](../../credentials/paypal/). Examples and templates For usage examples and templates to help you get started, refer to n8n's [PayPal Trigger integrations](https://n8n.io/integrations/paypal-trigger/) page....",
|
|
82890
|
-
"sections": [
|
|
82891
|
-
{
|
|
82892
|
-
"title": "PayPal Trigger node",
|
|
82893
|
-
"level": 1,
|
|
82894
|
-
"content": "[PayPal](https://paypal.com) is a digital payment service that supports online fund transfers that customers can use when shopping online.\n\nCredentials\n\nYou can find authentication information for this node [here](../../credentials/paypal/).\n\nExamples and templates\n\nFor usage examples and templates to help you get started, refer to n8n's [PayPal Trigger integrations](https://n8n.io/integrations/paypal-trigger/) page."
|
|
82895
|
-
}
|
|
82896
|
-
]
|
|
82897
|
-
},
|
|
82898
|
-
"metadata": {
|
|
82899
|
-
"keywords": [
|
|
82900
|
-
"paypal",
|
|
82901
|
-
"trigger",
|
|
82902
|
-
"node"
|
|
82903
|
-
],
|
|
82904
|
-
"useCases": [],
|
|
82905
|
-
"operations": [],
|
|
82906
|
-
"codeExamples": 0,
|
|
82907
|
-
"complexity": "beginner",
|
|
82908
|
-
"readingTime": "1 min",
|
|
82909
|
-
"contentLength": 444,
|
|
82910
|
-
"relatedPages": []
|
|
82911
|
-
},
|
|
82912
|
-
"searchIndex": {
|
|
82913
|
-
"fullText": "paypal trigger # paypal trigger node\n\n[paypal](https://paypal.com) is a digital payment service that supports online fund transfers that customers can use when shopping online.\n\ncredentials\n\nyou can find authentication information for this node [here](../../credentials/paypal/).\n\nexamples and templates\n\nfor usage examples and templates to help you get started, refer to n8n's [paypal trigger integrations](https://n8n.io/integrations/paypal-trigger/) page.\n paypal trigger node",
|
|
82914
|
-
"importantTerms": [
|
|
82915
|
-
"paypal",
|
|
82916
|
-
"trigger",
|
|
82917
|
-
"node"
|
|
82918
|
-
]
|
|
82919
|
-
}
|
|
82920
|
-
},
|
|
82921
82869
|
{
|
|
82922
82870
|
"id": "page-1118",
|
|
82923
82871
|
"title": "Postmark Trigger",
|
|
@@ -90275,65 +90223,6 @@
|
|
|
90275
90223
|
},
|
|
90276
90224
|
{
|
|
90277
90225
|
"id": "page-1226",
|
|
90278
|
-
"title": "Source control and environments",
|
|
90279
|
-
"url": "https://docs.n8n.io/source-control-environments/index.md",
|
|
90280
|
-
"urlPath": "source-control-environments/index.md",
|
|
90281
|
-
"category": "other",
|
|
90282
|
-
"subcategory": null,
|
|
90283
|
-
"nodeName": null,
|
|
90284
|
-
"nodeType": null,
|
|
90285
|
-
"content": {
|
|
90286
|
-
"markdown": "# Source control and environments\n\nFeature availability\n\n- Available on Business and Enterprise plans.\n- You must be an n8n instance owner or instance admin to enable and configure source control.\n- Instance owners and instance admins can push changes to and pull changes from the connected repository.\n- Project admins can push changes to the connected repository. They can't pull changes from the repository.\n\nn8n uses Git-based source control to support environments. Linking your n8n instances to a Git repository lets you create multiple n8n environments, backed by Git branches.\n\nIn this section:\n\n- [Understand](understand/):\n - [Environments in n8n](understand/environments/): The purpose of environments, and how they work in n8n.\n - [Git and n8n](understand/git/): How n8n uses Git.\n - [Branch patterns](understand/patterns/): The possible relationships between n8n instances and Git branches.\n- [Set up source control for environments](setup/): How to connect your n8n instance to Git.\n- [Using](using/):\n - [Push and pull](using/push-pull/): Send work to Git, and fetch work from Git to your instance.\n - [Copy work between environments](using/copy-work/): How to copy work between different n8n instances.\n- [Tutorial: Create environments with source control](create-environments/): An end-to-end tutorial, setting up environments using n8n's recommended configurations.\n\nRelated sections:\n\n- [Variables](../code/variables/): reusable values.\n- [External secrets](../external-secrets/): manage [credentials](../glossary/#credential-n8n) with an external secrets vault.\n",
|
|
90287
|
-
"excerpt": "# Source control and environments Feature availability - Available on Business and Enterprise plans. - You must be an n8n instance owner or instance admin to enable and configure source control. - Instance owners and instance admins can push changes to and pull changes from the connected repository. - Project admins can push changes to the connected repository. They can't pull changes from the repository. n8n uses Git-based source control to support environments. Linking your n8n instances to...",
|
|
90288
|
-
"sections": [
|
|
90289
|
-
{
|
|
90290
|
-
"title": "Source control and environments",
|
|
90291
|
-
"level": 1,
|
|
90292
|
-
"content": "Feature availability\n\n- Available on Business and Enterprise plans.\n- You must be an n8n instance owner or instance admin to enable and configure source control.\n- Instance owners and instance admins can push changes to and pull changes from the connected repository.\n- Project admins can push changes to the connected repository. They can't pull changes from the repository.\n\nn8n uses Git-based source control to support environments. Linking your n8n instances to a Git repository lets you create multiple n8n environments, backed by Git branches.\n\nIn this section:\n\n- [Understand](understand/):\n - [Environments in n8n](understand/environments/): The purpose of environments, and how they work in n8n.\n - [Git and n8n](understand/git/): How n8n uses Git.\n - [Branch patterns](understand/patterns/): The possible relationships between n8n instances and Git branches.\n- [Set up source control for environments](setup/): How to connect your n8n instance to Git.\n- [Using](using/):\n - [Push and pu"
|
|
90293
|
-
}
|
|
90294
|
-
]
|
|
90295
|
-
},
|
|
90296
|
-
"metadata": {
|
|
90297
|
-
"keywords": [
|
|
90298
|
-
"source",
|
|
90299
|
-
"control",
|
|
90300
|
-
"environments"
|
|
90301
|
-
],
|
|
90302
|
-
"useCases": [],
|
|
90303
|
-
"operations": [],
|
|
90304
|
-
"codeExamples": 0,
|
|
90305
|
-
"complexity": "beginner",
|
|
90306
|
-
"readingTime": "2 min",
|
|
90307
|
-
"contentLength": 1587,
|
|
90308
|
-
"relatedPages": []
|
|
90309
|
-
},
|
|
90310
|
-
"searchIndex": {
|
|
90311
|
-
"fullText": "source control and environments # source control and environments\n\nfeature availability\n\n- available on business and enterprise plans.\n- you must be an n8n instance owner or instance admin to enable and configure source control.\n- instance owners and instance admins can push changes to and pull changes from the connected repository.\n- project admins can push changes to the connected repository. they can't pull changes from the repository.\n\nn8n uses git-based source control to support environments. linking your n8n instances to a git repository lets you create multiple n8n environments, backed by git branches.\n\nin this section:\n\n- [understand](understand/):\n - [environments in n8n](understand/environments/): the purpose of environments, and how they work in n8n.\n - [git and n8n](understand/git/): how n8n uses git.\n - [branch patterns](understand/patterns/): the possible relationships between n8n instances and git branches.\n- [set up source control for environments](setup/): how to connect your n8n instance to git.\n- [using](using/):\n - [push and pull](using/push-pull/): send work to git, and fetch work from git to your instance.\n - [copy work between environments](using/copy-work/): how to copy work between different n8n instances.\n- [tutorial: create environments with source control](create-environments/): an end-to-end tutorial, setting up environments using n8n's recommended configurations.\n\nrelated sections:\n\n- [variables](../code/variables/): reusable values.\n- [external secrets](../external-secrets/): manage [credentials](../glossary/#credential-n8n) with an external secrets vault.\n source control and environments",
|
|
90312
|
-
"importantTerms": [
|
|
90313
|
-
"environments",
|
|
90314
|
-
"source",
|
|
90315
|
-
"control",
|
|
90316
|
-
"instance",
|
|
90317
|
-
"work",
|
|
90318
|
-
"understand",
|
|
90319
|
-
"using",
|
|
90320
|
-
"push",
|
|
90321
|
-
"changes",
|
|
90322
|
-
"pull",
|
|
90323
|
-
"repository",
|
|
90324
|
-
"from",
|
|
90325
|
-
"your",
|
|
90326
|
-
"instances",
|
|
90327
|
-
"create",
|
|
90328
|
-
"between",
|
|
90329
|
-
"copy",
|
|
90330
|
-
"external",
|
|
90331
|
-
"secrets"
|
|
90332
|
-
]
|
|
90333
|
-
}
|
|
90334
|
-
},
|
|
90335
|
-
{
|
|
90336
|
-
"id": "page-1227",
|
|
90337
90226
|
"title": "1.x",
|
|
90338
90227
|
"url": "https://docs.n8n.io/release-notes/1-x/index.md",
|
|
90339
90228
|
"urlPath": "release-notes/1-x/index.md",
|
|
@@ -90709,6 +90598,65 @@
|
|
|
90709
90598
|
]
|
|
90710
90599
|
}
|
|
90711
90600
|
},
|
|
90601
|
+
{
|
|
90602
|
+
"id": "page-1227",
|
|
90603
|
+
"title": "Source control and environments",
|
|
90604
|
+
"url": "https://docs.n8n.io/source-control-environments/index.md",
|
|
90605
|
+
"urlPath": "source-control-environments/index.md",
|
|
90606
|
+
"category": "other",
|
|
90607
|
+
"subcategory": null,
|
|
90608
|
+
"nodeName": null,
|
|
90609
|
+
"nodeType": null,
|
|
90610
|
+
"content": {
|
|
90611
|
+
"markdown": "# Source control and environments\n\nFeature availability\n\n- Available on Business and Enterprise plans.\n- You must be an n8n instance owner or instance admin to enable and configure source control.\n- Instance owners and instance admins can push changes to and pull changes from the connected repository.\n- Project admins can push changes to the connected repository. They can't pull changes from the repository.\n\nn8n uses Git-based source control to support environments. Linking your n8n instances to a Git repository lets you create multiple n8n environments, backed by Git branches.\n\nIn this section:\n\n- [Understand](understand/):\n - [Environments in n8n](understand/environments/): The purpose of environments, and how they work in n8n.\n - [Git and n8n](understand/git/): How n8n uses Git.\n - [Branch patterns](understand/patterns/): The possible relationships between n8n instances and Git branches.\n- [Set up source control for environments](setup/): How to connect your n8n instance to Git.\n- [Using](using/):\n - [Push and pull](using/push-pull/): Send work to Git, and fetch work from Git to your instance.\n - [Copy work between environments](using/copy-work/): How to copy work between different n8n instances.\n- [Tutorial: Create environments with source control](create-environments/): An end-to-end tutorial, setting up environments using n8n's recommended configurations.\n\nRelated sections:\n\n- [Variables](../code/variables/): reusable values.\n- [External secrets](../external-secrets/): manage [credentials](../glossary/#credential-n8n) with an external secrets vault.\n",
|
|
90612
|
+
"excerpt": "# Source control and environments Feature availability - Available on Business and Enterprise plans. - You must be an n8n instance owner or instance admin to enable and configure source control. - Instance owners and instance admins can push changes to and pull changes from the connected repository. - Project admins can push changes to the connected repository. They can't pull changes from the repository. n8n uses Git-based source control to support environments. Linking your n8n instances to...",
|
|
90613
|
+
"sections": [
|
|
90614
|
+
{
|
|
90615
|
+
"title": "Source control and environments",
|
|
90616
|
+
"level": 1,
|
|
90617
|
+
"content": "Feature availability\n\n- Available on Business and Enterprise plans.\n- You must be an n8n instance owner or instance admin to enable and configure source control.\n- Instance owners and instance admins can push changes to and pull changes from the connected repository.\n- Project admins can push changes to the connected repository. They can't pull changes from the repository.\n\nn8n uses Git-based source control to support environments. Linking your n8n instances to a Git repository lets you create multiple n8n environments, backed by Git branches.\n\nIn this section:\n\n- [Understand](understand/):\n - [Environments in n8n](understand/environments/): The purpose of environments, and how they work in n8n.\n - [Git and n8n](understand/git/): How n8n uses Git.\n - [Branch patterns](understand/patterns/): The possible relationships between n8n instances and Git branches.\n- [Set up source control for environments](setup/): How to connect your n8n instance to Git.\n- [Using](using/):\n - [Push and pu"
|
|
90618
|
+
}
|
|
90619
|
+
]
|
|
90620
|
+
},
|
|
90621
|
+
"metadata": {
|
|
90622
|
+
"keywords": [
|
|
90623
|
+
"source",
|
|
90624
|
+
"control",
|
|
90625
|
+
"environments"
|
|
90626
|
+
],
|
|
90627
|
+
"useCases": [],
|
|
90628
|
+
"operations": [],
|
|
90629
|
+
"codeExamples": 0,
|
|
90630
|
+
"complexity": "beginner",
|
|
90631
|
+
"readingTime": "2 min",
|
|
90632
|
+
"contentLength": 1587,
|
|
90633
|
+
"relatedPages": []
|
|
90634
|
+
},
|
|
90635
|
+
"searchIndex": {
|
|
90636
|
+
"fullText": "source control and environments # source control and environments\n\nfeature availability\n\n- available on business and enterprise plans.\n- you must be an n8n instance owner or instance admin to enable and configure source control.\n- instance owners and instance admins can push changes to and pull changes from the connected repository.\n- project admins can push changes to the connected repository. they can't pull changes from the repository.\n\nn8n uses git-based source control to support environments. linking your n8n instances to a git repository lets you create multiple n8n environments, backed by git branches.\n\nin this section:\n\n- [understand](understand/):\n - [environments in n8n](understand/environments/): the purpose of environments, and how they work in n8n.\n - [git and n8n](understand/git/): how n8n uses git.\n - [branch patterns](understand/patterns/): the possible relationships between n8n instances and git branches.\n- [set up source control for environments](setup/): how to connect your n8n instance to git.\n- [using](using/):\n - [push and pull](using/push-pull/): send work to git, and fetch work from git to your instance.\n - [copy work between environments](using/copy-work/): how to copy work between different n8n instances.\n- [tutorial: create environments with source control](create-environments/): an end-to-end tutorial, setting up environments using n8n's recommended configurations.\n\nrelated sections:\n\n- [variables](../code/variables/): reusable values.\n- [external secrets](../external-secrets/): manage [credentials](../glossary/#credential-n8n) with an external secrets vault.\n source control and environments",
|
|
90637
|
+
"importantTerms": [
|
|
90638
|
+
"environments",
|
|
90639
|
+
"source",
|
|
90640
|
+
"control",
|
|
90641
|
+
"instance",
|
|
90642
|
+
"work",
|
|
90643
|
+
"understand",
|
|
90644
|
+
"using",
|
|
90645
|
+
"push",
|
|
90646
|
+
"changes",
|
|
90647
|
+
"pull",
|
|
90648
|
+
"repository",
|
|
90649
|
+
"from",
|
|
90650
|
+
"your",
|
|
90651
|
+
"instances",
|
|
90652
|
+
"create",
|
|
90653
|
+
"between",
|
|
90654
|
+
"copy",
|
|
90655
|
+
"external",
|
|
90656
|
+
"secrets"
|
|
90657
|
+
]
|
|
90658
|
+
}
|
|
90659
|
+
},
|
|
90712
90660
|
{
|
|
90713
90661
|
"id": "page-1228",
|
|
90714
90662
|
"title": "Tutorial: Create environments with source control",
|
|
@@ -94890,7 +94838,7 @@
|
|
|
94890
94838
|
"page-0002",
|
|
94891
94839
|
"page-0012",
|
|
94892
94840
|
"page-1185",
|
|
94893
|
-
"page-
|
|
94841
|
+
"page-1226"
|
|
94894
94842
|
],
|
|
94895
94843
|
"guide": [
|
|
94896
94844
|
"page-0002",
|
|
@@ -94909,7 +94857,7 @@
|
|
|
94909
94857
|
"page-0717",
|
|
94910
94858
|
"page-1188",
|
|
94911
94859
|
"page-1225",
|
|
94912
|
-
"page-
|
|
94860
|
+
"page-1226"
|
|
94913
94861
|
],
|
|
94914
94862
|
"python": [
|
|
94915
94863
|
"page-0002",
|
|
@@ -94917,7 +94865,7 @@
|
|
|
94917
94865
|
"page-0053",
|
|
94918
94866
|
"page-0637",
|
|
94919
94867
|
"page-0717",
|
|
94920
|
-
"page-
|
|
94868
|
+
"page-1226"
|
|
94921
94869
|
],
|
|
94922
94870
|
"support": [
|
|
94923
94871
|
"page-0002",
|
|
@@ -94930,7 +94878,7 @@
|
|
|
94930
94878
|
"page-0603",
|
|
94931
94879
|
"page-0700",
|
|
94932
94880
|
"page-1190",
|
|
94933
|
-
"page-
|
|
94881
|
+
"page-1226"
|
|
94934
94882
|
],
|
|
94935
94883
|
"code": [
|
|
94936
94884
|
"page-0002",
|
|
@@ -94969,7 +94917,7 @@
|
|
|
94969
94917
|
"page-1182",
|
|
94970
94918
|
"page-1188",
|
|
94971
94919
|
"page-1225",
|
|
94972
|
-
"page-
|
|
94920
|
+
"page-1226",
|
|
94973
94921
|
"page-1279"
|
|
94974
94922
|
],
|
|
94975
94923
|
"node": [
|
|
@@ -95605,7 +95553,7 @@
|
|
|
95605
95553
|
"page-1208",
|
|
95606
95554
|
"page-1209",
|
|
95607
95555
|
"page-1225",
|
|
95608
|
-
"page-
|
|
95556
|
+
"page-1226",
|
|
95609
95557
|
"page-1235",
|
|
95610
95558
|
"page-1239",
|
|
95611
95559
|
"page-1240",
|
|
@@ -95631,7 +95579,7 @@
|
|
|
95631
95579
|
"page-0691",
|
|
95632
95580
|
"page-1213",
|
|
95633
95581
|
"page-1225",
|
|
95634
|
-
"page-
|
|
95582
|
+
"page-1226",
|
|
95635
95583
|
"page-1252",
|
|
95636
95584
|
"page-1266",
|
|
95637
95585
|
"page-1277",
|
|
@@ -95671,7 +95619,7 @@
|
|
|
95671
95619
|
"page-0224",
|
|
95672
95620
|
"page-0691",
|
|
95673
95621
|
"page-0727",
|
|
95674
|
-
"page-
|
|
95622
|
+
"page-1226",
|
|
95675
95623
|
"page-1266",
|
|
95676
95624
|
"page-1277",
|
|
95677
95625
|
"page-1278",
|
|
@@ -95725,7 +95673,7 @@
|
|
|
95725
95673
|
"page-0990",
|
|
95726
95674
|
"page-1158",
|
|
95727
95675
|
"page-1216",
|
|
95728
|
-
"page-
|
|
95676
|
+
"page-1226"
|
|
95729
95677
|
],
|
|
95730
95678
|
"breaking": [
|
|
95731
95679
|
"page-0002",
|
|
@@ -95770,7 +95718,7 @@
|
|
|
95770
95718
|
"page-0440",
|
|
95771
95719
|
"page-0894",
|
|
95772
95720
|
"page-1152",
|
|
95773
|
-
"page-
|
|
95721
|
+
"page-1226",
|
|
95774
95722
|
"page-1267"
|
|
95775
95723
|
],
|
|
95776
95724
|
"change": [
|
|
@@ -95800,7 +95748,7 @@
|
|
|
95800
95748
|
],
|
|
95801
95749
|
"removal": [
|
|
95802
95750
|
"page-0002",
|
|
95803
|
-
"page-
|
|
95751
|
+
"page-1226"
|
|
95804
95752
|
],
|
|
95805
95753
|
"entrypoint": [
|
|
95806
95754
|
"page-0002"
|
|
@@ -95863,7 +95811,7 @@
|
|
|
95863
95811
|
"page-1169",
|
|
95864
95812
|
"page-1213",
|
|
95865
95813
|
"page-1225",
|
|
95866
|
-
"page-
|
|
95814
|
+
"page-1226",
|
|
95867
95815
|
"page-1235",
|
|
95868
95816
|
"page-1237",
|
|
95869
95817
|
"page-1239",
|
|
@@ -96003,7 +95951,7 @@
|
|
|
96003
95951
|
"page-1048",
|
|
96004
95952
|
"page-1158",
|
|
96005
95953
|
"page-1225",
|
|
96006
|
-
"page-
|
|
95954
|
+
"page-1226",
|
|
96007
95955
|
"page-1252",
|
|
96008
95956
|
"page-1276",
|
|
96009
95957
|
"page-1279"
|
|
@@ -96060,7 +96008,7 @@
|
|
|
96060
96008
|
"page-1201",
|
|
96061
96009
|
"page-1204",
|
|
96062
96010
|
"page-1225",
|
|
96063
|
-
"page-
|
|
96011
|
+
"page-1226",
|
|
96064
96012
|
"page-1268",
|
|
96065
96013
|
"page-1269",
|
|
96066
96014
|
"page-1275",
|
|
@@ -96082,7 +96030,7 @@
|
|
|
96082
96030
|
"page-0708",
|
|
96083
96031
|
"page-0728",
|
|
96084
96032
|
"page-1162",
|
|
96085
|
-
"page-
|
|
96033
|
+
"page-1226"
|
|
96086
96034
|
],
|
|
96087
96035
|
"transformation": [
|
|
96088
96036
|
"page-0002",
|
|
@@ -96090,14 +96038,14 @@
|
|
|
96090
96038
|
"page-0102",
|
|
96091
96039
|
"page-0103",
|
|
96092
96040
|
"page-0660",
|
|
96093
|
-
"page-
|
|
96041
|
+
"page-1226"
|
|
96094
96042
|
],
|
|
96095
96043
|
"functions": [
|
|
96096
96044
|
"page-0002",
|
|
96097
96045
|
"page-0133",
|
|
96098
96046
|
"page-0153",
|
|
96099
96047
|
"page-0575",
|
|
96100
|
-
"page-
|
|
96048
|
+
"page-1226"
|
|
96101
96049
|
],
|
|
96102
96050
|
"data": [
|
|
96103
96051
|
"page-0002",
|
|
@@ -96184,7 +96132,7 @@
|
|
|
96184
96132
|
"page-1213",
|
|
96185
96133
|
"page-1223",
|
|
96186
96134
|
"page-1225",
|
|
96187
|
-
"page-
|
|
96135
|
+
"page-1226",
|
|
96188
96136
|
"page-1237",
|
|
96189
96137
|
"page-1240",
|
|
96190
96138
|
"page-1252",
|
|
@@ -96205,7 +96153,7 @@
|
|
|
96205
96153
|
"page-0003",
|
|
96206
96154
|
"page-0210",
|
|
96207
96155
|
"page-0240",
|
|
96208
|
-
"page-
|
|
96156
|
+
"page-1226"
|
|
96209
96157
|
],
|
|
96210
96158
|
"deprecated": [
|
|
96211
96159
|
"page-0002",
|
|
@@ -96234,7 +96182,7 @@
|
|
|
96234
96182
|
"page-1182",
|
|
96235
96183
|
"page-1185",
|
|
96236
96184
|
"page-1223",
|
|
96237
|
-
"page-
|
|
96185
|
+
"page-1226"
|
|
96238
96186
|
],
|
|
96239
96187
|
"webhook": [
|
|
96240
96188
|
"page-0002",
|
|
@@ -96259,7 +96207,7 @@
|
|
|
96259
96207
|
"page-1130",
|
|
96260
96208
|
"page-1131",
|
|
96261
96209
|
"page-1164",
|
|
96262
|
-
"page-
|
|
96210
|
+
"page-1226"
|
|
96263
96211
|
],
|
|
96264
96212
|
"tunnel": [
|
|
96265
96213
|
"page-0002",
|
|
@@ -96282,7 +96230,7 @@
|
|
|
96282
96230
|
"page-0540",
|
|
96283
96231
|
"page-0547",
|
|
96284
96232
|
"page-0727",
|
|
96285
|
-
"page-
|
|
96233
|
+
"page-1226",
|
|
96286
96234
|
"page-1253"
|
|
96287
96235
|
],
|
|
96288
96236
|
"updating": [
|
|
@@ -96502,7 +96450,7 @@
|
|
|
96502
96450
|
"page-1172",
|
|
96503
96451
|
"page-1173",
|
|
96504
96452
|
"page-1212",
|
|
96505
|
-
"page-
|
|
96453
|
+
"page-1226",
|
|
96506
96454
|
"page-1228",
|
|
96507
96455
|
"page-1240",
|
|
96508
96456
|
"page-1257",
|
|
@@ -96578,7 +96526,7 @@
|
|
|
96578
96526
|
"page-0730",
|
|
96579
96527
|
"page-0733",
|
|
96580
96528
|
"page-1217",
|
|
96581
|
-
"page-
|
|
96529
|
+
"page-1226",
|
|
96582
96530
|
"page-1237",
|
|
96583
96531
|
"page-1253",
|
|
96584
96532
|
"page-1261",
|
|
@@ -96601,7 +96549,7 @@
|
|
|
96601
96549
|
"page-0207",
|
|
96602
96550
|
"page-0210",
|
|
96603
96551
|
"page-0235",
|
|
96604
|
-
"page-
|
|
96552
|
+
"page-1226"
|
|
96605
96553
|
],
|
|
96606
96554
|
"security": [
|
|
96607
96555
|
"page-0003",
|
|
@@ -96623,7 +96571,7 @@
|
|
|
96623
96571
|
"page-1155",
|
|
96624
96572
|
"page-1221",
|
|
96625
96573
|
"page-1225",
|
|
96626
|
-
"page-
|
|
96574
|
+
"page-1226",
|
|
96627
96575
|
"page-1255",
|
|
96628
96576
|
"page-1282"
|
|
96629
96577
|
],
|
|
@@ -96672,7 +96620,7 @@
|
|
|
96672
96620
|
"page-0207",
|
|
96673
96621
|
"page-0208",
|
|
96674
96622
|
"page-0210",
|
|
96675
|
-
"page-
|
|
96623
|
+
"page-0233",
|
|
96676
96624
|
"page-0830",
|
|
96677
96625
|
"page-1009",
|
|
96678
96626
|
"page-1171",
|
|
@@ -96778,7 +96726,7 @@
|
|
|
96778
96726
|
"enforce": [
|
|
96779
96727
|
"page-0003",
|
|
96780
96728
|
"page-0014",
|
|
96781
|
-
"page-
|
|
96729
|
+
"page-1226"
|
|
96782
96730
|
],
|
|
96783
96731
|
"settings": [
|
|
96784
96732
|
"page-0003",
|
|
@@ -96876,20 +96824,20 @@
|
|
|
96876
96824
|
"page-0193",
|
|
96877
96825
|
"page-0228",
|
|
96878
96826
|
"page-0284",
|
|
96879
|
-
"page-
|
|
96827
|
+
"page-1226"
|
|
96880
96828
|
],
|
|
96881
96829
|
"runners": [
|
|
96882
96830
|
"page-0003",
|
|
96883
96831
|
"page-0156",
|
|
96884
96832
|
"page-0193",
|
|
96885
96833
|
"page-0228",
|
|
96886
|
-
"page-
|
|
96834
|
+
"page-1226"
|
|
96887
96835
|
],
|
|
96888
96836
|
"runner": [
|
|
96889
96837
|
"page-0003",
|
|
96890
96838
|
"page-0156",
|
|
96891
96839
|
"page-0193",
|
|
96892
|
-
"page-
|
|
96840
|
+
"page-1226"
|
|
96893
96841
|
],
|
|
96894
96842
|
"`n8nio/n8n`": [
|
|
96895
96843
|
"page-0003"
|
|
@@ -96944,7 +96892,7 @@
|
|
|
96944
96892
|
"page-1182",
|
|
96945
96893
|
"page-1191",
|
|
96946
96894
|
"page-1192",
|
|
96947
|
-
"page-
|
|
96895
|
+
"page-1226"
|
|
96948
96896
|
],
|
|
96949
96897
|
"disable": [
|
|
96950
96898
|
"page-0003",
|
|
@@ -97300,7 +97248,7 @@
|
|
|
97300
97248
|
"page-1177",
|
|
97301
97249
|
"page-1180",
|
|
97302
97250
|
"page-1225",
|
|
97303
|
-
"page-
|
|
97251
|
+
"page-1226",
|
|
97304
97252
|
"page-1229",
|
|
97305
97253
|
"page-1247"
|
|
97306
97254
|
],
|
|
@@ -97316,7 +97264,7 @@
|
|
|
97316
97264
|
"page-1047",
|
|
97317
97265
|
"page-1048",
|
|
97318
97266
|
"page-1191",
|
|
97319
|
-
"page-
|
|
97267
|
+
"page-1226"
|
|
97320
97268
|
],
|
|
97321
97269
|
"callback": [
|
|
97322
97270
|
"page-0003",
|
|
@@ -97357,7 +97305,7 @@
|
|
|
97357
97305
|
"page-0003",
|
|
97358
97306
|
"page-0100",
|
|
97359
97307
|
"page-1190",
|
|
97360
|
-
"page-
|
|
97308
|
+
"page-1226"
|
|
97361
97309
|
],
|
|
97362
97310
|
"mysql/mariadb": [
|
|
97363
97311
|
"page-0003"
|
|
@@ -97397,7 +97345,7 @@
|
|
|
97397
97345
|
"page-0666",
|
|
97398
97346
|
"page-0713",
|
|
97399
97347
|
"page-1213",
|
|
97400
|
-
"page-
|
|
97348
|
+
"page-1226"
|
|
97401
97349
|
],
|
|
97402
97350
|
"binary": [
|
|
97403
97351
|
"page-0003",
|
|
@@ -97413,7 +97361,7 @@
|
|
|
97413
97361
|
"page-0703",
|
|
97414
97362
|
"page-0725",
|
|
97415
97363
|
"page-1205",
|
|
97416
|
-
"page-
|
|
97364
|
+
"page-1226"
|
|
97417
97365
|
],
|
|
97418
97366
|
"configuration": [
|
|
97419
97367
|
"page-0003",
|
|
@@ -97460,7 +97408,7 @@
|
|
|
97460
97408
|
],
|
|
97461
97409
|
"`n8n": [
|
|
97462
97410
|
"page-0003",
|
|
97463
|
-
"page-
|
|
97411
|
+
"page-1226"
|
|
97464
97412
|
],
|
|
97465
97413
|
"tunnel`": [
|
|
97466
97414
|
"page-0003"
|
|
@@ -97479,7 +97427,7 @@
|
|
|
97479
97427
|
"page-0218",
|
|
97480
97428
|
"page-0224",
|
|
97481
97429
|
"page-1216",
|
|
97482
|
-
"page-
|
|
97430
|
+
"page-1226"
|
|
97483
97431
|
],
|
|
97484
97432
|
"worker": [
|
|
97485
97433
|
"page-0003",
|
|
@@ -97517,7 +97465,7 @@
|
|
|
97517
97465
|
"page-1183",
|
|
97518
97466
|
"page-1186",
|
|
97519
97467
|
"page-1187",
|
|
97520
|
-
"page-
|
|
97468
|
+
"page-1226"
|
|
97521
97469
|
],
|
|
97522
97470
|
"replace": [
|
|
97523
97471
|
"page-0003",
|
|
@@ -97557,7 +97505,7 @@
|
|
|
97557
97505
|
"page-0717",
|
|
97558
97506
|
"page-0963",
|
|
97559
97507
|
"page-1192",
|
|
97560
|
-
"page-
|
|
97508
|
+
"page-1226",
|
|
97561
97509
|
"page-1253"
|
|
97562
97510
|
],
|
|
97563
97511
|
"hooks": [
|
|
@@ -97574,7 +97522,7 @@
|
|
|
97574
97522
|
"page-0013",
|
|
97575
97523
|
"page-1178",
|
|
97576
97524
|
"page-1225",
|
|
97577
|
-
"page-
|
|
97525
|
+
"page-1226"
|
|
97578
97526
|
],
|
|
97579
97527
|
"channels": [
|
|
97580
97528
|
"page-0003",
|
|
@@ -97812,7 +97760,7 @@
|
|
|
97812
97760
|
"page-1214",
|
|
97813
97761
|
"page-1217",
|
|
97814
97762
|
"page-1220",
|
|
97815
|
-
"page-
|
|
97763
|
+
"page-1226",
|
|
97816
97764
|
"page-1228",
|
|
97817
97765
|
"page-1229",
|
|
97818
97766
|
"page-1232",
|
|
@@ -97850,7 +97798,7 @@
|
|
|
97850
97798
|
"versions": [
|
|
97851
97799
|
"page-0004",
|
|
97852
97800
|
"page-0236",
|
|
97853
|
-
"page-
|
|
97801
|
+
"page-1226",
|
|
97854
97802
|
"page-1264",
|
|
97855
97803
|
"page-1265"
|
|
97856
97804
|
],
|
|
@@ -97864,7 +97812,7 @@
|
|
|
97864
97812
|
"page-0166",
|
|
97865
97813
|
"page-0182",
|
|
97866
97814
|
"page-0210",
|
|
97867
|
-
"page-
|
|
97815
|
+
"page-1226",
|
|
97868
97816
|
"page-1252",
|
|
97869
97817
|
"page-1253"
|
|
97870
97818
|
],
|
|
@@ -97893,7 +97841,7 @@
|
|
|
97893
97841
|
"page-1049",
|
|
97894
97842
|
"page-1177",
|
|
97895
97843
|
"page-1180",
|
|
97896
|
-
"page-
|
|
97844
|
+
"page-1226",
|
|
97897
97845
|
"page-1232",
|
|
97898
97846
|
"page-1249",
|
|
97899
97847
|
"page-1252",
|
|
@@ -97954,7 +97902,7 @@
|
|
|
97954
97902
|
"page-0571",
|
|
97955
97903
|
"page-0630",
|
|
97956
97904
|
"page-0643",
|
|
97957
|
-
"page-
|
|
97905
|
+
"page-1226"
|
|
97958
97906
|
],
|
|
97959
97907
|
"1password": [
|
|
97960
97908
|
"page-0005",
|
|
@@ -97967,7 +97915,7 @@
|
|
|
97967
97915
|
"page-0254",
|
|
97968
97916
|
"page-0617",
|
|
97969
97917
|
"page-1225",
|
|
97970
|
-
"page-
|
|
97918
|
+
"page-1226",
|
|
97971
97919
|
"page-1252"
|
|
97972
97920
|
],
|
|
97973
97921
|
"azure": [
|
|
@@ -97984,13 +97932,13 @@
|
|
|
97984
97932
|
"page-0756",
|
|
97985
97933
|
"page-0757",
|
|
97986
97934
|
"page-0893",
|
|
97987
|
-
"page-
|
|
97935
|
+
"page-1226",
|
|
97988
97936
|
"page-1256"
|
|
97989
97937
|
],
|
|
97990
97938
|
"vault": [
|
|
97991
97939
|
"page-0005",
|
|
97992
97940
|
"page-0166",
|
|
97993
|
-
"page-
|
|
97941
|
+
"page-1226",
|
|
97994
97942
|
"page-1252"
|
|
97995
97943
|
],
|
|
97996
97944
|
"hashicorp": [
|
|
@@ -98033,7 +97981,7 @@
|
|
|
98033
97981
|
"page-0679",
|
|
98034
97982
|
"page-0680",
|
|
98035
97983
|
"page-0722",
|
|
98036
|
-
"page-
|
|
97984
|
+
"page-1226",
|
|
98037
97985
|
"page-1284"
|
|
98038
97986
|
],
|
|
98039
97987
|
"\"secret/\"": [
|
|
@@ -98387,7 +98335,7 @@
|
|
|
98387
98335
|
"page-1191",
|
|
98388
98336
|
"page-1205",
|
|
98389
98337
|
"page-1209",
|
|
98390
|
-
"page-
|
|
98338
|
+
"page-1226",
|
|
98391
98339
|
"page-1240",
|
|
98392
98340
|
"page-1253",
|
|
98393
98341
|
"page-1267"
|
|
@@ -98789,7 +98737,7 @@
|
|
|
98789
98737
|
"page-0210",
|
|
98790
98738
|
"page-0213",
|
|
98791
98739
|
"page-0224",
|
|
98792
|
-
"page-
|
|
98740
|
+
"page-0233",
|
|
98793
98741
|
"page-0249",
|
|
98794
98742
|
"page-0441",
|
|
98795
98743
|
"page-0532",
|
|
@@ -98813,7 +98761,7 @@
|
|
|
98813
98761
|
"page-1169",
|
|
98814
98762
|
"page-1173",
|
|
98815
98763
|
"page-1191",
|
|
98816
|
-
"page-
|
|
98764
|
+
"page-1226",
|
|
98817
98765
|
"page-1228",
|
|
98818
98766
|
"page-1235",
|
|
98819
98767
|
"page-1240",
|
|
@@ -98835,13 +98783,13 @@
|
|
|
98835
98783
|
"page-0005",
|
|
98836
98784
|
"page-0044",
|
|
98837
98785
|
"page-0050",
|
|
98838
|
-
"page-
|
|
98786
|
+
"page-1226",
|
|
98839
98787
|
"page-1253"
|
|
98840
98788
|
],
|
|
98841
98789
|
"roles": [
|
|
98842
98790
|
"page-0005",
|
|
98843
98791
|
"page-0013",
|
|
98844
|
-
"page-
|
|
98792
|
+
"page-1226",
|
|
98845
98793
|
"page-1249",
|
|
98846
98794
|
"page-1252",
|
|
98847
98795
|
"page-1256",
|
|
@@ -98930,7 +98878,7 @@
|
|
|
98930
98878
|
"page-0635",
|
|
98931
98879
|
"page-0734",
|
|
98932
98880
|
"page-0892",
|
|
98933
|
-
"page-
|
|
98881
|
+
"page-1226"
|
|
98934
98882
|
],
|
|
98935
98883
|
"chain": [
|
|
98936
98884
|
"page-0006",
|
|
@@ -98991,13 +98939,13 @@
|
|
|
98991
98939
|
"page-0571",
|
|
98992
98940
|
"page-0630",
|
|
98993
98941
|
"page-0643",
|
|
98994
|
-
"page-
|
|
98942
|
+
"page-1226"
|
|
98995
98943
|
],
|
|
98996
98944
|
"canvas": [
|
|
98997
98945
|
"page-0006",
|
|
98998
98946
|
"page-0008",
|
|
98999
98947
|
"page-0073",
|
|
99000
|
-
"page-
|
|
98948
|
+
"page-1226"
|
|
99001
98949
|
],
|
|
99002
98950
|
"(n8n)": [
|
|
99003
98951
|
"page-0006"
|
|
@@ -99040,7 +98988,7 @@
|
|
|
99040
98988
|
"page-1057",
|
|
99041
98989
|
"page-1177",
|
|
99042
98990
|
"page-1225",
|
|
99043
|
-
"page-
|
|
98991
|
+
"page-1226",
|
|
99044
98992
|
"page-1237",
|
|
99045
98993
|
"page-1252"
|
|
99046
98994
|
],
|
|
@@ -99072,7 +99020,7 @@
|
|
|
99072
99020
|
"page-0026",
|
|
99073
99021
|
"page-0670",
|
|
99074
99022
|
"page-0671",
|
|
99075
|
-
"page-
|
|
99023
|
+
"page-1226"
|
|
99076
99024
|
],
|
|
99077
99025
|
"langchain": [
|
|
99078
99026
|
"page-0006",
|
|
@@ -99081,7 +99029,7 @@
|
|
|
99081
99029
|
"page-0042",
|
|
99082
99030
|
"page-0057",
|
|
99083
99031
|
"page-0556",
|
|
99084
|
-
"page-
|
|
99032
|
+
"page-1226"
|
|
99085
99033
|
],
|
|
99086
99034
|
"large": [
|
|
99087
99035
|
"page-0006",
|
|
@@ -99138,7 +99086,7 @@
|
|
|
99138
99086
|
"page-0651",
|
|
99139
99087
|
"page-0652",
|
|
99140
99088
|
"page-1133",
|
|
99141
|
-
"page-
|
|
99089
|
+
"page-1226"
|
|
99142
99090
|
],
|
|
99143
99091
|
"(llm)": [
|
|
99144
99092
|
"page-0006"
|
|
@@ -99161,7 +99109,7 @@
|
|
|
99161
99109
|
"page-0576",
|
|
99162
99110
|
"page-0577",
|
|
99163
99111
|
"page-0682",
|
|
99164
|
-
"page-
|
|
99112
|
+
"page-1226",
|
|
99165
99113
|
"page-1239"
|
|
99166
99114
|
],
|
|
99167
99115
|
"trigger": [
|
|
@@ -99308,30 +99256,30 @@
|
|
|
99308
99256
|
"page-1204",
|
|
99309
99257
|
"page-1205",
|
|
99310
99258
|
"page-1225",
|
|
99311
|
-
"page-
|
|
99259
|
+
"page-1226",
|
|
99312
99260
|
"page-1240"
|
|
99313
99261
|
],
|
|
99314
99262
|
"insights": [
|
|
99315
99263
|
"page-0007",
|
|
99316
99264
|
"page-0047",
|
|
99317
99265
|
"page-0183",
|
|
99318
|
-
"page-
|
|
99266
|
+
"page-1226"
|
|
99319
99267
|
],
|
|
99320
99268
|
"summary": [
|
|
99321
99269
|
"page-0007",
|
|
99322
99270
|
"page-0073",
|
|
99323
99271
|
"page-0074",
|
|
99324
|
-
"page-
|
|
99272
|
+
"page-1226",
|
|
99325
99273
|
"page-1235"
|
|
99326
99274
|
],
|
|
99327
99275
|
"banner": [
|
|
99328
99276
|
"page-0007",
|
|
99329
|
-
"page-
|
|
99277
|
+
"page-1226"
|
|
99330
99278
|
],
|
|
99331
99279
|
"dashboard": [
|
|
99332
99280
|
"page-0007",
|
|
99333
99281
|
"page-1212",
|
|
99334
|
-
"page-
|
|
99282
|
+
"page-1226"
|
|
99335
99283
|
],
|
|
99336
99284
|
"time": [
|
|
99337
99285
|
"page-0007",
|
|
@@ -99346,7 +99294,7 @@
|
|
|
99346
99294
|
"page-1162",
|
|
99347
99295
|
"page-1166",
|
|
99348
99296
|
"page-1201",
|
|
99349
|
-
"page-
|
|
99297
|
+
"page-1226",
|
|
99350
99298
|
"page-1266"
|
|
99351
99299
|
],
|
|
99352
99300
|
"periods": [
|
|
@@ -99373,7 +99321,7 @@
|
|
|
99373
99321
|
"page-0007",
|
|
99374
99322
|
"page-0013",
|
|
99375
99323
|
"page-0219",
|
|
99376
|
-
"page-
|
|
99324
|
+
"page-1226",
|
|
99377
99325
|
"page-1266"
|
|
99378
99326
|
],
|
|
99379
99327
|
"fixed": [
|
|
@@ -99414,7 +99362,7 @@
|
|
|
99414
99362
|
"page-0224",
|
|
99415
99363
|
"page-0228",
|
|
99416
99364
|
"page-0229",
|
|
99417
|
-
"page-
|
|
99365
|
+
"page-0233",
|
|
99418
99366
|
"page-0816",
|
|
99419
99367
|
"page-0830",
|
|
99420
99368
|
"page-0894",
|
|
@@ -99437,7 +99385,7 @@
|
|
|
99437
99385
|
"page-0168",
|
|
99438
99386
|
"page-0212",
|
|
99439
99387
|
"page-0670",
|
|
99440
|
-
"page-
|
|
99388
|
+
"page-1226"
|
|
99441
99389
|
],
|
|
99442
99390
|
"collection": [
|
|
99443
99391
|
"page-0007",
|
|
@@ -99501,7 +99449,7 @@
|
|
|
99501
99449
|
"page-1172",
|
|
99502
99450
|
"page-1173",
|
|
99503
99451
|
"page-1220",
|
|
99504
|
-
"page-
|
|
99452
|
+
"page-1226",
|
|
99505
99453
|
"page-1265"
|
|
99506
99454
|
],
|
|
99507
99455
|
"insights?": [
|
|
@@ -99543,7 +99491,7 @@
|
|
|
99543
99491
|
"page-0538",
|
|
99544
99492
|
"page-0696",
|
|
99545
99493
|
"page-1160",
|
|
99546
|
-
"page-
|
|
99494
|
+
"page-1226"
|
|
99547
99495
|
],
|
|
99548
99496
|
"selected": [
|
|
99549
99497
|
"page-0008"
|
|
@@ -99564,7 +99512,7 @@
|
|
|
99564
99512
|
"page-0100",
|
|
99565
99513
|
"page-0525",
|
|
99566
99514
|
"page-0727",
|
|
99567
|
-
"page-
|
|
99515
|
+
"page-1226"
|
|
99568
99516
|
],
|
|
99569
99517
|
"learning": [
|
|
99570
99518
|
"page-0009",
|
|
@@ -99607,7 +99555,7 @@
|
|
|
99607
99555
|
"page-1192",
|
|
99608
99556
|
"page-1201",
|
|
99609
99557
|
"page-1225",
|
|
99610
|
-
"page-
|
|
99558
|
+
"page-1226"
|
|
99611
99559
|
],
|
|
99612
99560
|
"structured": [
|
|
99613
99561
|
"page-0009",
|
|
@@ -99662,7 +99610,7 @@
|
|
|
99662
99610
|
"page-0725",
|
|
99663
99611
|
"page-1191",
|
|
99664
99612
|
"page-1205",
|
|
99665
|
-
"page-
|
|
99613
|
+
"page-1226"
|
|
99666
99614
|
],
|
|
99667
99615
|
"self": [
|
|
99668
99616
|
"page-0009",
|
|
@@ -99692,7 +99640,7 @@
|
|
|
99692
99640
|
"page-1223",
|
|
99693
99641
|
"page-1224",
|
|
99694
99642
|
"page-1225",
|
|
99695
|
-
"page-
|
|
99643
|
+
"page-1226",
|
|
99696
99644
|
"page-1243",
|
|
99697
99645
|
"page-1271"
|
|
99698
99646
|
],
|
|
@@ -99785,14 +99733,14 @@
|
|
|
99785
99733
|
"page-0207",
|
|
99786
99734
|
"page-0208",
|
|
99787
99735
|
"page-0210",
|
|
99788
|
-
"page-
|
|
99736
|
+
"page-0233",
|
|
99789
99737
|
"page-0717",
|
|
99790
99738
|
"page-0718",
|
|
99791
99739
|
"page-0730",
|
|
99792
99740
|
"page-1171",
|
|
99793
99741
|
"page-1192",
|
|
99794
99742
|
"page-1225",
|
|
99795
|
-
"page-
|
|
99743
|
+
"page-1226",
|
|
99796
99744
|
"page-1237"
|
|
99797
99745
|
],
|
|
99798
99746
|
"allowlist": [
|
|
@@ -99816,7 +99764,7 @@
|
|
|
99816
99764
|
"page-0972",
|
|
99817
99765
|
"page-1007",
|
|
99818
99766
|
"page-1209",
|
|
99819
|
-
"page-
|
|
99767
|
+
"page-1226"
|
|
99820
99768
|
],
|
|
99821
99769
|
"addresses": [
|
|
99822
99770
|
"page-0010",
|
|
@@ -99878,7 +99826,7 @@
|
|
|
99878
99826
|
"page-1110",
|
|
99879
99827
|
"page-1113",
|
|
99880
99828
|
"page-1114",
|
|
99881
|
-
"page-
|
|
99829
|
+
"page-1117",
|
|
99882
99830
|
"page-1122",
|
|
99883
99831
|
"page-1125",
|
|
99884
99832
|
"page-1126",
|
|
@@ -100277,7 +100225,7 @@
|
|
|
100277
100225
|
"page-1200",
|
|
100278
100226
|
"page-1211",
|
|
100279
100227
|
"page-1219",
|
|
100280
|
-
"page-
|
|
100228
|
+
"page-1226",
|
|
100281
100229
|
"page-1228",
|
|
100282
100230
|
"page-1229",
|
|
100283
100231
|
"page-1247",
|
|
@@ -100339,7 +100287,7 @@
|
|
|
100339
100287
|
"page-0012",
|
|
100340
100288
|
"page-0018",
|
|
100341
100289
|
"page-0582",
|
|
100342
|
-
"page-
|
|
100290
|
+
"page-1226",
|
|
100343
100291
|
"page-1228",
|
|
100344
100292
|
"page-1232",
|
|
100345
100293
|
"page-1236",
|
|
@@ -100353,7 +100301,7 @@
|
|
|
100353
100301
|
"page-0044",
|
|
100354
100302
|
"page-0558",
|
|
100355
100303
|
"page-1225",
|
|
100356
|
-
"page-
|
|
100304
|
+
"page-1226",
|
|
100357
100305
|
"page-1276"
|
|
100358
100306
|
],
|
|
100359
100307
|
"update": [
|
|
@@ -100383,19 +100331,19 @@
|
|
|
100383
100331
|
"page-1180",
|
|
100384
100332
|
"page-1220",
|
|
100385
100333
|
"page-1225",
|
|
100386
|
-
"page-
|
|
100334
|
+
"page-1226"
|
|
100387
100335
|
],
|
|
100388
100336
|
"semantic": [
|
|
100389
100337
|
"page-0013",
|
|
100390
100338
|
"page-1225",
|
|
100391
|
-
"page-
|
|
100339
|
+
"page-1226"
|
|
100392
100340
|
],
|
|
100393
100341
|
"versioning": [
|
|
100394
100342
|
"page-0013",
|
|
100395
100343
|
"page-1187",
|
|
100396
100344
|
"page-1188",
|
|
100397
100345
|
"page-1225",
|
|
100398
|
-
"page-
|
|
100346
|
+
"page-1226"
|
|
100399
100347
|
],
|
|
100400
100348
|
"n8n@2": [
|
|
100401
100349
|
"page-0013"
|
|
@@ -100403,7 +100351,7 @@
|
|
|
100403
100351
|
"contributors": [
|
|
100404
100352
|
"page-0013",
|
|
100405
100353
|
"page-1225",
|
|
100406
|
-
"page-
|
|
100354
|
+
"page-1226"
|
|
100407
100355
|
],
|
|
100408
100356
|
"microsoft": [
|
|
100409
100357
|
"page-0013",
|
|
@@ -100428,7 +100376,7 @@
|
|
|
100428
100376
|
"page-1108",
|
|
100429
100377
|
"page-1109",
|
|
100430
100378
|
"page-1110",
|
|
100431
|
-
"page-
|
|
100379
|
+
"page-1226"
|
|
100432
100380
|
],
|
|
100433
100381
|
"works": [
|
|
100434
100382
|
"page-0013",
|
|
@@ -100453,7 +100401,7 @@
|
|
|
100453
100401
|
"things": [
|
|
100454
100402
|
"page-0013",
|
|
100455
100403
|
"page-0210",
|
|
100456
|
-
"page-
|
|
100404
|
+
"page-1226",
|
|
100457
100405
|
"page-1269"
|
|
100458
100406
|
],
|
|
100459
100407
|
"keep": [
|
|
@@ -100463,12 +100411,12 @@
|
|
|
100463
100411
|
"page-0690",
|
|
100464
100412
|
"page-0700",
|
|
100465
100413
|
"page-0728",
|
|
100466
|
-
"page-
|
|
100414
|
+
"page-1226",
|
|
100467
100415
|
"page-1269"
|
|
100468
100416
|
],
|
|
100469
100417
|
"mind": [
|
|
100470
100418
|
"page-0013",
|
|
100471
|
-
"page-
|
|
100419
|
+
"page-1226",
|
|
100472
100420
|
"page-1269"
|
|
100473
100421
|
],
|
|
100474
100422
|
"visual": [
|
|
@@ -100476,7 +100424,7 @@
|
|
|
100476
100424
|
],
|
|
100477
100425
|
"diff": [
|
|
100478
100426
|
"page-0013",
|
|
100479
|
-
"page-
|
|
100427
|
+
"page-1226",
|
|
100480
100428
|
"page-1235"
|
|
100481
100429
|
],
|
|
100482
100430
|
"comes": [
|
|
@@ -100487,13 +100435,13 @@
|
|
|
100487
100435
|
"page-0148",
|
|
100488
100436
|
"page-0196",
|
|
100489
100437
|
"page-0727",
|
|
100490
|
-
"page-
|
|
100438
|
+
"page-1226",
|
|
100491
100439
|
"page-1264",
|
|
100492
100440
|
"page-1265"
|
|
100493
100441
|
],
|
|
100494
100442
|
"scoped": [
|
|
100495
100443
|
"page-0013",
|
|
100496
|
-
"page-
|
|
100444
|
+
"page-1226"
|
|
100497
100445
|
],
|
|
100498
100446
|
"secrets:": [
|
|
100499
100447
|
"page-0013"
|
|
@@ -100558,7 +100506,7 @@
|
|
|
100558
100506
|
"page-0708",
|
|
100559
100507
|
"page-0734",
|
|
100560
100508
|
"page-0862",
|
|
100561
|
-
"page-
|
|
100509
|
+
"page-1226",
|
|
100562
100510
|
"page-1266"
|
|
100563
100511
|
],
|
|
100564
100512
|
"provider": [
|
|
@@ -100652,7 +100600,7 @@
|
|
|
100652
100600
|
"page-1220",
|
|
100653
100601
|
"page-1223",
|
|
100654
100602
|
"page-1225",
|
|
100655
|
-
"page-
|
|
100603
|
+
"page-1226",
|
|
100656
100604
|
"page-1239",
|
|
100657
100605
|
"page-1244"
|
|
100658
100606
|
],
|
|
@@ -100672,7 +100620,7 @@
|
|
|
100672
100620
|
"page-0891",
|
|
100673
100621
|
"page-0894",
|
|
100674
100622
|
"page-1212",
|
|
100675
|
-
"page-
|
|
100623
|
+
"page-1226",
|
|
100676
100624
|
"page-1254"
|
|
100677
100625
|
],
|
|
100678
100626
|
"execute": [
|
|
@@ -100720,7 +100668,7 @@
|
|
|
100720
100668
|
"page-0723",
|
|
100721
100669
|
"page-0732",
|
|
100722
100670
|
"page-0880",
|
|
100723
|
-
"page-
|
|
100671
|
+
"page-1226",
|
|
100724
100672
|
"page-1228",
|
|
100725
100673
|
"page-1232",
|
|
100726
100674
|
"page-1233",
|
|
@@ -100729,7 +100677,7 @@
|
|
|
100729
100677
|
],
|
|
100730
100678
|
"connections": [
|
|
100731
100679
|
"page-0013",
|
|
100732
|
-
"page-
|
|
100680
|
+
"page-1226",
|
|
100733
100681
|
"page-1274"
|
|
100734
100682
|
],
|
|
100735
100683
|
"performance": [
|
|
@@ -100740,7 +100688,7 @@
|
|
|
100740
100688
|
"improvements": [
|
|
100741
100689
|
"page-0013",
|
|
100742
100690
|
"page-1225",
|
|
100743
|
-
"page-
|
|
100691
|
+
"page-1226"
|
|
100744
100692
|
],
|
|
100745
100693
|
"volumes": [
|
|
100746
100694
|
"page-0013",
|
|
@@ -100773,14 +100721,14 @@
|
|
|
100773
100721
|
"improved": [
|
|
100774
100722
|
"page-0013",
|
|
100775
100723
|
"page-1225",
|
|
100776
|
-
"page-
|
|
100724
|
+
"page-1226"
|
|
100777
100725
|
],
|
|
100778
100726
|
"discoverability": [
|
|
100779
100727
|
"page-0013"
|
|
100780
100728
|
],
|
|
100781
100729
|
"visibility": [
|
|
100782
100730
|
"page-0013",
|
|
100783
|
-
"page-
|
|
100731
|
+
"page-1226"
|
|
100784
100732
|
],
|
|
100785
100733
|
"stronger": [
|
|
100786
100734
|
"page-0013"
|
|
@@ -101060,12 +101008,12 @@
|
|
|
101060
101008
|
"page-0734",
|
|
101061
101009
|
"page-0735",
|
|
101062
101010
|
"page-0960",
|
|
101063
|
-
"page-
|
|
101011
|
+
"page-1226"
|
|
101064
101012
|
],
|
|
101065
101013
|
"node:": [
|
|
101066
101014
|
"page-0013",
|
|
101067
101015
|
"page-1225",
|
|
101068
|
-
"page-
|
|
101016
|
+
"page-1226"
|
|
101069
101017
|
],
|
|
101070
101018
|
"actions": [
|
|
101071
101019
|
"page-0013",
|
|
@@ -101096,7 +101044,7 @@
|
|
|
101096
101044
|
],
|
|
101097
101045
|
"node**": [
|
|
101098
101046
|
"page-0013",
|
|
101099
|
-
"page-
|
|
101047
|
+
"page-1226"
|
|
101100
101048
|
],
|
|
101101
101049
|
"major": [
|
|
101102
101050
|
"page-0013"
|
|
@@ -101116,18 +101064,18 @@
|
|
|
101116
101064
|
],
|
|
101117
101065
|
"updates": [
|
|
101118
101066
|
"page-0013",
|
|
101119
|
-
"page-
|
|
101067
|
+
"page-1226"
|
|
101120
101068
|
],
|
|
101121
101069
|
"factor": [
|
|
101122
101070
|
"page-0014",
|
|
101123
101071
|
"page-0195",
|
|
101124
|
-
"page-
|
|
101072
|
+
"page-1226",
|
|
101125
101073
|
"page-1247"
|
|
101126
101074
|
],
|
|
101127
101075
|
"sharing": [
|
|
101128
101076
|
"page-0014",
|
|
101129
101077
|
"page-1225",
|
|
101130
|
-
"page-
|
|
101078
|
+
"page-1226",
|
|
101131
101079
|
"page-1267"
|
|
101132
101080
|
],
|
|
101133
101081
|
"policy": [
|
|
@@ -101347,7 +101295,7 @@
|
|
|
101347
101295
|
"page-0207",
|
|
101348
101296
|
"page-0213",
|
|
101349
101297
|
"page-1210",
|
|
101350
|
-
"page-
|
|
101298
|
+
"page-1226"
|
|
101351
101299
|
],
|
|
101352
101300
|
"n8n's": [
|
|
101353
101301
|
"page-0015",
|
|
@@ -101364,7 +101312,7 @@
|
|
|
101364
101312
|
"page-0015",
|
|
101365
101313
|
"page-0023",
|
|
101366
101314
|
"page-0219",
|
|
101367
|
-
"page-
|
|
101315
|
+
"page-1226"
|
|
101368
101316
|
],
|
|
101369
101317
|
"power": [
|
|
101370
101318
|
"page-0015",
|
|
@@ -101375,7 +101323,7 @@
|
|
|
101375
101323
|
"page-0052",
|
|
101376
101324
|
"page-1188",
|
|
101377
101325
|
"page-1225",
|
|
101378
|
-
"page-
|
|
101326
|
+
"page-1226"
|
|
101379
101327
|
],
|
|
101380
101328
|
"app?": [
|
|
101381
101329
|
"page-0015"
|
|
@@ -101424,7 +101372,7 @@
|
|
|
101424
101372
|
"page-0210",
|
|
101425
101373
|
"page-1041",
|
|
101426
101374
|
"page-1225",
|
|
101427
|
-
"page-
|
|
101375
|
+
"page-1226",
|
|
101428
101376
|
"page-1239"
|
|
101429
101377
|
],
|
|
101430
101378
|
"create": [
|
|
@@ -101537,7 +101485,7 @@
|
|
|
101537
101485
|
"page-0680",
|
|
101538
101486
|
"page-0708",
|
|
101539
101487
|
"page-1225",
|
|
101540
|
-
"page-
|
|
101488
|
+
"page-1226"
|
|
101541
101489
|
],
|
|
101542
101490
|
"previous": [
|
|
101543
101491
|
"page-0015",
|
|
@@ -101551,7 +101499,7 @@
|
|
|
101551
101499
|
"page-0734",
|
|
101552
101500
|
"page-0735",
|
|
101553
101501
|
"page-1185",
|
|
101554
|
-
"page-
|
|
101502
|
+
"page-1226",
|
|
101555
101503
|
"page-1264",
|
|
101556
101504
|
"page-1278"
|
|
101557
101505
|
],
|
|
@@ -102163,7 +102111,7 @@
|
|
|
102163
102111
|
"page-1110",
|
|
102164
102112
|
"page-1112",
|
|
102165
102113
|
"page-1113",
|
|
102166
|
-
"page-
|
|
102114
|
+
"page-1117",
|
|
102167
102115
|
"page-1120",
|
|
102168
102116
|
"page-1122",
|
|
102169
102117
|
"page-1125",
|
|
@@ -102716,7 +102664,7 @@
|
|
|
102716
102664
|
"page-1110",
|
|
102717
102665
|
"page-1112",
|
|
102718
102666
|
"page-1113",
|
|
102719
|
-
"page-
|
|
102667
|
+
"page-1117",
|
|
102720
102668
|
"page-1120",
|
|
102721
102669
|
"page-1122",
|
|
102722
102670
|
"page-1125",
|
|
@@ -103181,7 +103129,7 @@
|
|
|
103181
103129
|
"page-0729",
|
|
103182
103130
|
"page-0731",
|
|
103183
103131
|
"page-0734",
|
|
103184
|
-
"page-
|
|
103132
|
+
"page-1226",
|
|
103185
103133
|
"page-1271"
|
|
103186
103134
|
],
|
|
103187
103135
|
"widget": [
|
|
@@ -103190,7 +103138,7 @@
|
|
|
103190
103138
|
"builder": [
|
|
103191
103139
|
"page-0018",
|
|
103192
103140
|
"page-0044",
|
|
103193
|
-
"page-
|
|
103141
|
+
"page-1226"
|
|
103194
103142
|
],
|
|
103195
103143
|
"working": [
|
|
103196
103144
|
"page-0018",
|
|
@@ -103201,7 +103149,7 @@
|
|
|
103201
103149
|
"page-0542",
|
|
103202
103150
|
"page-0730",
|
|
103203
103151
|
"page-0880",
|
|
103204
|
-
"page-
|
|
103152
|
+
"page-1226"
|
|
103205
103153
|
],
|
|
103206
103154
|
"commands": [
|
|
103207
103155
|
"page-0018",
|
|
@@ -103232,7 +103180,7 @@
|
|
|
103232
103180
|
"page-1184",
|
|
103233
103181
|
"page-1203",
|
|
103234
103182
|
"page-1225",
|
|
103235
|
-
"page-
|
|
103183
|
+
"page-1226"
|
|
103236
103184
|
],
|
|
103237
103185
|
"overview": [
|
|
103238
103186
|
"page-0019",
|
|
@@ -103312,7 +103260,7 @@
|
|
|
103312
103260
|
"page-1190",
|
|
103313
103261
|
"page-1205",
|
|
103314
103262
|
"page-1225",
|
|
103315
|
-
"page-
|
|
103263
|
+
"page-1226",
|
|
103316
103264
|
"page-1241",
|
|
103317
103265
|
"page-1243",
|
|
103318
103266
|
"page-1244",
|
|
@@ -103372,7 +103320,7 @@
|
|
|
103372
103320
|
"page-0582",
|
|
103373
103321
|
"page-0635",
|
|
103374
103322
|
"page-0649",
|
|
103375
|
-
"page-
|
|
103323
|
+
"page-1226"
|
|
103376
103324
|
],
|
|
103377
103325
|
"step": [
|
|
103378
103326
|
"page-0020",
|
|
@@ -103614,7 +103562,6 @@
|
|
|
103614
103562
|
"page-0022",
|
|
103615
103563
|
"page-0080",
|
|
103616
103564
|
"page-0081",
|
|
103617
|
-
"page-0233",
|
|
103618
103565
|
"page-1278"
|
|
103619
103566
|
],
|
|
103620
103567
|
"querying": [
|
|
@@ -103623,7 +103570,6 @@
|
|
|
103623
103570
|
"directly": [
|
|
103624
103571
|
"page-0022",
|
|
103625
103572
|
"page-0050",
|
|
103626
|
-
"page-0233",
|
|
103627
103573
|
"page-0560",
|
|
103628
103574
|
"page-0561",
|
|
103629
103575
|
"page-0562",
|
|
@@ -103658,7 +103604,7 @@
|
|
|
103658
103604
|
"page-0023",
|
|
103659
103605
|
"page-0024",
|
|
103660
103606
|
"page-0026",
|
|
103661
|
-
"page-
|
|
103607
|
+
"page-1226"
|
|
103662
103608
|
],
|
|
103663
103609
|
"evaluations?": [
|
|
103664
103610
|
"page-0023",
|
|
@@ -103701,7 +103647,7 @@
|
|
|
103701
103647
|
"page-0061",
|
|
103702
103648
|
"page-0556",
|
|
103703
103649
|
"page-0670",
|
|
103704
|
-
"page-
|
|
103650
|
+
"page-1226"
|
|
103705
103651
|
],
|
|
103706
103652
|
"metric": [
|
|
103707
103653
|
"page-0024",
|
|
@@ -103712,7 +103658,7 @@
|
|
|
103712
103658
|
"page-0210",
|
|
103713
103659
|
"page-0224",
|
|
103714
103660
|
"page-1225",
|
|
103715
|
-
"page-
|
|
103661
|
+
"page-1226",
|
|
103716
103662
|
"page-1235",
|
|
103717
103663
|
"page-1264",
|
|
103718
103664
|
"page-1267",
|
|
@@ -103783,7 +103729,7 @@
|
|
|
103783
103729
|
"page-0527",
|
|
103784
103730
|
"page-0648",
|
|
103785
103731
|
"page-0652",
|
|
103786
|
-
"page-
|
|
103732
|
+
"page-1226"
|
|
103787
103733
|
],
|
|
103788
103734
|
"dealing": [
|
|
103789
103735
|
"page-0026",
|
|
@@ -103884,7 +103830,7 @@
|
|
|
103884
103830
|
"page-1161",
|
|
103885
103831
|
"page-1162",
|
|
103886
103832
|
"page-1225",
|
|
103887
|
-
"page-
|
|
103833
|
+
"page-1226"
|
|
103888
103834
|
],
|
|
103889
103835
|
"sheets": [
|
|
103890
103836
|
"page-0029",
|
|
@@ -104398,7 +104344,7 @@
|
|
|
104398
104344
|
"page-0685",
|
|
104399
104345
|
"page-0719",
|
|
104400
104346
|
"page-0754",
|
|
104401
|
-
"page-
|
|
104347
|
+
"page-1226"
|
|
104402
104348
|
],
|
|
104403
104349
|
"embeddings,": [
|
|
104404
104350
|
"page-0036"
|
|
@@ -104678,7 +104624,7 @@
|
|
|
104678
104624
|
"page-0700",
|
|
104679
104625
|
"page-0707",
|
|
104680
104626
|
"page-1191",
|
|
104681
|
-
"page-
|
|
104627
|
+
"page-1226",
|
|
104682
104628
|
"page-1240"
|
|
104683
104629
|
],
|
|
104684
104630
|
"parsers": [
|
|
@@ -104704,7 +104650,7 @@
|
|
|
104704
104650
|
"page-0594",
|
|
104705
104651
|
"page-0595",
|
|
104706
104652
|
"page-0596",
|
|
104707
|
-
"page-
|
|
104653
|
+
"page-1226"
|
|
104708
104654
|
],
|
|
104709
104655
|
"langsmith": [
|
|
104710
104656
|
"page-0041"
|
|
@@ -104719,7 +104665,7 @@
|
|
|
104719
104665
|
"page-0205",
|
|
104720
104666
|
"page-0211",
|
|
104721
104667
|
"page-0718",
|
|
104722
|
-
"page-
|
|
104668
|
+
"page-1226",
|
|
104723
104669
|
"page-1276",
|
|
104724
104670
|
"page-1284"
|
|
104725
104671
|
],
|
|
@@ -104754,7 +104700,7 @@
|
|
|
104754
104700
|
"page-1223",
|
|
104755
104701
|
"page-1224",
|
|
104756
104702
|
"page-1225",
|
|
104757
|
-
"page-
|
|
104703
|
+
"page-1226",
|
|
104758
104704
|
"page-1243",
|
|
104759
104705
|
"page-1271"
|
|
104760
104706
|
],
|
|
@@ -104861,7 +104807,7 @@
|
|
|
104861
104807
|
"page-0963",
|
|
104862
104808
|
"page-1047",
|
|
104863
104809
|
"page-1048",
|
|
104864
|
-
"page-
|
|
104810
|
+
"page-1226"
|
|
104865
104811
|
],
|
|
104866
104812
|
"token": [
|
|
104867
104813
|
"page-0043",
|
|
@@ -104974,7 +104920,7 @@
|
|
|
104974
104920
|
"page-0043",
|
|
104975
104921
|
"page-0050",
|
|
104976
104922
|
"page-0716",
|
|
104977
|
-
"page-
|
|
104923
|
+
"page-1226"
|
|
104978
104924
|
],
|
|
104979
104925
|
"desktop": [
|
|
104980
104926
|
"page-0043",
|
|
@@ -105051,7 +104997,7 @@
|
|
|
105051
104997
|
"page-0204",
|
|
105052
104998
|
"page-0209",
|
|
105053
104999
|
"page-0518",
|
|
105054
|
-
"page-
|
|
105000
|
+
"page-1226"
|
|
105055
105001
|
],
|
|
105056
105002
|
"suggested": [
|
|
105057
105003
|
"page-0044",
|
|
@@ -105063,7 +105009,7 @@
|
|
|
105063
105009
|
],
|
|
105064
105010
|
"archive": [
|
|
105065
105011
|
"page-0044",
|
|
105066
|
-
"page-
|
|
105012
|
+
"page-1226"
|
|
105067
105013
|
],
|
|
105068
105014
|
"tables": [
|
|
105069
105015
|
"page-0044",
|
|
@@ -105071,7 +105017,7 @@
|
|
|
105071
105017
|
"page-0148",
|
|
105072
105018
|
"page-0578",
|
|
105073
105019
|
"page-0722",
|
|
105074
|
-
"page-
|
|
105020
|
+
"page-1226",
|
|
105075
105021
|
"page-1237"
|
|
105076
105022
|
],
|
|
105077
105023
|
"table": [
|
|
@@ -105145,7 +105091,7 @@
|
|
|
105145
105091
|
"page-0917",
|
|
105146
105092
|
"page-1070",
|
|
105147
105093
|
"page-1225",
|
|
105148
|
-
"page-
|
|
105094
|
+
"page-1226"
|
|
105149
105095
|
],
|
|
105150
105096
|
"rest": [
|
|
105151
105097
|
"page-0045",
|
|
@@ -105246,7 +105192,7 @@
|
|
|
105246
105192
|
"page-0048",
|
|
105247
105193
|
"page-0070",
|
|
105248
105194
|
"page-0725",
|
|
105249
|
-
"page-
|
|
105195
|
+
"page-1226"
|
|
105250
105196
|
],
|
|
105251
105197
|
"playground": [
|
|
105252
105198
|
"page-0049",
|
|
@@ -105265,7 +105211,7 @@
|
|
|
105265
105211
|
"page-0717",
|
|
105266
105212
|
"page-1182",
|
|
105267
105213
|
"page-1225",
|
|
105268
|
-
"page-
|
|
105214
|
+
"page-1226"
|
|
105269
105215
|
],
|
|
105270
105216
|
"started": [
|
|
105271
105217
|
"page-0050",
|
|
@@ -105379,7 +105325,7 @@
|
|
|
105379
105325
|
"page-0205",
|
|
105380
105326
|
"page-1191",
|
|
105381
105327
|
"page-1225",
|
|
105382
|
-
"page-
|
|
105328
|
+
"page-1226",
|
|
105383
105329
|
"page-1237"
|
|
105384
105330
|
],
|
|
105385
105331
|
"technical": [
|
|
@@ -105482,7 +105428,7 @@
|
|
|
105482
105428
|
"page-0452",
|
|
105483
105429
|
"page-0978",
|
|
105484
105430
|
"page-1125",
|
|
105485
|
-
"page-
|
|
105431
|
+
"page-1226"
|
|
105486
105432
|
],
|
|
105487
105433
|
"message": [
|
|
105488
105434
|
"page-0052",
|
|
@@ -106333,7 +106279,7 @@
|
|
|
106333
106279
|
"page-0732",
|
|
106334
106280
|
"page-0848",
|
|
106335
106281
|
"page-1185",
|
|
106336
|
-
"page-
|
|
106282
|
+
"page-1226"
|
|
106337
106283
|
],
|
|
106338
106284
|
"requests": [
|
|
106339
106285
|
"page-0053",
|
|
@@ -106494,7 +106440,7 @@
|
|
|
106494
106440
|
"page-0696",
|
|
106495
106441
|
"page-1189",
|
|
106496
106442
|
"page-1225",
|
|
106497
|
-
"page-
|
|
106443
|
+
"page-1226"
|
|
106498
106444
|
],
|
|
106499
106445
|
"`execution`": [
|
|
106500
106446
|
"page-0062"
|
|
@@ -106514,7 +106460,7 @@
|
|
|
106514
106460
|
"page-0210",
|
|
106515
106461
|
"page-0215",
|
|
106516
106462
|
"page-0223",
|
|
106517
|
-
"page-
|
|
106463
|
+
"page-0233",
|
|
106518
106464
|
"page-0618",
|
|
106519
106465
|
"page-0619",
|
|
106520
106466
|
"page-0620",
|
|
@@ -106990,7 +106936,7 @@
|
|
|
106990
106936
|
"page-0731",
|
|
106991
106937
|
"page-1190",
|
|
106992
106938
|
"page-1225",
|
|
106993
|
-
"page-
|
|
106939
|
+
"page-1226"
|
|
106994
106940
|
],
|
|
106995
106941
|
"date,": [
|
|
106996
106942
|
"page-0089"
|
|
@@ -107065,7 +107011,7 @@
|
|
|
107065
107011
|
"page-1090",
|
|
107066
107012
|
"page-1154",
|
|
107067
107013
|
"page-1225",
|
|
107068
|
-
"page-
|
|
107014
|
+
"page-1226"
|
|
107069
107015
|
],
|
|
107070
107016
|
"design": [
|
|
107071
107017
|
"page-0093",
|
|
@@ -107398,7 +107344,7 @@
|
|
|
107398
107344
|
"page-0571",
|
|
107399
107345
|
"page-0676",
|
|
107400
107346
|
"page-1190",
|
|
107401
|
-
"page-
|
|
107347
|
+
"page-1226",
|
|
107402
107348
|
"page-1270",
|
|
107403
107349
|
"page-1278",
|
|
107404
107350
|
"page-1284"
|
|
@@ -107513,7 +107459,7 @@
|
|
|
107513
107459
|
"drag": [
|
|
107514
107460
|
"page-0100",
|
|
107515
107461
|
"page-1190",
|
|
107516
|
-
"page-
|
|
107462
|
+
"page-1226"
|
|
107517
107463
|
],
|
|
107518
107464
|
"nested": [
|
|
107519
107465
|
"page-0100",
|
|
@@ -107571,14 +107517,14 @@
|
|
|
107571
107517
|
"transform": [
|
|
107572
107518
|
"page-0103",
|
|
107573
107519
|
"page-0660",
|
|
107574
|
-
"page-
|
|
107520
|
+
"page-1226"
|
|
107575
107521
|
],
|
|
107576
107522
|
"linked": [
|
|
107577
107523
|
"page-0107"
|
|
107578
107524
|
],
|
|
107579
107525
|
"ways": [
|
|
107580
107526
|
"page-0108",
|
|
107581
|
-
"page-
|
|
107527
|
+
"page-1226"
|
|
107582
107528
|
],
|
|
107583
107529
|
"input": [
|
|
107584
107530
|
"page-0108",
|
|
@@ -107587,7 +107533,7 @@
|
|
|
107587
107533
|
"page-0727",
|
|
107588
107534
|
"page-0728",
|
|
107589
107535
|
"page-0734",
|
|
107590
|
-
"page-
|
|
107536
|
+
"page-1226"
|
|
107591
107537
|
],
|
|
107592
107538
|
"linking": [
|
|
107593
107539
|
"page-0109",
|
|
@@ -108374,7 +108320,7 @@
|
|
|
108374
108320
|
"page-0663",
|
|
108375
108321
|
"page-0682",
|
|
108376
108322
|
"page-1225",
|
|
108377
|
-
"page-
|
|
108323
|
+
"page-1226",
|
|
108378
108324
|
"page-1269"
|
|
108379
108325
|
],
|
|
108380
108326
|
"dates": [
|
|
@@ -108471,7 +108417,7 @@
|
|
|
108471
108417
|
"page-1184",
|
|
108472
108418
|
"page-1191",
|
|
108473
108419
|
"page-1209",
|
|
108474
|
-
"page-
|
|
108420
|
+
"page-1226",
|
|
108475
108421
|
"page-1266"
|
|
108476
108422
|
],
|
|
108477
108423
|
"cause": [
|
|
@@ -108700,7 +108646,7 @@
|
|
|
108700
108646
|
"page-0147",
|
|
108701
108647
|
"page-0210",
|
|
108702
108648
|
"page-1214",
|
|
108703
|
-
"page-
|
|
108649
|
+
"page-1226"
|
|
108704
108650
|
],
|
|
108705
108651
|
"edition": [
|
|
108706
108652
|
"page-0147"
|
|
@@ -108844,7 +108790,7 @@
|
|
|
108844
108790
|
"page-0166",
|
|
108845
108791
|
"page-0191",
|
|
108846
108792
|
"page-1019",
|
|
108847
|
-
"page-
|
|
108793
|
+
"page-1226",
|
|
108848
108794
|
"page-1249",
|
|
108849
108795
|
"page-1250"
|
|
108850
108796
|
],
|
|
@@ -108999,7 +108945,7 @@
|
|
|
108999
108945
|
"page-1223",
|
|
109000
108946
|
"page-1224",
|
|
109001
108947
|
"page-1225",
|
|
109002
|
-
"page-
|
|
108948
|
+
"page-1226",
|
|
109003
108949
|
"page-1244",
|
|
109004
108950
|
"page-1246",
|
|
109005
108951
|
"page-1252",
|
|
@@ -109064,7 +109010,7 @@
|
|
|
109064
109010
|
"endpoints": [
|
|
109065
109011
|
"page-0162",
|
|
109066
109012
|
"page-0178",
|
|
109067
|
-
"page-
|
|
109013
|
+
"page-1226",
|
|
109068
109014
|
"page-1249",
|
|
109069
109015
|
"page-1271"
|
|
109070
109016
|
],
|
|
@@ -109242,20 +109188,20 @@
|
|
|
109242
109188
|
"active": [
|
|
109243
109189
|
"page-0168",
|
|
109244
109190
|
"page-0227",
|
|
109245
|
-
"page-
|
|
109191
|
+
"page-1226"
|
|
109246
109192
|
],
|
|
109247
109193
|
"being": [
|
|
109248
109194
|
"page-0168"
|
|
109249
109195
|
],
|
|
109250
109196
|
"across": [
|
|
109251
109197
|
"page-0168",
|
|
109252
|
-
"page-
|
|
109198
|
+
"page-1226"
|
|
109253
109199
|
],
|
|
109254
109200
|
"workers": [
|
|
109255
109201
|
"page-0168",
|
|
109256
109202
|
"page-0210",
|
|
109257
109203
|
"page-0224",
|
|
109258
|
-
"page-
|
|
109204
|
+
"page-1226"
|
|
109259
109205
|
],
|
|
109260
109206
|
"gauge": [
|
|
109261
109207
|
"page-0168"
|
|
@@ -109277,12 +109223,10 @@
|
|
|
109277
109223
|
],
|
|
109278
109224
|
"reverse": [
|
|
109279
109225
|
"page-0171",
|
|
109280
|
-
"page-0233",
|
|
109281
109226
|
"page-0716"
|
|
109282
109227
|
],
|
|
109283
109228
|
"proxy": [
|
|
109284
109229
|
"page-0171",
|
|
109285
|
-
"page-0233",
|
|
109286
109230
|
"page-0570",
|
|
109287
109231
|
"page-0599",
|
|
109288
109232
|
"page-0600",
|
|
@@ -109323,13 +109267,13 @@
|
|
|
109323
109267
|
"page-0331",
|
|
109324
109268
|
"page-0757",
|
|
109325
109269
|
"page-1225",
|
|
109326
|
-
"page-
|
|
109270
|
+
"page-1226"
|
|
109327
109271
|
],
|
|
109328
109272
|
"logs": [
|
|
109329
109273
|
"page-0185",
|
|
109330
109274
|
"page-0210",
|
|
109331
109275
|
"page-0211",
|
|
109332
|
-
"page-
|
|
109276
|
+
"page-1226"
|
|
109333
109277
|
],
|
|
109334
109278
|
"opentelemetry": [
|
|
109335
109279
|
"page-0187",
|
|
@@ -109444,8 +109388,8 @@
|
|
|
109444
109388
|
"page-0534",
|
|
109445
109389
|
"page-0620",
|
|
109446
109390
|
"page-0941",
|
|
109447
|
-
"page-
|
|
109448
|
-
"page-
|
|
109391
|
+
"page-1117",
|
|
109392
|
+
"page-1226"
|
|
109449
109393
|
],
|
|
109450
109394
|
"volume": [
|
|
109451
109395
|
"page-0202",
|
|
@@ -109559,7 +109503,7 @@
|
|
|
109559
109503
|
"page-0734",
|
|
109560
109504
|
"page-1191",
|
|
109561
109505
|
"page-1209",
|
|
109562
|
-
"page-
|
|
109506
|
+
"page-1226"
|
|
109563
109507
|
],
|
|
109564
109508
|
"subdomain": [
|
|
109565
109509
|
"page-0205",
|
|
@@ -109591,7 +109535,7 @@
|
|
|
109591
109535
|
"page-1177",
|
|
109592
109536
|
"page-1180",
|
|
109593
109537
|
"page-1205",
|
|
109594
|
-
"page-
|
|
109538
|
+
"page-1226"
|
|
109595
109539
|
],
|
|
109596
109540
|
"gets": [
|
|
109597
109541
|
"page-0205",
|
|
@@ -110283,7 +110227,7 @@
|
|
|
110283
110227
|
],
|
|
110284
110228
|
"prune": [
|
|
110285
110229
|
"page-0219",
|
|
110286
|
-
"page-
|
|
110230
|
+
"page-1226"
|
|
110287
110231
|
],
|
|
110288
110232
|
"down": [
|
|
110289
110233
|
"page-0219"
|
|
@@ -110435,7 +110379,7 @@
|
|
|
110435
110379
|
"page-1047",
|
|
110436
110380
|
"page-1048",
|
|
110437
110381
|
"page-1174",
|
|
110438
|
-
"page-
|
|
110382
|
+
"page-1226"
|
|
110439
110383
|
],
|
|
110440
110384
|
"report": [
|
|
110441
110385
|
"page-0232",
|
|
@@ -110444,29 +110388,18 @@
|
|
|
110444
110388
|
"contents": [
|
|
110445
110389
|
"page-0232"
|
|
110446
110390
|
],
|
|
110447
|
-
"(recommended)": [
|
|
110448
|
-
"page-0233",
|
|
110449
|
-
"page-0963"
|
|
110450
|
-
],
|
|
110451
|
-
"pass": [
|
|
110452
|
-
"page-0233",
|
|
110453
|
-
"page-0735"
|
|
110454
|
-
],
|
|
110455
|
-
"certificates": [
|
|
110456
|
-
"page-0233"
|
|
110457
|
-
],
|
|
110458
110391
|
"sign": [
|
|
110459
|
-
"page-
|
|
110392
|
+
"page-0233",
|
|
110460
110393
|
"page-0664",
|
|
110461
110394
|
"page-0684",
|
|
110462
110395
|
"page-1239"
|
|
110463
110396
|
],
|
|
110464
110397
|
"(sso)": [
|
|
110465
|
-
"page-
|
|
110398
|
+
"page-0233"
|
|
110466
110399
|
],
|
|
110467
110400
|
"ranges": [
|
|
110468
110401
|
"page-0235",
|
|
110469
|
-
"page-
|
|
110402
|
+
"page-1226"
|
|
110470
110403
|
],
|
|
110471
110404
|
"collected": [
|
|
110472
110405
|
"page-0236"
|
|
@@ -110902,7 +110835,7 @@
|
|
|
110902
110835
|
"page-0686",
|
|
110903
110836
|
"page-0710",
|
|
110904
110837
|
"page-0816",
|
|
110905
|
-
"page-
|
|
110838
|
+
"page-1226"
|
|
110906
110839
|
],
|
|
110907
110840
|
"retry": [
|
|
110908
110841
|
"page-0242",
|
|
@@ -111410,7 +111343,7 @@
|
|
|
111410
111343
|
"page-1153",
|
|
111411
111344
|
"page-1154",
|
|
111412
111345
|
"page-1155",
|
|
111413
|
-
"page-
|
|
111346
|
+
"page-1226"
|
|
111414
111347
|
],
|
|
111415
111348
|
"graph": [
|
|
111416
111349
|
"page-0311",
|
|
@@ -111459,7 +111392,7 @@
|
|
|
111459
111392
|
"gong": [
|
|
111460
111393
|
"page-0321",
|
|
111461
111394
|
"page-0835",
|
|
111462
|
-
"page-
|
|
111395
|
+
"page-1226"
|
|
111463
111396
|
],
|
|
111464
111397
|
"analytics": [
|
|
111465
111398
|
"page-0323"
|
|
@@ -111495,7 +111428,7 @@
|
|
|
111495
111428
|
"page-0725",
|
|
111496
111429
|
"page-0823",
|
|
111497
111430
|
"page-1085",
|
|
111498
|
-
"page-
|
|
111431
|
+
"page-1226"
|
|
111499
111432
|
],
|
|
111500
111433
|
"firestore": [
|
|
111501
111434
|
"page-0328"
|
|
@@ -111737,7 +111670,7 @@
|
|
|
111737
111670
|
"page-0383",
|
|
111738
111671
|
"page-0756",
|
|
111739
111672
|
"page-0894",
|
|
111740
|
-
"page-
|
|
111673
|
+
"page-1226"
|
|
111741
111674
|
],
|
|
111742
111675
|
"senders": [
|
|
111743
111676
|
"page-0383"
|
|
@@ -111761,7 +111694,7 @@
|
|
|
111761
111694
|
"onedrive": [
|
|
111762
111695
|
"page-0386",
|
|
111763
111696
|
"page-1108",
|
|
111764
|
-
"page-
|
|
111697
|
+
"page-1226"
|
|
111765
111698
|
],
|
|
111766
111699
|
"outlook": [
|
|
111767
111700
|
"page-0387",
|
|
@@ -111771,7 +111704,7 @@
|
|
|
111771
111704
|
"page-1054",
|
|
111772
111705
|
"page-1056",
|
|
111773
111706
|
"page-1109",
|
|
111774
|
-
"page-
|
|
111707
|
+
"page-1226"
|
|
111775
111708
|
],
|
|
111776
111709
|
"sharepoint": [
|
|
111777
111710
|
"page-0388",
|
|
@@ -111794,7 +111727,7 @@
|
|
|
111794
111727
|
"page-0594",
|
|
111795
111728
|
"page-0608",
|
|
111796
111729
|
"page-0902",
|
|
111797
|
-
"page-
|
|
111730
|
+
"page-1226"
|
|
111798
111731
|
],
|
|
111799
111732
|
"mocean": [
|
|
111800
111733
|
"page-0395",
|
|
@@ -111866,7 +111799,7 @@
|
|
|
111866
111799
|
"okta": [
|
|
111867
111800
|
"page-0410",
|
|
111868
111801
|
"page-0921",
|
|
111869
|
-
"page-
|
|
111802
|
+
"page-1226",
|
|
111870
111803
|
"page-1249",
|
|
111871
111804
|
"page-1258"
|
|
111872
111805
|
],
|
|
@@ -111897,7 +111830,7 @@
|
|
|
111897
111830
|
"paypal": [
|
|
111898
111831
|
"page-0418",
|
|
111899
111832
|
"page-0933",
|
|
111900
|
-
"page-
|
|
111833
|
+
"page-1115"
|
|
111901
111834
|
],
|
|
111902
111835
|
"peekalink": [
|
|
111903
111836
|
"page-0419",
|
|
@@ -111914,7 +111847,7 @@
|
|
|
111914
111847
|
"pipedrive": [
|
|
111915
111848
|
"page-0422",
|
|
111916
111849
|
"page-0939",
|
|
111917
|
-
"page-
|
|
111850
|
+
"page-1116"
|
|
111918
111851
|
],
|
|
111919
111852
|
"plivo": [
|
|
111920
111853
|
"page-0423",
|
|
@@ -111991,7 +111924,7 @@
|
|
|
111991
111924
|
"page-0441",
|
|
111992
111925
|
"page-0963",
|
|
111993
111926
|
"page-1122",
|
|
111994
|
-
"page-
|
|
111927
|
+
"page-1226"
|
|
111995
111928
|
],
|
|
111996
111929
|
"salesmate": [
|
|
111997
111930
|
"page-0442",
|
|
@@ -112089,7 +112022,7 @@
|
|
|
112089
112022
|
"page-0999",
|
|
112090
112023
|
"page-1130",
|
|
112091
112024
|
"page-1131",
|
|
112092
|
-
"page-
|
|
112025
|
+
"page-1226"
|
|
112093
112026
|
],
|
|
112094
112027
|
"timescaledb": [
|
|
112095
112028
|
"page-0467",
|
|
@@ -112116,7 +112049,7 @@
|
|
|
112116
112049
|
"page-0472",
|
|
112117
112050
|
"page-1008",
|
|
112118
112051
|
"page-1134",
|
|
112119
|
-
"page-
|
|
112052
|
+
"page-1226"
|
|
112120
112053
|
],
|
|
112121
112054
|
"twist": [
|
|
112122
112055
|
"page-0473",
|
|
@@ -112269,7 +112202,7 @@
|
|
|
112269
112202
|
"page-0499",
|
|
112270
112203
|
"page-0589",
|
|
112271
112204
|
"page-0603",
|
|
112272
|
-
"page-
|
|
112205
|
+
"page-1226"
|
|
112273
112206
|
],
|
|
112274
112207
|
"minimax": [
|
|
112275
112208
|
"page-0500",
|
|
@@ -112317,7 +112250,7 @@
|
|
|
112317
112250
|
"page-0505",
|
|
112318
112251
|
"page-0506",
|
|
112319
112252
|
"page-0802",
|
|
112320
|
-
"page-
|
|
112253
|
+
"page-1226"
|
|
112321
112254
|
],
|
|
112322
112255
|
"embeds": [
|
|
112323
112256
|
"page-0506"
|
|
@@ -112428,7 +112361,7 @@
|
|
|
112428
112361
|
],
|
|
112429
112362
|
"availability": [
|
|
112430
112363
|
"page-0514",
|
|
112431
|
-
"page-
|
|
112364
|
+
"page-1226"
|
|
112432
112365
|
],
|
|
112433
112366
|
"drive": [
|
|
112434
112367
|
"page-0516",
|
|
@@ -112618,14 +112551,14 @@
|
|
|
112618
112551
|
"page-0649",
|
|
112619
112552
|
"page-1062",
|
|
112620
112553
|
"page-1197",
|
|
112621
|
-
"page-
|
|
112554
|
+
"page-1226"
|
|
112622
112555
|
],
|
|
112623
112556
|
"administrators": [
|
|
112624
112557
|
"page-0537"
|
|
112625
112558
|
],
|
|
112626
112559
|
"member": [
|
|
112627
112560
|
"page-0537",
|
|
112628
|
-
"page-
|
|
112561
|
+
"page-1226"
|
|
112629
112562
|
],
|
|
112630
112563
|
"leave": [
|
|
112631
112564
|
"page-0537"
|
|
@@ -112680,7 +112613,7 @@
|
|
|
112680
112613
|
"page-1138",
|
|
112681
112614
|
"page-1154",
|
|
112682
112615
|
"page-1225",
|
|
112683
|
-
"page-
|
|
112616
|
+
"page-1226"
|
|
112684
112617
|
],
|
|
112685
112618
|
"openai": [
|
|
112686
112619
|
"page-0543",
|
|
@@ -112700,7 +112633,7 @@
|
|
|
112700
112633
|
"page-0650",
|
|
112701
112634
|
"page-0756",
|
|
112702
112635
|
"page-0925",
|
|
112703
|
-
"page-
|
|
112636
|
+
"page-1226"
|
|
112704
112637
|
],
|
|
112705
112638
|
"assistants": [
|
|
112706
112639
|
"page-0543",
|
|
@@ -112785,21 +112718,21 @@
|
|
|
112785
112718
|
"information": [
|
|
112786
112719
|
"page-0557",
|
|
112787
112720
|
"page-0667",
|
|
112788
|
-
"page-
|
|
112721
|
+
"page-1226",
|
|
112789
112722
|
"page-1268"
|
|
112790
112723
|
],
|
|
112791
112724
|
"extractor": [
|
|
112792
112725
|
"page-0557",
|
|
112793
|
-
"page-
|
|
112726
|
+
"page-1226"
|
|
112794
112727
|
],
|
|
112795
112728
|
"sentiment": [
|
|
112796
112729
|
"page-0558",
|
|
112797
|
-
"page-
|
|
112730
|
+
"page-1226"
|
|
112798
112731
|
],
|
|
112799
112732
|
"analysis": [
|
|
112800
112733
|
"page-0558",
|
|
112801
112734
|
"page-0853",
|
|
112802
|
-
"page-
|
|
112735
|
+
"page-1226"
|
|
112803
112736
|
],
|
|
112804
112737
|
"temperature": [
|
|
112805
112738
|
"page-0558",
|
|
@@ -112822,7 +112755,7 @@
|
|
|
112822
112755
|
],
|
|
112823
112756
|
"classifier": [
|
|
112824
112757
|
"page-0559",
|
|
112825
|
-
"page-
|
|
112758
|
+
"page-1226"
|
|
112826
112759
|
],
|
|
112827
112760
|
"patterns": [
|
|
112828
112761
|
"page-0560",
|
|
@@ -113019,7 +112952,7 @@
|
|
|
113019
112952
|
],
|
|
113020
112953
|
"pgvector": [
|
|
113021
112954
|
"page-0565",
|
|
113022
|
-
"page-
|
|
112955
|
+
"page-1226"
|
|
113023
112956
|
],
|
|
113024
112957
|
"insert,": [
|
|
113025
112958
|
"page-0566",
|
|
@@ -113040,7 +112973,7 @@
|
|
|
113040
112973
|
"qdrant": [
|
|
113041
112974
|
"page-0567",
|
|
113042
112975
|
"page-0948",
|
|
113043
|
-
"page-
|
|
112976
|
+
"page-1226"
|
|
113044
112977
|
],
|
|
113045
112978
|
"weaviate": [
|
|
113046
112979
|
"page-0570",
|
|
@@ -113051,7 +112984,7 @@
|
|
|
113051
112984
|
"page-0695",
|
|
113052
112985
|
"page-1190",
|
|
113053
112986
|
"page-1205",
|
|
113054
|
-
"page-
|
|
112987
|
+
"page-1226"
|
|
113055
112988
|
],
|
|
113056
112989
|
"hybrid:": [
|
|
113057
112990
|
"page-0570"
|
|
@@ -113067,7 +113000,7 @@
|
|
|
113067
113000
|
],
|
|
113068
113001
|
"alpha": [
|
|
113069
113002
|
"page-0570",
|
|
113070
|
-
"page-
|
|
113003
|
+
"page-1226"
|
|
113071
113004
|
],
|
|
113072
113005
|
"properties": [
|
|
113073
113006
|
"page-0570",
|
|
@@ -113151,7 +113084,7 @@
|
|
|
113151
113084
|
"automatically": [
|
|
113152
113085
|
"page-0579",
|
|
113153
113086
|
"page-1225",
|
|
113154
|
-
"page-
|
|
113087
|
+
"page-1226",
|
|
113155
113088
|
"page-1236",
|
|
113156
113089
|
"page-1262"
|
|
113157
113090
|
],
|
|
@@ -113171,7 +113104,7 @@
|
|
|
113171
113104
|
"page-0696",
|
|
113172
113105
|
"page-0731",
|
|
113173
113106
|
"page-1205",
|
|
113174
|
-
"page-
|
|
113107
|
+
"page-1226",
|
|
113175
113108
|
"page-1268"
|
|
113176
113109
|
],
|
|
113177
113110
|
"a365": [
|
|
@@ -113198,7 +113131,7 @@
|
|
|
113198
113131
|
"vertex": [
|
|
113199
113132
|
"page-0591",
|
|
113200
113133
|
"page-0604",
|
|
113201
|
-
"page-
|
|
113134
|
+
"page-1226"
|
|
113202
113135
|
],
|
|
113203
113136
|
"huggingface": [
|
|
113204
113137
|
"page-0592"
|
|
@@ -113220,7 +113153,7 @@
|
|
|
113220
113153
|
"page-0651",
|
|
113221
113154
|
"page-0652",
|
|
113222
113155
|
"page-0922",
|
|
113223
|
-
"page-
|
|
113156
|
+
"page-1226"
|
|
113224
113157
|
],
|
|
113225
113158
|
"deepseek": [
|
|
113226
113159
|
"page-0602",
|
|
@@ -113273,7 +113206,7 @@
|
|
|
113273
113206
|
"groq": [
|
|
113274
113207
|
"page-0605",
|
|
113275
113208
|
"page-0841",
|
|
113276
|
-
"page-
|
|
113209
|
+
"page-1226"
|
|
113277
113210
|
],
|
|
113278
113211
|
"sequences": [
|
|
113279
113212
|
"page-0606",
|
|
@@ -113316,7 +113249,7 @@
|
|
|
113316
113249
|
],
|
|
113317
113250
|
"selector": [
|
|
113318
113251
|
"page-0624",
|
|
113319
|
-
"page-
|
|
113252
|
+
"page-1226"
|
|
113320
113253
|
],
|
|
113321
113254
|
"rules": [
|
|
113322
113255
|
"page-0624",
|
|
@@ -113493,7 +113426,7 @@
|
|
|
113493
113426
|
"debug": [
|
|
113494
113427
|
"page-0666",
|
|
113495
113428
|
"page-1225",
|
|
113496
|
-
"page-
|
|
113429
|
+
"page-1226",
|
|
113497
113430
|
"page-1280"
|
|
113498
113431
|
],
|
|
113499
113432
|
"helper": [
|
|
@@ -113622,7 +113555,7 @@
|
|
|
113622
113555
|
],
|
|
113623
113556
|
"commit": [
|
|
113624
113557
|
"page-0680",
|
|
113625
|
-
"page-
|
|
113558
|
+
"page-1226",
|
|
113626
113559
|
"page-1232"
|
|
113627
113560
|
],
|
|
113628
113561
|
"graphql": [
|
|
@@ -113712,7 +113645,7 @@
|
|
|
113712
113645
|
"schema": [
|
|
113713
113646
|
"page-0691",
|
|
113714
113647
|
"page-1225",
|
|
113715
|
-
"page-
|
|
113648
|
+
"page-1226"
|
|
113716
113649
|
],
|
|
113717
113650
|
"activate,": [
|
|
113718
113651
|
"page-0691"
|
|
@@ -113748,7 +113681,7 @@
|
|
|
113748
113681
|
"feed": [
|
|
113749
113682
|
"page-0698",
|
|
113750
113683
|
"page-0702",
|
|
113751
|
-
"page-
|
|
113684
|
+
"page-1226"
|
|
113752
113685
|
],
|
|
113753
113686
|
"hour": [
|
|
113754
113687
|
"page-0698",
|
|
@@ -113812,7 +113745,7 @@
|
|
|
113812
113745
|
],
|
|
113813
113746
|
"guardrails": [
|
|
113814
113747
|
"page-0714",
|
|
113815
|
-
"page-
|
|
113748
|
+
"page-1226"
|
|
113816
113749
|
],
|
|
113817
113750
|
"customize": [
|
|
113818
113751
|
"page-0714"
|
|
@@ -113939,7 +113872,7 @@
|
|
|
113939
113872
|
"duplicates": [
|
|
113940
113873
|
"page-0727",
|
|
113941
113874
|
"page-0728",
|
|
113942
|
-
"page-
|
|
113875
|
+
"page-1226"
|
|
113943
113876
|
],
|
|
113944
113877
|
"repeated": [
|
|
113945
113878
|
"page-0727"
|
|
@@ -114017,6 +113950,9 @@
|
|
|
114017
113950
|
"click": [
|
|
114018
113951
|
"page-0734"
|
|
114019
113952
|
],
|
|
113953
|
+
"pass": [
|
|
113954
|
+
"page-0735"
|
|
113955
|
+
],
|
|
114020
113956
|
"acuity": [
|
|
114021
113957
|
"page-0739",
|
|
114022
113958
|
"page-1060"
|
|
@@ -114138,7 +114074,7 @@
|
|
|
114138
114074
|
"page-0818",
|
|
114139
114075
|
"page-0874",
|
|
114140
114076
|
"page-1082",
|
|
114141
|
-
"page-
|
|
114077
|
+
"page-1226"
|
|
114142
114078
|
],
|
|
114143
114079
|
"figma": [
|
|
114144
114080
|
"page-0819",
|
|
@@ -114316,6 +114252,9 @@
|
|
|
114316
114252
|
"spaces": [
|
|
114317
114253
|
"page-0962"
|
|
114318
114254
|
],
|
|
114255
|
+
"(recommended)": [
|
|
114256
|
+
"page-0963"
|
|
114257
|
+
],
|
|
114319
114258
|
"(legacy)": [
|
|
114320
114259
|
"page-0963"
|
|
114321
114260
|
],
|
|
@@ -114465,7 +114404,7 @@
|
|
|
114465
114404
|
"https": [
|
|
114466
114405
|
"page-1070",
|
|
114467
114406
|
"page-1164",
|
|
114468
|
-
"page-
|
|
114407
|
+
"page-1226",
|
|
114469
114408
|
"page-1229"
|
|
114470
114409
|
],
|
|
114471
114410
|
"testing": [
|
|
@@ -114478,7 +114417,7 @@
|
|
|
114478
114417
|
],
|
|
114479
114418
|
"(beta)": [
|
|
114480
114419
|
"page-1083",
|
|
114481
|
-
"page-
|
|
114420
|
+
"page-1226"
|
|
114482
114421
|
],
|
|
114483
114422
|
"objects": [
|
|
114484
114423
|
"page-1144",
|
|
@@ -114683,7 +114622,7 @@
|
|
|
114683
114622
|
],
|
|
114684
114623
|
"assignment": [
|
|
114685
114624
|
"page-1190",
|
|
114686
|
-
"page-
|
|
114625
|
+
"page-1226"
|
|
114687
114626
|
],
|
|
114688
114627
|
"(drag": [
|
|
114689
114628
|
"page-1190"
|
|
@@ -114710,7 +114649,7 @@
|
|
|
114710
114649
|
],
|
|
114711
114650
|
"consistency": [
|
|
114712
114651
|
"page-1191",
|
|
114713
|
-
"page-
|
|
114652
|
+
"page-1226"
|
|
114714
114653
|
],
|
|
114715
114654
|
"sorting": [
|
|
114716
114655
|
"page-1191"
|
|
@@ -114718,7 +114657,7 @@
|
|
|
114718
114657
|
"functionality": [
|
|
114719
114658
|
"page-1191",
|
|
114720
114659
|
"page-1225",
|
|
114721
|
-
"page-
|
|
114660
|
+
"page-1226"
|
|
114722
114661
|
],
|
|
114723
114662
|
"deleting": [
|
|
114724
114663
|
"page-1191",
|
|
@@ -114732,7 +114671,7 @@
|
|
|
114732
114671
|
],
|
|
114733
114672
|
"nodes:": [
|
|
114734
114673
|
"page-1191",
|
|
114735
|
-
"page-
|
|
114674
|
+
"page-1226"
|
|
114736
114675
|
],
|
|
114737
114676
|
"'simplify'": [
|
|
114738
114677
|
"page-1191"
|
|
@@ -114773,7 +114712,7 @@
|
|
|
114773
114712
|
],
|
|
114774
114713
|
"general": [
|
|
114775
114714
|
"page-1191",
|
|
114776
|
-
"page-
|
|
114715
|
+
"page-1226",
|
|
114777
114716
|
"page-1282"
|
|
114778
114717
|
],
|
|
114779
114718
|
"philosophy": [
|
|
@@ -114872,7 +114811,7 @@
|
|
|
114872
114811
|
],
|
|
114873
114812
|
"lists": [
|
|
114874
114813
|
"page-1205",
|
|
114875
|
-
"page-
|
|
114814
|
+
"page-1226",
|
|
114876
114815
|
"page-1277"
|
|
114877
114816
|
],
|
|
114878
114817
|
"subtitles": [
|
|
@@ -114923,7 +114862,7 @@
|
|
|
114923
114862
|
],
|
|
114924
114863
|
"show": [
|
|
114925
114864
|
"page-1209",
|
|
114926
|
-
"page-
|
|
114865
|
+
"page-1226"
|
|
114927
114866
|
],
|
|
114928
114867
|
"menu": [
|
|
114929
114868
|
"page-1209",
|
|
@@ -114963,7 +114902,7 @@
|
|
|
114963
114902
|
"trial": [
|
|
114964
114903
|
"page-1214",
|
|
114965
114904
|
"page-1217",
|
|
114966
|
-
"page-
|
|
114905
|
+
"page-1226"
|
|
114967
114906
|
],
|
|
114968
114907
|
"expiration": [
|
|
114969
114908
|
"page-1214"
|
|
@@ -115011,7 +114950,7 @@
|
|
|
115011
114950
|
],
|
|
115012
114951
|
"enhancements": [
|
|
115013
114952
|
"page-1225",
|
|
115014
|
-
"page-
|
|
114953
|
+
"page-1226"
|
|
115015
114954
|
],
|
|
115016
114955
|
"extension": [
|
|
115017
114956
|
"page-1225"
|
|
@@ -115031,11 +114970,11 @@
|
|
|
115031
114970
|
],
|
|
115032
114971
|
"overhaul": [
|
|
115033
114972
|
"page-1225",
|
|
115034
|
-
"page-
|
|
114973
|
+
"page-1226"
|
|
115035
114974
|
],
|
|
115036
114975
|
"experience": [
|
|
115037
114976
|
"page-1225",
|
|
115038
|
-
"page-
|
|
114977
|
+
"page-1226"
|
|
115039
114978
|
],
|
|
115040
114979
|
"contributor": [
|
|
115041
114980
|
"page-1225"
|
|
@@ -115045,31 +114984,31 @@
|
|
|
115045
114984
|
],
|
|
115046
114985
|
"overhauled": [
|
|
115047
114986
|
"page-1225",
|
|
115048
|
-
"page-
|
|
114987
|
+
"page-1226"
|
|
115049
114988
|
],
|
|
115050
114989
|
"redesigned": [
|
|
115051
114990
|
"page-1225"
|
|
115052
114991
|
],
|
|
115053
114992
|
"platform": [
|
|
115054
114993
|
"page-1225",
|
|
115055
|
-
"page-
|
|
114994
|
+
"page-1226"
|
|
115056
114995
|
],
|
|
115057
114996
|
"highlights": [
|
|
115058
114997
|
"page-1225",
|
|
115059
|
-
"page-
|
|
114998
|
+
"page-1226"
|
|
115060
114999
|
],
|
|
115061
115000
|
"sticky": [
|
|
115062
115001
|
"page-1225",
|
|
115063
|
-
"page-
|
|
115002
|
+
"page-1226",
|
|
115064
115003
|
"page-1276"
|
|
115065
115004
|
],
|
|
115066
115005
|
"enhanced": [
|
|
115067
115006
|
"page-1225",
|
|
115068
|
-
"page-
|
|
115007
|
+
"page-1226"
|
|
115069
115008
|
],
|
|
115070
115009
|
"feature:": [
|
|
115071
115010
|
"page-1225",
|
|
115072
|
-
"page-
|
|
115011
|
+
"page-1226"
|
|
115073
115012
|
],
|
|
115074
115013
|
"negative": [
|
|
115075
115014
|
"page-1225"
|
|
@@ -115078,158 +115017,158 @@
|
|
|
115078
115017
|
"page-1225"
|
|
115079
115018
|
],
|
|
115080
115019
|
"n8n@1": [
|
|
115081
|
-
"page-
|
|
115020
|
+
"page-1226"
|
|
115082
115021
|
],
|
|
115083
115022
|
"provisioning": [
|
|
115084
|
-
"page-
|
|
115023
|
+
"page-1226",
|
|
115085
115024
|
"page-1249",
|
|
115086
115025
|
"page-1258",
|
|
115087
115026
|
"page-1259"
|
|
115088
115027
|
],
|
|
115089
115028
|
"critical": [
|
|
115090
|
-
"page-
|
|
115029
|
+
"page-1226"
|
|
115091
115030
|
],
|
|
115092
115031
|
"control:": [
|
|
115093
|
-
"page-
|
|
115032
|
+
"page-1226"
|
|
115094
115033
|
],
|
|
115095
115034
|
"added": [
|
|
115096
|
-
"page-
|
|
115035
|
+
"page-1226"
|
|
115097
115036
|
],
|
|
115098
115037
|
"**no": [
|
|
115099
|
-
"page-
|
|
115038
|
+
"page-1226"
|
|
115100
115039
|
],
|
|
115101
115040
|
"plan**": [
|
|
115102
|
-
"page-
|
|
115041
|
+
"page-1226"
|
|
115103
115042
|
],
|
|
115104
115043
|
"**respond": [
|
|
115105
|
-
"page-
|
|
115044
|
+
"page-1226"
|
|
115106
115045
|
],
|
|
115107
115046
|
"**chat": [
|
|
115108
|
-
"page-
|
|
115047
|
+
"page-1226"
|
|
115109
115048
|
],
|
|
115110
115049
|
"streaming**": [
|
|
115111
|
-
"page-
|
|
115050
|
+
"page-1226"
|
|
115112
115051
|
],
|
|
115113
115052
|
"(openid": [
|
|
115114
|
-
"page-
|
|
115053
|
+
"page-1226"
|
|
115115
115054
|
],
|
|
115116
115055
|
"connect)": [
|
|
115117
|
-
"page-
|
|
115056
|
+
"page-1226"
|
|
115118
115057
|
],
|
|
115119
115058
|
"admins": [
|
|
115120
|
-
"page-
|
|
115059
|
+
"page-1226"
|
|
115121
115060
|
],
|
|
115122
115061
|
"extended": [
|
|
115123
|
-
"page-
|
|
115062
|
+
"page-1226"
|
|
115124
115063
|
],
|
|
115125
115064
|
"assigning": [
|
|
115126
|
-
"page-
|
|
115065
|
+
"page-1226",
|
|
115127
115066
|
"page-1256"
|
|
115128
115067
|
],
|
|
115129
115068
|
"pending": [
|
|
115130
|
-
"page-
|
|
115069
|
+
"page-1226",
|
|
115131
115070
|
"page-1246"
|
|
115132
115071
|
],
|
|
115133
115072
|
"faster": [
|
|
115134
|
-
"page-
|
|
115073
|
+
"page-1226"
|
|
115135
115074
|
],
|
|
115136
115075
|
"partial": [
|
|
115137
|
-
"page-
|
|
115076
|
+
"page-1226",
|
|
115138
115077
|
"page-1283"
|
|
115139
115078
|
],
|
|
115140
115079
|
"breadcrumb": [
|
|
115141
|
-
"page-
|
|
115080
|
+
"page-1226"
|
|
115142
115081
|
],
|
|
115143
115082
|
"protocol": [
|
|
115144
|
-
"page-
|
|
115083
|
+
"page-1226",
|
|
115145
115084
|
"page-1245"
|
|
115146
115085
|
],
|
|
115147
115086
|
"(mcp)": [
|
|
115148
|
-
"page-
|
|
115087
|
+
"page-1226"
|
|
115149
115088
|
],
|
|
115150
115089
|
"preview": [
|
|
115151
|
-
"page-
|
|
115090
|
+
"page-1226"
|
|
115152
115091
|
],
|
|
115153
115092
|
"tidy": [
|
|
115154
|
-
"page-
|
|
115093
|
+
"page-1226"
|
|
115155
115094
|
],
|
|
115156
115095
|
"editing": [
|
|
115157
|
-
"page-
|
|
115096
|
+
"page-1226",
|
|
115158
115097
|
"page-1267"
|
|
115159
115098
|
],
|
|
115160
115099
|
"modal": [
|
|
115161
|
-
"page-
|
|
115100
|
+
"page-1226"
|
|
115162
115101
|
],
|
|
115163
115102
|
"beta": [
|
|
115164
|
-
"page-
|
|
115103
|
+
"page-1226"
|
|
115165
115104
|
],
|
|
115166
115105
|
"debugging": [
|
|
115167
|
-
"page-
|
|
115106
|
+
"page-1226"
|
|
115168
115107
|
],
|
|
115169
115108
|
"collaborators": [
|
|
115170
|
-
"page-
|
|
115109
|
+
"page-1226"
|
|
115171
115110
|
],
|
|
115172
115111
|
"override": [
|
|
115173
|
-
"page-
|
|
115112
|
+
"page-1226"
|
|
115174
115113
|
],
|
|
115175
115114
|
"registry": [
|
|
115176
|
-
"page-
|
|
115115
|
+
"page-1226"
|
|
115177
115116
|
],
|
|
115178
115117
|
"rolling": [
|
|
115179
|
-
"page-
|
|
115118
|
+
"page-1226"
|
|
115180
115119
|
],
|
|
115181
115120
|
"enhancement:": [
|
|
115182
|
-
"page-
|
|
115121
|
+
"page-1226"
|
|
115183
115122
|
],
|
|
115184
115123
|
"methods,": [
|
|
115185
|
-
"page-
|
|
115124
|
+
"page-1226"
|
|
115186
115125
|
],
|
|
115187
115126
|
"role:": [
|
|
115188
|
-
"page-
|
|
115127
|
+
"page-1226"
|
|
115189
115128
|
],
|
|
115190
115129
|
"increased": [
|
|
115191
|
-
"page-
|
|
115130
|
+
"page-1226"
|
|
115192
115131
|
],
|
|
115193
115132
|
"owners": [
|
|
115194
|
-
"page-
|
|
115133
|
+
"page-1226"
|
|
115195
115134
|
],
|
|
115196
115135
|
"avatars": [
|
|
115197
|
-
"page-
|
|
115136
|
+
"page-1226"
|
|
115198
115137
|
],
|
|
115199
115138
|
"creator": [
|
|
115200
|
-
"page-
|
|
115139
|
+
"page-1226"
|
|
115201
115140
|
],
|
|
115202
115141
|
"note": [
|
|
115203
|
-
"page-
|
|
115142
|
+
"page-1226",
|
|
115204
115143
|
"page-1276"
|
|
115205
115144
|
],
|
|
115206
115145
|
"colors": [
|
|
115207
|
-
"page-
|
|
115146
|
+
"page-1226",
|
|
115208
115147
|
"page-1276"
|
|
115209
115148
|
],
|
|
115210
115149
|
"dark": [
|
|
115211
|
-
"page-
|
|
115150
|
+
"page-1226"
|
|
115212
115151
|
],
|
|
115213
115152
|
"supports": [
|
|
115214
|
-
"page-
|
|
115153
|
+
"page-1226"
|
|
115215
115154
|
],
|
|
115216
115155
|
"tournament": [
|
|
115217
|
-
"page-
|
|
115156
|
+
"page-1226"
|
|
115218
115157
|
],
|
|
115219
115158
|
"ttl`": [
|
|
115220
|
-
"page-
|
|
115159
|
+
"page-1226"
|
|
115221
115160
|
],
|
|
115222
115161
|
"`executions": [
|
|
115223
|
-
"page-
|
|
115162
|
+
"page-1226"
|
|
115224
115163
|
],
|
|
115225
115164
|
"timeout`": [
|
|
115226
|
-
"page-
|
|
115165
|
+
"page-1226"
|
|
115227
115166
|
],
|
|
115228
115167
|
"persisted": [
|
|
115229
|
-
"page-
|
|
115168
|
+
"page-1226"
|
|
115230
115169
|
],
|
|
115231
115170
|
"secops": [
|
|
115232
|
-
"page-
|
|
115171
|
+
"page-1226"
|
|
115233
115172
|
],
|
|
115234
115173
|
"pattern": [
|
|
115235
115174
|
"page-1228"
|
|
@@ -116234,7 +116173,6 @@
|
|
|
116234
116173
|
"page-0231",
|
|
116235
116174
|
"page-0232",
|
|
116236
116175
|
"page-0233",
|
|
116237
|
-
"page-0234",
|
|
116238
116176
|
"page-0235",
|
|
116239
116177
|
"page-0236",
|
|
116240
116178
|
"page-0237"
|
|
@@ -117988,13 +117926,13 @@
|
|
|
117988
117926
|
"onfleettrigger": [
|
|
117989
117927
|
"page-1114"
|
|
117990
117928
|
],
|
|
117991
|
-
"
|
|
117929
|
+
"paypaltrigger": [
|
|
117992
117930
|
"page-1115"
|
|
117993
117931
|
],
|
|
117994
|
-
"
|
|
117932
|
+
"pipedrivetrigger": [
|
|
117995
117933
|
"page-1116"
|
|
117996
117934
|
],
|
|
117997
|
-
"
|
|
117935
|
+
"postgrestrigger": [
|
|
117998
117936
|
"page-1117"
|
|
117999
117937
|
],
|
|
118000
117938
|
"postmarktrigger": [
|