Merge branch 'main' into DOC-342-google-creds

This commit is contained in:
Deborah Barnard 2022-10-19 09:06:27 +01:00
commit 1dcf5b4e1f
35 changed files with 425 additions and 65 deletions

View File

@ -1,5 +1,8 @@
# Function
!!! warning "Deprecated in 0.198.0"
n8n deprecated this node in version 0.198.0. Older workflows continue to work, and the node is still available in older versions n8n. From 0.198.0, n8n replaces the Function node with the [Code](/integrations/builtin/core-nodes/n8n-nodes-base.code/) node.
Using the function node, you can:
* Transform data from other nodes
@ -50,7 +53,7 @@ return newItems;
## Manage item linking
--8<-- "_snippets/data/data-mapping/item-linking-function-node.md"
--8<-- "_snippets/data/data-mapping/item-linking-code-node.md"
## External libraries

View File

@ -1,5 +1,8 @@
# Function Item
!!! warning "Deprecated in 0.198.0"
n8n deprecated this node in version 0.198.0. Older workflows continue to work, and the node is still available in older versions n8n. From 0.198.0, n8n replaces the Function node with the [Code](/integrations/builtin/core-nodes/n8n-nodes-base.code/) node.
The Function Item node is used to add custom snippets to JavaScript code that should be executed once for every item that it receives as the input.
!!! note "Keep in mind"

Binary file not shown.

View File

@ -1,4 +1,10 @@
# code node
/data/data-mapping/data-item-linking/item-linking-function-node/ /data/data-mapping/data-item-linking/item-linking-code-node/
/integrations/builtin/core-nodes/n8n-nodes-base.function/ /integrations/builtin/core-nodes/n8n-nodes-base.code/
/integrations/builtin/core-nodes/n8n-nodes-base.functionItem/ /integrations/builtin/core-nodes/n8n-nodes-base.code/
# methods / vars / paired items
/code-examples/expressions/methods/ /code-examples/methods-variables-reference/
@ -256,9 +262,9 @@
/nodes/n8n-nodes-base.freshworksCrm/ /integrations/builtin/app-nodes/n8n-nodes-base.freshworksCrm/
/nodes/n8n-nodes-base.freshworkscrm/ /integrations/builtin/app-nodes/n8n-nodes-base.freshworksCrm/
/nodes/n8n-nodes-base.ftp/ /integrations/builtin/core-nodes/n8n-nodes-base.ftp/
/nodes/n8n-nodes-base.function/ /integrations/builtin/core-nodes/n8n-nodes-base.function/
/nodes/n8n-nodes-base.functionItem/ /integrations/builtin/core-nodes/n8n-nodes-base.functionItem/
/nodes/n8n-nodes-base.functionitem/ /integrations/builtin/core-nodes/n8n-nodes-base.functionItem/
/nodes/n8n-nodes-base.function/ /integrations/builtin/core-nodes/n8n-nodes-base.code/
/nodes/n8n-nodes-base.functionItem/ /integrations/builtin/core-nodes/n8n-nodes-base.code/
/nodes/n8n-nodes-base.functionitem/ /integrations/builtin/core-nodes/n8n-nodes-base.code/
/nodes/n8n-nodes-base.getResponse/ /integrations/builtin/app-nodes/n8n-nodes-base.getResponse/
/nodes/n8n-nodes-base.getresponse/ /integrations/builtin/app-nodes/n8n-nodes-base.getResponse/
/nodes/n8n-nodes-base.getResponseTrigger/ /integrations/builtin/trigger-nodes/n8n-nodes-base.getResponseTrigger/

View File

