Skip to content

Commit

Permalink
Merge branch 'main' into patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
ShimHyesu authored Feb 25, 2025
2 parents 85d7297 + a51115c commit 2ea2a67
Show file tree
Hide file tree
Showing 32 changed files with 334 additions and 54 deletions.
30 changes: 30 additions & 0 deletions .github/workflows/lychee-pr-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Lychee PR external linkcheck
on:
pull_request:
branches:
- main
permissions:
contents: read
pull-requests: write
jobs:
link-check:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@v45
- name: Run Lychee Link Checker
id: lychee
uses: lycheeverse/lychee-action@v1
with:
args: --config lychee.toml ${{ steps.changed-files.outputs.all_changed_files }}
- name: PR comment with file
uses: thollander/actions-comment-pull-request@v3
with:
file-path: lychee/out.md
- name: Report Status
if: failure()
run: echo "❌ Broken links detected. Please fix them!"
20 changes: 20 additions & 0 deletions .github/workflows/lychee.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Lychee external linkcheck
on:
schedule:
- cron: "18 7 * * *"
workflow_dispatch:
jobs:
link-check:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Run Lychee Link Checker
uses: lycheeverse/lychee-action@v1
with:
args: --config lychee.toml ./docs

- name: Report Status
if: failure()
run: echo "❌ Broken links detected. Please fix them!"
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ If you have problems or questions, head to n8n's forum: https://community.n8n.io

## License

