Merge branch 'master' into docs/yourls

This commit is contained in:
Tanay Pant 2020-12-11 09:46:15 +01:00
commit 2b7f86a3e9
20 changed files with 259 additions and 10 deletions

View File

@ -2,6 +2,11 @@
Let's create your first workflow in n8n. We'll create a workflow which will run every morning at 8 AM and will send an SMS to tell you if you should take a sweater with you. You can also find the [workflow](https://n8n.io/workflows/409) on n8n.io.
Here's a video that will take you through the process of creating this workflow.
<iframe width="560" height="315" src="https://www.youtube.com/embed/QhTsOMvqLuo" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
## Prerequisites
Youll need the following tools and resources to complete the tutorial:

View File

@ -2,6 +2,10 @@
Let's create your first workflow in n8n. We'll create a workflow that will add a new card to a Trello board whenever a user submits a feedback score that is less than seven. You can also find the [workflow](https://n8n.io/workflows/791) on n8n.io.
Here's a video that will take you through the process of creating this workflow.
<iframe width="560" height="315" src="https://www.youtube.com/embed/NEuto0F41WY" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
## Prerequisites
Youll need the following tools and resources to complete the tutorial:

View File

@ -0,0 +1,25 @@
---
permalink: /credentials/iterable
description: Learn to configure credentials for the Iterable node in n8n
---
# Iterable
You can use these credentials to authenticate the following nodes with Iterable.
- [Iterable](../../nodes-library/nodes/Iterable/README.md)
## Prerequisites
Create an [Iterable](https://iterable.com) account.
## Using API Key
1. Access the [Iterable dashboard](https://app.iterable.com/).
2. Click on ***Integrations*** and select 'API keys'.
3. Click on the ***NEW API KEY*** button.
4. Enter a name in the ***Name*** field.
5. Click on the ***Create*** button.
6. Click on the ***Copy*** button to copy the API key.
7. Use this ***API key*** with your Iterable node credentials in n8n.
![Getting Iterable credentials](./using-api-key.gif)

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

@ -7,6 +7,7 @@ description: Learn to configure credentials for the Kafka node in n8n
You can use these credentials to authenticate the following nodes with Kafka.
- [Kafka](../../nodes-library/nodes/Kafka/README.md)
- [Kafka Trigger](../../nodes-library/trigger-nodes/KafkaTrigger/README.md)
## Prerequisites

View File

@ -12,7 +12,7 @@ The Cron node is useful to schedule the workflows to run periodically at fixed d
2. Make sure that the timezone is set correctly for the n8n instance (or the workflow).
:::
You can find the example usage of the Cron node in the [Creating Your First Workflow](../../../../getting-started/creating-your-first-workflow.md) guide.
You can find the example usage of the Cron node in the [Create Your First Workflow](../../../../getting-started/create-your-first-workflow/create-your-first-workflow/README.md) guide.
## Node Reference

View File

@ -5,6 +5,6 @@ description: Learn how to use the No Operation, do nothing node in n8n
# No Operation, do nothing
The No Operation, do nothing node is used when you don't want to perform any operations. The purpose of this node is to make the workflow easier to read and understand where the flow of data stops. This can sometimes help others with a better understanding of the workflow, visually.
The No Operation, do nothing node is used when you don't want to perform any operations. The purpose of this node is to make the workflow easier to read and understand where the flow of data stops. This can sometimes help others with a better understanding of the workflow, visually.
As an example, checkout how this node is being used in the [Creating Your First Workflow](../../../../getting-started/creating-your-first-workflow.md) guide.
As an example, checkout how this node is being used in the [Create Your First Workflow](../../../../getting-started/create-your-first-workflow/create-your-first-workflow/README.md) guide.

View File

@ -56,46 +56,69 @@ The start node exists by default when you create a new workflow.
### 2. Gmail node (getAll: message)
This node will return ten messages with the label `n8n` from Gmail. If you want to return all the messages toggle ***Return All*** to `true`.
1. First of all, you'll have to enter credentials for the Gmail node. You can find out how to do that [here](../../../credentials/Google/README.md).
2. Select 'Message' from the ***Resource*** dropdown list.
3. Select 'Get All' from the ***Operation*** dropdown list.
4. Click on ***Add Field*** button and select 'Format' from the dropdown list.
5. Select 'Full' from ***Format*** dropdown menu.
6. Click on ***Add Field*** button and select 'Label IDs' from the dropdown list.
7. Select the label from ***Label IDs*** dropdown list.
4. Click on the ***Add Field*** button and select 'Format' from the dropdown list.
5. Select 'Full' from ***Format*** dropdown menu. This option will return the full email message data with the body content parsed in the payload field.
6. Click on the ***Add Field*** button and select 'Label IDs' from the dropdown list.
7. Select the label from the ***Label IDs*** dropdown list.
8. Click on ***Execute Node*** to run the node.
In the screenshot below, you will notice that the node returns ten email messages with the label `n8n`.
![Using the Gmail node to get all messages with a particular label](./Gmail_node.png)
::: v-pre
### 3. Gmail1 node (remove: messageLabel)
This node will remove the label `n8n` from all the messages that you received in the previous node. If you want to remove a different label, select that label instead.
1. Select the credentials that you entered in the previous Gmail node.
2. Select 'Message Label' from the ***Resource*** dropdown list.
3. Select 'Remove' from the ***Operation*** dropdown list.
4. Click on the gears icon next to the ***Message ID*** field and click on ***Add Expression***.
5. Select the following in the ***Variable Selector*** section: Nodes > Gmail > Output Data > JSON > id. You can also add the following expression: `{{$node["Gmail"].json["id"]}}`.
6. Select the label from ***Label IDs*** dropdown list.
6. Select the label from the ***Label IDs*** dropdown list.
7. Click on ***Execute Node*** to run the node.
:::
In the screenshot below, you will notice that the node removes the `n8n` label from the messages that we received from the previous node.
![Using the Gmail node to remove a label from the messages](./Gmail1_node.png)
::: v-pre
### 4. Gmail2 node (add: messageLabel)
This node will add a new label `nodemation` to the messages that we received from the Gmail node. If you want to add a different label, select that label instead.
1. Select the credentials that you entered in the previous Gmail node.
2. Select 'Message Label' from the ***Resource*** dropdown list.
3. Click on the gears icon next to the ***Message ID*** field and click on ***Add Expression***.
4. Select the following in the ***Variable Selector*** section: Nodes > Gmail > Output Data > JSON > id. You can also add the following expression: `{{$node["Gmail"].json["id"]}}`.
5. Select the label from ***Label IDs*** dropdown list.
5. Select the label from the ***Label IDs*** dropdown list.
6. Click on ***Execute Node*** to run the node.
:::
In the screenshot below, you will notice that the node adds a new label `nodemation` to the messages that we received from the Gmail node.
![Using the Gmail node to add a label to the messages](./Gmail2_node.png)
## FAQs
### 1. How to return all the messages with a particular label?
To return all the messages with a particular label, follow the steps mentioned below.
1. Select 'Message' from the ***Resource*** dropdown list.
2. Select 'Get All' from the ***Operation*** dropdown list.
3. If you want to all return all the messages with a particular, toggle ***Return All*** to `true`.
4. Click on ***Add Field*** and select 'Query'.
5. Enter `label:LABEL_NAME` in the ***Query*** field. Replace `LABEL_NAME` with your label name.
6. Click on ***Execute Node*** to run the node.
Refer to [Search operators you can use with Gmail](https://support.google.com/mail/answer/7190?hl=en) to learn more about filtering your search results.
## Further Reading

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

View File

@ -0,0 +1,88 @@
---
permalink: /nodes/n8n-nodes-base.iterable
description: Learn how to use the Iterable node in n8n
---
# Iterable
[Iterable](https://iterable.com/) is a cross-channel platform that allows marketers to create, optimize, and measure every interaction throughout the customer journey.
::: tip 🔑 Credentials
You can find authentication information for this node [here](../../../credentials/Iterable/README.md).
:::
## Basic Operations
::: details Event
- Record the actions a user performs
:::
::: details User
- Create/Update a user
- Delete a user
- Get a user
:::
## Example Usage
This workflow allows you to create, update, and get a user from Iterable. You can also find the [workflow](https://n8n.io/workflows/813) on n8n.io. This example usage workflow would use the following nodes.
- [Start](../../core-nodes/Start/README.md)
- [Iterable]()
The final workflow should look like the following image.
![A workflow with the Iterable node](./workflow.png)
### 1. Start node
The start node exists by default when you create a new workflow.
### 2. Iterable node (upsert: user)
This node will create a new user in Iterable.
1. First of all, you'll have to enter credentials for the Iterable node. You can find out how to do that [here](../../../credentials/Iterable/README.md).
2. Select 'Email' in the ***Identifier*** field.
3. Enter the email address in the ***Value*** field.
4. Click on ***Execute Node*** to run the node.
In the screenshot below, you will notice that the node creates a new user in Iterable.
![Using the Iterable node to create a user](./Iterable_node.png)
### 3. Iterable1 node (upsert: user)
This node will update the information of the user that we created in the previous node.
::: v-pre
1. Select the credentials that you entered in the previous node.
2. Select 'Email' in the ***Identifier*** field.
3. Click on the gears icon next to the ***Value*** field and click on ***Add Expression***.
4. Select the following in the ***Variable Selector*** section: Nodes > Iterable > Parameters > value. You can also add the following expression: `{{$node["Iterable"].parameter["value"]}}`.
5. Click on the ***Add Field*** button and select ***Data Fields***.
6. Click on the ***Add Data Field*** button.
7. Enter `Name` in the ***Key*** field.
8. Enter the name of the user in the ***Value*** field.
9. Click on ***Execute Node*** to run the node.
:::
In the screenshot below, you will notice that the node updates the information of the user that we created in the previous node.
![Using the Iterable node to update the user information](./Iterable1_node.png)
### 4. Iterable2 node (get: user)
This node will get the information of the user that we created using the Iterable node.
::: v-pre
1. Select the credentials that you entered in the previous node.
2. Select 'Get' from the ***Operation*** dropdown list.
3. Click on the gears icon next to the ***Value*** field and click on ***Add Expression***.
4. Select the following in the ***Variable Selector*** section: Nodes > Iterable > Parameters > value. You can also add the following expression: `{{$node["Iterable"].parameter["value"]}}`.
5. Click on ***Execute Node*** to run the node.
:::
In the screenshot below, you will notice that the node gets the information of the user that we created using the Iterable node.
![Using the Iterable node to get the user's information](./Iterable2_node.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 115 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

View File

@ -0,0 +1,87 @@
---
permalink: /nodes/n8n-nodes-base.kafkaTrigger
description: Learn how to use the Kafka Trigger node in n8n
---
# Kafka Trigger
[Kafka](https://kafka.apache.org/) is an open-source distributed event streaming platform that one can use for high-performance data pipelines, streaming analytics, data integration, and mission-critical applications.
::: tip 🔑 Credentials
You can find authentication information for this node [here](../../../credentials/Kafka/README.md).
:::
## Example Usage
This workflow allows you to receive messages from a topic and send an SMS if the value of the temperature is greater than 50. You can also find the [workflow](https://n8n.io/workflows/814) on n8n.io. This example usage workflow would use the following nodes.
- [Kafka Trigger]()
- [IF](../../core-nodes/If/README.md)
- [Vonage](../../nodes/Vonage/README.md)
- [No Operation, do nothing](../../core-nodes/NoOperationDoNothing/README.md)
The final workflow should look like the following image.
![A workflow with the Kafka Trigger node](./workflow.png)
### 1. Kafka Trigger node
This node will trigger the workflow when a new message is sent to the topic `test_topic`. If you're using a different topic, use that instead.
1. First of all, you'll have to enter credentials for the Kafka Trigger node. You can find out how to do that [here](../../../credentials/Kafka/README.md).
2. Enter the name of the topic in the ***Topic*** field.
3. Enter the group ID in the ***Group ID*** field.
4. Click on ***Add Option*** and select 'JSON Parse Message'.
5. Toggle ***JSON Parse Message*** to `true`.
6. Click on ***Execute Node*** to run the node.
In the screenshot below, you will notice that the node gets triggered when a new message is sent to the `topic_test` topic in Kafka.
![Using the Kafka Trigger node to get a message from a topic](./KafkaTrigger_node.png)
### 2. IF node
This node will compare the value of `temp` that we received in the message from the previous node. If the value is greater than 50, it will return true otherwise false.
::: v-pre
1. Click on ***Add Condition*** and select 'Number' from the dropdown list.
2. Click on the gears icon next to the ***Value 1*** field and click on ***Add Expression***.
3. Select the following in the ***Variable Selector*** section: Nodes > Kafka Trigger > Output Data > JSON > message > temp. You can also add the following expression: `{{$node["Kafka Trigger"].json["message"]["temp"]}}`.
4. Select 'Larger' from the ***Operation*** dropdown list.
5. Set ***Value 2*** to 50.
6. Click on ***Execute Node*** to run the node.
:::
In the screenshot below, you will notice that the node returns output for **true** when the temperature is greater than 50.
![Using the IF node to check if the temp is larger than 50](./IF_node.png)
### 3. Vonage node (send: sms)
This node sends an SMS to the specified phone number when the value of `temp` is greater than `50`.
1. Create a Vonage node connected to the 'true' output of the IF node.
2. You'll have to enter credentials for the Vonage node. You can find out how to do that [here](../../../credentials/Vonage/README.md).
3. Enter the name of the sender in the ***From*** field. If you're using a number, enter the number instead.
4. Enter the receiver's phone number in the ***To*** field.
5. Click on the gears icon next to the ***Message*** field and click on ***Add Expression***.
::: v-pre
6. Enter the following in the ***Expression*** field.
```
Alert!
The value of temp is {{$node["Kafka Trigger"].json["message"]["temp"]}}.
```
7. Click on ***Execute Node*** to run the node.
:::
In the screenshot below, you will notice that the node sends an SMS with the value of `temp` that we received from the Kafka Trigger node.
![Using the Vonage node to send an SMS](./Vonage_node.png)
### 4. NoOp node
Adding this node here is optional, as the absence of this node won't make a difference to the functioning of the workflow.
1. Create a ***NoOp*** node connected to the 'false' output of the IF node.
2. Click on ***Execute Node*** to run the node.
![Using the NoOp node](./NoOp_node.png)

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 162 KiB

View File

@ -1,5 +1,21 @@
# Changelog
## n8n@0.97.0
For a comprehensive list of changes, check out the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.96.0...n8n@0.97.0) for this version.<br />
**Release date:** 2020-12-10
- New nodes
- Ghost
- Nasa
- Snowflake
- Twist
- Enhanced nodes
- Automizy: Added options to add and remove tabs for the Update operation of the Contact resource
- Pipedrive: Added label field to Person, Organization, and Deal resources. Also added Update operation for the Organization resource
- Bug fixes
- Fixed a bug that caused OAuth1 requests to break
- Fixed Docker user mount path
## n8n@0.96.0
For a comprehensive list of changes, check out the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.95.1...n8n@0.96.0) for this version.<br />
**Release date:** 2020-12-03