# N8N - Llms-Txt

> Here are some common errors and issues with the HTTP Request node and steps to resolve or troubleshoot them.

- Skill: `tools-only/n8n-llms-txt` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add tools-only/n8n-llms-txt`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tools-only/n8n-llms-txt/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tools-only (https://skillmd.com/u/tools-only)
- Updated: 2026-09-29
- Page: https://skillmd.com/skills/tools-only/n8n-llms-txt

---

# N8N - Llms-Txt

**Pages:** 1301

---

## HTTP Request node common issues

**URL:** llms-txt#http-request-node-common-issues

**Contents:**
- Bad request - please check your parameters
- The resource you are requesting could not be found
- JSON parameter need to be an valid JSON
- Forbidden - perhaps check your credentials
- 429 - The service is receiving too many requests from you
  - Batching
  - Retry on Fail

Here are some common errors and issues with the [HTTP Request node](../) and steps to resolve or troubleshoot them.

## Bad request - please check your parameters

This error displays when the node receives a 400 error indicating a bad request. This error most often occurs because:

- You're using an invalid name or value in a **Query Parameter**.
- You're passing array values in a **Query Parameter** but the array isn't formatted correctly. Try using the [**Array Format in Query Parameters**](../#array-format-in-query-parameters) option.

Review the API documentation for your service to format your query parameters.

## The resource you are requesting could not be found

This error displays when the endpoint **URL** you entered is invalid.

This may be due to a typo in the URL or a deprecated API. Refer to your service's API documentation to verify you have a valid endpoint.

## JSON parameter need to be an valid JSON

This error displays when you've passed a parameter as JSON and it's not formatted as valid JSON.

To resolve, review the JSON you've entered for these issues:

- Test your JSON in a JSON checker or syntax parser to find errors like missing quotation marks, extra or missing commas, incorrectly formatted arrays, extra or missing square brackets or curly brackets, and so on.

- If you've used an **Expression** in the node, be sure you've wrapped the entire JSON in double curly brackets, for example:

## Forbidden - perhaps check your credentials

This error displays when the node receives a 403 error indicating authentication failed.

To resolve, review the selected credentials and make sure you can authenticate with them. You may need to:

- Update permissions or scopes so that your API key or account can perform the operation you've selected.
- Format your generic credential in a different way.
- Generate a new API key or token with the appropriate permissions or scopes.

## 429 - The service is receiving too many requests from you

This error displays when the node receives a [429 error](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429) from the service that you're calling. This often means that you have hit the rate limits of that service. You can find out more on the [Handling API rate limits](../../../rate-limits/) page.

To resolve the error, you can use one of the built-in options of the HTTP request node:

Use this option to send requests in batches and introduce a delay between them.

1. In the HTTP Request node, select **Add Option > Batching**.
1. Set **Items per Batch** to the number of input items to include in each request.
1. Set **Batch Interval (ms)** to introduce a delay between requests in milliseconds. For example, to send one request to an API per second, set **Batch Interval (ms)** to `1000`.

Use this option to retry the node after a failed attempt.

1. In the HTTP Request node, go to **Settings** and enable **Retry on Fail**.
1. Set **Max Tries** to the maximum number of times n8n should retry the node.
1. Set **Wait Between Tries (ms)** to the desired delay in milliseconds between retries. For example, to wait one second before retrying the request again, set **Wait Between Tries (ms)** to `1000`.

**Examples:**

Example 1 (unknown):
```unknown
{{
      {
      "myjson":
      {
          "name1": "value1",
          "name2": "value2",
          "array1":
              ["value1","value2"]
      }
      }
  }}