@ -0,0 +1,14 @@
# Using console.log in the Code node
You can use `console.log()` in the Code node to help when writing and debugging your code.
For help opening your browser console, refer to [this guide by Balsamiq](https://balsamiq.com/support/faqs/browserconsole/){:target=_blank .external-link}.
For technical information on `console.log()`, refer to the [MDN developer docs](https://developer.mozilla.org/en-US/docs/Web/API/Console/log){:target=_blank .external-link}.
For example, copy the following code into a Code node, then open your console and run the node:
```js
let a = "apple";
console.log(a);
```

View File

@ -3,7 +3,7 @@
There are two places in n8n where you need to use code:
* In [expressions](/code-examples/expressions/), for example programmatically setting the value of a field based on incoming data.
* In the [function node](/integrations/builtin/core-nodes/n8n-nodes-base.function/), when you need to add JavaScript to your workflow.
* In the [Code node](/integrations/builtin/core-nodes/n8n-nodes-base.code/), when you need to add JavaScript to your workflow.
This section covers:

View File

@ -62,7 +62,7 @@ This includes:
| `$execution.id` | The unique ID of the current workflow execution. | :white_check_mark: |
| `$execution.mode` | Whether the execution was triggered automatically, or by manually running the workflow. Possible values are `test` and `production`. | :white_check_mark: |
| `$execution.resumeUrl` | The webhook URL to call to resume a workflow waiting at a [Wait node](/integrations/builtin/core-nodes/n8n-nodes-base.wait/). | :white_check_mark: |
| `$getWorkflowStaticData(type)` | Static data isn't available when testing workflows. The workflow must be active and called by a trigger or webhook to save static data. This gives access to the static workflow data. | :white_check_mark: |
| `$getWorkflowStaticData(type)` | View an [example](/code-examples/methods-variables-examples/get-workflow-static-data/). Static data isn't available when testing workflows. The workflow must be active and called by a trigger or webhook to save static data. This gives access to the static workflow data. | :white_check_mark: |
| `$itemIndex` | The index of an item in a list of items. | :x: |
| `$prevNode.name` | The name of the node that the current input came from. When using the Merge node, note that `$prevNode` always uses the first input connector. | :white_check_mark: |
| `$prevNode.outputIndex` | The index of the output connector that the current input came from. Use this when the previous node had multiple outputs (such as an If or Switch node). When using the Merge node, note that `$prevNode` always uses the first input connector. | :white_check_mark: |

View File

@ -5,14 +5,14 @@ An item is a single piece of data. Nodes receive one or more items, operate on t
You need to be understand this behavior if you're:
* Building a programmatic-style node that implements complex behaviors with its input and output data. Refer
* Using the Function node or expressions editor to access data from earlier items in the workflow.
* Using the Function node to implement complex behaviors with input and output data.
* Using the Code node or expressions editor to access data from earlier items in the workflow.
* Using the Code node to implement complex behaviors with input and output data.
This section provides:
* A conceptual overview of [Item linking concepts](/data/data-mapping/data-item-linking/item-linking-concepts/).
* Information on [Item linking for node creators](/data/data-mapping/data-item-linking/item-linking-node-building/).
* Support for end users who need to [Work with the data path](/data/data-mapping/data-item-linking/item-linking-function-node/) to retrieve item data from previous nodes, and link items when using the Function node.
* Support for end users who need to [Work with the data path](/data/data-mapping/data-item-linking/item-linking-code-node/) to retrieve item data from previous nodes, and link items when using the Code node.
* Guidance on troubleshooting [Errors](/data/data-mapping/data-item-linking/item-linking-errors/).

View File

@ -0,0 +1,4 @@
# Item linking in the Code node
--8<-- "_snippets/data/data-mapping/item-linking-code-node.md"

View File

@ -1,11 +1,11 @@
# Item linking concepts
Each output item created by a node includes metadata that links them to the input item (or items) that the node used to generate them. This creates a chain of items that you can work back along to access previous items. This can be complicated to understand, especially if the node splits or merges data. You need to understand item linking when building your own programmatic nodes, or in some scenarios using the Function node.
Each output item created by a node includes metadata that links them to the input item (or items) that the node used to generate them. This creates a chain of items that you can work back along to access previous items. This can be complicated to understand, especially if the node splits or merges data. You need to understand item linking when building your own programmatic nodes, or in some scenarios using the Code node.
This document provides a conceptual overview of this feature. For usage details, refer to:
* [Item linking for node creators](/data/data-mapping/data-item-linking/item-linking-node-building/), for details on how to handle item linking when building a node.
* [Item linking in the Function node](/data/data-mapping/data-item-linking/item-linking-function-node/), to learn how to handle item linking in the Function node.
* [Item linking in the Code node](/data/data-mapping/data-item-linking/item-linking-code-node/), to learn how to handle item linking in the Code node.
* [Item linking errors](/data/data-mapping/data-item-linking/item-linking-errors/), to understand the errors you may encounter in the editor UI.
## n8n's automatic item linking

View File

@ -22,5 +22,5 @@ If you see this error message:
> ERROR: Can't get data for expression under '`<field-name>`' field
You need to supply item linking information yourself, because you have an item linking scenario that n8n can't automatically handle. Refer to [Item linking concepts](/data/data-mapping/data-item-linking/item-linking-concepts/) for a conceptual understanding of item linking, and [Manage item linking in the Function node](/data/data-mapping/data-item-linking/item-linking-function-node/) for detailed guidance on handling item linking.
You need to supply item linking information yourself, because you have an item linking scenario that n8n can't automatically handle. Refer to [Item linking concepts](/data/data-mapping/data-item-linking/item-linking-concepts/) for a conceptual understanding of item linking, and [Manage item linking in the Function node](/data/data-mapping/data-item-linking/item-linking-code-node/) for detailed guidance on handling item linking.

View File

@ -1,4 +0,0 @@
# Item linking in the Function node
--8<-- "_snippets/data/data-mapping/item-linking-function-node.md"

View File

@ -30,11 +30,12 @@ In n8n, all data passed between nodes is an array of objects. It has the followi
```
!!! note "Skipping the 'json' key and array syntax"
From 0.166.0 onwards, when using the function node, n8n automatically adds the `json` key if it's missing. It also automatically wraps your items in an array (`[]`) if needed. This is only when using the Function node. When building your own nodes, you must still make sure the node returns data with the `json` key.
From 0.166.0 onwards, when using the Function node or Code node, n8n automatically adds the `json` key if it's missing. It also automatically wraps your items in an array (`[]`) if needed. This is only when using the Function or Code nodes. When building your own nodes, you must still make sure the node returns data with the `json` key.
## Data flow
Nodes do not only process one "item", they process multiple ones.
Nodes process multiple items.
For example, if the Trello node is set to `Create-Card` and it has an expression set for `Name` to be set depending on `name` property, it will create a card for each item, always choosing the `name-property-value` of the current one.
This data would, for example, create two cards. One named `test1` the other one named `test2`:

View File

@ -172,9 +172,9 @@ You can define additional folders with an environment variable.
export N8N_CUSTOM_EXTENSIONS="/home/jim/n8n/custom-nodes;/data/n8n/nodes"
```
### Use built-in and external modules in Function-Nodes
### Use built-in and external modules in the Code node
For security reasons, the Function node restricts importing modules. It's possible to lift that restriction for built-in and external modules by setting the following environment variables:
For security reasons, the Code node restricts importing modules. It's possible to lift that restriction for built-in and external modules by setting the following environment variables:
- `NODE_FUNCTION_ALLOW_BUILTIN`: For built-in modules
- `NODE_FUNCTION_ALLOW_EXTERNAL`: For external modules sourced from n8n/node_modules directory. External module support is disabled when an environment variable isn't set.

View File

@ -160,8 +160,8 @@ Refer to [User management](/hosting/user-management/) for more information on se
| :------- | :---- | :------- | :---------- |
| `NODES_INCLUDE` | String | - | Specify which nodes to load. |
| `NODES_EXCLUDE` | String | - | Specify which nodes not to load. |
| `NODE_FUNCTION_ALLOW_BUILTIN` | String | - | Permit users to import specific built-in modules in Function nodes. Use * to allow all. n8n disables importing modules by default. |
| `NODE_FUNCTION_ALLOW_EXTERNAL` | String | - | Permit users to import specific external modules (from `n8n/node_modules`) in Function nodes. n8n disables importing modules by default. |
| `NODE_FUNCTION_ALLOW_BUILTIN` | String | - | Permit users to import specific built-in modules in the Code node. Use * to allow all. n8n disables importing modules by default. |
| `NODE_FUNCTION_ALLOW_EXTERNAL` | String | - | Permit users to import specific external modules (from `n8n/node_modules`) in the Code node. n8n disables importing modules by default. |
| `NODES_ERROR_TRIGGER_TYPE` | String | `n8n-nodes-base.errorTrigger` | Specify which Node Type to use as Error Trigger. |
| `N8N_CUSTOM_EXTENSIONS` | String | - | Specify the path to additional directories containing your custom nodes. |

View File

@ -0,0 +1,165 @@
# 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/){:target=_blank .external-link} as the hosting option. Using Kubernetes requires some additional complexity and configuration, but is the best method for scaling n8n as demand changes.
## Prerequisites
The steps in this guide use a mix of the AWS UI and [the eksctl CLI tool for EKS](https://eksctl.io){:target=_blank .external-link}.
While 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){:target=_blank .external-link}, and [configure authentication of the tool](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html){:target=_blank .external-link}.
## Create a cluster
Use the eksctl tool to create a cluster specifying a name and a region with the following command:
```shell
eksctl create cluster --name n8n --region <your-aws-region>
```
This can take a while to create the cluster.
Once the cluster is created, eksctl automatically sets the kubectl context to the cluster.
## Clone configuration repository
Kubernetes and n8n require a series of configuration files. You can clone these from [this repository](https://github.com/n8n-io/n8n-kubernetes-hosting/tree/aws){:target=_blank .external-link}. The following steps tell you what each file does, and what settings you need to change.
Clone the repository with the following command:
```shell
git clone https://github.com/n8n-io/n8n-kubernetes-hosting.git -b aws
```
And change directory to the root of the repository you cloned:
```shell
cd n8n-kubernetes-hosting
```
## Configure Postgres
For larger scale n8n deployments, Postgres provides a more robust database backend than SQLite.
### Configure volume for persistent storage
To maintain data between pod restarts, the Postgres deployment needs a persistent volume. The default AWS storage class, [gp2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/general-purpose.html#EBSVolumeTypes_gp2){:target=_blank .external-link}, is suitable for this purpose. This is defined in the `postgres-claaim0-persistentvolumeclaim.yaml` manifest.
```yaml
spec:
storageClassName: gp2
accessModes:
- ReadWriteOnce
```
### Environment variables
Postgres needs some environment variables set to pass to the application running in the containers.
The example `postgres-secret.yaml` file contains placeholders you need to replace with values of your own for user details and the database to use.
The `postgres-deployment.yaml` manifest then uses the values from this manifest file to send to the application pods.
## Configure n8n
### Create a volume for file storage
While 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](https://docs.n8n.io/hosting/configuration/#encryption-key) between restarts, which saves a file containing the key into file storage during startup.
The `n8n-claim0-persistentvolumeclaim.yaml` manifest creates this, and the n8n Deployment mounts that claim in the `volumes` section of the `n8n-deployment.yaml` manifest.
```yaml
volumes:
- name: n8n-claim0
persistentVolumeClaim:
claimName: n8n-claim0
```
### Pod resources
[Kubernetes](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/){:target=_blank .external-link} 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:
```yaml
resources:
requests:
memory: "250Mi"
limits:
memory: "500Mi"
```
This 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:
- **Start**: 320mb RAM, 10 millicore CPU burstable
- **Pro**: 640mb RAM, 20 millicore CPU burstable
- **Power**: 1280mb RAM, 80 millicore CPU burstable
### Environment variables
n8n needs some environment variables set to pass to the application running in the containers.
The example `n8n-secret.yaml` file contains placeholders you need to replace with values of your own for authentication details.
## Deployments
The two deployment manifests (`n8n-deployment.yaml` and `postgres-deployment.yaml`) define the n8n and Postgres applications to Kubernetes.
The manifests define the following:
- Send the environment variables defined to each application pod
- Define the container image to use
- Set resource consumption limits
- The `volumes` defined earlier and `volumeMounts` to define the path in the container to mount volumes.
- Scaling and restart policies. The example manifests define one instance of each pod. You should change this to meet your needs.
## Services
The 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.
## Send to Kubernetes cluster
Send all the manifests to the cluster by running the following command in the `n8n-kubernetes-hosting` directory:
```shell
kubectl apply -f .
```
!!! note "Namespace error"
You 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:
```shell
kubectl apply -f namespace.yaml
```
## Set up DNS
n8n 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.
To find the address of the n8n service running on the instance:
1. Open the **Clusters** section of the **Amazon Elastic Kubernetes Service** page in the AWS console.
2. Select the name of the cluster to open its configuration page.
3. Select the **Resources** tab, then **Service and networking** > **Services**.
4. Select the **n8n** service and copy the **Load balancer URLs** value. Use this value suffixed with the n8n service port (5678) for DNS.
!!! note "Use HTTP"
This 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.
## Delete resources
If you need to delete the setup, you can remove the resources created by the manifests with the following command:
```shell
kubectl delete -f .
```

View File

@ -5,6 +5,7 @@ Guides to self-hosting n8n with:
* [Docker Compose](/hosting/server-setups/docker-compose/)
* [Caddy](/hosting/server-setups/caddy/)
* [Digital Ocean](/hosting/server-setups/digital-ocean/) (using Caddy and Docker Compose)
* [AWS](/hosting/server-setups/aws/)
* [Google Cloud Platform](/hosting/server-setups/google-cloud/)

View File

@ -9,6 +9,7 @@
* Certificate
* Create
* Install
* File
* Delete
* Download

View File

@ -1,6 +1,6 @@
# Venafi TLS Protect Cloud
[Venafi TLS Protect](https://www.venafi.com/platform/tls-protect){:target=_blank .external-link} helps you discover all your SSL/TLS certificates and corresponding private keys so you can protect these machine identities from outages and quickly respond to certificate vulnerabilities, CA compromise, or other errors.
[Venafi](https://www.venafi.com/){:target=_blank .external-link} is a cybersecurity company providing services for machine identity management. They offer solutions to manage and protect identities for a wide range of machine types, delivering global visibility, lifecycle automation, and actionable intelligence.
The n8n Venafi TLS Protect Cloud node allows you to integrate with the [cloud-based Venafi TLS Protect](https://vaas.venafi.com/){:target=_blank} service.
@ -26,4 +26,7 @@ Refer to [Venafi's REST API documentation](https://docs.venafi.cloud/api/vaas-re
View [example workflows and related content](https://n8n.io/integrations/venafi-tls-protect-cloud/){:target=_blank .external-link} on n8n's website.
n8n also provides a node for [Venafi TLS Protect Datacenter](/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectdatacenter/).
n8n also provides:
* A [trigger node](/integrations/builtin/trigger-nodes/n8n-nodes-base.venafitlsprotectcloudtrigger/) for Venafi TLS Protect Cloud.
* A [node](/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectdatacenter/) and [trigger node](/integrations/builtin/trigger-nodes/n8n-nodes-base.venafitlsprotectdatacentertrigger/) for Venafi TLS Protect Datacenter.

View File

@ -0,0 +1,27 @@
# Venafi TLS Protect Datacenter
[Venafi](https://www.venafi.com/){:target=_blank .external-link} is a cybersecurity company providing services for machine identity management. They offer solutions to manage and protect identities for a wide range of machine types, delivering global visibility, lifecycle automation, and actionable intelligence.
!!! note "Credentials"
You can find authentication information for this node [here](/integrations/builtin/credentials/venafiTlsProtectDatacenter/).
## Operations
* Certificate
* Create
* Delete
* Download
* Get
* Get Many
* Renew
* Policy
* Get
## Related resources
View [example workflows and related content](https://n8n.io/integrations/venafi-tls-protect-datacenter/){:target=_blank .external-link} on n8n's website.
n8n also provides:
* A [trigger node](/integrations/builtin/trigger-nodes/n8n-nodes-base.venafitlsprotectdatacentertrigger/) for Venafi TLS Protect Datacenter.
* A [node](/integrations/builtin/app-nodes/n8n-nodes-base.venafiTlsProtectCloud/) and [trigger](/integrations/builtin/trigger-nodes/n8n-nodes-base.venafitlsprotectcloudtrigger/) node for Venafi TLS Protect Cloud.

View File

@ -0,0 +1,41 @@
# Code
The Code node allows you to write custom JavaScript and run it as a step in your workflow.
!!! note "Function and Function Item nodes"
The Code node replaces the Function and Function Item nodes from version 0.198.0 onwards. 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){:target=_blank .external-link} and [Function Item node documentation](https://github.com/n8n-io/n8n-docs/blob/67935ad2528e2e30d7984ea917e4af2910a096ec/docs/integrations/builtin/core-nodes/n8n-nodes-base.functionItem.md){:target=_blank .external-link}.
## Choose a mode
There are two modes:
* **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.
## 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.
## Data structure and item linking
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. You need to handle item linking 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 [methods and variables](/code-examples/methods-variables-reference/) for more information.
## 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 the [Configuration](/hosting/configuration/#use-built-in-and-external-modules-in-the-code-node) guide.

View File

@ -11,11 +11,15 @@ You can specify how the Merge node should combine data from different branches.
### Append
Combines data from both inputs. The output contains items from Input 1, followed by all items from Input 2.
Keep data from both inputs. The output contains items from Input 1, followed by all items from Input 2.
![Diagram](/_images/integrations/builtin/core-nodes/merge/append-diagram.png)
### Merge by fields
### Combine
Combine data from both inputs. Choose a **Combination Mode** to control how n8n merges the data.
#### Merge by fields
Compare items by field values. Enter the fields you want to compare in **Fields to Match**.
@ -29,11 +33,11 @@ n8n's default behavior is to keep matching items. You can change this using the
![Diagram](/_images/integrations/builtin/core-nodes/merge/merge-by-field-diagram.png)
#### Field value clashes
##### Field value clashes
--8<-- "_snippets/integrations/builtin/core-nodes/merge/field-value-clash.md"
#### Multiple matches
##### Multiple matches
Matching by field can generate multiple matches if the inputs contain duplicate data. To handle this, select **Add Option > Multiple Matches**. Then choose:
@ -41,27 +45,27 @@ Matching by field can generate multiple matches if the inputs contain duplicate
* **Include First Match Only**: keep the first item, discard subsequent items.
### Merge by position
#### Merge by position
Combine items based on their order. The item at index 0 in Input 1 merges with the item at index 0 in Input 2, and so on.
![Diagram](/_images/integrations/builtin/core-nodes/merge/merge-by-position-diagram.png)
#### Inputs with different numbers of items
##### Inputs with different numbers of items
If there are more items in one input than the other, the default behavior is to leave out the items without a match. Choose **Add Option** > **Include Any Unpaired Items** to keep the unmatched items.
#### Field value clashes
##### Field value clashes
--8<-- "_snippets/integrations/builtin/core-nodes/merge/field-value-clash.md"
### Multiplex
#### Multiplex
Output all possible item combinations, while merging fields with the same name.
![Diagram](/_images/integrations/builtin/core-nodes/merge/multiplex-diagram.png)
#### Field value clashes
##### Field value clashes
--8<-- "_snippets/integrations/builtin/core-nodes/merge/field-value-clash.md"

View File

@ -19,7 +19,7 @@ The Send Email node is used to send an email via an SMTP email server.
## Node Reference
- **From Email:** The email address you are sending from.
- **To Email:** The recipient email address.
- **To Email:** The recipient email address. Multiple recipients can be separated using a comma.
- **CC Email:** A field that can be used to specify an email address for a carbon copy of the email.
- **BCC Email:** A field that can be used to specify an email address for a blind carbon copy of the email.
- **Subject:** The subject of your message.

View File

@ -13,7 +13,7 @@ or a self hosted instance.
1. In n8n, open the **Credentials** menu item and click on **New**
2. In the **Add new credential** dialogue, select **Baserow API** and click on the **Continue** button
3. If using the online version of Baserow, leave the **Host** as `https://api/baserow.io`, otherwise set it to your self-hosted instance API URL.
3. If using the online version of Baserow, leave the **Host** as `https://api.baserow.io`, otherwise set it to your self-hosted instance API URL.
4. Enter your Baserow username in the **Username** field
5. Enter your Baserow password in the **Password** field
6. Click on the **Save** button

View File

@ -3,8 +3,9 @@
You can use these credentials to authenticate the following nodes with Venafi TLS Protect Cloud:
* [Venafi TLS Protect Cloud node](/integrations/builtin/app-nodes/n8n-nodes-base.venafiTlsProtectCloud/)
* [Venafi TLS Protect Cloud trigger node](/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectcloudtrigger/)
Follow the Venafi REST API documentation on [Obtaining an API Key](https://docs.venafi.cloud/api/obtaining-api-key/){:target=_blank .external-link}.
Enter the API key in the **Venafi TLS Protect Cloud account** credentials modal.
Enter the API key in the **Venafi TLS Protect Cloud account** credentials modal. Refer to [Add and edit credentials](/credentials/add-edit-credentials/) for more information on working with credentials in n8n.

View File

@ -0,0 +1,10 @@
# Venafi TLS Protect Datacenter
You can use these credentials to authenticate the following nodes with Venafi TLS Protect Datacenter:
* [Venafi TLS Protect Datacenter node](/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectdatacenter/)
* [Venafi TLS Protect Datacenter trigger node](/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectdatacentertrigger/)
Venafi provide a [PDF guide](/_downloads/venafi-tpp.pdf) to getting credentials. Follow the steps in the guide, making a note of the name and client ID you choose. When choosing scopes, make sure you choose the scopes needed for the operations you want to perform within n8n. For example, if you plan to work with certificates, including deleting them, include the **Certificate** scope in your Venafi credentials setup, with the **delete** option enabled.
Enter the client ID, your username and password, and your Venafi domain, in the n8n **Venafi TLS Protect Datacenter account** modal. Refer to [Add and edit credentials](/credentials/add-edit-credentials/) for more information on working with credentials in n8n.

View File

@ -0,0 +1,8 @@
# Venafi TLS Protect Cloud Trigger
[Venafi](https://www.venafi.com/){:target=_blank .external-link} is a cybersecurity company providing services for machine identity management. They offer solutions to manage and protect identities for a wide range of machine types, delivering global visibility, lifecycle automation, and actionable intelligence.
The n8n Venafi TLS Protect Cloud trigger node allows you to start a workflow in n8n in response to events in the [cloud-based Venafi TLS Protect](https://vaas.venafi.com/){:target=_blank} service.
!!! note "Credentials"
You can find authentication information for this node [here](/integrations/builtin/credentials/venafiTlsProtectCloud/).

View File

@ -0,0 +1,6 @@
# Venafi TLS Protect Datacenter Trigger
[Venafi](https://www.venafi.com/){:target=_blank .external-link} is a cybersecurity company providing services for machine identity management. They offer solutions to manage and protect identities for a wide range of machine types, delivering global visibility, lifecycle automation, and actionable intelligence.
!!! note "Credentials"
You can find authentication information for this node [here](/integrations/builtin/credentials/venafiTlsProtectDatacenter/).

View File

@ -1,5 +1,89 @@
# Release notes
## n8n@0.198.2
View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.198.1...n8n@0.198.2){:target=_blank .external-link} for this version.<br />
**Release date:** 2022-10-14
This release fixes a bug affecting scrolling through parameter lists.
## n8n@0.198.1
View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.198.0...n8n@0.198.1){:target=_blank .external-link} for this version.<br />
**Release date:** 2022-10-14
This is a bug fix release.
### Bug fixes
* Editor: change the initial position of the Start node.
* Editor: align JSON view properties with their values.
* Editor: fix `BASE_PATH` for Vite dev mode.
* Editor: fix data pinning success source.
### Contributor
[Bram Kn](https://github.com/bramkn){:target=_blank .external-link}
## n8n@0.198.0
View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.197.1...n8n@0.198.0){:target=_blank .external-link} for this version.<br />
**Release date:** 2022-10-14
!!! warning "Breaking changes"
Please note that this version contains breaking changes to the Merge node. You can read more about them [here](https://github.com/n8n-io/n8n/blob/master/packages/cli/BREAKING-CHANGES.md#01980){:target=_blank .external-link}.
### New features
* Editor: update the expressions display.
* Editor: update the n8n-menu component.
### New nodes
<div class="n8n-new-features" markdown>
#### Code node
This release introduces the Code node. This node replaces both the Function and Function Item nodes. Refer to the [Code node](/integrations/builtin/core-nodes/n8n-nodes-base.code/) documentation for more information.
</div>
<div class="n8n-new-features" markdown>
#### Venafi TLS Protect Cloud trigger node
Start a workflow in response to events in your Venafi Cloud service.
</div>
### Node enhancements
* Citrix ADC node: add Certificate Install operation.
* Kafka node: add a **Use key** option for messages.
* MySQL node: use the resource locator component for table parameters, making it easier for users to browse and select their database fields from within n8n.
### Bug fixes
* Core, Editor: prevent overlap between running and pinning data.
* Core: expression evaluation of processes now respects `N8N_BLOCK_ENV_ACCESS_IN_NODE`.
* Editor: ensure the Axios base URL still works when hosted in a subfolder.
* Editor: fixes for horizontal scrollbar rendering.
* Editor: ensure the menu closes promptly when loading a credentials page.
* Editor: menu UI fixes.
* Box node: fix an issue that was causing the Create Folder operation to show extra items.
* GSuite Admin node: resolve issue that was causing the User Update operation to fail.
* GitLab trigger node: ensure this node activates reliably.
* HTTP Request node: ensure OAuth credentials work properly with predefined credentials.
* KoboToolbox node: fix the hook logs.
* SeaTable node: ensure link items show in response.
* Zoom node: resolve an issue that was causing missing output items.
### Contributors
[Jakob Backlund](https://github.com/jbacklund){:target=_blank .external-link}
[Yan Jouanique](https://github.com/Yann-J){:target=_blank .external-link}
## n8n@0.197.1
View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.197.0...n8n@0.197.1){:target=_blank .external-link} for this version.<br />

View File

@ -1,26 +0,0 @@
# Venafi TLS Protect Datacenter
[Venafi TLS Protect](https://www.venafi.com/platform/tls-protect){:target=_blank .external-link} helps you discover all your SSL/TLS certificates and corresponding private keys so you can protect these machine identities from outages and quickly respond to certificate vulnerabilities, CA compromise, or other errors.
The n8n Venafi TLS Protect Datacenter node allows you to integrate with the
!!! note "Credentials"
You can find authentication information for this node [here](/integrations/builtin/credentials/venafiTlsProtectDatacenter/).
## Operations
* Certificate
* Create
* Delete
* Download
* Get
* Get Many
* Renew
* Policy
* Get
## Related resources
View [example workflows and related content](https://n8n.io/integrations/venafi-tls-protect-datacenter/){:target=_blank .external-link} on n8n's website.
n8n also provides a node for [Venafi TLS Protect Cloud](/integrations/builtin/app-nodes/n8n-nodes-base.venafiTlsProtectCloud/).

View File

@ -120,7 +120,7 @@ nav:
- Data item linking:
- data/data-mapping/data-item-linking/index.md
- Item linking concepts: data/data-mapping/data-item-linking/item-linking-concepts.md
- Item linking in the Function node: data/data-mapping/data-item-linking/item-linking-function-node.md
- Item linking in the Code node: data/data-mapping/data-item-linking/item-linking-code-node.md
- Item linking errors: data/data-mapping/data-item-linking/item-linking-errors.md
- Item linking for node creators: data/data-mapping/data-item-linking/item-linking-node-building.md
- Data pinning: data/data-pinning.md
@ -149,6 +149,7 @@ nav:
- Split binary file data into individual items: code-examples/javascript-functions/split-binary-file-data.md
- Get the binary data buffer: code-examples/javascript-functions/get-binary-data-buffer.md
- Check incoming data: code-examples/javascript-functions/check-incoming-data.md
- Using console.log: code-examples/console-log.md
- Reference:
- reference/index.md
- Release notes: reference/release-notes.md
@ -459,6 +460,7 @@ nav:
- Docker Compose: hosting/server-setups/docker-compose.md
- Caddy: hosting/server-setups/caddy.md
- Digital Ocean: hosting/server-setups/digital-ocean.md
- Amazon Web Services: hosting/server-setups/aws.md
- Google Cloud: hosting/server-setups/google-cloud.md
- Databases:
- hosting/databases/index.md

View File

@ -36,8 +36,9 @@
"/editor-ui/workflows": "/workflows/",
"/editor-ui/credentials": "/credentials/",
"/editor-ui/executions": "/workflows/executions/",
"/editor-ui/admin-panel": "/hosting/updating/cloud/"
// 404s reports
"/editor-ui/admin-panel": "/hosting/updating/cloud/",
// New code node
"/hosting/configuration/#use-built-in-and-external-modules-in-function-nodes": "/hosting/configuration/#use-built-in-and-external-modules-in-the-code-node"
};

View File

@ -10,10 +10,13 @@ Citrix
Clockify
Cron
Dockerfile
eksctl
Enum
enum
Fargate
GIMP
invalid
kubectl
Kafka
Lemlist
Luxon
@ -29,6 +32,8 @@ onboarding
Pipedrive
Postbin
Postgres
Serverless
serverless
Shopify
shopify
There are