n8n-docs is [fair-code](http://faircode.io) licensed under the [**Sustainable Use License**](https://github.com/n8n-io/n8n/blob/master/LICENSE.md).
n8n-docs is [fair-code](https://faircode.io/) licensed under the [**Sustainable Use License**](https://github.com/n8n-io/n8n/blob/master/LICENSE.md).

More information about the license is available in the [License documentation](https://docs.n8n.io/reference/license/).

8 changes: 4 additions & 4 deletions _snippets/integrations/openai-api-issues.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,12 +117,12 @@ There are two ways to work around this issue:
## Insufficient quota
This error displays when your OpenAI account doesn't have enough credits or capacity to fulfill your request. This may mean that your OpenAI trial period has ended, that your account needs more credit, or that you've gone over a usage limit.
/// note | Zero balance issue
If you create an API key when the account balance is zero, operations will always report "insufficient quota" even if funds are added later. To avoid this issue, ensure that there is credit in the account before issuing a new API key from the [API keys screen](https://platform.openai.com/settings/organization/api-keys).
/// note | Quota issues
There are a number of OpenAI issues surrounding quotas, including failures when quotas have been recently topped up. To avoid these issues, ensure that there is credit in the account and issue a new API key from the [API keys screen](https://platform.openai.com/settings/organization/api-keys).
///
This error displays when your OpenAI account doesn't have enough credits or capacity to fulfill your request. This may mean that your OpenAI trial period has ended, that your account needs more credit, or that you've gone over a usage limit.
To troubleshoot this error, on your [OpenAI settings](https://platform.openai.com/settings/organization/billing/overview){:target=_blank .external-link} page:
* Select the correct organization for your API key in the first selector in the upper-left corner.
Expand Down
4 changes: 2 additions & 2 deletions _snippets/self-hosting/installation/latest-next-version.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/// note | Latest and Next versions
n8n releases a new minor version most weeks. The `latest` version is for production use. `next` is the most recent release. You should treat `next` as a beta: it may be unstable. To report issues, use the [forum](https://community.n8n.io/c/questions/12){:target=_blank .external-link}.

Current `latest`: 1.78.1
Current `next`: 1.79.1
Current `latest`: 1.80.3
Current `next`: 1.81.0
///
2 changes: 1 addition & 1 deletion docs/1-0-migration-checklist.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ Workflow executions may fail due to syntax or runtime errors in expressions, suc

### Mandatory owner account

This change makes [User Management](/user-management/index.md) mandatory and removes support for other authentication methods, such as BasicAuth and External JWT. Note that the number of permitted users on [n8n.cloud](http://n8n.cloud/){:target=_blank .external link} or custom plans still varies depending on your subscription.
This change makes [User Management](/user-management/index.md) mandatory and removes support for other authentication methods, such as BasicAuth and External JWT. Note that the number of permitted users on [n8n.cloud](https://n8n.cloud/){:target=_blank .external link} or custom plans still varies depending on your subscription.

[PR #6362](https://github.com/n8n-io/n8n/pull/6362){:target=_blank .external link}

Expand Down
2 changes: 1 addition & 1 deletion docs/advanced-ai/langchain/langchain-learning-resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ description: External resources to learn more about LangChain and AI.

You don't need to know details about LangChain to use n8n, but it can be helpful to learn a few concepts. This pages lists some learning resources that people at n8n have found helpful.

The [LangChain documentation](https://docs.langchain.com/docs/){:target=_blank .external-link} includes introductions to key concepts and possible use cases. Choose the [LangChain | Python](https://python.langchain.com/docs/get_started/introduction){:target=_blank .external-link} or [LangChain | JavaScript](https://js.langchain.com/docs/get_started/introduction/){:target=_blank .external-link} documentation for quickstarts, code examples, and API documentation. LangChain also provide [code templates](https://github.com/langchain-ai/langchain/tree/master/templates){:target=_blank .external-link} (Python only), offering ideas for potential use cases and common patterns.
The [LangChain documentation](https://docs.langchain.com/docs/){:target=_blank .external-link} includes introductions to key concepts and possible use cases. Choose the [LangChain | Python](https://python.langchain.com/docs/get_started/introduction){:target=_blank .external-link} or [LangChain | JavaScript](https://js.langchain.com/docs/get_started/introduction/){:target=_blank .external-link} documentation for quickstarts, code examples, and API documentation. LangChain also provide [code templates](https://github.com/langchain-ai/langchain/tree/master/cookbook){:target=_blank .external-link} (Python only), offering ideas for potential use cases and common patterns.

[What Product People Need To Know About LangChain](https://www.commandbar.com/blog/langchain-guide){:target=_blank .external-link} provides a list of terminology and concepts, explained with helpful metaphors. Aimed at a wide audience.

Expand Down
2 changes: 1 addition & 1 deletion docs/choose-n8n.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ There are different ways to set up n8n depending on how you intend to use it:

## Licenses

n8n's [Sustainable Use License](https://github.com/n8n-io/n8n/blob/master/LICENSE.md){:target=\_blank .external-link} and [n8n Enterprise License](https://github.com/n8n-io/n8n/blob/master/LICENSE_EE.md){:target=\_blank .external-link} are based on the [fair-code](http://faircode.io) model.
n8n's [Sustainable Use License](https://github.com/n8n-io/n8n/blob/master/LICENSE.md){:target=\_blank .external-link} and [n8n Enterprise License](https://github.com/n8n-io/n8n/blob/master/LICENSE_EE.md){:target=\_blank .external-link} are based on the [fair-code](https://faircode.io/) model.

For a detailed explanation of the license, refer to [Sustainable Use License](/sustainable-use-license.md).

Expand Down
4 changes: 2 additions & 2 deletions docs/courses/level-two/chapter-2.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ Let's get the title of the latest n8n blog post:

1. Use the **HTTP Request node** to make a GET request to the URL `https://blog.n8n.io/` (this endpoint requires no authentication).
2. Connect an **HTML node** and configure it to extract the title of the first blog post on the page.
- Hint: If you're not familiar with CSS selectors or reading HTML, the CSS selector `.item-title a` should help!
- Hint: If you're not familiar with CSS selectors or reading HTML, the CSS selector `.post .item-title a` should help!

??? note "Show me the solution"

Expand All @@ -43,7 +43,7 @@ Let's get the title of the latest n8n blog post:
- **JSON Property**: data
- **Extraction Values**:
- **Key**: title
- **CSS Selector**: `.item-title a`
- **CSS Selector**: `.post .item-title a`
- **Return Value**: HTML

You can add more values to extract more data.
Expand Down
4 changes: 2 additions & 2 deletions docs/hosting/configuration/environment-variables/licenses.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,5 @@ To enable enterprise features, you need to add your enterprise license key. You
| `N8N_LICENSE_AUTO_RENEW_OFFSET` | Number | `60 * 60 * 72` (72 hours) | Time in seconds before expiry a license should automatically renew. |
| `N8N_LICENSE_SERVER_URL` | String | `http://license.n8n.io/v1` | Server URL to retrieve license. |
| `N8N_LICENSE_TENANT_ID` | Number | `1` | Tenant ID associated with the license. Only set this variable if explicitly instructed by n8n. |
| `HTTP_PROXY_LICENSE_SERVER` | String | `http://use:pass@proxy:port`| Proxy server URL for HTTP requests to retrieve license. |
| `HTTPS_PROXY_LICENSE_SERVER` | String | `https://use:pass@proxy:port` | Proxy server URL for HTTPS requests to retrieve license. |
| `http_proxy_license_server` | String | `http://user:pass@proxy:port`| Proxy server URL for HTTP requests to retrieve license. This variable name needs to be lowercase. |
| `https_proxy_license_server` | String | `https://user:pass@proxy:port` | Proxy server URL for HTTPS requests to retrieve license. This variable name needs to be lowercase. |
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,6 @@ hide:

--8<-- "_snippets/self-hosting/file-based-configuration.md"

/// note | Experimental feature
Task runners are currently in public beta testing and might contain undiscovered issues. We don't recommend using them with business critical workflows.
///

[Task runners](/hosting/configuration/task-runners.md) execute code defined by the [Code node](/integrations/builtin/core-nodes/n8n-nodes-base.code/index.md).

## n8n instance environment variables
Expand Down
4 changes: 0 additions & 4 deletions docs/hosting/configuration/task-runners.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,6 @@ Task runners are a generic mechanism to execute tasks in a secure and performant

This document describes how task runners work and how you can configure them.

/// note | Experimental feature
Task runners are currently in public beta testing and might contain undiscovered issues. We don't recommend using them with business critical workflows.
///

## How it works

The task runner feature consists of three components: a task runner, a task broker, and a task requester.
Expand Down
2 changes: 1 addition & 1 deletion docs/hosting/installation/server-setups/digital-ocean.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ contentType: tutorial

This hosting guide shows you how to self-host n8n on a DigitalOcean droplet. It uses:

* [Caddy](http://caddyserver.com){:target="_blank" .external-link} (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.
* [Caddy](https://caddyserver.com){:target="_blank" .external-link} (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/){:target="_blank" .external-link} to create and define the application components and how they work together.

--8<-- "_snippets/self-hosting/warning.md"
Expand Down
2 changes: 1 addition & 1 deletion docs/hosting/installation/server-setups/hetzner.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ contentType: tutorial

This hosting guide shows you how to self-host n8n on a Hetzner cloud server. It uses:

* [Caddy](http://caddyserver.com){:target="_blank" .external-link} (a reverse proxy) to allow access to the Server from the internet.
* [Caddy](https://caddyserver.com){:target="_blank" .external-link} (a reverse proxy) to allow access to the Server from the internet.
* [Docker Compose](https://docs.docker.com/compose/){:target="_blank" .external-link} to create and define the application components and how they work together.

--8<-- "_snippets/self-hosting/warning.md"
Expand Down
4 changes: 2 additions & 2 deletions docs/hosting/logging-monitoring/logging.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,11 @@ During development, adding log messages is a good practice. It assists in debugg

n8n uses the `LoggerProxy` class, located in the `workflow` package. Calling the `LoggerProxy.init()` by passing in an instance of `Logger`, initializes the class before the usage.

The initialization process happens only once. The [`start.ts`](https://github.com/n8n-io/n8n/blob/master/packages/cli/commands/start.ts) file already does this process for you. If you are creating a new command from scratch, you need to initialize the `LoggerProxy` class.
The initialization process happens only once. The [`start.ts`](https://github.com/n8n-io/n8n/blob/master/packages/cli/src/commands/start.ts) file already does this process for you. If you are creating a new command from scratch, you need to initialize the `LoggerProxy` class.

Once the `Logger` implementation gets created in the `cli` package, it can be obtained by calling the `getInstance` convenience method from the exported module.

Check the [start.ts](https://github.com/n8n-io/n8n/blob/master/packages/cli/commands/start.ts) file to learn more about how this process works.
Check the [start.ts](https://github.com/n8n-io/n8n/blob/master/packages/cli/src/commands/start.ts) file to learn more about how this process works.

### Adding logs

Expand Down
2 changes: 1 addition & 1 deletion docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ hide:
# Welcome to n8n Docs


This is the documentation for [n8n](https://n8n.io/){:target=_blank .external-link}, a [fair-code](http://faircode.io){:target=_blank .external-link} licensed workflow automation tool that combines AI capabilities with business process automation.
This is the documentation for [n8n](https://n8n.io/){:target=_blank .external-link}, a [fair-code](https://faircode.io){:target=_blank .external-link} licensed workflow automation tool that combines AI capabilities with business process automation.

It covers everything from setup to usage and development. It's a work in progress and all [contributions](/help-community/contributing.md) are welcome.

Expand Down
4 changes: 2 additions & 2 deletions docs/integrations/builtin/app-nodes/n8n-nodes-base.thehive.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,5 +41,5 @@ n8n provides a trigger node for TheHive. You can find the trigger node docs [her

Refer to TheHive's documentation for more information about the service:

* [Version 3](http://docs.thehive-project.org/thehive/legacy/thehive3/api/){:target=_blank .external-link}
* [Version 4](http://docs.thehive-project.org/cortex/api/api-guide/){:target=_blank .external-link}
* [Version 3](https://docs.thehive-project.org/thehive/legacy/thehive3/api/){:target=_blank .external-link}
* [Version 4](https://docs.thehive-project.org/cortex/api/api-guide/){:target=_blank .external-link}
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ When the node execution completes, it combines all of the processed data and ret

## When to use the Loop Over Items node

n8n automatically processes incoming items. Depending on what you're trying to achieve, you often don't need the Loop Over Items node in your workflow. You can learn more about how n8n processes multiple items on the [looping in n8n](/flow-logic/looping.md) page.
By default, n8n nodes process input items one at a time. Depending on what you're trying to achieve, you often don't need the Loop Over Items node in your workflow. You can learn more about how n8n processes multiple items on the [looping in n8n](/flow-logic/looping.md) page.

In particular, these two sections are of particular interest to the Loop Over Items node:

Expand Down
4 changes: 2 additions & 2 deletions docs/integrations/builtin/credentials/airtable.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Create an [Airtable](https://airtable.com/){:target=_blank .external-link} accou
- OAuth2

/// note | API Key deprecation
n8n used to offer an API key authentication method with Airtable. Airtable [fully deprecated these keys](https://support.airtable.com/docs/airtable-api-key-deprecation-notice){:target=_blank .external-link} as of February 2024. If you were using an Airtable API credential, replace it with an Airtable Personal Access Token or Airtable OAuth2 credential. n8n recommends using Personal Access Token instead.
n8n used to offer an API key authentication method with Airtable. Airtable [fully deprecated these keys](https://support.airtable.com/v1/docs/airtable-api-deprecation-guidelines){:target=_blank .external-link} as of February 2024. If you were using an Airtable API credential, replace it with an Airtable Personal Access Token or Airtable OAuth2 credential. n8n recommends using Personal Access Token instead.
///

## Related resources
Expand All @@ -49,7 +49,7 @@ To create your PAT:
1. Select **Create token**.
1. Airtable opens a modal with your token displayed. Copy this token and enter it in your n8n credential as the **Access Token**.

Refer to Airtable's [Find/create PATs documentation](https://support.airtable.com/docs/creating-personal-access-tokens#understanding-the-basics-of-personal-access-tokens){:target=_blank .external-link} for more information.
Refer to Airtable's [Find/create PATs documentation](https://support.airtable.com/v1/docs/creating-personal-access-tokens){:target=_blank .external-link} for more information.

## Using OAuth2

Expand Down
2 changes: 1 addition & 1 deletion docs/integrations/builtin/credentials/amqp.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Install an AMQP 1.0-compatible message broker like [ActiveMQ](https://activemq.a

## Related resources

Advanced Message Queuing Protocol (AMQP) is an open standard application layer protocol for message-oriented middleware. The defining features of AMQP are message orientation, queuing, routing, reliability and security. Refer to the [OASIS AMQP Version 1.0 Standard](http://docs.oasis-open.org/amqp/core/v1.0/amqp-core-overview-v1.0.html){:target=_blank .external-link} for more information.
Advanced Message Queuing Protocol (AMQP) is an open standard application layer protocol for message-oriented middleware. The defining features of AMQP are message orientation, queuing, routing, reliability and security. Refer to the [OASIS AMQP Version 1.0 Standard](https://docs.oasis-open.org/amqp/core/v1.0/amqp-core-overview-v1.0.html){:target=_blank .external-link} for more information.

Refer to your provider's documentation for more information about the service. Refer to [ActiveMQ's API documentation](https://activemq.apache.org/components/classic/documentation/rest){:target=_blank .external-link} as one example.

Expand Down
4 changes: 2 additions & 2 deletions docs/integrations/builtin/credentials/beeminder.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ Create a [Beeminder](https://www.beeminder.com/){:target=_blank .external-link}

## Related resources

Refer to [Beeminder's API documentation](http://api.beeminder.com/#beeminder-api-reference){:target=_blank .external-link} for more information about the service.
Refer to [Beeminder's API documentation](https://api.beeminder.com/#beeminder-api-reference){:target=_blank .external-link} for more information about the service.

## Using API user token

Expand All @@ -30,5 +30,5 @@ To configure this credential, you'll need:
- A **User** name: Should match the user who the Auth Token is generated for.
- A personal **Auth Token** for that user. Generate this using either method below:
- In the GUI: From the [Apps & API](https://help.beeminder.com/article/110-apps-and-api#API-token){:target=_blank .external-link} option within **Account Settings**
- In the API: From hitting the [`auth_token` API endpoint](http://api.beeminder.com/#auth){:target=_blank .external-link}
- In the API: From hitting the [`auth_token` API endpoint](https://api.beeminder.com/#auth){:target=_blank .external-link}

2 changes: 1 addition & 1 deletion docs/integrations/builtin/credentials/ftp.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ You can use these credentials to authenticate the following nodes:

## Prerequisites

Create an account on a File Transfer Protocol (FTP) server like [JSCAPE](https://mft.jscape.com/lp/ftp-server){:target=_blank .external-link}, [OpenSSH](http://www.openssh.com/){:target=_blank .external-link}, or [FileZilla Server](https://filezilla-project.org/){:target=_blank .external-link}.
Create an account on a File Transfer Protocol (FTP) server like [JSCAPE](https://mft.jscape.com/lp/ftp-server){:target=_blank .external-link}, [OpenSSH](https://www.openssh.com/){:target=_blank .external-link}, or [FileZilla Server](https://filezilla-project.org/){:target=_blank .external-link}.

## Supported authentication methods

Expand Down
Loading

0 comments on commit 2ea2a67

Please sign in to comment.