```

---

## JWT credentials

**URL:** llms-txt#jwt-credentials

**Contents:**
- Supported authentication methods
- Related resources
- Using Passphrase
- Using private key (PEM key)
- Available algorithms

You can use these credentials to authenticate the following nodes:

- [JWT](../../core-nodes/n8n-nodes-base.jwt/)
- [Webhook](../../core-nodes/n8n-nodes-base.webhook/)

## Supported authentication methods

- Passphrase: Signed with a secret with HMAC algorithm
- Private key (PEM key): For use with [Private Key JWT](https://auth0.com/docs/get-started/authentication-and-authorization-flow/authenticate-with-private-key-jwt) with RSA or ECDSA algorithm

Refer to the [JSON Web Token spec](https://datatracker.ietf.org/doc/html/rfc7519) for more details.

For a more verbose introduction, refer to the [JWT website Introduction to JSON Web Tokens](https://jwt.io/introduction). Refer to [JSON Web Token (JWT) Signing Algorithms Overview](https://auth0.com/blog/json-web-token-signing-algorithms-overview/) for more information on selecting between the two types and the algorithms involved.

To configure this credential:

1. Select the **Key Type** of **Passphrase**.
1. Enter the Passphrase **Secret**
1. Select the **Algorithm** used to sign the assertion. Refer to [Available algorithms](#available-algorithms) below for a list of supported algorithms.

## Using private key (PEM key)

To configure this credential:

1. Select the **Key Type** of **PEM Key**.
1. A **Private Key**: Obtained from generating a Key Pair. Refer to [Generate RSA Key Pair](https://auth0.com/docs/secure/application-credentials/generate-rsa-key-pair) for an example.
1. A **Public Key**: Obtained from generating a Key Pair. Refer to [Generate RSA Key Pair](https://auth0.com/docs/secure/application-credentials/generate-rsa-key-pair) for an example.
1. Select the **Algorithm** used to sign the assertion. Refer to [Available algorithms](#available-algorithms) below for a list of supported algorithms.

## Available algorithms

This n8n credential supports the following algorithms:

- `HS256`
- `HS384`
- `HS512`
- `RS256`
- `RS384`
- `RS512`
- `ES256`
- `ES384`
- `ES512`
- `PS256`
- `PS384`
- `PS512`
- `none`

---

## White labelling

**URL:** llms-txt#white-labelling

**Contents:**
- Prerequisites
- Theme colors
- Theme logos
- Text localization
  - Window title

Embed requires an embed license. For more information about when to use Embed, as well as costs and licensing processes, refer to [Embed](https://n8n.io/embed/) on the n8n website.

White labelling n8n means customizing the frontend styling and assets to match your brand identity. The process involves changing two packages in n8n's source code [github.com/n8n-io/n8n](https://github.com/n8n-io/n8n):

- [packages/frontend/@n8n/design-system](https://github.com/n8n-io/n8n/tree/master/packages/frontend/@n8n/design-system): n8n's [storybook](https://storybook.js.org/) design system with CSS styles and Vue.js components
- [packages/frontend/editor-ui](https://github.com/n8n-io/n8n/tree/master/packages/frontend/editor-ui): n8n's [Vue.js](https://vuejs.org/) frontend build with [Vite.js](https://vitejs.dev)

You need the following installed on your development machine:

- [git](https://git-scm.com/downloads)
- Node.js and npm. Minimum version Node 18.17.0. You can find instructions on how to install both using nvm (Node Version Manager) for Linux, Mac, and WSL [here](https://github.com/nvm-sh/nvm). For Windows users, refer to Microsoft's guide to [Install NodeJS on Windows](https://docs.microsoft.com/en-us/windows/dev-environment/javascript/nodejs-on-windows).

Create a fork of [n8n's repository](https://github.com/n8n-io/n8n) and clone your new repository.

Install all dependencies, build and start n8n.

Whenever you make changes you need to rebuild and restart n8n. While developing you can use `npm run dev` to automatically rebuild and restart n8n anytime you make code changes.

To customize theme colors open [packages/frontend/@n8n/design-system](https://github.com/n8n-io/n8n/tree/master/packages/frontend/@n8n/design-system) and start with:

- [packages/frontend/@n8n/design-system/src/css/\_tokens.scss](https://github.com/n8n-io/n8n/blob/master/packages/frontend/@n8n/design-system/src/css/_tokens.scss)
- [packages/frontend/@n8n/design-system/src/css/\_tokens.dark.scss](https://github.com/n8n-io/n8n/blob/master/packages/frontend/@n8n/design-system/src/css/_tokens.dark.scss)

At the top of `_tokens.scss` you will find `--color-primary` variables as HSL colors:

In the following example the primary color changes to #0099ff. To convert to HSL you can use a [color converter tool](https://www.w3schools.com/colors/colors_converter.asp).

To change the editor’s logo assets look into [packages/frontend/editor-ui/public](https://github.com/n8n-io/n8n/tree/master/packages/frontend/editor-ui/public) and replace:

- favicon-16x16.png
- favicon-32x32.png
- favicon.ico
- n8n-logo.svg
- n8n-logo-collapsed.svg
- n8n-logo-expanded.svg

Replace these logo assets. n8n uses them in Vue.js components, including:

- [MainSidebar.vue](https://github.com/n8n-io/n8n/blob/master/packages/frontend/editor-ui/src/components/MainSidebar.vue): top/left logo in the main sidebar.
- [Logo.vue](https://github.com/n8n-io/n8n/blob/master/packages/frontend/editor-ui/src/components/Logo/Logo.vue): reused in other components.

In the following example replace `n8n-logo-collapsed.svg` and `n8n-logo-expanded.svg` to update the main sidebar's logo assets.

If your logo assets require different sizing or placement you can customize SCSS styles at the bottom of [MainSidebar.vue](https://github.com/n8n-io/n8n/blob/master/packages/frontend/editor-ui/src/components/MainSidebar.vue).

To change all text occurrences like `n8n` or `n8n.io` to your brand identity you can customize n8n's English internationalization file: [packages/frontend/@n8n/i18n/src/locales/en.json](https://github.com/n8n-io/n8n/blob/master/packages/frontend/@n8n/i18n/src/locales/en.json).

n8n uses the [Vue I18n](https://kazupon.github.io/vue-i18n/) internationalization plugin for Vue.js to translate the majority of UI texts. To search and replace text occurrences inside `en.json` you can use [Linked locale messages](https://kazupon.github.io/vue-i18n/guide/messages.html#linked-locale-messages).

In the following example add the `_brand.name` translation key to white label n8n's [AboutModal.vue](https://github.com/n8n-io/n8n/blob/master/packages/frontend/editor-ui/src/components/AboutModal.vue).

To change n8n's window title to your brand name, edit the following:

- [packages/frontend/editor-ui/index.html](https://github.com/n8n-io/n8n/blob/master/packages/frontend/editor-ui/index.html)
- [packages/frontend/editor-ui/src/composables/useDocumentTitle.ts](https://github.com/n8n-io/n8n/blob/master/packages/frontend/editor-ui/src/composables/useDocumentTitle.ts)

The following example replaces all occurrences of `n8n` and `n8n.io` with `My Brand` in `index.html` and `useDocumentTitle.ts`.

**Examples:**

Example 1 (unknown):
```unknown
git clone https://github.com/<your-organization>/n8n.git n8n
cd n8n
```

Example 2 (unknown):
```unknown
npm install
npm run build
npm run start
```

Example 3 (unknown):
```unknown
@mixin theme {
	--color-primary-h: 6.9;
	--color-primary-s: 100%;
	--color-primary-l: 67.6%;
```

Example 4 (unknown):
```unknown
@mixin theme {
	--color-primary-h: 204;
	--color-primary-s: 100%;
	--color-primary-l: 50%;
```

---

## Vercel AI Gateway Chat Model node

**URL:** llms-txt#vercel-ai-gateway-chat-model-node

**Contents:**
- Node parameters
  - Model
- Node options
  - Frequency Penalty
  - Maximum Number of Tokens
  - Response Format
  - Presence Penalty
  - Sampling Temperature
  - Timeout
  - Max Retries

Use the Vercel AI Gateway Chat Model node to use AI Gateway chat models with conversational agents.

On this page, you'll find the node parameters for the Vercel AI Gateway Chat Model node and links to more resources.

You can find authentication information for this node [here](../../../credentials/vercel/).

Parameter resolution in sub-nodes

Sub-nodes behave differently to other nodes when processing multiple items using an expression.

Most nodes, including root nodes, take any number of items as input, process these items, and output the results. You can use expressions to refer to input items, and the node resolves the expression for each item in turn. For example, given an input of five `name` values, the expression `{{ $json.name }}` resolves to each name in turn.

In sub-nodes, the expression always resolves to the first item. For example, given an input of five `name` values, the expression `{{ $json.name }}` always resolves to the first name.

Select the model to use to generate the completion.

n8n dynamically loads models from the AI Gateway and you'll only see the models available to your account.

Use these options to further refine the node's behavior.

### Frequency Penalty

Use this option to control the chance of the model repeating itself. Higher values reduce the chance of the model repeating itself.

### Maximum Number of Tokens

Enter the maximum number of tokens used, which sets the completion length.

Choose **Text** or **JSON**. **JSON** ensures the model returns valid JSON.

Use this option to control the chance of the model talking about new topics. Higher values increase the chance of the model talking about new topics.

### Sampling Temperature

Use this option to control the randomness of the sampling process. A higher temperature creates more diverse sampling, but increases the risk of hallucinations.

Enter the maximum request time in milliseconds.

Enter the maximum number of times to retry a request.

Use this option to set the probability the completion should use. Use a lower value to ignore less probable options.

## Templates and examples

[Browse Vercel AI Gateway Chat Model integration templates](https://n8n.io/integrations/vercel-ai-gateway-chat-model/), or [search all templates](https://n8n.io/workflows/)

As the Vercel AI Gateway is API-compatible with OpenAI, you can refer to [LangChains's OpenAI documentation](https://js.langchain.com/docs/integrations/chat/openai/) for more information about the service.

View n8n's [Advanced AI](../../../../../advanced-ai/) documentation.

---

## Scaling n8n

**URL:** llms-txt#scaling-n8n

When running n8n at scale, with a large number of users, workflows, or executions, you need to change your n8n configuration to ensure good performance.

n8n can run in different [modes](../queue-mode/) depending on your needs. The `queue` mode provides the best scalability. Refer to [Queue mode](../queue-mode/) for configuration details.

You can configure data saving and pruning to improve database performance. Refer to [Execution data](../execution-data/) for details.

---

## Code node

**URL:** llms-txt#code-node

**Contents:**
- Usage
  - Choose a mode
- JavaScript
  - Supported JavaScript features
  - External libraries
  - Built-in methods and variables
  - Keyboard shortcuts
- Python (Pyodide - legacy)
  - Built-in methods and variables
  - Keyboard shortcuts

Use the Code node to write custom JavaScript or Python and run it as a step in your workflow.

This page gives usage information about the Code node. For more guidance on coding in n8n, refer to the [Code](../../../../code/) section. It includes:

- Reference documentation on [Built-in methods and variables](../../../../code/builtin/overview/)
- Guidance on [Handling dates](../../../../code/cookbook/luxon/) and [Querying JSON](../../../../code/cookbook/jmespath/)
- A growing collection of examples in the [Cookbook](../../../../code/cookbook/code-node/)

Examples and templates

For usage examples and templates to help you get started, refer to n8n's [Code integrations](https://n8n.io/integrations/code/) page.

Function and Function Item nodes

The Code node replaces the Function and Function Item nodes from version 0.198.0. If you're using an older version of n8n, you can still view the [Function node documentation](https://github.com/n8n-io/n8n-docs/blob/67935ad2528e2e30d7984ea917e4af2910a096ec/docs/integrations/builtin/core-nodes/n8n-nodes-base.function.md) and [Function Item node documentation](https://github.com/n8n-io/n8n-docs/blob/67935ad2528e2e30d7984ea917e4af2910a096ec/docs/integrations/builtin/core-nodes/n8n-nodes-base.functionItem.md).

How to use the Code node.

- **Run Once for All Items**: this is the default. When your workflow runs, the code in the code node executes once, regardless of how many input items there are.
- **Run Once for Each Item**: choose this if you want your code to run for every input item.

The Code node supports Node.js.

### Supported JavaScript features

The Code node supports:

- Promises. Instead of returning the items directly, you can return a promise which resolves accordingly.
- Writing to your browser console using `console.log`. This is useful for debugging and troubleshooting your workflows.

### External libraries

If you self-host n8n, you can import and use built-in and external npm modules in the Code node. To learn how to enable external modules, refer to the [Enable modules in Code node](../../../../hosting/configuration/configuration-examples/modules-in-code-node/) guide.

If you use n8n Cloud, you can't import external npm modules. n8n makes two modules available for you:

- [crypto Node.js module](https://nodejs.org/docs/latest-v18.x/api/crypto.html)
- [moment npm package](https://www.npmjs.com/package/moment)

### Built-in methods and variables

n8n provides built-in methods and variables for working with data and accessing n8n data. Refer to [Built-in methods and variables](../../../../code/builtin/overview/) for more information.

The syntax to use the built-in methods and variables is `$variableName` or `$methodName()`. Type `$` in the Code node or expressions editor to see a list of suggested methods and variables.

### Keyboard shortcuts

The Code node editing environment supports time-saving and useful keyboard shortcuts for a range of operations from autocompletion to code-folding and using multiple-cursors. See the full list of [keyboard shortcuts](keyboard-shortcuts/).

## Python (Pyodide - legacy)

Pyodide is a legacy feature. Future versions of n8n will no longer support this feature.

n8n added Python support in version 1.0. It doesn't include a Python executable. Instead, n8n provides Python support using [Pyodide](https://pyodide.org/en/stable/), which is a port of CPython to WebAssembly. This limits the available Python packages to the [Packages included with Pyodide](https://pyodide.org/en/stable/usage/packages-in-pyodide.html#packages-in-pyodide). n8n downloads the package automatically the first time you use it.

Slower than JavaScript

The Code node takes longer to process Python than JavaScript. This is due to the extra compilation steps.

### Built-in methods and variables

n8n provides built-in methods and variables for working with data and accessing n8n data. Refer to [Built-in methods and variables](../../../../code/builtin/overview/) for more information.

The syntax to use the built-in methods and variables is `_variableName` or `_methodName()`. Type `_` in the Code node to see a list of suggested methods and variables.

### Keyboard shortcuts

The Code node editing environment supports time-saving and useful keyboard shortcuts for a range of operations from autocompletion to code-folding and using multiple-cursors. See the full list of [keyboard shortcuts](keyboard-shortcuts/).

## File system and HTTP requests

You can't access the file system or make HTTP requests. Use the following nodes instead:

- [Read/Write File From Disk](../n8n-nodes-base.readwritefile/)
- [HTTP Request](../n8n-nodes-base.httprequest/)

## Python (Native - beta)

n8n added native Python support using task runners (beta) in version 1.111.0.

Main differences from Pyodide:

- Native Python supports only `_items` in all-items mode and `_item` in per-item mode. It doesn't support other n8n built-in methods and variables.
- Native Python supports importing native Python modules from the standard library and from third-parties, if the `n8nio/runners` image includes them and explicitly allowlists them. See [adding extra dependencies for task runners](../../../../hosting/configuration/task-runners/#adding-extra-dependencies) for more details.
- Native Python denies insecure built-ins by default. See [task runners environment variables](../../../../hosting/configuration/environment-variables/task-runners/) for more details.
- Unlike Pyodide, which accepts dot access notation, for example, `item.json.myNewField`, native Python only accepts bracket access notation, for example, `item["json"]["my_new_field"]`. There may be other minor syntax differences where Pyodide accepts constructs that aren't legal in native Python.

Keep in mind upgrading to native Python is a breaking change, so you may need to adjust your Python scripts to use the native Python runner.

This feature is in beta and is subject to change. As it becomes stable, n8n will roll it out progressively to n8n cloud users during 2025. Self-hosting users can [try it out](../../../../hosting/configuration/task-runners/) and provide feedback.

There are two places where you can use code in n8n: the Code node and the expressions editor. When using either area, there are some key concepts you need to know, as well as some built-in methods and variables to help with common tasks.

When working with the Code node, you need to understand the following concepts:

- [Data structure](../../../../data/data-structure/): understand the data you receive in the Code node, and requirements for outputting data from the node.
- [Item linking](../../../../data/data-mapping/data-item-linking/): learn how data items work, and how to link to items from previous nodes. You need to handle item linking in your code when the number of input and output items doesn't match.

### Built-in methods and variables

n8n includes built-in methods and variables. These provide support for:

- Accessing specific item data
- Accessing data about workflows, executions, and your n8n environment
- Convenience variables to help with data and time

Refer to [Built-in methods and variables](../../../../code/builtin/overview/) for more information.

## Use AI in the Code node

AI assistance in the Code node is available to Cloud users. It isn't available in self-hosted n8n.

AI generated code overwrites your code

If you've already written some code on the **Code** tab, the AI generated code will replace it. n8n recommends using AI as a starting point to create your initial code, then editing it as needed.

To use ChatGPT to generate code in the Code node:

1. In the Code node, set **Language** to **JavaScript**.
1. Select the **Ask AI** tab.
1. Write your query.
1. Select **Generate Code**. n8n sends your query to ChatGPT, then displays the result in the **Code** tab.

For common questions or issues and suggested solutions, refer to [Common Issues](common-issues/).

---

## monday.com node

**URL:** llms-txt#monday.com-node

**Contents:**
- Operations
- Templates and examples
- What to do if your operation isn't supported

Use the monday.com node to automate work in monday.com, and integrate monday.com with other applications. n8n has built-in support for a wide range of monday.com features, including creating a new board, and adding, deleting, and getting items on the board.

On this page, you'll find a list of operations the monday.com node supports and links to more resources.

Minimum required version

This node requires n8n version 1.22.6 or above.

Refer to [monday.com credentials](../../credentials/mondaycom/) for guidance on setting up authentication.

This node can be used as an AI tool

This node can be used to enhance the capabilities of an AI agent. When used in this way, many parameters can be set automatically, or with information directed by AI - find out more in the [AI tool parameters documentation](../../../../advanced-ai/examples/using-the-fromai-function/).

- Board
  - Archive a board
  - Create a new board
  - Get a board
  - Get all boards
- Board Column
  - Create a new column
  - Get all columns
- Board Group
  - Delete a group in a board
  - Create a group in a board
  - Get list of groups in a board
- Board Item
  - Add an update to an item.
  - Change a column value for a board item
  - Change multiple column values for a board item
  - Create an item in a board's group
  - Delete an item
  - Get an item
  - Get all items
  - Get items by column value
  - Move item to group

## Templates and examples

**Create ticket on specific customer messages in Telegram**

[View template details](https://n8n.io/workflows/368-create-ticket-on-specific-customer-messages-in-telegram/)

**Microsoft Outlook AI Email Assistant with contact support from Monday and Airtable**

by Cognitive Creators

[View template details](https://n8n.io/workflows/2809-microsoft-outlook-ai-email-assistant-with-contact-support-from-monday-and-airtable/)

**Retrieve a Monday.com row and all data in a single node**

[View template details](https://n8n.io/workflows/2086-retrieve-a-mondaycom-row-and-all-data-in-a-single-node/)

[Browse monday.com integration templates](https://n8n.io/integrations/mondaycom/), or [search all templates](https://n8n.io/workflows/)

## What to do if your operation isn't supported

If this node doesn't support the operation you want to do, you can use the [HTTP Request node](../../core-nodes/n8n-nodes-base.httprequest/) to call the service's API.

You can use the credential you created for this service in the HTTP Request node:

1. In the HTTP Request node, select **Authentication** > **Predefined Credential Type**.
1. Select the service you want to connect to.
1. Select your credential.

Refer to [Custom API operations](../../../custom-operations/) for more information.

---

## RBAC role types

**URL:** llms-txt#rbac-role-types

**Contents:**
- Project Admin
- Project Editor
- Project Viewer

- The Project Editor role is available on Pro Cloud and Self-hosted Enterprise plans.
- The Project Viewer role is only available on Self-hosted Enterprise and Cloud Enterprise plans.

Within projects, there are three user roles: Admin, Editor, and Viewer. These roles control what the user can do in a project. A user can have different roles within different projects.

A Project Admin role has the highest level of permissions. Project admins can:

- Manage project settings: Change name, delete project.
- Manage project members: Invite members and remove members, change members' roles.
- View, create, update, and delete any workflows, credentials, or executions within a project.

A Project Editor can view, create, update, and delete any workflows, credentials, or executions within a project.

A Project Viewer is effectively a `read-only` role with access to all workflows, credentials, and executions within a project.

Viewers aren't able to manually execute any workflows that exist in a project.

Role types and account types

Role types and [account types](../../account-types/) are different things. Every account has one type. The account can have different role types for different [projects](../projects/).

| Permission                      | Admin | Editor | Viewer |
| ------------------------------- | ----- | ------ | ------ |
| View workflows in the project   |       |        |        |
| View credentials in the project |       |        |        |
| View executions                 |       |        |        |
| Edit credentials and workflows  |       |        |        |
| Add workflows and credentials   |       |        |        |
| Execute workflows               |       |        |        |
| Manage members                  |       |        |        |
| Modify the project              |       |        |        |

[Variables](../../../code/variables/) and [tags](../../../workflows/tags/) aren't affected by RBAC: they're global across the n8n instance.

---

## Export and import workflows

**URL:** llms-txt#export-and-import-workflows

**Contents:**
- Copy-Paste
- From the Editor UI menu
- From the command line

n8n saves workflows in JSON format. You can export your workflows as JSON files or import JSON files into your n8n library. You can export and import workflows in several ways.

Exported workflow JSON files include [credential](../../glossary/#credential-n8n) names and IDs. While IDs aren't sensitive, the names could be, depending on how you name your credentials. HTTP Request nodes may contain authentication headers when imported from cURL. Remove or anonymize this information from the JSON file before sharing to protect your credentials.

You can copy and paste a workflow or parts of it by selecting the nodes you want to copy to the clipboard (`Ctrl + c` or `cmd +c`) and pasting it (`Ctrl + v` or `cmd + v`) into the Editor UI.

To select all nodes or a group of nodes, click and drag:

## From the Editor UI menu

From the top navigation bar, select the three dots in the upper right to see the following options:

*Import & Export workflows menu*

- **Download**: Downloads your current workflow as a JSON file to your computer.
- **Import from URL**: Imports workflow JSON from a URL, for example, [this workflow JSON file on GitHub](https://raw.githubusercontent.com/n8n-io/self-hosted-ai-starter-kit/refs/heads/main/n8n/demo-data/workflows/srOnR8PAY3u4RSwb.json).
- **Import from File**: Imports a workflow as a JSON file from your computer.

## From the command line

- Export: See the [full list of commands](../../hosting/cli-commands/#export-workflows-and-credentials) for exporting workflows or credentials.
- Import: See the [full list of commands](../../hosting/cli-commands/#import-workflows-and-credentials) for importing workflows or credentials.

---

## Customer Datastore (n8n Training) node

**URL:** llms-txt#customer-datastore-(n8n-training)-node

Use this node only for the n8n new user onboarding tutorial. It provides dummy data for testing purposes and has no further functionality.

---

## Replace 2.1.0 with your version number

**URL:** llms-txt#replace-2.1.0-with-your-version-number

npm install n8n-nodes-nodeName@2.1.0
```

---

## DeepSeek Chat Model node

**URL:** llms-txt#deepseek-chat-model-node

**Contents:**
- Node parameters
  - Model
- Node options
  - Base URL
  - Frequency Penalty
  - Maximum Number of Tokens
  - Response Format
  - Presence Penalty
  - Sampling Temperature
  - Timeout

Use the DeepSeek Chat Model node to use DeepSeek's chat models with conversational [agents](../../../../../glossary/#ai-agent).

On this page, you'll find the node parameters for the DeepSeek Chat Model node and links to more resources.

You can find authentication information for this node [here](../../../credentials/deepseek/).

Parameter resolution in sub-nodes

Sub-nodes behave differently to other nodes when processing multiple items using an expression.

Most nodes, including root nodes, take any number of items as input, process these items, and output the results. You can use expressions to refer to input items, and the node resolves the expression for each item in turn. For example, given an input of five `name` values, the expression `{{ $json.name }}` resolves to each name in turn.

In sub-nodes, the expression always resolves to the first item. For example, given an input of five `name` values, the expression `{{ $json.name }}` always resolves to the first name.

Select the model to use to generate the completion.

n8n dynamically loads models from DeepSeek and you'll only see the models available to your account.

Use these options to further refine the node's behavior.

Enter a URL here to override the default URL for the API.

### Frequency Penalty

Use this option to control the chances of the model repeating itself. Higher values reduce the chance of the model repeating itself.

### Maximum Number of Tokens

Enter the maximum number of tokens used, which sets the completion length.

Choose **Text** or **JSON**. **JSON** ensures the model returns valid JSON.

Use this option to control the chances of the model talking about new topics. Higher values increase the chance of the model talking about new topics.

### Sampling Temperature

Use this option to control the randomness of the sampling process. A higher temperature creates more diverse sampling, but increases the risk of hallucinations.

Enter the maximum request time in milliseconds.

Enter the maximum number of times to retry a request.

Use this option to set the probability the completion should use. Use a lower value to ignore less probable options.

## Templates and examples

**🐋🤖 DeepSeek AI Agent + Telegram + LONG TERM Memory 🧠**

[View template details](https://n8n.io/workflows/2864-deepseek-ai-agent-telegram-long-term-memory/)

**🤖 AI content generation for Auto Service 🚘 Automate your social media📲!**

[View template details](https://n8n.io/workflows/4600-ai-content-generation-for-auto-service-automate-your-social-media/)

**AI Research Assistant via Telegram (GPT-4o mini + DeepSeek R1 + SerpAPI)**

[View template details](https://n8n.io/workflows/5924-ai-research-assistant-via-telegram-gpt-4o-mini-deepseek-r1-serpapi/)

[Browse DeepSeek Chat Model integration templates](https://n8n.io/integrations/deepseek-chat-model/), or [search all templates](https://n8n.io/workflows/)

As DeepSeek is API-compatible with OpenAI, you can refer to [LangChains's OpenAI documentation](https://js.langchain.com/docs/integrations/chat/openai/) for more information about the service.

View n8n's [Advanced AI](../../../../../advanced-ai/) documentation.

---

## Cisco Meraki credentials

**URL:** llms-txt#cisco-meraki-credentials

**Contents:**
- Prerequisites
- Authentication methods
- Related resources
- Using API key

You can use these credentials to authenticate when using the [HTTP Request node](../../core-nodes/n8n-nodes-base.httprequest/) to make a [Custom API call](../../../custom-operations/).

- Create a [Cisco DevNet developer account](https://developer.cisco.com).
- Access to a [Cisco Meraki account](https://meraki.cisco.com/).

## Authentication methods

Refer to [Cisco Meraki's API documentation](https://developer.cisco.com/meraki/api-v1/introduction/) for more information about the service.

This is a credential-only node. Refer to [Custom API operations](../../../custom-operations/) to learn more. View [example workflows and related content](https://n8n.io/integrations/cisco-meraki/) on n8n's website.

To configure this credential, you'll need:

- An **API Key**: Refer to the [Cisco Meraki Obtaining your Meraki API Key documentation](https://developer.cisco.com/meraki/api-v1/authorization/#obtaining-your-meraki-api-key) for instructions on getting your API Key.

---

## crowd.dev credentials

**URL:** llms-txt#crowd.dev-credentials

**Contents:**
- Prerequisites
- Supported authentication methods
- Related resources
- Using API key

You can use these credentials to authenticate the following nodes:

- [crowd.dev](../../app-nodes/n8n-nodes-base.crowddev/)
- [crowd.dev Trigger](../../trigger-nodes/n8n-nodes-base.crowddevtrigger/)

Create a working instance of [crowd.dev](https://www.crowd.dev/).

## Supported authentication methods

Refer to [crowd.dev's documentation](https://docs.crowd.dev/docs) for more information about the service, and their [API documentation](https://api.crowd.dev/api-reference) for working with the API.

To configure this credential, you'll need:

- A **URL**:
  - If your crowd.dev instance is hosted on crowd.dev, keep the default of `https://app.crowd.dev`.
  - If your crowd.dev instance is [self-hosted](https://docs.crowd.dev/docs/technical-docs/self-hosting), use the URL you use to access your crowd.dev instance.
- Your crowd.dev **Tenant ID**: Displayed in the **Settings** section of the crowd.dev app
- An API **Token**: Displayed in the **Settings** section of the crowd.dev app

Refer to the [crowd.dev API documentation](https://api.crowd.dev/api-reference) for more detailed instructions.

---

## Wise credentials

**URL:** llms-txt#wise-credentials

**Contents:**
- Prerequisites
- Supported authentication methods
- Related resources
- Using API token
- Add a private key

You can use these credentials to authenticate the following nodes:

- [Wise](../../app-nodes/n8n-nodes-base.wise/)
- [Wise Trigger](../../trigger-nodes/n8n-nodes-base.wisetrigger/)

Create a [Wise](https://wise.com/) account.

## Supported authentication methods

Refer to [Wise's API documentation](https://docs.wise.com/api-docs/api-reference) for more information about the service.

To configure this credential, you'll need:

- An **API Token**: Go to your **user menu > Settings > API tokens** to generate an API token. Enter the generated API key in your n8n credential. Refer to [Getting started with the API](https://wise.com/help/articles/2958107/getting-started-with-the-api) for more information.
- Your **Environment**: Select the environment that best matches your Wise account environment.
  - If you're using a Wise test sandbox account, select **Test**.
  - Otherwise, select **Live**.
- **Private Key (Optional)**: For live endpoints requiring Strong Customer Authentication (SCA), generate a public and private key. Enter the private key here. Refer to [Add a private key](#add-a-private-key) for more information.
  - If you're using a **Test** environment, you'll only need to enter a Private Key if you've enabled Strong Customer Authentication on the [public keys management page](https://sandbox.transferwise.tech/public-keys).

Wise protects some live endpoints and operations with Strong Customer Authentication (SCA). Refer to [Strong Customer Authentication & 2FA](https://docs.wise.com/api-docs/features/strong-customer-authentication-2fa) for details.

If you make a request to an endpoint that requires SCA, Wise returns a 403 Forbidden HTTP status code. The error returned will look like this:

> This request requires Strong Customer Authentication (SCA). Please add a key pair to your account and n8n credentials. See https://api-docs.transferwise.com/#strong-customer-authentication-personal-token

To use endpoints requiring SCA, generate an RSA key pair and add the relevant key information to both Wise and n8n:

1. Generate an RSA key pair:

1. Add the content of the public key `public.pem` to your Wise **user menu > Settings > API tokens > Manage public keys**.

1. Add the content of the private key `private.pem` in n8n to the **Private Key (Optional)**.

Refer to [Personal Token SCA](https://docs.wise.com/api-docs/guides/strong-customer-authentication-2fa/personal-token-sca) for more information.

**Examples:**

Example 1 (unknown):
```unknown
$ openssl genrsa -out private.pem 2048 
   $ openssl rsa -pubout -in private.pem -out public.pem
```

---

## AI coding with GPT

**URL:** llms-txt#ai-coding-with-gpt

**Contents:**
- Use AI in the Code node
- Usage limits
- Feature limits
- Writing good prompts
  - Example prompts
  - Reference incoming node data explicitly
  - Related resources
- Fixing the code

Not available on self-hosted.

Python isn't supported. ///

## Use AI in the Code node

AI assistance in the Code node is available to Cloud users. It isn't available in self-hosted n8n.

AI generated code overwrites your code

If you've already written some code on the **Code** tab, the AI generated code will replace it. n8n recommends using AI as a starting point to create your initial code, then editing it as needed.

To use ChatGPT to generate code in the Code node:

1. In the Code node, set **Language** to **JavaScript**.
1. Select the **Ask AI** tab.
1. Write your query.
1. Select **Generate Code**. n8n sends your query to ChatGPT, then displays the result in the **Code** tab.

During the trial phase there are no usage limits. If n8n makes the feature permanent, there may be usage limits as part of your prici

…(truncated)
