diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 00000000000..ef7431f814b --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,12 @@ +name: Run Vale +on: [pull_request] + +jobs: + vale: + name: runner / vale + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: errata-ai/vale-action@reviewdog + with: + files: '["docs", "_snippets"]' diff --git a/.vale.ini b/.vale.ini index a2ffb82d7b2..37cc79df93b 100644 --- a/.vale.ini +++ b/.vale.ini @@ -2,6 +2,7 @@ StylesPath = "styles" MinAlertLevel = warning Vocab = default [*.md] -BasedOnStyles = alex, write-good, Microsoft, n8n-styles, Vale -alex.Profanity = NO -TokenIgnores = (\-\-8\<\-\- \".*\") +BasedOnStyles = from-alex, from-write-good, n8n-styles, from-microsoft, Vale +Vale.Terms = NO +from-alex.Profanity = NO +TokenIgnores = (\-\-8\<\-\- \".*\"), (-only), (\*\*.*\*\*), (\*\*Release date:\*\*.*), (\[\[\%.*\%\]\]), (\[.*\]\(.*\)\{:target=_blank .external-link\}), (\[\[.*\]\]), (Rocket\.Chat), (\(https.*\)) diff --git a/_snippets/data/data-mapping/item-linking-code-node.md b/_snippets/data/data-mapping/item-linking-code-node.md index cb3430e578e..66ed5b53180 100644 --- a/_snippets/data/data-mapping/item-linking-code-node.md +++ b/_snippets/data/data-mapping/item-linking-code-node.md @@ -25,7 +25,7 @@ To control item linking, set `pairedItem` when returning data. For example, to l ``` -### pairedItem usage example +### `pairedItem` usage example Take this input data: diff --git a/_snippets/flow-logic/subworkflow-usage.md b/_snippets/flow-logic/subworkflow-usage.md index 2f9de43a230..7e8d1eba911 100644 --- a/_snippets/flow-logic/subworkflow-usage.md +++ b/_snippets/flow-logic/subworkflow-usage.md @@ -14,10 +14,10 @@ If there are errors in the sub-workflow, the parent workflow can't trigger it. /// note | Load data into sub-workflow before building This requires the ability to [load data from previous executions](/workflows/executions/debug/), which is available to Pro and Enterprise users. -If you want to load data into your subworkflow to use while building it: +If you want to load data into your sub-workflow to use while building it: -1. Create the subworkflow and add the **Execute Workflow Trigger**. -1. In the subworkflow [settings](/workflows/settings/), set **Save successful production executions** to **Save**. +1. Create the sub-workflow and add the **Execute Workflow Trigger**. +1. In the sub-workflow [settings](/workflows/settings/), set **Save successful production executions** to **Save**. 1. Skip ahead to setting up the parent workflow, and run it. 1. Follow the steps to [load data from previous executions](/workflows/executions/debug/). You'll now have example data pinned in the trigger node, which allows you to work with real data when configuring the rest of the workflow. diff --git a/_snippets/integrations/builtin/cluster-nodes/vector-store-mode.md b/_snippets/integrations/builtin/cluster-nodes/vector-store-mode.md index fc915dc1234..df150b1dbb6 100644 --- a/_snippets/integrations/builtin/cluster-nodes/vector-store-mode.md +++ b/_snippets/integrations/builtin/cluster-nodes/vector-store-mode.md @@ -2,10 +2,11 @@ Vector Store nodes in n8n have three modes: **Get Many**, **Insert Documents** and **Retrieve Documents**. The mode you select determines the operations you can perform with the node and what inputs and outputs are available. + #### Get Many In this mode, you can retrieve multiple documents from your vector database by providing a prompt. The prompt will be embedded and used for similarity search. The node will return the documents that are most similar to the prompt with their similarity score. This is useful if you want to retrieve a list of similar documents and pass them to a chain as additional context. - + #### Insert Documents Use insert documents mode to insert new documents into your vector database. diff --git a/_snippets/integrations/builtin/core-nodes/code-node.md b/_snippets/integrations/builtin/core-nodes/code-node.md index 3ccf3d14bb4..ce6f279539b 100644 --- a/_snippets/integrations/builtin/core-nodes/code-node.md +++ b/_snippets/integrations/builtin/core-nodes/code-node.md @@ -9,7 +9,7 @@ This page gives usage information about the Code node. For more guidance on codi /// /// 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}. +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){: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}. /// ## Usage @@ -49,7 +49,7 @@ The syntax to use the built-in methods and variables is `$variableName` or `$met 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/){:target=_blank .external-link}, 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){:target=_blank .external-link}. n8n downloads the package automatically the first time you use it. /// note | Slower than JavaScript -The Code node takes longer to process Python than JavaScript. This is due to the additional compilation steps. +The Code node takes longer to process Python than JavaScript. This is due to the extra compilation steps. /// ### Built-in methods and variables diff --git a/_snippets/integrations/builtin/core-nodes/error-trigger/error-data.md b/_snippets/integrations/builtin/core-nodes/error-trigger/error-data.md index d583dcbeff7..e06596d368c 100644 --- a/_snippets/integrations/builtin/core-nodes/error-trigger/error-data.md +++ b/_snippets/integrations/builtin/core-nodes/error-trigger/error-data.md @@ -29,7 +29,7 @@ All information is always present, except: - `execution.url`: requires the execution to be saved in the database. Not present if the error is in the trigger node of the main workflow, as the workflow doesn't execute. - `execution.retryOf`: only present when the execution is a retry of a failed execution. -If the error is caused by the trigger node of the main workflow, rather than a later stage, the data sent to the error workflow is different. There is less information in `execution{}` and more in `trigger{}`: +If the error is caused by the trigger node of the main workflow, rather than a later stage, the data sent to the error workflow is different. There's less information in `execution{}` and more in `trigger{}`: ```json { diff --git a/_snippets/integrations/builtin/core-nodes/merge/if-merge-branch-execution.md b/_snippets/integrations/builtin/core-nodes/merge/if-merge-branch-execution.md index b5d58b7f332..28d31270d8a 100644 --- a/_snippets/integrations/builtin/core-nodes/merge/if-merge-branch-execution.md +++ b/_snippets/integrations/builtin/core-nodes/merge/if-merge-branch-execution.md @@ -7,6 +7,6 @@ The Merge node is triggered by one branch, then goes and executes the other bran For example, in the screenshot below there's a workflow containing a Edit Fields node, If node, and Merge node. The standard If node behavior is to execute one branch (in the screenshot, this is the **true** output). However, due to the Merge node, both branches execute, despite the If node not sending any data down the **false** branch. -![Screenshot of a simple workflow. The workflow has an Edit Fields node, followed by an If node. It ends with a Merge node.](/_images/integrations/builtin/core-nodes/merge/if-merge-node.png) +![Screenshot of a workflow. The workflow has an Edit Fields node, followed by an If node. It ends with a Merge node.](/_images/integrations/builtin/core-nodes/merge/if-merge-node.png) diff --git a/_snippets/integrations/builtin/credentials/google/enable-apis.md b/_snippets/integrations/builtin/credentials/google/enable-apis.md index 407fd855ef5..773821aca1c 100644 --- a/_snippets/integrations/builtin/credentials/google/enable-apis.md +++ b/_snippets/integrations/builtin/credentials/google/enable-apis.md @@ -1,7 +1,8 @@ 1. Access your [Google Cloud Console - Library](https://console.cloud.google.com/apis/library){:target=_blank .external-link}. Make sure you're in the correct project. 1. Search for and select the API(s) you want to enable. For example, for the Gmail node, search for and enable the Gmail API. - + /// note | Some integrations need additional APIs + The following integrations require the Google Drive API, as well as their own API: * Google Docs diff --git a/_snippets/integrations/creating-nodes/testing.md b/_snippets/integrations/creating-nodes/testing.md index e92daa4f768..0d5d59af9c3 100644 --- a/_snippets/integrations/creating-nodes/testing.md +++ b/_snippets/integrations/creating-nodes/testing.md @@ -36,7 +36,7 @@ You can test your node as you build it by running it in a local n8n instance. ### Troubleshooting -- There is no `custom` directory in `~/.n8n` local installation. +- There's no `custom` directory in `~/.n8n` local installation. You have to create `custom` directory manually and run `npm init` ```shell diff --git a/_snippets/privacy-security/gdpr-self-hosted.md b/_snippets/privacy-security/gdpr-self-hosted.md index 5c0a830489a..b8ed9e3be58 100644 --- a/_snippets/privacy-security/gdpr-self-hosted.md +++ b/_snippets/privacy-security/gdpr-self-hosted.md @@ -1 +1 @@ -If you self-host n8n, you are responsible for deleting user data. If you need to delete data on behalf of one of your users, you can delete the respective execution. n8n recommends configuring n8n to prune execution data automatically after few days to avoid effortful GDPR request handling as much as possible. Configure this using the `EXECUTIONS_DATA_MAX_AGE` environment variable. Refer to [Environment variables](/hosting/environment-variables/environment-variables/) for more information. +If you self-host n8n, you are responsible for deleting user data. If you need to delete data on behalf of one of your users, you can delete the respective execution. n8n recommends configuring n8n to prune execution data automatically every few days to avoid effortful GDPR request handling as much as possible. Configure this using the `EXECUTIONS_DATA_MAX_AGE` environment variable. Refer to [Environment variables](/hosting/environment-variables/environment-variables/) for more information. diff --git a/_snippets/self-hosting/installation/tunnel.md b/_snippets/self-hosting/installation/tunnel.md index 4272b8b4b18..6b820ec8b02 100644 --- a/_snippets/self-hosting/installation/tunnel.md +++ b/_snippets/self-hosting/installation/tunnel.md @@ -1,7 +1,7 @@ ## n8n with tunnel /// danger -This is only meant for local development and testing. Do not use it in production. +Use this for local development and testing. It isn't safe to use it in production. /// -To be able to use webhooks for trigger nodes of external services like GitHub, n8n has to be reachable from the web. To make that easy, n8n has a special [tunnel service](https://github.com/localtunnel/localtunnel) which redirects requests from our servers to your local n8n instance. +To be able to use webhooks for trigger nodes of external services like GitHub, n8n has to be reachable from the web. n8n has a [tunnel service](https://github.com/localtunnel/localtunnel) which redirects requests from n8n's servers to your local n8n instance. diff --git a/_snippets/source-control-environments/multi-instance-one-branch-pros-cons.md b/_snippets/source-control-environments/multi-instance-one-branch-pros-cons.md index 71007825263..e43a8b2aeef 100644 --- a/_snippets/source-control-environments/multi-instance-one-branch-pros-cons.md +++ b/_snippets/source-control-environments/multi-instance-one-branch-pros-cons.md @@ -2,5 +2,5 @@ The advantage of this pattern is that work is instantly available to other envir The disadvantages are: -* If you push by mistake, there is a risk the work will make it into your production instance. If you [use a GitHub Action to automate pulls](#optional-use-a-github-action-to-automate-pulls) to production, you must either use the multi-instance, multi-branch pattern, or be very careful to never push work that you don't want in production. +* If you push by mistake, there is a risk the work will make it into your production instance. If you [use a GitHub Action to automate pulls](#optional-use-a-github-action-to-automate-pulls) to production, you must either use the multi-instance, multi-branch pattern, or be careful to never push work that you don't want in production. * Pushing and pulling to the same instance can cause data loss as changes are overridden when performing these actions. You should set up processes to ensure content flows in one direction. diff --git a/docs/integrations/creating-nodes/build/create-trigger-node.md b/archive/create-trigger-node.md similarity index 95% rename from docs/integrations/creating-nodes/build/create-trigger-node.md rename to archive/create-trigger-node.md index 1dd7e27318f..6bd39482c4b 100644 --- a/docs/integrations/creating-nodes/build/create-trigger-node.md +++ b/archive/create-trigger-node.md @@ -41,7 +41,7 @@ Since n8n's repository already has a Autopilot Trigger node, we will name this n 3. Within the Autofriend folder, create a file called `AutofriendTrigger.node.ts` (YourNodeNameTrigger.node.ts). 4. Download and add the Autofriend [icon](https://github.com/n8n-io/n8n/blob/master/packages/nodes-base/nodes/Autopilot/autopilot.svg) to the folder. Name it `autopilot.svg`. - The icon property has to be either a 60x60 pixels PNG or an SVG and must exist in the node's folder. - - An SVG is preferable. In case you have to use a PNG, make sure that it is compressed. A good tool for that is [tinypng](https://tinypng.com). + - An SVG is preferable. In case you have to use a PNG, make sure that it's compressed. A good tool for that's [tinypng](https://tinypng.com). - A good place to find company icons is [gilbarbara/logos](https://github.com/gilbarbara/logos/tree/master/logos). 5. Paste the following code in the `AutofriendTrigger.node.ts` file. @@ -77,7 +77,7 @@ export class AutofriendTrigger implements INodeType { group: ['trigger'], version: 1, subtitle: '={{$parameter["event"]}}', - description: 'Handle Autofriend events via webhooks', + description: 'Handle Autofriend events using webhooks', defaults: { name: 'Autofriend Trigger', color: '#6ad7b9', @@ -140,7 +140,7 @@ npm run dev - On startup, n8n will load all the nodes and credentials (more about credentials later) that are registered in `/packages/nodes-base/package.json`. - The property `description.name` uses camelCase. -- The property `description.color` is the company's branding color in hexadecimal. In case the website does not include this information, there are other websites that help you get a company's branding colors. For example, [brandpalettes.com](https://brandpalettes.com/). +- The property `description.color` is the company's branding color in hexadecimal. In case the website doesn'tinclude this information, there are other websites that help you get a company's branding colors. For example, [brandpalettes.com](https://brandpalettes.com/). ## Creating the UI for the node @@ -218,7 +218,7 @@ The node should now look like in the following image. Most REST APIs use some sort of authentication mechanism. Autofriend's REST API uses API Keys. The API Key informs them about who is making the request to their system and gives you access to all the functionality that the API provides. Given all the things it can do, this has to be treated as a sensitive piece of information and should be kept private. -n8n gives you the ability to ask for sensitive information using credentials. In the credentials, you can use all the generally available UI elements. Additionally, the data that is stored using the credentials would be encrypted before being saved to the database. In order to do that, n8n uses an encryption key. +n8n gives you the ability to ask for sensitive information using credentials. In the credentials, you can use all the generally available UI elements. Additionally, the data that's stored using the credentials would be encrypted before being saved to the database. In order to do that, n8n uses an encryption key. With that in mind, let's create the UI to ask for the user's Autofriend API Key. The process of creating and registering credentials is similar to that of creating and registering the node: @@ -319,8 +319,8 @@ The life cycle methods allow us to create, delete, and check if the webhook exis **Methods** -- `checkExist`: This is the first method that gets called. It checks if the webhook with the current path is already registered in the external system or not. If the webhook is already registered, n8n persists the webhook ID. If the webhook is not registered with the external system, the `create` method gets executed. -- `create`: This method gets called if the `checkExist` method returns false (if the webhook with the current path does not exist in the external system). This method registers the webhook in the external system and stores the webhook ID in n8n. +- `checkExist`: This is the first method that gets called. It checks if the webhook with the current path is already registered in the external system or not. If the webhook is already registered, n8n persists the webhook ID. If the webhook isn't registered with the external system, the `create` method gets executed. +- `create`: This method gets called if the `checkExist` method returns false (if the webhook with the current path doesn'texist in the external system). This method registers the webhook in the external system and stores the webhook ID in n8n. - `delete`: This method gets called when the trigger is either stopped manually or when the workflow is deactivated. It uses the ID previously persisted by either the create or the checkExist method to delete the webhook from the external system. ![Lifecycle flowchart](/_images/integrations/creating-nodes/lifecycle.png) @@ -459,7 +459,7 @@ The trigger node is now receiving events. Sometimes it might take a bit longer f You probably noticed that this time we did not run the project using `npm run dev`, but instead using `./packages/cli/bin/n8n start --tunnel`. -Since our server is running locally, we need a tool that lets us proxy all requests to our local machine so that n8n receives and handles the events from the external service (Autopilot). This gets achieved using a tunnel. The details on how a tunnel works are out of the scope of this tutorial. If you want to know about it, you can check this [link](http://localtunnel.github.io/www/). Keep in mind that the tunnel is meant for development purposes only and should not be used in production. +Since our server is running locally, we need a tool that lets us proxy all requests to our local machine so that n8n receives and handles the events from the external service (Autopilot). This gets achieved using a tunnel. The details on how a tunnel works are out of the scope of this tutorial. If you want to know about it, you can check this [link](http://localtunnel.github.io/www/). Keep in mind that the tunnel is meant for development purposes only and shouldn't be used in production. ## Test your node diff --git a/docs/1-0-migration-checklist.md b/docs/1-0-migration-checklist.md index 99a55b460e1..3de365c7a8d 100644 --- a/docs/1-0-migration-checklist.md +++ b/docs/1-0-migration-checklist.md @@ -16,7 +16,7 @@ The release of n8n 1.0 marks a milestone in n8n's journey to make n8n available This release introduces [semantic versioning](https://semver.org/){:target=_blank .external link}. This allows n8n to signal backwards-incompatible changes directly in the version number, making it easier to update n8n safely. -From n8n 1.0 onwards, releases will follow the pattern MAJOR.MINOR.PATCH. Version numbers increment as follows: +From n8n 1.0 on, releases will follow the pattern MAJOR.MINOR.PATCH. Version numbers increment as follows: - MAJOR version when making incompatible changes which potentially require user action - MINOR version when adding functionality in a backward-compatible manner @@ -72,7 +72,7 @@ docker run --rm -it --user root -v ~/.n8n:/home/node/.n8n --entrypoint chown n8n #### Image removal -We have removed the Debian and RHEL images. If you were using these you need to change the image you use. This shouldn't result in any errors unless you were making a custom image based on one of those images. +We've removed the Debian and RHEL images. If you were using these you need to change the image you use. This shouldn't result in any errors unless you were making a custom image based on one of those images. #### Entrypoint change diff --git a/docs/_extra/publicapi.yml b/docs/_extra/publicapi.yml index 1a82ca72c30..e624e28c630 100644 --- a/docs/_extra/publicapi.yml +++ b/docs/_extra/publicapi.yml @@ -823,7 +823,7 @@ components: risk: credentials sections: - title: Credentials not used in any workflow - description: These credentials are not used in any workflow. Keeping unused credentials in your instance is an unneeded security risk. + description: These credentials aren't used in any workflow. Keeping unused credentials in your instance is an unneeded security risk. recommendation: Consider deleting these credentials if you no longer need them. location: - kind: credential @@ -853,7 +853,7 @@ components: - title: Nodes that interact with the filesystem description: This node reads from and writes to any accessible file in the host filesystem. Sensitive file content may be manipulated through a node operation. recommendation: Consider protecting any sensitive files in the host filesystem - or refactoring the workflow so that it does not require host filesystem interaction.: null + or refactoring the workflow so that it doesn'trequire host filesystem interaction.: null location: - kind: node workflowId: '1' @@ -867,7 +867,7 @@ components: risk: nodes sections: - title: Community nodes - description: This node is sourced from the community. Community nodes are not vetted by the n8n team and have full access to the host system. + description: This node is sourced from the community. Community nodes aren't vetted by the n8n team and have full access to the host system. recommendation: Consider reviewing the source code in any community nodes installed in this n8n instance and uninstalling any community nodes no longer used.: null location: @@ -880,7 +880,7 @@ components: risk: execution sections: - title: Unprotected webhooks in instance - description: These webhook nodes have the "Authentication" field set to "None" and are not directly connected to a node to validate the payload. Every unprotected webhook allows your workflow to be called by any third party who knows the webhook URL. + description: These webhook nodes have the "Authentication" field set to "None" and aren't directly connected to a node to validate the payload. Every unprotected webhook allows your workflow to be called by any third party who knows the webhook URL. recommendation: Consider setting the "Authentication" field to an option other than "None" or validating the payload with one of the following nodes.: null location: diff --git a/docs/_images/integrations/builtin/app-nodes/apitemplateio/apitemplate.io_node.png b/docs/_images/integrations/builtin/app-nodes/apitemplateio/apitemplate.io_node.png deleted file mode 100644 index a1950fa5664..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/apitemplateio/apitemplate.io_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/apitemplateio/typeformtrigger_node.png b/docs/_images/integrations/builtin/app-nodes/apitemplateio/typeformtrigger_node.png deleted file mode 100644 index 5ba36def1ee..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/apitemplateio/typeformtrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/apitemplateio/workflow.png b/docs/_images/integrations/builtin/app-nodes/apitemplateio/workflow.png deleted file mode 100644 index 5993d3fb760..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/apitemplateio/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/automizy/automizy1_node.png b/docs/_images/integrations/builtin/app-nodes/automizy/automizy1_node.png deleted file mode 100644 index 1df9588a76f..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/automizy/automizy1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/automizy/automizy2_node.png b/docs/_images/integrations/builtin/app-nodes/automizy/automizy2_node.png deleted file mode 100644 index b7da21ec391..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/automizy/automizy2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/automizy/automizy3_node.png b/docs/_images/integrations/builtin/app-nodes/automizy/automizy3_node.png deleted file mode 100644 index 3bf6e7e18c1..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/automizy/automizy3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/automizy/automizy_node.png b/docs/_images/integrations/builtin/app-nodes/automizy/automizy_node.png deleted file mode 100644 index 2814f06c6b8..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/automizy/automizy_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/automizy/workflow.png b/docs/_images/integrations/builtin/app-nodes/automizy/workflow.png deleted file mode 100644 index c2de3ffa8d2..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/automizy/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot1_node.png b/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot1_node.png deleted file mode 100644 index 00a83e10d6e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot2_node.png b/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot2_node.png deleted file mode 100644 index 878c7a41a06..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot3_node.png b/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot3_node.png deleted file mode 100644 index 98cce53314f..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot_node.png b/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot_node.png deleted file mode 100644 index 39253d2c46c..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/autopilot/autopilot_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/autopilot/workflow.png b/docs/_images/integrations/builtin/app-nodes/autopilot/workflow.png deleted file mode 100644 index ec0172974cb..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/autopilot/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awscomprehend/awscomprehend_node.png b/docs/_images/integrations/builtin/app-nodes/awscomprehend/awscomprehend_node.png deleted file mode 100644 index c002dc153a9..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awscomprehend/awscomprehend_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awscomprehend/if_node.png b/docs/_images/integrations/builtin/app-nodes/awscomprehend/if_node.png deleted file mode 100644 index 735acd7b1d6..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awscomprehend/if_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awscomprehend/mattermost_node.png b/docs/_images/integrations/builtin/app-nodes/awscomprehend/mattermost_node.png deleted file mode 100644 index 8d36d17de34..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awscomprehend/mattermost_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awscomprehend/noop_node.png b/docs/_images/integrations/builtin/app-nodes/awscomprehend/noop_node.png deleted file mode 100644 index 934a96a8982..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awscomprehend/noop_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awscomprehend/typeformtrigger_node.png b/docs/_images/integrations/builtin/app-nodes/awscomprehend/typeformtrigger_node.png deleted file mode 100644 index 2bc1ddf9a4d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awscomprehend/typeformtrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awscomprehend/workflow.png b/docs/_images/integrations/builtin/app-nodes/awscomprehend/workflow.png deleted file mode 100644 index b4d98d7e58e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awscomprehend/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awstextract/awss3_node.png b/docs/_images/integrations/builtin/app-nodes/awstextract/awss3_node.png deleted file mode 100644 index 5d20f55f5df..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awstextract/awss3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awstextract/awstextract_node.png b/docs/_images/integrations/builtin/app-nodes/awstextract/awstextract_node.png deleted file mode 100644 index 61b1a9e96db..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awstextract/awstextract_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awstextract/workflow.png b/docs/_images/integrations/builtin/app-nodes/awstextract/workflow.png deleted file mode 100644 index 4ae4e6ce0a4..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awstextract/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awstranscribe/awss3_node.png b/docs/_images/integrations/builtin/app-nodes/awstranscribe/awss3_node.png deleted file mode 100644 index 33af79b3afa..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awstranscribe/awss3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awstranscribe/awstranscribe_node.png b/docs/_images/integrations/builtin/app-nodes/awstranscribe/awstranscribe_node.png deleted file mode 100644 index 30e5da4d2d5..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awstranscribe/awstranscribe_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/awstranscribe/workflow.png b/docs/_images/integrations/builtin/app-nodes/awstranscribe/workflow.png deleted file mode 100644 index 52ffe075c0d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/awstranscribe/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/beeminder/beeminder_node.png b/docs/_images/integrations/builtin/app-nodes/beeminder/beeminder_node.png deleted file mode 100644 index ec1e9d6c124..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/beeminder/beeminder_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/beeminder/stravatrigger_node.png b/docs/_images/integrations/builtin/app-nodes/beeminder/stravatrigger_node.png deleted file mode 100644 index e79cfcac21d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/beeminder/stravatrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/beeminder/workflow.png b/docs/_images/integrations/builtin/app-nodes/beeminder/workflow.png deleted file mode 100644 index 5f495814392..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/beeminder/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden1_node.png b/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden1_node.png deleted file mode 100644 index da846dc35af..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden2_node.png b/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden2_node.png deleted file mode 100644 index 1cf8fd07dee..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden3_node.png b/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden3_node.png deleted file mode 100644 index ff15f4597ac..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden_node.png b/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden_node.png deleted file mode 100644 index 288d6378bbe..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/bitwarden/bitwarden_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/bitwarden/workflow.png b/docs/_images/integrations/builtin/app-nodes/bitwarden/workflow.png deleted file mode 100644 index 876090bfa15..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/bitwarden/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/bubble/bubble1_node.png b/docs/_images/integrations/builtin/app-nodes/bubble/bubble1_node.png deleted file mode 100644 index 8c5872b9bd8..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/bubble/bubble1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/bubble/bubble2_node.png b/docs/_images/integrations/builtin/app-nodes/bubble/bubble2_node.png deleted file mode 100644 index 283627faba8..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/bubble/bubble2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/bubble/bubble_node.png b/docs/_images/integrations/builtin/app-nodes/bubble/bubble_node.png deleted file mode 100644 index 6e3072128a6..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/bubble/bubble_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/bubble/workflow.png b/docs/_images/integrations/builtin/app-nodes/bubble/workflow.png deleted file mode 100644 index d99e69fa017..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/bubble/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/clockify/clockify1_node.png b/docs/_images/integrations/builtin/app-nodes/clockify/clockify1_node.png deleted file mode 100644 index 1f4fccbc9c4..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/clockify/clockify1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/clockify/clockify2_node.png b/docs/_images/integrations/builtin/app-nodes/clockify/clockify2_node.png deleted file mode 100644 index d00bf702b1d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/clockify/clockify2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/clockify/clockify3_node.png b/docs/_images/integrations/builtin/app-nodes/clockify/clockify3_node.png deleted file mode 100644 index d9dd938057b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/clockify/clockify3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/clockify/clockify_node.png b/docs/_images/integrations/builtin/app-nodes/clockify/clockify_node.png deleted file mode 100644 index 86a09d37619..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/clockify/clockify_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/clockify/workflow.png b/docs/_images/integrations/builtin/app-nodes/clockify/workflow.png deleted file mode 100644 index 7d315d9b03e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/clockify/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/convertkit/convertkit1_node.png b/docs/_images/integrations/builtin/app-nodes/convertkit/convertkit1_node.png deleted file mode 100644 index 943d6b6942d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/convertkit/convertkit1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/convertkit/convertkit2_node.png b/docs/_images/integrations/builtin/app-nodes/convertkit/convertkit2_node.png deleted file mode 100644 index 9d07280b285..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/convertkit/convertkit2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/convertkit/convertkit_node.png b/docs/_images/integrations/builtin/app-nodes/convertkit/convertkit_node.png deleted file mode 100644 index a693d705765..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/convertkit/convertkit_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/convertkit/workflow.png b/docs/_images/integrations/builtin/app-nodes/convertkit/workflow.png deleted file mode 100644 index 0ddc3ef3945..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/convertkit/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/customerio/customerio1_node.png b/docs/_images/integrations/builtin/app-nodes/customerio/customerio1_node.png deleted file mode 100644 index bf9f85f5498..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/customerio/customerio1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/customerio/customerio_node.png b/docs/_images/integrations/builtin/app-nodes/customerio/customerio_node.png deleted file mode 100644 index 7214b2d1864..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/customerio/customerio_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/customerio/workflow.png b/docs/_images/integrations/builtin/app-nodes/customerio/workflow.png deleted file mode 100644 index 8b3510b1f4b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/customerio/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/deepl/deepl_node.png b/docs/_images/integrations/builtin/app-nodes/deepl/deepl_node.png deleted file mode 100644 index c510407d245..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/deepl/deepl_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/deepl/httprequest_node.png b/docs/_images/integrations/builtin/app-nodes/deepl/httprequest_node.png deleted file mode 100644 index 4b95898a7c2..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/deepl/httprequest_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/deepl/workflow.png b/docs/_images/integrations/builtin/app-nodes/deepl/workflow.png deleted file mode 100644 index b0162561cdd..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/deepl/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/demio/demio_node.png b/docs/_images/integrations/builtin/app-nodes/demio/demio_node.png deleted file mode 100644 index 16446153976..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/demio/demio_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/demio/typeformtrigger_node.png b/docs/_images/integrations/builtin/app-nodes/demio/typeformtrigger_node.png deleted file mode 100644 index b37b2837a6e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/demio/typeformtrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/demio/workflow.png b/docs/_images/integrations/builtin/app-nodes/demio/workflow.png deleted file mode 100644 index 4ecf461bed1..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/demio/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/discourse/discourse1_node.png b/docs/_images/integrations/builtin/app-nodes/discourse/discourse1_node.png deleted file mode 100644 index b34d15548a6..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/discourse/discourse1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/discourse/discourse2_node.png b/docs/_images/integrations/builtin/app-nodes/discourse/discourse2_node.png deleted file mode 100644 index b39626f9624..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/discourse/discourse2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/discourse/discourse_node.png b/docs/_images/integrations/builtin/app-nodes/discourse/discourse_node.png deleted file mode 100644 index 7fcc6dc74d7..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/discourse/discourse_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/discourse/workflow.png b/docs/_images/integrations/builtin/app-nodes/discourse/workflow.png deleted file mode 100644 index 509dfb39e96..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/discourse/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/dropcontact/dropcontact_node.png b/docs/_images/integrations/builtin/app-nodes/dropcontact/dropcontact_node.png deleted file mode 100644 index a59c92b877e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/dropcontact/dropcontact_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/dropcontact/googlesheet_node.png b/docs/_images/integrations/builtin/app-nodes/dropcontact/googlesheet_node.png deleted file mode 100644 index bac75e35d78..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/dropcontact/googlesheet_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/dropcontact/lemlist_node.png b/docs/_images/integrations/builtin/app-nodes/dropcontact/lemlist_node.png deleted file mode 100644 index 7f8acef41d4..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/dropcontact/lemlist_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/dropcontact/workflow.png b/docs/_images/integrations/builtin/app-nodes/dropcontact/workflow.png deleted file mode 100644 index fd345e8ea4e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/dropcontact/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/egoi/e-goi1_node.png b/docs/_images/integrations/builtin/app-nodes/egoi/e-goi1_node.png deleted file mode 100644 index 376b55d1f00..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/egoi/e-goi1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/egoi/e-goi2_node.png b/docs/_images/integrations/builtin/app-nodes/egoi/e-goi2_node.png deleted file mode 100644 index 8d6ef5c187c..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/egoi/e-goi2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/egoi/e-goi_node.png b/docs/_images/integrations/builtin/app-nodes/egoi/e-goi_node.png deleted file mode 100644 index ab6b8b582a7..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/egoi/e-goi_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/egoi/workflow.png b/docs/_images/integrations/builtin/app-nodes/egoi/workflow.png deleted file mode 100644 index c8027f1578a..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/egoi/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/emelia/emelia1_node.png b/docs/_images/integrations/builtin/app-nodes/emelia/emelia1_node.png deleted file mode 100644 index 72fc880a2c9..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/emelia/emelia1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/emelia/emelia2_node.png b/docs/_images/integrations/builtin/app-nodes/emelia/emelia2_node.png deleted file mode 100644 index 593076f9a2a..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/emelia/emelia2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/emelia/emelia_node.png b/docs/_images/integrations/builtin/app-nodes/emelia/emelia_node.png deleted file mode 100644 index d1d8e510e7b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/emelia/emelia_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/emelia/workflow.png b/docs/_images/integrations/builtin/app-nodes/emelia/workflow.png deleted file mode 100644 index 11560e98296..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/emelia/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlebooks/googlebooks1_node.png b/docs/_images/integrations/builtin/app-nodes/googlebooks/googlebooks1_node.png deleted file mode 100644 index 3909c605302..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlebooks/googlebooks1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlebooks/googlebooks2_node.png b/docs/_images/integrations/builtin/app-nodes/googlebooks/googlebooks2_node.png deleted file mode 100644 index 33af0102d24..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlebooks/googlebooks2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlebooks/googlebooks_node.png b/docs/_images/integrations/builtin/app-nodes/googlebooks/googlebooks_node.png deleted file mode 100644 index 1beb5591e74..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlebooks/googlebooks_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlebooks/workflow.png b/docs/_images/integrations/builtin/app-nodes/googlebooks/workflow.png deleted file mode 100644 index 53832dc43e9..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlebooks/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/googlecloudnaturallanguage_node.png b/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/googlecloudnaturallanguage_node.png deleted file mode 100644 index eec89e2d18b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/googlecloudnaturallanguage_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/if_node.png b/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/if_node.png deleted file mode 100644 index 05161720f0c..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/if_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/mattermost_node.png b/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/mattermost_node.png deleted file mode 100644 index 764144bd046..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/mattermost_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/noop_node.png b/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/noop_node.png deleted file mode 100644 index 934a96a8982..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/noop_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/typeformtrigger_node.png b/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/typeformtrigger_node.png deleted file mode 100644 index 1be408a997b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/typeformtrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/workflow.png b/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/workflow.png deleted file mode 100644 index 50356d6ca16..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts1_node.png b/docs/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts1_node.png deleted file mode 100644 index 21a99f7fee2..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts2_node.png b/docs/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts2_node.png deleted file mode 100644 index 78e17f4249a..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts_node.png b/docs/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts_node.png deleted file mode 100644 index 8a0f406fe1a..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googlecontacts/workflow.png b/docs/_images/integrations/builtin/app-nodes/googlecontacts/workflow.png deleted file mode 100644 index 05b1420a9de..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googlecontacts/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googledocs/googledocs1_node.png b/docs/_images/integrations/builtin/app-nodes/googledocs/googledocs1_node.png deleted file mode 100644 index 55115193ebc..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googledocs/googledocs1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googledocs/googledocs_node.png b/docs/_images/integrations/builtin/app-nodes/googledocs/googledocs_node.png deleted file mode 100644 index af46974ba53..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googledocs/googledocs_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googledocs/workflow.png b/docs/_images/integrations/builtin/app-nodes/googledocs/workflow.png deleted file mode 100644 index 5e3c00befe0..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googledocs/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googledrive/workflow.png b/docs/_images/integrations/builtin/app-nodes/googledrive/workflow.png deleted file mode 100644 index 91885310126..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googledrive/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googleslides/googleslides1_node.png b/docs/_images/integrations/builtin/app-nodes/googleslides/googleslides1_node.png deleted file mode 100644 index fe509417627..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googleslides/googleslides1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googleslides/googleslides_node.png b/docs/_images/integrations/builtin/app-nodes/googleslides/googleslides_node.png deleted file mode 100644 index e93fd2ffd4b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googleslides/googleslides_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/googleslides/workflow.png b/docs/_images/integrations/builtin/app-nodes/googleslides/workflow.png deleted file mode 100644 index fd50979d00e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/googleslides/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin1_node.png b/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin1_node.png deleted file mode 100644 index ee83264d7d7..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin2_node.png b/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin2_node.png deleted file mode 100644 index 8702f604a3a..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin_node.png b/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin_node.png deleted file mode 100644 index be0921d013f..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/workflow.png b/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/workflow.png deleted file mode 100644 index 9cd5389b2d3..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/gsuiteadmin/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/halopsa/halopsa-client-create.png b/docs/_images/integrations/builtin/app-nodes/halopsa/halopsa-client-create.png deleted file mode 100644 index 1b775722c2d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/halopsa/halopsa-client-create.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/halopsa/workflow.png b/docs/_images/integrations/builtin/app-nodes/halopsa/workflow.png deleted file mode 100644 index ce6cb7a2443..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/halopsa/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/humanticai/httprequest_node.png b/docs/_images/integrations/builtin/app-nodes/humanticai/httprequest_node.png deleted file mode 100644 index bd6dfb402cb..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/humanticai/httprequest_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/humanticai/humanticai1_node.png b/docs/_images/integrations/builtin/app-nodes/humanticai/humanticai1_node.png deleted file mode 100644 index 96357e77fa6..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/humanticai/humanticai1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/humanticai/humanticai2_node.png b/docs/_images/integrations/builtin/app-nodes/humanticai/humanticai2_node.png deleted file mode 100644 index 6b5a29b4058..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/humanticai/humanticai2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/humanticai/humanticai_node.png b/docs/_images/integrations/builtin/app-nodes/humanticai/humanticai_node.png deleted file mode 100644 index 43f995c84c1..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/humanticai/humanticai_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/humanticai/workflow.png b/docs/_images/integrations/builtin/app-nodes/humanticai/workflow.png deleted file mode 100644 index 3d8c79fb4f1..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/humanticai/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/iterable/iterable1_node.png b/docs/_images/integrations/builtin/app-nodes/iterable/iterable1_node.png deleted file mode 100644 index 6f314a760a0..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/iterable/iterable1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/iterable/iterable2_node.png b/docs/_images/integrations/builtin/app-nodes/iterable/iterable2_node.png deleted file mode 100644 index 7726a82c441..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/iterable/iterable2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/iterable/iterable_node.png b/docs/_images/integrations/builtin/app-nodes/iterable/iterable_node.png deleted file mode 100644 index 9a2196a35aa..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/iterable/iterable_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/iterable/workflow.png b/docs/_images/integrations/builtin/app-nodes/iterable/workflow.png deleted file mode 100644 index 97eabac846a..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/iterable/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/jenkins/workflow.png b/docs/_images/integrations/builtin/app-nodes/jenkins/workflow.png deleted file mode 100644 index 27007cb7a96..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/jenkins/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/kitemaker/kitemaker1_node.png b/docs/_images/integrations/builtin/app-nodes/kitemaker/kitemaker1_node.png deleted file mode 100644 index 68fda012b91..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/kitemaker/kitemaker1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/kitemaker/kitemaker2_node.png b/docs/_images/integrations/builtin/app-nodes/kitemaker/kitemaker2_node.png deleted file mode 100644 index f0eb5c3fefb..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/kitemaker/kitemaker2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/kitemaker/kitemaker_node.png b/docs/_images/integrations/builtin/app-nodes/kitemaker/kitemaker_node.png deleted file mode 100644 index 2f259cbb8e5..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/kitemaker/kitemaker_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/kitemaker/workflow.png b/docs/_images/integrations/builtin/app-nodes/kitemaker/workflow.png deleted file mode 100644 index f9e3f56e44d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/kitemaker/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/lemlist/airtable_node.png b/docs/_images/integrations/builtin/app-nodes/lemlist/airtable_node.png deleted file mode 100644 index 8311406308b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/lemlist/airtable_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/lemlist/lemlist1_node.png b/docs/_images/integrations/builtin/app-nodes/lemlist/lemlist1_node.png deleted file mode 100644 index 1bbb8860e4b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/lemlist/lemlist1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/lemlist/lemlist_node.png b/docs/_images/integrations/builtin/app-nodes/lemlist/lemlist_node.png deleted file mode 100644 index 1889790c8ea..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/lemlist/lemlist_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/lemlist/workflow.png b/docs/_images/integrations/builtin/app-nodes/lemlist/workflow.png deleted file mode 100644 index fa8d5c2fa1b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/lemlist/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/lingvanex/httprequest_node.png b/docs/_images/integrations/builtin/app-nodes/lingvanex/httprequest_node.png deleted file mode 100644 index d45777ad50c..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/lingvanex/httprequest_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/lingvanex/lingvanex_node.png b/docs/_images/integrations/builtin/app-nodes/lingvanex/lingvanex_node.png deleted file mode 100644 index 561ee39c032..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/lingvanex/lingvanex_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/lingvanex/workflow.png b/docs/_images/integrations/builtin/app-nodes/lingvanex/workflow.png deleted file mode 100644 index 77640ebf07a..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/lingvanex/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/mailerlite/mailerlite1_node.png b/docs/_images/integrations/builtin/app-nodes/mailerlite/mailerlite1_node.png deleted file mode 100644 index 64b9c70e2b3..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/mailerlite/mailerlite1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/mailerlite/mailerlite2_node.png b/docs/_images/integrations/builtin/app-nodes/mailerlite/mailerlite2_node.png deleted file mode 100644 index 7517d2fee6b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/mailerlite/mailerlite2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/mailerlite/mailerlite_node.png b/docs/_images/integrations/builtin/app-nodes/mailerlite/mailerlite_node.png deleted file mode 100644 index bad060cfe34..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/mailerlite/mailerlite_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/mailerlite/workflow.png b/docs/_images/integrations/builtin/app-nodes/mailerlite/workflow.png deleted file mode 100644 index ff4c74661da..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/mailerlite/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/matrix/if_node.png b/docs/_images/integrations/builtin/app-nodes/matrix/if_node.png deleted file mode 100644 index 214ef272099..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/matrix/if_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/matrix/matrix1_node.png b/docs/_images/integrations/builtin/app-nodes/matrix/matrix1_node.png deleted file mode 100644 index aa788a0c075..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/matrix/matrix1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/matrix/matrix2_node.png b/docs/_images/integrations/builtin/app-nodes/matrix/matrix2_node.png deleted file mode 100644 index 6b6c904b150..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/matrix/matrix2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/matrix/matrix3_node.png b/docs/_images/integrations/builtin/app-nodes/matrix/matrix3_node.png deleted file mode 100644 index a6cfd5ca765..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/matrix/matrix3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/matrix/matrix4_node.png b/docs/_images/integrations/builtin/app-nodes/matrix/matrix4_node.png deleted file mode 100644 index e654e455909..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/matrix/matrix4_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/matrix/matrix_node.png b/docs/_images/integrations/builtin/app-nodes/matrix/matrix_node.png deleted file mode 100644 index cbf133ba78c..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/matrix/matrix_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/matrix/noop_node.png b/docs/_images/integrations/builtin/app-nodes/matrix/noop_node.png deleted file mode 100644 index 18c41b7107d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/matrix/noop_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/matrix/workflow.png b/docs/_images/integrations/builtin/app-nodes/matrix/workflow.png deleted file mode 100644 index 23c19a74342..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/matrix/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/medium/workflow.png b/docs/_images/integrations/builtin/app-nodes/medium/workflow.png deleted file mode 100644 index baace17b531..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/medium/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams1_node.png b/docs/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams1_node.png deleted file mode 100644 index 9b05a50069b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams2_node.png b/docs/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams2_node.png deleted file mode 100644 index 6e3822ea071..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams_node.png b/docs/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams_node.png deleted file mode 100644 index e0837214d22..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/microsoftteams/workflow.png b/docs/_images/integrations/builtin/app-nodes/microsoftteams/workflow.png deleted file mode 100644 index a5a9727d379..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/microsoftteams/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo1_node.png b/docs/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo1_node.png deleted file mode 100644 index 44691513df7..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo2_node.png b/docs/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo2_node.png deleted file mode 100644 index 27df37bd8be..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo_node.png b/docs/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo_node.png deleted file mode 100644 index 9c39fc3eaec..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/microsofttodo/workflow.png b/docs/_images/integrations/builtin/app-nodes/microsofttodo/workflow.png deleted file mode 100644 index 5c4fa4f0bc7..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/microsofttodo/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/mindee/httprequest_node.png b/docs/_images/integrations/builtin/app-nodes/mindee/httprequest_node.png deleted file mode 100644 index 08ebea8725c..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/mindee/httprequest_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/mindee/mindee_node.png b/docs/_images/integrations/builtin/app-nodes/mindee/mindee_node.png deleted file mode 100644 index 3653d920fbf..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/mindee/mindee_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/mindee/workflow.png b/docs/_images/integrations/builtin/app-nodes/mindee/workflow.png deleted file mode 100644 index b259ff4c98d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/mindee/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/openthesaurus/openthesaurus_node.png b/docs/_images/integrations/builtin/app-nodes/openthesaurus/openthesaurus_node.png deleted file mode 100644 index f03dc71f059..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/openthesaurus/openthesaurus_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/openthesaurus/workflow.png b/docs/_images/integrations/builtin/app-nodes/openthesaurus/workflow.png deleted file mode 100644 index de973a0d055..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/openthesaurus/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/orbit/orbit1_node.png b/docs/_images/integrations/builtin/app-nodes/orbit/orbit1_node.png deleted file mode 100644 index d2e2c9930f6..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/orbit/orbit1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/orbit/orbit2_node.png b/docs/_images/integrations/builtin/app-nodes/orbit/orbit2_node.png deleted file mode 100644 index 430f86148c1..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/orbit/orbit2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/orbit/orbit3_node.png b/docs/_images/integrations/builtin/app-nodes/orbit/orbit3_node.png deleted file mode 100644 index 21f7c5319aa..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/orbit/orbit3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/orbit/orbit_node.png b/docs/_images/integrations/builtin/app-nodes/orbit/orbit_node.png deleted file mode 100644 index fa0657d0625..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/orbit/orbit_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/orbit/workflow.png b/docs/_images/integrations/builtin/app-nodes/orbit/workflow.png deleted file mode 100644 index 6e0a70c27c9..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/orbit/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/paddle/paddle_node.png b/docs/_images/integrations/builtin/app-nodes/paddle/paddle_node.png deleted file mode 100644 index 15e4281f05f..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/paddle/paddle_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/paddle/workflow.png b/docs/_images/integrations/builtin/app-nodes/paddle/workflow.png deleted file mode 100644 index e6ddf17020b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/paddle/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/pagerduty/pagerduty1_node.png b/docs/_images/integrations/builtin/app-nodes/pagerduty/pagerduty1_node.png deleted file mode 100644 index afcb3143389..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/pagerduty/pagerduty1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/pagerduty/pagerduty2_node.png b/docs/_images/integrations/builtin/app-nodes/pagerduty/pagerduty2_node.png deleted file mode 100644 index 456cbb34294..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/pagerduty/pagerduty2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/pagerduty/pagerduty_node.png b/docs/_images/integrations/builtin/app-nodes/pagerduty/pagerduty_node.png deleted file mode 100644 index 2e3de2792f3..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/pagerduty/pagerduty_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/pagerduty/workflow.png b/docs/_images/integrations/builtin/app-nodes/pagerduty/workflow.png deleted file mode 100644 index 8e2d90d2330..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/pagerduty/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/peekalink/if_node.png b/docs/_images/integrations/builtin/app-nodes/peekalink/if_node.png deleted file mode 100644 index 361fd776bb8..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/peekalink/if_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/peekalink/noop_node.png b/docs/_images/integrations/builtin/app-nodes/peekalink/noop_node.png deleted file mode 100644 index 5a19f49af61..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/peekalink/noop_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/peekalink/peekalink1_node.png b/docs/_images/integrations/builtin/app-nodes/peekalink/peekalink1_node.png deleted file mode 100644 index ec6af25cc2c..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/peekalink/peekalink1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/peekalink/peekalink_node.png b/docs/_images/integrations/builtin/app-nodes/peekalink/peekalink_node.png deleted file mode 100644 index 3c2409cc6e3..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/peekalink/peekalink_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/peekalink/workflow.png b/docs/_images/integrations/builtin/app-nodes/peekalink/workflow.png deleted file mode 100644 index dc8ddef57c9..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/peekalink/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/philipshue/workflow.png b/docs/_images/integrations/builtin/app-nodes/philipshue/workflow.png deleted file mode 100644 index 59d0cff8cd1..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/philipshue/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/posthog/posthog_node.png b/docs/_images/integrations/builtin/app-nodes/posthog/posthog_node.png deleted file mode 100644 index d242f062054..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/posthog/posthog_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/posthog/webhook_node.png b/docs/_images/integrations/builtin/app-nodes/posthog/webhook_node.png deleted file mode 100644 index 5591f0d0e00..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/posthog/webhook_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/posthog/workflow.png b/docs/_images/integrations/builtin/app-nodes/posthog/workflow.png deleted file mode 100644 index f1445b2f4ab..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/posthog/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop1_node.png b/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop1_node.png deleted file mode 100644 index 704c2f7345e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop2_node.png b/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop2_node.png deleted file mode 100644 index 11f5dab6bfc..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop3_node.png b/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop3_node.png deleted file mode 100644 index ab0cdadd244..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop_node.png b/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop_node.png deleted file mode 100644 index b626b578722..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/raindrop/raindrop_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/raindrop/workflow.png b/docs/_images/integrations/builtin/app-nodes/raindrop/workflow.png deleted file mode 100644 index f0984b90dbb..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/raindrop/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/reddit/reddit1_node.png b/docs/_images/integrations/builtin/app-nodes/reddit/reddit1_node.png deleted file mode 100644 index fa942b708e0..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/reddit/reddit1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/reddit/reddit2_node.png b/docs/_images/integrations/builtin/app-nodes/reddit/reddit2_node.png deleted file mode 100644 index a9b26588489..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/reddit/reddit2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/reddit/reddit_node.png b/docs/_images/integrations/builtin/app-nodes/reddit/reddit_node.png deleted file mode 100644 index d94429dba49..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/reddit/reddit_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/reddit/workflow.png b/docs/_images/integrations/builtin/app-nodes/reddit/workflow.png deleted file mode 100644 index fb5c242a1f0..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/reddit/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/rocketchat/workflow.png b/docs/_images/integrations/builtin/app-nodes/rocketchat/workflow.png deleted file mode 100644 index 253d2753bf2..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/rocketchat/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/salesforce/salesforce1_node.png b/docs/_images/integrations/builtin/app-nodes/salesforce/salesforce1_node.png deleted file mode 100644 index dde1c0f7fd1..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/salesforce/salesforce1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/salesforce/salesforce2_node.png b/docs/_images/integrations/builtin/app-nodes/salesforce/salesforce2_node.png deleted file mode 100644 index 6902a8ea671..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/salesforce/salesforce2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/salesforce/salesforce_node.png b/docs/_images/integrations/builtin/app-nodes/salesforce/salesforce_node.png deleted file mode 100644 index 68190c209ea..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/salesforce/salesforce_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/salesforce/workflow.png b/docs/_images/integrations/builtin/app-nodes/salesforce/workflow.png deleted file mode 100644 index 088fcd91473..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/salesforce/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/sendy/sendy1_node.png b/docs/_images/integrations/builtin/app-nodes/sendy/sendy1_node.png deleted file mode 100644 index 1bad98c130b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/sendy/sendy1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/sendy/sendy_node.png b/docs/_images/integrations/builtin/app-nodes/sendy/sendy_node.png deleted file mode 100644 index fdf0279e6b4..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/sendy/sendy_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/sendy/workflow.png b/docs/_images/integrations/builtin/app-nodes/sendy/workflow.png deleted file mode 100644 index 06c5f10d2c7..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/sendy/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/storyblok/storyblok1_node.png b/docs/_images/integrations/builtin/app-nodes/storyblok/storyblok1_node.png deleted file mode 100644 index 0cc24bd6e21..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/storyblok/storyblok1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/storyblok/storyblok_node.png b/docs/_images/integrations/builtin/app-nodes/storyblok/storyblok_node.png deleted file mode 100644 index fe722cfa369..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/storyblok/storyblok_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/storyblok/workflow.png b/docs/_images/integrations/builtin/app-nodes/storyblok/workflow.png deleted file mode 100644 index 50b12ab9a8e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/storyblok/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/taiga/taiga1_node.png b/docs/_images/integrations/builtin/app-nodes/taiga/taiga1_node.png deleted file mode 100644 index 27a8e07ea0a..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/taiga/taiga1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/taiga/taiga2_node.png b/docs/_images/integrations/builtin/app-nodes/taiga/taiga2_node.png deleted file mode 100644 index c69510be78d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/taiga/taiga2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/taiga/taiga_node.png b/docs/_images/integrations/builtin/app-nodes/taiga/taiga_node.png deleted file mode 100644 index da6626cea31..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/taiga/taiga_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/taiga/workflow.png b/docs/_images/integrations/builtin/app-nodes/taiga/workflow.png deleted file mode 100644 index 0dc535cacc2..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/taiga/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/travisci/travisci_node.png b/docs/_images/integrations/builtin/app-nodes/travisci/travisci_node.png deleted file mode 100644 index 1f88fb57bf5..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/travisci/travisci_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/travisci/workflow.png b/docs/_images/integrations/builtin/app-nodes/travisci/workflow.png deleted file mode 100644 index f7b4335950a..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/travisci/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/twist/twist1_node.png b/docs/_images/integrations/builtin/app-nodes/twist/twist1_node.png deleted file mode 100644 index 10013f46da6..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/twist/twist1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/twist/twist2_node.png b/docs/_images/integrations/builtin/app-nodes/twist/twist2_node.png deleted file mode 100644 index 0b2584b2abd..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/twist/twist2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/twist/twist_node.png b/docs/_images/integrations/builtin/app-nodes/twist/twist_node.png deleted file mode 100644 index 4f0de5ffffd..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/twist/twist_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/twist/workflow.png b/docs/_images/integrations/builtin/app-nodes/twist/workflow.png deleted file mode 100644 index 113e41c8421..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/twist/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/uproc/telegram_node.png b/docs/_images/integrations/builtin/app-nodes/uproc/telegram_node.png deleted file mode 100644 index b05a5b3dbc0..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/uproc/telegram_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/uproc/uproc_node.png b/docs/_images/integrations/builtin/app-nodes/uproc/uproc_node.png deleted file mode 100644 index d230715014b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/uproc/uproc_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/uproc/workflow.png b/docs/_images/integrations/builtin/app-nodes/uproc/workflow.png deleted file mode 100644 index aa15e092412..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/uproc/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot1_node.png b/docs/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot1_node.png deleted file mode 100644 index c206391a87e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot2_node.png b/docs/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot2_node.png deleted file mode 100644 index f1d676f9012..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot_node.png b/docs/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot_node.png deleted file mode 100644 index 17fbc7f1fc1..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/uptimerobot/workflow.png b/docs/_images/integrations/builtin/app-nodes/uptimerobot/workflow.png deleted file mode 100644 index cfce2aa9d90..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/uptimerobot/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/vero/workflow.png b/docs/_images/integrations/builtin/app-nodes/vero/workflow.png deleted file mode 100644 index 21c43050157..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/vero/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/webflow/webflow1_node.png b/docs/_images/integrations/builtin/app-nodes/webflow/webflow1_node.png deleted file mode 100644 index e5c907221db..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/webflow/webflow1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/webflow/webflow2_node.png b/docs/_images/integrations/builtin/app-nodes/webflow/webflow2_node.png deleted file mode 100644 index 35cad817e39..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/webflow/webflow2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/webflow/webflow_node.png b/docs/_images/integrations/builtin/app-nodes/webflow/webflow_node.png deleted file mode 100644 index a44f1a2c59e..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/webflow/webflow_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/webflow/workflow.png b/docs/_images/integrations/builtin/app-nodes/webflow/workflow.png deleted file mode 100644 index 233f0bf0585..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/webflow/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wekan/wekan1_node.png b/docs/_images/integrations/builtin/app-nodes/wekan/wekan1_node.png deleted file mode 100644 index eba9eab40be..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wekan/wekan1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wekan/wekan2_node.png b/docs/_images/integrations/builtin/app-nodes/wekan/wekan2_node.png deleted file mode 100644 index 62442cafe0b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wekan/wekan2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wekan/wekan3_node.png b/docs/_images/integrations/builtin/app-nodes/wekan/wekan3_node.png deleted file mode 100644 index 4272684dd2d..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wekan/wekan3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wekan/wekan4_node.png b/docs/_images/integrations/builtin/app-nodes/wekan/wekan4_node.png deleted file mode 100644 index 7b47a4c3bd2..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wekan/wekan4_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wekan/wekan_node.png b/docs/_images/integrations/builtin/app-nodes/wekan/wekan_node.png deleted file mode 100644 index 7ed9756f51f..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wekan/wekan_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wekan/workflow.png b/docs/_images/integrations/builtin/app-nodes/wekan/workflow.png deleted file mode 100644 index ce32411054c..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wekan/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wise/wise1_node.png b/docs/_images/integrations/builtin/app-nodes/wise/wise1_node.png deleted file mode 100644 index c4443ece52f..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wise/wise1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wise/wise2_node.png b/docs/_images/integrations/builtin/app-nodes/wise/wise2_node.png deleted file mode 100644 index f28bf4ad86b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wise/wise2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wise/wise3_node.png b/docs/_images/integrations/builtin/app-nodes/wise/wise3_node.png deleted file mode 100644 index 87e164fe5d1..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wise/wise3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wise/wise_node.png b/docs/_images/integrations/builtin/app-nodes/wise/wise_node.png deleted file mode 100644 index 9d05ef1780f..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wise/wise_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wise/workflow.png b/docs/_images/integrations/builtin/app-nodes/wise/workflow.png deleted file mode 100644 index 95d11971023..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wise/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wordpress/wordpress1_node.png b/docs/_images/integrations/builtin/app-nodes/wordpress/wordpress1_node.png deleted file mode 100644 index c815f16190b..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wordpress/wordpress1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wordpress/wordpress_node.png b/docs/_images/integrations/builtin/app-nodes/wordpress/wordpress_node.png deleted file mode 100644 index e12d0b39d85..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wordpress/wordpress_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/wordpress/workflow.png b/docs/_images/integrations/builtin/app-nodes/wordpress/workflow.png deleted file mode 100644 index e168fc9df56..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/wordpress/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/yourls/workflow.png b/docs/_images/integrations/builtin/app-nodes/yourls/workflow.png deleted file mode 100644 index 76907a213db..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/yourls/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/yourls/yourls1_node.png b/docs/_images/integrations/builtin/app-nodes/yourls/yourls1_node.png deleted file mode 100644 index 63362b2a7ee..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/yourls/yourls1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/app-nodes/yourls/yourls_node.png b/docs/_images/integrations/builtin/app-nodes/yourls/yourls_node.png deleted file mode 100644 index 4b10a65fd98..00000000000 Binary files a/docs/_images/integrations/builtin/app-nodes/yourls/yourls_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/activationtrigger/activationtrigger_node.png b/docs/_images/integrations/builtin/core-nodes/activationtrigger/activationtrigger_node.png deleted file mode 100644 index f09ebe8bca9..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/activationtrigger/activationtrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/activationtrigger/mattermost_node.png b/docs/_images/integrations/builtin/core-nodes/activationtrigger/mattermost_node.png deleted file mode 100644 index a958fa63e99..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/activationtrigger/mattermost_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/activationtrigger/workflow.png b/docs/_images/integrations/builtin/core-nodes/activationtrigger/workflow.png deleted file mode 100644 index 5cfcce2f4fa..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/activationtrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/ftp/ftp1_node.png b/docs/_images/integrations/builtin/core-nodes/ftp/ftp1_node.png deleted file mode 100644 index 61a15b3d8ca..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/ftp/ftp1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/ftp/ftp_node.png b/docs/_images/integrations/builtin/core-nodes/ftp/ftp_node.png deleted file mode 100644 index 93ae1ee2aa6..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/ftp/ftp_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/ftp/httprequest_node.png b/docs/_images/integrations/builtin/core-nodes/ftp/httprequest_node.png deleted file mode 100644 index 9ccd89d4dbd..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/ftp/httprequest_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/ftp/workflow.png b/docs/_images/integrations/builtin/core-nodes/ftp/workflow.png deleted file mode 100644 index 54d118f5576..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/ftp/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/git/git1_node.png b/docs/_images/integrations/builtin/core-nodes/git/git1_node.png deleted file mode 100644 index bc8c6105782..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/git/git1_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/git/git2_node.png b/docs/_images/integrations/builtin/core-nodes/git/git2_node.png deleted file mode 100644 index 72a97b0ca7e..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/git/git2_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/git/git3_node.png b/docs/_images/integrations/builtin/core-nodes/git/git3_node.png deleted file mode 100644 index f52aa541bc8..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/git/git3_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/git/git_node.png b/docs/_images/integrations/builtin/core-nodes/git/git_node.png deleted file mode 100644 index 3ed2ea30de5..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/git/git_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/git/workflow.png b/docs/_images/integrations/builtin/core-nodes/git/workflow.png deleted file mode 100644 index 389a1c973e5..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/git/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/workflowtrigger/mattermost_node.png b/docs/_images/integrations/builtin/core-nodes/workflowtrigger/mattermost_node.png deleted file mode 100644 index 07ef248e3be..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/workflowtrigger/mattermost_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/workflowtrigger/workflow.png b/docs/_images/integrations/builtin/core-nodes/workflowtrigger/workflow.png deleted file mode 100644 index 98cad3422b4..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/workflowtrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/core-nodes/workflowtrigger/workflowtrigger_node.png b/docs/_images/integrations/builtin/core-nodes/workflowtrigger/workflowtrigger_node.png deleted file mode 100644 index 0c5f2da294c..00000000000 Binary files a/docs/_images/integrations/builtin/core-nodes/workflowtrigger/workflowtrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/activecampaigntrigger/workflow.png b/docs/_images/integrations/builtin/trigger-nodes/activecampaigntrigger/workflow.png deleted file mode 100644 index 26840448d26..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/activecampaigntrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/airtabletrigger/airtabletrigger_node.png b/docs/_images/integrations/builtin/trigger-nodes/airtabletrigger/airtabletrigger_node.png deleted file mode 100644 index 2d9a9c3aa99..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/airtabletrigger/airtabletrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/airtabletrigger/mattermost_node.png b/docs/_images/integrations/builtin/trigger-nodes/airtabletrigger/mattermost_node.png deleted file mode 100644 index 12c9ef2c5c0..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/airtabletrigger/mattermost_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/airtabletrigger/workflow.png b/docs/_images/integrations/builtin/trigger-nodes/airtabletrigger/workflow.png deleted file mode 100644 index be1d0077aec..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/airtabletrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/caltrigger/workflow.png b/docs/_images/integrations/builtin/trigger-nodes/caltrigger/workflow.png deleted file mode 100644 index e4c3ba6717d..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/caltrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/emeliatrigger/emeliatrigger_node.png b/docs/_images/integrations/builtin/trigger-nodes/emeliatrigger/emeliatrigger_node.png deleted file mode 100644 index 9a3cc7d198b..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/emeliatrigger/emeliatrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/emeliatrigger/mattermost_node.png b/docs/_images/integrations/builtin/trigger-nodes/emeliatrigger/mattermost_node.png deleted file mode 100644 index 9a7e58316d5..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/emeliatrigger/mattermost_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/emeliatrigger/workflow.png b/docs/_images/integrations/builtin/trigger-nodes/emeliatrigger/workflow.png deleted file mode 100644 index 2c5af00df5d..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/emeliatrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/facebooktrigger/facebooktrigger_node.png b/docs/_images/integrations/builtin/trigger-nodes/facebooktrigger/facebooktrigger_node.png deleted file mode 100644 index 170b46b5302..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/facebooktrigger/facebooktrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/facebooktrigger/mattermost_node.png b/docs/_images/integrations/builtin/trigger-nodes/facebooktrigger/mattermost_node.png deleted file mode 100644 index c87c8c75445..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/facebooktrigger/mattermost_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/facebooktrigger/workflow.png b/docs/_images/integrations/builtin/trigger-nodes/facebooktrigger/workflow.png deleted file mode 100644 index 6e0d41c48ea..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/facebooktrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/lemlisttrigger/lemlisttrigger_node.png b/docs/_images/integrations/builtin/trigger-nodes/lemlisttrigger/lemlisttrigger_node.png deleted file mode 100644 index 87d3e4ba055..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/lemlisttrigger/lemlisttrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/lemlisttrigger/mattermost_node.png b/docs/_images/integrations/builtin/trigger-nodes/lemlisttrigger/mattermost_node.png deleted file mode 100644 index 7f190ee95f4..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/lemlisttrigger/mattermost_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/lemlisttrigger/workflow.png b/docs/_images/integrations/builtin/trigger-nodes/lemlisttrigger/workflow.png deleted file mode 100644 index d60043bfab8..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/lemlisttrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/mautictrigger/mautictrigger_node.png b/docs/_images/integrations/builtin/trigger-nodes/mautictrigger/mautictrigger_node.png deleted file mode 100644 index f41b59b997d..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/mautictrigger/mautictrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/mautictrigger/twilio_node.png b/docs/_images/integrations/builtin/trigger-nodes/mautictrigger/twilio_node.png deleted file mode 100644 index f5c074152af..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/mautictrigger/twilio_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/mautictrigger/workflow.png b/docs/_images/integrations/builtin/trigger-nodes/mautictrigger/workflow.png deleted file mode 100644 index 7010d57615f..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/mautictrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/pushcuttrigger/pushcuttrigger_node.png b/docs/_images/integrations/builtin/trigger-nodes/pushcuttrigger/pushcuttrigger_node.png deleted file mode 100644 index b8beaa3c4b7..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/pushcuttrigger/pushcuttrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/pushcuttrigger/twilio_node.png b/docs/_images/integrations/builtin/trigger-nodes/pushcuttrigger/twilio_node.png deleted file mode 100644 index 5fb67f2d3f0..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/pushcuttrigger/twilio_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/pushcuttrigger/workflow.png b/docs/_images/integrations/builtin/trigger-nodes/pushcuttrigger/workflow.png deleted file mode 100644 index 9faf02d0089..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/pushcuttrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/stravatrigger/stravatrigger_node.png b/docs/_images/integrations/builtin/trigger-nodes/stravatrigger/stravatrigger_node.png deleted file mode 100644 index 81a2e78f492..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/stravatrigger/stravatrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/stravatrigger/twitter_node.png b/docs/_images/integrations/builtin/trigger-nodes/stravatrigger/twitter_node.png deleted file mode 100644 index f3920cb13dc..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/stravatrigger/twitter_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/stravatrigger/workflow.png b/docs/_images/integrations/builtin/trigger-nodes/stravatrigger/workflow.png deleted file mode 100644 index f396119aeae..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/stravatrigger/workflow.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/woocommercetrigger/mattermost_node.png b/docs/_images/integrations/builtin/trigger-nodes/woocommercetrigger/mattermost_node.png deleted file mode 100644 index 3430bd91414..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/woocommercetrigger/mattermost_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/woocommercetrigger/woocommercetrigger_node.png b/docs/_images/integrations/builtin/trigger-nodes/woocommercetrigger/woocommercetrigger_node.png deleted file mode 100644 index 9ec36d72ab1..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/woocommercetrigger/woocommercetrigger_node.png and /dev/null differ diff --git a/docs/_images/integrations/builtin/trigger-nodes/woocommercetrigger/workflow.png b/docs/_images/integrations/builtin/trigger-nodes/woocommercetrigger/workflow.png deleted file mode 100644 index 10df81f3861..00000000000 Binary files a/docs/_images/integrations/builtin/trigger-nodes/woocommercetrigger/workflow.png and /dev/null differ diff --git a/docs/api/index.md b/docs/api/index.md index 32e00556ac2..e431d9b0027 100644 --- a/docs/api/index.md +++ b/docs/api/index.md @@ -18,11 +18,11 @@ n8n provides an [n8n API node](/integrations/builtin/core-nodes/n8n-nodes-base.n The API documentation assumes you are familiar with REST APIs. If you're not, these resources may be helpful: -* [KnowledgeOwl's guide to working with APIs](https://support.knowledgeowl.com/help/working-with-apis): a basic introduction, including examples of how to call REST APIs. -* [IBM Cloud Learn Hub - What is an Application Programming Interface (API)](https://www.ibm.com/cloud/learn/api): this gives a general, but technical, introduction to APIs. -* [IBM Cloud Learn Hub - What is a REST API?](https://www.ibm.com/cloud/learn/rest-apis): more detailed information about REST APIs. -* [MDN web docs - An overview of HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview): REST APIs work over HTTP, and use HTTP verbs, or methods, to indicate the type of action to perform. +* [KnowledgeOwl's guide to working with APIs](https://support.knowledgeowl.com/help/working-with-apis){:target=_blank .external-link}: a basic introduction, including examples of how to call REST APIs. +* [IBM Cloud Learn Hub - What is an Application Programming Interface (API)](https://www.ibm.com/cloud/learn/api){:target=_blank .external-link}: this gives a general, but technical, introduction to APIs. +* [IBM Cloud Learn Hub - What is a REST API?](https://www.ibm.com/cloud/learn/rest-apis){:target=_blank .external-link}: more detailed information about REST APIs. +* [MDN web docs - An overview of HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview){:target=_blank .external-link}: REST APIs work over HTTP, and use HTTP verbs, or methods, to indicate the type of action to perform. /// tip | Use the API playground (self-hosted n8n only) Trying out the API in the [playground](/api/using-api-playground/) can help you understand how APIs work. If you're worried about changing live data, consider setting up a test workflow, or test n8n instance, to explore safely. -/// \ No newline at end of file +/// diff --git a/docs/api/pagination.md b/docs/api/pagination.md index 5ae4468658e..a4cfe40b06f 100644 --- a/docs/api/pagination.md +++ b/docs/api/pagination.md @@ -7,7 +7,7 @@ contentType: howto The default page size is 100 results. You can change the page size limit. The maximum permitted size is 250. -When a response contains more than one page, it includes a cursor, which you can use to request subsequent pages. +When a response contains more than one page, it includes a cursor, which you can use to request the next pages. For example, say you want to get all active workflows, 150 at a time. diff --git a/docs/api/using-api-playground.md b/docs/api/using-api-playground.md index eb67845edbf..ce1f27e1140 100644 --- a/docs/api/using-api-playground.md +++ b/docs/api/using-api-playground.md @@ -20,7 +20,7 @@ N8N_HOST:N8N_PORT/N8N_PATH/api/v/docs The API version number is `1`. There may be multiple versions available in the future. /// warning | Real data -If you click **Authorize** and enter your API key in the API playground, you have access to your live data. This is useful for trying out requests. However, be aware you can change or delete real data. +If you click **Authorize** and enter your API key in the API playground, you have access to your live data. This is useful for trying out requests. Be aware you can change or delete real data. /// The API includes built-in documentation about credential formats. This is available using the `credentials` endpoint: diff --git a/docs/api/v1/openapi.yml b/docs/api/v1/openapi.yml index fd5180c6663..a45478b458f 100644 --- a/docs/api/v1/openapi.yml +++ b/docs/api/v1/openapi.yml @@ -823,7 +823,7 @@ components: risk: credentials sections: - title: Credentials not used in any workflow - description: These credentials are not used in any workflow. Keeping unused credentials in your instance is an unneeded security risk. + description: These credentials aren't used in any workflow. Keeping unused credentials in your instance is an unneeded security risk. recommendation: Consider deleting these credentials if you no longer need them. location: - kind: credential @@ -853,7 +853,7 @@ components: - title: Nodes that interact with the filesystem description: This node reads from and writes to any accessible file in the host filesystem. Sensitive file content may be manipulated through a node operation. recommendation: Consider protecting any sensitive files in the host filesystem - or refactoring the workflow so that it does not require host filesystem interaction.: null + or refactoring the workflow so that it doesn'trequire host filesystem interaction.: null location: - kind: node workflowId: '1' @@ -867,7 +867,7 @@ components: risk: nodes sections: - title: Community nodes - description: This node is sourced from the community. Community nodes are not vetted by the n8n team and have full access to the host system. + description: This node is sourced from the community. Community nodes aren't vetted by the n8n team and have full access to the host system. recommendation: Consider reviewing the source code in any community nodes installed in this n8n instance and uninstalling any community nodes no longer used.: null location: @@ -880,7 +880,7 @@ components: risk: execution sections: - title: Unprotected webhooks in instance - description: These webhook nodes have the "Authentication" field set to "None" and are not directly connected to a node to validate the payload. Every unprotected webhook allows your workflow to be called by any third party who knows the webhook URL. + description: These webhook nodes have the "Authentication" field set to "None" and aren't directly connected to a node to validate the payload. Every unprotected webhook allows your workflow to be called by any third party who knows the webhook URL. recommendation: Consider setting the "Authentication" field to an option other than "None" or validating the payload with one of the following nodes.: null location: diff --git a/docs/choose-n8n/cloud.md b/docs/choose-n8n/cloud.md index ec8d2ff0522..3a1aed528f7 100644 --- a/docs/choose-n8n/cloud.md +++ b/docs/choose-n8n/cloud.md @@ -4,17 +4,17 @@ contentType: howto # n8n Cloud -n8n Cloud is n8n's hosted solution. In addition to all the features of n8n, it provides added benefits such as: +n8n Cloud is n8n's hosted solution. It provides: - No technical set up or maintenance for your n8n instance -- 24/7 uptime monitoring +- Continual uptime monitoring - Managed OAuth for authentication - One-click upgrades to the newest n8n versions [Sign up for n8n Cloud](https://www.n8n.cloud/){:target=_blank .external-link} /// note | Russia and Belarus -n8n Cloud is not available in Russia and Belarus. Refer to our blog post [Update on n8n cloud accounts in Russia and Belarus](https://n8n.io/blog/update-on-n8n-cloud-accounts-in-russia-and-belarus/) for more information. +n8n Cloud isn't available in Russia and Belarus. Refer to this blog post: [Update on n8n cloud accounts in Russia and Belarus](https://n8n.io/blog/update-on-n8n-cloud-accounts-in-russia-and-belarus/) for more information. /// ## Cloud configuration @@ -26,7 +26,7 @@ You can configure settings for your n8n instance in your [Admin dashboard](/clou /// warning | Cloud IP addresses change without warning n8n can't guarantee static source IPs, as Cloud operates in a dynamic cloud provider environment and scales its infrastructure to meet demand. You should use strong authentication and secure transport protocols when connecting into and out of n8n. /// -Outbound traffic may currently appear to originate from any of: +Outbound traffic may appear to originate from any of: * 20.79.227.226 * 20.79.72.36 diff --git a/docs/choose-n8n/faircode-license.md b/docs/choose-n8n/faircode-license.md index 27eabacf966..e92819a6b7b 100644 --- a/docs/choose-n8n/faircode-license.md +++ b/docs/choose-n8n/faircode-license.md @@ -3,6 +3,8 @@ description: The n8n faircode license. contentType: explanation --- + + # Faircode license /// note | Proprietary licenses for Enterprise @@ -78,7 +80,7 @@ Provided you are using n8n for internal business purposes, and not making n8n av Any code you contribute on GitHub is subject to GitHub's [terms of use](https://docs.github.com/en/site-policy/github-terms/github-terms-of-service#d-user-generated-content). In simple terms, this means you own, and are responsible for, anything you contribute, but that you grant other GitHub users certain rights to use this code. When you contribute code to a repository containing notice of a license, you license the code under the same terms. -n8n asks every contributor to sign our [Contributor License Agreement](https://github.com/n8n-io/n8n/blob/master/CONTRIBUTOR_LICENSE_AGREEMENT.md). In addition to the above, this gives n8n the ability to change its license without seeking additional permission. It also means you are not liable for your contributions (e.g. in case they cause damage to someone else's business). +n8n asks every contributor to sign our [Contributor License Agreement](https://github.com/n8n-io/n8n/blob/master/CONTRIBUTOR_LICENSE_AGREEMENT.md). In addition to the above, this gives n8n the ability to change its license without seeking additional permission. It also means you aren't liable for your contributions (e.g. in case they cause damage to someone else's business). It's easy to get started contributing code to n8n [here](https://github.com/n8n-io), and we've listed broader ways of participating in our community [here](https://docs.n8n.io/reference/contributing.html). @@ -87,7 +89,7 @@ It's easy to get started contributing code to n8n [here](https://github.com/n8n- n8n was until 17 March 2022 licensed under Apache 2.0 with Commons Clause. Commons Clause was initiated by various software companies wanting to protect their rights against cloud providers. The concept involved adding a commercial restriction on top of an existing open source license. -However, the use of the Commons Clause as an additional condition to an open source license, as well as the use of wording that is open to interpretation, created some confusion and uncertainty regarding the terms of use. The Commons Clause also restricted people's ability to offer consulting and support services: we realized these services are critical in enabling people to get value from n8n, so we wanted to remove this restriction. +However, the use of the Commons Clause as an additional condition to an open source license, as well as the use of wording that's open to interpretation, created some confusion and uncertainty regarding the terms of use. The Commons Clause also restricted people's ability to offer consulting and support services: we realized these services are critical in enabling people to get value from n8n, so we wanted to remove this restriction. We created the Sustainable Use License to be more permissive and more clear about what use is allowed, while continuing to ensure n8n gets the funding needed to build and improve our product. @@ -99,7 +101,7 @@ That means you are now free to offer commercial consulting or support services ( ### Is n8n open source? -Although n8n's source code is available under the Sustainable Use License, according to the [Open Source Initiative](https://opensource.org/) (OSI), open source licenses cannot include limitations on use, so we do not call ourselves open source. In practice, n8n offers most users many of the same benefits as OSI-approved open source. +Although n8n's source code is available under the Sustainable Use License, according to the [Open Source Initiative](https://opensource.org/) (OSI), open source licenses can't include limitations on use, so we do not call ourselves open source. In practice, n8n offers most users many of the same benefits as OSI-approved open source. We coined the term ['fair-code'](https://faircode.io/) as a way of describing our licensing model, and the model of other companies who are source-available, but restrict commercial use of their source code. @@ -119,3 +121,5 @@ We're always excited to talk about software licenses, fair-code and other princi ### Can I use n8n's Sustainable Use License for my own project? Yes! We're excited to see more software use the Sustainable Use License. We'd love to hear about your project if you're using our license: license@n8n.io. + + diff --git a/docs/choose-n8n/index.md b/docs/choose-n8n/index.md index b118558d151..84b65f5244f 100644 --- a/docs/choose-n8n/index.md +++ b/docs/choose-n8n/index.md @@ -9,7 +9,7 @@ This section contains information on n8n's range of platforms, pricing plans, an ## Platforms -There are a few different ways to set up n8n depending on how you intend to use it: +There are different ways to set up n8n depending on how you intend to use it: * [n8n Cloud](/choose-n8n/cloud/): hosted solution, no need to install anything. * [Self-host](/hosting/): recommended method for production or customized use cases. diff --git a/docs/code/builtin/index.md b/docs/code/builtin/index.md index 20a906028dc..c8c8ad363f6 100644 --- a/docs/code/builtin/index.md +++ b/docs/code/builtin/index.md @@ -8,7 +8,7 @@ contentType: overview n8n provides built-in methods and variables for working with data and accessing n8n data. This section provides a reference of available methods and variables for use in expressions, with a short description. /// note | Availability in the expressions editor and the Code node -Some methods and variables aren't available in the Code node. These are noted in the documentation. +Some methods and variables aren't available in the Code node. These aren't in the documentation. All data transformation functions are only available in the expressions editor. /// diff --git a/docs/code/cookbook/builtin/get-workflow-static-data.md b/docs/code/cookbook/builtin/get-workflow-static-data.md index 6458f1c96ef..78ad75a0c7c 100644 --- a/docs/code/cookbook/builtin/get-workflow-static-data.md +++ b/docs/code/cookbook/builtin/get-workflow-static-data.md @@ -21,7 +21,7 @@ an RSS feed or database. It will always return an object. Properties can then re set on that object. When the workflow execution succeeds, n8n checks automatically if the data has changed and saves it, if necessary. -There are two types of static data, "global" and "node". Global static data is the +There are two types of static data, global and node. Global static data is the same in the whole workflow. Every node in the workflow can access it. The node static data is unique to the node. Only the node that set it can retrieve it again. Example with global data: diff --git a/docs/code/cookbook/builtin/vars.md b/docs/code/cookbook/builtin/vars.md index 51aa47ad25e..1e06be17df5 100644 --- a/docs/code/cookbook/builtin/vars.md +++ b/docs/code/cookbook/builtin/vars.md @@ -23,6 +23,6 @@ contentType: reference _vars. ``` -/// note | vars and env +/// note | `vars` and `env` `vars` gives access to user-created variables. It's part of the [Environments](/source-control-environments/) feature. `env` gives access to the [configuration environment variables](/hosting/environment-variables/environment-variables/) for your n8n instance. -/// \ No newline at end of file +/// diff --git a/docs/code/cookbook/expressions/check-incoming-data.md b/docs/code/cookbook/expressions/check-incoming-data.md index 9972bf4d610..02eab2243f7 100644 --- a/docs/code/cookbook/expressions/check-incoming-data.md +++ b/docs/code/cookbook/expressions/check-incoming-data.md @@ -4,7 +4,7 @@ contentType: howto # Check incoming data -At times, you may want to check the incoming data. If the incoming data doesn't satisfy a condition, you may want to return a different value. For example, you want to check if a variable from the previous node is empty and return a string if it is empty. Use the following code snippet to return `not found` if the variable is empty. +At times, you may want to check the incoming data. If the incoming data doesn't match a condition, you may want to return a different value. For example, you want to check if a variable from the previous node is empty and return a string if it's empty. Use the following code snippet to return `not found` if the variable is empty. ```js {{$json["variable_name"]? $json["variable_name"] :"not found"}} diff --git a/docs/code/cookbook/http-node/pagination.md b/docs/code/cookbook/http-node/pagination.md index d3599f421a8..3100292e1aa 100644 --- a/docs/code/cookbook/http-node/pagination.md +++ b/docs/code/cookbook/http-node/pagination.md @@ -39,7 +39,7 @@ If the API you're using allows you to target a particular page by number: 1. Hover over **Value** and toggle **Expression** on. 1. Enter `{{ $pageCount + 1 }}` -`$pageCount` is the number of pages the HTTP Request node has fetched. It starts at zero. Most API pagination counts from one (the first page is page one). So adding `+1` to `$pageCount` means the node fetches page one on its first loop, page two on its second, and so on. +`$pageCount` is the number of pages the HTTP Request node has fetched. It starts at zero. Most API pagination counts from one (the first page is page one). This means that adding `+1` to `$pageCount` means the node fetches page one on its first loop, page two on its second, and so on. ## Set the page size in the query diff --git a/docs/code/expressions.md b/docs/code/expressions.md index dd434385290..3568301b00a 100644 --- a/docs/code/expressions.md +++ b/docs/code/expressions.md @@ -34,7 +34,7 @@ To use an expression to set a parameter value: 1. Hover over the parameter where you want to use an expression. 2. Select **Expressions** in the **Fixed/Expression** toggle. -3. Write your expression in the parameter, or select **Open expression editor** ![Open expressions editor icon](/_images/common-icons/open-expression-editor.png) to open the expressions editor. If you use the expressions editor, you can browse some of the available data in the **Variable selector**. All expressions have the format `{{ your expression here }}`. +3. Write your expression in the parameter, or select **Open expression editor** ![Open expressions editor icon](/_images/common-icons/open-expression-editor.png) to open the expressions editor. If you use the expressions editor, you can browse the available data in the **Variable selector**. All expressions have the format `{{ your expression here }}`. ### Example: Get data from webhook body @@ -78,7 +78,7 @@ This expression: ### Example: Writing longer JavaScript -An expression contains one line of JavaScript. This means you can'd do things like variable assignments or multiple standalone operations. +An expression contains one line of JavaScript. This means you can do things like variable assignments or multiple standalone operations. To understand the limitations of JavaScript in expressions, and start thinking about workarounds, look at the following two pieces of code. Both code examples use the Luxon date and time library to find the time between two dates in months, and encloses the code in handlebar brackets, like an expression. @@ -87,7 +87,7 @@ However, the first example isn't a valid n8n expression: ```js // This example is split over multiple lines for readability -// It is still invalid when formatted as a single line +// It's still invalid when formatted as a single line {{ function example() { let end = DateTime.fromISO('2017-03-13'); diff --git a/docs/code/jmespath.md b/docs/code/jmespath.md index 9fd93d23c7c..314dbcefe07 100644 --- a/docs/code/jmespath.md +++ b/docs/code/jmespath.md @@ -281,9 +281,9 @@ Given this JSON from a webhook node: ``` - + Use multiselect list to get the first and last names and create new lists containing both names: - + === "Expressions (JavaScript)" [[% raw %]] diff --git a/docs/code/luxon.md b/docs/code/luxon.md index 8ebb416a9b9..f27105d2108 100644 --- a/docs/code/luxon.md +++ b/docs/code/luxon.md @@ -108,7 +108,7 @@ Luxon provides functions to handle conversions for a range of formats. Refer to Use Luxon's [Ad-hoc parsing](https://moment.github.io/luxon/#/parsing?id=ad-hoc-parsing){:target="_blank" .external-link}. To do this, use the `fromFormat()` function, providing the string and a set of [tokens](https://moment.github.io/luxon/#/parsing?id=table-of-tokens){:target="_blank" .external-link} that describe the format. -For example, you have n8n's founding date, 23rd June 2019, formatted as '23-06-2019'. You want to turn this into a Luxon object: +For example, you have n8n's founding date, 23rd June 2019, formatted as `23-06-2019`. You want to turn this into a Luxon object: === "Expressions (JavaScript)" @@ -166,7 +166,7 @@ For more detailed information and examples, refer to: In [Get n days from today](#get-n-days-from-today), the example gets the date seven days before the current date, and returns it as `[Object: "yyyy-mm-dd-T00:00:00.000+00:00"]` (for expressions) or `yyyy-mm-dd-T00:00:00.000+00:00` (in the Code node). To make this more readable, you can use Luxon's formatting functions. -For example, you want the field containing the date to be formatted as DD/MM/YYYY, so that on the 23rd June 2019, it returns 23/06/2019. +For example, you want the field containing the date to be formatted as DD/MM/YYYY, so that on the 23rd June 2019, it returns `23/06/2019`. This expression gets the date seven days before today, and converts it to the DD/MM/YYYY format. diff --git a/docs/contributing.md b/docs/contributing.md index 71af019a9cf..3ff9ee8d207 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -7,7 +7,7 @@ contentType: howto There are a several ways in which you can contribute to n8n, depending on your skills and interests. Each form of contribution is valuable to us! -## Share some love: review us +## Share some love: Review us - Star n8n on [GitHub](https://github.com/n8n-io/n8n){:target=_blank class=.external-link} and [Docker Hub](https://hub.docker.com/r/n8nio/n8n){:target=_blank class=.external-link}. - Follow us on [Twitter](https://twitter.com/n8n_io){:target=_blank class=.external-link}, [LinkedIn](https://www.linkedin.com/company/28491094), and [Facebook](https://www.facebook.com/n8nio/){:target=_blank class=.external-link}. @@ -91,7 +91,7 @@ Someone from n8n reviews your draft. They'll check the following: * Is the information accurate and up to date? * Do the workflows or other examples function? * Is the product information relevant? -* Gramma and structure +* Grammar and structure After the review, you'll have a chance to review any suggested changes and implement them. You can then notify the reviewer that your final draft is ready. diff --git a/docs/courses/level-one/chapter-1.md b/docs/courses/level-one/chapter-1.md index 151a246a3c6..c3a7a28ccbc 100644 --- a/docs/courses/level-one/chapter-1.md +++ b/docs/courses/level-one/chapter-1.md @@ -10,13 +10,13 @@ In this lesson you will learn how to navigate the Editor UI. We will walk throug The first step is setting up n8n. There are two ways you can do this: -- [n8n Cloud](https://app.n8n.cloud/register){:target="_blank" .external} - Hosted solution, no installation needed. Great for all levels of expereince +- [n8n Cloud](https://app.n8n.cloud/register){:target="_blank" .external} - Hosted solution, no installation needed. Great for all levels of experience. - [Self-host](/hosting/){:target="_blank" .external} - Recommended for advanced users with technical knowledge For more details on the different ways to set up n8n, see our [platforms documentation](/choose-n8n/#platforms){:target="_blank" .external} /// warning | n8n version -This course was developed on n8n version 1.15.0. In other versions, some of the user interface might look different, but the core functionality should not be impacted. +This course was developed on n8n version 1.15.0. In other versions, some of the user interface might look different, but the core functionality shouldn't be impacted. /// Once you have n8n running, open the Editor UI in a browser window. It should look like this: @@ -24,7 +24,7 @@ Once you have n8n running, open the Editor UI in a browser window. It should loo ## Editor UI settings -The [Editor UI](/editor-ui/) represents the web interface where you build [workflows](/workflows/workflows/). Think of it as a canvas on which the artist in you designs automations. From the Editor UI you can access all your workflows and credentials, as well as support pages. +The [Editor UI](/editor-ui/) represents the web interface where you build [workflows](/workflows/workflows/). Think of it as a canvas on which the artist in you designs workflows. From the Editor UI you can access all your workflows and credentials, as well as support pages. ### Left-side panel @@ -48,7 +48,7 @@ The panel contains the following sections: The top bar of the Editor UI contains the following information: -- *Workflow Name:* By default, a new workflow is named “My Workflow”, but can be edited at any time as required. +- *Workflow Name:* By default, a new workflow is named “My Workflow,” but can be edited at any time as required. - *+Add Tag:* Tags help you organise your workflows by category, use case or whatever is relevant for you. Tags are also optional - *Inactive/active toggle:* This button activates or deactivates the current workflow. By default, workflows are deactivated. - *Share:* You can share and collaborate with others on workflows on the Starter, Pro & Enterprise plans @@ -64,7 +64,7 @@ The *canvas* is the gray grid background in the Editor UI. On the canvas, there - A button to *Execute Workflow*. When you click on it, all nodes on the canvas are executed. - A button with a *+* sign inside. This button opens the nodes panel. - A button with a note icon inside. This button adds a [sticky note](/workflows/sticky-notes){:target="_blank" .external} to the canvas. (Visible when hovering on the top right + icon) -- A dotted square with the text "add first step". This is where you would add your first node. +- A dotted square with the text "add first step." This is where you would add your first node.
Workflow canvas
Workflow canvas
@@ -81,10 +81,10 @@ Don't worry about workflow execution and activation for now, we will explain the ## Nodes -You can think of nodes as building blocks that serve different functions but, when put together, they make up a functioning machine – an automated workflow. +You can think of nodes as building blocks that serve different functions but, when put together, they make up a functioning machine: an automated workflow. /// note | Node -A node is an individual step in your workflow — one that either (a) loads, (b) processes or (c) sends data. +A node is an individual step in your workflow: one that either (a) loads, (b) processes or (c) sends data. /// Based on their function, nodes can be classified into two types: @@ -93,7 +93,7 @@ Based on their function, nodes can be classified into two types: - **Trigger Nodes** start a workflow and supply the initial data. /// note | Keep in mind -Among the Regular and Trigger nodes there are some nodes that do not represent any app or service, instead they serve general functions like scheduling workflows (e.g. Schedule Trigger) or adding JavaScript functions (e.g. Code Node). We refer to these as *Core Nodes*. +Among the Regular and Trigger nodes there are some nodes that don't represent any app or service, instead they serve general functions like scheduling workflows (for example, Schedule Trigger) or adding JavaScript functions (for example, Code Node). We refer to these as *Core Nodes*. /// ### Finding nodes diff --git a/docs/courses/level-one/chapter-2.md b/docs/courses/level-one/chapter-2.md index 38dd1fa41ea..5f079bcbd27 100644 --- a/docs/courses/level-one/chapter-2.md +++ b/docs/courses/level-one/chapter-2.md @@ -36,7 +36,7 @@ This operation fetches all the selected articles. - *Limit:* 10
This parameter sets a limit to how many results are returned by the Get Many operation. - *Additional fields > Add Field > Keyword:* automation
-Additional fields are options that you can add to certain nodes to make your request more specific or filter the results. In our case, we want to get only articles that include the keyword “automation”.
+Additional fields are options that you can add to certain nodes to make your request more specific or filter the results. In our case, we want to get only articles that include the keyword “automation.”
The configuration of the parameters for the *Hacker News node* should now look like this: @@ -48,7 +48,7 @@ The *Settings* section includes several options for node design and executions. - *Notes:* Get the 10 latest articles /// note | Node notes -It is often helpful, especially for complex or shared workflows, to add a short description in the node about what it does. +It's often helpful, especially for complex or shared workflows, to add a short description in the node about what it does. /// - *Display note in flow?:* toggle to true
This option will display the description note under the node in the Editor UI. @@ -71,7 +71,7 @@ You can rename the node with a name that's more descriptive for your use case. T ## 3. Save the workflow Save the workflow under the name “Hacker News workflow” -By default, your workflow is automatically saved as “My workflow”. +By default, your workflow is automatically saved as “My workflow.” There are two ways in which you can save a workflow: @@ -108,11 +108,11 @@ The node window displays more information about the node execution: This field displays the number of items (records) that are returned by the node request. In our case, it's expected to be 10, since this is the limit we set in the node. But if you don't set a limit, it's useful to see how many records are actually returned. - Next to the *Items* information, notice a small grey *i* icon. If you hover on it, you'll get two more pieces of information: ***Start Time*** (when the node execution started) and ***Execution Time*** (how long it took for the node to return the results from the moment it started executing). *Start Time* and *Execution Time* can provide insights into the performance of each individual node. -- Under the node name beside the **Parameters** tab, there is a link to the node's **Docs**. Check it out if you run into trouble or are not sure how to configure the node's parameters. +- Under the node name beside the **Parameters** tab, there is a link to the node's **Docs**. Check it out if you run into trouble or aren't sure how to configure the node's parameters. /// warning | Error in nodes -A red warning icon on a node means that the node has errors. This might happen if the node credentials are missing or incorrect, or the node parameters are not configured correctly. +A red warning icon on a node means that the node has errors. This might happen if the node credentials are missing or incorrect, or the node parameters aren't configured correctly. ///
Error in nodes
Error in nodes
diff --git a/docs/courses/level-one/chapter-3.md b/docs/courses/level-one/chapter-3.md index d3f9ce6e1d6..74fe572e9f5 100644 --- a/docs/courses/level-one/chapter-3.md +++ b/docs/courses/level-one/chapter-3.md @@ -6,11 +6,11 @@ contentType: tutorial Meet Nathan 🙋. Nathan works as an Analytics Manager at ABCorp. His job is to support the ABCorp team with reporting and analytics. Being a true jack of all trades, he also handles several miscellaneous initiatives. -Some of the things that Nathan does are very repetitive and mind-numbing. He wants to automate some of these tasks so that he doesn't burn out. As an **Automation Expert**, you are meeting with Nathan today to help him understand how he can offload some of his responsibilities to n8n. +Some things that Nathan does are repetitive and mind-numbing. He wants to automate some of these tasks so that he doesn't burn out. As an **Automation Expert**, you are meeting with Nathan today to help him understand how he can offload some of his responsibilities to n8n. ## Understanding the scenario -**You 👩‍🔧:** Nice to meet you, Nathan. Glad to be doing this! What's a repetitive task that is error-prone and that you'd like to get off your plate first? +**You 👩‍🔧:** Nice to meet you, Nathan. Glad to be doing this! What's a repetitive task that's error-prone and that you'd like to get off your plate first? **Nathan 🙋:** Thanks for coming in! The most annoying one's gotta be the weekly sales reporting. diff --git a/docs/courses/level-one/chapter-4.md b/docs/courses/level-one/chapter-4.md index 7cd21e0d567..4a5d7c0fcd5 100644 --- a/docs/courses/level-one/chapter-4.md +++ b/docs/courses/level-one/chapter-4.md @@ -4,7 +4,7 @@ contentType: tutorial # Designing the Workflow -Now that we have an idea of what Nathan wants to automate, let's enumerate the steps he needs to take to achieve this: +Now that we know what Nathan wants to automate, let's enumerate the steps he needs to take to achieve this: 1. Get the relevant data (order id, order status, order value, employee name) from the data warehouse 2. Filter the orders by their status (processing or booked) diff --git a/docs/courses/level-one/chapter-5/chapter-5.1.md b/docs/courses/level-one/chapter-5/chapter-5.1.md index f20a1a2628b..69ebc94599d 100644 --- a/docs/courses/level-one/chapter-5/chapter-5.1.md +++ b/docs/courses/level-one/chapter-5/chapter-5.1.md @@ -11,13 +11,13 @@ First, let's set up the scene for building Nathan's workflow. Open your Editor U - Click **Ctrl + Alt + N** or **Cmd + Option + N** on your keyboard - Open the left menu and click on *New* under the Workflow section -Name this new workflow “Nathan's workflow”. +Name this new workflow “Nathan's workflow.” The first thing you need to do is get data from ABCorp's old data warehouse. -In the previous chapter, you used a specific action in the app (YCombinator). However, not all apps or services have dedicated nodes – like the legacy data warehouse from Nathan's company. +In the previous chapter, you used a specific action in the app (Y Combinator). However, not all apps or services have dedicated nodes, like the legacy data warehouse from Nathan's company. -Though it's not possible to directly export the data, the data warehouse has a couple of API endpoints. That's all we need to access the data via the [***HTTP Request node***](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/){:target="_blank" .external} in n8n. +Though it's not possible to directly export the data, the data warehouse has a couple of API endpoints. That's all we need to access the data using the [***HTTP Request node***](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/){:target="_blank" .external} in n8n. /// note | No node for that service? The *HTTP Request node* is one of the most versatile nodes, allowing you to make HTTP requests which can be used to query data from apps and services. You can use it to access data from apps or services that don't have a dedicated node in n8n. @@ -62,11 +62,11 @@ In the *HTTP Request node* window, click the *Execute Node* button. The result o This view should be familiar to you from the [Hacker News mini-workflow](/courses/level-one/chapter-2/). This is the data from ABCorp's data warehouse that Nathan needs to work with. This data set includes sales information of 30 customers with 5 features: -- *orderID:* The unique id of each order. -- *customerID:* The unique id of each customer. -- *employeeName:* The name of Nathan's colleagues who are responsible for each client. -- *orderPrice:* The total price of the customer's order. -- *orderStatus:* Whether the customer's order is booked or still in processing. +- `orderID`: The unique id of each order. +- `customerID`: The unique id of each customer. +- `employeeName`: The name of Nathan's colleagues who are responsible for each client. +- `orderPrice`: The total price of the customer's order. +- `orderStatus`: Whether the customer's order is booked or still in processing. ## What's next? diff --git a/docs/courses/level-one/chapter-5/chapter-5.2.md b/docs/courses/level-one/chapter-5/chapter-5.2.md index 35b594cbbb4..ceed2975579 100644 --- a/docs/courses/level-one/chapter-5/chapter-5.2.md +++ b/docs/courses/level-one/chapter-5/chapter-5.2.md @@ -4,7 +4,7 @@ contentType: tutorial # 2. Inserting Data into Airtable -In this step of the workflow you will learn how to insert the data received via the HTTP Request node into Airtable using the *Airtable* node. +In this step of the workflow you will learn how to insert the data received using the HTTP Request node into Airtable using the *Airtable* node. /// note | Spreadsheet nodes You can replace the *Airtable* node with another spreadsheet app/service. For example, n8n also has nodes for [*Google Sheets*](/integrations/builtin/app-nodes/n8n-nodes-base.googlesheets/){:target="_blank" .external} and [*Spreadsheet File*](/integrations/builtin/core-nodes/n8n-nodes-base.spreadsheetfile/){:target="_blank" .external}. @@ -14,7 +14,7 @@ At this point, your workflow should look like this:
Workflow with the Airtable node
Workflow with the Airtable node
-If we are going to insert data into Airtable, we first need to set up a table there. To do this: +If we're going to insert data into Airtable, we first need to set up a table there. To do this: 1. [Create an Airtable account](https://airtable.com/signup){:target="_blank" .external}. 2. In your Airtable workspace add a new base from scratch and name it, for example, *beginner course*. @@ -22,10 +22,10 @@ If we are going to insert data into Airtable, we first need to set up a table th
Create an Airtable base
Create an Airtable base
3. In the beginner course base you have by default a *Table 1* with four fields: *Name, Notes, Assignee, and Status*. -These fields are not relevant for us since they are not in our orders data set. This brings us to the next point: the names of the fields in Airtable have to match the names of the columns in the node result. - - Replace the four default table fields with the five column names from the data set, selecting `Number` field type for orderID, customerID, and orderPrice, and `Single line text` for employeeName and orderStatus. - - Delete the 3 blank rows created by default. - - Also, rename the table from *Table 1* to *orders* to make it easier to identify. +These fields aren't relevant for us since they aren't in our orders data set. This brings us to the next point: the names of the fields in Airtable have to match the names of the columns in the node result. + - Replace the four default table fields with the five column names from the data set, selecting **Number** field type for `orderID`, `customerID`, and `orderPrice`, and **Single line text** for `employeeName` and `orderStatus`. + - Delete the 3 blank rows created by default. + - Also, rename the table from *Table 1* to *orders* to make it easier to identify. Now your table should look like this: diff --git a/docs/courses/level-one/chapter-5/chapter-5.3.md b/docs/courses/level-one/chapter-5/chapter-5.3.md index ce31dbd73b9..4dc68b007a7 100644 --- a/docs/courses/level-one/chapter-5/chapter-5.3.md +++ b/docs/courses/level-one/chapter-5/chapter-5.3.md @@ -6,7 +6,7 @@ contentType: tutorial In this step of the workflow you will learn how to filter data using conditional logic and how to use expressions in nodes using the *IF* node. -To insert only processing orders into Airtable we need to filter our data by *orderStatus*. Basically, we want to tell the program that _if_ the *orderStatus* is processing, _then_ insert all records with this status into Airtable; _else_, i.e. if the *orderStatus* is not *processing*, calculate the sum of all orders with the other *orderStatus (booked)*. +To insert only processing orders into Airtable we need to filter our data by `orderStatus`. Basically, we want to tell the program that _if_ the `orderStatus` is processing, _then_ insert all records with this status into Airtable; _else_, for example, if the `orderStatus` isn't *processing*, calculate the sum of all orders with the other `orderStatus (booked)`. This if-then-else command is conditional logic. In n8n workflows, conditional logic can be implemented with the [**IF node**](/integrations/builtin/core-nodes/n8n-nodes-base.if/){:target="_blank" .external}, which splits a workflow conditionally based on comparison operations. @@ -18,7 +18,7 @@ Back to your workflow, remove the connection between the *HTTP Request* node and In the *IF* node window click on *Add Condition* > *string* and configure the parameters: -- *Value 1*: Current Node > Input Data > JSON > orderStatus → `{{$json["orderStatus"]}}`
+- *Value 1*: **Current Node** > **Input Data** > **JSON** > **orderStatus** → `{{$json["orderStatus"]}}`
To select this value, click the **Expression** tab on the right side of the Value 1 field. /// note | Expressions @@ -47,10 +47,10 @@ At this stage, your workflow should look like this: ## What's next? -**Nathan 🙋**: This IF node is really useful for filtering data! Now I have all the information about processing orders. I actually only need the employeeName and orderId, but I guess I can keep all the other fields just in case. +**Nathan 🙋**: This IF node is really useful for filtering data! Now I have all the information about processing orders. I actually only need the `employeeName` and `orderId`, but I guess I can keep all the other fields just in case. **You 👩‍🔧**: Actually, I wouldn't recommend doing that. Inserting more data requires more computational power, the data transfer is slower and takes longer, and takes up more storage resources in your table. In this particular case, 14 records with 5 features might not seem like a lot to make a significant difference, but if your business grows to thousands of records and tens of features, things add up and even one extra column can affect performance. -**Nathan 🙋**: Oh, that's good to know. So, can you select only two fields from the processing orders? +**Nathan 🙋**: Oh, that's good to know. Can you select only two fields from the processing orders? **You 👩‍🔧**: Sure, I'll do that in the next step. diff --git a/docs/courses/level-one/chapter-5/chapter-5.4.md b/docs/courses/level-one/chapter-5/chapter-5.4.md index 4c9e8ed71c1..7c499228311 100644 --- a/docs/courses/level-one/chapter-5/chapter-5.4.md +++ b/docs/courses/level-one/chapter-5/chapter-5.4.md @@ -6,7 +6,7 @@ contentType: tutorial In this step of the workflow you will learn how to select and set data before transferring it to Airtable using the *Set* node. -The next step in Nathan's workflow is to insert the *employeeName* and *orderId* of all *processing* orders into Airtable. +The next step in Nathan's workflow is to insert the `employeeName` and `orderId` of all *processing* orders into Airtable. For this, you need to use the [**Set node**](/integrations/builtin/core-nodes/n8n-nodes-base.set/){:target="_blank" .external}, which allows you to select and set the data you want to be transferred from one app/service to another. @@ -18,11 +18,11 @@ In your workflow, add a new *Set* node between the *IF* node and the *Airtable* - *Add Value > Number:* - - *Name:* orderId + - *Name:* `orderId` - *Value:* `{{$json["orderID"]}}` *Current Node > Input Data > JSON > orderID* - *Add Value > String:* - - *Name:* employeeName + - *Name:* `employeeName` - *Value:* `{{$json["employeeName"]}}` *Current Node > Input Data > JSON > employeeName* @@ -32,7 +32,7 @@ Then click on *Execute Node* and you should see the following results:
Set node
Set node
-Next, we need to insert these values into Airtable. Go to your Airtable account and add a new table called *processingOrders* with two columns, *orderId* and *employeeName*, just like you learned in the lesson [Inserting data into Airtable](/courses/level-one/chapter-5/chapter-5.2/). +Next, we need to insert these values into Airtable. Go to your Airtable account and add a new table called `processingOrders` with two columns, `orderId` and `employeeName`, just like you learned in the lesson [Inserting data into Airtable](/courses/level-one/chapter-5/chapter-5.2/). Remember to update the Airtable node configuration to point to this new table. @@ -46,4 +46,4 @@ At this stage, it looks like this: **Nathan 🙋**: You've already automated half of my work! Now I still need to calculate the booked orders for my colleagues. Can that be automated as well? -**You 👩‍🔧**: Of course! In the next step, I'll use some JavaScript code in a node to calculate the booked orders. +**You 👩‍🔧**: Yes! In the next step, I'll use some JavaScript code in a node to calculate the booked orders. diff --git a/docs/courses/level-one/chapter-5/chapter-5.5.md b/docs/courses/level-one/chapter-5/chapter-5.5.md index 36e837f4833..92ad8f94bf0 100644 --- a/docs/courses/level-one/chapter-5/chapter-5.5.md +++ b/docs/courses/level-one/chapter-5/chapter-5.5.md @@ -21,7 +21,7 @@ The **Code node** has two operational *Modes* that change the way it processes d - Use the Code node. - Get the most out of n8n. -In n8n, the data that is passed between nodes is an array of objects with the following structure: +In n8n, the data that's passed between nodes is an array of objects with the following structure: ```json [ @@ -79,10 +79,10 @@ Now execute the node and you should see the following results: ## What's next? -**Nathan 🙋**: Wow, the Code node is really powerful! So if I have some basic JavaScript skills I can power up my workflows. +**Nathan 🙋**: Wow, the Code node is really powerful! This means that if I have some basic JavaScript skills I can power up my workflows. -**You 👩‍🔧**: Exactly – you can progress from no-code to low-code! +**You 👩‍🔧**: Yes! You can progress from no-code to low-code! **Nathan 🙋**: Now, how do I send the calculations for the booked orders to my team's Discord channel? -**You 👩‍🔧**: There's an n8n node for that – I'll set it up in the next step. +**You 👩‍🔧**: There's an n8n node for that: I'll set it up in the next step. diff --git a/docs/courses/level-one/chapter-5/chapter-5.6.md b/docs/courses/level-one/chapter-5/chapter-5.6.md index 936dc6239a3..6bbd2179fcc 100644 --- a/docs/courses/level-one/chapter-5/chapter-5.6.md +++ b/docs/courses/level-one/chapter-5/chapter-5.6.md @@ -15,7 +15,7 @@ You can replace the Discord node with another communication app. For example, n8 In your workflow, add a Discord node connected to the Code node. In the Discord node window, configure the parameters: - *Webhook URL:* Enter the URL that you received in the email from n8n when you signed up for this course. -- *Content (Expression):* This week we have `{{$json["totalBooked"]}}` booked orders with a total value of `{{$json["bookedSum"]}}`. My Unique ID: `{{ $('HTTP Request').params["headerParameters"]["parameters"][0]["value"] }}` +- *Content (Expression):* This week we've `{{$json["totalBooked"]}}` booked orders with a total value of `{{$json["bookedSum"]}}`. My Unique ID: `{{ $('HTTP Request').params["headerParameters"]["parameters"][0]["value"] }}` Now execute the Discord node. If all works well, your message should appear in the Discord channel #course-level-1. @@ -24,6 +24,6 @@ Now execute the Discord node. If all works well, your message should appear in t ## What's next? -**Nathan 🙋**: Incredible, you've saved me so many hours of tedious work already! Now I can simply execute this workflow when I need it. I just need to remember to run it every Monday morning at 9 am... +**Nathan 🙋**: Incredible, you've saved me so many hours of tedious work already! Now I can execute this workflow when I need it. I just need to remember to run it every Monday morning at 9 AM... **You 👩‍🔧**: Don't worry about that, you can actually schedule the workflow to run on a specific day, time, or interval. I'll set this up in the next step. diff --git a/docs/courses/level-one/chapter-5/chapter-5.7.md b/docs/courses/level-one/chapter-5/chapter-5.7.md index ccdb51d46ef..f56fb50cc0a 100644 --- a/docs/courses/level-one/chapter-5/chapter-5.7.md +++ b/docs/courses/level-one/chapter-5/chapter-5.7.md @@ -10,11 +10,11 @@ The workflow you've built so far executes only when you click on _Execute Workfl In your workflow, add the Schedule trigger node, and configure its parameters: -* _Trigger Interval:_ Every Week -* _Weeks Between Triggers:_ 1 -* _Trigger on weekdays:_ Monday -* _Trigger at Hour:_ 9am -* _Trigger at Minute:_ 0 +* _Trigger Interval:_ `Every Week` +* _Weeks Between Triggers:_ `1` +* _Trigger on weekdays:_ `Monday` +* _Trigger at Hour:_ `9am` +* _Trigger at Minute:_ `0`
Schedule Trigger Node
Schedule Trigger Node
@@ -26,6 +26,6 @@ To ensure accurate scheduling with the Schedule Trigger Node, be sure the timezo **You 👩‍🔧**: That was it for the workflow! I've added and configured all necessary nodes. Now every time you click on Execute Workflow, all nodes will be executed: getting, filtering, calculating, and transferring the sales data. -**Nathan 🙋**: This is just what I needed! So now my workflow will run automatically every Monday morning? +**Nathan 🙋**: This is just what I needed! My workflow will run automatically every Monday morning, correct? **You 👩‍🔧**: Not so fast. To do that, you need to activate your workflow. I'll do this in the next step and show you how to interpret the execution log. diff --git a/docs/courses/level-one/chapter-5/chapter-5.8.md b/docs/courses/level-one/chapter-5/chapter-5.8.md index 87e4f328611..e0562944721 100644 --- a/docs/courses/level-one/chapter-5/chapter-5.8.md +++ b/docs/courses/level-one/chapter-5/chapter-5.8.md @@ -8,7 +8,7 @@ In this step of the workflow you will learn how to activate your workflow and ch Activating a workflow means that it will run automatically every time a trigger node receives input or meets a condition. By default, all newly created workflows are deactivated. -To activate your workflow toggle the *Active* button on the top right corner of the Editor UI. Nathan's workflow will now be executed automatically every Monday at 9 am. +To activate your workflow toggle the *Active* button on the top right corner of the Editor UI. Nathan's workflow will now be executed automatically every Monday at 9 AM.
Activated workflow
Activated workflow
diff --git a/docs/courses/level-one/chapter-7.md b/docs/courses/level-one/chapter-7.md index cae0d749ad5..d7b290d4fac 100644 --- a/docs/courses/level-one/chapter-7.md +++ b/docs/courses/level-one/chapter-7.md @@ -12,7 +12,7 @@ You can test your knowledge by taking a **quiz**, which consists of questions ab - You need to have at least 80% correct answers in each part to pass the quiz. - You can take the quiz as many times as you want. -- There is no time limit on answering the quiz questions. +- There's no time limit on answering the quiz questions.
diff --git a/docs/courses/level-one/index.md b/docs/courses/level-one/index.md index 7d7613676d7..2bf505fc17d 100644 --- a/docs/courses/level-one/index.md +++ b/docs/courses/level-one/index.md @@ -39,12 +39,12 @@ You will build two workflows: 1. **n8n set up**: You can use the [self-hosted version](/hosting/installation/npm/){:target="_blank" .external}, or [n8n Cloud](/choose-n8n/cloud/){:target="_blank" .external}. 2. **A user ID**: [Sign up here](https://n8n-community.typeform.com/to/PDEMrevI){:target="_blank" .external} to get your unique ID and other credentials you will need in the course. -3. Basic knowledge of JavaScript and [APIs](https://n8n.io/blog/what-are-apis-how-to-use-them-with-no-code/){:target="_blank" .external} would be helpful, but is not necessary. +3. Basic knowledge of JavaScript and [APIs](https://n8n.io/blog/what-are-apis-how-to-use-them-with-no-code/){:target="_blank" .external} would be helpful, but isn't necessary. 4. An [account on the n8n community forum](/courses/level-one/chapter-5/chapter-5.1/){:target="_blank" .external} if you wish to receive a profile badge and avatar upon successful completion ## How long does the course take? -Completing the course should take around **two hours**. You do not have to complete it in one go, feel free to take breaks and resume whenever you are ready. +Completing the course should take around **two hours**. You don't have to complete it in one go, feel free to take breaks and resume whenever you are ready. ## How do I complete the course? diff --git a/docs/courses/level-two/chapter-1.md b/docs/courses/level-two/chapter-1.md index eac1c6a462c..cc7d20b1e06 100644 --- a/docs/courses/level-two/chapter-1.md +++ b/docs/courses/level-two/chapter-1.md @@ -13,10 +13,10 @@ In a basic sense, n8n nodes function as an Extract, Transform, Load (ETL) tool. The data that moves along from node to node in your workflow must be in a format (structure) that can be recognized and interpreted by each node. In n8n, this required structure is an array of objects. -/// note | What is an array of objects? +/// note | About array of objects An array is a list of values. The array can be empty or contain several elements. Each element is stored at a position (index) in the list, starting at 0, and can be referenced by the index number. For example, in the array `["Leonardo", "Michelangelo", "Donatello", "Raphael"];` the element `Donatello` is stored at index 2. -An object stores key-value pairs, instead of values at numbered indexes as in arrays. The order of the pairs is not important, as the values can be accessed by referencing the key name. For example, the object below contains two properties (`name` and `color`): +An object stores key-value pairs, instead of values at numbered indexes as in arrays. The order of the pairs isn't important, as the values can be accessed by referencing the key name. For example, the object below contains two properties (`name` and `color`): ```json { @@ -168,7 +168,7 @@ The two most common operations for data transformation are: There are several ways to transform data for the purposes mentioned above: -- Using n8n's [data transformation nodes](/data/#data-transformation-nodes). This the easy way to modify the structure of incoming data that contain lists (arrays), without needing to use JavaScript code in the Code node. Use [Split Out](/integrations/builtin/core-nodes/n8n-nodes-base.splitout/) to separate a single data item containing a list into multiple items, and [Aggregate](/integrations/builtin/core-nodes/n8n-nodes-base.aggregate/) to take separate items, or portions of them, and group them together into individual items. +- Using n8n's [data transformation nodes](/data/#data-transformation-nodes). This is the way to modify the structure of incoming data that contain lists (arrays), without needing to use JavaScript code in the Code node. Use [Split Out](/integrations/builtin/core-nodes/n8n-nodes-base.splitout/) to separate a single data item containing a list into multiple items, and [Aggregate](/integrations/builtin/core-nodes/n8n-nodes-base.aggregate/) to take separate items, or portions of them, and group them together into individual items. - With the Code node, you can write JavaScript functions to modify the data structure of incoming data using the *Run Once for All Items* mode: To create multiple items from a single item, you can use this JavaScript code: diff --git a/docs/courses/level-two/chapter-2.md b/docs/courses/level-two/chapter-2.md index 5f8371e7d1c..fde777ebacb 100644 --- a/docs/courses/level-two/chapter-2.md +++ b/docs/courses/level-two/chapter-2.md @@ -20,7 +20,7 @@ Use the HTML node to extract HTML content of a webpage, by referencing CSS selec ### Exercise -Let's get the title of the latest n8n blogpost. Use the HTTP Request node to make a GET request to the URL `https://blog.n8n.io/`. Then, connect an HTML node and configure it to extract the title of the first post on the page. +Let's get the title of the latest n8n blog post. Use the HTTP Request node to make a GET request to the URL `https://blog.n8n.io/`. Then, connect an HTML node and configure it to extract the title of the first post on the page. ??? note "Show me the solution" @@ -77,19 +77,19 @@ In a previous exercise, you used an HTTP Request node to make a request to an AP ## Date, time, and interval data Date and time data types include `DATE`, `TIME`, `DATETIME`, `TIMESTAMP`, and `YEAR`. The dates and times can be passed in different formats, for example: - -- `DATE`: March 29 2022, 29-03-2022, 2022/03/29 + +- `DATE`: March 29 2022, 29-03-2022, 2022/03/29 - `TIME`: 08:30:00, 8:30, 20:30 - `DATETIME`: 2022/03/29 08:30:00 - `TIMESTAMP`: 1616108400 (Unix timestamp), 1616108400000 (Unix ms timestamp) - `YEAR`: 2022, 22 - + If you need to convert date and time data to different formats, and calculate dates, use the [Date & Time node](/integrations/builtin/core-nodes/n8n-nodes-base.datetime/). You can also schedule workflows to run at a specific time, interval, or duration, using the [Schedule Trigger](/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/) node. -In some cases, you might need to pause the workflow execution. This might be necessary, for example, if you know that a service doesn't process the data instantly or it is generally slower, so you don't want the incomplete data to be passed to the next node. In this case, you can use the [Wait node](/integrations/builtin/core-nodes/n8n-nodes-base.wait/) after the node that you want to delay. The Wait node pauses the workflow execution and resumes it at a specific time, after a time interval, or on a webhook call. +In some cases, you might need to pause the workflow execution. This might be necessary, for example, if you know that a service doesn't process the data instantly or it's generally slower, so you don't want the incomplete data to be passed to the next node. In this case, you can use the [Wait node](/integrations/builtin/core-nodes/n8n-nodes-base.wait/) after the node that you want to delay. The Wait node pauses the workflow execution and resumes it at a specific time, after a time interval, or on a webhook call. ### Exercise @@ -268,7 +268,7 @@ Build a workflow that adds five days to an input date. Then, if the calculated d ## Binary data -So far, you have mainly worked with text data. But what if you want to process data that is not text? For example, images or PDF files. This is binary data, as it is represented in the binary numeral system. In this form, binary data doesn't offer you useful information, so it needs to be converted into a readable form. +Up to now, you have mainly worked with text data. But what if you want to process data that's not text? For example, images or PDF files. This is binary data, as it's represented in the binary numeral system. In this form, binary data doesn't offer you useful information, so it needs to be converted into a readable form. In n8n, you can process binary data with the following nodes: diff --git a/docs/courses/level-two/chapter-3.md b/docs/courses/level-two/chapter-3.md index 7ba7d724225..776816e6136 100644 --- a/docs/courses/level-two/chapter-3.md +++ b/docs/courses/level-two/chapter-3.md @@ -17,7 +17,7 @@ Merging data can involve: - Synchronizing data between multiple systems. For example, removing duplicate data, or updating data in one system when it changes in another. /// note | One-way vs. two-way sync -In a one-way sync, data is synchronized in one direction. One system serves as the single source of truth. When information changes in that main system, it automatically changes in the secondary system; but if information changes in the secondary system, the changes are not reflected in the main system. +In a one-way sync, data is synchronized in one direction. One system serves as the single source of truth. When information changes in that main system, it automatically changes in the secondary system; but if information changes in the secondary system, the changes aren't reflected in the main system. In a two-way sync, data is synchronized in both directions (between both systems). When information changes in either of the two systems, it automatically changes in the other one as well. @@ -36,7 +36,7 @@ In n8n, you can merge data from two different nodes using the [Merge node](/inte - Remove Key Matches - Wait -Notice that three of these modes require a key (Merge By Key, Keep Key Matches, Remove Key Matches). This key represents a common property between the two data sources, based on which the data can be merged. In the Merge node, they are called `Property Input 1` and `Property Input 2`. +Notice that three of these modes require a key (Merge By Key, Keep Key Matches, Remove Key Matches). This key represents a common property between the two data sources, based on which the data can be merged. In the Merge node, they're called `Property Input 1` and `Property Input 2`.
Property Input fields in the Merge node
@@ -83,7 +83,7 @@ To [create a loop in an n8n workflow](/flow-logic/looping/#using-loops-in-n8n){: If you need to process large incoming data, execute the Code node multiple times, or avoid API rate limits, it's best to split the data into batches (groups) and process these batches. You can do this with the [Loop Over Items node](/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/){:target="_blank" .external}. This node splits input data into a specified batch size and, with each iteration, returns a predefined amount of data. /// warning | Execution of Loop Over Items node -The Loop Over Items node stops executing after all the incoming items get divided into batches and passed on to the next node in the workflow, so it is not necessary to add an IF node to stop the loop. +The Loop Over Items node stops executing after all the incoming items get divided into batches and passed on to the next node in the workflow, so it's not necessary to add an IF node to stop the loop. /// ### Exercise diff --git a/docs/courses/level-two/chapter-4.md b/docs/courses/level-two/chapter-4.md index df74c50ef75..1076dcb17ae 100644 --- a/docs/courses/level-two/chapter-4.md +++ b/docs/courses/level-two/chapter-4.md @@ -4,7 +4,7 @@ contentType: tutorial # Dealing with errors in workflows -Sometimes it can happen that you're building a nice workflow, but when you try to execute it, it fails. There are many reasons why workflows executions may fail (some more or less mysterious), for example when a node is not configured correctly or a third-party service that you're trying to connect to is not working properly. +Sometimes it can happen that you're building a nice workflow, but when you try to execute it, it fails. There are many reasons why workflows executions may fail (some more or less mysterious), for example when a node isn't configured correctly or a third-party service that you're trying to connect to isn't working properly. But don't panic. We will show you some ways in which you can troubleshoot the issue, so you can get your workflow up and running as soon as possible. @@ -26,7 +26,7 @@ This will open the workflow in read-only mode, where you can see the execution o To catch failed workflows, create a separate [Error Workflow](/flow-logic/error-handling/error-workflows/) with the [Error Trigger node](/integrations/builtin/core-nodes/n8n-nodes-base.errortrigger/), which gets executed if the main execution fails. -Then, you can take further actions by connecting other nodes, for example sending notifications via email or Slack about the failed workflow and its errors. To receive error messages for a failed workflow, you need to select the option `Error Workflow` in the [Workflow Settings](/courses/level-one/chapter-5/chapter-5.8/) of the respective workflow. +Then, you can take further actions by connecting other nodes, for example sending notifications using email or Slack about the failed workflow and its errors. To receive error messages for a failed workflow, you need to select the option `Error Workflow` in the [Workflow Settings](/courses/level-one/chapter-5/chapter-5.8/) of the respective workflow. The only difference between a regular workflow and an Error Workflow is that the latter contains an Error Trigger node. Make sure to create this node before you set a workflow as Error Workflow. @@ -113,7 +113,7 @@ Throwing exceptions with the Stop and Error node is useful for verifying the dat If you are working with data from a third-party service, you may come across problems such as: wrongly formatted JSON output, data with the wrong type (for example, numeric data that has a non-numeric value), missing values, or errors from remote servers. -Though this kind of invalid data might not cause the workflow to fail right away, it could cause problems later on, and then it can become difficult to track the source error. This is why it is better to throw an error at the time you know there might be a problem. +Though this kind of invalid data might not cause the workflow to fail right away, it could cause problems later on, and then it can become difficult to track the source error. This is why it's better to throw an error at the time you know there might be a problem.
Stop and Error node with error message
/// diff --git a/docs/courses/level-two/chapter-5/chapter-5.0.md b/docs/courses/level-two/chapter-5/chapter-5.0.md index 56600c2a506..4d0099401aa 100644 --- a/docs/courses/level-two/chapter-5/chapter-5.0.md +++ b/docs/courses/level-two/chapter-5/chapter-5.0.md @@ -8,18 +8,18 @@ Remember [our friend Nathan](/courses/level-one/chapter-3){:target="_blank" .ext **Nathan 🙋:** Hello, it's me again. My manager was so impressed with my first workflow automation solution, that she entrusted me with more responsibility.
**You 👩‍🔧:** More work and responsibility. Congratulations, I guess. What do you need to do now?
-**Nathan 🙋:** I got access to all sales data and am responsible for creating two reports: one for regional sales and one for orders prices. They are based on data from different sources and come in different formats.
-**You 👩‍🔧:** Sounds like a lot of manual work–but the kind that can be automated. So let's do it! +**Nathan 🙋:** I got access to all sales data and am responsible for creating two reports: one for regional sales and one for orders prices. They're based on data from different sources and come in different formats.
+**You 👩‍🔧:** Sounds like a lot of manual work–but the kind that can be automated. Let's do it! ## Workflow design -Now that we have an idea of what Nathan wants to automate, let's list the steps he needs to take to achieve this: +Now that know what Nathan wants to automate, let's list the steps he needs to take to achieve this: 1. Get and combine data from all necessary sources. 2. Sort the data and format the dates. 3. Write binary files. -4. Send notifications via email and Discord. +4. Send notifications using email and Discord. n8n provides core nodes for all these steps. This use case is somewhat complex and it will be made up of three separate workflows: @@ -33,6 +33,6 @@ To build the workflows, you will need the following: * An [Airtable](https://airtable.com/){:target="_blank" .external} account and [credentials](/integrations/builtin/credentials/airtable/){:target="_blank" .external}. * A [Google](https://www.google.com/account/about/){:target="_blank" .external} account and [credentials](/integrations/builtin/credentials/google/){:target="_blank" .external} to access Gmail. -* A [Discord](https://discord.com/){:target="_blank" .external-link} account and webhook URL (you receive this via email when you sign up for this course). +* A [Discord](https://discord.com/){:target="_blank" .external-link} account and webhook URL (you receive this using email when you sign up for this course). Next, you will build these three workflows with step-by-step instructions. diff --git a/docs/courses/level-two/chapter-5/chapter-5.1.md b/docs/courses/level-two/chapter-5/chapter-5.1.md index 3acf8faeaa5..1e6acd84ce6 100644 --- a/docs/courses/level-two/chapter-5/chapter-5.1.md +++ b/docs/courses/level-two/chapter-5/chapter-5.1.md @@ -2,7 +2,7 @@ contentType: tutorial --- -# Workflow 1 – Merging data +# Workflow 1: Merging data The company's customer data is stored in Airtable. It contains information about the customers' ID, country, email, and join date, but lacks data about their respective region and subregion. You need to fill in these last two fields in order to create the reports for regional sales. @@ -26,5 +26,5 @@ The workflow should look like this: * How many items does the HTTP Request node return? * How many items does the Merge node return? * How many unique regions are assigned in the customers table? -* What is the subregion assigned to the customerID 10? +* What's the subregion assigned to the customerID 10? /// diff --git a/docs/courses/level-two/chapter-5/chapter-5.2.md b/docs/courses/level-two/chapter-5/chapter-5.2.md index 495751ac818..31690cc4935 100644 --- a/docs/courses/level-two/chapter-5/chapter-5.2.md +++ b/docs/courses/level-two/chapter-5/chapter-5.2.md @@ -2,7 +2,7 @@ contentType: tutorial --- -# Workflow 2 – Generating reports +# Workflow 2: Generating reports In this workflow, you will merge data from different sources, transform binary data, generate files, and send notifications about them. The final workflow should look like this: @@ -10,7 +10,7 @@ In this workflow, you will merge data from different sources, transform binary d To make things easier, let's split the workflow into three parts. -## Part 1 – Getting data from different sources +## Part 1: Getting data from different sources The first part of the workflow consists of five nodes: @@ -23,20 +23,20 @@ The first part of the workflow consists of five nodes: * **URL**: The Dataset URL you received in the email when you signed up for this course. * **Options > Add Option > Split Into Items**: toggle to true. * **Headers > Add Header**: - * **Name**: unique_id + * **Name**: `unique_id` * **Value**: The unique ID you received in the email when you signed up for this course. 2. Use the [Airtable node](/integrations/builtin/app-nodes/n8n-nodes-base.airtable/){:target="_blank" .external} to list data from the `customers` table (where you updated the fields `region` and `subregion`). 3. Use the [Merge node](/integrations/builtin/core-nodes/n8n-nodes-base.merge/){:target="_blank" .external} to merge data from the Airtable and HTTP Request node, based on the common key `customer ID`. -4. Use the [Sort](/integrations/builtin/core-nodes/n8n-nodes-base.sort/) node to sort data by orderPrice in descending order. +4. Use the [Sort](/integrations/builtin/core-nodes/n8n-nodes-base.sort/) node to sort data by `orderPrice` in descending order. /// question | Quiz questions -* What is the name of the employee assigned to customer 1? -* What is the order status of customer 6? -* What is the highest order price? +* What's the name of the employee assigned to customer 1? +* What's the order status of customer 6? +* What's the highest order price? /// -## Part 2 – Generating file for regional sales +## Part 2: Generating file for regional sales The second part of the workflow consists of five nodes: @@ -45,18 +45,18 @@ The second part of the workflow consists of five nodes: 1. Use the [IF node](/integrations/builtin/core-nodes/n8n-nodes-base.if/){:target="_blank" .external} to filter order from the region Americas. 2. Use the [Move Binary Data node](/integrations/builtin/core-nodes/n8n-nodes-base.movebinarydata/){:target="_blank" .external} to transform the incoming data from JSON to binary format. Note that you need to convert all data. 3. Use the [Write Binary File node](/integrations/builtin/core-nodes/n8n-nodes-base.writebinaryfile/){:target="_blank" .external} to create and store files with the orders information. In the File Name field, use an expression to include the order id in the file name, like this: `report_orderID{order_id}.json` (you need to replace the `{order id}` with the reference the Move Binary Data node). -4. Use the [Gmail node](/integrations/builtin/app-nodes/n8n-nodes-base.gmail/){:target="_blank" .external} (or another email node) to send the files via email to an address you have access to. Note that you need to add an attachment with the data property. +4. Use the [Gmail node](/integrations/builtin/app-nodes/n8n-nodes-base.gmail/){:target="_blank" .external} (or another email node) to send the files using email to an address you have access to. Note that you need to add an attachment with the data property. 5. Use the [Discord node](/integrations/builtin/app-nodes/n8n-nodes-base.discord/){:target="_blank" .external} to send a message in the n8n Discord channel `#course-level-two`. In the node, configure the following parameters: * Webhook URL: The webhook URL you received in the email when you signed up for this course. - * Text: "I sent the file via email with the label ID `{label ID}` and wrote the binary file `{file name}`. My ID: " followed by your ID.
Note that you need to replace the text in curly braces `{}` with expressions that reference the data from the nodes. + * Text: "I sent the file using email with the label ID `{label ID}` and wrote the binary file `{file name}`. My ID: " followed by your ID.
Note that you need to replace the text in curly braces `{}` with expressions that reference the data from the nodes. /// question | Quiz questions * How many orders are assigned to the region Americas? -* What is the total price of the orders in the region Americas? +* What's the total price of the orders in the region Americas? * How many items are returned by the *Write Binary File node*? /// -## Part 3 – Generating files for total sales +## Part 3: Generating files for total sales The third part of the workflow consists of seven nodes: @@ -71,7 +71,7 @@ The third part of the workflow consists of seven nodes: * Text: "I created the spreadsheet `{file name}`. My ID:" followed by your ID.
The `{file name}` should be an expression that references data from the Spreadsheet File node.
/// question | Quiz questions -* What is the lowest order price in the first batch of items? -* What is the formatted date of customer 7? +* What's the lowest order price in the first batch of items? +* What's the formatted date of customer 7? * How many items are returned by the *Spreadsheet File node*? /// diff --git a/docs/courses/level-two/chapter-5/chapter-5.3.md b/docs/courses/level-two/chapter-5/chapter-5.3.md index c7d4f91f4cb..aa067e454e2 100644 --- a/docs/courses/level-two/chapter-5/chapter-5.3.md +++ b/docs/courses/level-two/chapter-5/chapter-5.3.md @@ -2,7 +2,7 @@ contentType: tutorial --- -# Workflow 3 – Monitoring workflow errors +# Workflow 3: Monitoring workflow errors To accomplish this task, you have to create an Error workflow that monitors the main workflow. @@ -25,5 +25,5 @@ The workflow should look like this: * What fields does the Error Trigger node return? * What information about the execution does the Error Trigger node return? * What information about the workflow does the Error Trigger node return? -* What is the expression to reference the workflow name? +* What's the expression to reference the workflow name? /// diff --git a/docs/courses/level-two/chapter-6.md b/docs/courses/level-two/chapter-6.md index 8671283d33b..8289a6e0c06 100644 --- a/docs/courses/level-two/chapter-6.md +++ b/docs/courses/level-two/chapter-6.md @@ -12,7 +12,7 @@ You can test your knowledge by taking a **quiz**, which consists of questions ab - You need to have at least 80% correct answers to pass the quiz. - You can take the quiz as many times as you want. -- There is no time limit on answering the quiz questions. +- There's no time limit on answering the quiz questions.
diff --git a/docs/courses/level-two/index.md b/docs/courses/level-two/index.md index e975e207b10..1e90c0b81af 100644 --- a/docs/courses/level-two/index.md +++ b/docs/courses/level-two/index.md @@ -36,7 +36,7 @@ To follow along this course (at a comfortable pace) you will need the following: ## How long does the course take? -Completing the course should take around **two hours**. You do not have to complete it in one go, feel free to take breaks and resume whenever you are ready. +Completing the course should take around **two hours**. You don't have to complete it in one go, feel free to take breaks and resume whenever you are ready. ## How do I complete the course? diff --git a/docs/data/binary-data.md b/docs/data/binary-data.md index 48d4565cb58..986d0781421 100644 --- a/docs/data/binary-data.md +++ b/docs/data/binary-data.md @@ -16,7 +16,7 @@ This page collects resources relating to binary data in n8n. ## Working with binary data in your workflows -You can process binary data in n8n workflows. n8n provides nodes to support many tasks. You can also use code to work with binary data. +You can process binary data in n8n workflows. n8n provides nodes to help you work with binary data. You can also use code. ### Nodes diff --git a/docs/data/code.md b/docs/data/code.md index 33e9364454b..7ebd0d3a35a 100644 --- a/docs/data/code.md +++ b/docs/data/code.md @@ -8,4 +8,4 @@ contentType: explanation A function is a block of code designed to perform a certain task. In n8n, you can write custom JavaScript or Python code snippets to add, remove, and update the data you receive from a node. -The [Code](/integrations/builtin/core-nodes/n8n-nodes-base.code/) node gives you access to the incoming data and you can manipulate it. With this node you can implement any function you want using JavaScript code. +The [Code](/integrations/builtin/core-nodes/n8n-nodes-base.code/) node gives you access to the incoming data and you can manipulate it. With this node you can create any function you want using JavaScript code. diff --git a/docs/data/data-editing.md b/docs/data/data-editing.md index 2f778feb3b9..fe5eebf926c 100644 --- a/docs/data/data-editing.md +++ b/docs/data/data-editing.md @@ -36,8 +36,8 @@ You can copy data from nodes in previous workflow executions: 2. Select **Copy** ![Copy data icon](/_images/data/data-pinning/copy-data.png). 3. You can choose what to copy: * **Copy Item Path** and **Copy Parameter Path** gives you expressions that access parts of the JSON. - * **Copy Value**: copies the entire selected JSON. This is usually what you want when copying data from past executions. -8. Return to the workflow you're currently working on: + * **Copy Value**: copies the entire selected JSON. +8. Return to the workflow you're working on: 1. Open the left menu. 2. Select **Workflows**. 3. Select **Open**. @@ -47,4 +47,4 @@ You can copy data from nodes in previous workflow executions: 11. In the **OUTPUT** view, select **JSON** to switch to JSON view. 12. Select **Edit** ![Edit data icon](/_images/data/data-pinning/edit-data.png). 15. Paste in the data from the previous execution. -16. Select **Save**. n8n saves your data changes and pins your data. \ No newline at end of file +16. Select **Save**. n8n saves your data changes and pins your data. diff --git a/docs/data/data-mapping/data-item-linking/item-linking-errors.md b/docs/data/data-mapping/data-item-linking/item-linking-errors.md index 99117040de9..e2153e2541a 100644 --- a/docs/data/data-mapping/data-item-linking/item-linking-errors.md +++ b/docs/data/data-mapping/data-item-linking/item-linking-errors.md @@ -9,9 +9,9 @@ n8n displays errors related to data mapping when there are problems tracing an i ## Errors when pinning data If you see this error message: - + > ERROR: '``' must be unpinned to execute - + Unpin the data in the named node, and execute the node to get fresh data. This error has two possible causes: diff --git a/docs/data/data-mapping/data-mapping-ui.md b/docs/data/data-mapping/data-mapping-ui.md index fcf1bdcb713..e6c49eda483 100644 --- a/docs/data/data-mapping/data-mapping-ui.md +++ b/docs/data/data-mapping/data-mapping-ui.md @@ -62,7 +62,7 @@ Given the following data: n8n displays it in table form like this: -!["Screenshot of a table in the INPUT panel. It includes a top level field named "nested". This field contains nested data, which is indicated in bold."](/_images/data/data-mapping/nested-data.png) +!["Screenshot of a table in the INPUT panel. It includes a top level field named "nested." This field contains nested data, which is indicated in bold."](/_images/data/data-mapping/nested-data.png) ## Map data in the expressions editor diff --git a/docs/data/data-structure.md b/docs/data/data-structure.md index 5c04e67ca9b..bcc0d0edebf 100644 --- a/docs/data/data-structure.md +++ b/docs/data/data-structure.md @@ -33,8 +33,8 @@ 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 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 the case 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. +/// note | Skipping the `json` key and array syntax +From 0.166.0 on, 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 the case 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 item processing diff --git a/docs/embed/deployment.md b/docs/embed/deployment.md index 308606bfc07..08c6ff0b24b 100644 --- a/docs/embed/deployment.md +++ b/docs/embed/deployment.md @@ -16,7 +16,7 @@ Due to this, you don't need to use backups except in case of a catastrophic fail ## Backups -n8n recommends creating nightly backups by attaching another container, and copying all data to this second container. In this manner, RAM usage is negligible, and so does'nt impact the amount of users you can place on the server. +n8n recommends creating nightly backups by attaching another container, and copying all data to this second container. In this manner, RAM usage is negligible, and so doesn't impact the amount of users you can place on the server. ## Restarting diff --git a/docs/embed/managing-workflows.md b/docs/embed/managing-workflows.md index 3dc91c64235..4722228b083 100644 --- a/docs/embed/managing-workflows.md +++ b/docs/embed/managing-workflows.md @@ -33,7 +33,7 @@ Here you need to capture all credentials for any node/service this user must aut ### 2. Create user credentials -After all relevant credential details have been obtained, you can proceed to create the relevant service credentials in n8n. This can be done via the Editor UI or API call. +After all relevant credential details have been obtained, you can proceed to create the relevant service credentials in n8n. This can be done using the Editor UI or API call. #### Using the Editor UI diff --git a/docs/external-secrets.md b/docs/external-secrets.md index 7065e200358..7e0aa205fda 100644 --- a/docs/external-secrets.md +++ b/docs/external-secrets.md @@ -19,7 +19,7 @@ n8n stores all credentials encrypted in its database, and restricts access to th ## Connect n8n to your secrets store /// note | Secret names -Your secret names can't contain spaces, hyphens, or other special characters. n8n supports secret names containing alphanumeric characters (a-z, A-Z, and 0-9), and underscores. +Your secret names can't contain spaces, hyphens, or other special characters. n8n supports secret names containing alphanumeric characters (`a-z`, `A-Z`, and `0-9`), and underscores. /// 1. In n8n, go to **Settings** > **External Secrets**. 1. Select **Set Up** for your store provider. diff --git a/docs/flow-logic/splitting.md b/docs/flow-logic/splitting.md index c50b1a45a33..7fb8772187b 100644 --- a/docs/flow-logic/splitting.md +++ b/docs/flow-logic/splitting.md @@ -9,7 +9,7 @@ Splitting uses the [IF](/integrations/builtin/core-nodes/n8n-nodes-base.if/) or Compare these workflows: -!["Diagram representing two workflows. One has three steps and follows a simple process, with a user submitting a bug, and the workflow emailing a support team. The second workflow starts the same way, but then splits depending on whether the user marked the issue as urgent. It then splits again depending on the user's support plan"](/_images/flow-logic/splitting/single-multi-branch-workflow.png) +!["Diagram representing two workflows. One has three steps and follows a linear process, with a user submitting a bug, and the workflow emailing a support team. The second workflow starts the same way, but then splits depending on whether the user marked the issue as urgent. It then splits again depending on the user's support plan"](/_images/flow-logic/splitting/single-multi-branch-workflow.png) This is the power of splitting and conditional nodes in n8n. diff --git a/docs/flow-logic/waiting.md b/docs/flow-logic/waiting.md index 3a1398169b2..620d58692d9 100644 --- a/docs/flow-logic/waiting.md +++ b/docs/flow-logic/waiting.md @@ -6,8 +6,8 @@ contentType: howto # Waiting -Waiting allows you to pause a workflow mid-execution, then resume where the workflow left off, with the same data. This is useful if you need to rate limit your calls to a service, or wait for an external event to complete. You can wait for a specified time period, or until a webhook is called. +Waiting allows you to pause a workflow mid-execution, then resume where the workflow left off, with the same data. This is useful if you need to rate limit your calls to a service, or wait for an external event to complete. You can wait for a specified duration, or until a webhook fires. Making a workflow wait uses the [Wait](/integrations/builtin/core-nodes/n8n-nodes-base.wait/) node. Refer to the node documentation for usage details. -n8n provides a workflow template with a basice example of [Rate limiting and waiting for external events](https://n8n.io/workflows/1749-rate-limiting-and-waiting-for-external-events/){:target=_blank .external-link}. +n8n provides a workflow template with a basic example of [Rate limiting and waiting for external events](https://n8n.io/workflows/1749-rate-limiting-and-waiting-for-external-events/){:target=_blank .external-link}. diff --git a/docs/hosting/architecture/database-structure.md b/docs/hosting/architecture/database-structure.md index 0cfe09bc265..4063807ff16 100644 --- a/docs/hosting/architecture/database-structure.md +++ b/docs/hosting/architecture/database-structure.md @@ -18,7 +18,7 @@ To inspect the n8n database, you can use [DBeaver](https://dbeaver.io){:target=_ ## Tables These are the tables n8n creates during setup. - + ### auth_identity Stores details of external authentication providers when using [SAML](/user-management/saml/). @@ -114,3 +114,5 @@ Maps tags to workflows. [tag_entity](#tag_entity) contains tag details. ## Entity Relationship Diagram (ERD) !["n8n ERD"](/_images/hosting/architecture/n8n-database-diagram.png) + + diff --git a/docs/hosting/architecture/index.md b/docs/hosting/architecture/index.md index b9276267afa..951ebdf0435 100644 --- a/docs/hosting/architecture/index.md +++ b/docs/hosting/architecture/index.md @@ -10,4 +10,4 @@ Understanding n8n's underlying architecture is helpful if you need to: * Embed n8n * Customize n8n's default databases -This section is a work in progress. If you have questions, please try the [forum](https://community.n8n.io/) and let us know which architecture documents would be useful for you. +This section is a work in progress. If you have questions, please try the [forum](https://community.n8n.io/) and let n8n know which architecture documents would be useful for you. diff --git a/docs/hosting/environment-variables/configuration-methods.md b/docs/hosting/environment-variables/configuration-methods.md index 714f9ac107a..e0e2269c92d 100644 --- a/docs/hosting/environment-variables/configuration-methods.md +++ b/docs/hosting/environment-variables/configuration-methods.md @@ -98,7 +98,7 @@ n8n: ### Keeping sensitive data in separate files -You can append `_FILE` to some individual environment variables to provide their configuration in a separate file, enabling you to avoid passing sensitive details using environment variables. n8n loads the data from the file with the given name, making it possible to load data from Docker- and Kubernetes-Secrets. +You can append `_FILE` to some individual environment variables to provide their configuration in a separate file, enabling you to avoid passing sensitive details using environment variables. n8n loads the data from the file with the given name, making it possible to load data from Docker-Secrets and Kubernetes-Secrets. The following environment variables support file input: @@ -133,11 +133,11 @@ export VUE_APP_URL_BASE_API=https://n8n.example.com/ n8n creates a random encryption key automatically on the first launch and saves it in the `~/.n8n` folder. n8n uses that key to encrypt the credentials before -they get saved to the database. If the key is not yet in the settings file, +they get saved to the database. If the key isn't yet in the settings file, you can set it using an environment variable, so that n8n uses your custom key instead of generating a new one. -In queue mode, it is required to specify the encryption key environment variable for all workers. +In queue mode, you must specify the encryption key environment variable for all workers. ```bash export N8N_ENCRYPTION_KEY= @@ -146,7 +146,7 @@ export N8N_ENCRYPTION_KEY= ### Execute all workflows in the same process /// warning | Deprecated -n8n deprecated `own` mode and the `EXECUTIONS_PROCESS` flag in version 1.0. They will be removed in a future release. Main mode is now the default, so this step isn't needed for version 1.0 and above. +n8n deprecated `own` mode and the `EXECUTIONS_PROCESS` flag in version 1.0. n8n will remove these in a future release. Main mode is now the default, so this step isn't needed for version 1.0 and above. Use [Queue mode](/hosting/scaling/queue-mode/) if you need full execution isolation. /// @@ -179,7 +179,7 @@ export EXECUTIONS_TIMEOUT_MAX=7200 Every user can add custom nodes that get loaded by n8n on startup. The default location is in the subfolder `.n8n/custom` of the user who started n8n. -You can define additional folders with an environment variable: +You can define more folders with an environment variable: ```bash export N8N_CUSTOM_EXTENSIONS="/home/jim/n8n/custom-nodes;/data/n8n/nodes" @@ -208,7 +208,7 @@ export NODE_FUNCTION_ALLOW_EXTERNAL=moment,lodash ### Timezone -The default timezone is "America/New_York". For instance, the Schedule node uses it to know at what time the workflow should start. To set a different default timezone, set `GENERIC_TIMEZONE` to the appropriate value. For example, if you want to set the timezone to Berlin (Germany): +The default timezone is America/New_York. For instance, the Schedule node uses it to know at what time the workflow should start. To set a different default timezone, set `GENERIC_TIMEZONE` to the appropriate value. For example, if you want to set the timezone to Berlin (Germany): ```bash export GENERIC_TIMEZONE=Europe/Berlin @@ -227,7 +227,7 @@ export N8N_USER_FOLDER=/home/jim/n8n ### Webhook URL -n8n creates the webhook URL by combining `N8N_PROTOCOL`, `N8N_HOST` and `N8N_PORT`. If n8n runs behind a reverse proxy, that won't work. That's because n8n runs internally on port 5678 but is exposed to the web using the reverse proxy on port 443. In that case, it's important to set the webhook URL manually so that n8n can display it correctly in the Editor UI and register the correct webhook URLs with external services. +n8n creates the webhook URL by combining `N8N_PROTOCOL`, `N8N_HOST` and `N8N_PORT`. If n8n runs behind a reverse proxy, that won't work. That's because n8n runs internally on port 5678 but is exposed to the web using the reverse proxy on port 443. In that case, it's important to set the webhook URL manually so that n8n can display it in the Editor UI and register the correct webhook URLs with external services. ```bash export WEBHOOK_URL=https://n8n.example.com/ diff --git a/docs/hosting/environment-variables/environment-variables.md b/docs/hosting/environment-variables/environment-variables.md index a27d3196747..b59a85e719e 100644 --- a/docs/hosting/environment-variables/environment-variables.md +++ b/docs/hosting/environment-variables/environment-variables.md @@ -96,7 +96,7 @@ By default, n8n uses memory to store binary data. Enterprise users can choose to ## User management SMTP, and two-factor authentication Refer to [User management](/hosting/user-management-self-hosted/) for more information on setting up user management and emails. - + | Variable | Type | Default | Description | | :------- | :--- | :------ | :---------- | | `N8N_EMAIL_MODE` | String | `smtp` | Enable emails. | @@ -116,7 +116,7 @@ Refer to [User management](/hosting/user-management-self-hosted/) for more infor | `N8N_USER_MANAGEMENT_JWT_DURATION_HOURS` | Number | 168 | Set an expiration date for the JWTs in hours. | | `N8N_USER_MANAGEMENT_JWT_REFRESH_TIMEOUT_HOURS` | Number | 0 | How many hours before the JWT expires to automatically refresh it. 0 means 25% of `N8N_USER_MANAGEMENT_JWT_DURATION_HOURS`. -1 means it will never refresh, which forces users to log in again after the period defined in `N8N_USER_MANAGEMENT_JWT_DURATION_HOURS`. | | `N8N_MFA_ENABLED` | Boolean | `true` | Whether to enable two-factor authentication (true) or disable (false). n8n ignores this if existing users have 2FA enabled. | - + ## Endpoints diff --git a/docs/hosting/environment-variables/index.md b/docs/hosting/environment-variables/index.md index 76b5e1424e6..9ae7c0e576e 100644 --- a/docs/hosting/environment-variables/index.md +++ b/docs/hosting/environment-variables/index.md @@ -7,5 +7,5 @@ contentType: overview You can configure your n8n instance with environment variables. -* [Configuration methods](/hosting/environment-variables/configuration-methods/): how to configure by CLI or file. Includes examples and explanations for frequently-used settings. +* [Configuration methods](/hosting/environment-variables/configuration-methods/): how to configure by CLI or file. Includes examples and explanations for frequently used settings. * Reference list of [Environment variables](/hosting/environment-variables/environment-variables/). diff --git a/docs/hosting/installation/docker.md b/docs/hosting/installation/docker.md index b9bd083796d..ca552f7011a 100644 --- a/docs/hosting/installation/docker.md +++ b/docs/hosting/installation/docker.md @@ -47,7 +47,7 @@ If no directory is found, n8n creates automatically one on startup. In this case, existing credentials saved with a different encryption key can not be used anymore. /// note | Keep in mind -Persisting the `/home/node/.n8n` directory even when using alternate databases is the recommended best practice, but not explicitly required. The encryption key can be provided via the `N8N_ENCRYPTION_KEY` [environment variable](/hosting/environment-variables/environment-variables/#deployment). +Persisting the `/home/node/.n8n` directory even when using alternate databases is the recommended best practice, but not explicitly required. The encryption key can be provided using the `N8N_ENCRYPTION_KEY` [environment variable](/hosting/environment-variables/environment-variables/#deployment). /// ### PostgresDB @@ -77,7 +77,7 @@ A complete `docker-compose` file for Postgres can be found [here](https://github To define the timezone n8n should use, the environment variable `GENERIC_TIMEZONE` can be set. This gets used by schedule based nodes such as the Cron node. The timezone of the system can also be set separately. This controls what -some scripts and commands return like `$ date`. The system timezone can be set via the environment variable `TZ`. +some scripts and commands return like `$ date`. The system timezone can be set using the environment variable `TZ`. Example using the same timezone for both: diff --git a/docs/hosting/installation/npm.md b/docs/hosting/installation/npm.md index be69a830421..f6f331f0df3 100644 --- a/docs/hosting/installation/npm.md +++ b/docs/hosting/installation/npm.md @@ -18,7 +18,7 @@ From the terminal, run: npx n8n ``` -This command will download everything that is needed to start n8n. You can then access n8n and start building workflows by opening [http://localhost:5678](http://localhost:5678){:target=_blank .external-link}. +This command will download everything that's needed to start n8n. You can then access n8n and start building workflows by opening [http://localhost:5678](http://localhost:5678){:target=_blank .external-link}. ## Install globally with npm diff --git a/docs/hosting/installation/server-setups/docker-compose.md b/docs/hosting/installation/server-setups/docker-compose.md index 6baaff78968..62f0858c9b7 100644 --- a/docs/hosting/installation/server-setups/docker-compose.md +++ b/docs/hosting/installation/server-setups/docker-compose.md @@ -160,7 +160,7 @@ SSL_EMAIL=user@example.com ### 7. Create data folder -Create the Docker volume that is defined as `n8n_data`. n8n will save the database file from SQLite and the encryption key in this volume. +Create the Docker volume that's defined as `n8n_data`. n8n will save the database file from SQLite and the encryption key in this volume. ```sh sudo docker volume create n8n_data diff --git a/docs/hosting/installation/server-setups/google-cloud.md b/docs/hosting/installation/server-setups/google-cloud.md index 194bfa6b67c..be1f1234c8f 100644 --- a/docs/hosting/installation/server-setups/google-cloud.md +++ b/docs/hosting/installation/server-setups/google-cloud.md @@ -63,7 +63,7 @@ For larger scale n8n deployments, Postgres provides a more robust database backe ### Create a volume for persistent storage -To maintain data between pod restarts, the Postgres deployment needs a persistent volume. Running Postgres on GCP requires a specific Kubernetes Storage Class. You can read [this guide](https://cloud.google.com/architecture/deploying-highly-available-postgresql-with-gke){:target="_blank" .external-link} for specifics, but the `storage.yaml` manifest creates it for you. You may want to change the regions to create the storage in under the `allowedTopologies` > `matchedLabelExpressions` > `values` key. By default, they're set to "us-central". +To maintain data between pod restarts, the Postgres deployment needs a persistent volume. Running Postgres on GCP requires a specific Kubernetes Storage Class. You can read [this guide](https://cloud.google.com/architecture/deploying-highly-available-postgresql-with-gke){:target="_blank" .external-link} for specifics, but the `storage.yaml` manifest creates it for you. You may want to change the regions to create the storage in under the `allowedTopologies` > `matchedLabelExpressions` > `values` key. By default, they're set to `us-central`. ```yaml … diff --git a/docs/hosting/logging-monitoring/logging.md b/docs/hosting/logging-monitoring/logging.md index 26b7138dadb..07452e89949 100644 --- a/docs/hosting/logging-monitoring/logging.md +++ b/docs/hosting/logging-monitoring/logging.md @@ -47,7 +47,7 @@ n8n uses standard log levels to report: - `error`: outputs only errors and nothing else - `warn`: outputs errors and warning messages - `info`: contains useful information about progress -- `verbose`: make n8n output additional information about progress that allows you to further understand what is happening +- `verbose`: make n8n output additional information about progress that allows you to further understand what's happening - `debug`: the most verbose output. n8n outputs a lot of information to help you debug issues. @@ -91,11 +91,11 @@ Logger.verbose(`Executing hook (workflowExecuteBefore, hookFunctionsPush)`, {exe When creating new loggers, some useful standards to keep in mind are: -- Craft log messages to be as easily human-readable as possible. For example, always wrap names in quotes. +- Craft log messages to be as human-readable as possible. For example, always wrap names in quotes. - Duplicating information in the log message and metadata, like workflow name in the above example, can be useful as messages are easier to search and metadata enables easier filtering. -- Include multiple IDs (e.g. executionId, workflowId, and sessionId) throughout all logs. +- Include multiple IDs (for example, `executionId`, `workflowId`, and `sessionId`) throughout all logs. - Use node types instead of node names (or both) as this is more consistent, and so easier to search. ## Front-end logs -As of now, front-end logs are not available. Using `Logger` or `LoggerProxy` would yield errors in the `editor-ui` package. This functionality will get implemented in the future versions. +As of now, front-end logs aren't available. Using `Logger` or `LoggerProxy` would yield errors in the `editor-ui` package. This functionality will get implemented in the future versions. diff --git a/docs/hosting/logging-monitoring/monitoring.md b/docs/hosting/logging-monitoring/monitoring.md index f2df40b6cc7..b8490248bed 100644 --- a/docs/hosting/logging-monitoring/monitoring.md +++ b/docs/hosting/logging-monitoring/monitoring.md @@ -7,9 +7,10 @@ contentType: howto There are two API endpoints you can call to check the status of your instance: `/healthz` and `/metrics`. + ## healthz - -The `/healthz` endpoint returns a standard HTTP status code. 200 indicates the instance is reachable. It is available for both self-hosted and Cloud users. + +The `/healthz` endpoint returns a standard HTTP status code. 200 indicates the instance is reachable. It's available for both self-hosted and Cloud users. Access the endpoint: @@ -31,9 +32,9 @@ Access the endpoint: /// info | Feature availability The `/metrics` endpoint isn't available on n8n Cloud. /// - + ## Enable metrics and healthz for self-hosted n8n - + The `/metrics` and `/healthz` endpoints are disabled by default. To enable them, configure your n8n instance: ```shell diff --git a/docs/hosting/scaling/memory-errors.md b/docs/hosting/scaling/memory-errors.md index 515e9d3b4ce..35cb5fe7e8e 100644 --- a/docs/hosting/scaling/memory-errors.md +++ b/docs/hosting/scaling/memory-errors.md @@ -48,8 +48,8 @@ This approach is more complex and means re-building the workflows causing the is Splitting the workflow might seem counter-intuitive at first as it usually requires adding at least two additional nodes: the [Loop Over Items](/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/) node to split up the items into smaller batches and the [Execute Workflow](/integrations/builtin/core-nodes/n8n-nodes-base.executeworkflow/) node to start the sub-workflow. -However, as long as your sub-workflow does the heavy lifting for each batch and then returns only a very small result set to the main workflow, the memory consumption is significantly reduced. This is because the sub-workflow only holds the data for the current batch in memory, after which the memory is freed again. +However, as long as your sub-workflow does the heavy lifting for each batch and then returns only a small result set to the main workflow, the memory consumption is reduced. This is because the sub-workflow only holds the data for the current batch in memory, after which the memory is freed again. ### Increase old memory -This applies to self-hosting n8n. When encountering **JavaScript heap out of memory** errors, it is often useful to allocate additional memory to the old memory section of the V8 JavaScript engine. To do this, set the appropriate [V8 option](https://nodejs.org/api/cli.html#--max-old-space-sizesize-in-megabytes){:target=_blank .external-link} `--max-old-space-size=SIZE` either through the CLI or through the `NODE_OPTIONS` [environment variable](https://nodejs.org/api/cli.html#node_optionsoptions){:target=_blank .external-link}. +This applies to self-hosting n8n. When encountering **JavaScript heap out of memory** errors, it's often useful to allocate additional memory to the old memory section of the V8 JavaScript engine. To do this, set the appropriate [V8 option](https://nodejs.org/api/cli.html#--max-old-space-sizesize-in-megabytes){:target=_blank .external-link} `--max-old-space-size=SIZE` either through the CLI or through the `NODE_OPTIONS` [environment variable](https://nodejs.org/api/cli.html#node_optionsoptions){:target=_blank .external-link}. diff --git a/docs/hosting/scaling/queue-mode.md b/docs/hosting/scaling/queue-mode.md index d9cd20eea04..8ee2e44544c 100644 --- a/docs/hosting/scaling/queue-mode.md +++ b/docs/hosting/scaling/queue-mode.md @@ -66,20 +66,20 @@ docker run --name some-redis -p 6379:6379 -d redis By default, Redis runs on `localhost` on port `6379` with no password. Based on your Redis configuration, set the following configurations for the main n8n process. These will allow n8n to interact with Redis. -| Via configuration file | Via environment variables | Description | +| using configuration file | using environment variables | Description | | ------ | ------ | ----- | | `queue.bull.redis.host:localhost` | `QUEUE_BULL_REDIS_HOST=localhost` | By default, Redis runs on `localhost`. | | `queue.bull.redis.port:6379` | `QUEUE_BULL_REDIS_PORT=6379` | The default port is `6379`. If Redis is running on a different port, configure the value. | You can also set the following optional configurations: -| Via configuration file | Via environment variables | Description | +| using configuration file | using environment variables | Description | | ------ | ------ | ----- | | `queue.bull.redis.username:USERNAME` | `QUEUE_BULL_REDIS_USERNAME` | By default, Redis doesn't require a username. If you're using a specific user, configure it variable. | | `queue.bull.redis.password:PASSWORD` | `QUEUE_BULL_REDIS_PASSWORD` | By default, Redis doesn't require a password. If you're using a password, configure it variable. | | `queue.bull.redis.db:0` | `QUEUE_BULL_REDIS_DB` | The default value is `0`. If you change this value, update the configuration. | | `queue.bull.redis.timeoutThreshold:10000ms` | `QUEUE_BULL_REDIS_TIMEOUT_THRESHOLD` | Tells n8n how long it should wait if Redis is unavailable before exiting. The default value is `10000ms`. | -| `queue.bull.queueRecoveryInterval:60` | `QUEUE_RECOVERY_INTERVAL` | Adds an active watchdog to n8n that checks Redis for finished executions. This is used to recover when n8n's main process loses connection temporarily to Redis and is not notified about finished jobs. The default value is `60` seconds. | +| `queue.bull.queueRecoveryInterval:60` | `QUEUE_RECOVERY_INTERVAL` | Adds an active watchdog to n8n that checks Redis for finished executions. This is used to recover when n8n's main process loses connection temporarily to Redis and isn't notified about finished jobs. The default value is `60` seconds. | | `queue.bull.gracefulShutdownTimeout:30` | `QUEUE_WORKER_TIMEOUT` | A graceful shutdown timeout for workers to finish executing jobs before terminating the process. The default value is `30` seconds. | Now you can start your n8n instance and it will connect to your Redis instance. @@ -164,7 +164,7 @@ When using multiple webhook processes you will need a load balancer to route req **Note:** Manual workflow executions still occur on the main process and the default URL for these is `/webhook-test/*`. Make sure that these URLs route to your main process. -You can change this path in the configuration file `endpoints.webhook` or via the `N8N_ENDPOINT_WEBHOOK` environment variable. If you change these, update your load balancer accordingly. +You can change this path in the configuration file `endpoints.webhook` or using the `N8N_ENDPOINT_WEBHOOK` environment variable. If you change these, update your load balancer accordingly. ### Disable webhook processing in the main process (optional) diff --git a/docs/hosting/user-management-self-hosted.md b/docs/hosting/user-management-self-hosted.md index d9c2d0bdfc0..350738ce915 100644 --- a/docs/hosting/user-management-self-hosted.md +++ b/docs/hosting/user-management-self-hosted.md @@ -45,10 +45,10 @@ Get the following information from your SMTP provider: * SMTP sender name To set up SMTP with n8n, configure the SMTP environment variables for your n8n instance. For information on how to set environment variables, refer to [Configuration](/hosting/configuration/) - + | Variable | Type | Description | Required? | | -------- | ---- | ----------- | --------- | -| `N8N_EMAIL_MODE` | string | smtp | Required | +| `N8N_EMAIL_MODE` | string | `smtp` | Required | | `N8N_SMTP_HOST` | string | _your_SMTP_server_name_ | Required | | `N8N_SMTP_PORT` | number | _your_SMTP_server_port_ Default is `465`.| Optional | | `N8N_SMTP_USER` | string | _your_SMTP_username_ | Optional | @@ -59,9 +59,13 @@ To set up SMTP with n8n, configure the SMTP environment variables for your n8n i | `N8N_SMTP_SSL` | boolean | Whether to use SSL for SMTP (true) or not (false). Defaults to `true`. | Optional | | `N8N_UM_EMAIL_TEMPLATES_INVITE` | string | Full path to your HTML email template. This overrides the default template for invite emails. | Optional | | `N8N_UM_EMAIL_TEMPLATES_PWRESET` | string | Full path to your HTML email template. This overrides the default template for password reset emails. | Optional | +<<<<<<< HEAD + +======= | `N8N_UM_EMAIL_TEMPLATES_WORKFLOW_SHARED` | String | Overrides the default HTML template for notifying users that a credential was shared. Provide the full path to the template. | Optional | | `N8N_UM_EMAIL_TEMPLATES_CREDENTIALS_SHARED` | String | Overrides the default HTML template for notifying users that a credential was shared. Provide the full path to the template. | Optional | +>>>>>>> main If your n8n instance is already running, you need to restart it to enable the new SMTP settings. /// note | More configuration options diff --git a/docs/index.md b/docs/index.md index 59d7e360818..9fe7461086a 100644 --- a/docs/index.md +++ b/docs/index.md @@ -8,7 +8,7 @@ hide: This is the documentation for [n8n](https://n8n.io/), a [fair-code](http://faircode.io) licensed node-based workflow automation tool. -It covers everything from setup to usage and development. It is a work in progress and all [contributions](/contributing/) are welcome. +It covers everything from setup to usage and development. It's a work in progress and all [contributions](/contributing/) are welcome. ## Where to start diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.apitemplateio.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.apitemplateio.md index 409bd50b5c7..fcf952458b7 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.apitemplateio.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.apitemplateio.md @@ -6,7 +6,7 @@ contentType: integration # APITemplate.io -Use the APITemplate.io node to automate work in APITemplate.io, and integrate APITemplate.io with other applications. n8n has built-in support for a wide range of APITemplate.io features, including getting and creating, accounts and PDFs. +Use the APITemplate.io node to automate work in APITemplate.io, and integrate APITemplate.io with other applications. n8n has built-in support for a wide range of APITemplate.io features, including getting and creating accounts and PDF. On this page, you'll find a list of operations the APITemplate.io node supports and links to more resources. @@ -18,7 +18,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ /// -## Basic Operations +## Operations * Account * Get @@ -27,80 +27,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * PDF * Create -## Example Usage -This workflow allows you to create an invoice with the information received via a Typeform submission. You can also find the [workflow](https://n8n.io/workflows/989) on n8n.io. This example usage workflow would use the following nodes. -- [Typeform Trigger](/integrations/builtin/trigger-nodes/n8n-nodes-base.typeformtrigger/) -- [APITemplate.io]() - -The final workflow should look like the following image. - -![A workflow with the APITemplate.io node](/_images/integrations/builtin/app-nodes/apitemplateio/workflow.png) - -### 1. Typeform Trigger node - -This node will trigger the workflow when a form is submitted. Make sure to create a form that collects the following information: - -- Bill To (Short Text) -- Client's Email Address (Email) -- Item Description (Short Text) -- Item Price (Number) -- Item Description (Short Text) -- Item Price (Number) - -1. Select 'Access Token' from the ***Authentication*** dropdown list. -2. Enter the credentials for the Typeform Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/typeform/). -3. Select the invoice form from the ***Form*** dropdown list. -4. Toggle ***Simplify Answers*** to `false`. By setting this option to false, the node returns the values for the fields with duplicate names. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node triggers the workflow when the form is submitted. We will pass this information to the next nodes in the workflow. - -![Using the Typeform Trigger node to trigger the workflow when a form is submitted](/_images/integrations/builtin/app-nodes/apitemplateio/typeformtrigger_node.png) - -### 2. APITemplate.io node (create: pdf) - -This node will generate an invoice using the information from the previous node. Create an invoice template in APITemplate.io, if you don't already have one. - -1. First of all, you'll have to enter credentials for the APITemplate.io node. You can find out how to do that [here](/integrations/builtin/credentials/apitemplateio/). -2. Select 'PDF' from the ***Resource*** dropdown list. -3. Select your invoice template from the ***Template ID*** dropdown list. -4. Toggle ***JSON Parameters*** to `true`. By setting this option to true, the node allows us to write custom JSON data. -5. Toggle ***Download*** to `true`. -6. Click on the gears icon next to the ***Properties (JSON)*** field. -7. Enter the following expression in the ***Edit Expression*** field: -```json -{ - "company": "n8n", - "email": "{{$json["1"]["email"]}}", - "invoice_no": "213223444", - "invoice_date": "18-03-2021", - "invoice_due_date": "17-04-2021", - "address": "Berlin, Germany", - "company_bill_to": "{{$json["0"]["text"]}}", - "website": "https://n8n.io", - "document_id": "889856789012", - "items": [ - { - "item_name": "{{$json["2"]["text"]}}", - "price": "EUR {{$json["3"]["number"]}}" - }, - { - "item_name": "{{$json["4"]["text"]}}", - "price": "EUR {{$json["5"]["number"]}}" - } - ] -} -``` -8. Click on the ***Add Field*** button. -9. Enter a file name in the ***File Name*** field. -10. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates an invoice using the data from the previous node. - -![Using the APITemplate.io node to create an invoice](/_images/integrations/builtin/app-nodes/apitemplateio/apitemplate.io_node.png) - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the Typeform Trigger node. -/// diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.asana.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.asana.md index 6cab5539059..45ec7d209e9 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.asana.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.asana.md @@ -32,7 +32,7 @@ Due to changes in Asana's API, some operations in this node stopped working on 1 * Update a project * Subtask * Create a subtask - * Get all substasks + * Get all subtasks * Task * Create a task * Delete a task diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.automizy.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.automizy.md index 7e36738e8cc..a1d3548ba14 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.automizy.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.automizy.md @@ -33,79 +33,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all lists * Update a list -## Example Usage - -This workflow allows you to create a new list, add a new contact to that list, update the contact, and get all contacts in the list using the Automizy node. You can also find the [workflow](https://n8n.io/workflows/720) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Automizy]() - -The final workflow should look like the following image. - -![A workflow with the Automizy node](/_images/integrations/builtin/app-nodes/automizy/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - - -### 2. Automizy node (create: list) - -This node will create a new list called `n8n-docs` in Automizy. - -1. First of all, you'll have to enter credentials for the Automizy node. You can find out how to do that [here](/integrations/builtin/credentials/automizy/). -2. Select 'List' from the ***Resource*** dropdown list. -3. Enter `n8n-docs` in the ***Name*** field. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new list with the name `n8n-docs`. - -![Using the Automizy node to create a new list](/_images/integrations/builtin/app-nodes/automizy/automizy_node.png) - -### 3. Automizy1 node (create: contact) - -This node creates a new contact and adds it to the list created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Enter the email address of the contact you want to add to the list in the ***Email*** field. -3. Click on the gears icon next to the ***List ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Automizy > Output Data > JSON > id. You can also add the following expression: `{{$node["Automizy"].json["id"]}}`. -5. Click on ***Add Field*** and select 'Status' from the dropdown list. -6. Select 'Active' from the ***Status*** dropdown list. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new contact with the email address `example@n8n.io` and status `Active` and adds it to the list `n8n-docs` created in the previous node. - -![Using the Automizy node to create a new contact and add it to the list](/_images/integrations/builtin/app-nodes/automizy/automizy1_node.png) - -### 4. Automizy2 node (update: contact) - -This node updates the contact that we created in the previous node by adding the tag `reviewer` to it. Make sure that you create a tag in Automizy. - - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Email*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Automizy1 > Output Data > JSON > email. You can also add the following expression: `{{$node["Automizy1"].json["email"]}}`. -5. Click on ***Add Field*** and select 'Tags' from the dropdown list. -6. Select a tag from the ***Tags*** dropdown list. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node updates the contact created in the previous node by adding the tag `reviewer` to it. - -![Using the Automizy node to update the contact by adding a tag](/_images/integrations/builtin/app-nodes/automizy/automizy2_node.png) - -### 5. Automizy3 node (getAll: contact) - -This node returns all the contacts of the `n8n-docs` list that we created using the Automizy node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Get All' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***List ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Automizy > Output Data > JSON > id. You can also add the following expression: `{{$node["Automizy"].json["id"]}}`. -5. Toggle ***Return All*** to true. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns all the contacts that are present in the list `n8n-docs`. - -![Using the Automizy node to get all the contacts in a list](/_images/integrations/builtin/app-nodes/automizy/automizy3_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.autopilot.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.autopilot.md index d4e0e9da830..2649f235f3e 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.autopilot.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.autopilot.md @@ -36,78 +36,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Create a list. * Get all lists -## Example Usage -This workflow allows you to create a new list, add a new contact to that list, update the contact, and get all contacts in the list using the Autopilot node. You can also find the [workflow](https://n8n.io/workflows/990-manage-contacts-via-autopilot/) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Autopilot]() - -The final workflow should look like the following image. - -![A workflow with the Autopilot node](/_images/integrations/builtin/app-nodes/autopilot/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - - -### 2. Autopilot node (create: list) - -This node will create a new list called `n8n-docs` in Autopilot. - -1. First of all, you'll have to enter credentials for the Autopilot node. You can find out how to do that [here](/integrations/builtin/credentials/autopilot/). -2. Select 'List' from the ***Resource*** dropdown list. -3. Enter `n8n-docs` in the ***Name*** field. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new list with the name `n8n-docs`. - -![Using the Autopilot node to create a new list](/_images/integrations/builtin/app-nodes/autopilot/autopilot_node.png) - -### 3. Autopilot1 node (upsert: contact) - -This node creates a new contact and adds it to the list created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Enter the email address of the contact you want to add to the list in the ***Email*** field. -3. Click on ***Add Field*** and select 'List ID' from the dropdown list. -4. Click on the gears icon next to the ***List ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > list_id. You can also add the following expression: `{{$json["list_id"]}}`. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new contact with the email address `harshil@n8n.io` and adds it to the list `n8n-docs` created in the previous node. - -![Using the Autopilot node to create a new contact and add it to the list](/_images/integrations/builtin/app-nodes/autopilot/autopilot1_node.png) - -### 4. Autopilot2 node (update: contact) - -This node updates the information of the contact that we created in the previous node. - - -1. Select the credentials that you entered in the previous node. -2. Click on the gears icon next to the ***Email*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Nodes > Autopilot1 > Parameters > email. You can also add the following expression: `{{$node["Autopilot1"].parameter["email"]}}`. -4. Click on ***Add Field*** and select 'Company' from the dropdown list. -5. Enter `n8n` in the ***Company*** field. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node updates the contact created in the previous node by adding the tag `reviewer` to it. - -![Using the Autopilot node to update the contact by adding a tag](/_images/integrations/builtin/app-nodes/autopilot/autopilot2_node.png) - -### 5. Autopilot3 node (getAll: contact) - -This node returns all the contacts of the `n8n-docs` list that we created using the Autopilot node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Contact List' from the ***Resource*** dropdown list. -3. Select 'Get All' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***List ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Autopilot > Output Data > JSON > list_id. You can also add the following expression: `{{$node["Autopilot"].json["list_id"]}}`. -6. Toggle ***Return All*** to true. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns all the contacts that are present in the list `n8n-docs`. - -![Using the Autopilot node to get all the contacts in a list](/_images/integrations/builtin/app-nodes/autopilot/autopilot3_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.awscomprehend.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.awscomprehend.md index 4294e1ab467..4d3fa9f1ceb 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.awscomprehend.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.awscomprehend.md @@ -17,7 +17,7 @@ Refer to [AWS Comprehend credentials](/integrations/builtin/credentials/aws/) fo For usage examples and templates to help you get started, take a look at n8n's [AWS Comprehend integrations](https://n8n.io/integrations/aws-comprehend/){:target=_blank .external-link} list. /// -## Basic Operations +## Operations **Text** @@ -25,88 +25,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Analyse the sentiment of the text -## Example Usage - -This workflow allows you to analyze the sentiment of feedback received via a Typeform submission and send a message on Mattermost if that feedback is negative. You can also find the [workflow](https://n8n.io/workflows/965) on n8n.io. This example usage workflow uses the following nodes. -- [Typeform Trigger](/integrations/builtin/trigger-nodes/n8n-nodes-base.typeformtrigger/) -- [AWS Comprehend]() -- [IF](/integrations/builtin/core-nodes/n8n-nodes-base.if/) -- [Mattermost](/integrations/builtin/app-nodes/n8n-nodes-base.mattermost/) -- [No Operation, do nothing](/integrations/builtin/core-nodes/n8n-nodes-base.noop/) - -The final workflow should look like the following image. - -![A workflow with the AWS Comprehend node](/_images/integrations/builtin/app-nodes/awscomprehend/workflow.png) - -### 1. Typeform Trigger node - -This node will trigger the workflow when a feedback form is submitted. Make sure to create a feedback form for your event. - -1. Select 'Access Token' from the ***Authentication*** dropdown list. -2. Enter the credentials for the Typeform Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/typeform/). -3. Select the event feedback form from the ***Form*** dropdown list. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node triggers the workflow when feedback is submitted. We will pass this feedback to the next nodes in the workflow. - -![Using the Typeform Trigger node to trigger the workflow when a feedback form is submitted](/_images/integrations/builtin/app-nodes/awscomprehend/typeformtrigger_node.png) - -### 2. AWS Comprehend node (detectSentiment: text) - -This node will analyze the sentiment of the feedback that we got from the previous node. We will pass the analysis score to the next node in the workflow. - -1. First of all, you'll have to enter credentials for the AWS Comprehend node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/aws/). -2. Select 'Detect Sentiment' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Text*** field and click on ***Add Expression***. - -4. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > What did you think about the event? You can also add the following expression: `{{$json["What did you think about the event?"]}}`. If you want to analyze the sentiment for a different question, select that question instead. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node analyzes the sentiment of the feedback and gives a score based on that. - -![Using the AWS Comprehend node to analyze the sentiment](/_images/integrations/builtin/app-nodes/awscomprehend/awscomprehend_node.png) - - -### 3. IF node - -This node will check if the sentiment we got from the previous node is negative. If the sentiment is negative, it will return true otherwise false. - -1. Click on ***Add Condition*** and select 'String'. -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: Current Node > Input Data > JSON > Sentiment. You can also add the following expression: `{{$json["Sentiment"]}}`. -4. Enter `NEGATIVE` in the ***Value 2*** field. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node checks the sentiment that we received from the previous node and returns `true` if the sentiment is negative. - -![Using the IF node to check if the sentiment](/_images/integrations/builtin/app-nodes/awscomprehend/if_node.png) - -### 4. Mattermost node (post: message) - -This node will send the feedback and the analysis score to the `feedback` channel in Mattermost. If you have a different channel, use that instead. - -1. Create a Mattermost node connected to the 'true' output of the IF node. -2. You'll have to enter credentials for the Mattermost node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/mattermost/). -3. Select a channel from the ***Channel ID*** dropdown list. -4. Click on the gears icon next to the ***Message*** field click on ***Add Expression***. - -5. Enter the following message in the ***Expression*** field: `You got new feedback with a score of {{$json["SentimentScore"]["Negative"]}}. Here is what it says:{{$node["Typeform Trigger"].json["What did you think about the event?"]}}`. -6. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node sends the feedback and the analysis score to the `feedback` channel in Mattermost. - -![Using the Mattermost node to send the feedback and the analysis score](/_images/integrations/builtin/app-nodes/awscomprehend/mattermost_node.png) - -### 5. 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 ***Test step*** to run the node. - -![Using the NoOp node](/_images/integrations/builtin/app-nodes/awscomprehend/noop_node.png) - -/// note | Activate workflow for production -This example workflow uses the Typeform Trigger node. You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered when a new form is submitted. -/// diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.awstextract.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.awstextract.md index 9d8ce1db79e..3ceb1835491 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.awstextract.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.awstextract.md @@ -23,43 +23,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ ## Basic Operations - Analyze Receipt or Invoice - -## Example Usage - -This workflow allows you to extract data from a an invoice stored in AWS S3. You can also find the [workflow](https://n8n.io/workflows/1282) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [AWS S3](/integrations/builtin/app-nodes/n8n-nodes-base.awsS3/) -- [AWS Textract]() - -The final workflow looks like the following image. - -![A workflow using the AWS S3 and AWS Textract node](/_images/integrations/builtin/app-nodes/awstextract/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. AWS S3 node (download: file) - -This node will retrieve an image file with a receipt from an S3 bucket. - -1. Choose your credentials for the AWS S3 node. See [here](/integrations/builtin/credentials/aws/) for information on how to create these credentials. -2. Enter the bucket name in the ***Bucket Name*** field. -3. Enter the file key in the ***File Key*** field. -4. Click on ***Test step*** to run the node. - -In the screenshot below you can see the file returned by the node. - -![Using the AWS S3 node to fetch a file stored in a bucket](/_images/integrations/builtin/app-nodes/awstextract/awss3_node.png) - -### 3. AWS Textract node (analyzeExpense) - -This node will extract data from the receipt returned by the previous node. - -1. Choose your AWS credentials. -2. Click on ***Test step*** to run the node. - -In the screenshot below, you can see the receipt data extracted by AWS Textract and returned by the node. - -![Using the AWS Textract node to extract data from a receipt](/_images/integrations/builtin/app-nodes/awstextract/awstextract_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.awstranscribe.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.awstranscribe.md index ebee79a6f36..68fdd63f532 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.awstranscribe.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.awstranscribe.md @@ -27,49 +27,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Get all transcriptions job -## Example Usage -⁶ -This workflow allows you to create transcription jobs for all your audio and video files stored in AWS S3. You can also find the [workflow](https://n8n.io/workflows/1111) on n8n.io. This example usage workflow uses the following nodes. - -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [AWS S3](/integrations/builtin/app-nodes/n8n-nodes-base.awss3/) -- [AWS Transcribe]() - -The final workflow should look like the following image. - -![A workflow with the AMQP Sender node](/_images/integrations/builtin/app-nodes/awstranscribe/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. AWS S3 node (getAll: file) - -This node will retrieve all the files from an S3 bucket you specify. - -1. First of all, you'll have to enter credentials for the AWS S3 node. You can find out how to do that [here](/integrations/builtin/credentials/aws/). -2. Select 'Get All' from the ***Operation*** dropdown list. -3. Enter the bucket name in the ***Bucket Name*** field. -4. Toggle ***Return All*** to `true`. This option will return information on all the files stored in the S3 bucket. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns information of all the files stored in the bucket you specified. - -![Using the AWS S3 node to fetch information of files stored in a bucket](/_images/integrations/builtin/app-nodes/awstranscribe/awss3_node.png) - -### 3. AWS Transcribe node (create: transcriptionJob) - -This node will create a transcription job for the files that get returned by the previous node. - -1. Select the credentials that you entered in the previous node. -2. Click on the gears icon next to the ***Job Name*** field and click on ***Add Expression***. -3. Enter `{{$json["Key"].replace(/\s/g,'-')}}` in the ***Expression*** field. The code snippet fetches the name of the file and replaces the white-spaces with a hyphen (-). -4. Click on the gears icon next to the ***Media File URI*** field and click on ***Add Expression***. -5. Enter `s3://{{$node["AWS S3"].parameter["bucketName"]}}/{{$json["Key"]}}` in the ***Expression*** field. -6. Toggle ***Detect Language*** to `true`. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a transcription job for the files stored in an S3 bucket. - -![Using the AWS Transcribe node to create a transcription job](/_images/integrations/builtin/app-nodes/awstranscribe/awstranscribe_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.beeminder.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.beeminder.md index af68b6a69f2..59e0fe798d4 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.beeminder.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.beeminder.md @@ -6,7 +6,7 @@ contentType: integration # Beeminder -Use the Beeminder node to automate work in Beeminder, and integrate Beeminder with other applications. n8n has built-in support for a wide range of Beeminder features, including creating, deleting, and updating datapoints. +Use the Beeminder node to automate work in Beeminder, and integrate Beeminder with other applications. n8n has built-in support for a wide range of Beeminder features, including creating, deleting, and updating data points. On this page, you'll find a list of operations the Beeminder node supports and links to more resources. @@ -21,53 +21,12 @@ For usage examples and templates to help you get started, take a look at n8n's [ ## Basic Operations -**Datapoint** -- Create datapoint for a goal -- Delete a datapoint -- Get all datapoints for a goal -- Update a datapoint +**data point** +- Create data point for a goal +- Delete a data point +- Get all data points for a goal +- Update a data point -## Example Usage -This workflow allows you to add a datapoint to Beeminder when a new activity gets added to Strava. You can also find the [workflow](https://n8n.io/workflows/900) on n8n.io. This example usage workflow would use the following nodes. -- [Strava Trigger](/integrations/builtin/trigger-nodes/n8n-nodes-base.stravatrigger/) -- [Beeminder]() - -The final workflow should look like the following image. - -![A workflow with the Beeminder node](/_images/integrations/builtin/app-nodes/beeminder/workflow.png) - -### 1. Strava Trigger node - -This node will trigger the workflow whenever a new activity gets added to your Strava account. - -1. First of all, you'll have to enter credentials for the Strava Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/strava/). -2. Select 'created' from the ***Event*** dropdown list. -3. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node triggers the workflow when a new activity gets added to Strava. - -![Using the Strava Trigger node to trigger the workflow](/_images/integrations/builtin/app-nodes/beeminder/stravatrigger_node.png) - -### 2. Beeminder node (create: datapoint) - -This node will create a datapoint for the goal `testing`. If you have created a goal with a different name, select that goal instead. - -1. First of all, you'll have to enter credentials for the Beeminder node. You can find out how to do that [here](/integrations/builtin/credentials/beeminder/). -2. Select a goal from the ***Goal Name*** dropdown list. -3. Click on ***Add Field*** and select 'Comment'. -4. Click on the gears icon next to the ***Comment*** field and click on ***Add Expression***. - -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > object_data > name. You can also add the following expression: `{{$json["object_data"]["name"]}}`. - -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a datapoint in Beeminder. - -![Using the Beeminder node to create a datapoint for a goal](/_images/integrations/builtin/app-nodes/beeminder/beeminder_node.png) - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the Strava Trigger node. -/// diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.bitwarden.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.bitwarden.md index 12151ad4317..3689f9d18aa 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.bitwarden.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.bitwarden.md @@ -44,80 +44,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get Groups * Update * Update Groups - -## Example Usage - -This workflow allows you to create a group, add members to the group, and get the members of the group in Bitwarden. You can also find the [workflow](https://n8n.io/workflows/1001) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Bitwarden]() - -The final workflow should look like the following image. - -![A workflow with the Bitwarden node](/_images/integrations/builtin/app-nodes/bitwarden/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Bitwarden node (create: group) - -This node will create a new group called `documentation` in Bitwarden. - -1. First of all, you'll have to enter credentials for the Bitwarden node. You can find out how to do that [here](/integrations/builtin/credentials/bitwarden/). -2. Select 'Group' from the ***Resource*** dropdown list. -3. Select 'Create' from the ***Operation*** dropdown list. -4. Enter `documentation` in the ***Name*** field. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new group in Bitwarden. - -![Using the Bitwarden node to create a new group](/_images/integrations/builtin/app-nodes/bitwarden/bitwarden_node.png) - -### 3. Bitwarden1 node (getAll: member) - -This node will get all the members from Bitwarden. - -1. Select the credentials that you entered in the previous node. -2. Select 'Member' from the ***Resource*** dropdown list. -3. Select 'Get All' from the ***Operation*** dropdown list. -4. Toggle ***Return All*** to `true`. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node retrieves all the members from Bitwarden. - -![Using the Bitwarden node to get all the members](/_images/integrations/builtin/app-nodes/bitwarden/bitwarden1_node.png) - -### 4. Bitwarden2 node (updateMembers: group) - -This node will update all the members in the group that we created earlier. - -1. Select the credentials that you entered in the previous node. -2. Select 'Group' from the ***Resource*** dropdown list. -3. Select 'Update Members' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Group ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Bitwarden > Output Data > JSON > id. You can also add the following expression: `{{$node["Bitwarden"].json["id"]}}`. -6. Click on the gears icon next to the ***Member IDs*** field and click on ***Add Expression***. -7. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -8. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the members of the group. - -![Using the Bitwarden node to update members in a group](/_images/integrations/builtin/app-nodes/bitwarden/bitwarden2_node.png) - -### 5. Bitwarden3 node (getMembers: group) - -This node will get all the members in the group that we created earlier. - -1. Select the credentials that you entered in the previous node. -2. Select 'Group' from the ***Resource*** dropdown list. -3. Select 'Get Members' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Group ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Bitwarden > Output Data > JSON > id. You can also add the following expression: `{{$node["Bitwarden"].json["id"]}}`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node retrieves the members in the group. - -![Using the Bitwarden node to get members in a group](/_images/integrations/builtin/app-nodes/bitwarden/bitwarden3_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.bubble.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.bubble.md index 815c5e7ec9a..49bfb2fdfa2 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.bubble.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.bubble.md @@ -28,70 +28,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get All * Update -## Example Usage -This workflow allows you to create, update, and get an object from Bubble. You can also find the [workflow](https://n8n.io/workflows/1041) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Bubble]() - -The final workflow should look like the following image. - -![A workflow with the Bubble node](/_images/integrations/builtin/app-nodes/bubble/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Bubble node (create: object) - -This node will create a new object of the type `Doc` in Bubble. If you want to create an object with a different type, use that type instead. - -1. First of all, you'll have to enter credentials for the Bubble node. You can find out how to do that [here](/integrations/builtin/credentials/bubble/). -2. Select 'Create' from the ***Operation*** dropdown list. -3. Enter `Doc` in the ***Type Name*** field. -4. Click on the ***Add Property*** button. -5. Enter `Name` in the ***Key*** field. If you're using a different type, enter the field name present in the type. -6. Enter `Bubble` in the ***Value*** field. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new object of the type `Doc` in Bubble. - -![Using the Bubble node to create a new object](/_images/integrations/builtin/app-nodes/bubble/bubble_node.png) - - -### 3. Bubble1 node (update: object) - -This node will update the object that we created using the previous node. - -1. Select the credentials that you entered in the previous Bubble node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Type Name*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Bubble > Parameters > typeName. You can also add the following expression: `{{$node["Bubble"].parameter["typeName"]}}`. -5. Click on the gears icon next to the ***Object ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -6. Click on the ***Add Property*** button. -7. Enter `Name` in the ***Key*** field. If you're using a different type, enter the field name present in the type. -8. Enter `Bubble node` in the ***Value*** field. -9. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the information of the object that got created previously. - -![Using the Bubble node to update the information of an object](/_images/integrations/builtin/app-nodes/bubble/bubble1_node.png) - -### 4. Bubble2 node (get: object) - -This node will retrieve the information of the object that we created earlier. - - -1. Select the credentials that you entered in the previous Bubble node. -2. Click on the gears icon next to the ***Type Name*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Nodes > Bubble > Parameters > typeName. You can also add the following expression: `{{$node["Bubble"].parameter["typeName"]}}`. -4. Click on the gears icon next to the ***Object ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Bubble > Output Data > JSON > id. You can also add the following expression: `{{$node["Bubble"].json["id"]}}`. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node retrieves the information of the object that we created earlier. - -![Using the Bubble node to retrieve the information of an object](/_images/integrations/builtin/app-nodes/bubble/bubble2_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.clearbit.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.clearbit.md index 281e1cdba53..5625d7a2db3 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.clearbit.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.clearbit.md @@ -6,7 +6,7 @@ contentType: integration # Clearbit -Use the Clearbit node to automate work in Clearbit, and integrate Clearbit with other applications. n8n has built-in support for a wide range of Clearbit features, including auto-completing and looking up companies and persons. +Use the Clearbit node to automate work in Clearbit, and integrate Clearbit with other applications. n8n has built-in support for a wide range of Clearbit features, including autocompleting and looking up companies and persons. On this page, you'll find a list of operations the Clearbit node supports and links to more resources. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.clockify.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.clockify.md index ec331356a3f..63f9d6efdfb 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.clockify.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.clockify.md @@ -39,101 +39,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Time Entry * Create a time entry * Delete a time entry - * Get time entrie + * Get time entry * Update a time entry -## Example Usage - -This workflow allows you to create a project, tag, and time entry in Clockify. It also allows you to update the time entry in Clockify. You can also find the [workflow](https://n8n.io/workflows/701) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Clockify]() - -The final workflow should look like the following image. - -![A workflow with the Clockify node](/_images/integrations/builtin/app-nodes/clockify/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - - -### 2. Clockify node (create: project) - -This node will create a private project with a custom color. It will also add a note to the project in Clockify. - -1. First of all, you'll have to enter credentials for the Clockify node. You can find out how to do that [here](/integrations/builtin/credentials/clockify/). -2. Select the ***Workspace ID*** from the dropdown list. -3. Enter the name of the project in the ***Project Name*** field. -4. Click on ***Add Field*** and select 'Color' from the dropdown list. -5. Select the color from the color-picker or enter the hexadecimal value of the color in the ***Color*** field. -6. Click on ***Add Field*** and select 'Is Public' from the dropdown list. -7. Toggle ***Is Public*** to false. -8. Click on ***Add Field*** and select 'Note' from the dropdown list. -9. Enter the note in the ***Note*** field. -10. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new private project called `n8n-docs`. This project has a custom color `#0000FF` and a note `For n8n-docs`. - -![Using the Clockify node to create project](/_images/integrations/builtin/app-nodes/clockify/clockify_node.png) - - - -### 3. Clockify1 node (create: tag) - -This node will create a new tag in Clockify. - -1. Select the credentials that you entered in the previous node. -2. Select 'Tag' from the ***Resource*** dropdown list. -3. Select the ***Workspace ID*** from the dropdown list. -4. Enter the name of the tag in the ***Name*** field. -5. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node creates a new tag called `docs` in the n8n workspace in Clockify. - -![Using the Clockify node to create a tag](/_images/integrations/builtin/app-nodes/clockify/clockify1_node.png) - - - -### 4. Clockify2 node (create: timeEntry) - -This node creates a new time entry in Clockify with a description. It also adds the tag that we created in the previous step to the time entry. - -1. Select the credentials that you entered in the previous node. -2. Select 'Time Entry' from the ***Resource*** dropdown list. -3. Select the ***Workspace ID*** from the dropdown list. -4. Select a start date and time for the ***Start*** field. -5. Click on ***Add Field*** and select 'Description' from the dropdown list. -6. Enter a description in the ***Description*** field. -7. Click on ***Add Field*** and select 'End' from the dropdown list. -8. Select a end date and time for the ***End*** field. -9. Click on ***Add Field*** and select 'Tag IDs' from the dropdown list. -10. Select the tag that you created in the previous step from the ***Tag IDs*** dropdown list. -11. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node creates a new time entry with a description and adds the tag that was created in the previous node. - -![Using the Clockify node to create a time entry](/_images/integrations/builtin/app-nodes/clockify/clockify2_node.png) - - -### 5. Clockify3 node (update: timeEntry) - -This node will add the project to the time entry that was created by the Clockify node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Time Entry' from the ***Resource*** dropdown list. -3. Select 'Update' from the ***Operation*** dropdown list. -4. Select the ***Workspace ID*** from the dropdown list. -5. Click on the gears icon next to the ***Time Entry ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Clockify2 > Output Data > JSON > id. You can also add the following expression: `{{$node["Clockify2"].json["id"]}}`. -7. Click on ***Add Field*** and select 'Project ID' from the dropdown list. -8. Click on the gears icon next to the ***Project ID*** field and click on ***Add Expression***. -9. Select the following in the ***Variable Selector*** section: Nodes > Clockify > Output Data > JSON > id. You can also add the following expression: `{{$node["Clockify"].json["id"]}}`. -10. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node has updated the time entry by adding the project ID we created in the Clockify node. - -![Using the Clockify node to update the time entry](/_images/integrations/builtin/app-nodes/clockify/clockify3_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.convertkit.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.convertkit.md index cc4ef1c9068..4b453743255 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.convertkit.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.convertkit.md @@ -40,53 +40,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * List subscriptions to a tag including subscriber data * Delete a tag from a subscriber -## Example Usage -This workflow allows you to add a subscriber to a form, create a tag and add the subscriber to the tag using the ConvertKit node. You can also find the [workflow](https://n8n.io/workflows/642) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [ConvertKit]() - -The final workflow should look like the following image. - -![A workflow with the ConvertKit node](/_images/integrations/builtin/app-nodes/convertkit/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. ConvertKit node (addSubscriber: form) - -1. First of all, you'll have to enter credentials for the ConvertKit node. You can find out how to do that [here](/integrations/builtin/credentials/convertkit/). -2. Select the form from the ***Form ID*** dropdown list. -3. Enter the email address in the ***Email*** field. -4. Click on ***Test step*** to run the node. - -![Using the ConvertKit node to add a subscriber to a form](/_images/integrations/builtin/app-nodes/convertkit/convertkit_node.png) - - - -### 3. ConvertKit1 node (create: tag) - -1. Select the credentials that you entered in the previous ConvertKit node. -2. Select 'Tag' from the ***Resource*** dropdown list. -3. Enter the tag name in the ***Name*** field. -4. Click on ***Test step*** to run the node. - - -![Using the ConvertKit node to create a tag](/_images/integrations/builtin/app-nodes/convertkit/convertkit1_node.png) - - - -### 4. ConvertKit2 node (add: tagSubscriber) - -1. Select the credentials that you entered in the previous ConvertKit node. -2. Select 'Tag Subscriber' from the ***Resource*** dropdown list. -3. Select 'Add' from the ***Operation*** dropdown list. -4. Select the tag from the ***Tag ID*** dropdown list. -5. Click on the gears icon next to the ***Email*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > ConvertKit > Output Data > JSON > subscriber > email_address. You can also add the following expression: `{{$node["ConvertKit"].json["subscriber"]["email_address"]}}`. -7. Click on ***Test step*** to run the node. - - -![Using the ConvertKit node to add the subscriber to the tag](/_images/integrations/builtin/app-nodes/convertkit/convertkit2_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.copper.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.copper.md index 87fa38ecdbb..a6bda20be6f 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.copper.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.copper.md @@ -60,71 +60,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * User * Get All -## Example Usage - -This workflow allows you to create, update, and get a person from Copper. You can also find the [workflow](https://n8n.io/workflows/1021) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Copper]() - -The final workflow should look like the following image. - -![A workflow with the Copper node](/_images/integrations/builtin/app-nodes/copper/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Copper node (create: person) - -This node will create a new person in Copper. - -1. First of all, you'll have to enter credentials for the Copper node. You can find out how to do that [here](/integrations/builtin/credentials/copper/). -2. Select 'Person' from the ***Resource*** dropdown list. -3. Enter the name of the lead in the ***Name*** field. -4. Click on the ***Add Field*** button and select 'Emails' from the dropdown list. -5. Click on the ***Add Email*** button. -6. Enter the email in the ***Email*** field. -7. Enter the category of the email in the ***Category*** field. -8. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new person in Copper. - -![Using the Copper node to create a new person](/_images/integrations/builtin/app-nodes/copper/copper_node.png) - - -### 3. Copper1 node (update: person) - -This node will update the information of the person that we created using the previous node. - -1. Select the credentials that you entered in the previous Copper node. -2. Select 'Person' from the ***Resource*** dropdown list. -3. Select 'Update' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Person ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -6. Click on the ***Add Field*** button and select 'Phone Numbers' from the dropdown list. -7. Click on the ***Add Phone Number*** field. -8. Enter the phone number in the ***Phone Number*** field. -9. Enter the category in the ***Category*** field. -10. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the information of the person that got created previously. - -![Using the Copper node to update the information of a person](/_images/integrations/builtin/app-nodes/copper/copper1_node.png) - -### 4. Copper2 node (get: person) - -This node will retrieve the information of the person that we created earlier. - - -1. Select the credentials that you entered in the previous Copper node. -2. Select 'Person' from the ***Resource*** dropdown list. -3. Select 'Update' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Person ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node retrieves the information of the person that we created earlier. - -![Using the Copper node to retrieve the information of a person](/_images/integrations/builtin/app-nodes/copper/copper2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.customerio.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.customerio.md index b27df8fa0e6..6cc11e2b9ab 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.customerio.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.customerio.md @@ -33,41 +33,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Add Customer * Remove Customer -## Example Usage -This workflow allows you to create a customer and add them to a segment in Customer.io. You can also find the [workflow](https://n8n.io/workflows/646) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Customer.io]() - -The final workflow should look like the following image. - -![A workflow with the Customer.io node](/_images/integrations/builtin/app-nodes/customerio/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. CustomerIo node (upsert: customer) - -1. First of all, you'll have to enter credentials for the Customer.io node. You can find out how to do that [here](/integrations/builtin/credentials/customerio/). -2. Enter a customer id in the ***ID*** field. -3. Click on the ***Add Field*** button and select 'Custom Properties' from the dropdown list. -4. Click on the ***Choose Option To Add*** button. -5. Enter `name` in the ***Key*** field. -6. Enter the name of the customer in the ***Value*** field. -7. Click on ***Test step*** to run the node. - -![Using the Customer.io node to create a new customer](/_images/integrations/builtin/app-nodes/customerio/customerio_node.png) - - -### 3. CustomerIo1 node (add: segment) - -1. Select the credentials that you entered in the previous Customer.io node. -2. Select 'Segment' from the ***Resource*** field. -3. Click on the gears icon next to the ***Customer IDs*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > CustomerIo > Output Data > JSON > id. You can also add the following expression: `{{$node["CustomerIo"].json["id"]}}`. -4. Click on ***Test step*** to run the node. - - -![Using the Customer.io node to add the customer to a segment](/_images/integrations/builtin/app-nodes/customerio/customerio1_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.deepl.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.deepl.md index b8a9802191f..29611335cae 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.deepl.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.deepl.md @@ -23,44 +23,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Language * Translate data -## Example Usage - -This workflow allows you to translate cocktail instructions to French. You can also find the [workflow](https://n8n.io/workflows/998) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [HTTP Request](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/) -- [DeepL]() - -The final workflow should look like the following image. - -![A workflow with the DeepL node](/_images/integrations/builtin/app-nodes/deepl/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. HTTP Request node (GET) - -This node will make a GET request to the API `https://www.thecocktaildb.com/api/json/v1/1/random.php` to fetch a random cocktail. This information gets passed on to the next node in the workflow. - -1. Enter `https://www.thecocktaildb.com/api/json/v1/1/random.php` in the ***URL*** field. -2. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node makes a GET request to the API and returns information about a random cocktail. - -![Using the HTTP Request node to get the information about a random cocktail](/_images/integrations/builtin/app-nodes/deepl/httprequest_node.png) - -### 3. DeepL node (translate: language) - -This node will translate the cocktail instructions that we got from the previous node to French. To translate the instructions in your language, select your language instead. - -1. First of all, you'll have to enter credentials for the DeepL node. You can find out how to do that [here](/integrations/builtin/credentials/deepl/). - -2. Click on the gears icon next to the ***Text*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Current Nodes > Input Data > JSON > drinks > [item: 0] > strInstructions. You can also add the following expression: `{{$json["drinks"][0]["strInstructions"]}}`. -4. Select 'French' from the ***Target Language*** dropdown list. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node translates the instructions of the cocktail to French. - -![Using the DeepL node to translate the instructions to French](/_images/integrations/builtin/app-nodes/deepl/deepl_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.demio.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.demio.md index 57b734c31f7..3a3467c156c 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.demio.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.demio.md @@ -26,54 +26,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Report * Get an event report -## Example Usage - -This workflow allows you to register your audience to an event on Demio via a Typeform submission. You can also find the [workflow](https://n8n.io/workflows/947) on n8n.io. This example usage workflow uses the following nodes. -- [Typeform Trigger](/integrations/builtin/trigger-nodes/n8n-nodes-base.typeformtrigger/) -- [Demio]() - -The final workflow should look like the following image. - -![A workflow with the Demio node](/_images/integrations/builtin/app-nodes/demio/workflow.png) - -### 1. Typeform Trigger node - -This node will trigger the workflow when a form response is submitted. - -This example workflow uses a Typeform to collect name and email address. Create a form exactly like [this](https://n8ndocsburner.typeform.com/to/dpr2kxSL) for the example workflow. Below are the questions and their question types for the form. - -|Question | Type | -|---------|-------| -|Let's start with your name. | Short Text | -|What's your email address? | Email | - -1. First of all, you'll have to enter credentials for the Typeform Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/typeform/). -2. Select your form from the ***Form*** dropdown list. -3. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the Typeform Trigger node triggers the workflow and returns the response submitted by a user. - -![Using the Typeform Trigger node to trigger the workflow](/_images/integrations/builtin/app-nodes/demio/typeformtrigger_node.png) - -### 2. Demio node (register: event) - -This node will use the information from the previous node to register the user for an event on Demio. If you don't have an event on Demio, make sure to create one. - -1. First of all, you'll have to enter credentials for the Demio node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/demio/). -2. Select 'Register' from the ***Operation*** dropdown list. -3. Select the event from the ***Event ID*** dropdown list. -4. Click on the gears icon next to the ***First Name*** field and click on ***Add Expression***. - -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > Let's start with your name. You can also add the following expression: `{{$json["Let's start with your name."]}}`. -6. Click on the gears icon next to the ***Email*** field and click on ***Add Expression***. -7. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > What's your email address? You can also add the following expression: `{{$json["What's your email address?"]}}`. -8. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node registers the user for an event on Demio. - -![Using the Demio node to register a user for an event](/_images/integrations/builtin/app-nodes/demio/demio_node.png) - -/// note | Activate workflow for production -This example workflow uses the Typeform Trigger node. You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered when a new form is submitted. -/// - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.discourse.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.discourse.md index e549f3771c6..227c5c70c2a 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.discourse.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.discourse.md @@ -42,61 +42,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Create a user to group * Remove user from group -## Example Usage - -This workflow allows you to create, update, and get a post using the Discourse node. You can also find the [workflow](https://n8n.io/workflows/930) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Discourse]() - -The final workflow should look like the following image. - -![A workflow with the Discourse node](/_images/integrations/builtin/app-nodes/discourse/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Discourse node (create: post) - -This node will create a post under the `Lounge` category. If you want to create a post under a different category, select that category instead. - -1. First of all, you'll have to enter credentials for the Discourse node. You can find out how to do that [here](/integrations/builtin/credentials/discourse/). -2. Enter a title for the post in the ***Title*** field. -3. Enter the content of the post in the ***Content*** field. -4. Click on ***Add Field*** and select 'Category ID' from the dropdown list. -5. Select 'Lounge' from the ***Category ID*** dropdown list. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new topic under the category `Lounge`. - -![Using the Discourse node to create a topic](/_images/integrations/builtin/app-nodes/discourse/discourse_node.png) - -### 3. Discourse1 node (update: post) - -This node will update the content of the post that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operations*** dropdown list. -3. Click on the gears icon next to the ***Post ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -5. Enter the updated content in the ***Content*** field. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node updates the content of the post that we created in the previous node. - -![Using the Discourse node to update a post](/_images/integrations/builtin/app-nodes/discourse/discourse1_node.png) - -### 4. Discourse2 node (get: post) - -This node will retrieve the post that we updated previously. - -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 ***Post ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you notice that the node retrieves the post that we created earlier. - -![Using the Discourse node to get a post](/_images/integrations/builtin/app-nodes/discourse/discourse2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.dropcontact.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.dropcontact.md index e67b1b89920..26753dd1625 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.dropcontact.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.dropcontact.md @@ -25,88 +25,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ -## Example Usage - -This workflow allows you to find email and enrich your contact from a Google Sheet and add them to Lemlist. You can also find the [workflow](https://n8n.io/workflows/1304) on n8n.io. - -This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Google Sheets node](/integrations/builtin/app-nodes/n8n-nodes-base.googlesheets/) -- [Dropcontact node]() -- [Lemlist node](/integrations/builtin/app-nodes/n8n-nodes-base.lemlist/) - -![A workflow with the GetResponse node](/_images/integrations/builtin/app-nodes/dropcontact/workflow.png) - -### 1. Start Node -The start node exists by default when you create a new workflow. - -### 2. Google Sheet node - -This node will list all the records from Google Sheet. Create a sheet like [this](https://docs.google.com/spreadsheets/d/1jCyGrz01b7wdoujEHHZvw-JD5zszTMFqn8cvvSnLPrE/edit#gid=0) in your Google Drive. - -1. First of all, you'll have to enter credentials for the Google Sheet node. You can find out how to do that [here](/integrations/builtin/credentials/google/). - -2. Select the 'Sheet' option from the ***Ressource*** dropdown list. -3. Select the 'Read' option from the ***Operation*** dropdown list. -4. Enter the Sheet ID in the ***Sheet ID*** field. Your Google Sheet ID is available in the URL `https://docs.google.com/spreadsheets/d/{spreadsheetId}/edit` -5. In the ***Range*** field, enter `A:K`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the information of the leads. - -![Using the Google Sheet](/_images/integrations/builtin/app-nodes/dropcontact/googlesheet_node.png) - -### 3. Dropontact node - -This node will find the verified email address and enrich the contact. - -1. First of all, you'll have to enter credentials for the Dropcontact node. You can find out how to do that [here](/integrations/builtin/credentials/dropcontact/). - -2. Select 'Contact' from the ***Resource*** dropdown list. -3. Select 'Enrich' from the ***Operation*** dropdown list. -4. Click on ***Add Field*** and select 'Company Name'. -5. Click on the gears icon next to the ***Company Name*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Node > Input Data > JSON > fields > companyName . You can also add the following expression: `{{$json["fields"]["companyName"]}}`. -7. Click on ***Add Field*** and select 'First Name'. -8. Click on the gears icon next to the ***First Name*** field and click on ***Add Expression***. -9. Select the following in the ***Variable Selector*** section: Node > Input Data > JSON > fields > firstName . You can also add the following expression: `{{$json["fields"]["firstName"]}}`. -10. Click on ***Add Field*** and select 'Full Name'. -11. Click on the gears icon next to the ***Full Name*** field and click on ***Add Expression***. -12. Select the following in the ***Variable Selector*** section: Node > Input Data > JSON > fields > fullName . You can also add the following expression: `{{$json["fields"]["fullName"]}}`. -13. Click on ***Add Field*** and select 'Last Name'. -14. Click on the gears icon next to the ***Last Name*** field and click on ***Add Expression***. -15. Select the following in the ***Variable Selector*** section: Node > Input Data > JSON > fields > lastName . You can also add the following expression: `{{$json["fields"]["lastName"]}}`. -16. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the Dropcontact node has enriched your data. - -![Using the Dropcontact node](/_images/integrations/builtin/app-nodes/dropcontact/dropcontact_node.png) - -### 4. Lemlist node - -This node will create new leads for a campaign in Lemlist. - -1. First of all, you'll have to enter credentials for the Lemlist node. You can find out how to do that [here](/integrations/builtin/credentials/lemlist/). -2. Select 'Lead' from the ***Resource*** dropdown list. -3. Select a campaign from the ***Campaign ID*** dropdown list. -4. Click on the gears icon next to the ***Email*** field and click on 'Add Expression'. - -5. Select the following in the ***Variable Selector*** section: Dropcontact > Input Data > JSON > fields > email > [Item: 0] > email. You can also add the following expression: `{{$json["email"][0]["email"]}}` -6. Click on the ***Add Field*** button and select 'First Name'. -7. Click on the gears icon next to the ***First Name*** field and click on ***Add Expression***. -8. Select the following in the ***Variable Selector*** section: Node > Input Data > JSON > fields > first_name . You can also add the following expression: `{{$json["fields"]["first_name"]}}`. -9. Click on the ***Add Field*** button and select 'Last Name'. -10. Click on the gears icon next to the ***Last Name*** field and click on ***Add Expression***. -11. Select the following in the ***Variable Selector*** section: Node > Input Data > JSON > fields > last_name . You can also add the following expression: `{{$json["fields"]["last_name"]}}`. -12. Click on the ***Add Field*** button and select 'Company Name'. -13. Click on the gears icon next to the ***Company Name*** field and click on ***Add Expression***. -14. Select the following in the ***Variable Selector*** section: Node > Input Data > JSON > fields > company_name . You can also add the following expression: `{{$json["fields"]["company_name"]}}`. -15. Click on the ***Add Field*** button and select 'Deduplicate'. -16. Toggle ***Deduplicate*** to `true`. -17. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates new enriched leads in Lemlist. - -![Using the Lemlist node](/_images/integrations/builtin/app-nodes/dropcontact/lemlist_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.egoi.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.egoi.md index ffcd8d0a9bd..3c44c9c2454 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.egoi.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.egoi.md @@ -26,69 +26,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Update a member -## Example Usage - -This workflow allows you to create, update, and get a contact using the E-goi node. You can also find the [workflow](https://n8n.io/workflows/852) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [E-goi]() - -The final workflow should look like the following image. - -![A workflow with the E-goi node](/_images/integrations/builtin/app-nodes/egoi/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. E-goi node (create: contact) - -This node will create a new contact in E-goi. We will add the first name of the contact along with their email. - -1. First of all, you'll have to enter credentials for the E-goi node. You can find out how to do that [here](/integrations/builtin/credentials/egoi/). -2. Select a list from the ***List ID*** field. -3. Enter the email address in the ***Email*** field. -3. Click on the ***Add Field*** button and select 'First Name' from the dropdown list. -4. Enter the name of the contact in the ***First Name*** field. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new contact with their first name and email. - -![Using the E-goi node to create a new contact](/_images/integrations/builtin/app-nodes/egoi/e-goi_node.png) - -### 3. E-goi1 node (update: contact) - -This node will update the information of the contact that we created in the previous node. We will update the first name of the contact using this node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***List ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > E-goi > Parameters > list. You can also add the following expression: `{{$node["E-goi"].parameter["list"]}}`. -5. Click on the gears icon next to the ***Contact ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > E-goi > Output Data > JSON > base > contact_id. You can also add the following expression: `{{$node["E-goi"].json["base"]["contact_id"]}}`. -7. Click on the ***Add Field*** button and select 'First Name' from the dropdown list. -8. Enter the first name of the contact in the ***First Name*** field. -9. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the information of the contact that we created in the previous node. Here, the node has updated the first name of the contact. - -![Using the E-goi node to update the contact](/_images/integrations/builtin/app-nodes/egoi/e-goi1_node.png) - -### 3. E-goi2 node (get: contact) - -This node will return the information of the contact that we created using the E-goi node. - - -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 ***List ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > E-goi1 > Parameters > list. You can also add the following expression: `{{$node["E-goi1"].parameter["list"]}}`. -5. Click on the gears icon next to the ***Contact ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > E-goi1 > Output Data > JSON > base > contact_id. You can also add the following expression: `{{$node["E-goi"].json["base"]["contact_id"]}}`. -5. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the information of the contact that we created using the E-goi node. - -![Using the E-goi node to get the information of the contact](/_images/integrations/builtin/app-nodes/egoi/e-goi2_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.emelia.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.emelia.md index a2e5459e32a..a2f2c169e21 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.emelia.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.emelia.md @@ -30,61 +30,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Add * Get All -## Example Usage -This workflow allows you to create a campaign, add a contact, and get the campaign from Emelia. You can also find the [workflow](https://n8n.io/workflows/961) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Emelia]() - -The final workflow should look like the following image. - -![A workflow with the Emelia node](/_images/integrations/builtin/app-nodes/emelia/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. Emelia node (campaign: create) - -This node will create a new campaign in Emelia. - -1. First of all, you'll have to enter credentials for the Emelia node. You can find out how to do that [here](/integrations/builtin/credentials/emelia/). -2. Select 'Create' from the ***Operation*** dropdown list. -3. Enter the campaign name in the ***Campaign Name*** field. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new campaign. - -![Using the Emelia node to create a new campaign](/_images/integrations/builtin/app-nodes/emelia/emelia_node.png) - -### 3. Emelia1 node (campaign: addContact) - -This node will add a contact to the campaign that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Add Contact' from the ***Operation*** dropdown list. -3. Select the campaign from the ***Campaign ID*** dropdown list. -4. Enter the contact's email address in the ***Contact Email*** field. -5. Click on the ***Add Field*** button and select 'First Name'. -6. Enter the first name in the ***First Name*** field. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node adds the contact to the campaign that we created in the previous node. - -![Using the Emelia node to add a contact to a campaign](/_images/integrations/builtin/app-nodes/emelia/emelia1_node.png) - -### 4. Emelia2 node (campaign: get) - -This node will get the information about the campaign that we created earlier. - -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 ***Campaign ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Emelia > Output Data > JSON > _id. You can also add the following expression: `{{$node["Emelia"].json["_id"]}}`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the information of the campaign. - -![Using the Emelia node to return the information a campaign](/_images/integrations/builtin/app-nodes/emelia/emelia2_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.erpnext.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.erpnext.md index a463d758989..fbf072de0db 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.erpnext.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.erpnext.md @@ -27,73 +27,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Update a document -## Example Usage - -This workflow allows you to create, update, and retrieve a document from ERPNext. You can also find the [workflow](https://n8n.io/workflows/961) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [ERPNext]() - -The final workflow should look like the following image. - -![A workflow with the ERPNext node](/_images/integrations/builtin/app-nodes/erpnext/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. ERPNext node (document: create) - -This node will create a new document in ERPNext. - -1. First of all, you'll have to enter credentials for the ERPNext node. You can find out how to do that [here](/integrations/builtin/credentials/erpnext/). -2. Select 'Item' from the ***DocType*** dropdown list. -3. Click on the ***Add Property*** button. -4. Select 'Item Name' from the ***Field*** dropdown list. -5. Enter `item 1` in the ***Value*** field. -6. Click on the ***Add Property*** button. -7. Select 'Item Code' from the ***Field*** dropdown list. -8. Enter `item-1` in the ***Value*** field. -9. Click on the ***Add Property*** button. -10. Select 'Item Group' from the ***Field*** dropdown list. -11. Enter `Products` in the ***Value*** field. -**Note:** Make sure that the item group exists in your ERPNext account. -12. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new item with the name `item 1`. - -![Using the ERPNext node to create a new item](/_images/integrations/builtin/app-nodes/erpnext/erpnext_node.png) - -### 3. ERPNext1 node (document: addContact) - -This node will add the `Item Tax` property to the item that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Select 'Item' from the ***DocType*** dropdown list. -4. Click on the gears icon next to the ***Item Name*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > name. You can also add the following expression: `{{$json["name"]}}`. -6. Click on the ***Add Property*** button. -7. Select 'Item Tax' from the ***Field*** dropdown list. -8. Enter `5` in the ***Value*** field. -10. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node adds the Item Tax property to the item that we created in the previous node. - -![Using the ERPNext node to update an item](/_images/integrations/builtin/app-nodes/erpnext/erpnext1_node.png) - -### 4. ERPNext2 node (document: get) - -This node will get the information about the item that we created earlier. - -1. Select the credentials that you entered in the previous node. -2. Select 'Get' from the ***Operation*** dropdown list. -3. Select 'Item' from the ***DocType*** dropdown list. -4. Click on the gears icon next to the ***Item Name*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > name. You can also add the following expression: `{{$json["name"]}}`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the information of the item. - -![Using the ERPNext node to return the information an item](/_images/integrations/builtin/app-nodes/erpnext/erpnext2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.facebookgraphapi.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.facebookgraphapi.md index 73410b2b19e..67f5b44f158 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.facebookgraphapi.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.facebookgraphapi.md @@ -44,7 +44,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ * **Graph API Version**: The version of the [Facebook Graph API](https://developers.facebook.com/docs/graph-api/changelog) to be used for this request. * **Node**: The node on which to operate, for example `//feed`. Read more about it in the [official Facebook Developer documentation](https://developers.facebook.com/docs/graph-api/using-graph-api). * **Edge**: Edge of the node on which to operate. Edges represent collections of objects which are attached to the node. -* **Ignore SSL Issues**: Toggle to still download the response even if SSL certificate validation is not possible. +* **Ignore SSL Issues**: Toggle to still download the response even if SSL certificate validation isn't possible. * **Send Binary File**: Available for `POST` operations. If enabled binary data is sent as the body. Requires setting the following: * **Input Binary Field**: Name of the binary property which contains the data for the file to be uploaded. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.filemaker.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.filemaker.md index 44757f339cd..3f6365db182 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.filemaker.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.filemaker.md @@ -28,72 +28,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Duplicate Record - Delete Record -## Example Usage - -This workflow allows you to create, update, and retrieve a record from FileMaker. You can also find the [workflow](https://n8n.io/workflows/1068) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [FileMaker]() - -The final workflow should look like the following image. - -![A workflow with the FileMaker node](/_images/integrations/builtin/app-nodes/filemaker/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. FileMaker node - -This node will create a new record in FileMaker. - -1. First of all, you'll have to enter credentials for the FileMaker node. You can find out how to do that [here](/integrations/builtin/credentials/filemaker/). -2. Select 'Create Record' from the ***Action*** dropdown list. -3. Select a layout from the ***Layout*** dropdown list. -4. Click on the ***Add Field*** button. -5. Select a field from the ***Field*** dropdown list. -6. Enter a value in the ***Value*** field. -7. Click on the ***Add field*** button. -8. Select a field from the ***Field*** dropdown list. -9. Enter a value in the ***Value*** field. -10. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new record in FileMaker. - -![Using the FileMaker node to create a new record](/_images/integrations/builtin/app-nodes/filemaker/filemaker_node.png) - -### 3. FileMaker1 node - -This node will add a new field to the record that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Edit Record' from the ***Action*** dropdown list. -3. Select a layout from the ***Layout*** dropdown list. -4. Click on the gears icon next to the ***Record Id*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > response > recordId. You can also add the following expression: `{{$json["response"]["recordId"]}}`. -6. Click on the gears icon next to the ***Mod Id*** field and click on ***Add Expression***. -7. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > response > modId. You can also add the following expression: `{{$json["response"]["modId"]}}`. -8. Click on the ***Add field*** button. -9. Select a field from the ***Field*** dropdown list. -10. Enter a value in the ***Value*** field. -11. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node adds the `address_country` field to the record that we created in the previous node. - -![Using the FileMaker node to update a record](/_images/integrations/builtin/app-nodes/filemaker/filemaker1_node.png) - -### 4. FileMaker2 node - -This node will get the information about the record that we created earlier. - -1. Select the credentials that you entered in the previous node. -2. Select 'Get Records by Id' from the ***Action*** dropdown list. -3. Select a layout from the ***Layout*** dropdown list. -4. Click on the gears icon next to the ***Record Id*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > FileMaker > Output Data > JSON > response > recordId. You can also add the following expression: `{{$node["FileMaker"].json["response"]["recordId"]}}`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the information of the record. - -![Using the FileMaker node to return the information a record](/_images/integrations/builtin/app-nodes/filemaker/filemaker2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.getresponse.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.getresponse.md index aa40be0a487..8c03ee7712a 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.getresponse.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.getresponse.md @@ -27,73 +27,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all contacts * Update contact properties -## Example Usage - -This workflow allows you to get all the contacts from GetResponse and check if they belong to a specific campaign. If they don't belong to the specified campaign, the workflow updates the campaign ID of the contacts using the GetResponse node. You can also find the [workflow](https://n8n.io/workflows/778) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [GetResponse]() -- [IF](/integrations/builtin/core-nodes/n8n-nodes-base.if/) -- [No Operation, do nothing](/integrations/builtin/core-nodes/n8n-nodes-base.noop/) - -The final workflow should look like the following image. - -![A workflow with the GetResponse node](/_images/integrations/builtin/app-nodes/getresponse/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. GetResponse node (getAll: contact) - -This node will retrieve all the contacts from GetResponse. - -1. First of all, you'll have to enter credentials for the GetResponse node. You can find out how to do that [here](/integrations/builtin/credentials/getresponse/). -2. Select 'GetAll' from the ***Operation*** dropdown list. -3. Toggle ***Return All*** to true. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node retrieves all the contacts from GetResponse. - -![Using the GetResponse node to retrieve all the contacts](/_images/integrations/builtin/app-nodes/getresponse/getresponse_node.png) - -### 3. IF node - -This node will check if a contact belongs to the `n8n` campaign or not. If a contact does not belong to the `n8n` campaign, it will return true otherwise false. Create a campaign in GetResponse if you don't already have one. - -1. Click on ***Add Condition*** and select 'String'. -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 > GetResponse > Output Data > JSON > campaign > name. You can also add the following expression: `{{$node["GetResponse"].json["campaign"]["name"]}}`. -4. Select 'Not Equal' from the ***Operation*** dropdown list. -5. Enter `n8n` in the ***Value 2*** field. If you have a campaign with a different name, use that name instead. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns all the contacts that do not belong to the `n8n` campaign. - -![Using the IF node to check if a contact belongs to the n8n campaign or not](/_images/integrations/builtin/app-nodes/getresponse/if_node.png) - -### 4. GetResponse1 node (update: contact) - -This node will update the campaign ID of all the contacts that we get from the true branch of the previous node. - -1. Create a GetResponse node connected to the 'true' output of the IF node. -2. Select the credentials that you entered in the previous GetResponse node. -3. Select 'Update' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Contact ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > IF > Output Data > JSON > contactId. You can also add the following expression: `{{$node["IF"].json["contactId"]}}`. -6. Click on ***Add Field*** and select 'Campaign ID' from the dropdown list. -7. Select `n8n` from the ***Campaign ID*** dropdown list. If you have a campaign with a different name, select that instead. -8. Click on ***Test step*** to run the node. - -In the screenshot below, you notice that the node updates the campaign ID of all the contacts that do not belong to the `n8n` campaign. - -![Using the GetResponse node to update the campaign of the contacts](/_images/integrations/builtin/app-nodes/getresponse/getresponse1_node.png) - -### 5. 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 ***Test step*** to run the node. - -![Using the NoOp node](/_images/integrations/builtin/app-nodes/getresponse/noop_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.ghost.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.ghost.md index 0ee84da8f3f..6440f2ddb48 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.ghost.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.ghost.md @@ -36,66 +36,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Get all posts -## Example Usage - -This workflow allows you to create, update, and get a post in Ghost. You can also find the [workflow](https://n8n.io/workflows/825) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Ghost]() - -The final workflow should look like the following image. - -![A workflow with the Ghost node](/_images/integrations/builtin/app-nodes/ghost/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Ghost node (create: post) - -This node will create a new post with the title `Running ghost with n8n!`. If you want to create a post with a different title, use that instead. - -1. Select 'Admin API' from the ***Source*** dropdown list. -2. You'll have to enter credentials for the Ghost node. You can find out how to do that [here](/integrations/builtin/credentials/ghost/). -3. Select 'Create' from the ***Operation*** dropdown list. -4. Enter `Running ghost with n8n!` in the ***Title*** field. -5. Enter the HTML content in the ***Content*** field. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new post. - -![Using the Ghost node to create a new post and publish it](/_images/integrations/builtin/app-nodes/ghost/ghost_node.png) - -### 3. Ghost1 node (update: post) - -This node will update the status of the post that we created in the previous node. We will change the status of the post to `Published`. - -1. Select 'Admin API' from the ***Source*** dropdown list. -2. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Post ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Ghost > Output Data > JSON > id. You can also add the following expression: `{{$node["Ghost"].json["id"]}}`. -5. Click on ***Add Field*** and select 'Status'. -6. Select 'Published' from the ***Status*** dropdown list. -7. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the status of the post that we created in the previous node. - -![Using the Ghost node to update the status of a post](/_images/integrations/builtin/app-nodes/ghost/ghost1_node.png) - -### 4. Ghost2 node (get: post) - -This node returns information about the post that we created using the Ghost node. In this node, we are using the ***Admin API***. You can also use the ***Content API*** to get the information about the post. - -1. Select 'Admin API' from the ***Source*** dropdown list. -2. Select the credentials that you entered in the previous node. -3. Select 'ID' from the ***By*** dropdown list. -4. Click on the gears icon next to the ***Identifier*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Ghost > Output Data > JSON > id. You can also add the following expression: `{{$node["Ghost"].json["id"]}}`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns information about the post that we specified. - -![Using the Ghost node to get information of a post](/_images/integrations/builtin/app-nodes/ghost/ghost2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.github.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.github.md index bf0070d56d7..c56c0a32d7b 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.github.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.github.md @@ -37,7 +37,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Returns issues of a repository. * Get the community profile of a repository with metrics, health score, description, license, etc. * Get the top 10 popular content paths over the last 14 days. - * Get the top 10 referrering domains over the last 14 days. + * Get the top 10 referring domains over the last 14 days. * Release * Creates a new release. * Get a release. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlebooks.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlebooks.md index 9662474f5a4..00305d14692 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlebooks.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlebooks.md @@ -33,64 +33,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get a volume resource based on ID * Get all volumes filtered by query -## Example Usage - -This workflow allows you to get a volume and add it to your bookshelf using the Google Books node. You can also find the [workflow](https://n8n.io/workflows/771) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Google Books]() - -The final workflow should look like the following image. - -![A workflow with the Google Books node](/_images/integrations/builtin/app-nodes/googlebooks/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. Google Books node (get: volume) - -This node will retrieve a volume from Google Books. - -1. Select 'OAuth2' from the ***Authentication*** dropdown list. -2. Enter credentials for the Google Books node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/google/). -3. Enter the ID of a volume in the ***Volume ID*** field. -4. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will observe that the node retrieves the information of the volume that we specify. - -![Using the Google Books node to retrieve information of a volume](/_images/integrations/builtin/app-nodes/googlebooks/googlebooks_node.png) - -### 3. Google Books1 node (add: bookshelfVolume) - -This node will add the volume that we got from the previous node to a bookshelf in Google Books. - -1. Select 'OAuth2' in the ***Authentication*** field. -2. Select the credentials that you entered in the previous Google Books node. -3. Select 'Bookshelf Volume' from the ***Resource*** dropdown list. -4. Select 'Add' from the ***Operation*** dropdown list. -5. Enter a bookshelf id in the ***ID*** field. -6. Click on the gears icon next to the ***Volume ID*** field and click on ***Add Expression***. -7. Select the following in the ***Variable Selector*** section: Nodes > Google Books > Output Data > JSON > id. You can also add the following expression: `{{$node["Google Books"].json["id"]}}`. -8. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that this node adds the volume that we got from the previous node to a bookshelf that we specified. - -![Using the Google Books node to add a volume to a bookshelf volume](/_images/integrations/builtin/app-nodes/googlebooks/googlebooks1_node.png) - -### 4. Google Books2 node (getAll: bookshelfVolume) - -This node will return all the volumes in a bookshelf. - -1. Select 'OAuth2' in the ***Authentication*** field. -2. Select the credentials that you entered in the previous Google Books node. -3. Select 'Bookshelf Volume' from the ***Resource*** dropdown list. -4. Select 'Get All' from the ***Operation*** dropdown list. -5. Toggle ***My Library*** to true. This will return the information for your account. -6. Click on the gears icon next to the ***Bookshelf ID*** field and click on ***Add Expression***. -7. Select the following in the ***Variable Selector*** section: Nodes > Google Books1 > Parameters > shelfId. You can also add the following expression: `{{$node["Google Books1"].parameter["shelfId"]}}`. -8. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that this node returns all the volumes in the bookshelf that we specified. - -![Using the Google Books node to get all the volumes in a bookshelf](/_images/integrations/builtin/app-nodes/googlebooks/googlebooks2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlecloudnaturallanguage.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlecloudnaturallanguage.md index cd2a7592149..4cf292c60d0 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlecloudnaturallanguage.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlecloudnaturallanguage.md @@ -17,91 +17,9 @@ Refer to [Google Cloud Natural Language credentials](/integrations/builtin/crede For usage examples and templates to help you get started, take a look at n8n's [Google Cloud Natural Language integrations](https://n8n.io/integrations/google-cloud-natural-language/){:target="_blank" .external-link} list. /// -## Basic Operations +## Operations * Document * Analyze Sentiment -## Example Usage - -This workflow allows you to analyze the sentiment of feedback received via a Typeform submission and send a message on Mattermost if that feedback is negative. You can also find the [workflow](https://n8n.io/workflows/786) on n8n.io. This example usage workflow uses the following nodes. -- [Typeform Trigger](/integrations/builtin/trigger-nodes/n8n-nodes-base.typeformtrigger/) -- [Google Cloud Natural Language]() -- [IF](/integrations/builtin/core-nodes/n8n-nodes-base.if/) -- [Mattermost](/integrations/builtin/app-nodes/n8n-nodes-base.mattermost/) -- [No Operation, do nothing](/integrations/builtin/core-nodes/n8n-nodes-base.noop/) - -The final workflow should look like the following image. - -![A workflow with the Google Cloud Natural Language node](/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/workflow.png) - -### 1. Typeform Trigger node - -This node will trigger the workflow when a feedback form is submitted. Make sure to create a feedback form for your event. - -1. Select 'Access Token' from the ***Authentication*** dropdown list. -2. Enter the credentials for the Typeform Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/typeform/). -3. Select the event feedback form from the ***Form*** dropdown list. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node triggers the workflow when feedback is submitted. We will pass this feedback to the next nodes in the workflow. -![Using the Typeform Trigger node to trigger the workflow when a feedback form is submitted](/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/typeformtrigger_node.png) - -### 2. Google Cloud Natural Language node (analyzeSentiment: document) - -This node will analyze the sentiment of the feedback that we got from the previous node. We will pass the analysis score to the next node in the workflow. - -1. First of all, you'll have to enter credentials for the Google Cloud Natural Language node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/google/). -2. Click on the gears icon next to the ***Content*** field and click on ***Add Expression***. - -3. Select the following in the ***Variable Selector*** section: Nodes > Typeform Trigger > Output Data > JSON > What did you think about the event? You can also add the following expression: `{{$node["Typeform Trigger"].json["What did you think about the event?"]}}`. If you want to analyze the sentiment for a different question, select that question instead. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node analyzes the sentiment of the feedback and gives a score based on that. - -![Using the Google Cloud Natural Language node to analyze the sentiment](/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/googlecloudnaturallanguage_node.png) - - -### 3. IF node - -This node will check if the score we got from the previous node is smaller than `0`. If the score is smaller than `0`, it will return true otherwise false. - -1. Click on ***Add Condition*** and select 'Number'. -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 > Google Cloud Natural Language > Output Data > JSON > documentSentiment > score. You can also add the following expression: `{{$node["Google Cloud Natural Language"].json["documentSentiment"]["score"]}}`. -4. Select 'Smaller' from the ***Operation*** dropdown list. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node checks if the score that we received from the previous node is smaller than `0`. - -![Using the IF node to check if the score is smaller than `0` or not](/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/if_node.png) - -### 4. Mattermost node (post: message) - -This node will send the feedback and the analysis score to the `Feedback` channel in Mattermost. If you have a different channel, use that instead. - -1. Create a Mattermost node connected to the 'true' output of the IF node. -2. You'll have to enter credentials for the Mattermost node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/mattermost/). -3. Select a channel from the ***Channel ID*** dropdown list. -4. Click on the gears icon next to the ***Message*** field click on ***Add Expression***. - -5. Enter the following message in the ***Expression*** field: `You got a new feedback with a score of {{$node["Google Cloud Natural Language"].json["documentSentiment"]["score"]}}. Here is what it says:{{$node["Typeform Trigger"].json["What did you think about the event?"]}}`. -6. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node sends the feedback and the analysis score to the `Feedback` channel in Mattermost. - -![Using the Mattermost node to send the feedback and the analysis score](/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/mattermost_node.png) - -### 5. 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 ***Test step*** to run the node. - -![Using the NoOp node](/_images/integrations/builtin/app-nodes/googlecloudnaturallanguage/noop_node.png) - -/// note | Activate workflow for production -This example workflow uses the Typeform Trigger node. You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered when a new form is submitted. -/// diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlecontacts.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlecontacts.md index 4ce456e7894..4a0312167b4 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlecontacts.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googlecontacts.md @@ -26,62 +26,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get a contact * Retrieve all contacts * Update a contact - -## Example Usage - -This workflow allows you to create, update, and get a contact from Google Contacts. You can also find the [workflow](https://n8n.io/workflows/637) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Google Contacts]() - -The final workflow should look like the following image. - -![A workflow with the Google Contacts node](/_images/integrations/builtin/app-nodes/googlecontacts/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - - -### 2. Google Contacts node (create: contact) - -1. First of all, you'll have to enter credentials for the Google Contacts node. You can find out how to do that [here](/integrations/builtin/credentials/google/). -2. Enter the family name in the ***Family Name*** field. -3. Enter the given name in the ***Given Name*** field. -4. Click on ***Test step*** to run the node. - -![Using the Google Contacts node to create a contact](/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts_node.png) - - - -### 3. Google Contacts1 node (update: contact) - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Contact ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Google Contacts > Output Data > JSON > contactId. You can also add the following expression: `{{$node["Google Contacts"].json["contactId"]}}`. -5. Select `*` from the ***Fields*** dropdown list. -6. Click on the ***Add Field*** button and select ***Company***. -7. Click on the ***Add Company*** button. -8. Toggle the value to true for the ***Current*** field. -9. Enter the company's domain in the ***Domain*** field. -10. Enter the company's name in the ***Name*** field. -11. Enter the title in the ***Title*** field. -12. Click on ***Test step*** to run the node. - - -![Using the Google Contact node to update the contact](/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts1_node.png) - - - -### 4. Google Contacts2 node (get: contact) - -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 ***Contact ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Google Contacts > Output Data > JSON > contactId. You can also add the following expression: `{{$node["Google Contacts"].json["contactId"]}}`. -5. Select 'Organizations' from the ***Fields*** dropdown list. -6. Click on ***Test step*** to run the node. - - -![Using the Google Contacts node to get the contact](/_images/integrations/builtin/app-nodes/googlecontacts/googlecontacts2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googledocs.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googledocs.md index 8445a662780..86e82ad0f93 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googledocs.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googledocs.md @@ -24,44 +24,3 @@ Fo usage examples and templates to help you get started, take a look at n8n's [G * Get * Update -## Example usage - -This workflow allows you to create a new Google Doc and add your desired text to it. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Google Docs]() - -The final workflow should look like the following image. - -![A workflow with the Google Docs node](/_images/integrations/builtin/app-nodes/googledocs/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. Google Docs node - create - -The **Document** resource is selected by default. Configure the remaining parameters as follows: - -1. From the **Authentication** dropdown select your desired method and the corresponding [**Credentials**](/integrations/builtin/credentials/google/). -2. From the **Operation** dropdown select **Create**. -3. From the **Drive** dropdown select which of your drives this file will be created in. My Drive is selected by default. -4. From the **Folder** dropdown select which of you drive folders this file will be created in. The root folder (`/`) is selected by default. -5. In the **Title** field enter the name of your new Google Doc. - -![Creating a file with the Google Docs node](/_images/integrations/builtin/app-nodes/googledocs/googledocs_node.png) - -### 3. Google Docs node - update - -The **Document** resource is selected by default. Configure the remaining parameters as follows: - -1. From the **Operation** dropdown select **Update**. -2. In the **Doc ID or URL** field, enter the document ID or URL of the file created by the previous node. -3. From **Actions**, configure the fields as follows: - - **Object:** Select the object of the action. Here we use 'Text'. - - **Action:** Select the action to be performed on the object. Here we use 'Insert'. - - **Insert Segment:** Select where in the document the action should be performed. Here we use 'Body'. - - **Insert Location:** Select the location within the selected Segment. Here we use 'At end of specific location'. - - **Text:** Enter the text to be inserted. - -![Updating text in a file with the Google Docs node](/_images/integrations/builtin/app-nodes/googledocs/googledocs1_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googledrive.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googledrive.md index 3e20ef95179..7dfa6375e80 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googledrive.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googledrive.md @@ -38,44 +38,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Delete a folder * Share a folder -## Example Usage - -This workflow allows you to download a file from Google Drive. You can also find the [workflow](https://n8n.io/workflows/515) on the website. This example usage workflow uses the following two nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Google Drive]() -- [Write Binary File](/integrations/builtin/core-nodes/n8n-nodes-base.writebinaryfile/) - -The final workflow should look like the following image. - -![A workflow with the Google Drive node](/_images/integrations/builtin/app-nodes/googledrive/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. Google Sheets node - -1. First of all, you'll have to enter credentials for the Google Drive node. You can find out how to do that [here](/integrations/builtin/credentials/google/), in the section 'Google Drive / Sheets API'. -2. Select the authentication method you plan to use from the *Authentication* dropdown list. -3. Select 'Download' from the *Operation* dropdown list. -4. Copy the string of characters located between `/d/` and `/edit` in your Google Drive URL. Paste that string in the *File ID* field. - -### 3. Write Binary File node - -1. Enter the destination file path in the *File Name* field. -2. Click on *Execute Node* to run the workflow. - -## FAQs - -### How do I list all files/folders within a folder? - -To list all the files and folders within a folder, follow the steps mentioned below. - -1. Toggle ***Use Query String*** to `true`. -2. Copy the string of characters located after `https://drive.google.com/drive/u/0/folders/`. This string is the folder ID. -3. Enter `'FOLDER_ID' in parents` in the ***Query String*** field. Replace `FOLDER_ID` with the folder ID you copied in the previous step. - -There are several additional options available to fine grain the listed results. Refer to [Search for files and folders: Querystring](https://developers.google.com/drive/api/v3/search-files#query_string_examples) for more information. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googleslides.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googleslides.md index 2bf9a54cc5e..00f04d7aa55 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googleslides.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googleslides.md @@ -29,58 +29,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get presentation slides * Replace text in a presentation -## Example Usage - -This workflow allows you to get all the slides from a presentation and get the thumbnails for the pages. You can also find the [workflow](https://n8n.io/workflows/1035) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Google Slides]() - -The final workflow should look like the following image. - -![A workflow with the Google Slides node](/_images/integrations/builtin/app-nodes/googleslides/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. Google Slides node (getSlides: presentation) - -#### Get Presentation ID - -1. Open a Google Slides presentation. -2. Copy the string of characters located between `/d/` and `/edit` in your presentation URL. This string is the Presentation ID, which we will use in the Google Slides node. - -#### Configure the Google Slides node - -This Google Slides node will get all the slides from a presentation. - -1. Select 'OAuth2' from the ***Authentication*** dropdown list. -2. First of all, you'll have to enter credentials for the Google Slides node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/google/). -3. Select 'Get Slides' from the ***Operation*** dropdown list. -4. Paste the Presentation ID you copied in the previous step, in the ***Presentation ID*** field. -5. Toggle ***Return All*** to `true`. -6. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node returns all the slides from the presentation. - -![Using the Google Slides node to get slides from a presentation](/_images/integrations/builtin/app-nodes/googleslides/googleslides_node.png) - -### 3. Google Slides1 node (getThumbnail: page) - -This node will return thumbnails of the pages that were returned by the previous node. - -1. Select 'OAuth2' from the ***Authentication*** dropdown list. -2. Select the credentials that you entered in the previous Google Slides node. -3. Select 'Page' from the ***Resource*** dropdown list. -4. Select 'Get Thumbnail' from the ***Operation*** dropdown list. -5. Click on the gears icon next to the ***Presentation ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Google Slides > Parameters > presentationId. You can also add the following expression: `{{$node["Google Slides"].parameter["presentationId"]}}`. -7. Click on the gears icon next to the ***Page Object ID*** field and click on ***Add Expression***. -8. Select the following in the ***Variable Selector*** section: Nodes > Google Slides > Output Data > JSON > objectId. You can also add the following expression: `{{$json["objectId"]}}`. -9. Toggle ***Download*** to `true`. -10. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node returns thumbnails of the pages that were returned by the previous node. - -![Using the Google Slides node to get thumbnails of the slides](/_images/integrations/builtin/app-nodes/googleslides/googleslides1_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googletasks.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googletasks.md index bec1938a912..eac8e723563 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.googletasks.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.googletasks.md @@ -20,10 +20,10 @@ For usage examples and templates to help you get started, take a look at n8n's [ ## Basic Operations * Task - * Add a task to tasklist + * Add a task to task list * Delete a task * Retrieve a task - * Retrieve all tasks from a tasklist + * Retrieve all tasks from a task list * Update a task ## Example Usage diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.gotowebinar.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.gotowebinar.md index fd8d81d03ef..bda8eea14a9 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.gotowebinar.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.gotowebinar.md @@ -27,12 +27,12 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Create * Delete * Get All - * Reinvite + * Re-invite * Panelist * Create * Delete * Get All - * Reinvite + * Re-invite * Registrant * Create * Delete diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.gsuiteadmin.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.gsuiteadmin.md index 8ea9abebc67..2d0f11387f3 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.gsuiteadmin.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.gsuiteadmin.md @@ -33,69 +33,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all users * Update a user -## Example Usage -This workflow allows you to create, update, and get a user using the G Suite Admin node. You can also find the [workflow](https://n8n.io/workflows/710) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [G Suite Admin]() - -The final workflow should look like the following image. - -![A workflow with the Google Sheets node](/_images/integrations/builtin/app-nodes/gsuiteadmin/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. G Suite Admin node (create: user) - -This node will create a user in G Suite with the following information: first name, last name, password, domain, and username. - -1. First of all, you'll have to enter credentials for the G Suite Admin node. You can find out how to do that [here](/integrations/builtin/credentials/google/). -3. Enter the first name of the user in the ***First Name*** field. -4. Enter the last name of the user in the ***Last Name*** field. -5. Enter a password for the user in the ***Password*** field. -6. Select the domain from the ***Domain*** dropdown list. -7. Enter the username for the user in the ***Username*** field. -8. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will observe that the node has created a new user with the first name `Nathan`, last name `Nat`, domain `n8n.io`, username `nat`, and a password, in G Suite. - -![Using the G Suite Admin node to create a user](/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin_node.png) - - -### 3. G Suite Admin1 node (update: user) - -This node will get the User ID from the previous node and update the user's last name to `Nate`. - -1. Select the credentials that you entered in the previous G Suite Admin node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***User ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > G Suite Admin > Output Data > JSON > id. You can also add the following expression: `{{$node["G Suite Admin"].json["id"]}}`. -5. Click on the ***Add Field*** button and select 'Last Name' from the dropdown list. -6. Enter the last name in the ***Last Name*** field. -7. Click on ***Test step*** to run the workflow. - - -In the screenshot below, you will notice that the node has updated the last name of the user that we created in the previous node. - -![Using the G Suite Admin node to update the last name of the user](/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin1_node.png) - - -### 4. G Suite Admin2 (get: user) - -This node will get the information of the user we created in the G Suite Admin node. - -1. Select the credentials that you entered in the previous G Suite Admin node. -2. Select 'Get' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***User ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > G Suite Admin > Output Data > JSON > id. You can also add the following expression: `{{$node["G Suite Admin"].json["id"]}}`. -5. Click on ***Test step*** to run the workflow. - - -In the screenshot below, you will notice that the node returns the information of the user we created in the G Suite Admin node. - -![Using the G Suite Admin node to get the information of the user](/_images/integrations/builtin/app-nodes/gsuiteadmin/gsuiteadmin2_node.png) ## FAQs @@ -103,8 +41,8 @@ In the screenshot below, you will notice that the node returns the information o There are three different ways to project a user's information: -- ***Basic:*** Does not include any custom fields. -- ***Custom:*** Includes the custom fields from schemas in customField. +- ***Basic:*** Doesn't include any custom fields. +- ***Custom:*** Includes the custom fields from schemas in `customField`. - ***Full:*** Include all the fields associated with the user. You can include custom fields by following the steps mentioned below. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.halopsa.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.halopsa.md index 59fa4310427..443e9b01e1d 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.halopsa.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.halopsa.md @@ -44,29 +44,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all users * Update a user -## Example Usage - -This workflow allows you to create a client in HaloPSA. This example workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [HaloPSA]() - -![A workflow with the Harvest node](/_images/integrations/builtin/app-nodes/halopsa/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. HaloPSA node (resource: client) - -This node will create a new client in HaloPSA. - -1. First of all, you'll have to enter credentials for the HaloPSA node. You can find out how to do that [here](/integrations/builtin/credentials/halopsa/). -2. Select 'Client' in the ***Resource*** field. -3. Select 'Create' in the ***Operation*** field. -4. Enter the client name in the ***Name*** field. -5. Add additional fields such as ***VIP*** or ***Website*** by clicking ***Add Field***. - -In the below screenshot you can see how the node creates a new client in HaloPSA. - -![Using the HaloPSA node to create a client](/_images/integrations/builtin/app-nodes/halopsa/halopsa-client-create.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.harvest.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.harvest.md index 2fcef18b615..c511324cfad 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.harvest.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.harvest.md @@ -64,8 +64,8 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get data of all tasks * Update a task * Time Entries - * Create a time entry via duration - * Create a time entry via start and end time + * Create a time entry using duration + * Create a time entry using start and end time * Delete a time entry * Delete a time entry's external reference. * Get data of a time entry diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.homeassistant.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.homeassistant.md index a98325e1012..975e3de3da3 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.homeassistant.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.homeassistant.md @@ -6,7 +6,7 @@ contentType: integration # Home Assistant -Use the Home Assistant node to automate work in Home Assistant, and integrate Home Assistant with other applications. n8n has built-in support for a wide range of Home Assistant features, including getting, creating, and checking camera proxies, configs, logs, services, and templates. +Use the Home Assistant node to automate work in Home Assistant, and integrate Home Assistant with other applications. n8n has built-in support for a wide range of Home Assistant features, including getting, creating, and checking camera proxies, configurations, logs, services, and templates. On this page, you'll find a list of operations the Home Assistant node supports and links to more resources. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.humanticai.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.humanticai.md index 52c8679fdd6..67efbc43ac7 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.humanticai.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.humanticai.md @@ -17,81 +17,12 @@ Refer to [Humantic AI credentials](/integrations/builtin/credentials/humanticai/ For usage examples and templates to help you get started, take a look at n8n's [Humantic AI integrations](https://n8n.io/integrations/humantic-ai/){:target="_blank" .external-link} list. /// -## Basic Operations +## Operations * Profile * Create a profile * Retrieve a profile * Update a profile -## Example Usage -This workflow allows you to create, update, and get a profile using the Humantic AI node. You can also find the [workflow](https://n8n.io/workflows/784) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [HTTP Request](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/) -- [Humantic AI]() - -The final workflow should look like the following image. - -![A workflow with the Humantic AI node](/_images/integrations/builtin/app-nodes/humanticai/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. Humantic AI node (create: profile) - -This node will create a new profile for a candidate in Humantic AI. We will create a new profile using the LinkedIn URL of a candidate. - -1. First of all, you'll have to enter credentials for the Humantic AI node. You can find out how to do that [here](/integrations/builtin/credentials/humanticai/). -2. Enter the LinkedIn URL of the candidate in the ***User ID*** field. -3. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new profile using the LinkedIn URL of the candidate. - -![Using the Humantic AI node to create a new profile](/_images/integrations/builtin/app-nodes/humanticai/humanticai_node.png) - -### 3. HTTP Request node (GET) - -This node will fetch the resume of the candidate from a URL that we specify. We will pass on this resume to the next node in the workflow. - -1. Enter the URL of the candidate's resume in the ***URL*** field. -2. Select 'File' from the ***Response Format*** dropdown list. -3. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node fetches the resume of the candidate from the URL we specified. - -![Using the HTTP Request node to fetch a resume](/_images/integrations/builtin/app-nodes/humanticai/httprequest_node.png) - -### 4. Humantic AI1 node (update: profile) - -This node will update the information of the candidate that we created using the Humantic AI node. We will add the candidate's resume that we fetched in the previous node. - - -1. Select the credentials that you entered in the previous Humantic AI node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***User ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Humantic AI > Output Data > JSON > results > userid. You can also add the following expression: `{{$node["Humantic AI"].json["results"]["userid"]}}`. -5. Toggle ***Send Resume*** to `true`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the information of the candidate that we created using the Humantic AI node. Here, the node has added the resume of the candidate. - -![Using the Humantic AI node to add resume to the candidate's profile](/_images/integrations/builtin/app-nodes/humanticai/humanticai1_node.png) - -### 5. Humantic AI2 node (get: profile) - -This node will return the `Hiring` persona for the candidate that we created using the Humantic AI node. - -1. Select the credentials that you entered in the previous node. -2. Click on the gears icon next to the ***User ID*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Nodes > Humantic AI > Output Data > JSON > results > userid. You can also add the following expression: `{{$node["Humantic AI"].json["results"]["userid"]}}`. -4. Click on the ***Add Option*** button. -5. Select 'Hiring' from the ***Persona*** dropdown list. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns the `Hiring` persona for the candidate that we created using the Humantic AI node (column headers are not visible in the screenshot since we've scrolled down to show the data). - -![Using the Humantic AI node to get the information of the candidate](/_images/integrations/builtin/app-nodes/humanticai/humanticai2_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.iterable.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.iterable.md index 1e044b31818..5ca15c15686 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.iterable.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.iterable.md @@ -29,67 +29,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Add user to list * Remove a user from a list -## 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](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Iterable]() - -The final workflow should look like the following image. - -![A workflow with the Iterable node](/_images/integrations/builtin/app-nodes/iterable/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](/integrations/builtin/credentials/iterable/). -2. Select 'Email' in the ***Identifier*** field. -3. Enter the email address in the ***Value*** field. -4. Click on ***Test step*** 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](/_images/integrations/builtin/app-nodes/iterable/iterable_node.png) - -### 3. Iterable1 node (upsert: user) - -This node will update the information of the user that we created in the previous node. - - -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 ***Test step*** 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](/_images/integrations/builtin/app-nodes/iterable/iterable1_node.png) - - - -### 4. Iterable2 node (get: user) - -This node will get the information of the user that we created using the Iterable node. - - -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 ***Test step*** 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](/_images/integrations/builtin/app-nodes/iterable/iterable2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.jenkins.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.jenkins.md index 536f084ae09..89ae0349ddb 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.jenkins.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.jenkins.md @@ -24,8 +24,8 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Instance * Cancel quiet down state * Put Jenkins in quiet mode, no builds can be started, Jenkins is ready for shutdown - * Restart Jenkins immediately on environments where it is possible - * Restart Jenkins once no jobs are running on environments where it is possible + * Restart Jenkins immediately on environments where it's possible + * Restart Jenkins once no jobs are running on environments where it's possible * Shutdown once no jobs are running * Shutdown Jenkins immediately * Job @@ -34,25 +34,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Trigger a specific job * Trigger a specific job -## Example Usage - -This workflow allows you to get list of builds in Jenkins. You can also find the [workflow](https://n8n.io/workflows/454) on the website. This example usage workflow would use the following two nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Jenkins]() - -The final workflow should look like the following image. - -![A workflow with the CircleCI node](/_images/integrations/builtin/app-nodes/jenkins/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. CircleCI node - -1. First of all, you'll have to enter credentials for the Jenkins node. You can find out how to do that [here](/integrations/builtin/credentials/jenkins/). -2. Select the *Build* from the dropdown in the *Resources* field. -3. *Get All Builds* is not selected in *Operations* dropdown. -4. Adjust the *depth* or add optional parameter by clickin *Add Field* button -5. Click on *Execute Node* to run the workflow. - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.kitemaker.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.kitemaker.md index a52277e12e8..02780b23ad8 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.kitemaker.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.kitemaker.md @@ -31,63 +31,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get All * Update -## Example Usage - -This workflow allows you to create, update, and get a work item from Kitemaker. You can also find the [workflow](https://n8n.io/workflows/1048) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Kitemaker]() - -The final workflow should look like the following image. - -![A workflow with the Kitemaker node](/_images/integrations/builtin/app-nodes/kitemaker/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Kitemaker node (workItem: create) - -This node will create a work item in Kitemaker. - -1. First of all, you'll have to enter credentials for the Kitemaker node. You can find out how to do that [here](/integrations/builtin/credentials/kitemaker/). -2. Select 'Create' from the ***Operation*** dropdown list. -3. Enter a title in the ***Title*** field. -4. Select 'In progress' from the ***Status ID*** dropdown list. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new work item in Kitemaker. - -![Using the Kitemaker node to create a new work item](/_images/integrations/builtin/app-nodes/kitemaker/kitemaker_node.png) - - -### 3. Kitemaker1 node (workItem: update) - -This node will update the status of the item that we created using the previous node. - -1. Select the credentials that you entered in the previous Kitemaker node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Work Item ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -5. Click on the ***Add Field*** button and select 'Status ID' from the dropdown list. -6. Select 'Done' from the ***Status ID*** dropdown list. -7. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the status of the item that got created previously. - -![Using the Kitemaker node to update a work item](/_images/integrations/builtin/app-nodes/kitemaker/kitemaker1_node.png) - -### 4. Kitemaker2 node (workItem: get) - -This node will retrieve the information about the item that we created earlier. - - -1. Select the credentials that you entered in the previous Kitemaker node. -2. Click on the gears icon next to the ***Work Item ID*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node retrieves the information of the work item that we created earlier. - -![Using the Kitemaker node to retrieve the information of a work item](/_images/integrations/builtin/app-nodes/kitemaker/kitemaker2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.kobotoolbox.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.kobotoolbox.md index e5ab97c1c13..f5358442f80 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.kobotoolbox.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.kobotoolbox.md @@ -48,10 +48,10 @@ The Query Submission operation supports query options: * In the main section of the **Parameters** panel: * **Start** controls the index offset to start the query from (to use the API pagination logic). - * **Limit** sets the maximum number of records to return. Note that the API always has a limit of 30,000 returned records, whatver value you provide. + * **Limit** sets the maximum number of records to return. Note that the API always has a limit of 30,000 returned records, whatever value you provide. * In the **Query Options** section, you can activate the following parameters: * **Query** lets you specify filter predicates in MongoDB's JSON query format. For example: `{"status": "success", "_submission_time": {"$lt": "2021-11-01T01:02:03"}}` queries for all submissions with the value `success` for the field `status`, and submitted before November 1st, 2021, 01:02:03. - * **Fields** lets you specifiy the list of fields you want to fetch, to make the response lighter. + * **Fields** lets you specify the list of fields you want to fetch, to make the response lighter. * **Sort** lets you provide a list of sorting criteria in MongoDB JSON format. For example, `{"status": 1, "_submission_time": -1}` specifies a sort order by ascending status, and then descending submission time. More details about these options can be found in the [Formhub API docs](https://github.com/SEL-Columbia/formhub/wiki/Formhub-Access-Points-(API)#api-parameters) @@ -65,7 +65,7 @@ All operations that return form submission data offer options to tweak the respo #### About reformatting -The default JSON format for KoBoToolbox submission data is sometimes hard to deal with, because it is not schema-aware, and all fields are therefore returned as strings. +The default JSON format for KoBoToolbox submission data is sometimes hard to deal with, because it's not schema-aware, and all fields are therefore returned as strings. This node provides a lightweight opinionated reformatting logic, enabled with the **Reformat?** parameter, available on all operations that return form submissions: the submission query, get, and the attachment download operations. @@ -74,7 +74,7 @@ When enabled, the reformatting: - Reorganizes the JSON into a multi-level hierarchy following the form's groups. By default, question grouping hierarchy is materialized by a `/` character in the field names, for example `Group1/Question1`. With reformatting enabled, n8n reorganizes these into `Group1.Question1`, as nested JSON objects. - Renames fields to trim `_` (not supported by many downstream systems). - Parses all geospatial fields (Point, Line, and Area question types) into their standard GeoJSON equivalent. -- Splits all fields matching any of the the **Multiselect Mask** wildcard masks into an array. Since the multi-select fields appear as space-separated strings, they can't be guessed algorithmically, so you must provide a field naming mask. Format the masks as a comma-separated list. Lists support the `*` wildcard. +- Splits all fields matching any of the **Multiselect Mask** wildcard masks into an array. Since the multi-select fields appear as space-separated strings, they can't be guessed algorithmically, so you must provide a field naming mask. Format the masks as a comma-separated list. Lists support the `*` wildcard. - Converts all fields matching any of the **Number Mask** wildcard masks into a JSON float. Here's a detailed example in JSON: @@ -108,7 +108,7 @@ Here's a detailed example in JSON: } ``` -With reformatting enabled, and the appropriate masks for multi-select and number formatting (for example, `Crops_*` and `*_sqm` respecitvely), n8n parses it into: +With reformatting enabled, and the appropriate masks for multi-select and number formatting (for example, `Crops_*` and `*_sqm` respectively), n8n parses it into: ```json { diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.lemlist.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.lemlist.md index b4988c22305..b9d159d05f5 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.lemlist.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.lemlist.md @@ -35,67 +35,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Delete * Get All -## Example Usage - -This workflow allows you to list emails from Airtable and create corresponding leads in Lemlist. You can also find the [workflow](https://n8n.io/workflows/983) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Airtable]/integrations/builtin/app-nodes/n8n-nodes-base.airtable/) -- [Lemlist]() - -The final workflow should look like the following image. - -![A workflow with the Lemlist node](/_images/integrations/builtin/app-nodes/lemlist/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Airtable node (List) - -This node will list all the records from Airtable. Create a table like [this](https://airtable.com/shruiCc4kttDVsTsD) in your Airtable base. - -1. First of all, you'll have to enter credentials for the Airtable node. You can find out how to do that [here](/integrations/builtin/credentials/airtable/). -2. Select the 'List' option from the ***Operation*** dropdown list. -3. Enter the Base ID in the ***Base ID*** field. For obtaining the Base ID, head over to their [API page](https://airtable.com/api) and select the correct base. You'll find the Base ID there. -4. Enter the name of your table in the ***Table*** field. -5. Click on the gears icon next to the ***Table*** field and click on ***Add Expression***. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns the information of the leads. - -![Using the Airtable node to list data from an Airtable table](/_images/integrations/builtin/app-nodes/lemlist/airtable_node.png) - -### 3. Lemlist node (create: lead) - -This node will create new leads for a campaign in Lemlist. - -1. First of all, you'll have to enter credentials for the Lemlist node. You can find out how to do that [here](/integrations/builtin/credentials/lemlist/). -2. Select 'Lead' from the ***Resource*** dropdown list. -3. Select a campaign from the ***Campaign ID*** dropdown list. -4. Click on the gears icon next to the ***Email*** field and click on ***Add Expression***. - -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > fields > Email. You can also add the following expression: `{{$json["fields"]["Email"]}}`. -6. Click on the ***Add Field*** button and select 'First Name'. -7. Click on the gears icon next to the ***First Name*** field and click on ***Add Expression***. -8. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > fields > Name. You can also add the following expression: `{{$json["fields"]["Name"]}}`. -9. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates new leads in Lemlist. - -![Using the Lemlist node to create a new lead](/_images/integrations/builtin/app-nodes/lemlist/lemlist_node.png) - -### 4. Lemlist node (get: lead) - -This node will return the information of the leads that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Lead' from the ***Resource*** dropdown list. -3. Select 'Get' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Email*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Airtable > Output Data > JSON > fields > Email. You can also add the following expression: `{{$node["Airtable"].json["fields"]["Email"]}}`. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns the information about the leads we created in the previous node. - -![Using the Lemlist node to get information about the leads](/_images/integrations/builtin/app-nodes/lemlist/lemlist1_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.lingvanex.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.lingvanex.md index 45e1e51c68b..63aeb453c8b 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.lingvanex.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.lingvanex.md @@ -21,48 +21,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Translate data -## Example Usage - -This workflow allows you to translate cocktail instructions to Italian. You can also find the [workflow](https://n8n.io/workflows/797) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [HTTP Request](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/) -- [LingvaNex]() - -The final workflow should look like the following image. - -![A workflow with the LingvaNex node](/_images/integrations/builtin/app-nodes/lingvanex/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. HTTP Request node (GET) - -This node will make a GET request to the API `https://www.thecocktaildb.com/api/json/v1/1/random.php` to fetch a random cocktail. This information gets passed on to the next node in the workflow. - -1. Enter `https://www.thecocktaildb.com/api/json/v1/1/random.php` in the ***URL*** field. -2. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node makes a GET request to the API and returns information about a random cocktail. - -![Using the HTTP Request node to get the information about a random cocktail](/_images/integrations/builtin/app-nodes/lingvanex/httprequest_node.png) - -### 3. LingvaNex node - -This node will translate the cocktail instructions that we got from the previous node to Italian. To translate the instructions in your language, select your language instead. - -1. First of all, you'll have to enter credentials for the LingvaNex node. You can find out how to do that [here](/integrations/builtin/credentials/lingvanex/). - -2. Click on the gears icon next to the ***Text*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Nodes > HTTP Request > Output Data > JSON > drinks > [item: 0] > strInstructions. You can also add the following expression: `{{$node["HTTP Request"].json["drinks"][0]["strInstructions"]}}`. -4. Select 'Italian' from the ***Translate To*** dropdown list. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node translates the instructions of the cocktail to Italian. - -![Using the LingvaNex node to translate the instructions to Italian](/_images/integrations/builtin/app-nodes/lingvanex/lingvanex_node.png) - - - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.magento2.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.magento2.md index 589598dc000..e666bf2161f 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.magento2.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.magento2.md @@ -36,6 +36,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Create a product * Delete a product * Get a product - * Get all producs + * Get all products * Update a product diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.mailerlite.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.mailerlite.md index 32d08a595e4..fffd0b1207b 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.mailerlite.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.mailerlite.md @@ -25,68 +25,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all subscribers * Update an subscriber -## Example Usage - -This workflow allows you to create, update, and get a subscriber using the MailerLite node. You can also find the [workflow](https://n8n.io/workflows/751) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [MailerLite]() - -The final workflow should look like the following image. - -![A workflow with the MailerLite node](/_images/integrations/builtin/app-nodes/mailerlite/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. MailerLite node (create: subscriber) - -This node will create a new subscriber in MailerLite. We will add the name of the subscriber along with their email. - -1. First of all, you'll have to enter credentials for the MailerLite node. You can find out how to do that [here](/integrations/builtin/credentials/mailerlite/). - -2. Enter the email address in the ***Email*** field. -3. Click on the ***Add Field*** button and select 'Name' from the dropdown list. -4. Enter the name of the subscriber in the ***Name*** field. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new subscriber with their name and email. - -![Using the MailerLite node to create a room](/_images/integrations/builtin/app-nodes/mailerlite/mailerlite_node.png) - -### 3. MailerLite1 node (update: subscriber) - -This node will update the information of the subscriber that we created in the previous node. We will add the information about the city of the subscriber using this node. - - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Subscriber Email*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > MailerLite > Output Data > JSON > email. You can also add the following expression: `{{$node["MailerLite"].json["email"]}}`. -5. Click on the ***Add Field*** button and select 'Custom Fields' from the dropdown list. -6. Click on the ***Add Custom Field*** button. -7. Select 'city' from the ***Field ID*** dropdown list. -8. Enter the name of the city in the ***Value*** field. -9. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the information of the subscriber that we created in the previous node. Here, the node has added information about the city of the subscriber. - -![Using the MailerLite node to update the subscriber](/_images/integrations/builtin/app-nodes/mailerlite/mailerlite1_node.png) - -### 3. MailerLite2 node (get: subscriber) - -This node will return the information of the subscriber that we created using the MailerLite node. - - -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 ***Subscriber Email*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > MailerLite > Output Data > JSON > email. You can also add the following expression: `{{$node["MailerLite"].json["email"]}}`. -5. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the information of the subscriber that we created using the MailerLite node. - -![Using the MailerLite node to get the information of the subscriber](/_images/integrations/builtin/app-nodes/mailerlite/mailerlite2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.mailjet.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.mailjet.md index 77823e6bbb1..20b50002888 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.mailjet.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.mailjet.md @@ -6,7 +6,7 @@ contentType: integration # Mailjet -Use the Mailjet node to automate work in Mailjet, and integrate Mailjet with other applications. n8n has built-in support for a wide range of Mailjet features, including sending emails, and sms. +Use the Mailjet node to automate work in Mailjet, and integrate Mailjet with other applications. n8n has built-in support for a wide range of Mailjet features, including sending emails, and SMS. On this page, you'll find a list of operations the Mailjet node supports and links to more resources. @@ -20,10 +20,10 @@ For usage examples and templates to help you get started, take a look at n8n's [ ## Basic Operations * Email - * Send a email - * Send a email template + * Send an email + * Send an email template * SMS - * Send a sms + * Send an SMS ## Example Usage diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.mandrill.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.mandrill.md index b9314c437d9..afd8315170e 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.mandrill.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.mandrill.md @@ -25,7 +25,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ ## Example Usage -This workflow allows you to send an email using a template via Mandrill. You can also find the [workflow](https://n8n.io/workflows/571) on this website. This example usage workflow uses the following two nodes. +This workflow allows you to send an email using a template using Mandrill. You can also find the [workflow](https://n8n.io/workflows/571) on this website. This example usage workflow uses the following two nodes. - [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) - [Mandrill]() diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.marketstack.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.marketstack.md index 5545f44d4e1..df5a2b03e9f 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.marketstack.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.marketstack.md @@ -1,20 +1,20 @@ --- -title: Marketstack -description: Documentation for the Marketstack node in n8n, a workflow automation platform. Includes details of operations and configuration, and links to examples and credentials information. +title: marketstack +description: Documentation for the marketstack node in n8n, a workflow automation platform. Includes details of operations and configuration, and links to examples and credentials information. contentType: integration --- + +# marketstack -# Marketstack +Use the marketstack node to automate work in marketstack, and integrate marketstack with other applications. n8n has built-in support for a wide range of marketstack features, including getting exchanges, end-of-day data, and tickers. -Use the Marketstack node to automate work in Marketstack, and integrate Marketstack with other applications. n8n has built-in support for a wide range of Marketstack features, including getting exchanges, end-of-day data, and tickers. - -On this page, you'll find a list of operations the Marketstack node supports and links to more resources. +On this page, you'll find a list of operations the marketstack node supports and links to more resources. /// note | Credentials -Refer to [Marketstack credentials](/integrations/builtin/credentials/marketstack/) for guidance on setting up authentication. +Refer to [marketstack credentials](/integrations/builtin/credentials/marketstack/) for guidance on setting up authentication. /// /// note | Examples and templates -For usage examples and templates to help you get started, take a look at n8n's [Marketstack integrations](https://n8n.io/integrations/marketstack/){:target="_blank" .external-link} list. +For usage examples and templates to help you get started, take a look at n8n's [marketstack integrations](https://n8n.io/integrations/marketstack/){:target="_blank" .external-link} list. /// ## Basic operations @@ -31,19 +31,19 @@ For usage examples and templates to help you get started, take a look at n8n's [ This workflow allows you to get the past week's end of day data for a desired stock symbol. This example usage workflow uses the following two nodes. - [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Marketstack]() +- [marketstack]() The final workflow should look like the following image. -![A workflow with the Marketstack node](/_images/integrations/builtin/app-nodes/marketstack/workflow.png) +![A workflow with the marketstack node](/_images/integrations/builtin/app-nodes/marketstack/workflow.png) ### 1. Start node The start node exists by default when you create a new workflow. -### 2. Marketstack node +### 2. marketstack node -1. First enter your credentials for the Marketstack node. You can find out how to do that [here](/integrations/builtin/credentials/marketstack/). +1. First enter your credentials for the marketstack node. You can find out how to do that [here](/integrations/builtin/credentials/marketstack/). 2. Select **End-of-Day Data** from the *Resource* dropdown. 3. The **Get All** *Operation* is selected by default. 4. Enter your desired ticker symbol, `AI` in our example. @@ -51,5 +51,5 @@ The start node exists by default when you create a new workflow. 6. Click the **Add Filter** button and select **Timeframe End Date > Today**. 3. Click on **Test step** to run the workflow. -![The Marketstack node](/_images/integrations/builtin/app-nodes/marketstack/marketstack_node.png) +![The marketstack node](/_images/integrations/builtin/app-nodes/marketstack/marketstack_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.matrix.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.matrix.md index c81e4e9ae94..9694858179e 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.matrix.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.matrix.md @@ -37,129 +37,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Room Member * Get all members -## Example Usage - -This workflow allows you to create a room, invite members from a different room, and send a message to the room that we created using the Matrix node. You can also find the [workflow](https://n8n.io/workflows/724) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Matrix]() -- [IF](/integrations/builtin/core-nodes/n8n-nodes-base.if/) -- [No Operation, do nothing](/integrations/builtin/core-nodes/n8n-nodes-base.noop/) - -The final workflow should look like the following image. - -![A workflow with the Matrix node](/_images/integrations/builtin/app-nodes/matrix/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. Matrix node (create: room) - -This node will create a new room called `n8n` on the Matrix server. - -1. First of all, you'll have to enter credentials for the Matrix node. You can find out how to do that [here](/integrations/builtin/credentials/matrix/). - -2. Select 'Room' from the ***Resource*** dropdown list. -3. Enter `n8n` in the ***Room Name*** field. You can also enter a different name for the room. -4. Enter an alias for the room in the ***Room Alias*** field. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a room `n8n` with an alias `#discussion-n8n:matrix.org`. - -![Using the Matrix node to create a room](/_images/integrations/builtin/app-nodes/matrix/matrix_node.png) - -### 3. Matrix1 node (me: account) - -This node will get your account information from the Matrix server. We are doing this because Matrix will send an invite to all members of the room, including you. Since you are already a member of the room, you will get an error. We will use the data from this node later on to make sure that you don't send an invite to yourself. - - -1. Select the credentials that you entered in the previous node. -2. Select 'Account' from the ***Resource*** dropdown list. -3. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns your user ID. - -![Using the Matrix node to get your account information](/_images/integrations/builtin/app-nodes/matrix/matrix1_node.png) - -### 3. Matrix2 node (getAll: roomMember) - -This node will return the information of all the members in a room. - - -1. Select the credentials that you entered in the previous node. -2. Select 'Room Member' from the ***Resource*** dropdown list. -3. Select a room from the ***Room ID*** dropdown list. We will invite the members of this room later on in the workflow. -4. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the information of all the members in the room that we specified. The output of this node will be passed on to the next nodes in the workflow. - -![Using the Matrix node to get the information of the members in a room](/_images/integrations/builtin/app-nodes/matrix/matrix2_node.png) - -### 4. IF node - -This node will compare your user ID with the user ID of other members. If the user IDs are not equal, the output will be true. - - -1. Click on ***Add Condition*** and select 'String'. -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 > Matrix1 > Output Data > JSON > user_id. You can also add the following expression: `{{$node["Matrix1"].json["user_id"]}}`. -4. Select 'Not Equal' from the ***Operation*** dropdown list. -5. Click on the gears icon next to the ***Value 2*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Matrix2 > Output Data > JSON > user_id. You can also add the following expression: `{{$node["Matrix2"].json["user_id"]}}`. -7. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the information of all the members of the room except your own. - -![Using the IF node to compare your user id with the user id of the members in a room](/_images/integrations/builtin/app-nodes/matrix/if_node.png) - -### 4. Matrix3 node (invite: room) - -This node will send an invitation to the members returned by the previous node to join the room that we created using the Matrix node. - - -1. Connect the node to the 'true' output of the IF node -2. Select the credentials that you entered in the previous node. -3. Select 'Room' from the ***Resource*** dropdown list. -4. Select 'Invite' from the ***Operation*** dropdown list. -5. Click on the gears icon next to the ***Room ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Matrix > Output Data > JSON > room_id. You can also add the following expression: `{{$node["Matrix"].json["room_id"]}}`. -7. Click on the gears icon next to the ***User ID*** field and click on ***Add Expression***. -8. Select the following in the ***Variable Selector*** section: Nodes > IF > Output Data > JSON > user_id. You can also add the following expression: `{{$node["IF"].json["user_id"]}}`. -9. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node sends an invite to join the `n8n` room to the members of the other room. - -![Using the Matrix node to send an invite to join the room](/_images/integrations/builtin/app-nodes/matrix/matrix3_node.png) - -### 5. Matrix4 node (create: message) - -This node will send a message to the new room that we created using the Matrix node. - - -1. Select the credentials that you entered in the previous node. -2. Click on the gears icon next to the ***Room ID*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Nodes > Matrix > Output Data > JSON > room_id. You can also add the following expression: `{{$node["Matrix"].json["room_id"]}}`. -4. Enter a message in the ***Text*** field. -5. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node sends a message to the room that we created with the Matrix node. - -![Using the Matrix node to send a message to the room we created](/_images/integrations/builtin/app-nodes/matrix/matrix4_node.png) - -### 6. 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. We've added this as it can sometimes help others with a better understanding of the workflow, visually. - - -1. Create a ***NoOp*** node connected to the 'false' output of the IF node. -2. Click on ***Test step*** to run the node. - - -![Using the NoOp node](/_images/integrations/builtin/app-nodes/matrix/noop_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.mautic.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.mautic.md index fedf8391e90..362e6e1274e 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.mautic.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.mautic.md @@ -6,7 +6,7 @@ contentType: integration # Mautic -Use the Mautic node to automate work in Mautic, and integrate Mautic with other applications. n8n has built-in support for a wide range of Mautic features, including creating, updating, deleting, and getting companies, and contacts, as well as adding and removing campagin contacts. +Use the Mautic node to automate work in Mautic, and integrate Mautic with other applications. n8n has built-in support for a wide range of Mautic features, including creating, updating, deleting, and getting companies, and contacts, as well as adding and removing campaign contacts. On this page, you'll find a list of operations the Mautic node supports and links to more resources. @@ -35,7 +35,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Create a new contact * Delete a contact * Edit contact's points - * Add/remove contacts from/to the do not contact list + * Add/remove contacts from/to the don't contact list * Get data of a contact * Get data of all contacts * Send email to contact diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.medium.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.medium.md index 94fecdb96aa..8c82d007575 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.medium.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.medium.md @@ -25,30 +25,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all publications -## Example Usage - -This workflow allows you to post an article to a publication on Medium. You can also find the [workflow](https://n8n.io/workflows/594) on the website. This example usage workflow uses the following two nodes. - -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Medium]() - -The final workflow should look like the following image. - -![A workflow with the Medium node](/_images/integrations/builtin/app-nodes/medium/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Medium node - -1. First of all, you'll have to enter credentials for the Medium node. You can find out how to do that [here](/integrations/builtin/credentials/medium/). -2. Toggle ***Publication*** to true. -3. Select the publication from the ***Publication ID*** dropdown list. -4. Enter the title in the ***Title*** field. -5. Select the format from the ***Content Format*** dropdown list. -6. Enter conent of the post in the ***Content*** field. -7. Click on ***Test step*** to run the workflow. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftexcel.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftexcel.md index 554dd4d777b..6d7d49cd919 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftexcel.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftexcel.md @@ -22,8 +22,8 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Table * Adds rows to the end of the table - * Retrieve a list of tablecolumns - * Retrieve a list of tablerows + * Retrieve a list of table columns + * Retrieve a list of table rows * Looks for a specific column value and then returns the matching row * Workbook * Adds a new worksheet to the workbook. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftonedrive.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftonedrive.md index 00ce4b1f85b..ca40dc3fc44 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftonedrive.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftonedrive.md @@ -49,7 +49,7 @@ View [example workflows and related content](https://n8n.io/integrations/microso To perform operations on folders, you need to supply the ID. You can find this: * In the URL of the folder -* By searching for it using the node. You need to do this if using MS 365 (where OneDrive uses Sharepoint behind the scenes): +* By searching for it using the node. You need to do this if using MS 365 (where OneDrive uses SharePoint behind the scenes): 1. Select **Resource** > **Folder**. 2. Select **Operation** > **Search**. 3. In **Query**, enter the folder name. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftteams.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftteams.md index 11b64a85049..236463606fc 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftteams.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsoftteams.md @@ -35,58 +35,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all tasks * Update a task -## Example Usage - -This workflow allows you to create, update and send a message to a channel in Microsoft Teams. You can also find the [workflow](https://n8n.io/workflows/680) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Microsoft Teams]() - -The final workflow should look like the following image. - -![A workflow with the Microsoft Teams node](/_images/integrations/builtin/app-nodes/microsoftteams/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Microsoft Teams node (create: channel) - -1. First of all, you'll have to enter credentials for the Microsoft Teams node. You can find out how to do that [here](/integrations/builtin/credentials/microsoft/). -2. Select the team that you want to use from the ***Team ID*** dropdown list. -3. Enter a name for the channel in the ***Name*** field. -4. Click on ***Test step*** to run the node. - -![Create a channel with the Microsoft Teams node](/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams_node.png) - - -### 3. Microsoft Teams1 node (update: channel) - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Team ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Microsoft Teams > Parameters > teamId. You can also add the following expression: `{{$node["Microsoft Teams"].parameter["teamId"]}}` -5. Click on the gears icon next to the ***Channel ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Microsoft Teams > Output > JSON > id. You can also add the following expression: `{{$node["Microsoft Teams"].json["id"]}}` -7. Click on the ***Add Field*** button and select 'Name' from the dropdown list. -8. Enter a new channel name in the ***Name*** field. -9. Click on ***Test step*** to run the node. - -![Update a Channel with the Microsoft Teams node](/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams1_node.png) - - - -### 4. Microsoft Teams2 node (create: channelMessage) - -1. Select the credentials that you entered in the previous node. -2. Select 'Channel Message (Beta)' from the ***Resource*** dropdown list. -3. Click on the gears icon next to the ***Team ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Microsoft Teams > Parameters > teamId. You can also add the following expression: `{{$node["Microsoft Teams"].parameter["teamId"]}}` -5. Click on the gears icon next to the ***Channel ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Microsoft Teams > Output > JSON > id. You can also add the following expression: `{{$node["Microsoft Teams"].json["id"]}}` -7. Select 'Text' from the ***Message Type*** dropdown list. -8. Enter a message in the ***Message*** field. -9. Click on ***Test step*** to run the node. - -![Send a message with the Microsoft Teams node](/_images/integrations/builtin/app-nodes/microsoftteams/microsoftteams2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsofttodo.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsofttodo.md index 5c7edbb47d3..ea83649e972 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsofttodo.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.microsofttodo.md @@ -39,70 +39,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get All * Update -## Example Usage - -This workflow allows you to create, update and get a task in Microsoft To Do. You can also find the [workflow](https://n8n.io/workflows/1114) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Microsoft To Do]() - -The final workflow should look like the following image. - -![A workflow with the Microsoft To Do node](/_images/integrations/builtin/app-nodes/microsofttodo/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Microsoft To Do node (create: task) - -This node will create a task with the importance level `High` in the Tasks list. You can select a different list and the importance level. - -1. First of all, you'll have to enter credentials for the Microsoft To Do node. You can find out how to do that [here](/integrations/builtin/credentials/microsoft/). -2. Select 'Create' from the ***Operation*** dropdown list. -3. Select a list from the ***List ID*** dropdown list. -4. Enter a subject in the ***Subject*** field. -5. Click on ***Add Field*** and select 'Importance' from the dropdown list. -6. Select 'High' from the ***Importance*** dropdown list. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new task in Microsoft To Do. - -![Create a task with the Microsoft To Do node](/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo_node.png) - -### 3. Microsoft To Do1 node (update: task) - -This node will update the status of the task that we created in the previous node. - - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***List ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Microsoft To Do > Parameters > taskListId. You can also add the following expression: `{{$node["Microsoft To Do"].parameter["taskListId"]}}`. -5. Click on the gears icon next to the ***Task ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Current Node > Input > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -7. Click on the ***Add Field*** button and select 'Status' from the dropdown list. -8. Select 'In progress' from the ***Status*** dropdown list. -9. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the status of the task that we created in the previous node. - -![Update the status of a task using the Microsoft To Do node](/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo1_node.png) - -### 4. Microsoft To Do2 node (get: task) - -This node will get the task that we created earlier. - - -1. Select the credentials that you entered in the previous node. -2. Click on the gears icon next to the ***List ID*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Nodes > Microsoft To Do > Parameters > taskListId. You can also add the following expression: `{{$node["Microsoft To Do"].parameter["taskListId"]}}`. -4. Click on the gears icon next to the ***Task ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node fetches the information of the task that we created earlier. - -![Retrieve the information of tasks using the Microsoft To Do node](/_images/integrations/builtin/app-nodes/microsofttodo/microsofttodo2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.mindee.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.mindee.md index 4ecd583c2ae..30419119cfa 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.mindee.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.mindee.md @@ -27,47 +27,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Predict -## Example Usage - -This workflow allows you to extract information from an image of a receipt using the Mindee node. You can also find the [workflow](https://n8n.io/workflows/702) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [HTTP Request](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/) -- [Mindee]() - -The final workflow should look like the following image. - -![A workflow with the Mindee node](/_images/integrations/builtin/app-nodes/mindee/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - - -### 2. HTTP Request (GET) - -This example workflow uses the HTTP Request node to make a GET request to download the image of a receipt. You can also use other nodes, for example, the [Box](/integrations/builtin/app-nodes/n8n-nodes-base.box/) node, to get the images of the receipts you want to use. - -1. Enter the URL of the image in the ***URL*** field. For example, `https://miro.medium.com/max/1400/0*1T9GkAb93w5NSMsf`. -2. Select 'File' from the ***Response Format*** dropdown list. -3. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the HTTP Request node downloads the image from the URL. This image (binary data) can now be used by the other nodes in the workflow. - -![Using the HTTP Request node to get the file](/_images/integrations/builtin/app-nodes/mindee/httprequest_node.png) - - -### 3. Mindee node (predict: receipt) - -This node will get the image of the receipt (binary data) from the HTTP Request node and extract the information from it. -1. Select 'Receipt' from the ***Resource*** dropdown list. -2. You'll have to enter credentials for the Mindee node. You can find out how to do that [here](/integrations/builtin/credentials/mindee/). -3. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node extracts the information from the image that it got from the HTTP Request node. - -![Using the Mindee node to extract information from receipt](/_images/integrations/builtin/app-nodes/mindee/mindee_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.msg91.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.msg91.md index 7a1cf33d5ff..1631ddb94fa 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.msg91.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.msg91.md @@ -49,6 +49,6 @@ The start node exists by default when you create a new workflow. ### How do I find my Sender ID? -1. Log in to your MSG91 dasboard and click on 'Sender Id' in the left panel. +1. Log in to your MSG91 dashboard and click on 'Sender Id' in the left panel. 2. If you don't already have one, click on *Add Sender Id +*, fill in the details, and click on the *Save Sender Id* button. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.nextcloud.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.nextcloud.md index 9f2792e4c5e..d888b79d68e 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.nextcloud.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.nextcloud.md @@ -34,7 +34,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Move a folder * Share a folder * User - * Invite a user to a NextCloud organization + * Invite a user to a Nextcloud organization * Delete a user. * Retrieve information about a single user. * Retrieve a list of users. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.onesimpleapi.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.onesimpleapi.md index faa7f58ac90..7b6d5c666cb 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.onesimpleapi.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.onesimpleapi.md @@ -3,7 +3,8 @@ title: One Simple API description: Documentation for the One Simple API node in n8n, a workflow automation platform. Includes details of operations and configuration, and links to examples and credentials information. contentType: integration --- - + + # One Simple API Use the One Simple API node to automate work in One Simple API, and integrate One Simple API with other applications. n8n has built-in support for a wide range of One Simple API features, including getting profiles, retrieving information, and generating utilities. @@ -34,3 +35,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get SEO information from website * Create a screenshot from a webpage + \ No newline at end of file diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.openthesaurus.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.openthesaurus.md index e3a1866d5e1..fa4ab5a53c0 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.openthesaurus.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.openthesaurus.md @@ -11,38 +11,13 @@ Use the OpenThesaurus node to automate work in OpenThesaurus, and integrate Open On this page, you'll find a list of operations the OpenThesaurus node supports and links to more resources. /// note | Credentials -OpenThesaurus node does not require authentication. +OpenThesaurus node doesn't require authentication. /// /// note | Examples and templates For usage examples and templates to help you get started, take a look at n8n's [OpenThesaurus integrations](https://n8n.io/integrations/openthesaurus/){:target="_blank" .external-link} list. /// -## Basic Operations +## Operations * Get synonyms for a German word in German -## Example Usage - -This workflow allows you to get synonyms of a German word in German. You can also find the [workflow](https://n8n.io/workflows/806) on the website. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [OpenThesaurus]() - -The final workflow should look like the following image. - -![A workflow with the OpenThesaurus node](/_images/integrations/builtin/app-nodes/openthesaurus/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. OpenThesaurus node - -This node will return synonyms of the word `Hallo` in German. If you want to get synonyms of another German word, use that word instead. - -1. Enter `Hallo` in the ***Text*** field. -2. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node returns the synonyms of the word `Hallo`. - -![Using the OpenThesaurus node to get the synonyms of the word Hallo](/_images/integrations/builtin/app-nodes/openthesaurus/openthesaurus_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.orbit.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.orbit.md index 65a44c7d1b9..8ef5bd6b9ea 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.orbit.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.orbit.md @@ -38,90 +38,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all posts * Delete a post -## Example Usage - -This workflow allows you to create a new member and update their information in Orbit using the Orbit node. It also allows you to create a note and a post for the new member in Orbit. You can also find the [workflow](https://n8n.io/workflows/765) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Orbit]() - -The final workflow should look like the following image. - -![A workflow with the Orbit node](/_images/integrations/builtin/app-nodes/orbit/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - - -### 2. Orbit node (upsert: member) - -This node will create a new member in a workspace in Orbit. We will use the GitHub identity to create a new member. - -1. First of all, you'll have to enter credentials for the Orbit node. You can find out how to do that [here](/integrations/builtin/credentials/orbit/). -2. Select 'Upsert' from the ***Operation*** dropdown list. -3. Select the workspace where you want to create a new member from the ***Workspace*** dropdown list. -4. Click on the ***Add Identity*** button. -5. Select 'GitHub' from the ***Source*** dropdown list. -6. Select 'Username' from the ***Search By*** dropdown list. -7. Enter the GitHub username of the member in the ***Username*** field. -8. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new member in a workspace in Orbit using the GitHub identity. - -![Using the Orbit node to create a new member in a workspace in Orbit](/_images/integrations/builtin/app-nodes/orbit/orbit_node.png) - -### 3. Orbit1 node (update: member) - -This node will update the tags of the member that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Workspace*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Orbit > Parameters > workspaceId. You can also add the following expression: `{{$node["Orbit"].parameter["workspaceId"]}}`. -5. Click on the gears icon next to the ***Member ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Orbit > Output Data > JSON > id. You can also add the following expression: `{{$node["Orbit"].json["id"]}}`. -7. Click on the ***Add Field*** button and select 'Tags to Add'. -8. Enter the tags in the ***Tags to Add*** field. You can add multiple tags by separating them with a comma. -9. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node updates the information of the new member that we created in the previous node. The node adds the tags `n8nConf` and `MLH` to the new member. - -![Using the Orbit node to add tags to a member](/_images/integrations/builtin/app-nodes/orbit/orbit1_node.png) - -### 4. Orbit2 node (create: note) - -This node will create a note for the member that we created using the Orbit node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Note' from the ***Resource*** dropdown list. -3. Click on the gears icon next to the ***Workspace*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Orbit > Parameters > workspaceId. You can also add the following expression: `{{$node["Orbit"].parameter["workspaceId"]}}`. -5. Click on the gears icon next to the ***Member ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Orbit > Output Data > JSON > id. You can also add the following expression: `{{$node["Orbit"].json["id"]}}`. -7. Enter a note in the ***Note*** field. -8. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a note for the member that we created using the Orbit node. - -![Using the Orbit node to create a note for a member](/_images/integrations/builtin/app-nodes/orbit/orbit2_node.png) - -### 5. Orbit3 node (create: post) - -This node will create a post for the member that we created using the Orbit node. - - -1. Select the credentials that you entered in the previous node. -2. Select 'Post' from the ***Resource*** dropdown list. -3. Click on the gears icon next to the ***Workspace*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Orbit > Parameters > workspaceId. You can also add the following expression: `{{$node["Orbit"].parameter["workspaceId"]}}`. -5. Click on the gears icon next to the ***Member ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Orbit > Output Data > JSON > id. You can also add the following expression: `{{$node["Orbit"].json["id"]}}`. -7. Enter a URL for the post in the ***URL*** field. -8. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a post for the member that we created using the Orbit node. - -![Using the Orbit node to create a post for a member](/_images/integrations/builtin/app-nodes/orbit/orbit3_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.paddle.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.paddle.md index 21230f6b07a..0b7e86c8e08 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.paddle.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.paddle.md @@ -35,28 +35,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all users -## Example Usage -This workflow allows you to create a coupon on Paddle. You can also find the [workflow](https://n8n.io/workflows/659) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Paddle]() - -The final workflow should look like the following image. - -![A workflow with the Paddle node](/_images/integrations/builtin/app-nodes/paddle/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - - -### 2. Paddle node (create: coupon) - -1. First of all, you'll have to enter credentials for the Paddle node. You can find out how to do that [here](/integrations/builtin/credentials/paddle/). -2. Enter the discount amount in the ***Discount Amount*** field. -3. Click on the ***Add Field*** button and select 'Coupon Code' from the dropdown list. -4. Enter the coupon code in the ***Coupon Code*** field. -5. Click on ***Test step*** to run the node. - -![Using the Paddle node to create a coupon](/_images/integrations/builtin/app-nodes/paddle/paddle_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.pagerduty.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.pagerduty.md index 9fe246a377d..2bf76f5e134 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.pagerduty.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.pagerduty.md @@ -34,62 +34,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get a user -## Example Usage - -This workflow allows you to create, update, and get an incident on PagerDuty. You can also find the [workflow](https://n8n.io/workflows/411) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [PagerDuty]() - -The final workflow should look like the following image. - -![A workflow with the PagerDuty node](/_images/integrations/builtin/app-nodes/pagerduty/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - - -### 2. PagerDuty node (create: incident) - -1. First of all, you'll have to enter credentials for the PagerDuty node. You can find out how to do that [here](/integrations/builtin/credentials/pagerduty/). -2. Enter the title of the incident in the ***Title*** field. -3. Select the ***Service ID*** from the dropdown list. -4. Enter your email in the ***Email*** field. -5. Click on ***Test step*** to run the node. - -![Using the PagerDuty node to create an incident](/_images/integrations/builtin/app-nodes/pagerduty/pagerduty_node.png) - - - -### 3. PagerDuty1 node (update: incident) - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Incident ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > PagerDuty > Output Data > JSON > id. You can also add the following expression: `{{$node["PagerDuty"].json["id"]}}`. -5. Click on the gears icon next to the ***Email*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > PagerDuty > Parameters > email. You can also add the following expression: `{{$node["PagerDuty"].parameter["email"]}}`. -7. Click on the ***Add Field*** button and click on ***Title***. -8. Enter the name of the updated title in the ***Title*** field. -9. Click on ***Test step*** to run the node. - - -![Using the PagerDuty node to update an incident](/_images/integrations/builtin/app-nodes/pagerduty/pagerduty1_node.png) - - - -### 4. PagerDuty2 node (get: incident) - -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 ***Incident ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > PagerDuty > Output Data > JSON > id. You can also add the following expression: `{{$node["PagerDuty"].json["id"]}}`. -5. Click on ***Test step*** to run the node. - - -![Using the PagerDuty node to get an incident](/_images/integrations/builtin/app-nodes/pagerduty/pagerduty2_node.png) - - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.paypal.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.paypal.md index 1a1c600b13c..95510cda924 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.paypal.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.paypal.md @@ -6,7 +6,7 @@ contentType: integration # PayPal -Use the PayPal node to automate work in PayPal, and integrate PayPal with other applications. n8n has built-in support for a wide range of PayPal features, including including creating a batch payout and canceling unclaimed payout items. +Use the PayPal node to automate work in PayPal, and integrate PayPal with other applications. n8n has built-in support for a wide range of PayPal features, including creating a batch payout and canceling unclaimed payout items. On this page, you'll find a list of operations the PayPal node supports and links to more resources. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.peekalink.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.peekalink.md index 0b4c50e5423..298aaecd0a6 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.peekalink.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.peekalink.md @@ -22,74 +22,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Check whether preview for a given link is available * Return the preview for a link -## Example Usage -This workflow allows you to check if preview for a link is available and return the link preview. You can also find the [workflow](https://n8n.io/workflows/935) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Peekalink]() -- [IF](/integrations/builtin/core-nodes/n8n-nodes-base.if/) -- [No Operation, do nothing](/integrations/builtin/core-nodes/n8n-nodes-base.noop/) - -The final workflow should look like the following image. - -![A workflow with the Peekalink node](/_images/integrations/builtin/app-nodes/peekalink/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. Peekalink node (create: room) - -This node will check whether a preview for the specified link is available. - -1. First of all, you'll have to enter credentials for the Peekalink node. You can find out how to do that [here](/integrations/builtin/credentials/peekalink/). -2. Select 'Is available' from the ***Operation*** dropdown list. -3. Enter a URL in the ***URL*** field. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns information about whether a preview for the specified link is available. - -![Using the Peekalink node to check whether preview for a given link is available](/_images/integrations/builtin/app-nodes/peekalink/peekalink_node.png) - -### 3. IF node - -This node will check the response from the previous node. If the previous node returned `true`, the IF node will also return `true`, otherwise the IF node will return `false`. - - -1. Click on ***Add Condition*** and select 'Boolean'. -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: Current Node > Input Data > JSON > isAvailable. You can also add the following expression: `{{$json["isAvailable"]}}`. -4. Toggle ***Value 2*** to `true`. -5. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the data from the previous node for the `true` branch. - -![Using the IF node to check the response from the previous node](/_images/integrations/builtin/app-nodes/peekalink/if_node.png) - -### 4. Peekalink node (preview) - -This node will return the preview of the URL that you specified in the Peekalink node. - - -1. Connect the node to the 'true' output of the IF node -2. Select the credentials that you entered in the previous Peekalink node. -3. Click on the gears icon next to the ***URL*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Peekalink > Parameters > url. You can also add the following expression: `{{$node["Peekalink"].parameter["url"]}}`. -5. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the preview of the URL that you specified in the Peekalink node. - -![Using the Peekalink node to get the preview of a URL](/_images/integrations/builtin/app-nodes/peekalink/peekalink1_node.png) - -### 5. 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. We've added this as it can sometimes help others with a better understanding of the workflow, visually. - - -1. Create a ***NoOp*** node connected to the 'false' output of the IF node. -2. Click on ***Test step*** to run the node. - - -![Using the NoOp node](/_images/integrations/builtin/app-nodes/peekalink/noop_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.phantombuster.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.phantombuster.md index 12786b224a0..82903dd93a1 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.phantombuster.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.phantombuster.md @@ -1,20 +1,20 @@ --- -title: Phantombuster -description: Documentation for the Phantombuster node in n8n, a workflow automation platform. Includes details of operations and configuration, and links to examples and credentials information. +title: PhantomBuster +description: Documentation for the PhantomBuster node in n8n, a workflow automation platform. Includes details of operations and configuration, and links to examples and credentials information. contentType: integration --- -# Phantombuster +# PhantomBuster -Use the Phantombuster node to automate work in Phantombuster, and integrate Phantombuster with other applications. n8n has built-in support for a wide range of Phantombuster features, including adding, deleting, and getting agents. +Use the PhantomBuster node to automate work in PhantomBuster, and integrate PhantomBuster with other applications. n8n has built-in support for a wide range of PhantomBuster features, including adding, deleting, and getting agents. -On this page, you'll find a list of operations the Phantombuster node supports and links to more resources. +On this page, you'll find a list of operations the PhantomBuster node supports and links to more resources. /// note | Credentials -Refer to [Phantombuster credentials](/integrations/builtin/credentials/phantombuster/) for guidance on setting up authentication. +Refer to [PhantomBuster credentials](/integrations/builtin/credentials/phantombuster/) for guidance on setting up authentication. /// /// note | Examples and templates -For usage examples and templates to help you get started, take a look at n8n's [Phantombuster integrations](https://n8n.io/integrations/phantombuster/){:target="_blank" .external-link} list. +For usage examples and templates to help you get started, take a look at n8n's [PhantomBuster integrations](https://n8n.io/integrations/phantombuster/){:target="_blank" .external-link} list. /// ## Operations diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.philipshue.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.philipshue.md index ceb104bfde4..63b95b18e41 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.philipshue.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.philipshue.md @@ -26,25 +26,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Update a light -## Example Usage -This workflow allows you to turn on a light and set its brightness using the Philips Hue node. You can also find the [workflow](https://n8n.io/workflows/666) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Philips Hue]() - -The final workflow should look like the following image. - -![A workflow with the Philips Hue node](/_images/integrations/builtin/app-nodes/philipshue/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Philips Hue node (update: light) - -1. First of all, you'll have to enter credentials for the Philips Hue node. You can find out how to do that [here](/integrations/builtin/credentials/philipshue/). -2. Enter the light id in the ***Light ID*** field. -3. Click on ***Add Field*** and select 'Brightness' from the dropdown list. -4. Enter a value between 1 and 254 for the brightness in the ***Brightness*** field. -5. Click on ***Test step*** to run the node. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.posthog.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.posthog.md index 85873b3aafc..1879d7ec929 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.posthog.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.posthog.md @@ -29,48 +29,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Track a page * Track a screen -## Example Usage - -This workflow allows you to create an event in PostHog when a request is made to a webhook URL. You can also find the [workflow](https://n8n.io/workflows/968) on n8n.io. This example usage workflow uses the following nodes. -- [Webhook](/integrations/builtin/core-nodes/n8n-nodes-base.webhook/) -- [PostHog]() - -The final workflow should look like the following image. - -![A workflow with the PostHog node](/_images/integrations/builtin/app-nodes/posthog/workflow.png) - -### 1. Webhook node - -This node will trigger the workflow. We will make a GET request to the test webhook URL and pass on a query parameter called `event`. - -1. Click on ***Webhook URLs*** and select the 'Test' tab. -2. Copy the displayed URL. We will make a GET request to this URL later on. -3. Save the workflow to register the webhook. -4. Click on ***Test step*** to run the node. -5. In a new browser tab, paste the URL that you copied in the previous step and append `?event=login` to it. Your URL should look similar to the following URL:`https://your-n8n.url/webhook/path?event=login`. Here, we are passing a query parameter called `event` and assigning the value `login` to it. -6. Press Enter (or Return) to make a request to the test webhook URL. - -In the screenshot below, you will notice that the node triggers the workflow and receives a query parameter. We will use the value of the query parameter in the next node in the workflow. - -![Using the Webhook node to trigger the workflow](/_images/integrations/builtin/app-nodes/posthog/webhook_node.png) - -### 2. PostHog node (create:customer) - -This node will create a new event in PostHog. - -1. First of all, you'll have to enter credentials for the PostHog node. You can find out how to do that [here](/integrations/builtin/credentials/posthog/). -2. Click on the gears icon next to the ***Event*** field and click on ***Add Expression***. - -3. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > query > event. You can also add the following expression: `{{$json["query"]["event"]}}`. - -4. Enter a distinct id in the ***Distinct ID*** field. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new event in PostHog. - -![Using the PostHog node to create a new event](/_images/integrations/builtin/app-nodes/posthog/posthog_node.png) - -/// note | Activate workflow for production -This example workflow uses the Webhook node, which is a Trigger node. You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered every time a GET request is sent to the ***Production*** webhook URL. -/// diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.profitwell.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.profitwell.md index 5ee1e884600..57e2b0d8154 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.profitwell.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.profitwell.md @@ -20,6 +20,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ ## Operations * Company - * Get your companys ProfitWell account settings + * Get your company's ProfitWell account settings * Metric * Retrieve financial metric broken down by day for either the current month or the last diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.raindrop.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.raindrop.md index 9f583bce834..a63c54a22a1 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.raindrop.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.raindrop.md @@ -37,82 +37,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * User * Get -## Example Usage - -This workflow allows you to create a collection and create, update, and get a bookmark in Raindrop. You can also find the [workflow](https://n8n.io/workflows/959) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Raindrop]() - -The final workflow should look like the following image. - -![A workflow with the Raindrop node](/_images/integrations/builtin/app-nodes/raindrop/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. Raindrop node (create: collection) - -This node will create a new collection in Raindrop. - -1. First of all, you'll have to enter credentials for the Raindrop node. You can find out how to do that [here](/integrations/builtin/credentials/raindrop/). -2. Select 'Create' from the ***Operation*** dropdown list. -3. Enter a title in the ***Title*** field. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new collection with the title `n8n-docs`. - -![Using the Raindrop node to create a new collection](/_images/integrations/builtin/app-nodes/raindrop/raindrop_node.png) - -### 3. Raindrop1 node (create: bookmark) - -This node will create a new bookmark and add it to the collection that we created in the previous node. - - -1. Select the credentials that you entered in the previous node. -2. Select 'Bookmark' from the ***Resource*** dropdown list. -3. Select 'Create' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Collection*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > _id. You can also add the following expression: `{{$json["_id"]}}`. -6. Enter `https://docs.n8n.io` in the ***Link*** field. -7. Click on ***Add Field*** and select 'Title' from the dropdown list. -8. Enter `Documentation` in the ***Title*** field. -9. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new bookmark with the title `Documentation`. - -![Using the Raindrop node to create a new bookmark](/_images/integrations/builtin/app-nodes/raindrop/raindrop1_node.png) - -### 4. Raindrop2 node (update: bookmark) - -This node will update the bookmark that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Bookmark' from the ***Resource*** dropdown list. -3. Select 'Update' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Bookmark ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > _id. You can also add the following expression: `{{$json["_id"]}}`. -6. Click on ***Add Field*** and select 'Title' from the dropdown list. -7. Enter `n8n Documentation` in the ***Title*** field. -8. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the title of the bookmark that we created in the previous node. - -![Using the Raindrop node to update a bookmark](/_images/integrations/builtin/app-nodes/raindrop/raindrop2_node.png) - -### 5. Raindrop3 node (get: bookmark) - -This node will return the information about the bookmark that we created earlier. - -1. Select the credentials that you entered in the previous node. -2. Select 'Bookmark' from the ***Resource*** dropdown list. -3. Click on the gears icon next to the ***Bookmark ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > _id. You can also add the following expression: `{{$json["_id"]}}`. -5. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the information on the bookmark that we created earlier. - -![Using the Raindrop node to get a bookmark](/_images/integrations/builtin/app-nodes/raindrop/raindrop3_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.reddit.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.reddit.md index 0d10dc61e67..c4acfaac1d9 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.reddit.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.reddit.md @@ -38,62 +38,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * User * Get -## Example Usage - -This workflow allows you to create a post a Reddit and add a comment to that post. You can also find the [workflow](https://n8n.io/workflows/928) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Reddit]() - -The final workflow should look like the following image. - -![A workflow with the Reddit node](/_images/integrations/builtin/app-nodes/reddit/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. Reddit node (create: post) - -This node will create a post under the subreddit `n8n`. If you want to create a post under a different subreddit, enter the name of that subreddit instead. - -1. First of all, you'll have to enter credentials for the Reddit node. You can find out how to do that [here](/integrations/builtin/credentials/reddit/). -2. Enter `n8n` in the ***Subreddit*** field. -3. Enter a title in the ***Title*** field. -4. Enter the content of the post in the ***Text*** field. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new post under the subreddit `n8n`. - -![Using the Reddit node to create a post](/_images/integrations/builtin/app-nodes/reddit/reddit_node.png) - -### 3. Reddit1 node (get: post) - -This node will retrieve the post that we created using the previous node. - -1. Select the credentials you entered in the previous node. -2. Select 'Get' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Subreddit*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Reddit > Parameters > subreddit. You can also add the following expression: `{{$node["Reddit"].parameter["subreddit"]}}`. -5. Click on the gears icon next to the ***Post ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns the information of the post that we created in the previous node. - -![Using the Reddit node to get a post](/_images/integrations/builtin/app-nodes/reddit/reddit1_node.png) - -### 4. Reddit node (create: postComment) - -This node will add a comment to the post that we created earlier. - -1. Select the credentials you entered in the previous node. -2. Select 'Post Comment' from the ***Resource*** dropdown list. -3. Click on the gears icon next to the ***Post ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -5. Enter your comment in the ***Comment Text*** field. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node comments on the post that we created earlier. - -![Using the Reddit node to create a comment](/_images/integrations/builtin/app-nodes/reddit/reddit2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.redis.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.redis.md index 84c60686cf5..f41bd647f4b 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.redis.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.redis.md @@ -6,7 +6,7 @@ contentType: integration # Redis -Use the Redis node to automate work in Redis, and integrate Redis with other applications. n8n has built-in support for a wide range of Redis features, including deleting keys, getting key values, setting key value, and publishing messages to the redis channel. +Use the Redis node to automate work in Redis, and integrate Redis with other applications. n8n has built-in support for a wide range of Redis features, including deleting keys, getting key values, setting key value, and publishing messages to the Redis channel. On this page, you'll find a list of operations the Redis node supports and links to more resources. @@ -22,8 +22,8 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Delete a key from Redis. * Get the value of a key from Redis. * Returns generic information about the Redis instance. -* Atomically increments a key by 1. Creates the key if it does not exist. +* Atomically increments a key by 1. Creates the key if it doesn't exist. * Returns all the keys matching a pattern. -* Set the value of a key in redis. -* Publish message to redis channel. +* Set the value of a key in Redis. +* Publish message to Redis channel. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.rocketchat.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.rocketchat.md index 524d799ef5f..3b3d6b5d331 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.rocketchat.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.rocketchat.md @@ -22,26 +22,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Chat * Post a message to a channel or a direct message -## Example Usage - -This workflow allows you to post a message to a channel in Rocket.Chat. You can also find the [workflow](https://n8n.io/workflows/462) on the website. This example usage workflow would use the following two nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Rocket.Chat]() - -The final workflow should look like the following image. - -![A workflow with the Rocket.Chat node](/_images/integrations/builtin/app-nodes/rocketchat/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Rocket.Chat node - -1. First of all, you'll have to enter credentials for the Rocket.Chat node. You can find out how to do that [here](/integrations/builtin/credentials/rocketchat/). -2. Enter the name of the channel where you want to post the message in the *Channel* field. For example, `#general`. -3. Enter the message in the *Text* field. -5. Click on *Execute Node* to run the workflow. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.rundeck.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.rundeck.md index 1e3bcf93955..070c03b4d76 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.rundeck.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.rundeck.md @@ -53,6 +53,6 @@ The start node exists by default when you create a new workflow. 2. Open the project that contains the job you want to use with n8n. 3. In the sidebar, click on 'JOBS'. 4. Under 'All Jobs', click on the name of the job you want to use with n8n. -5. In the top left corner, under the name of the job, copy the string that is displayed in smaller font below the job name. This is your job ID. +5. In the top left corner, under the name of the job, copy the string that's displayed in smaller font below the job name. This is your job ID. 6. Paste this job ID in the `Job Id` field in n8n. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.salesforce.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.salesforce.md index ee25283ca3d..cc837157644 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.salesforce.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.salesforce.md @@ -6,7 +6,7 @@ contentType: integration # Salesforce -Use the Salesforce node to automate work in Salesforce, and integrate Salesforce with other applications. n8n has built-in support for a wide range of Salesforce features, including creating, updating, deleting, and getting accounts, attachements, cases, and leads, as well as uploading documents. +Use the Salesforce node to automate work in Salesforce, and integrate Salesforce with other applications. n8n has built-in support for a wide range of Salesforce features, including creating, updating, deleting, and getting accounts, attachments, cases, and leads, as well as uploading documents. On this page, you'll find a list of operations the Salesforce node supports and links to more resources. @@ -106,53 +106,6 @@ To add custom fields to your request: You can then find and add your custom fields. -## Example Usage -This workflow allows you to create, update, and add a note to a lead in Salesforce. You can also find the [workflow](https://n8n.io/workflows/664) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Salesforce]() - -The final workflow should look like the following image. - -![A workflow with the Salesforce node](/_images/integrations/builtin/app-nodes/salesforce/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Salesforce node (create: lead) - -1. First of all, you'll have to enter credentials for the Salesforce node. You can find out how to do that [here](/integrations/builtin/credentials/salesforce/). -2. Enter the name of the company in the ***Company*** field. -3. Enter the last name of the contact person in the ***Last Name*** field. -4. Click on ***Test step*** to run the node. - -![Create a lead with the Salesforce node](/_images/integrations/builtin/app-nodes/salesforce/salesforce_node.png) - - -### 3. Salesforce1 node (update: lead) - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Lead ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Salesforce > Output Data > JSON > id. You can also add the following expression: `{{$node["Salesforce"].json["id"]}}` -5. Click on the ***Add Field*** button and select 'City' from the dropdown list. -6. Enter a city name in the ***City*** field. -7. Click on ***Test step*** to run the node. - -![Update a lead with the Salesforce node](/_images/integrations/builtin/app-nodes/salesforce/salesforce1_node.png) - - - -### 4. Salesforce2 node (addNote: lead) - -1. Select the credentials that you entered in the previous node. -2. Select ***Add Note*** from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Lead ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Salesforce > Output Data > JSON > id. You can also add the following expression: `{{$node["Salesforce"].json["id"]}}` -5. Enter the note in the ***Title*** field. -6. Click on ***Test step*** to run the node. - -![Add a note to a lead with the Salesforce node](/_images/integrations/builtin/app-nodes/salesforce/salesforce2_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.securityscorecard.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.securityscorecard.md index 5c9506868db..bf91a1d03fc 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.securityscorecard.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.securityscorecard.md @@ -45,62 +45,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Generate a report * Get list of recently generated report -## Example Usage - -This workflow allows you to generate, retrieve, and download a report using the SecurityScorecard node. You can also find the [workflow](https://n8n.io/workflows/920) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [SecurityScorecard]() - -The final workflow should look like the following image. - -![A workflow with the SecurityScorecard node](/_images/integrations/builtin/app-nodes/securityscorecard/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - -### 2. SecurityScorecard node (generate: report) - -This node will generate a full scorecard report for a company that we specify. - -1. First of all, you'll have to enter credentials for the SecurityScorecard node. You can find out how to do that [here](/integrations/builtin/credentials/securityscorecard/). -2. Select 'Report' from the ***Resource*** dropdown list. -3. Select 'Generate' from the ***Operation*** dropdown list. -4. Select 'Full Scorecard' from the ***Report*** dropdown list. -5. Enter the domain of the company in the ***Scorecard Identifier*** field. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node generates a full scorecard report of `n8n.io`. - -![Using the SecurityScorecard node to create full scorecard report](/_images/integrations/builtin/app-nodes/securityscorecard/securityscorecard_node.png) - -### 3. SecurityScorecard1 node (getAll: report) - -This node will return a report from SecurityScorecard. - -1. Select the credentials that you entered in the previous node. -2. Select 'Report' from the ***Resource*** dropdown list. -3. Select 'Get All' from the ***Operation*** dropdown list. -4. Enter `1` in the ***Limit*** field. By setting it to one, the node will return a single report. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns a report from SecurityScroecard. - -![Using the SecurityScorecard node to get a report](/_images/integrations/builtin/app-nodes/securityscorecard/securityscorecard1_node.png) - -### 4. SecurityScorecard2 node (download: report) - -This node will download the report that got returned by the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Report' from the ***Resource*** dropdown list. -3. Select 'Download' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Report URL*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > download_url. You can also add the following expression: `{{$json["download_url"]}}`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node downloads the report that was returned by the previous node. - -![Using the SecurityScorecard node to download a report](/_images/integrations/builtin/app-nodes/securityscorecard/securityscorecard2_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.sendy.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.sendy.md index 606d53c19cf..dd5edf3e67b 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.sendy.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.sendy.md @@ -28,55 +28,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Unsubscribe user from a list * Get the status of subscriber -## Example Usage - -This workflow allows you to add a subscriber to a list and create and send a campaign using the Sendy node. You can also find the [workflow](https://n8n.io/workflows/727) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Sendy]() - -The final workflow should look like the following image. - -![A workflow with the Sendy node](/_images/integrations/builtin/app-nodes/sendy/workflow.png) - -### 1. Start node - -The Start node exists by default when you create a new workflow. - - -### 2. Sendy node (add: subscriber) - -This node will add a subscriber to a list in Sendy. If you don't already have a list in Sendy, make sure to create one. - -1. First of all, you'll have to enter credentials for the Sendy node. You can find out how to do that [here](/integrations/builtin/credentials/sendy/). -2. Enter the subscriber's email address in the ***Email*** field. -3. In your Sendy dashboard, click on 'View all lists' and copy the ID of the list to which you want to add the subscriber. Paste this list ID in the List ID field in n8n. -4. Click on the ***Add Field*** button and select 'Name'. -5. Enter the name of the subscriber in the ***Name*** field. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node adds a subscriber with their name to the list that we specify. - -![Using the Sendy node to add a subscriber to a list](/_images/integrations/builtin/app-nodes/sendy/sendy_node.png) - -### 3. Sendy1 node (create: campaign) - -This node will create a campaign with the title 'Welcome to n8n' and send it to the subscribers of the list that we specify. - -1. Select the credentials that you entered in the previous node. -2. Select 'Campaign' from the ***Resource*** dropdown list. -3. Enter the name of the sender in the ***From Name*** field. -4. Enter the email address of the sender in the ***From Email*** field. -5. Enter the email address where the subscribers can reply to in the ***Reply To*** field. -6. Enter the title of the campaign in the ***Title*** field. -7. Enter the subject of the email in the ***Subject*** field. -8. Enter the HTML snippet of the email campaign in the ***HTML Text*** field. -9. Toggle ***Send Campaign*** to true. -10. Click on the ***Add Field*** button and select 'List IDs'. -11. Click on the gears icon next to the ***List IDs*** field and click on ***Add Expression***. -12. Select the following in the ***Variable Selector*** section: Nodes > Sendy > Parameters > listId. You can also add the following expression: `{{$node["Sendy"].parameter["listId"]}}`. -13. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates the campaign with the title `Welcome to n8n` and sends it to the list that we specify. - -![Using the Sendy node to create and send a campaign to a list](/_images/integrations/builtin/app-nodes/sendy/sendy1_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.storyblok.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.storyblok.md index d84492ca11a..2c166cc07ba 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.storyblok.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.storyblok.md @@ -34,53 +34,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Unpublish a story -## Example Usage -This workflow allows you to get all the stories that have the slug starting with `release` and publish them using the Storyblok node. You can also find the [workflow](https://n8n.io/workflows/768) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Storyblok]() - -The final workflow should look like the following image. - -![A workflow with the Storyblok node](/_images/integrations/builtin/app-nodes/storyblok/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Storyblok node (getAll: story) - -This node will get all the stories that have a slug starting with `release`. - -1. Select 'Management API' from the ***Source*** dropdown list. -2. You'll have to enter credentials for the Storyblok node. You can find out how to do that [here](/integrations/builtin/credentials/storyblok/). -3. Select 'Get All' from the ***Operation*** dropdown list. -4. Select a space from the ***Space ID*** dropdown list. -5. Click on the ***Add Filter*** button. -6. Enter `release` in the ***Starts With*** field. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns all the stories that have a slug starting with `release`. - -![Using the Storyblok node to get filtered stories](/_images/integrations/builtin/app-nodes/storyblok/storyblok_node.png) - - - -### 3. Storyblok1 node (publish: story) - -This node will publish the stories that were returned by the previous node. - -1. Select 'Management API' from the ***Source*** dropdown list. -2. Select the credentials that you entered in the previous node. -3. Select 'Publish' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Space ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Storyblok > Parameters > space. You can also add the following expression: `{{$node["Storyblok"].parameter["space"]}}`. -6. Click on the gears icon next to the ***Story ID*** field and click on ***Add Expression***. -7. Select the following in the ***Variable Selector*** section: Nodes > Storyblok > Output Data > JSON > id. You can also add the following expression: `{{$node["Storyblok"].json["id"]}}`. -8. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node publishes the stories that were returned by the previous node. - -![Using the Storyblok node to publish stories](/_images/integrations/builtin/app-nodes/storyblok/storyblok1_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.taiga.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.taiga.md index 643098d46d4..1776ca4474b 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.taiga.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.taiga.md @@ -28,57 +28,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ -## Example Usage -This workflow allows you to create, update, and get an issue on Taiga. You can also find the [workflow](https://n8n.io/workflows/685) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Taiga]() - -The final workflow should look like the following image. - -![A workflow with the Taiga node](/_images/integrations/builtin/app-nodes/taiga/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - - -### 2. Taiga node (create: issue) - -1. First of all, you'll have to enter credentials for the Taiga node. You can find out how to do that [here](/integrations/builtin/credentials/taiga/). -2. Select the project ID from the ***Project ID*** dropdown list. -3. Enter the subject of the issue in the ***Subject*** field. -4. Click on ***Test step*** to run the node. - -![Using the Taiga node to create an issue](/_images/integrations/builtin/app-nodes/taiga/taiga_node.png) - - - -### 3. Taiga1 node (update: issue) - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Project ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Taiga > Output Data > JSON > project. You can also add the following expression: `{{$node["Taiga"].json["project"]}}`. -5. Click on the gears icon next to the ***Issue ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Taiga > Output Data > JSON > id. You can also add the following expression: `{{$node["Taiga"].json["id"]}}`. -7. Click on the ***Add Field*** button and select 'Description' from the dropdown list. -8. Enter the description of the issue in the ***Description*** field. -9. Click on ***Test step*** to run the node. - - -![Using the Taiga node to update an issue](/_images/integrations/builtin/app-nodes/taiga/taiga1_node.png) - - - -### 4. Taiga2 node (get: issue) - -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 ***Issue ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Taiga > Output Data > JSON > id. You can also add the following expression: `{{$node["Taiga"].json["id"]}}`. -5. Click on ***Test step*** to run the node. - - -![Using the Taiga node to get an issue](/_images/integrations/builtin/app-nodes/taiga/taiga2_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.travisci.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.travisci.md index 519436b3d53..b3433ce3183 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.travisci.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.travisci.md @@ -26,28 +26,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Restart a build * Trigger a build -## Example Usage - -This workflow allows you to trigger a build using the Travis CI node. You can also find the [workflow](https://n8n.io/workflows/658) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Travis CI]() - -The final workflow should look like the following image. - -![A workflow with the Travis CI node](/_images/integrations/builtin/app-nodes/travisci/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - - -### 2. Travis CI node (trigger: build) - -1. First of all, you'll have to enter credentials for the Travis CI node. You can find out how to do that [here](/integrations/builtin/credentials/travisci/). -2. Select 'Trigger' from the ***Operation*** dropdown list. -3. Enter the repository name in the ***Slug*** field in the `ownerName/repositoryName` format. -4. Enter the branch name in the ***Branch*** field. -5. Click on ***Test step*** to run the node. - -![Using the Travis CI node to trigger a build](/_images/integrations/builtin/app-nodes/travisci/travisci_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.twist.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.twist.md index 459272d9494..1125aea3fa6 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.twist.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.twist.md @@ -46,81 +46,6 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all threads * Update a thread -## Example Usage - -This workflow allows you to create and update a channel as well as send a message on Twist. You can also find the [workflow](https://n8n.io/workflows/826) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Twist]() - -The final workflow should look like the following image. - -![A workflow with the Twist node](/_images/integrations/builtin/app-nodes/twist/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - - -### 2. Twist node (create: channel) - -This node will create a channel `n8n-docs` and add a user to the channel. -1. First of all, you'll have to enter credentials for the Twist node. You can find out how to do that [here](/integrations/builtin/credentials/twist/). - -2. Select 'Channel' from the ***Resource*** dropdown list. -3. Select a workspace from the ***Workspace ID*** dropdown list. -4. Enter `n8n-docs` in the ***Name*** field. If you want to create a channel with a different name, enter that name instead. -5. Click on ***Add Field*** and select 'User IDs' from the dropdown list. -6. Select the users from the ***User IDs*** dropdown list. The users you select will be added to the channel. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new channel named `n8n-docs`, and adds a user to the channel. - -![Using the Twist node to create a channel](/_images/integrations/builtin/app-nodes/twist/twist_node.png) - -### 3. Twist1 node (update: channel) - -This node will update the description of the channel that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Channel' from the ***Resource*** dropdown list. -3. Select 'Update' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Channel ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Twist > Output Data > JSON > id. You can also add the following expression: `{{$node["Twist"].json["id"]}}`. -6. Click on ***Add Field*** and select 'Description' from the dropdown list. -7. Enter a description in the ***Description*** field. -8. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node adds a description to the channel that we created in the previous node. - -![Using the Twist node to update the description of a channel](/_images/integrations/builtin/app-nodes/twist/twist1_node.png) - -### 4. Twist2 node (create: messageConversation) - -This node will send a message to the General conversation on Twist. The message contains an action button that navigates to `https://docs.n8n.io`. - -1. Select the credentials that you entered in the previous node. -2. Select a workspace from the ***Workspace ID*** dropdown list. -3. Select 'General' from the ***Conversation ID*** dropdown list. If you want to send a message to a different conversation, select that conversation instead. -4. Click on the gears icon next to the ***Channel ID*** field and click on ***Add Expression***. -5. Enter the following text in the ***Content*** field: -``` -Hey [Harshil](twist-mention://475370)! -You have been added to the {{$node["Twist"].json["name"]}} channel. -Click on the button below to quickly navigate to the documentation website. -``` -The above message mentions the user `Harshil`. To mention a user in your workspace you need to use their User ID. Refer to the [FAQs](#where-can-i-get-the-user-id) to learn how to get a User ID. - -6. Click on ***Add options*** and select 'Actions' from the dropdown list. -7. Click on the ***Add Action*** button. -8. Select 'Open URL' from the ***Action*** dropdown list. -9. Enter `Documentation site` in the ***Button Text*** field. -10. Select 'Action' from the ***Type*** dropdown list. -11. Enter `https://docs.n8n.io` in the ***URL*** field. -12. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node sends a message to the General conversation and mentions the user. - -![Using the Twist node to send a message](/_images/integrations/builtin/app-nodes/twist/twist2_node.png) ## FAQs diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.uproc.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.uproc.md index c065d6bad8a..8ce833e052b 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.uproc.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.uproc.md @@ -17,7 +17,7 @@ Refer to [uProc credentials](/integrations/builtin/credentials/uproc/) for guida For usage examples and templates to help you get started, take a look at n8n's [uProc integrations](https://n8n.io/integrations/uproc/){:target="_blank" .external-link} list. /// -## Basic Operations +## Operations **Audio** @@ -34,7 +34,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Discover if the email has a social network presence - Check if an email has a valid format - Check if an email domain belongs to a disposable email service -- Check if email belongs to free service provider like Gmail, Hotmail +- Check if email belongs to free service provider like Gmail - Check if email is catchall - Discover if an email exists in the Robinson list (only Spain) - Check if email belongs to a system or role-based account @@ -65,7 +65,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Allows you to fix the email domain of those misspelled emails - Fix the international prefix of a phone based on the ISO code of a country - Get GDPR compliant emails list by domain for your Email Marketing campaigns in Europe -- Discover if mobile exist via real-time HLR query +- Discover if mobile exist using real-time HLR query - Get personal email by social network profile - Get portability data about a landline or mobile number, only for Spain - Extract results from a LinkedIn search (employees in a company) @@ -77,9 +77,9 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Get users who like a post on LinkedIn - Extract a LinkedIn profile - Extract results from a LinkedIn search (profiles) -- Extract fastly last profiles that have published content on LinkedIn by specific keywords -- Discover if mobile exist via real-time HLR query, as well as portability and roaming data -- Get existence, portability, and roaming of a mobile phone via MNP query +- Extract last profiles that have published content on LinkedIn by specific keywords +- Discover if mobile exist using real-time HLR query, as well as portability and roaming data +- Get existence, portability, and roaming of a mobile phone using MNP query - Discover if mobile or landline prefix exists in Spain - Allows normalizing email address, removing non allowed characters - Allows normalizing a mobile phone, removing non-allowed characters @@ -87,7 +87,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Allows getting country prefix number by country code - Discover an email by company website or domain and prospect's first-name and last-name - This tool parses a social URI address and extracts any available indicators -- Search all social networks by domain, parses all found URLs, and returns social networks KPIs +- Search all social networks by domain, parses all found URLs, and returns social networks data - Discover if a domain or a website has social activity and returns all social network profiles found - Discover if an email has social activity, and get all social network profiles found - Discover if a mobile phone has social activity, and get all social network profiles found @@ -101,7 +101,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Get an email by contact's LinkedIn profile URI - Discover an email by company's name and prospect's full name - Discover an email by company's website or domain and prospect's full name -- Get email by firstname, lastname, and company +- Get email by first name, last name, and company - Get parsed and validated phone @@ -177,21 +177,21 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Get VAT by IP address - Get VAT value by country ISO code - Get VAT by phone number, with worldwide coverage -- Get VAT by zipcode +- Get VAT by zip code **Geographical** - Check if a country's ISO code exists - Discover if the distance between two coordinates is equal to another -- Discover if the distance(in kilometers) between two coordinates is greater than the given input -- Discover if the distance(in kilometers) between two coordinates is greater or equal to the given input -- Discover if the distance(in kilometers) between two coordinates is lower than the given input +- Discover if the distance (kilometers) between two coordinates is greater than the given input +- Discover if the distance (kilometers) between two coordinates is greater or equal to the given input +- Discover if the distance(kilometers) between two coordinates is lower than the given input - Check if an address exists by a partial address search - Check if a house number exists by a partial address search - Check if coordinates have a valid format -- Discover if a zipcode number prefix exists (only for Spain) -- Discover if a zipcode number has a valid format (only for Spain) +- Discover if a zip code number prefix exists (only for Spain) +- Discover if a zip code number has a valid format (only for Spain) - Get cartesian coordinates(X, Y, Z/WGS84) by Latitude and Longitude - Get location by parameters - Get multiple cities by phone prefix (only for Spain) @@ -201,7 +201,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ - City search by partial name (only for Spain) - Discover the city name by a local phone number (only for Spain) - Discover the city name by the zip code (only for Spain) -- Discover the community name from a zipcode (only for Spain) +- Discover the community name from a zip code (only for Spain) - Discover latitude and longitude coordinates of an IP address - Discover latitude and longitude coordinates of a postal address - Get multiple country names by currency ISO code @@ -214,11 +214,11 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Get country name by phone number, with worldwide coverage - Get Aplha2 code by a country prefix or a name - Get decimal coordinates (degrees, minutes, and seconds) by latitude and longitude -- Returns straight-line distance(in kilometers) between two addresses -- Returns straight-line distance(in kilometers) between two GPS coordinates (latitude and longitude) -- Returns straight-line distance(in kilometers) between two IP addresses -- Returns straight-line distance(in kilometers) between two landline phones, using city and province of every phone -- Returns straight-line distance(in kilometers) between two zip codes, using city and province of every zip code +- Returns straight-line distance (kilometers) between two addresses +- Returns straight-line distance (kilometers) between two GPS coordinates (latitude and longitude) +- Returns straight-line distance (kilometers) between two IP addresses +- Returns straight-line distance (kilometers) between two landline phones, using city and province of every phone +- Returns straight-line distance (kilometers) between two zip codes, using city and province of every zip code - Get an exact address by a partial address search - Discover geographical, company, timezone, and reputation data by IPv4 address - Discover the city name, zip code, province, country, latitude, and longitude from an IPv4 or IPv6 address and geocodes it @@ -228,7 +228,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Discover the city name, zip code, province, country, latitude, and longitude from an IPv4 or IPv6 address - Discover the city and the province from a landline phone number (only Spain) - Discover location data by name -- Discover the city and the province from a zipcode number (only Spain) +- Discover the city and the province from a zip code number (only Spain) - Get the most relevant locations by name - Get the most relevant locations by name, category, location, and radius - Get multiple personal names by a prefix @@ -237,16 +237,16 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Allow normalizing a city by removing non allowed characters - Allow normalizing a country by removing non allowed characters - Allow normalizing a province by removing non allowed characters -- Allow normalizing a zipcode by removing non allowed characters +- Allow normalizing a zip code by removing non allowed characters - Get normalized country - Parse postal address into separated fields, getting a basic resolution - Discover the province name from an IP address - Get the first province by a name prefix (only for Spain) - Discover the province name from a landline phone number (only for Spain) -- Discover the province name from a zipcode number (only for Spain) +- Discover the province name from a zip code number (only for Spain) - Get a province list by a name prefix (only for Spain) - Get a province list by a phone prefix (only for Spain) -- Get a province list by a zipcode prefix (only for Spain) +- Get a province list by a zip code prefix (only for Spain) - Discover reputation by IPv4 or IPv6 address - Returns driving routing time, distance, fuel consumption, and cost between two addresses - Returns driving routing time, distance, fuel consumption, and cost between two GPS coordinates @@ -257,7 +257,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Get USNG coordinates by latitude and longitude - Get UTM coordinates by latitude and longitude - Discover the zip code if you have an IP address -- Get the first zipcode by prefix, only for Spain +- Get the first zip code by prefix, only for Spain - Get multiple zip codes by prefix, with worldwide coverage - Get time data by coordinates - Get time data by postal address @@ -294,7 +294,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Get full SSL certificate data by a domain (or website) and monitor your certificate status - Get feed entries by domain - Get last feed entry by domain -- Get text data from web, pdf or image allowing to filter some elements by regular expressions or field names +- Get text data from web, PDF or image allowing to filter some elements by regular expressions or field names - Decode URL to recover original - Get valid, existing, and default URL when accessing a domain using a web browser - Get long version of shortened URL @@ -320,8 +320,8 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Discover client and server technologies used in web pages - Analyze URL's health status about SSL, broken links, conflictive HTTP links with SSL, and more - Get website visits and rank of any domain -- Get a domain's Whois data by fields -- Get Whois data fields by IP address provided +- Get a domain's WHOIS data by fields +- Get WHOIS data fields by IP address provided **Personal** @@ -347,11 +347,11 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Discover if a NIF card number is valid - Check if a personal name exists in the INE data source (only for Spain) - Check if a name contains accepted characters -- Discover if a NIF exists in the Robison list (only for Spain) +- Discover if a NIF exists in the Robinson list (only for Spain) - Check if surname contains accepted characters - Check if a personal surname appears in INE data source (only for Spain) - Discover if a DNI card number is valid -- Discover the age of a birt date +- Discover the age of a birth date - Discover the age range of a person by birth date - Get the difference between two dates - Discover the gender of a person by the email @@ -379,7 +379,7 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Get first personal surname matching by prefix from INE data source (only for Spain) - Get personal surname matching by prefix from INE data source (only for Spain) - Get Twitter profile by first name, last name, and company -- Get Xing profile by first name, last name, and company +- Get XING profile by first name, last name, and company - Add a contact email to a person list @@ -504,53 +504,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ - Count total words in a text -## Example Usage -This workflow allows you to take a screenshot of a website and send it to a Telegram channel. You can also find the [workflow](https://n8n.io/workflows/858) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [uProc]() -- [Telegram](/integrations/builtin/app-nodes/n8n-nodes-base.telegram/) - -The final workflow should look like the following image. - -![A workflow with the uProc node](/_images/integrations/builtin/app-nodes/uproc/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. uProc node (getUrlScreenshot) - - -This node will return the screenshot of the n8n website. If you want to get the screenshot of a different website, enter the domain of that website instead. - -1. First of all, you'll have to enter credentials for the uProc node. You can find out how to do that [here](/integrations/builtin/credentials/uproc/). -2. Select 'Image' from the ***Resource*** dropdown list. -3. Select 'Get Screenshot by URL' from the ***Operation*** dropdown list. -4. Enter `https://n8n.io` in the ***URL*** field. -5. Select '1024' from the ***Width*** dropdown list. -6. Select 'Yes' from the ***Fullpage*** dropdown list. -7. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns a URL of the screenshot of the website. - -![Using the uProc node to get a screenshot of a website](/_images/integrations/builtin/app-nodes/uproc/uproc_node.png) - -### 3. Telegram node (sendPhoto: message) - -This node will send the screenshot that we received from the previous node. - -1. First of all, you'll have to enter credentials for the Telegram node. You can find out how to do that [here](/integrations/builtin/credentials/telegram/). -2. Select 'Send Photo' from the ***Operation*** dropdown list. -3. Enter a chat ID in the ***Chat ID*** field. Refer to the [FAQs](/integrations/builtin/app-nodes/n8n-nodes-base.telegram/#how-do-i-get-the-chat-id) of the Telegram node to learn how to get the chat ID. -4. Click on the gears icon next to the ***Photo*** field and click on ***Add Expression***. - -5. Select the following in the ***Variable Selector*** section: Nodes > uProc > Output Data > JSON > message > result. You can also add the following expression: `{{$node["uProc"].json["message"]["result"]}}`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node sends the screenshot image to the channel that we specify. - -![Using the Telegram node to send the image of the screenshot](/_images/integrations/builtin/app-nodes/uproc/telegram_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.uptimerobot.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.uptimerobot.md index 7ec2dc9aea4..102d6185aa3 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.uptimerobot.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.uptimerobot.md @@ -46,67 +46,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get a public status page * Get all a public status pages -## Example Usage - -This workflow allows you to create, update, and get a monitor using the UptimeRobot node. You can also find the [workflow](https://n8n.io/workflows/1112) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [UptimeRobot]() - -The final workflow should look like the following image. - -![A workflow with the UptimeRobot node](/_images/integrations/builtin/app-nodes/uptimerobot/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. UptimeRobot node (create: monitor) - -This node will create a new monitor of the type `HTTP(S)`. - -1. First of all, you'll have to enter credentials for the OpenWeatherMap node. You can find out how to do that [here](/integrations/builtin/credentials/openweathermap/). -2. Select 'Monitor' from the ***Resource*** dropdown list. -3. Select 'Create' from the ***Operation*** dropdown list. -4. Enter `n8n` in the ***Friendly Name*** field. -5. Select 'HTTP(S)' from the ***Type*** dropdown list. -6. Enter `https://n8n.io` in the ***URL*** field. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns data about the current weather in Berlin. - -![Using the OpenWeatherMap node to get weather updates for Berlin](/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot_node.png) - -### 3. UptimeRobot node (update: monitor) - -This node will update the monitor that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Monitor' from the ***Resource*** dropdown list. -3. Select 'Update' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -6. Click on ***Add Field*** and select 'Friendly Name' from the dropdown list. -7. Enter `n8n website` in the ***Friendly Name*** field. -8. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the friendly name of the monitor that we created in the previous node. - -![Using the UptimeRobot node to update a monitor](/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot1_node.png) - -### 4. UptimeRobot node (get: monitor) - -This node will get the information of the monitor that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Monitor' from the ***Resource*** dropdown list. -3. Select 'Update' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -6. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node returns the information of the monitor that we created earlier. - -![Using the UptimeRobot node to retrieve information of a monitor](/_images/integrations/builtin/app-nodes/uptimerobot/uptimerobot2_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectcloud.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectcloud.md index 410906bccb0..4c097e41ffd 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectcloud.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectcloud.md @@ -36,7 +36,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 [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/) for Venafi TLS Protect Datacenter. - + diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectdatacenter.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectdatacenter.md index f2c3f7713b8..280343357c7 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectdatacenter.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectdatacenter.md @@ -3,7 +3,8 @@ title: Venafi TLS Protect Datacenter description: Documentation for the Venafi TLS Protect Datacenter node in n8n, a workflow automation platform. Includes details of operations and configuration, and links to examples and credentials information. contentType: integration --- - + + # Venafi TLS Protect Datacenter Use the Venafi TLS Protect Datacenter node to automate work in Venafi TLS Protect Datacenter, and integrate Venafi TLS Protect Datacenter with other applications. n8n has built-in support for a wide range of Venafi TLS Protect Datacenter features, including creating, deleting, and getting certificates. @@ -36,3 +37,4 @@ n8n also provides: * 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. + \ No newline at end of file diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.vero.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.vero.md index 746690ab8af..84dd908bfce 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.vero.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.vero.md @@ -1,20 +1,20 @@ --- -title: Vero -description: Documentation for the Vero node in n8n, a workflow automation platform. Includes details of operations and configuration, and links to examples and credentials information. +title: VERO +description: Documentation for the VERO node in n8n, a workflow automation platform. Includes details of operations and configuration, and links to examples and credentials information. contentType: integration --- -# Vero +# VERO -Use the Vero node to automate work in Vero, and integrate Vero with other applications. n8n has built-in support for a wide range of Vero features, including creating and deleting users. +Use the VERO node to automate work in VERO, and integrate VERO with other applications. n8n has built-in support for a wide range of VERO features, including creating and deleting users. -On this page, you'll find a list of operations the Vero node supports and links to more resources. +On this page, you'll find a list of operations the VERO node supports and links to more resources. /// note | Credentials -Refer to [Vero credentials](/integrations/builtin/credentials/vero/) for guidance on setting up authentication. +Refer to [VERO credentials](/integrations/builtin/credentials/vero/) for guidance on setting up authentication. /// /// note | Examples and templates -For usage examples and templates to help you get started, take a look at n8n's [Vero integrations](https://n8n.io/integrations/vero/){:target="_blank" .external-link} list. +For usage examples and templates to help you get started, take a look at n8n's [VERO integrations](https://n8n.io/integrations/vero/){:target="_blank" .external-link} list. /// ## Basic Operations @@ -31,23 +31,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Track an event for a specific customer -## Example Usage - -This workflow allows you to create a user profile in Vero. You can also find the [workflow](https://n8n.io/workflows/499) on the website. This example usage workflow would use the following two nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Vero]() - -The final workflow should look like the following image. - -![A workflow with the Vero node](/_images/integrations/builtin/app-nodes/vero/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Vero node - -1. First of all, you'll have to enter credentials for the Vero node. You can find out how to do that [here](/integrations/builtin/credentials/vero/). -2. Enter the unique identifier of the user in the *ID* field. -3. Click on *Execute Node* to run the workflow. - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.webflow.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.webflow.md index 80ebc2441e9..fd41d4fc4d2 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.webflow.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.webflow.md @@ -26,97 +26,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get All * Update -## Example Usage - -This workflow allows you to create, update, and get an item from Webflow. You can also find the [workflow](https://n8n.io/workflows/1048) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Webflow]() - -The final workflow should look like the following image. - -![A workflow with the Webflow node](/_images/integrations/builtin/app-nodes/webflow/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Webflow node (create: item) - -This node will create a new collection of the type `Team Members` in Webflow. If you want to create a collection with a different type, use that type instead. - -1. First of all, you'll have to enter credentials for the Webflow node. You can find out how to do that [here](/integrations/builtin/credentials/webflow/). -2. Select 'Create' from the ***Operation*** dropdown list. -3. Select your site from the ***Site ID*** dropdown list. -4. Select 'Team Members' from the ***Collection ID*** dropdown list. -5. Click on the ***Add Field*** button. -6. Select 'Name (PlainText) (required)' from the ***Field ID*** dropdown list. If you're using a different collection type, select the field present in that collection. -7. Enter `n8n` in the ***Field Value*** field. -8. Click on the ***Add Field*** button. -9. Select 'Slug (PlainText) (required)' from the ***Field ID*** dropdown list. If you're using a different collection type, select the field present in that collection. -10. Enter `n8n` in the ***Field Value*** field. -11. Click on the ***Add Field*** button. -12. Select 'Archived (Bool) (required)' from the ***Field ID*** dropdown list. If you're using a different collection type, select the field present in that collection. -13. Enter `false` in the ***Field Value*** field. -14. Click on the ***Add Field*** button. -15. Select 'Draft (Bool) (required)' from the ***Field ID*** dropdown list. If you're using a different collection type, select the field present in that collection. -16. Enter `false` in the ***Field Value*** field. -17. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new item for the collection type `Team Members` in Webflow. - -![Using the Webflow node to create a new item](/_images/integrations/builtin/app-nodes/webflow/webflow_node.png) - - -### 3. Webflow1 node (update: item) - -This node will update the item that we created using the previous node. - -1. Select the credentials that you entered in the previous Webflow node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Select your site from the ***Site ID*** dropdown list. -4. Select 'Team Members' from the ***Collection ID*** dropdown list. -5. Click on the gears icon next to the ***Item ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > _id. You can also add the following expression: `{{$json["_id"]}}`. -7. Click on the ***Add Property*** button. -Click on the ***Add Field*** button. -8. Select 'Name (PlainText) (required)' from the ***Field ID*** dropdown list. If you're using a different collection type, select the field present in that collection. -9. Click on the gears icon next to the ***Field Value*** field and click on ***Add Expression***. -10. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > name. You can also add the following expression: `{{$json["name"]}}`. -11. Click on the ***Add Field*** button. -12. Select 'Slug (PlainText) (required)' from the ***Field ID*** dropdown list. If you're using a different collection type, select the field present in that collection. -13. Click on the gears icon next to the ***Field Value*** field and click on ***Add Expression***. -14. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > slug. You can also add the following expression: `{{$json["slug"]}}`. -15. Click on the ***Add Field*** button. -16. Select 'Archived (Bool) (required)' from the ***Field ID*** dropdown list. If you're using a different collection type, select the field present in that collection. -17. Click on the gears icon next to the ***Field Value*** field and click on ***Add Expression***. -18. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > _archived. You can also add the following expression: `{{$json["_archived"]}}`. -19. Click on the ***Add Field*** button. -20. Select 'Draft (Bool) (required)' from the ***Field ID*** dropdown list. If you're using a different collection type, select the field present in that collection. -21. Click on the gears icon next to the ***Field Value*** field and click on ***Add Expression***. -22. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > _draft. You can also add the following expression: `{{$json["_draft"]}}`. -23. Click on the ***Add Field*** button. -24. Select 'Avatar (ImageRef)' from the ***Field ID*** dropdown list. If you're using a different collection type, select the field present in that collection. -25. Enter `https://n8n.io/n8n-logo.png` in the ***Value*** field. -26. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node updates the item that got created previously. - -![Using the Webflow node to update an item](/_images/integrations/builtin/app-nodes/webflow/webflow1_node.png) - -### 4. Webflow2 node (get: item) - -This node will retrieve the information about the item that we created earlier. - - -1. Select the credentials that you entered in the previous Webflow node. -2. Select your site from the ***Site ID*** dropdown list. -3. Select 'Team Members' from the ***Collection ID*** dropdown list. -4. Click on the gears icon next to the ***Item ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > _id. You can also add the following expression: `{{$json["_id"]}}`. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node retrieves the information of the item that we created earlier. - -![Using the Webflow node to retrieve the information of an item](/_images/integrations/builtin/app-nodes/webflow/webflow2_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.wekan.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.wekan.md index 04fb97cb335..feba2594cf9 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.wekan.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.wekan.md @@ -1,20 +1,20 @@ --- -title: Wekan -description: Documentation for the Wekan node in n8n, a workflow automation platform. Includes details of operations and configuration, and links to examples and credentials information. +title: WeKan +description: Documentation for the WeKan node in n8n, a workflow automation platform. Includes details of operations and configuration, and links to examples and credentials information. contentType: integration --- -# Wekan +# WeKan -Use the Wekan node to automate work in Wekan, and integrate Wekan with other applications. n8n has built-in support for a wide range of Wekan features, including creating, updating, deleting, and getting boards and cards. +Use the WeKan node to automate work in WeKan, and integrate WeKan with other applications. n8n has built-in support for a wide range of WeKan features, including creating, updating, deleting, and getting boards and cards. -On this page, you'll find a list of operations the Wekan node supports and links to more resources. +On this page, you'll find a list of operations the WeKan node supports and links to more resources. /// note | Credentials -Refer to [Wekan credentials](/integrations/builtin/credentials/wekan/) for guidance on setting up authentication. +Refer to [WeKan credentials](/integrations/builtin/credentials/wekan/) for guidance on setting up authentication. /// /// note | Examples and templates -For usage examples and templates to help you get started, take a look at n8n's [Wekan integrations](https://n8n.io/integrations/wekan/){:target="_blank" .external-link} list. +For usage examples and templates to help you get started, take a look at n8n's [WeKan integrations](https://n8n.io/integrations/wekan/){:target="_blank" .external-link} list. /// ## Basic Operations @@ -50,119 +50,11 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get the data of a list * Get all board lists -## Example Usage - -This workflow allows you to create a board and two lists called `To Do` and `Done` using the Wekan node. It also allows you to create a card and update the list ID of the card, enabling you to move it from the `To Do` list to the `Done` list. You can also find the [workflow](https://n8n.io/workflows/728) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Wekan]() - -The final workflow should look like the following image. - -![A workflow with the Wekan node](/_images/integrations/builtin/app-nodes/wekan/workflow.png) - - -### 1. Start node - -The start node exists by default when you create a new workflow. - - -### 2. Wekan node (create: board) - -This node will create a board called `Documentation` in Wekan. To create a board with a different name, you can enter the name of your board instead. - -1. First of all, you'll have to enter credentials for the Wekan node. You can find out how to do that [here](/integrations/builtin/credentials/wekan/). - -2. Select 'Board' from the ***Resource*** dropdown list. -3. Enter `Documentation` in the ***Title*** field. -4. Select the owner of the board from the ***Owner*** dropdown list. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new board with the title `Documentation`. - - -![Using the Wekan node to create a board](/_images/integrations/builtin/app-nodes/wekan/wekan_node.png) - - -### 3. Wekan1 node (create: list) - -This node will create a list with the title `To Do` in the `Documentation` board, which was created using the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'List' from the ***Resource*** dropdown list. -3. Click on the gears icon next to the ***Board ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Wekan > Output Data > JSON > _id. You can also add the following expression: `{{$node["Wekan"].json["_id"]}}`. -5. Enter `To Do` in the ***Title*** field. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new list called `To Do` in the `Documentation` board. - - -![Using the Wekan node to create a list with the title To Do](/_images/integrations/builtin/app-nodes/wekan/wekan1_node.png) - - -### 4. Wekan2 node (create: list) - -This node will create a list with the title `Done` in the `Documentation` board, which was created using the Wekan node. - -1. Select the credentials that you entered in the previous node. -2. Select 'List' from the ***Resource*** dropdown list. -3. Click on the gears icon next to the ***Board ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Wekan > Output Data > JSON > _id. You can also add the following expression: `{{$node["Wekan"].json["_id"]}}`. -5. Enter `Done` in the ***Title*** field. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new list called `Done` in the `Documentation` board. - - -![Using the Wekan node to create a list with the title Done](/_images/integrations/builtin/app-nodes/wekan/wekan2_node.png) - - -### 5. Wekan3 node (create: card) - -This node will create a card in the `Documentation` board under the list titled `To Do`, which was created using the Wekan1 node. - -1. Select the credentials that you entered in the previous node. -2. Click on the gears icon next to the ***Board ID*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Nodes > Wekan > Output Data > JSON > _id. You can also add the following expression: `{{$node["Wekan"].json["_id"]}}`. -4. Click on the gears icon next to the ***List ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Wekan1 > Output Data > JSON > _id. You can also add the following expression: `{{$node["Wekan1"].json["_id"]}}`. -6. Enter `Document Wekan node` in the ***Title*** field. -7. Select 'Default' from the ***Swimlane ID*** dropdown list. -8. Select an author from the ***Author ID*** dropdown list. -9. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new card with the title `Document Wekan node` in the `To Do` list of the `Documentation` board. - - -![Using the Wekan node to create a card in the To Do list](/_images/integrations/builtin/app-nodes/wekan/wekan3_node.png) - - -### 6. Wekan4 node (update: card) - -This node will update the list ID of the card created by the previous node and move it from the `To Do` list to the `Done` list. - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Board ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Wekan > Output Data > JSON > _id. You can also add the following expression: `{{$node["Wekan"].json["_id"]}}`. -5. Click on the gears icon next to the ***List ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > Wekan1 > Output Data > JSON > _id. You can also add the following expression: `{{$node["Wekan1"].json["_id"]}}`. -7. Click on the gears icon next to the ***Card ID*** field and click on ***Add Expression***. -8. Select the following in the ***Variable Selector*** section: Nodes > Wekan3 > Output Data > JSON > _id. You can also add the following expression: `{{$node["Wekan3"].json["_id"]}}`. -9. Click on the ***Add Field*** button and select 'List ID'. -10. Click on the gears icon next to the ***List ID*** field and click on ***Add Expression***. -11. Select the following in the ***Variable Selector*** section: Nodes > Wekan2 > Output Data > JSON > _id. You can also add the following expression: `{{$node["Wekan2"].json["_id"]}}`. -12. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node updates the list id of the card that we created in the previous node and moves it from the `To Do` list to the `Done` list. - - -![Using the Wekan node to update the card](/_images/integrations/builtin/app-nodes/wekan/wekan4_node.png) ## FAQs ### How to load all the parameters for the node? -To load all the parameters, for example, Author ID, you need to give admin permissions to the user. Refer to the [Wekan documentation](https://github.com/wekan/wekan/wiki/Features#members-click-member-initials-or-avatar--permissions-adminnormalcomment-only) to learn how to change permissions. +To load all the parameters, for example, Author ID, you need to give admin permissions to the user. Refer to the [WeKan documentation](https://github.com/wekan/wekan/wiki/Features#members-click-member-initials-or-avatar--permissions-adminnormalcomment-only) to learn how to change permissions. diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.wise.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.wise.md index 3d73946e02f..fd0f69853e3 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.wise.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.wise.md @@ -40,84 +40,3 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get * Get All -## Example Usage - -This workflow allows you to create a quote and a transfer, execute the transfer, and get the information of the transfer using the Wise node. You can also find the [workflow](https://n8n.io/workflows/992) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Wise]() - -The final workflow should look like the following image. - -![A workflow with the Wise node](/_images/integrations/builtin/app-nodes/wise/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Wise node (create: quote) - -This node will create a new quote in Wise. - -1. First of all, you'll have to enter credentials for the Wise node. You can find out how to do that [here](/integrations/builtin/credentials/wise/). -2. Select 'Quote' from the ***Resource*** dropdown list. -3. Select 'Create' from the ***Operation*** dropdown list. -4. Select a profile from the ***Profile ID*** dropdown list. -5. Select a target account from the ***Target Account ID*** dropdown list. -6. Enter an amount in the ***Amount*** field. -7. Enter the source currency in the ***Source Currency*** field. -8. Enter the target currency in the ***Target Currency*** field. -9. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new quote. - -![Using the Wise node to create a new quote](/_images/integrations/builtin/app-nodes/wise/wise_node.png) - -### 3. Wise1 node (create: transfer) - -This node will create a new transfer for the quote that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Transfer' from the ***Resource*** dropdown list. -3. Select a profile from the ***Profile ID*** dropdown list. -4. Click on the gears icon next to the ***Quote ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -6. Select the target account from the ***Target Account ID*** dropdown list. -7. Click on the ***Add Field*** button. -8. Enter a description in the ***Reference*** field. -9. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new transfer for the quote that we created in the previous node. - -![Using the Wise node to create a new transfer](/_images/integrations/builtin/app-nodes/wise/wise1_node.png) - -### 4. Wise2 node (execute: transfer) - -This node will execute the transfer that we created in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Transfer' from the ***Resource*** dropdown list. -3. Select 'Execute' from the ***Operation*** dropdown list. -4. Select a profile from the ***Profile ID*** dropdown list. -5. Click on the gears icon next to the ***Transfer ID*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Current Node > Input Data > JSON > id. You can also add the following expression: `{{$json["id"]}}`. -7. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns the executes the transfer that we created in the previous node. - -![Using the Wise node to execute a transfer](/_images/integrations/builtin/app-nodes/wise/wise2_node.png) - -### 5. Wise3 node (get: transfer) - -This node will return the information of the transfer that we executed in the previous node. - -1. Select the credentials that you entered in the previous node. -2. Select 'Transfer' from the ***Resource*** dropdown list. -3. Select 'Get' from the ***Operation*** dropdown list. -4. Click on the gears icon next to the ***Transfer ID*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Wise1 > Output Data > JSON > id. You can also add the following expression: `{{$node["Wise1"].json["id"]}}`. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns the information about the transfer that we executed in the previous node. - -![Using the Wise node to get a transfer](/_images/integrations/builtin/app-nodes/wise/wise3_node.png) - diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.wordpress.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.wordpress.md index e75a0da9474..d995d7d1f0e 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.wordpress.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.wordpress.md @@ -30,39 +30,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all users * Update a user -## Example Usage -This workflow allows you to create and update a post in WordPress. You can also find the [workflow](https://n8n.io/workflows/668) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [WordPress]() - -The final workflow should look like the following image. - -![A workflow with the WordPress node](/_images/integrations/builtin/app-nodes/wordpress/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Wordpress node (create: post) - -1. First of all, you'll have to enter credentials for the WordPress node. You can find out how to do that [here](/integrations/builtin/credentials/wordpress/). -2. Enter the title in the ***Title*** field. -3. Click on ***Test step*** to run the workflow. - -![Using the WordPress node to create a new post](/_images/integrations/builtin/app-nodes/wordpress/wordpress_node.png) - - -### 3. Wordpress1 node (update: post) - -1. Select the credentials that you entered in the previous node. -2. Select 'Update' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Post ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Wordpress > Output Data > JSON > id. You can also add the following expression: `{{$node["Wordpress"].json["id"]}}`. -5. Click on the ***Add Field*** button and select 'Content' from the dropdown list. -6. Enter the content in the ***Content*** filed. -7. Click on ***Test step*** to run the workflow. - - -![Using the WordPress node to update the post](/_images/integrations/builtin/app-nodes/wordpress/wordpress1_node.png) diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.yourls.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.yourls.md index 71eb209c89c..3eec8d992e3 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.yourls.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.yourls.md @@ -24,45 +24,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Shorten a URL * Get stats about one short URL -## Example Usage -This workflow allows you to create a short URL and get the statistics of the URL. You can also find the [workflow](https://n8n.io/workflows/815) on n8n.io. This example usage workflow uses the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Yourls]() - -The final workflow should look like the following image. - -![A workflow with the Yourls node](/_images/integrations/builtin/app-nodes/yourls/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Yourls node (shorten: url) - -This node will create a short URL for the link we specify. - -1. First of all, you'll have to enter credentials for the Yourls node. You can find out how to do that [here](/integrations/builtin/credentials/yourls/). -2. Enter the URL that you want to shorten in the ***URL*** field. -3. Click on ***Add Field*** and select 'Title'. -4. Enter a title in the ***Title*** field. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a short URL for the URL you specified. - -![Using the Yourls node to create short URL](/_images/integrations/builtin/app-nodes/yourls/yourls_node.png) - -### 3. Yourls1 node (stats: url) - -This node will give us the statistics of the short URL that we specify. We will get the statistics for the URL that we created in the previous step. - -1. Select the credentials that you entered in the previous node. -2. Select 'Stats' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Short URL*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Yourls > Output Data > JSON > shorturl. You can also add the following expression: `{{$node["Yourls"].json["shorturl"]}}`. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node gives us the statistics of the short URL that we created in the previous node. - -![Using the Yourls node to get the statistics of a short URL](/_images/integrations/builtin/app-nodes/yourls/yourls1_node.png) diff --git a/docs/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.embeddingsopenai.md b/docs/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.embeddingsopenai.md index 2ff45efa590..4e54c78a46e 100644 --- a/docs/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.embeddingsopenai.md +++ b/docs/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.embeddingsopenai.md @@ -25,7 +25,7 @@ For usage examples and templates to help you get started, refer to n8n's [OpenAI * **Base URL**: the URL to send the request to. Use this if you are using a self-hosted OpenAI-like model. * **Batch Size**: maximum number of documents to send in each request. * **Strip New Lines**: whether to remove new line characters from input text. n8n enables this by default. -* **Timeout**: maximum amount of time a request can take in seconds. Set to -1 for no timeout. +* **Timeout**: maximum amount of time a request can take in seconds. Set to `-1` for no timeout. ## Related resources diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.activationtrigger.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.activationtrigger.md index 039aca68031..3de31e4529b 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.activationtrigger.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.activationtrigger.md @@ -24,42 +24,6 @@ The Activation trigger node gets triggered for the workflow that it gets added t - Events - ***Activation:*** Run when the workflow gets activated - ***Start:*** Run when n8n starts or restarts - - ***Update:*** Run when the workflow gets saved while it is active + - ***Update:*** Run when the workflow gets saved while it's active -## Example Usage - -This workflow allows you to receive a message on Mattermost when a workflow is updated. You can also find the [workflow](https://n8n.io/workflows/1033) on n8n.io. This example usage workflow uses the following nodes. -- [Activation trigger]() -- [Mattermost](/integrations/builtin/app-nodes/n8n-nodes-base.mattermost/) - -The final workflow should look like the following image. - -![A workflow with the Webhook node](/_images/integrations/builtin/core-nodes/activationtrigger/workflow.png) - -### 1. Activation trigger node - -Open the workflow where you want to add the activation workflow. Add the Activation trigger node to the workflow. - -The Activation trigger node will trigger the workflow when the workflow gets updated. - -1. Select 'Update' from the ***Events*** dropdown list. - -In the screenshot below, you will notice that the node triggers the workflow when the workflow gets updated. - -![Using the Activation trigger node to trigger the workflow](/_images/integrations/builtin/core-nodes/activationtrigger/activationtrigger_node.png) - -### 2. Mattermost node (post: message) - -This node will send a message in the `workflow` channel on Mattermost. - -1. First of all, you'll have to enter credentials for the Mattermost node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/mattermost/). -2. Select a channel from the ***Channel ID*** dropdown list. -3. Click on the gears icon next to the ***Message*** field click on ***Add Expression***. - -4. Enter the following message in the ***Expression*** field: `The workflow {{$workflow.name}}, was updated.`. `$workflow.name` returns the name of the workflow. -5. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node sends a message to Mattermost. - -![Using the Mattermost node to send a message to a channel](/_images/integrations/builtin/core-nodes/activationtrigger/mattermost_node.png) diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.comparedatasets.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.comparedatasets.md index 0edfaacf7c7..97f71785af1 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.comparedatasets.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.comparedatasets.md @@ -149,7 +149,7 @@ For example, given these two datasets: n8n returns three items, in the **Same Branch** tab. The data is the same in both branches. -If you select **Include First Match Only**, n8n returns two items, in the **Same Branch** tab. The data is the same in both branches, but n8n only returns the first occurence of the matching "apple" items. +If you select **Include First Match Only**, n8n returns two items, in the **Same Branch** tab. The data is the same in both branches, but n8n only returns the first occurrence of the matching "apple" items. diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.crypto.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.crypto.md index 3e2f9f47a8f..46036124b57 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.crypto.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.crypto.md @@ -18,7 +18,7 @@ You can configure further options for each action by selecting the type of encry - Action - Hash a text in a specified format - - Hmac a text in a specified format + - HMAC a text in a specified format - Sign a string using a private key - Type - MD5 diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.executecommand.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.executecommand.md index 367cea3b953..33b454ef72e 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.executecommand.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.executecommand.md @@ -9,7 +9,7 @@ contentType: integration The Execute Command node runs shell commands on the host machine that runs n8n. /// note | Which shell runs the command? -This node executes the command in the default shell of the host machine. For example, cmd on Windows and zsh on macOS. +This node executes the command in the default shell of the host machine. For example, `cmd` on Windows and `zsh` on macOS. If you run n8n with Docker, your command will run in the n8n container and not the Docker host. /// @@ -22,11 +22,11 @@ This node isn't available on n8n Cloud. The Execute Command node has two properties: 1. **Execute Once** toggle: This is a boolean field that specifies whether you want the node to execute only once, or once for every item it receives an input. -2. **Command** field: This is a text field that specifies the command tto execute on the host machine. +2. **Command** field: This is a text field that specifies the command to execute on the host machine. ## Example Usage -This workflow allows you to execute a command that returns the percentage of the hard disk that is full using the Execute Command node. The workflow triggers twice a day, and if the memory usage exceeds 80%, it sends an SMS using the Twilio node. You can also find the [workflow](https://n8n.io/workflows/716) on n8n.io. This example usage workflow would use the following nodes. +This workflow allows you to execute a command that returns the percentage of the hard disk that's full using the Execute Command node. The workflow triggers twice a day, and if the memory usage exceeds 80%, it sends an SMS using the Twilio node. You can also find the [workflow](https://n8n.io/workflows/716) on n8n.io. This example usage workflow would use the following nodes. - [Schedule trigger](/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/) - [Execute Command]() @@ -59,7 +59,7 @@ The Execute Command node executes the command and return the percentage of hard 1. Enter `df -k / | tail -1 | awk '{print $5}'` in the **Command** field. 2. Click on **Test step** to run the node. -In the screenshot below, note that the node executes the command and returns the percentage of the hard disk that is full. +In the screenshot below, note that the node executes the command and returns the percentage of the hard disk that's full. ![Using the Execute Command node to get the percentage of hard disk used on the host machine](/_images/integrations/builtin/core-nodes/executecommand/executecommand_node.png) @@ -76,9 +76,9 @@ This node will compare the percentage of the hard disk space used we got from th In the screenshot below, you will notice that the node returns an output when the percentage of hard disk space used exceeds 80%. -![Using the IF node to check if the percentage of hard disk space used is greater than eighty percent](/_images/integrations/builtin/core-nodes/executecommand/if_node.png) +![Using the IF node to check if the percentage of hard disk space used is greater than 80%](/_images/integrations/builtin/core-nodes/executecommand/if_node.png) -### 4. Twilio node (send: sms) +### 4. Twilio node (send: SMS) This node sends an SMS to the specified phone number when the usage of hard disk space exceeds 80%. @@ -142,5 +142,5 @@ If you want to run the curl command in the Execute Command node, you will have t ``` 4. Replace the Docker image you used before. For example, replace `docker.n8n.io/n8nio/n8n` with `n8n-curl`. -5. Run the newly created Docker image, and you will now be able to execute ssh via the Execute Command-Node. +5. Run the newly created Docker image, and you will now be able to execute ssh using the Execute Command-Node. diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.ftp.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.ftp.md index 343557c97d8..7746a21e873 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.ftp.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.ftp.md @@ -28,44 +28,4 @@ You can find authentication information for this node [here](/integrations/built - ***Path:*** A field used to specify the remote path that you would like to connect to. - ***Recursive:*** A toggle that can be used to include all subdirectories and files. -## Example Usage - -This workflow allows you to upload a file to an FTP server and get a list of all files using the FTP node. You can also find the [workflow](https://n8n.io/workflows/663) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [HTTP Request](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/) -- [FTP]() - -The final workflow should look like the following image. - -![A workflow with the FTP node](/_images/integrations/builtin/core-nodes/ftp/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. HTTP Request node - -1. Enter the URL of the file you want to download in the ***URL*** field. -2. Select ***File*** from the ***Response Format*** dropdown list. -3. Click on ***Test step*** to run the node. - -![Downloading a file with the HTTP Request node](/_images/integrations/builtin/core-nodes/ftp/httprequest_node.png) - -### 3. FTP node (ftp: upload) - -1. First of all, you'll have to enter credentials for the FTP node. You can find out how to do that [here](/integrations/builtin/credentials/ftp/). -2. Select ***Upload*** from the ***Operation*** dropdown list. -3. Enter the path where you would like to upload the file in the ***Path*** field. -4. Click on ***Test step*** to run the node. - -![Uploading a file with the FTP node](/_images/integrations/builtin/core-nodes/ftp/ftp_node.png) - -### 4. FTP1 node (ftp: list) - -1. Select the credentials that you entered in the previous node. -2. Select ***List*** from the ***Operation*** dropdown list. -3. Enter the path to the folder where you uploaded the file in the previous step in the ***Path*** field. -4. Click on ***Test step*** to run the node. - -![Getting a list of files with the FTP node](/_images/integrations/builtin/core-nodes/ftp/ftp1_node.png) diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.git.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.git.md index 89d8d72a26d..87a7d3e2204 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.git.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.git.md @@ -29,72 +29,3 @@ You can find authentication information for this node [here](/integrations/built * Create a new tag * Set the user -## Example Usage - -This workflow allows you to add, commit, and push changes to a git repository. You can also find the [workflow](https://n8n.io/workflows/1115) on n8n.io. This example usage workflow would use the following nodes. -- [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) -- [Git]() - -The final workflow should look like the following image. - -![A workflow with the Git node](/_images/integrations/builtin/core-nodes/git/workflow.png) - -### 1. Start node - -The start node exists by default when you create a new workflow. - -### 2. Git node (Add) - -This node will add the `README.md` file to the staging area. If you want to add a different file, enter the path of that file instead. - -1. Select 'Add' from the ***Operation*** dropdown list. -2. Enter the repository path in the ***Repository Path*** field. -3. Enter the file path in the ***Paths to Add*** field. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node adds the `README.md` file to the staging area. - -![Using the Git node to add a file to the staging area](/_images/integrations/builtin/core-nodes/git/git_node.png) - -### 3. Git1 node (Commit) - -This node will commit all the changes that were added to the staging area by the previous node. - -1. Select 'Commit' from the ***Operation*** dropdown list. -2. Click on the gears icon next to the ***Repository Path*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Nodes > Git > Parameters > repositoryPath. You can also add the following expression: `{{$node["Git"].parameter["repositoryPath"]}}`. -4. Enter a commit message in the ***Message*** field. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new commit. - -![Using the Git node to commit changes](/_images/integrations/builtin/core-nodes/git/git1_node.png) - -### 4. Git2 node (Log) - -This node will return the commit logs of your repository. - -1. Click on the gears icon next to the ***Repository Path*** field and click on ***Add Expression***. -2. Select the following in the ***Variable Selector*** section: Nodes > Git > Parameters > repositoryPath. You can also add the following expression: `{{$node["Git"].parameter["repositoryPath"]}}`. -3. Toggle ***Return All*** to `true`. This option will return all the logs. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node creates a new commit. - -![Using the Git node to log the commits](/_images/integrations/builtin/core-nodes/git/git2_node.png) - -### 5. Git3 node (Push) - -This node will push the changes to a cloud repository. - -1. Select 'Push' from the ***Operation*** dropdown list. -2. Click on the gears icon next to the ***Repository Path*** field and click on ***Add Expression***. -3. Select the following in the ***Variable Selector*** section: Nodes > Git > Parameters > repositoryPath. You can also add the following expression: `{{$node["Git"].parameter["repositoryPath"]}}`. -4. Click on ***Test step*** to run the node. - -**Note:** If you're not using SSH, you will have to create credentials to authenticate yourself. You also need to set an upstream branch to push the changes. This is required only once. You can set up an upstream branch by executing the command `git push -u origin master` from a terminal. - -In the screenshot below, you will notice that the node pushes the local changes to a cloud repository. - -![Using the Git node to push the changes](/_images/integrations/builtin/core-nodes/git/git3_node.png) - diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.html.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.html.md index 4d01263edb2..1b94b6cd61a 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.html.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.html.md @@ -9,10 +9,10 @@ contentType: integration The HTML node provides operations to help you work with HTML in n8n. /// note | HTML Extract node -The HTML node replaces the HTML Extract node from version 0.213.0 onwards. If you're using an older version of n8n, you can still view the [HTML Extract node documentation](https://github.com/n8n-io/n8n-docs/blob/86fe33b681621e618e3adcab9a27e8605dbc23ad/docs/integrations/builtin/core-nodes/n8n-nodes-base.htmlextract.md){:target=_blank .external-link}. +The HTML node replaces the HTML Extract node from version 0.213.0 on. If you're using an older version of n8n, you can still view the [HTML Extract node documentation](https://github.com/n8n-io/n8n-docs/blob/86fe33b681621e618e3adcab9a27e8605dbc23ad/docs/integrations/builtin/core-nodes/n8n-nodes-base.htmlextract.md){:target=_blank .external-link}. /// /// warning | Cross-site scripting -When using the HTML node to generate an HTML template you can introduce [XSS (cross-site scripting)](https://owasp.org/www-community/attacks/xss/){:target=_blank .external-link}. This is a security risk. Be careful with untrusted inputs. +When using the HTML node to generate an HTML template you can introduce [XSS (cross-site scripting)](https://owasp.org/www-community/attacks/xss/){:target=_blank .external-link}. This is a security risk. Be careful with un-trusted inputs. /// ## Operations diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.httprequest.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.httprequest.md index 477d4625430..640f9df738b 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.httprequest.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.httprequest.md @@ -83,7 +83,7 @@ Use this option to paginate results. /// note | Inspect the API data first Some options for pagination require knowledge of the data returned by the API you're using. Before setting up pagination, either check the API documentation, or do an API call without pagination, to see the data it returns. /// -??? Details "What is pagination?" +??? Details "Understand pagination" Pagination means splitting a large set of data into multiple pages. The amount of data on each page depends on the limit you set. For example, you make an API call to an endpoint called `/users`. The API wants to send back information on 300 users, but this is too much data for the API to send in one response. diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.if.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.if.md index 1523b8d46d9..0686f62d586 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.if.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.if.md @@ -25,24 +25,24 @@ Add comparison conditions using the **Add Condition** filter. The available comp **String**: - exists -- does not exist +- doesn't exist - is equal to -- is not equal to +- isn't equal to - contains -- does not contain +- doesn't contain - starts with -- does not start with +- doesn't start with - ends with -- does not end with +- doesn't end with - matches regex -- does not match regex +- doesn't match regex **Number**: - exists -- does not exist +- doesn't exist - is equal to -- is not equal to +- isn't equal to - is greater than - is less than - is greater than or equal @@ -51,9 +51,9 @@ Add comparison conditions using the **Add Condition** filter. The available comp **Date & Time**: - exists -- does not exist +- doesn't exist - is equal to -- is not equal to +- isn't equal to - is after - is before - is after or equal @@ -62,20 +62,20 @@ Add comparison conditions using the **Add Condition** filter. The available comp **Boolean**: - exists -- does not exist +- doesn't exist - is true - is false - is equal to -- is not equal to +- isn't equal to **Array**: - exists -- does not exist +- doesn't exist - is equal to -- is not equal to +- isn't equal to - contains -- does not contain +- doesn't contain - length equal to - length not equal to - length greater than @@ -86,16 +86,9 @@ Add comparison conditions using the **Add Condition** filter. The available comp **Object**: - exists -- does not exist +- doesn't exist - is empty -- is not empty - - - - - - - +- isn't empty ## AND / OR diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.markdown.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.markdown.md index eae4d431110..46a1a6b9ab7 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.markdown.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.markdown.md @@ -26,18 +26,18 @@ Some of the options depend on each other, or can interact. We recommend testing | **Customized Header ID** | Whether to support custom heading IDs (enabled) or not (disabled). When enabled, you can add custom heading IDs using `{header ID here}` after the heading text. | Disabled | | **Emoji Support** | Whether to support emojis (enabled) or not (disabled). | Disabled. | | **Encode Emails** | Whether to transform ASCII character emails into their equivalent decimal entities (enabled) or not (disabled). | Enabled | -| **Exclude Trailing Punctuation From URLs** | Whether to exclude trailing punctuation from auto-linked URLs (enabled) or not (disabled). For use with **Automatic Linking To URLs**. | Disabled | +| **Exclude Trailing Punctuation From URLs** | Whether to exclude trailing punctuation from automatically linked URLs (enabled) or not (disabled). For use with **Automatic Linking To URLs**. | Disabled | | **GitHub Code Blocks** | Whether to enable GitHub Flavored Markdown code blocks (enabled) or not (disabled). | Enabled | | **GitHub Compatible Header IDs** | Whether to generate GitHub Flavored Markdown heading IDs (enabled) or not (disabled). GitHub Flavored Markdown generates heading IDs with `-` in place of spaces and removes non-alphanumeric characters. | Disabled | | **GitHub Mention Link** | Change the link used with **GitHub Mentions**. | Disabled | | **GitHub Mentions** | Whether to support tagging GitHub users with `@` (enabled) or not (disabled). When enabled, n8n replaces `@name` with `https://github.com/name`. | Disabled | | **GitHub Task Lists** | Whether to support GitHub Flavored Markdown task lists (enabled) or not (disabled). | Disabled | | **Header Level Start** | Number. Set the start level for headers. For example, changing this field to `2` causes n8n to treat `#` as `

`, `##` as `

`, and so on. | 1 | -| **Mandatory Space Before Header** | Whether to make a space between `#` and heading text required (enabled) or not (disabled). When enabled, n8n renders a heading written as `##Some header text` literally (it does not turn it into a heading element) | Disabled | +| **Mandatory Space Before Header** | Whether to make a space between `#` and heading text required (enabled) or not (disabled). When enabled, n8n renders a heading written as `##Some header text` literally (it doesn't turn it into a heading element) | Disabled | | **Middle Word Asterisks** | Whether n8n should treat asterisks in words as Markdown (disabled) or render them as literal asterisks (enabled). | Disabled | | **Middle Word Underscores** | Whether n8n should treat underscores in words as Markdown (disabled) or render them as literal underscores (enabled). | Disabled | | **No Header ID** | Disable automatic generation of header IDs (enabled). | Disabled | -| **Parse Image Dimensions** | Support setting maximum image dimensions in Markdown syntaxt (enabled). | Disabled | +| **Parse Image Dimensions** | Support setting maximum image dimensions in Markdown syntax (enabled). | Disabled | | **Prefix Header ID** | Define a prefix to add to header IDs. | None | | **Raw Header ID** | Whether to remove spaces, `'`, and `"` from header IDs, including prefixes, replacing them with `-` (enabled) or not (disabled). | Disabled | | **Raw Prefix Header ID** | Whether to prevent n8n from modifying header prefixes (enabled) or not (disabled) | Disabled | diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.n8ntrigger.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.n8ntrigger.md index f847f9923a9..38184a38de6 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.n8ntrigger.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.n8ntrigger.md @@ -6,49 +6,12 @@ contentType: integration # n8n trigger -The n8n trigger node gets triggered when the n8n instance is started or restarted. The n8n trigger node can be used to notify when the n8n instance starts. +The n8n trigger node gets triggered when the n8n instance starts or restarts. The n8n trigger node can be used to notify when the n8n instance starts. ## Node Reference - Events - - ***Instance started:*** triggers when the n8n instance is started or restarted + - **Instance started:** triggers when the n8n instance starts or restarts -## Example Usage -This workflow allows you to receive a message on Mattermost when your n8n instance starts. You can also find the [workflow](https://n8n.io/workflows/1058) on n8n.io. This example usage workflow uses the following nodes. -- [n8n trigger]() -- [Mattermost](/integrations/builtin/app-nodes/n8n-nodes-base.mattermost/) - -The final workflow should look like the following image. - -![A workflow with the Webhook node](/_images/integrations/builtin/core-nodes/n8ntrigger/workflow.png) - -### 1. n8n trigger node - -The n8n trigger node will trigger the workflow whenever n8n starts. - -1. Select 'Instance started' from the ***Events*** dropdown list. - -In the screenshot below, you will notice that the node triggers the workflow when the n8n instance starts. - -![Using the n8n trigger node to trigger the workflow](/_images/integrations/builtin/core-nodes/n8ntrigger/n8ntrigger_node.png) - -### 2. Mattermost node (post: message) - -This node will send a message in the `workflow` channel on Mattermost. - -1. First of all, you'll have to enter credentials for the Mattermost node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/mattermost/). -2. Select a channel from the ***Channel ID*** dropdown list. -3. Click on the gears icon next to the ***Message*** field click on ***Add Expression***. - -4. Enter the following message in the ***Expression*** field: `Your n8n instance started at {{$json["timestamp"]}}.`. -5. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node sends a message to Mattermost. - -![Using the Mattermost node to send a message to a channel](/_images/integrations/builtin/core-nodes/n8ntrigger/mattermost_node.png) - -/// note | Activate workflow for production -This example workflow uses the n8n trigger node, which is a trigger node. You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. -/// diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.ssetrigger.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.ssetrigger.md index 4d23c5e1a54..1ecde2ab4f0 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.ssetrigger.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.ssetrigger.md @@ -6,7 +6,7 @@ contentType: integration # SSE trigger -Server-Sent Events (SSE) is a server push technology enabling a client to receive automatic updates from a server via HTTP connection. The SSE trigger node is used to receive server-sent events and is a trigger node. +Server-Sent Events (SSE) is a server push technology enabling a client to receive automatic updates from a server using HTTP connection. The SSE trigger node is used to receive server-sent events and is a trigger node. ## Node Reference diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.ssh.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.ssh.md index 40f05ffb120..85a641fcc6c 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.ssh.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.ssh.md @@ -6,7 +6,7 @@ contentType: integration # SSH -The SSH node is useful for executing commands via the Secure Shell Protocol. +The SSH node is useful for executing commands using the Secure Shell Protocol. /// note | Credential You can find authentication information for this node [here](/integrations/builtin/credentials/ssh/). @@ -29,12 +29,12 @@ You can find authentication information for this node [here](/integrations/built - ***Working Directory:*** Only visible for **Command** resources. The directory where the command should be executed. - ***Path:*** Only visible for **Download** operation on file resources. The path where the desired file is found. - ***Binary Property:*** Only visible for file resources. The name of the binary property which contains the data for the file to be uploaded. -- ***Target Directory:*** Only visible for **Upload** operations on file resources. The directory to upload the file to. The name of the file does not need to be specified, it's taken from the binary data file name. To override this behavior, set the parameter **File Name** under options. +- ***Target Directory:*** Only visible for **Upload** operations on file resources. The directory to upload the file to. The name of the file doesn'tneed to be specified, it's taken from the binary data file name. To override this behavior, set the parameter **File Name** under options. ## Example Usage -This workflow allows you to remotely connect to your computer via SSH. This example usage workflow would use the following nodes. +This workflow allows you to remotely connect to your computer using SSH. This example usage workflow would use the following nodes. - [Start](/integrations/builtin/core-nodes/n8n-nodes-base.start/) - [SSH]() diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.start.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.start.md index 0242d1f85b9..0ac2b121f82 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.start.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.start.md @@ -3,17 +3,17 @@ title: Start description: Documentation for the Start node in n8n, a workflow automation platform. Includes guidance on usage, and links to examples. contentType: integration --- - + # Start /// warning | Deprecated -The Start node was removed from n8n in 0.199.0. It is still available in legacy workflows. +The Start node was removed from n8n in 0.199.0. It's still available in legacy workflows. /// The start node is the first node in a workflow. It exists by default when you create a new workflow and looks like the following image. ![A new workflow with the Start node](/_images/integrations/builtin/core-nodes/start/workflow.png) -In case there is no trigger node in the workflow, the workflow always starts from the Start node. The Start node cannot be deleted. Even if a workflow contains a trigger node, there would still be a Start node. +In case there is no trigger node in the workflow, the workflow always starts from the Start node. The Start node can't be deleted. Even if a workflow contains a trigger node, there would still be a Start node. ## FAQs @@ -22,7 +22,7 @@ In case there is no trigger node in the workflow, the workflow always starts fro When using the *Execute Workflow* node in workflow A to execute workflow B, the *Start* node will act as the trigger node in workflow B. The second node in workflow B needs to be connected to the Start node for the workflow to execute correctly. - + diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.workflowtrigger.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.workflowtrigger.md index 197981e6409..2638765f74e 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.workflowtrigger.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.workflowtrigger.md @@ -20,40 +20,3 @@ The Workflow trigger node gets triggered for the workflow that it gets added to. - ***Active Workflow Updated:*** triggers when this workflow is updated - ***Workflow Activated:*** triggers when this workflow is activated -## Example Usage - -This workflow allows you to receive a message on Mattermost when a workflow is updated. You can also find the [workflow](https://n8n.io/workflows/1059) on n8n.io. This example usage workflow uses the following nodes. -- [Workflow trigger]() -- [Mattermost](/integrations/builtin/app-nodes/n8n-nodes-base.mattermost/) - -The final workflow should look like the following image. - -![A workflow with the Webhook node](/_images/integrations/builtin/core-nodes/workflowtrigger/workflow.png) - -### 1. Workflow trigger node - -Open the workflow where you want to add the Workflow trigger workflow. Add the Workflow trigger node to the workflow. - -The Workflow trigger node will trigger the workflow when the workflow gets updated. - -1. Select 'Active Workflow Updated' from the ***Events*** dropdown list. - -In the screenshot below, you will notice that the node triggers the workflow when the workflow gets updated. - -![Using the Workflow trigger node to trigger the workflow](/_images/integrations/builtin/core-nodes/workflowtrigger/workflowtrigger_node.png) - -### 2. Mattermost node (post: message) - -This node will send a message in the `workflow` channel on Mattermost. - -1. First of all, you'll have to enter credentials for the Mattermost node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/mattermost/). -2. Select a channel from the ***Channel ID*** dropdown list. -3. Click on the gears icon next to the ***Message*** field click on ***Add Expression***. - -4. Enter the following message in the ***Expression*** field: `The workflow {{$workflow.name}}, was updated.`. `$workflow.name` returns the name of the workflow. -5. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node sends a message to Mattermost. - -![Using the Mattermost node to send a message to a channel](/_images/integrations/builtin/core-nodes/workflowtrigger/mattermost_node.png) - diff --git a/docs/integrations/builtin/core-nodes/n8n-nodes-base.xml.md b/docs/integrations/builtin/core-nodes/n8n-nodes-base.xml.md index 17d9b5a6e68..53a81dd654e 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.xml.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.xml.md @@ -11,23 +11,23 @@ The XML node is useful to convert data from and to XML. ## Node Reference - **Mode:** The format the data should be converted from and to. - - ***JSON to XML:*** Converts data from JSON to XML - - ***XML to JSON:*** Converts data from XML to JSON -- ***Property Name:*** The name of the property which contains the data to convert. -- ***Options*** - - ***Allow Surrogate Chars:*** Allows using characters from the Unicode surrogate blocks. This field is displayed when 'JSON to XML' is selected from the ***Mode*** dropdown list. - - ***cdata:*** Wrap text nodes instead of escaping when necessary. This field is displayed when 'JSON to XML' is selected from the ***Mode*** dropdown list. - - ***Headless:*** Omit the XML header. This field is displayed when 'JSON to XML' is selected from the ***Mode*** dropdown list. - - ***Root Name:*** Root element name to be used. This field is displayed when 'JSON to XML' is selected from the ***Mode*** dropdown list. - - ***Explicit Array:*** Always put child nodes in an array if true; otherwise an array is created. This field is displayed when 'XML to JSON' is selected from the ***Mode*** dropdown list. - - ***Explicit Root:*** Set this if you want to get the root node in the resulting object. This field is displayed when 'XML to JSON' is selected from the ***Mode*** dropdown list. - - ***Ignore Attributes:*** Ignore all XML attributes and only create text nodes. This field is displayed when 'XML to JSON' is selected from the ***Mode*** dropdown list. - - ***Merge Attributes:*** Merge attributes and child elements as properties of the parent, instead of keying attributes off a child attribute object. This option is ignored if 'Ignore Attribute' is true. This field is displayed when 'XML to JSON' is selected from the ***Mode*** dropdown list. - - ***Normalize:*** Trim whitespaces inside the text nodes. This field is displayed when 'XML to JSON' is selected from the ***Mode*** dropdown list. - - ***Normalize Tags:*** Normalize all tag names to lowercase. This field is displayed when 'XML to JSON' is selected from the ***Mode*** dropdown list. - - ***Trim:*** Trim the whitespace at the beginning and end of text nodes. This field is displayed when 'XML to JSON' is selected from the ***Mode*** dropdown list. - - ***Attribute Key:*** Prefix that is used to access the attributes. - - ***Character Key:*** Prefix that is used to access the character content. + - **JSON to XML:** Converts data from JSON to XML + - **XML to JSON:** Converts data from XML to JSON +- **Property Name:** The name of the property which contains the data to convert. +- **Options** + - **Allow Surrogate Chars:** Allows using characters from the Unicode surrogate blocks. This field is displayed when 'JSON to XML' is selected from the **Mode** dropdown list. + - **cdata:** Wrap text nodes instead of escaping when necessary. This field is displayed when 'JSON to XML' is selected from the **Mode** dropdown list. + - **Headless:** Omit the XML header. This field is displayed when 'JSON to XML' is selected from the **Mode** dropdown list. + - **Root Name:** Root element name to be used. This field is displayed when 'JSON to XML' is selected from the **Mode** dropdown list. + - **Explicit Array:** Always put child nodes in an array if true; otherwise an array is created. This field is displayed when 'XML to JSON' is selected from the **Mode** dropdown list. + - **Explicit Root:** Set this if you want to get the root node in the resulting object. This field is displayed when 'XML to JSON' is selected from the **Mode** dropdown list. + - **Ignore Attributes:** Ignore all XML attributes and only create text nodes. This field is displayed when 'XML to JSON' is selected from the **Mode** dropdown list. + - **Merge Attributes:** Merge attributes and child elements as properties of the parent, instead of keying attributes off a child attribute object. This option is ignored if 'Ignore Attribute' is true. This field is displayed when 'XML to JSON' is selected from the **Mode** dropdown list. + - **Normalize:** Trim whitespaces inside the text nodes. This field is displayed when 'XML to JSON' is selected from the **Mode** dropdown list. + - **Normalize Tags:** Normalize all tag names to lowercase. This field is displayed when 'XML to JSON' is selected from the **Mode** dropdown list. + - **Trim:** Trim the whitespace at the beginning and end of text nodes. This field is displayed when 'XML to JSON' is selected from the **Mode** dropdown list. + - **Attribute Key:** Prefix that's used to access the attributes. + - **Character Key:** Prefix that's used to access the character content. ## Example Usage @@ -48,16 +48,26 @@ The start node exists by default when you create a new workflow. ### 2. HTTP Request node (GET) +<<<<<<< HEAD +1. Enter `https://www.thecocktaildb.com/api/json/v1/1/random.php` in the **URL** field. +2. Click on **Execute Node** to run the node. +======= 1. Enter `https://www.thecocktaildb.com/api/json/v1/1/random.php` in the ***URL*** field. 2. Click on ***Test step*** to run the node. +>>>>>>> main ![Get random cocktail data from CocktailDB API using the HTTP Request node](/_images/integrations/builtin/core-nodes/xml/httprequest_node.png) ### 3. XML node (JSON to XML) +<<<<<<< HEAD +1. Select 'JSON to XML' from the **Mode** dropdown list. +2. Click on **Execute Node** to run the node. +======= 1. Select 'JSON to XML' from the ***Mode*** dropdown list. 2. Click on ***Test step*** to run the node. +>>>>>>> main ![Convert JSON to XML using the XML node](/_images/integrations/builtin/core-nodes/xml/xml_node.png) diff --git a/docs/integrations/builtin/credentials/acuityscheduling.md b/docs/integrations/builtin/credentials/acuityscheduling.md index d75f56cd61e..96adeb7385b 100644 --- a/docs/integrations/builtin/credentials/acuityscheduling.md +++ b/docs/integrations/builtin/credentials/acuityscheduling.md @@ -39,7 +39,7 @@ You'll only need to enter the Credentials Name and click on the circle button in 1. Open your Acuity Scheduling dashboard. 2. Click on 'Integrations' in the left sidebar. 3. Scroll down and click on 'view credentials' under the API section. -4. Copy the ***User ID*** and ***API Key*** from the pop-up that is displayed. +4. Copy the ***User ID*** and ***API Key*** from the pop-up that's displayed. 5. Use these credentials with your Acuity Scheduling node credentials in n8n. ![Getting Acuity Scheduling credentials](/_images/integrations/builtin/credentials/acuityscheduling/using-access-token.gif) diff --git a/docs/integrations/builtin/credentials/agilecrm.md b/docs/integrations/builtin/credentials/agilecrm.md index c6646b51817..3cb449a5b28 100644 --- a/docs/integrations/builtin/credentials/agilecrm.md +++ b/docs/integrations/builtin/credentials/agilecrm.md @@ -20,7 +20,7 @@ Create an [Agile CRM](https://www.agilecrm.com/) account. 1. Open your Agile CRM dashboard. 2. Click on your user icon in the top right of the window. 3. Click on the Admin Settings button. -4. Click on the 'Developers & Api' button in the bottom left. +4. Click on the **Developers & Api** button in the bottom left. 5. Use the REST API key, your registered email and your Agile CRM subdomain (for instance, n8n) with your Agile CRM node credentials in n8n. diff --git a/docs/integrations/builtin/credentials/automizy.md b/docs/integrations/builtin/credentials/automizy.md index 0b44072cdd3..2a7d72267d6 100644 --- a/docs/integrations/builtin/credentials/automizy.md +++ b/docs/integrations/builtin/credentials/automizy.md @@ -20,5 +20,5 @@ Create an [Automizy](https://automizy.com/) account. 2. Click on ***Settings*** in the bottom left corner and select 'API Token'. 3. Click on the ***CREATE TOKEN*** button. 4. Click on the ***COPY & CLOSE*** button to copy the API token. -5. Use this API token with your Auotmizy node credentials in n8n. +5. Use this API token with your Automizy node credentials in n8n. diff --git a/docs/integrations/builtin/credentials/bannerbear.md b/docs/integrations/builtin/credentials/bannerbear.md index ac9d074efd7..167823231d4 100644 --- a/docs/integrations/builtin/credentials/bannerbear.md +++ b/docs/integrations/builtin/credentials/bannerbear.md @@ -18,10 +18,10 @@ Create a [BannerBear](https://www.BannerBear.com/) account. ## Using Access Token 1. Open your BannerBear dashboard. -2. Click on "Create New Project". +2. Click on **Create New Project**. 3. Enter Project name and save. -4. Click on Projects tab and enter the newly creatted project. -5. Click on "Settings / API Key". +4. Click on Projects tab and enter the newly created project. +5. Click on **Settings / API Key**. 6. Use API key in your Bannerbear node credentials in n8n. diff --git a/docs/integrations/builtin/credentials/bitbucket.md b/docs/integrations/builtin/credentials/bitbucket.md index e44e12d392a..24a477c0210 100644 --- a/docs/integrations/builtin/credentials/bitbucket.md +++ b/docs/integrations/builtin/credentials/bitbucket.md @@ -13,7 +13,7 @@ You can use these credentials to authenticate the following nodes with Bitbucket ## Prerequisites -Create a [Bitbucket](https://www.Bitbucket.com/){:target=_blank .external-link} account. +Create a [Bitbucket](https://www.bitbucket.com/){:target=_blank .external-link} account. ## Using Username and App Password diff --git a/docs/integrations/builtin/credentials/bitly.md b/docs/integrations/builtin/credentials/bitly.md index 03a0e31d304..5b44d29f426 100644 --- a/docs/integrations/builtin/credentials/bitly.md +++ b/docs/integrations/builtin/credentials/bitly.md @@ -22,9 +22,9 @@ You'll only need to enter the Credentials Name and click on the circle button in 1. Open your Bitly dashboard. 2. Click on your account button in the top right. -3. Click on "Profile Settings". -4. Click on "Registered OAuth Applications". -5. Click on "GET REGISTRATION CODE". +3. Click on **Profile Settings**. +4. Click on **Registered OAuth Applications**. +5. Click on **GET REGISTRATION CODE**. 6. Use Client Secret and Client ID in your Bitly node credentials in n8n. 7. Enter n8n provided redirect URL. Redirect URL Explanation [here](/). @@ -35,8 +35,8 @@ You'll only need to enter the Credentials Name and click on the circle button in 1. Open your Bitly dashboard. 2. Click on your account button in the top right. -3. Click on "Profile Settings". -4. Click on "Generate Access Token". +3. Click on **Profile Settings**. +4. Click on **Generate Access Token**. 5. Enter password. 6. Use the access token in your Bitly node credentials in n8n. diff --git a/docs/integrations/builtin/credentials/calendly.md b/docs/integrations/builtin/credentials/calendly.md index d892b963d42..c5036d23ad9 100644 --- a/docs/integrations/builtin/credentials/calendly.md +++ b/docs/integrations/builtin/credentials/calendly.md @@ -17,7 +17,7 @@ Create a [Calendly](https://www.calendly.com/) premium account. ## Using Access Token 1. Open your Calendly dashboard. -2. Click on "Integrations". +2. Click on **Integrations**. 3. Use API key in your Calendly node credentials in n8n. diff --git a/docs/integrations/builtin/credentials/chargebee.md b/docs/integrations/builtin/credentials/chargebee.md index 8b3b2a67745..3a4e2f4d8ce 100644 --- a/docs/integrations/builtin/credentials/chargebee.md +++ b/docs/integrations/builtin/credentials/chargebee.md @@ -18,9 +18,9 @@ Create a [Chargebee](https://www.chargebee.com/) account. ## Using Access Token 1. Open your Chargebee dashboard. -2. Click on "Settings". -3. Click on "Configure Chargebee". -4. Scroll down and click on "API Keys". +2. Click on **Settings**. +3. Click on **Configure Chargebee**. +4. Scroll down and click on **API Keys**. 5. Use selected API key and Account name in your Chargebee node credentials in n8n. diff --git a/docs/integrations/builtin/credentials/clearbit.md b/docs/integrations/builtin/credentials/clearbit.md index a054efa82a9..8dddd2c88c7 100644 --- a/docs/integrations/builtin/credentials/clearbit.md +++ b/docs/integrations/builtin/credentials/clearbit.md @@ -19,8 +19,8 @@ Create a [Clearbit](https://www.clearbit.com/) account. ## Using Access Token 1. Open your Clearbit dashboard. -2. Click on "API". -3. Click on "Configure Chargebee". +2. Click on **API**. +3. Click on **Configure Chargebee**. 4. Use selected API key in your Clearbit node credentials in n8n. diff --git a/docs/integrations/builtin/credentials/clockify.md b/docs/integrations/builtin/credentials/clockify.md index 6aa2f42a45a..aa63505e6e8 100644 --- a/docs/integrations/builtin/credentials/clockify.md +++ b/docs/integrations/builtin/credentials/clockify.md @@ -19,7 +19,7 @@ Create a [Clockify](https://www.clockify.com/) account. 1. Open your Clockify dashboard. 2. Click on your profile. -3. Click on "Profile Settings". +3. Click on **Profile Settings**. 4. Scroll down and click on "Generate" under API. 5. Use selected API key in your Clockify node credentials in n8n. diff --git a/docs/integrations/builtin/credentials/cockpit.md b/docs/integrations/builtin/credentials/cockpit.md index b1c4c37e3f4..ef83689be22 100644 --- a/docs/integrations/builtin/credentials/cockpit.md +++ b/docs/integrations/builtin/credentials/cockpit.md @@ -18,7 +18,7 @@ Create a [Cockpit](https://www.getcockpit.com/) account. 1. Open your Cockpit dashboard. 2. Click on your profile in the top right. -3. Click on "Account". +3. Click on **Account**. 4. Scroll down and copy API key. 5. Use selected API key and your Cockpit URL in your Cockpit node credentials in n8n. diff --git a/docs/integrations/builtin/credentials/crowdstrike.md b/docs/integrations/builtin/credentials/crowdstrike.md index 46bb5ca568d..0a2224fc56f 100644 --- a/docs/integrations/builtin/credentials/crowdstrike.md +++ b/docs/integrations/builtin/credentials/crowdstrike.md @@ -13,7 +13,7 @@ n8n supports CrowdStrike authentication using OAuth2. ## Related resources -Refer to CrowdStrike's documentation for more information about the service. Their documentation is behind a log in, so you must log in to your account on thier website to access the API documentation. +Refer to CrowdStrike's documentation for more information about the service. Their documentation is behind a log in, so you must log in to your account on their website to access the API documentation. + # One Simple API credentials You can use these credentials to authenticate the following nodes with Nextcloud. @@ -26,3 +27,4 @@ Create a [One Simple API](https://onesimpleapi.com/register) account. ![The API token field in n8n](/_images/integrations/builtin/credentials/onesimpleapi/one_simple_api_n8n_credentials.png) 7. Click the **Save** button. + \ No newline at end of file diff --git a/docs/integrations/builtin/credentials/onfleet.md b/docs/integrations/builtin/credentials/onfleet.md index 1215e7dc4e8..5b48bd01e9c 100644 --- a/docs/integrations/builtin/credentials/onfleet.md +++ b/docs/integrations/builtin/credentials/onfleet.md @@ -1,10 +1,10 @@ --- -title: Onfleet credentials credentials -description: Documentation for Onfleet credentials credentials. Use these credentials to authenticate Onfleet in n8n, a workflow automation platform. +title: Onfleet credentials +description: Documentation for Onfleet credentials. Use these credentials to authenticate Onfleet in n8n, a workflow automation platform. contentType: integration --- -# Onfleet credentials credentials +# Onfleet credentials You can use these credentials to authenticate the following nodes with Onfleet: diff --git a/docs/integrations/builtin/credentials/phantombuster.md b/docs/integrations/builtin/credentials/phantombuster.md index 8f18b542515..4e8bfa480ca 100644 --- a/docs/integrations/builtin/credentials/phantombuster.md +++ b/docs/integrations/builtin/credentials/phantombuster.md @@ -1,26 +1,26 @@ --- -title: Phantombuster credentials -description: Documentation for Phantombuster credentials. Use these credentials to authenticate Phantombuster in n8n, a workflow automation platform. +title: PhantomBuster credentials +description: Documentation for PhantomBuster credentials. Use these credentials to authenticate PhantomBuster in n8n, a workflow automation platform. contentType: integration --- -# Phantombuster credentials +# PhantomBuster credentials -You can use these credentials to authenticate the following nodes with Phantombuster. +You can use these credentials to authenticate the following nodes with PhantomBuster. -- [Phantombuster](/integrations/builtin/app-nodes/n8n-nodes-base.phantombuster/) +- [PhantomBuster](/integrations/builtin/app-nodes/n8n-nodes-base.phantombuster/) ## Prerequisites -Create a [Phantombuster](https://www.phantombuster.com/) account. +Create a [PhantomBuster](https://www.phantombuster.com/) account. ## Using API -1. Access your [Phantombuster](https://phantombuster.com/) dashboard. +1. Access your [PhantomBuster](https://phantombuster.com/) dashboard. 2. Click on your name on the top right and select 'Org settings'. 3. Scroll down to the ***Third party API keys*** section. 4. Click on the ***+ Add third party API key*** button. -5. Use this ***API Key*** with your Phantombuster node credentials in n8n. +5. Use this ***API Key*** with your PhantomBuster node credentials in n8n. -![Getting Phantombuster credentials](/_images/integrations/builtin/credentials/phantombuster/using-api.gif) +![Getting PhantomBuster credentials](/_images/integrations/builtin/credentials/phantombuster/using-api.gif) diff --git a/docs/integrations/builtin/credentials/pushbullet.md b/docs/integrations/builtin/credentials/pushbullet.md index ad34cb5e701..95f4fcca4e6 100644 --- a/docs/integrations/builtin/credentials/pushbullet.md +++ b/docs/integrations/builtin/credentials/pushbullet.md @@ -24,7 +24,7 @@ Create a [Pushbullet](https://www.pushbullet.com/) account. 6. Click the ***Connect my account*** button to connect to Pushbullet and save your credentials in n8n. /// note | Pushbullet OAuth Test Link -Pushbullet does offer a test link during the client creation process described above. This link is not compatible with n8n. In order to verify the authentication works, simply use the ***Connect my account*** button in n8n. +Pushbullet does offer a test link during the client creation process described above. This link isn't compatible with n8n. To verify the authentication works, use the ***Connect my account*** button in n8n. /// ![Getting Pushbullet credentials](/_images/integrations/builtin/credentials/pushbullet/using-oauth.gif) diff --git a/docs/integrations/builtin/credentials/qradar.md b/docs/integrations/builtin/credentials/qradar.md index e4675756548..9b87c762c2a 100644 --- a/docs/integrations/builtin/credentials/qradar.md +++ b/docs/integrations/builtin/credentials/qradar.md @@ -9,7 +9,7 @@ You can use these credentials to authenticate when using the HTTP Request node t ## Authentication methods -n8n supports QRada authentication with an API key. +n8n supports QRadar authentication with an API key. ## Related resources diff --git a/docs/integrations/builtin/credentials/rocketchat.md b/docs/integrations/builtin/credentials/rocketchat.md index 3c044ddfa1a..7bcd98e0274 100644 --- a/docs/integrations/builtin/credentials/rocketchat.md +++ b/docs/integrations/builtin/credentials/rocketchat.md @@ -24,6 +24,6 @@ You can use these credentials to authenticate the following nodes with Rocket.Ch 5. Enter a name for your Personal access token and click on the *Add* button. 6. Copy the *Token* and enter that in the *Auth Key* field in n8n. 7. Copy the *User Id* and enter that in the *User Id* field in n8n. - + ![Getting Rocket.Chat credentials](/_images/integrations/builtin/credentials/rocketchat/using-access-token.gif) - + diff --git a/docs/integrations/builtin/credentials/salesforce.md b/docs/integrations/builtin/credentials/salesforce.md index 571b65d82fc..80caae2983b 100644 --- a/docs/integrations/builtin/credentials/salesforce.md +++ b/docs/integrations/builtin/credentials/salesforce.md @@ -27,7 +27,7 @@ You'll only need to enter the Credentials Name, Access Token URL, and click on t 5. Enter any necessary information and click on the ***Enable OAuth Settings*** checkbox. 6. Copy the ***OAuth Callback URL*** provided in the 'Salesforce OAuth2 API' credentials in n8n. 7. On the Salesforce app creation page, paste the URL in the ***Callback URL*** field. -8. Add the "Perform requests on your behalf at any time (refresh_token, offline_access)" scope in the ***Selected OAuth Scopes*** section. +8. Add the **Perform requests on your behalf at any time (refresh_token, offline_access)** scope in the ***Selected OAuth Scopes*** section. 9. Add any other scopes you plan to use in the ***Selected OAuth Scopes*** section. 10. Click on the ***Save*** button at the bottom of the page. 11. On the ***New Connected App*** page, click on the ***Continue*** button. @@ -52,7 +52,7 @@ To use the OAuth JWT authentication method with the Salesforce node you need to 7. On the Salesforce app creation page, paste the URL in the ***Callback URL*** field. 8. Click on the ***Use digital signatures*** checkbox. 9. Upload the private key that you created earlier. -10. Add the "Perform requests on your behalf at any time (refresh_token, offline_access)" scope in the ***Selected OAuth Scopes*** section. +10. Add the **Perform requests on your behalf at any time (refresh_token, offline_access)** scope in the ***Selected OAuth Scopes*** section. 11. Add any other scopes you plan to use in the ***Selected OAuth Scopes*** section. 12. Click on the ***Save*** button at the bottom of the page. 13. On the ***New Connected App*** page, click on the ***Continue*** button. diff --git a/docs/integrations/builtin/credentials/servicenow.md b/docs/integrations/builtin/credentials/servicenow.md index ee019777caf..7d872c33462 100644 --- a/docs/integrations/builtin/credentials/servicenow.md +++ b/docs/integrations/builtin/credentials/servicenow.md @@ -6,7 +6,7 @@ contentType: integration # ServiceNow credentials -You can use these credentials to authenticate the following nodes with serviceNow. +You can use these credentials to authenticate the following nodes with ServiceNow. - [ServiceNow](/integrations/builtin/app-nodes/n8n-nodes-base.servicenow/) diff --git a/docs/integrations/builtin/credentials/splunk.md b/docs/integrations/builtin/credentials/splunk.md index 01da2934685..d5ef2fb9dc8 100644 --- a/docs/integrations/builtin/credentials/splunk.md +++ b/docs/integrations/builtin/credentials/splunk.md @@ -24,7 +24,7 @@ From your Splunk UI: From n8n: -4. Enter your API key and application Base URL (e.g. `https://localhost:8089`). +4. Enter your API key and application Base URL (for example, `https://localhost:8089`). 5. Use the toggle to select if you want to **Allow Unauthorized Certificates**. 6. Click **Save** to create your credentials. diff --git a/docs/integrations/builtin/credentials/ssh.md b/docs/integrations/builtin/credentials/ssh.md index b42510721d7..dea1b909713 100644 --- a/docs/integrations/builtin/credentials/ssh.md +++ b/docs/integrations/builtin/credentials/ssh.md @@ -19,7 +19,7 @@ See [Connecting to GitHub with SSH](https://docs.github.com/en/github/authentica 1. From the SSH Credentials dropdown, select ***Create New*** and complete the following fields: - ***Credentials Name***: Enter a descriptive name, here we used `ssh_demo`. - - ***Host***: Enter the IP address of the server you are connecting to. Here we are using `192.168.1.8` for a local Mac set up for SSH access. + - ***Host***: Enter the IP address of the server you are connecting to. Here we're using `192.168.1.8` for a local Mac set up for SSH access. - ***Port***: Enter the port to use for this connection. SSH used port 22 by default. - ***User***: Enter the your username for this server. - ***Password***: Enter your password for the provided username. diff --git a/docs/integrations/builtin/credentials/telegram.md b/docs/integrations/builtin/credentials/telegram.md index af3b796ef67..561e4e9b8c2 100644 --- a/docs/integrations/builtin/credentials/telegram.md +++ b/docs/integrations/builtin/credentials/telegram.md @@ -17,7 +17,7 @@ Create a [Telegram](https://telegram.org/) account. ## Using Bot Access Token -1. Start a chat with the [Botfather](https://telegram.me/BotFather). +1. Start a chat with the [BotFather](https://telegram.me/BotFather). 2. Enter `/newbot` and reply with your new bot's display name and username. 3. Copy the bot token and use it in the Telegram node credentials in n8n. diff --git a/docs/integrations/builtin/credentials/venafitlsprotectdatacenter.md b/docs/integrations/builtin/credentials/venafitlsprotectdatacenter.md index 40185d60f90..2a8df80b60b 100644 --- a/docs/integrations/builtin/credentials/venafitlsprotectdatacenter.md +++ b/docs/integrations/builtin/credentials/venafitlsprotectdatacenter.md @@ -3,7 +3,7 @@ title: Venafi TLS Protect Datacenter credentials description: Documentation for Venafi TLS Protect Datacenter credentials. Use these credentials to authenticate Venafi TLS Protect Datacenter in n8n, a workflow automation platform. contentType: integration --- - + # Venafi TLS Protect Datacenter credentials You can use these credentials to authenticate the following nodes with Venafi TLS Protect Datacenter: @@ -15,3 +15,4 @@ Venafi provide a [PDF guide](/_downloads/venafi-tpp.pdf) to getting credentials. 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. + \ No newline at end of file diff --git a/docs/integrations/builtin/credentials/vero.md b/docs/integrations/builtin/credentials/vero.md index 7f97dc4aa64..058a652c60e 100644 --- a/docs/integrations/builtin/credentials/vero.md +++ b/docs/integrations/builtin/credentials/vero.md @@ -1,25 +1,25 @@ --- -title: Vero credentials -description: Documentation for Vero credentials. Use these credentials to authenticate Vero in n8n, a workflow automation platform. +title: VERO credentials +description: Documentation for VERO credentials. Use these credentials to authenticate VERO in n8n, a workflow automation platform. contentType: integration --- -# Vero credentials +# VERO credentials You can use these credentials to authenticate the following nodes with Vero. -- [Vero](/integrations/builtin/app-nodes/n8n-nodes-base.vero/) +- [VERO](/integrations/builtin/app-nodes/n8n-nodes-base.vero/) ## Prerequisites -Create a [Vero](https://getvero.com/) account. +Create a [VERO](https://getvero.com/) account. ## Using Access Token -1. Access your Vero dashboard. +1. Access your VERO dashboard. 2. Click on the cog icon in the bottom left. 3. Scroll down to see your Auth token. -4. Use the auth token with your Vero node credentials in n8n. +4. Use the auth token with your VERO node credentials in n8n. -![Getting Vero credentials](/_images/integrations/builtin/credentials/vero/using-access-token.gif) +![Getting VERO credentials](/_images/integrations/builtin/credentials/vero/using-access-token.gif) diff --git a/docs/integrations/builtin/credentials/wekan.md b/docs/integrations/builtin/credentials/wekan.md index c4fe893b054..c7b177520cd 100644 --- a/docs/integrations/builtin/credentials/wekan.md +++ b/docs/integrations/builtin/credentials/wekan.md @@ -1,20 +1,20 @@ --- -title: Wekan credentials -description: Documentation for Wekan credentials. Use these credentials to authenticate Wekan in n8n, a workflow automation platform. +title: WeKan credentials +description: Documentation for WeKan credentials. Use these credentials to authenticate WeKan in n8n, a workflow automation platform. contentType: integration --- -# Wekan credentials +# WeKan credentials -You can use these credentials to authenticate the following nodes with Wekan. +You can use these credentials to authenticate the following nodes with WeKan. -- [Wekan](/integrations/builtin/app-nodes/n8n-nodes-base.wekan/) +- [WeKan](/integrations/builtin/app-nodes/n8n-nodes-base.wekan/) ## Prerequisites -Install [Wekan](https://github.com/wekan/wekan/wiki) on your server. +Install [WeKan](https://github.com/wekan/wekan/wiki) on your server. ## Using API Key -1. Use the Wekan username, password, and URL with your Wekan node credentials in n8n. +1. Use the WeKan username, password, and URL with your WeKan node credentials in n8n. diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.activecampaigntrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.activecampaigntrigger.md index 62c810bc19c..6fa8f33f0fb 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.activecampaigntrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.activecampaigntrigger.md @@ -13,24 +13,3 @@ You can find authentication information for this node [here](/integrations/built /// -## Example Usage - -This workflow allows you to receive updates when a new account is added by an admin in ActiveCampaign. You can also find the [workflow](https://n8n.io/workflows/488) on the website. This example usage workflow would use the following node. -- [ActiveCampaign Trigger]() - -The final workflow should look like the following image. - -![A workflow with the ActiveCampaign Trigger node](/_images/integrations/builtin/trigger-nodes/activecampaigntrigger/workflow.png) - - -### 1. ActiveCampaign Trigger node - -1. First of all, you'll have to enter credentials for the ActiveCampaign Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/activecampaign/). -2. Select 'account_add' from the *Events* dropdown list. -3. Select 'Admin' from the *Source* dropdown list. -4. Click on *Execute Node* to run the workflow. - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the ActiveCampaign Trigger node. -/// - diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.airtabletrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.airtabletrigger.md index c8667172cec..3f983795798 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.airtabletrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.airtabletrigger.md @@ -12,52 +12,5 @@ contentType: integration You can find authentication information for this node [here](/integrations/builtin/credentials/airtable/). /// -## Example Usage -This workflow allows you to receive a Mattermost message when new data gets added to Airtable. You can also find the [workflow](https://n8n.io/workflows/799) on n8n.io. This example usage workflow would use the following nodes. -- [Airtable Trigger]() -- [Mattermost](/integrations/builtin/app-nodes/n8n-nodes-base.mattermost/) - -The final workflow should look like the following image. - -![A workflow with the Airtable Trigger node](/_images/integrations/builtin/trigger-nodes/airtabletrigger/workflow.png) - -### 1. Airtable Trigger node - -The Airtable Trigger node will trigger the workflow when new data gets added to Airtable. - -1. First of all, you'll have to enter credentials for the Airtable Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/airtable/). -2. Click on ***Add Poll Time*** and select 'Every Minute' from the ***Mode*** dropdown list. This will check Airtable every minute for new data entries. -3. Enter the Base ID in the ***Base ID*** field. For obtaining the Base ID, head over to their [API page](https://airtable.com/api) and select the correct base. You'll find the Base ID there. -4. Enter the table name in the ***Table*** field. -5. Enter a trigger field name in the ***Trigger Field*** field. If you don't have a 'Created Time' or 'Last modified time' field in your table, please create one. -6. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns the new data from Airtable. This output gets passed on to the next node in the workflow. - -![Using the Airtable Trigger node to trigger the workflow](/_images/integrations/builtin/trigger-nodes/airtabletrigger/airtabletrigger_node.png) - -### 2. Mattermost node (post: message) - -This node will send a message about the new data in the channel 'Information Updated' in Mattermost. If you have a different channel, use that instead. - -1. First of all, you'll have to enter credentials for the Mattermost node. You can find out how to do that [here](/integrations/builtin/credentials/mattermost/). - -2. Select a channel from the ***Channel ID*** dropdown list. -3. Click on the gears icon next to the ***Message*** field and click on ***Add Expression***. -4. Enter the following message in the ***Expression*** field: -``` -New Data was added to Airtable. -ID:{{$node["Airtable Trigger"].json["fields"]["id"]}} -Name: {{$node["Airtable Trigger"].json["fields"]["name"]}} -``` -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node sends a message in Mattermost about the new data that got added to Airtable. - -![Using the Mattermost node to send a message of the new data](/_images/integrations/builtin/trigger-nodes/airtabletrigger/mattermost_node.png) - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the Airtable Trigger node. -/// diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.amqptrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.amqptrigger.md index 815344fcdc6..5b564ffaadf 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.amqptrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.amqptrigger.md @@ -15,7 +15,7 @@ You can find authentication information for this node [here](/integrations/built ## Example Usage -This workflow allows you to receive messages for an [ActiveMQ](https://activemq.apache.org/) queue via AMQP Trigger. You can also find the [workflow](https://n8n.io/workflows/513) on the website. This example usage workflow would use the following node. +This workflow allows you to receive messages for an [ActiveMQ](https://activemq.apache.org/) queue using AMQP Trigger. You can also find the [workflow](https://n8n.io/workflows/513) on the website. This example usage workflow would use the following node. - [AMQP Trigger]() diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.boxtrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.boxtrigger.md index c3993b40906..9575018d336 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.boxtrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.boxtrigger.md @@ -40,6 +40,6 @@ You'll need to save the workflow and then click on the Activate toggle on the to ### How do I find my Target ID in Box? 1. Open the file/folder that you would like to monitor. -2. Copy the string of charatcters after `folder/` in your URL. This is the target ID. For example, if the URL is `https://app.box.com/folder/12345`, then `12345` is the target ID. +2. Copy the string of characters after `folder/` in your URL. This is the target ID. For example, if the URL is `https://app.box.com/folder/12345`, then `12345` is the target ID. 3. Paste it in the *Target ID* field in n8n. diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.calendlytrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.calendlytrigger.md index 122077be1f2..b2ad05d4178 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.calendlytrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.calendlytrigger.md @@ -6,7 +6,7 @@ contentType: integration # Calendly trigger -[Calendly](https://calendly.com/) is an automated scheduling software that is designed to make the process of finding meeting times easy. +[Calendly](https://calendly.com/) is an automated scheduling software that's designed to help find meeting times. /// note | Credentials You can find authentication information for this node [here](/integrations/builtin/credentials/calendly/). diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.caltrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.caltrigger.md index eb8f8bf7af0..9dcac812ee9 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.caltrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.caltrigger.md @@ -13,28 +13,5 @@ You can find authentication information for this node [here](/integrations/built /// -## Example Usage -This workflow allows you to receive updates for events in Cal. - -- [Cal Trigger]() - -The final workflow should look like the following image. - -![A workflow with the Cal Trigger node](/_images/integrations/builtin/trigger-nodes/caltrigger/workflow.png) - - -### 1. Cal Trigger node - -1. First of all, you'll have to enter credentials for the Cal Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/cal/). -2. Select the events you want to receive updates for from the **Events** dropdown list. -3. Click on **Test step** to run the node. - -(Optional Advanced Settings) - -Click on **Add Field** under advanced fields and select the option(s) you wish to add. You can enter an EventType ID, an App ID and a payload template. Note that the eventType ID must be of a team EventType. - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the Cal Trigger node. -/// diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.chargebeetrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.chargebeetrigger.md index 4af4a1daa9c..1784ab08dcd 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.chargebeetrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.chargebeetrigger.md @@ -38,9 +38,9 @@ You'll need to save the workflow and then click on the Activate toggle on the to ### How do I add my webhook URL in Chargebee? 1. Open your Chargebee dashboard. -2. Click on "Settings". -3. Click on "Configure Chargebee". -4. Scroll down and click on "Webhooks". +2. Click on **Settings**. +3. Click on **Configure Chargebee**. +4. Scroll down and click on **Webhooks**. 5. Click on the *Add Webhook* button. 6. Enter the Webhook Name and the Webhook URL. 7. Click on the *Create* button. diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.coppertrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.coppertrigger.md index 1050e52cc42..01f6207bc75 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.coppertrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.coppertrigger.md @@ -6,7 +6,7 @@ contentType: integration # Copper trigger -[Copper](https://www.copper.com/) is a CRM that focuses on strong integration with Google's G Suite. It is mainly targeted towards small and medium-sized businesses. +[Copper](https://www.copper.com/) is a CRM that focuses on strong integration with Google's G Suite. It's mainly targeted towards small and medium-sized businesses. /// note | Credentials You can find authentication information for this node [here](/integrations/builtin/credentials/copper/). diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.emeliatrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.emeliatrigger.md index 5bf32020953..fb7047441bd 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.emeliatrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.emeliatrigger.md @@ -21,46 +21,5 @@ You can find authentication information for this node [here](/integrations/built - Link Clicked - Unsubscribed Contact -## Example Usage -This workflow allows you to send a message on Mattermost when a lead replies to your email. You can also find the [workflow](https://n8n.io/workflows/1039) on n8n.io. This example usage workflow would use the following nodes. - -- [Emelia Trigger]() -- [Mattermost](/integrations/builtin/app-nodes/n8n-nodes-base.mattermost/) - -The final workflow should look like the following image. - -![A workflow with the Emelia Trigger node](/_images/integrations/builtin/trigger-nodes/emeliatrigger/workflow.png) - -### 1. Emelia Trigger - -The Emelia Trigger node will trigger the workflow when a lead sends a reply to the campaign `n8n`. If you have a different campaign, use that instead. - -1. First of all, you'll have to enter credentials for the Emelia Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/emelia/). -2. Select a campaign from the ***Campaign*** dropdown list. -3. Select 'Email Replied' from the ***Events*** dropdown list. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node triggers the workflow when a lead sends a reply. This output is passed on to the next node in the workflow. - -![Using the Emelia Trigger node to trigger the workflow](/_images/integrations/builtin/trigger-nodes/emeliatrigger/emeliatrigger_node.png) - -## 2. Mattermost node (post: message) - -This node will send a message to the `Leads` channel in Mattermost. If you have a different channel, use that instead. - -1. First of all, you'll have to enter credentials for the Mattermost node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/mattermost/). -2. Select a channel from the ***Channel ID*** dropdown list. -3. Click on the gears icon next to the ***Message*** field click on ***Add Expression***. - -4. Enter the following message in the ***Expression*** field. `{{$json["contact"]["firstName"]}} from {{$json["contact"]["company"]}} has replied back to your campaign.` -5. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node sends a message with a reply to the `Leads` channel in Mattermost. - -![Using the Mattermost node to send a message](/_images/integrations/builtin/trigger-nodes/emeliatrigger/mattermost_node.png) - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the Emelia Trigger node. -/// diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger.md index 1706b3f430d..871a179beff 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.facebooktrigger.md @@ -6,7 +6,7 @@ contentType: integration # Facebook trigger -[Facebook](https://www.facebook.com/) is a social networking site that makes it easy to connect and share with family and friends online. +[Facebook](https://www.facebook.com/) is a social networking site to connect and share with family and friends online. /// note | Credentials You can find authentication information for this node [here](/integrations/builtin/credentials/facebookapp/). @@ -23,48 +23,7 @@ You can find authentication information for this node [here](/integrations/built - Page updates - Updates regarding granting or revoking permissions - User profile updates -- Get updates about Whatsapp business account +- Get updates about WhatsApp business account - Get updates about Workplace security -## Example Usage -This workflow allows you to receive a Mattermost message when a user updates their profile on Facebook. You can also find the [workflow](https://n8n.io/workflows/785) on n8n.io. This example usage workflow would use the following nodes. - -- [Facebook Trigger]() -- [Mattermost](/integrations/builtin/app-nodes/n8n-nodes-base.mattermost/) - -The final workflow should look like the following image. - -![A workflow with the Facebook Trigger node](/_images/integrations/builtin/trigger-nodes/facebooktrigger/workflow.png) - -### 1. Facebook Trigger node - -The Facebook Trigger node will trigger the workflow when a user updates their profile on Facebook. - -1. First of all, you'll have to enter credentials for the Facebook Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/facebookapp/). -2. Select 'User' from the ***Object*** dropdown list. -3. Enter your app ID in the ***App ID*** field. -3. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns the updated information of the user from Facebook. This output is passed on to the next node in the workflow. - -![Using the Facebook Trigger node to trigger the workflow](/_images/integrations/builtin/trigger-nodes/facebooktrigger/facebooktrigger_node.png) - -### 2. Mattermost node (post: message) - -This node will send a message of the updated information in the channel `Information Updated` in Mattermost. If you have a different channel, use that instead. - -1. First of all, you'll have to enter credentials for the Mattermost node. You can find out how to do that [here](/integrations/builtin/credentials/mattermost/). - -2. Select a channel from the ***Channel ID*** dropdown list. -3. Click on the gears icon next to the ***Message*** field and click on ***Add Expression***. -4. Enter the following message in the ***Expression*** field: `The user with uid {{$node["Facebook Trigger"].json["uid"]}} changed their {{$node["Facebook Trigger"].json["changes"][0]["field"]}} to {{$node["Facebook Trigger"].json["changes"][0]["value"]["page"]}}.`. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node sends a message about the updated information to the `Information Updated` channel in Mattermost. - -![Using the Mattermost node to send a message of the updated information](/_images/integrations/builtin/trigger-nodes/facebooktrigger/mattermost_node.png) - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the Facebook Trigger node. -/// diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.figmatrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.figmatrigger.md index 3808060472e..e2ccfbe69db 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.figmatrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.figmatrigger.md @@ -13,7 +13,7 @@ You can find authentication information for this node [here](/integrations/built /// /// warning | Supported Figma Plans -Figma does not support webhooks on the free "Starter" plan. Your team would need to be on the "Professional" plan to use this node. +Figma doesn't support webhooks on the free "Starter" plan. Your team would need to be on the "Professional" plan to use this node. /// ## Trigger Events diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.kobotoolboxtrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.kobotoolboxtrigger.md index e0b12ad2bcc..6db77e5278e 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.kobotoolboxtrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.kobotoolboxtrigger.md @@ -6,7 +6,7 @@ contentType: integration # KoBo Toolbox trigger -[KoBo toolbox](https://www.kobotoolbox.org/) is a field survey and data collection tool that makes it easy to design interactive forms to be completed offline from mobile devices. It is available both as a free cloud solution or as a self-hosted version. +[KoBo toolbox](https://www.kobotoolbox.org/) is a field survey and data collection tool to design interactive forms to be completed offline from mobile devices. It's available both as a free cloud solution or as a self-hosted version. /// note | Credentials You can find authentication information for this node [here](/integrations/builtin/credentials/kobotoolbox/). diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.lemlisttrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.lemlisttrigger.md index 9eaaa6d43f9..c9f793869f4 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.lemlisttrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.lemlisttrigger.md @@ -22,51 +22,5 @@ You can find authentication information for this node [here](/integrations/built - Email Sent - Email Unsubscribed -## Example Usage -This workflow allows you to send a message on Mattermost when a lead replies to your email. You can also find the [workflow](https://n8n.io/workflows/984) on n8n.io. This example usage workflow would use the following node. - -- [Lemlist Trigger]() -- [Mattermost](/integrations/builtin/app-nodes/n8n-nodes-base.mattermost/) - -The final workflow should look like the following image. - -![A workflow with the Lemlist Trigger node](/_images/integrations/builtin/trigger-nodes/lemlisttrigger/workflow.png) - -### 1. Lemlist Trigger - -The Lemlist Trigger node will trigger the workflow when a lead sends a reply to the campaign `Docs campaign`. If you have a different campaign, use that instead. - -1. First of all, you'll have to enter credentials for the Lemlist Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/lemlist/). -2. Select 'Email Replied' from the ***Events*** dropdown list. -3. Click on ***Add Field*** and select 'Campaign ID'. -4. Select 'Docs campaign' from the ***Campaign ID*** dropdown list. -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns the information of the reply that was sent by a lead. This output is passed on to the next node in the workflow. - -![Using the Lemlist Trigger node to trigger the workflow](/_images/integrations/builtin/trigger-nodes/lemlisttrigger/lemlisttrigger_node.png) - -## 2. Mattermost node (post: message) - -This node will send a message to the `Leads` channel in Mattermost. If you have a different channel, use that instead. - -1. First of all, you'll have to enter credentials for the Mattermost node. You can find out how to enter credentials for this node [here](/integrations/builtin/credentials/mattermost/). -2. Select a channel from the ***Channel ID*** dropdown list. -3. Click on the gears icon next to the ***Message*** field click on ***Add Expression***. - -4. Enter the following message in the ***Expression*** field: -``` -{{$json["firstName"]}} has replied back to your {{$json["campaignName"]}}. Below is the reply: -> {{$json["text"]}} -``` -5. Click on ***Test step*** to run the workflow. - -In the screenshot below, you will notice that the node sends a message with a reply to the `Leads` channel in Mattermost. - -![Using the Mattermost node to send a message](/_images/integrations/builtin/trigger-nodes/lemlisttrigger/mattermost_node.png) - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the Lemlist Trigger node. -/// diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.mailerlitetrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.mailerlitetrigger.md index 7aa37e0fb9f..a357bde2e64 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.mailerlitetrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.mailerlitetrigger.md @@ -16,9 +16,9 @@ You can find authentication information for this node [here](/integrations/built - Campaign Sent - Subscriber Added to Group -- Subscriber Added through Webform -- Subscriber Autonomation Completed -- Subscriber Autonomation Triggered +- Subscriber Added through web form +- Subscriber Automation Completed +- Subscriber Automation Triggered - Subscriber Bounced - Subscriber Created - Subscriber Complained diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.mautictrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.mautictrigger.md index 0cb38e2d2f2..ea24b5b4db2 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.mautictrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.mautictrigger.md @@ -12,53 +12,3 @@ contentType: integration You can find authentication information for this node [here](/integrations/builtin/credentials/mautic/). /// -## Example Usage - -This workflow allows you to receive updates when a form is submitted in Mautic using the Mautic Trigger node and send an SMS confirmation to the submitter. You can also find the [workflow](https://n8n.io/workflows/721) on n8n.io. This example usage workflow would use the following node. - -- [Mautic Trigger]() -- [Twilio](/integrations/builtin/app-nodes/n8n-nodes-base.twilio/) - -The final workflow should look like the following image. - -![A workflow with the Mautic Trigger node](/_images/integrations/builtin/trigger-nodes/mautictrigger/workflow.png) - -### 1. Mautic Trigger node - -The Mautic Trigger node will trigger the workflow when a Mautic form is submitted. - -1. First of all, you'll have to enter credentials for the Mautic Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/mautic/). -2. Select 'Form Submit Event' from the ***Events*** dropdown list. -3. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node returns the data that was submitted to the Mautic form. This output is passed on to the next nodes in the workflow. - -![Using the Mautic Trigger node to trigger the workflow](/_images/integrations/builtin/trigger-nodes/mautictrigger/mautictrigger_node.png) - -### 2. Twilio node (send: sms) - -This node sends a registration confirmation SMS to the users who filled out the Mautic form. We get the phone number of the submitter from the previous node. - -1. First of all, you'll have to enter credentials for the Twilio node. You can find out how to do that [here](/integrations/builtin/credentials/twilio/). - -3. Enter the Twilio phone number in the ***From*** field. -4. Click on the gears icon next to the ***To*** field and click on ***Add Expression***. -5. Select the following in the ***Variable Selector*** section: Nodes > Mautic Trigger > Output Data > JSON > mautic.form_on_submit > [item: 0] > submission > results > phone_number. You can also add the following expression: `{{$node["Mautic Trigger"].json["mautic.form_on_submit"][0]["submission"]["results"]["phone_number"]}}`. -6. Click on the gears icon next to the ***Message*** field and click on ***Add Expression***. -7. Enter the following message in the ***Expression*** field. -``` -Hey, {{$node["Mautic Trigger"].json["mautic.form_on_submit"][0]["submission"]["results"]["first_name"]}} 👋 -Thank you for signing up for the Webinar - Getting Started with n8n. The webinar will start at 1800 CEST on 31st October 2020. -See you there! -``` -8. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node sends an SMS to the submitter whose name and phone number are returned by the Mautic Trigger node. - -![Using the Twilio node to send an SMS](/_images/integrations/builtin/trigger-nodes/mautictrigger/twilio_node.png) - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the Mautic Trigger node. -/// - diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.pushcuttrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.pushcuttrigger.md index b4b45e48994..1f0ba39c3eb 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.pushcuttrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.pushcuttrigger.md @@ -12,47 +12,7 @@ contentType: integration You can find authentication information for this node [here](/integrations/builtin/credentials/pushcut/). /// -## Example Usage -This workflow allows you to send an SMS to a number whenever you go out. You can also find the [workflow](https://n8n.io/workflows/870) on n8n.io. This example usage workflow uses the following nodes. - -- [Pushcut Trigger]() -- [Twilio](/integrations/builtin/app-nodes/n8n-nodes-base.twilio/) - -The final workflow should look like the following image. - -![A workflow with the Pushcut Trigger node](/_images/integrations/builtin/trigger-nodes/pushcuttrigger/workflow.png) - -### 1. Pushcut Trigger node - -Whenever you leave your house, Pushcut will send you a notification with an action `Leaving Home`. The Pushcut Trigger node will trigger the workflow when this action is selected. - -To create an action in the Pushcut app, follow the instructions mentioned in [FAQs](#how-to-configure-a-pushcut-action). - -1. First of all, you'll have to enter credentials for the Pushcut Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/pushcut/). -2. Enter an action name in the ***Action Name*** field. -3. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node triggers the workflow whenever the `Leaving Home` action is selected. - -![Using the Pushcut Trigger node to trigger the workflow](/_images/integrations/builtin/trigger-nodes/pushcuttrigger/pushcuttrigger_node.png) - -### 2. Twilio node (send: sms) - -This node will send an SMS to a specified phone number notifying the recipient that you are going out. - -1. First of all, you'll have to enter credentials for the Twilio node. You can find out how to do that [here](/integrations/builtin/credentials/twilio/). -2. Enter the Twilio phone number in the ***From*** field. -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***. - -6. Enter `I'm {{$node["Pushcut Trigger"].json["input"]}}` in the ***Expression*** field. -7. Click on ***Test step*** to run the node. - - -In the screenshot below, you will notice that the node sends an SMS with the input that we received from the Pushcut Trigger node. - -![Using the Twilio node to send an SMS](/_images/integrations/builtin/trigger-nodes/pushcuttrigger/twilio_node.png) ## FAQs @@ -60,7 +20,7 @@ In the screenshot below, you will notice that the node sends an SMS with the inp Follow the steps mentioned below to configure your Pushcut Trigger node with your Pushcut app. -1. In your Puschcut app, select a notification from the ***Notifications*** screen. +1. In your Pushcut app, select a notification from the ***Notifications*** screen. 2. Click on the ***Add Action*** button. 3. Enter an action name in the ***Label*** field. 4. Select the ***Server*** tab. @@ -70,7 +30,5 @@ Follow the steps mentioned below to configure your Pushcut Trigger node with you 8. Select this action under the ***Select Integration Trigger*** screen in your Pushcut app. 9. Click on ***Done*** on the top right to save the action. -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the Pushcut Trigger node. -/// + diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.stravatrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.stravatrigger.md index acadf00a5ee..4a5d3cd24c8 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.stravatrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.stravatrigger.md @@ -35,44 +35,3 @@ You can find authentication information for this node [here](/integrations/built - Updated -## Example Usage - -This workflow allows you to receive updates when a new activity gets created in Strava using the Strava Trigger node. It also allows you to tweet about the activity that was created in Strava using the Twitter node. You can also find the [workflow](https://n8n.io/workflows/745) on n8n.io. This example usage workflow would use the following node. -- [Strava Trigger]() -- [Twitter](/integrations/builtin/app-nodes/n8n-nodes-base.twitter/) - -The final workflow should look like the following image. - -![A workflow with the Strava Trigger node](/_images/integrations/builtin/trigger-nodes/stravatrigger/workflow.png) - -### 1. Strava Trigger node - -This node will trigger the workflow when a new activity gets created in Strava. - -1. First of all, you'll have to enter credentials for the Strava Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/strava/). -2. Select 'Activity' from the ***Object*** dropdown list. -3. Select 'created' from the ***Event*** dropdown list. -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node triggers the workflow when a new activity gets created in Strava. - -![Using the Strava Trigger node to receive updates when a new activity is created](/_images/integrations/builtin/trigger-nodes/stravatrigger/stravatrigger_node.png) - -### 2. Twitter node (create: tweet) - -This node will tweet about the activity that gets created in Strava. - -1. First of all, you'll have to enter credentials for the Twitter node. You can find out how to do that [here](/integrations/builtin/credentials/twitter/). -2. Click on the gears icon next to the ***Text*** field and click on ***Add Expression***. - -3. Enter the following text in the ***Expression*** field: `I ran {{$node["Strava Trigger"].json["object_data"]["distance"]}} meters and completed my {{$node["Strava Trigger"].json["object_data"]["name"]}}!` -4. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that this node gets the information of the activity in Strava from the previous node and tweets about it. - -![Using the Twitter node to tweet about the activity](/_images/integrations/builtin/trigger-nodes/stravatrigger/twitter_node.png) - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the Strava Trigger node. -/// - diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger.md index 7dd1672560c..024ad9c6c7f 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.telegramtrigger.md @@ -15,15 +15,15 @@ You can find authentication information for this node [here](/integrations/built ## Updates - `*`: All updates -- ***message***: Trigger on a new incoming message of any kind- text, photo, sticker, etc -- ***edited_message***: Trigger on a new version of a channel post that is known to the bot and was edited -- ***channel_post***: Trigger on a new incoming channel post of any kind - text, photo, sticker, etc -- ***edited_channel_post***: Trigger on a new version of a channel post that is known to the bot and was edited -- ***inline_query***: Trigger on a new incoming inline query -- ***callback_query***: Trigger on a new incoming callback query -- ***shipping_query***: Trigger on a new incoming shipping query. Only for invoices with flexible price -- ***pre_checkout_query***: Trigger on a new incoming pre-checkout query. Contains full information about checkout -- ***poll***: Trigger on a new poll state. Bots receive only updates about stopped polls and polls which are sent by the bot +- **message**: Trigger on a new incoming message of any kind- text, photo, sticker, etc +- **edited_message**: Trigger on a new version of a channel post that's known to the bot and was edited +- **channel_post**: Trigger on a new incoming channel post of any kind - text, photo, sticker, etc +- **edited_channel_post**: Trigger on a new version of a channel post that's known to the bot and was edited +- **inline_query**: Trigger on a new incoming inline query +- **callback_query**: Trigger on a new incoming callback query +- **shipping_query**: Trigger on a new incoming shipping query. Only for invoices with flexible price +- **pre_checkout_query**: Trigger on a new incoming pre-checkout query. Contains full information about checkout +- **poll**: Trigger on a new poll state. Bots receive only updates about stopped polls and polls which are sent by the bot ## Example Usage @@ -42,8 +42,8 @@ The final workflow should look like the following image. This node will trigger the workflow when a user sends a new message. 1. First of all, you'll have to enter credentials for the Telegram Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/telegram/). -2. Select 'message' from the ***Updates*** dropdown list. This will trigger the workflow when a user sends a message. -3. Click on ***Test step*** to run the node. +2. Select 'message' from the **Updates** dropdown list. This will trigger the workflow when a user sends a message. +3. Click on **Test Step** to run the node. In the screenshot below, you will notice that the node triggers the workflow when a user sends a new message. @@ -53,30 +53,30 @@ In the screenshot below, you will notice that the node triggers the workflow whe This node will make a GET request to the API `https://www.thecocktaildb.com/api/json/v1/1/random.php` to fetch a random cocktail. This information gets passed on to the next node in the workflow. -1. Enter `https://www.thecocktaildb.com/api/json/v1/1/random.php` in the ***URL*** field. -2. Click on ***Test step*** to run the node. +1. Enter `https://www.thecocktaildb.com/api/json/v1/1/random.php` in the **URL** field. +2. Click on **Test Step** to run the node. In the screenshot below, you will notice that the node makes a GET request to the API and returns information about a random cocktail. ![Using the HTTP Request node to get the information about a random cocktail](/_images/integrations/builtin/trigger-nodes/telegramtrigger/httprequest_node.png) -### 3. Telegram node (sendPhoto: message) +### 3. Telegram node (`sendPhoto: message`) This node will send a reply to the message with the name and image of the cocktail that we got from the previous node. 1. Select the credentials that you entered in the Telegram Trigger node. -2. Select 'Send Photo' from the ***Operation*** dropdown list. -3. Click on the gears icon next to the ***Chat ID*** field and click on ***Add Expression***. -4. Select the following in the ***Variable Selector*** section: Nodes > Telegram Trigger > Output Data > JSON > message > chat > id. You can also add the following expression: `{{$node["Telegram Trigger"].json["message"]["chat"]["id"]}}`. -5. Click on the gears icon next to the ***Photo*** field and click on ***Add Expression***. -6. Select the following in the ***Variable Selector*** section: Nodes > HTTP Request > Output Data > JSON > drinks > [item: 0] > strDrinkThumb. You can also add the following expression: `{{$node["HTTP Request"].json["drinks"][0]["strDrinkThumb"]}}`. -7. Click on ***Add Field*** and select 'Caption' from the dropdown list. -8. Click on the gears icon next to the ***Caption*** field and click on ***Add Expression***. -9. Select the following in the ***Variable Selector*** section: Nodes > HTTP Request > Output Data > JSON > drinks > [item: 0] > strDrink. You can also add the following expression: `{{$node["HTTP Request"].json["drinks"][0]["strDrink"]}}`. -10. Click on ***Add Field*** and select 'Reply To Message ID' from the dropdown list. -11. Click on the gears icon next to the ***Reply To Message ID*** field and click on ***Add Expression***. -12. Select the following in the ***Variable Selector*** section: Nodes > Telegram Trigger > Output Data > JSON > message > message_id. You can also add the following expression: `{{$node["Telegram Trigger"].json["message"]["message_id"]}}`. -13. Click on ***Test step*** to run the node. +2. Select 'Send Photo' from the **Operation** dropdown list. +3. Click on the gears icon next to the **Chat ID** field and click on **Add Expression**. +4. Select the following in the **Variable Selector** section: Nodes > Telegram Trigger > Output Data > JSON > message > chat > id. You can also add the following expression: `{{$node["Telegram Trigger"].json["message"]["chat"]["id"]}}`. +5. Click on the gears icon next to the **Photo** field and click on **Add Expression**. +6. Select the following in the **Variable Selector** section: Nodes > HTTP Request > Output Data > JSON > drinks > [item: 0] > strDrinkThumb. You can also add the following expression: `{{$node["HTTP Request"].json["drinks"][0]["strDrinkThumb"]}}`. +7. Click on **Add Field** and select 'Caption' from the dropdown list. +8. Click on the gears icon next to the **Caption** field and click on **Add Expression**. +9. Select the following in the **Variable Selector** section: **Nodes > HTTP Request > Output Data > JSON > drinks > [item: 0] > strDrink**. You can also add the following expression: `{{$node["HTTP Request"].json["drinks"][0]["strDrink"]}}`. +10. Click on **Add Field** and select 'Reply To Message ID' from the dropdown list. +11. Click on the gears icon next to the **Reply To Message ID** field and click on **Add Expression**. +12. Select the following in the **Variable Selector** section: **Nodes > Telegram Trigger > Output Data > JSON > message > message_id**. You can also add the following expression: `{{$node["Telegram Trigger"].json["message"]["message_id"]}}`. +13. Click on **Execute Node** to run the node. In the screenshot below, you will notice that the node sends a reply to the message with the name and image of the cocktail that we got from the previous node. diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.trellotrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.trellotrigger.md index a14e289c636..8d6c35cf6f1 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.trellotrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.trellotrigger.md @@ -37,7 +37,9 @@ You'll need to save the workflow and then click on the Activate toggle on the to ## FAQs -### How do I find the Model ID? +### Find the Model ID + +The model ID is the ID of any model in Trello. Depending on the use-case, it could be the User ID, List ID, and so on. For this specific example, the List ID would be the Model ID. @@ -47,8 +49,3 @@ For this specific example, the List ID would be the Model ID. 4. In the JSON file, you will see a field called `idList`. 5. Copy `idList`and paste it in the *Model ID* field in n8n. - -### What is the Model ID? - -It is the ID of any model in Trello. Depending on the use-case, it could be the User ID, List ID, and so on. - diff --git a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.woocommercetrigger.md b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.woocommercetrigger.md index 39a26162e95..9d2f7671789 100644 --- a/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.woocommercetrigger.md +++ b/docs/integrations/builtin/trigger-nodes/n8n-nodes-base.woocommercetrigger.md @@ -27,47 +27,5 @@ You can find authentication information for this node [here](/integrations/built - product.updated - product.deleted -## Example Usage -This workflow allows you to send a message on Mattermost when an order is created in WooCommerce. You can also find the [workflow](https://n8n.io/workflows/848) on n8n.io. This example usage workflow would use the following nodes. - -- [WooCommerce Trigger]() -- [Mattermost](/integrations/builtin/app-nodes/n8n-nodes-base.mattermost/) - -The final workflow should look like the following image. - -![A workflow with the WooCommerce Trigger node](/_images/integrations/builtin/trigger-nodes/woocommercetrigger/workflow.png) - -### 1. WooCommerce Trigger node - -This node will trigger the workflow when an order is created in your WooCommerce store. - -1. First of all, you'll have to enter credentials for the WooCommerce Trigger node. You can find out how to do that [here](/integrations/builtin/credentials/woocommerce/). -2. Select 'order.created' from the ***Event*** dropdown list. This will trigger the workflow when a user sends a message. -3. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node triggers the workflow when a new order gets created. - -![Using the WooCommerce Trigger node to trigger the workflow](/_images/integrations/builtin/trigger-nodes/woocommercetrigger/woocommercetrigger_node.png) - -### 2. Mattermost (post: message) - -This node will send a message to a Mattermost channel sharing the details of the order that was created in WooCommerce. - -1. First of all, you'll have to enter credentials for the Mattermost node. You can find out how to do that [here](/integrations/builtin/credentials/mattermost/). -2. Select the channel from the ***Channel ID*** dropdown list. -3. Click on the gears icon next to ***Message*** field. -4. Enter the following message in the ***Expression*** editor -``` -{{$node["WooCommerce Trigger"].json["billing"]["first_name"]}} bought {{$node["WooCommerce Trigger"].json["line_items"][0]["name"]}}! -``` -5. Click on ***Test step*** to run the node. - -In the screenshot below, you will notice that the node sends a message to the `Sales` channel on Mattermost about the order that was created in WooCommerce. - -![Using the Mattermost node to send the information of the order to a channel](/_images/integrations/builtin/trigger-nodes/woocommercetrigger/mattermost_node.png) - -/// note | Activate workflow for production -You'll need to save the workflow and then click on the Activate toggle on the top right of the screen to activate the workflow. Your workflow will then be triggered as specified by the settings in the WooCommerce Trigger node. -/// diff --git a/docs/integrations/community-nodes/index.md b/docs/integrations/community-nodes/index.md index e0ee1d9082f..e17b3739a10 100644 --- a/docs/integrations/community-nodes/index.md +++ b/docs/integrations/community-nodes/index.md @@ -9,5 +9,5 @@ n8n provides hundreds of built-in nodes. It also supports users [creating their The community nodes repository allows users who create nodes to publish them to npm. These nodes are then available to install and use in your n8n instance. /// note | Only available on self-hosted instances -Community nodes are not available on n8n cloud and require [self-hosting](/hosting/) n8n. -/// \ No newline at end of file +Community nodes aren't available on n8n cloud and require [self-hosting](/hosting/) n8n. +/// diff --git a/docs/integrations/creating-nodes/build/reference/credentials-files.md b/docs/integrations/creating-nodes/build/reference/credentials-files.md index 1f009212be6..b09fb68b6ec 100644 --- a/docs/integrations/creating-nodes/build/reference/credentials-files.md +++ b/docs/integrations/creating-nodes/build/reference/credentials-files.md @@ -61,19 +61,19 @@ export class ExampleNode implements ICredentialType { ## Parameters -### name +### `name` String. The internal name of the object. Used to reference it from other places in the node. -### displayName +### `displayName` String. The name n8n uses in the GUI. -### documentationUrl +### `documentationUrl` String. URL to your credentials documentation. -### properties +### `properties` Each object contains: @@ -82,15 +82,15 @@ Each object contains: * `type`: the data type expected, such as `string`. * `default`: the URL that n8n should use to test credentials. -### authenticate +### `authenticate` Object. Contains objects that tell n8n how to inject the authentication data as part of the API request. -#### type +#### `type` String. If you're using an authentication method that sends data in the header, body, or query string, set this to `'generic'`. -#### properties +#### `properties` Object. Defines the authentication methods. Options are: @@ -98,6 +98,6 @@ Object. Defines the authentication methods. Options are: * `header`: object. Send authentication data in the request header. * `qs`: object. Stands for "query string." Send authentication data in the request query string. -### test +### `test` Provide a `request` object containing a URL and authentication type that n8n can use to test the credential. diff --git a/docs/integrations/creating-nodes/build/reference/http-helpers.md b/docs/integrations/creating-nodes/build/reference/http-helpers.md index d0575088b8f..a19729a54fd 100644 --- a/docs/integrations/creating-nodes/build/reference/http-helpers.md +++ b/docs/integrations/creating-nodes/build/reference/http-helpers.md @@ -85,7 +85,7 @@ For an example, refer to the [Mattermost node](https://github.com/n8n-io/n8n/blo The previous helper implementation using `this.helpers.request(options)` used and exposed the `request-promise` library. This was removed in version 1. -To minimize incompatibility, n8n made a transparent conversion to another library called `axios`. +To minimize incompatibility, n8n made a transparent conversion to another library called `Axios`. If you are having issues, please report them in the [Community Forums](https://community.n8n.io/){:target=_blank .external-link} or on [GitHub](https://github.com/n8n-io/n8n/issues){:target=_blank .external-link}. diff --git a/docs/integrations/creating-nodes/build/reference/node-base-files.md b/docs/integrations/creating-nodes/build/reference/node-base-files.md index f04a48ce5a8..14b91632337 100644 --- a/docs/integrations/creating-nodes/build/reference/node-base-files.md +++ b/docs/integrations/creating-nodes/build/reference/node-base-files.md @@ -64,19 +64,19 @@ export class ExampleNode implements INodeType { These parameters are the same for all node types. -### displayName +### `displayName` _String_ | _Required_ This is the name users see in the n8n GUI. -### name +### `name` _String_ | _Required_ The internal name of the object. Used to reference it from other places in the node. -### icon +### `icon` _String_ | _Required_ @@ -84,7 +84,7 @@ Starts with `file`. For example, `icon: 'file:exampleNodeIcon.svg'`. --8<-- "_snippets/integrations/creating-nodes/node-icons.md" -### group +### `group` _Array of strings_ | _Required_ @@ -95,13 +95,13 @@ Tells n8n how the node behaves when the workflow runs. Options are: * `input`, `output`, `transform`: these currently have no effect. * An empty array, `[]`. Use this as the default option if you don't need `trigger` or `schedule`. -### description +### `description` _String_ | _Required_ A short description of the node. n8n uses this in the GUI. -### defaults +### `defaults` _Object_ | _Required_ @@ -112,32 +112,32 @@ The object can include: * `name`: String. Used as the node name on the canvas if the `displayName` is too long. * `color`: String. Hex color code. Provide the brand color of the integration for use in n8n. -### forceInputNodeExecution +### `forceInputNodeExecution` _Boolean_ | _Optional_ When building a multi-input node, you can choose to force all preceding nodes on all branches to execute before the node runs. The default is `false` (requiring only one input branch to run). -### inputs +### `inputs` _Array of strings_ | _Required_ Names the input connectors. Controls the number of connectors the node has on the input side. If you need only one connector, use `input: ['main']`. -### outputs +### `outputs` _Array of strings_ | _Required_ Names the output connectors. Controls the number of connectors the node has on the output side. If you need only one connector, use `output: ['main']`. -### requiredInputs +### `requiredInputs` _Integer_ or _Array_ | _Optional_ Used for multi-input nodes. Specify inputs by number that must have data (their branches must run) before the node can execute. -### credentials +### `credentials` _Array of objects_ | _Required_ @@ -148,7 +148,7 @@ The object must include: * `name`: the credential name. Must match the `name` property in the credential file. For example, `name: 'asanaApi'` in [`Asana.node.ts`](https://github.com/n8n-io/n8n/blob/master/packages/nodes-base/nodes/Asana/Asana.node.ts){:target=_blank .external-class} links to `name = 'asanaApi'` in [`AsanaApi.credential.ts`](https://github.com/n8n-io/n8n/blob/master/packages/nodes-base/credentials/AsanaApi.credentials.ts){:target=_blank .external-class}. * `required`: Boolean. Specify whether authentication is required to use this node. -### requestDefaults +### `requestDefaults` _Object_ | _Required_ @@ -163,7 +163,7 @@ You can also add: * `headers`: an object describing the API call headers, such as content type. * `url`: string. Appended to the `baseURL`. You can usually leave this out. It's more common to provide this in the `operations`. -### properties +### `properties` _Array of objects_ | _Required_ @@ -175,7 +175,7 @@ A resource object includes the following parameters: * `displayName`: String. This should always be `Resource`. * `name`: String. This should always be `resource`. -* `type`: String. Tells n8n which UI element to use, and what type of input to expect. For example, `options` results in n8n adding a dropdown that allows users to choose one option. Refer to [Node UI elements](/integrations/creating-nodes/build/reference/ui-elements/) for more information. +* `type`: String. Tells n8n which UI element to use, and what input type to expect. For example, `options` results in n8n adding a dropdown that allows users to choose one option. Refer to [Node UI elements](/integrations/creating-nodes/build/reference/ui-elements/) for more information. * `noDataExpression`: Boolean. Prevents using an expression for the parameter. Must always be `true` for `resource`. #### Operations objects @@ -184,7 +184,7 @@ The operations object defines the available operations on a resource. * `displayName`: String. This should always be `Options`. * `name`: String. This should always be `option`. -* `type`: String. Tells n8n which UI element to use, and what type of input to expect. For example, `dateTime` results in n8n adding a date picker. Refer to [Node UI elements](/integrations/creating-nodes/build/reference/ui-elements/) for more information. +* `type`: String. Tells n8n which UI element to use, and what input type to expect. For example, `dateTime` results in n8n adding a date picker. Refer to [Node UI elements](/integrations/creating-nodes/build/reference/ui-elements/) for more information. * `noDataExpression`: Boolean. Prevents using an expression for the parameter. Must always be `true` for `operation`. * `options`: Array of objects. Each objects describes an operation's behavior, such as its routing, the REST verb it uses, and so on. An `options` object includes: * `name`. String. @@ -225,7 +225,7 @@ For more information about UI element types, refer to [UI elements](/integration ## Declarative-style parameters -### methods and loadOptions +### `methods` and `loadOptions` _Object_ | _Optional_ @@ -270,7 +270,7 @@ methods : { }, ``` -### routing +### `routing` _Object_ | _Required_ @@ -325,7 +325,7 @@ include postReceive actions, including ability to dynamically disable - see DOC- --> -### version +### `version` _Number_ or _Array_ | Optional @@ -336,7 +336,7 @@ n8n supports two methods of node versioning, but declarative-style nodes must us ## Programmatic-style parameters -### defaultVersion +### `defaultVersion` _Number_ | _Optional_ @@ -344,7 +344,7 @@ Use `defaultVersion` when using the full versioning approach. n8n support two methods of node versioning. Refer to [Node versioning](/integrations/creating-nodes/build/reference/node-versioning/) for more information. -### methods and loadOptions +### `methods` and `loadOptions` _Object_ | _Optional_ @@ -380,7 +380,7 @@ For example, n8n's [Gmail node](https://github.com/n8n-io/n8n/blob/master/packag }; ``` -### version +### `version` _Number_ or _Array_ | _Optional_ diff --git a/docs/integrations/creating-nodes/build/reference/ui-elements.md b/docs/integrations/creating-nodes/build/reference/ui-elements.md index 851834ec15e..f7b1d3ce285 100644 --- a/docs/integrations/creating-nodes/build/reference/ui-elements.md +++ b/docs/integrations/creating-nodes/build/reference/ui-elements.md @@ -327,7 +327,7 @@ The `options` type adds an options list. Users can select a single value. ![Options](/_images/integrations/creating-nodes/options.png) -## Multi options +## Multi-options The `multiOptions` type adds an options list. Users can select more than one value. @@ -361,7 +361,7 @@ The `multiOptions` type adds an options list. Users can select more than one val } ``` -![Multioptions](/_images/integrations/creating-nodes/multioptions.png) +![Multi-options](/_images/integrations/creating-nodes/multioptions.png) ## Filter diff --git a/docs/integrations/creating-nodes/plan/node-ui-design.md b/docs/integrations/creating-nodes/plan/node-ui-design.md index cc0ff5edae4..95cb92bfe62 100644 --- a/docs/integrations/creating-nodes/plan/node-ui-design.md +++ b/docs/integrations/creating-nodes/plan/node-ui-design.md @@ -37,7 +37,7 @@ All node's use n8n's [node UI elements](/integrations/creating-nodes/build/refer * Use the same terminology as the service the node connects to. For example, a Notion node should refer to Notion blocks, not Notion paragraphs, because Notion calls these elements blocks. There are exceptions to this rule, usually to avoid technical terms (for example, refer to the guidance on [name and description for upsert operations](#upsert-operations)). * Sometimes a service has different terms for something in its API and in its GUI. Use the GUI language in your node, as this is what most users are familiar with. If you think some users may need to refer to the service's API docs, consider including this information in a hint. * Don't use technical jargon when there are simpler alternatives. -* Be consistent when naming things. For example, choose one of "directory" or "folder", then stick to it. +* Be consistent when naming things. For example, choose one of `directory` or `folder` then stick to it. ### Node naming conventions @@ -50,7 +50,7 @@ All node's use n8n's [node UI elements](/integrations/creating-nodes/build/refer Fields can either be: -* Displayed immediately when the node opens: use this for resources and operations, and required fields. +* Displayed when the node opens: use this for resources and operations, and required fields. * Hidden in the **Optional fields** section until a user clicks on that section: use this for optional fields. Progressively disclose complexity: hide a field until any earlier fields it depends on have values. For example, if you have a **Filter by date** toggle, and a **Date to filter by** datepicker, don't display **Date to filter by** until the user enables **Filter by date**. @@ -64,7 +64,7 @@ n8n automatically displays credential fields as the top fields in the node. #### Resources and operations -APIs usually involve doing something to data. For example, "get all tasks". In this example, "task" is the resource, and "get all" is the operation. +APIs usually involve doing something to data. For example, "get all tasks." In this example, "task" is the resource, and "get all" is the operation. When your node has this resource and operation pattern, your first field should be **Resource**, and your second field should be **Operation**. @@ -79,7 +79,7 @@ Order fields by: * Order fields alphabetically. To group similar things together, you can rename them. For example, rename **Email** and **Secondary Email** to **Email (primary)** and **Email (secondary)**. * If an optional field has a default value that the node uses when the value isn't set, load the field with that value. Explain this in the field description. For example, **Defaults to false**. -* Connected fields: if one optional fiels is dependent on another, bundle them together. They should both be under a single option that shows both fields when selected. +* Connected fields: if one optional fields is dependent on another, bundle them together. They should both be under a single option that shows both fields when selected. * If you have a lot of optional fields, consider grouping them by theme. #### Help @@ -135,7 +135,7 @@ subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}', #### IDs -When performing an operation on a specific record, such as "update a task comment", you need a way to specify which record you want to change. +When performing an operation on a specific record, such as "update a task comment" you need a way to specify which record you want to change. * Wherever possible, provide two ways to specify a record: * By choosing from a pre-populated list. You can generate this list using the `loadOptions` parameter. Refer to [Base files](/integrations/creating-nodes/build/reference/node-base-files/) for more information. @@ -147,7 +147,7 @@ When performing an operation on a specific record, such as "update a task commen #### Dates and timestamps -n8n uses [ISO timestamp strings](https://en.wikipedia.org/wiki/ISO_8601){:target=_blank class=.external-link} for dates and times. Make sure that any date or timestamp field you implement supports all ISO 8601 formats. +n8n uses [ISO timestamp strings](https://en.wikipedia.org/wiki/ISO_8601){:target=_blank class=.external-link} for dates and times. Make sure that any date or timestamp field you add supports all ISO 8601 formats. #### JSON @@ -182,8 +182,9 @@ This should always be a separate operation with: * Description: **Create a new record, or update the current one if it already exists (upsert)** #### Boolean operators - -n8n doesn't have good support for combining boolean operators in, such as AND and OR, in the GUI. Whenever possible, provide options for all ANDs or all ORs. + +n8n doesn't have good support for combining boolean operators, such as AND and OR, in the GUI. Whenever possible, provide options for all ANDs or all ORs. + For example, you have a field called **Must match** to test if values match. Include options to test for **Any** and **All**, as separate options. diff --git a/docs/integrations/creating-nodes/test/node-linter.md b/docs/integrations/creating-nodes/test/node-linter.md index f0bd20dc4e6..aec4d96b8d2 100644 --- a/docs/integrations/creating-nodes/test/node-linter.md +++ b/docs/integrations/creating-nodes/test/node-linter.md @@ -12,7 +12,7 @@ n8n's node linter, [`eslint-plugin-n8n-nodes-base`](https://github.com/ivov/esli If using the [n8n node starter](https://github.com/n8n-io/n8n-nodes-starter): Run `npm install` in the starter project to install all dependencies. Once the installation finishes, the linter is available to you. -If using VSCode, install the [ESLint VSCode extension](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint). For other IDEs, refer to their ESLint integrations. +If using VS Code, install the [ESLint VS Code extension](https://marketplace.visualstudio.com/items?itemName=dbaeumer.VS Code-eslint). For other IDEs, refer to their ESLint integrations. /// note | Don't edit the configuration file [`.eslintrc.js`](https://github.com/n8n-io/n8n-nodes-starter/blob/master/.eslintrc.js) contains the configuration for `eslint-plugin-n8n-nodes-base`. Don't edit this file. @@ -26,7 +26,7 @@ You can use the linter in a community package or in the main n8n repository. In a community package, the linter runs automatically after installing dependencies and before publishing the package to npm. In the [main n8n repository](https://github.com/n8n-io/n8n){:target=_blank .external-link}, the linter runs automatically using GitHub Actions whenever you push to your pull request. -In both cases, VSCode lints in the background as you work on your project. Hover over a detected issue to see a full description of the linting and a link to further information. +In both cases, VS Code lints in the background as you work on your project. Hover over a detected issue to see a full description of the linting and a link to further information. You can also run the linter manually: @@ -39,6 +39,6 @@ Both commands can run in the root directory of your community package, or in `/p Instead of fixing a rule violation, you can also make an exception for it, so the linter doesn't flag it. -To make a lint exception from VSCode: hover over the issue and click on `Quick fix` (or `cmd+.` in macOS) and select **Disable {rule} for this line**. Only disable rules for a line where you have good reason to. If you think the linter is misdetecting an issue, please [report it in the linter repository](https://github.com/ivov/eslint-plugin-n8n-nodes-base/issues). +To make a lint exception from VS Code: hover over the issue and click on `Quick fix` (or `cmd+.` in macOS) and select **Disable {rule} for this line**. Only disable rules for a line where you have good reason to. If you think the linter is incorrectly reporting an issue, please [report it in the linter repository](https://github.com/ivov/eslint-plugin-n8n-nodes-base/issues). -To add a lint exception to a single file, add a code comment. In particular, TSLint rules may not show up in VSCode and may need to be turned off using code comments. Refer to the [TSLint documentation](https://palantir.github.io/tslint/usage/rule-flags/) for more guidance. +To add a lint exception to a single file, add a code comment. In particular, TSLint rules may not show up in VS Code and may need to be turned off using code comments. Refer to the [TSLint documentation](https://palantir.github.io/tslint/usage/rule-flags/) for more guidance. diff --git a/docs/integrations/creating-nodes/test/troubleshooting-node-development.md b/docs/integrations/creating-nodes/test/troubleshooting-node-development.md index acfd9062e57..495aa207dd3 100644 --- a/docs/integrations/creating-nodes/test/troubleshooting-node-development.md +++ b/docs/integrations/creating-nodes/test/troubleshooting-node-development.md @@ -7,7 +7,7 @@ contentType: howto ## Credentials -### Error message: 'Credentials of type "*" are not known' +### Error message: 'Credentials of type "*" aren't known' Check that the name in the credentials array matches the name used in the property name of the credentials' class. @@ -19,7 +19,7 @@ Check that the name in the credentials array matches the name used in the proper -### Error message: 'There was a problem loading init data: API-Server can not be reached. It is probably down' +### Error message: 'There was a problem loading init data: API-Server can not be reached. It's probably down' - Check that the names of the node file, node folder, and class match the path added to `packages/nodes-base/package.json`. diff --git a/docs/integrations/index.md b/docs/integrations/index.md index d3a16664248..2a69edf8fec 100644 --- a/docs/integrations/index.md +++ b/docs/integrations/index.md @@ -4,17 +4,17 @@ contentType: overview # Integrations -In n8n, integrations are called nodes. +n8n calls integrations nodes. -Nodes are the building blocks of workflows in n8n. They're an entry point for retrieving data, a function to process data, or an exit for sending data. The data process includes filtering, recomposing, and changing data. There can be one or several nodes for your API, service or app. You can connect multiple nodes, which allows you to create both simple and complex workflows. +Nodes are the building blocks of workflows in n8n. They're an entry point for retrieving data, a function to process data, or an exit for sending data. The data process includes filtering, recomposing, and changing data. There can be one or several nodes for your API, service or app. You can connect multiple nodes, which allows you to create complex workflows. ## Built-in nodes -n8n includes a collection of built-in integrations. Refer to [Built-in nodes](/integrations/builtin/) for documentation on all of n8n's built-in nodes. +n8n includes a collection of built-in integrations. Refer to [Built-in nodes](/integrations/builtin/) for documentation on all n8n's built-in nodes. ## Community nodes -In addition to using the built-in nodes, you can also install community-built nodes. Refer to [Community nodes](/integrations/community-nodes/) for more information. +As well as using the built-in nodes, you can also install community-built nodes. Refer to [Community nodes](/integrations/community-nodes/) for more information. ## Credential-only nodes and custom operations diff --git a/docs/langchain/access-langchain.md b/docs/langchain/access-langchain.md index cfbbf4931e3..5859b512a37 100644 --- a/docs/langchain/access-langchain.md +++ b/docs/langchain/access-langchain.md @@ -7,9 +7,9 @@ description: How to get the n8n version that includes LangChain # Access LangChain in n8n /// info | Feature availability -This feature is available on Cloud and self-hosted n8n. In version 1.19.4 and above, LangChain functionality is included with n8n, and you don't need to do any special signup or installation steps. +This feature is available on Cloud and self-hosted n8n. Version 1.19.4 and above includes LangChain functionality with n8n, and you don't need to do any extra sign-up or installation steps. -If you want to test the latest AI functionality, the beta version is available. This may be unstable. +If you want to test the latest AI functionality, the beta version is available. This may be unstable. Refer to [Access LangChain in n8n](/langchain/access-langchain/) for more information. /// /// note | End of beta diff --git a/docs/langchain/index.md b/docs/langchain/index.md index 2af32f985b5..fc7a1077d5b 100644 --- a/docs/langchain/index.md +++ b/docs/langchain/index.md @@ -9,7 +9,7 @@ description: Use n8n's LangChain integrations to build AI-powered functionality Use n8n's LangChain nodes to build AI-powered functionality within your workflows. The LangChain nodes are configurable, meaning you can choose your preferred agent, LLM, memory, and so on. Alongside the LangChain nodes, you can connect any n8n node as normal: this means you can integrate your LangChain logic with other data sources and services. /// info | Feature availability -This feature is available on Cloud and self-hosted n8n. In version 1.19.4 and above, LangChain functionality is included with n8n, and you don't need to do any special signup or installation steps. +This feature is available on Cloud and self-hosted n8n. Version 1.19.4 and above includes LangChain functionality with n8n, and you don't need to do any extra sign-up or installation steps. If you want to test the latest AI functionality, the beta version is available. This may be unstable. Refer to [Access LangChain in n8n](/langchain/access-langchain/) for more information. /// diff --git a/docs/langchain/langchain-tutorial.md b/docs/langchain/langchain-tutorial.md index d00ebc41ec0..5195d705a23 100644 --- a/docs/langchain/langchain-tutorial.md +++ b/docs/langchain/langchain-tutorial.md @@ -78,7 +78,7 @@ One unique feature of AI in n8n is the ability to pull in data from other n8n wo * Load your own custom data * Create custom functionality in another workflow -Because n8n can connect to any service with a public API, this is a very powerful tool. +Because n8n can connect to any service with a public API, this is a powerful tool. This example generates some fake data in a workflow, and loads it in to the AI workflow. The AI workflow passes a parameter to the workflow generating the data, to ensure it only returns data that's intended to be public. diff --git a/docs/log-streaming.md b/docs/log-streaming.md index 3e197862fef..c5e81ed2b26 100644 --- a/docs/log-streaming.md +++ b/docs/log-streaming.md @@ -42,7 +42,7 @@ The following events are available. You can choose which events to stream in **S * User deleted * User invited * User invitation accepted - * User reinvited + * User re-invited * User email failed * User reset requested * User reset diff --git a/docs/privacy-security/incident-response.md b/docs/privacy-security/incident-response.md index 6b6ffd8134e..05c9186ff82 100644 --- a/docs/privacy-security/incident-response.md +++ b/docs/privacy-security/incident-response.md @@ -3,7 +3,7 @@ title: Incident response description: n8n's incident response procedures. contentType: explanation --- - + # Incident response n8n implements incident response best practices for identifying, documenting, resolving and communicating incidents. @@ -11,3 +11,4 @@ n8n implements incident response best practices for identifying, documenting, re n8n publishes incident notifications to a status page at [n8n Status](https://status.n8n.cloud/){:target=_blank .external-link}. n8n notifies customers of any data breaches according to the company's [Data Processing Addendum](https://n8n.io/legal/#data){:target=_blank .external-link}. + diff --git a/docs/privacy-security/index.md b/docs/privacy-security/index.md index 35972c0a90c..3d0a970778a 100644 --- a/docs/privacy-security/index.md +++ b/docs/privacy-security/index.md @@ -3,7 +3,7 @@ title: Privacy and security description: Privacy and security at n8n contentType: overview --- - + # Privacy and security n8n is committed to the privacy and security of your data. This section outlines how n8n handles and secures data. This isn't an exhaustive list of practices, but an overview of key policies and procedures. @@ -18,4 +18,4 @@ If you have any security-related questions, or if you want to report a suspected [[ sectionToc.sectionToc(page) ]] - + diff --git a/docs/privacy-security/privacy.md b/docs/privacy-security/privacy.md index 3c7b5c38f87..611444df83b 100644 --- a/docs/privacy-security/privacy.md +++ b/docs/privacy-security/privacy.md @@ -10,6 +10,7 @@ hide: contentType: explanation --- + # Privacy @@ -155,3 +156,5 @@ Self-hosted users should have their own PID policy and data deletion processes. ## Payment processor n8n uses Paddle.com to process payments. When you sign up for a paid plan, Paddle transmits and stores the details of your payment method according to their security policy. n8n stores no information about your payment method. + + diff --git a/docs/privacy-security/security.md b/docs/privacy-security/security.md index 9c433a42e27..06174a59d83 100644 --- a/docs/privacy-security/security.md +++ b/docs/privacy-security/security.md @@ -2,7 +2,7 @@ description: n8n's security policies contentType: explanation --- - + # Security This page describes n8n's security practices. @@ -107,3 +107,4 @@ n8n grants employees access to systems on a least-privilege basis. This means th ### Security training Employees receive privacy and security training during onboarding as well as on an ongoing basis. n8n requires all employees to read and sign n8n's comprehensive information security policy covering the security, availability, and confidentiality of n8n services. + diff --git a/docs/privacy-security/what-you-can-do.md b/docs/privacy-security/what-you-can-do.md index 383db59c65e..543e0d872fc 100644 --- a/docs/privacy-security/what-you-can-do.md +++ b/docs/privacy-security/what-you-can-do.md @@ -3,7 +3,7 @@ title: What you can do description: What you can do to improve privacy and data security when using n8n. contentType: howto --- - + # What you can do It's also your responsibility as a customer to ensure you are securing your code and data. This document lists some steps you can take. @@ -30,3 +30,4 @@ If you self-host n8n, there are additional steps you can take: --8<-- "_snippets/privacy-security/gdpr-self-hosted.md" + diff --git a/docs/release-notes.md b/docs/release-notes.md index b63d7b62181..1c9d48cbd50 100644 --- a/docs/release-notes.md +++ b/docs/release-notes.md @@ -1,4 +1,4 @@ ---- +--- title: Release notes description: Release notes detailing new features and bug fixes for n8n. tags: @@ -9,7 +9,7 @@ hide: - tags contentType: reference --- - + # Release notes New features and bug fixes for n8n. @@ -24,7 +24,7 @@ You can also view the [Releases](https://github.com/n8n-io/n8n/releases){:target n8n uses [semantic versioning](https://semver.org/){:target=_blank .external-link}. All version numbers are in the format `MAJOR.MINOR.PATCH`. Version numbers increment as follows: -* MAJOR version when making incompatible changes which potentially require user action. +* MAJOR version when making incompatible changes which can require user action. * MINOR version when adding functionality in a backward-compatible manner. * PATCH version when making backward-compatible bug fixes. @@ -149,6 +149,8 @@ This is a bug fix release. For full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases){:target=_blank .external-link} on GitHub. + + ## n8n@1.23.0 View the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.22.4...n8n@1.23.0){:target=_blank .external-link} for this version.
@@ -184,6 +186,8 @@ Read n8n's [Qdrant vector store node documentation](/integrations/builtin/cluste ### Contributors + + [Aaron Gutierrez](https://github.com/aarongut){:target=_blank .external-link} [Advaith Gundu](https://github.com/geodic){:target=_blank .external-link} [Anush](https://github.com/Anush008){:target=_blank .external-link} @@ -263,10 +267,6 @@ View the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.20.0...n8n@1.21.1 - - - - This is a bug fix release. For full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases){:target=_blank .external-link} on GitHub. @@ -334,8 +334,11 @@ For full release details, refer to [Releases](https://github.com/n8n-io/n8n/rele ### Contributors + [Andrey Starostin](https://github.com/mayorandrew){:target=_blank .external-link} + + ## n8n@1.19.5 View the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.19.4...n8n@1.19.5){:target=_blank .external-link} for this version.
@@ -364,7 +367,7 @@ View the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.19.0...n8n@1.19.4 **Release date:** 2023-12-01 /// warning | Missing ARM v7 support -This version doesn't support ARM v7. We're working on fixing this in future releases. +This version doesn't support ARM v7. n8n is working on fixing this in future releases. /// For full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases){:target=_blank .external-link} on GitHub. @@ -410,14 +413,6 @@ For full release details, refer to [Releases](https://github.com/n8n-io/n8n/rele View the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.17.1...n8n@1.18.0){:target=_blank .external-link} for this version.
**Release date:** 2023-11-22 - - - - - - - - This release contains new features and bug fixes.
@@ -476,6 +471,7 @@ For full release details, refer to [Releases](https://github.com/n8n-io/n8n/rele ### Contributors + [antondollmaier](https://github.com/antondollmaier){:target=_blank .external-link} [teomane](https://github.com/teomane){:target=_blank .external-link} @@ -484,17 +480,6 @@ For full release details, refer to [Releases](https://github.com/n8n-io/n8n/rele View the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.15.2...n8n@1.16.0){:target=_blank .external-link} for this version.
**Release date:** 2023-11-08 - - - - - - - - - - - This release contains node enhancements and bug fixes. For full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases){:target=_blank .external-link} on GitHub. @@ -568,8 +553,6 @@ For full release details, refer to [Releases](https://github.com/n8n-io/n8n/rele View the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.14.1...n8n@1.14.2){:target=_blank .external-link} for this version.
**Release date:** 2023-10-26 - - This release contains bug fixes. For full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases){:target=_blank .external-link} on GitHub. @@ -699,8 +682,6 @@ For full release details, refer to [Releases](https://github.com/n8n-io/n8n/rele View the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.11.0...n8n@1.11.1){:target=_blank .external-link} for this version.
**Release date:** 2023-10-13 - - This release contains bug fixes. For full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases){:target=_blank .external-link} on GitHub. @@ -747,10 +728,6 @@ For full release details, refer to [Releases](https://github.com/n8n-io/n8n/rele View the [commits](https://github.com/n8n-io/n8n/compare/n8n@1.9.2...n8n@1.9.3){:target=_blank .external-link} for this version.
**Release date:** 2023-10-10 - - - - This release contains bug fixes. For full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases){:target=_blank .external-link} on GitHub. @@ -787,11 +764,11 @@ For full release details, refer to [Releases](https://github.com/n8n-io/n8n/rele ## LangChain in n8n (beta) -**Release date**: 2023-10-04 +**Release date:** 2023-10-04 This release introduces support for building with LangChain in n8n. -With n8n's LangChain nodes you can build AI-powered functionality within your workflows. The LangChain nodes are configurable, meaning you can choose your preferred agent, LLM, memory, and so on. Alongside the LangChain nodes, you can connect any n8n node as normal: this means you can integrate your LangChain logic with other data sources and services. +With n8n's LangChain nodes you can build AI-powered functionality within your workflows. The LangChain nodes are configurable, meaning you can choose your preferred agent, LLM, memory, and other components. Alongside the LangChain nodes, you can connect any n8n node as normal: this means you can integrate your LangChain logic with other data sources and services. Read more: @@ -823,7 +800,7 @@ This releases replaces RiotTmpl, the templating language used in expressions, wi #### `N8N_BINARY_DATA_TTL` and `EXECUTIONS_DATA_PRUNE_TIMEOUT` removed -The env vars `N8N_BINARY_DATA_TTL` and `EXECUTIONS_DATA_PRUNE_TIMEOUT` no longer have any effect and can be safely removed. Instead of relying on a TTL system for binary data, n8n currently cleans up binary data together with executions during pruning. +The environment variables `N8N_BINARY_DATA_TTL` and `EXECUTIONS_DATA_PRUNE_TIMEOUT` no longer have any effect and can be removed. Instead of relying on a TTL system for binary data, n8n cleans up binary data together with executions during pruning.
@@ -916,7 +893,7 @@ This release introduces support for TheHive API version 5. This uses a new node #### `N8N_PERSISTED_BINARY_DATA_TTL` removed -The env var `N8N_PERSISTED_BINARY_DATA_TTL` no longer has any effect and can be removed. This legacy flag was originally introduced to support ephemeral executions (see [details](https://github.com/n8n-io/n8n/pull/7046)), which are no longer supported. +The environment variables `N8N_PERSISTED_BINARY_DATA_TTL` no longer has any effect and can be removed. This legacy flag was originally introduced to support ephemeral executions (see [details](https://github.com/n8n-io/n8n/pull/7046)), which are no longer supported.

@@ -958,7 +935,7 @@ Refer to [External secrets](/external-secrets/) for guidance on enabling and usi #### Two-factor authentication -n8n now supports two-factor authentication (2FA) for self-hosted instances. We're working on bringing support to Cloud. Refer to [Two-factor authentication](/user-management/two-factor-auth/) for guidance on enabling and using it. +n8n now supports two-factor authentication (2FA) for self-hosted instances. n8n is working on bringing support to Cloud. Refer to [Two-factor authentication](/user-management/two-factor-auth/) for guidance on enabling and using it.
@@ -1330,7 +1307,7 @@ View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.234.0...n8n@0.235 This release contains new features, new nodes, node enhancements, and bug fixes. /// warning | Unstable version -This version is currently (4th July 2023) considered unstable. n8n recommends against upgrading. +This version is (as of 4th July 2023) considered unstable. n8n recommends against upgrading. /// For full release details, refer to [Releases](https://github.com/n8n-io/n8n/releases){:target=_blank .external-link} on GitHub. @@ -1347,7 +1324,7 @@ View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.233.1...n8n@0.234 This release contains new features, new nodes, node enhancements, and bug fixes. /// warning | Unstable version -This version is currently (4th July 2023) considered unstable. n8n recommends upgrading directly to 0.234.1. +This version is (as of 4th July 2023) considered unstable. n8n recommends upgrading directly to 0.234.1. /// /// warning | Irreversible database migration This version contains a database migration that changes credential and workflow IDs to use nanoId strings, This migration may take a while to complete in some environments. This change doesn't break anything using the older numeric IDs. @@ -1764,6 +1741,7 @@ This is a bug fix release. ### Contributors + [Filipe Dobreira](https://github.com/filp){:target=_blank .external-link} @@ -1793,7 +1771,7 @@ This release introduces the [TOTP](/integrations/builtin/core-nodes/n8n-nodes-ba ### Bug fixes * Code Node: Update vm2 to address CVE-2023-29017. -* Core: App should not crash with a custom REST endpoint. +* Core: App shouldn't crash with a custom REST endpoint. * Core: Do not execute workflowExecuteBefore hook when resuming executions from a waiting state. * Core: Fix issue where sub workflows would display as running forever after failure to start. * Core: Update xml2js to address CVE-2023-0842. @@ -1802,6 +1780,7 @@ This release introduces the [TOTP](/integrations/builtin/core-nodes/n8n-nodes-ba ### Contributors + [Loganaden Velvindron](https://github.com/loganaden){:target=_blank .external-link} @@ -1837,7 +1816,7 @@ Please note that this version contains a breaking change. The minimum Node.js ve ### Bug fixes * Add droppable state for booleans when mapping. -* Compare Datasets Node: Fuzzy compare not comparing keys missing in one of the inputs. +* Compare Datasets Node: Fuzzy comparen't comparing keys missing in one of the inputs. * Compare Datasets Node: Fix support for dot notation in skip fields. * Core: Deactivate active workflows during import. * Core: Stop marking duplicates as circular references in `jsonStringify`. @@ -1897,6 +1876,7 @@ This is a bug fix release. ### Contributors + [Loganaden Velvindron](https://github.com/loganaden){:target=_blank .external-link} ## n8n@0.222.1 @@ -1990,6 +1970,7 @@ This release introduces the [Filter](/integrations/builtin/core-nodes/n8n-nodes- ### Contributors + [Manish Dhanwal](https://github.com/ManishDhanwal07){:target=_blank .external-link} @@ -2007,6 +1988,7 @@ This is a bug fix release. ### Contributors + [Loganaden Velvindron](https://github.com/loganaden){:target=_blank .external-link} ## n8n@0.221.2 @@ -2143,6 +2125,7 @@ View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.218.0...n8n@0.219 ### Contributors + [Syed Ali Shahbaz](https://github.com/alishaz-polymath){:target=_blank .external-link} @@ -2389,6 +2372,7 @@ This release contains new features, node enhancements, and bug fixes. ### Contributors + [feelgood-interface](https://github.com/feelgood-interface){:target=_blank .external-link} @@ -2454,9 +2438,8 @@ This release contains new features, node enhancements, and bug fixes. ### Contributors -[Kirill](https://github.com/chrtkv){:target=_blank .external-link} - +[Kirill](https://github.com/chrtkv){:target=_blank .external-link} @@ -2633,13 +2616,11 @@ n8n has a new [HTML node](/integrations/builtin/core-nodes/n8n-nodes-base.html/) ### Contributors + * [Devin Buhl](https://github.com/onedr0p){:target=_blank .external-link} * [Sven Ziegler](https://github.com/svzi){:target=_blank .external-link} - - - ## n8n@0.212.1 View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.212.0...n8n@0.212.1){:target=_blank .external-link} for this version.
@@ -2698,10 +2679,8 @@ The [Item Lists node](/integrations/builtin/core-nodes/n8n-nodes-base.itemlists/ ### Contributors -[Sven Ziegler](https://github.com/svzi){:target=_blank .external-link} - - +[Sven Ziegler](https://github.com/svzi){:target=_blank .external-link} ## n8n@0.211.2 @@ -2746,7 +2725,7 @@ Editor: suppress validation errors for freshly added nodes. * Build CLI to fix Postgres and MySQL test runs. * Extend date functions clobbering plus/minus. -* Extension deep compare not quite working for some primitives. +* Extension deep comparen't quite working for some primitives. * Upgrade jsonwebtoken to address CVE-2022-23540. @@ -2903,6 +2882,7 @@ This release adds a [security audit](/hosting/security-audit/) feature. You can ### Contributors + [Thomas S.](https://github.com/intel44){:target=_blank .external-link} ## n8n@0.209.4 @@ -2982,6 +2962,7 @@ This is a bug fix release. ### Contributors + [Nathan Apter](https://github.com/napter){:target=_blank .external-link} ## n8n@0.209.0 @@ -3084,6 +3065,7 @@ Send Email node: add support for a "Reply to" email address. ### Contributors + [Daemonxiao](https://github.com/Daemonxiao){:target=_blank .external-link} [Kirill](https://github.com/kirill-chertkov){:target=_blank .external-link} [Ricardo Duarte](https://github.com/rduarte){:target=_blank .external-link} @@ -3198,7 +3180,7 @@ KoBo Toolbox node: add support for the media file API. * Core: fix partial execution with pinned data on child node run. * Core: OAuth2 scopes now save. * Enable source-maps on WorkflowRunnerProcess in own mode. -* Handle error when workflow does not exist or is inaccessible. +* Handle error when workflow doesn'texist or is inaccessible. * Make nodes.exclude and nodes.include work with lazy-loaded nodes. * Code Node: restore `pairedItem` to required n8n item keys. * Execute Workflow Node: update Execute Workflow node info notice text. @@ -3208,6 +3190,7 @@ KoBo Toolbox node: add support for the media file API. ### Contributors + [Marcel](https://github.com/marzn){:target=_blank .external-link} [Yann Jouanique](https://github.com/Yann-J){:target=_blank .external-link} @@ -3376,6 +3359,7 @@ This release contains core product improvements and bug fixes. ### Contributors + [feelgood-interface](https://github.com/feelgood-interface){:target=_blank .external-link} [Ugo Bataillard](https://github.com/knshiro){:target=_blank .external-link} @@ -3466,6 +3450,7 @@ This release contains improvements to the editor, node enhancements and bug fixe ### Contributors + [Bram Kn](https://github.com/bramkn){:target=_blank .external-link} [Nicholas Penree](https://github.com/drudge){:target=_blank .external-link} @@ -3530,7 +3515,7 @@ This release introduces the Schedule Trigger node, replacing the Cron node. You ### Node enhancements -* Hubspot node: you can now use your Hubspot credentials in the HTTP Request node to make a [custom API call](/integrations/custom-operations/). +* HubSpot node: you can now use your HubSpot credentials in the HTTP Request node to make a [custom API call](/integrations/custom-operations/). * Rundeck node: you can now use your Rundeck credentials in the HTTP Request node to make a [custom API call](/integrations/custom-operations/). ### Bug fixes @@ -3548,6 +3533,7 @@ This release introduces the Schedule Trigger node, replacing the Cron node. You ### Contributors + [AndLLA](https://github.com/AndLLA){:target=_blank .external-link} [Nicholas Penree](https://github.com/drudge){:target=_blank .external-link} [vcrwr](https://github.com/vcrwr){:target=_blank .external-link} @@ -3633,6 +3619,7 @@ Start a workflow in response to events in your Venafi Cloud service. ### Contributors + [Jakob Backlund](https://github.com/jbacklund){:target=_blank .external-link} [Yan Jouanique](https://github.com/Yann-J){:target=_blank .external-link} @@ -3714,6 +3701,7 @@ Crypto node: add SHA3 support. ### Contributors + [Stratos Theodorou](https://github.com/eeVoskos){:target=_blank .external-link} ## n8n@0.196.0 @@ -3809,11 +3797,12 @@ The [WhatsApp Business Platform](/integrations/builtin/app-nodes/n8n-nodes-base. * Editor: resolve slow loading times for node types, node creators, and push connections in the settings view. * Nodes: update descriptions in the Merge node * Nodes: ensure the card ID property displays for completed checklists in the Trello node. -* Nodes: fix authentication for the new verions of Wekan. +* Nodes: fix authentication for the new verions of WeKan. * Nodes: ensure form names list correctly in the Wufoo trigger node. ### Contributors + [Cristobal Schlaubitz Garcia](https://github.com/CxGarcia){:target=_blank .external-link} ## n8n@0.195.5 @@ -3863,7 +3852,7 @@ This is a bug fix release. It resolves an issue with Postgres migrations. View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.194.0...n8n@0.195.0){:target=_blank .external-link} for this version.
**Release date:** 2022-09-21 -This release introduces user management and credential sharing for our Cloud platform. It also contains other enhancements and bug fixes. +This release introduces user management and credential sharing for n8n's Cloud platform. It also contains other enhancements and bug fixes. ### New features @@ -3871,13 +3860,13 @@ This release introduces user management and credential sharing for our Cloud pla #### User management and credential sharing for Cloud -This release adds support for our existing [user management](/user-management/) functionality to Cloud, and introduces a new feature: [credential sharing](/credentials/credential-sharing/). Credential sharing is currently only available on Cloud. +This release adds support for n8n's existing [user management](/user-management/) functionality to Cloud, and introduces a new feature: [credential sharing](/credentials/credential-sharing/). Credential sharing is currently only available on Cloud. Also in this release: -* Added a `resourceLocator` parameter type for nodes, and started upgrading our built-in nodes to use it. This new option helps users who need to specify the ID of a record or item in an external service. For example, when using the Trello node, you can now search for a specific card by ID, URL, or do a free text search for card titles. Node builders can learn more about working with this new UI element in our [UI elements](/integrations/creating-nodes/build/reference/ui-elements/) documentation. +* Added a `resourceLocator` parameter type for nodes, and started upgrading n8n's built-in nodes to use it. This new option helps users who need to specify the ID of a record or item in an external service. For example, when using the Trello node, you can now search for a specific card by ID, URL, or do a free text search for card titles. Node builders can learn more about working with this new UI element in n8n's [UI elements](/integrations/creating-nodes/build/reference/ui-elements/) documentation. * Cache npm dependencies to improve performance on self-hosted n8n ### Bug fixes @@ -3892,6 +3881,7 @@ Also in this release: ### Contributors + [Ikko Ashimine](https://github.com/eltociear){:target=_blank .external-link} @@ -3915,7 +3905,7 @@ This release includes new nodes: a Gmail trigger, Google Cloud Storage, and Adal #### Adalo -Adalo is a low code app builder. Refer to our [Adalo node documentation](/integrations/builtin/app-nodes/n8n-nodes-base.adalo/) for more information. +Adalo is a low code app builder. Refer to n8n's [Adalo node documentation](/integrations/builtin/app-nodes/n8n-nodes-base.adalo/) for more information. @@ -3956,10 +3946,11 @@ n8n now has a [Gmail trigger node](/integrations/builtin/trigger-nodes/n8n-nodes * Public API: better error handling for bad requests. * AWS nodes: fixed an issue with credentials testing. * GoogleBigQuery node: fix for empty responses when creating records. -* Hubspot node: correct the node name on the canvas. +* HubSpot node: correct the node name on the canvas. ### Contributors + [Rhys Williams](https://github.com/rhyswilliamsza){:target=_blank .external-link} ## n8n@0.193.5 @@ -4010,6 +4001,7 @@ This release contains new features that lay the groundwork for upcoming releases ### Contributors + [Aaron Delasy](https://github.com/delasy){:target=_blank .external-link} [ruanjiefeng](https://github.com/ruanjf){:target=_blank .external-link} @@ -4071,6 +4063,7 @@ This release adds an integration for [HighLevel](/integrations/builtin/app-nodes ### Contributors + [pemontto](https://github.com/pemontto){:target=_blank .external-link} [Tzachi Shirazi](https://github.com/TzachiSh){:target=_blank .external-link} @@ -4127,7 +4120,7 @@ n8n@0.187.0 saw the first release of [data mapping](/data/data-mapping/), allowi * CLI: fix the excessive instantiation type error for flattened executions. * CLI: initiate the nodes directory to ensure `npm install` succeeds. * CLI: ensure tsc build errors also cause Turbeorepo builds to fail. -* NextCloud node: fix an issue with credential verification. +* Nextcloud node: fix an issue with credential verification. * Freshdesk node: fix an issue where the getAll operation required non-existant options. ## n8n@0.191.1 @@ -4173,6 +4166,7 @@ This is a bug fix release. ### Contributors + [Nathan Poirier](https://github.com/nathan818fr){:target=_blank .external-link} @@ -4196,7 +4190,7 @@ This release includes a new node, Sendinblue, as well as bug fixes. ### New nodes -[Sendinblue node](/integrations/builtin/app-nodes/n8n-nodes-base.sendinblue/) and Sendinblue trigger node: introducing our [Sendinblue](https://www.sendinblue.com/){:target=_blank .external-link} integration. +[Sendinblue node](/integrations/builtin/app-nodes/n8n-nodes-base.sendinblue/) and Sendinblue trigger node: introducing n8n's [Sendinblue](https://www.sendinblue.com/){:target=_blank .external-link} integration. ### Node enhancements @@ -4210,6 +4204,7 @@ This release includes a new node, Sendinblue, as well as bug fixes. ### Contributors + [mertmit](https://github.com/mertmit){:target=_blank .external-link} [Nicholas Penree](https://github.com/drudge){:target=_blank .external-link} @@ -4254,6 +4249,7 @@ This release includes improvements to n8n's core pairedItems functionality. ### Contributors + [Nicholas Penree](https://github.com/drudge){:target=_blank .external-link} ## n8n@0.187.2 @@ -4380,6 +4376,7 @@ export class AsanaApi implements ICredentialType { ### Contributors + [Florian Bachmann](https://github.com/baflo){:target=_blank .external-link} [Olivier Aygalenq](https://github.com/oaygalenq){:target=_blank .external-link} @@ -4427,6 +4424,7 @@ This release contains bug fixes and node enhancements. ### Contributors + [Bryce Sheehan](https://github.com/ctrl-freak){:target=_blank .external-link} [h4ux](https://github.com/h4ux){:target=_blank .external-link} [miguel-mconf](https://github.com/miguel-mconf){:target=_blank .external-link} @@ -4467,6 +4465,7 @@ Core: add the `action` parameter to INodePropertyOptions. This parameter is now ### Contributors + [cgobrech](https://github.com/cgobrech){:target=_blank .external-link} [pemontto](https://github.com/pemontto){:target=_blank .external-link} [Yann Jouanique](https://github.com/Yann-J){:target=_blank .external-link} @@ -4509,6 +4508,7 @@ This release includes: ### Contributors + [pemontto](https://github.com/pemontto){:target=_blank .external-link} ## n8n@0.183.0 @@ -4538,6 +4538,7 @@ Enhancements to the **Trigger** inputs panel: When using a trigger node, you wil ### Contributors + [Bryce Sheehan](https://github.com/ctrl-freak){:target=_blank .external-link} [Rahimli Rahim](https://github.com/rahimlis){:target=_blank .external-link} @@ -4576,6 +4577,7 @@ Added support for the client_credentials grant type for OAuth2. ### Contributors + [Albrecht Schmidt](https://github.com/IamDrowsy){:target=_blank .external-link} [Erick Friis](https://github.com/efriis){:target=_blank .external-link} [JoLo](https://github.com/jolo-dev){:target=_blank .external-link} @@ -4669,10 +4671,11 @@ This release adds a new trigger node for Cal.com. Refer to the [Cal trigger docu * Correct delete button hover spacing. * Resolve a bug causing stuck loading states. * [EmailReadImap node](/integrations/builtin/core-nodes/n8n-nodes-base.emailimap/){:target=_blank}: improve error handling. -* [Hubspot node](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/){:target=_blank}: fix contact loading. +* [HubSpot node](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/){:target=_blank}: fix contact loading. ### Contributors + [Mark Steve Samson](https://github.com/marksteve){:target=_blank .external-link} [Syed Ali Shahbaz](https://github.com/alishaz-polymath){:target=_blank .external-link} @@ -4804,6 +4807,7 @@ n8n now automatically converts Luxon DateTime objects to strings. ### Contributors + [Cristobal Schlaubitz Garcia](https://github.com/CxGarcia){:target="_blank" .external-link} [Yann Jouanique](https://github.com/Yann-J){:target="_blank" .external-link} @@ -4828,6 +4832,7 @@ This release contains bug fixes and node enhancements. ### Contributors + [Albert Kiskorov](https://github.com/Albatrosicks) [Miquel Colomer](https://github.com/mcolomer) @@ -4878,6 +4883,7 @@ This release adds support for node versioning, along with node enhancements and ### Contributors + [Jack Rudenko](https://github.com/erudenko) [MC Naveen](https://github.com/mcnaveen) [vcrwr](https://github.com/vcrwr) @@ -4918,6 +4924,7 @@ This release adds Sticky Notes, a new feature that allows you to annotate and co ### Contributors + [Basit Ali](https://github.com/BasitAli) [Cody Stamps](https://github.com/crstamps2) [Luiz Eduardo de Oliveira](https://github.com/luizeof) @@ -4972,6 +4979,7 @@ View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.172.0...n8n@0.173 ### Contributors + [Florian Metz](https://github.com/Timeraa) [Francesco Pongiluppi](https://github.com/willywongi) [Mark Steve Samson](https://github.com/marksteve) @@ -5000,6 +5008,7 @@ View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.171.1...n8n@0.172 ### Contributors + [Paolo Rechia](https://github.com/paolo-rechia) ## n8n@0.171.1 @@ -5058,6 +5067,7 @@ You can now download binary data from individual nodes in your workflow. ### Contributors + * [Charles Lecalier](https://github.com/chlec) * [d3no](https://github.com/d3no) * [Ketan Somvanshi](https://github.com/KetanSomvanshi) @@ -5084,12 +5094,13 @@ This release focuses on bug fixes and adding functionality to existing nodes. * **core:** Add logs and error catches for possible failures in queue mode.
* [AWS Lambda Node:](/integrations/builtin/app-nodes/n8n-nodes-base.awslambda/) Fix Invocation Type > Continue Workflow. -* [Supabase Node:](/integrations/builtin/app-nodes/n8n-nodes-base.supabase/) Send token also via Authorization Bearer; fix Row > Get operation. +* [Supabase Node:](/integrations/builtin/app-nodes/n8n-nodes-base.supabase/) Send token also using Authorization Bearer; fix Row > Get operation. * [Xero Node:](/integrations/builtin/app-nodes/n8n-nodes-base.xero/) Fix some operations and add support for setting address and phone number. * [Wise Node:](/integrations/builtin/app-nodes/n8n-nodes-base.wise/) Fix issue when executing a transfer. ### Contributors + * [FFTDB](https://github.com/FFTDB) * [Fred](https://github.com/choudat) * [Jasper Zonneveld](https://github.com/JaZo) @@ -5100,7 +5111,6 @@ This release focuses on bug fixes and adding functionality to existing nodes. * [Yassine Fathi](https://github.com/m4tt72) - ## n8n@0.169.0 View the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.168.2...n8n@0.169.0) for this version.
@@ -5117,7 +5127,7 @@ This release includes: This release changes n8n's license, from [Apache 2.0 with Commons Clause](https://github.com/n8n-io/n8n/blob/181ba3c4e236279b65d102a8a33ae6896f160487/LICENSE.md) to [Sustainable Use License](https://github.com/n8n-io/n8n/blob/master/LICENSE.md). -This change aims to clarify our license terms, and our position as a fair-code project. +This change aims to clarify n8n's license terms, and n8n's position as a fair-code project. Read more about the new license in [License](/reference/license/). @@ -5143,6 +5153,7 @@ Read more about the new license in [License](/reference/license/). ### Contributors + * [Manuel](https://github.com/tennox) * [Marcin Kozey](https://github.com/marcinkoziej) * [Matthew Walther](https://github.com/mashiox) @@ -5234,7 +5245,7 @@ Added a Redis Trigger node, so you can now start workflows based on a Redis even * [Facebook Graph API:](/integrations/builtin/app-nodes/n8n-nodes-base.facebookgraphapi/) Added suport for Facebook Graph API 13. -* [Hubspot:](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/) Added suport for private app token authentication. +* [HubSpot:](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/) Added suport for private app token authentication. * [MongoDB:](/integrations/builtin/app-nodes/n8n-nodes-base.mongodb/) Added the aggregate operation. * [Redis Trigger:](/integrations/builtin/trigger-nodes/n8n-nodes-base.redistrigger/) Added a Redis Trigger node. * [Redis:](/integrations/builtin/app-nodes/n8n-nodes-base.redis/) Added support for publish operations. @@ -5250,6 +5261,7 @@ Added a Redis Trigger node, so you can now start workflows based on a Redis even ### Contributors + * [Luiz Eduardo de Oliveira Fonseca](https://github.com/luizeof) * [Vitaliy Fratkin](https://github.com/viiy) * [sol](https://github.com/5pecia1) @@ -5288,6 +5300,7 @@ For a comprehensive list of changes, view the [commits](https://github.com/n8n-i ### Contributors + [pemontto](https://github.com/pemontto) ## n8n@0.165.0 @@ -5331,6 +5344,7 @@ Please note that this version contains breaking changes. You can read more about ### Contributors + [alexwitkowski](https://github.com/awitkowski0), [Iñaki Breinbauer](https://github.com/quansenB), [lsemaj](https://github.com/jamesliupenn), [Luiz Eduardo de Oliveira Fonseca](https://github.com/luizeof), [Rodrigo Correia](https://github.com/rodrigoscdc), [Santiago Botero Ruiz](https://github.com/yoky-devsavant), [Saurabh Kashyap](https://github.com/saurabharch), [Ugo Bataillard](https://github.com/knshiro) ## n8n@0.164.1 @@ -5367,6 +5381,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Jhalter5Stones](https://github.com/Jhalter5Stones), [Valentina Lilova](https://github.com/valentina98), [thorstenfreitag](https://github.com/thorstenfreitag) ## n8n@0.163.1 @@ -5415,6 +5430,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Iñaki Breinbauer](https://github.com/quansenB), [Manuel](https://github.com/tennox), [pemontto](https://github.com/pemontto) ## n8n@0.162.0 @@ -5446,6 +5462,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [pemontto](https://github.com/pemontto) ## n8n@0.161.1 @@ -5481,6 +5498,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [fabian wohlgemuth](https://github.com/wohfab) ## n8n@0.160.0 @@ -5510,6 +5528,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [fabian wohlgemuth](https://github.com/wohfab) ## n8n@0.159.1 @@ -5519,7 +5538,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Core Functionality -- Temporarily removed debug logging for axios requests. +- Temporarily removed debug logging for Axios requests. ## n8n@0.159.0 @@ -5553,6 +5572,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Phil Clifford](https://github.com/philclifford) ## n8n@0.158.0 @@ -5591,6 +5611,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Ricardo Georgel](https://github.com/rgeorgel), [Pierre](https://github.com/hnb2), [Vahid Sebto](https://github.com/sebto) ## n8n@0.157.1 @@ -5628,6 +5649,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [pemontto](https://github.com/pemontto) ## n8n@0.156.0 @@ -5648,13 +5670,14 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Added execution ID to workflow.postExecute hook - Added response body to UI for failed Axios requests - Added support for automatically removing new lines from Google Service Account credentials -- Added support for disabling the UI via environment variable +- Added support for disabling the UI using environment variable - Fixed a bug causing the wrong expression result to be shown for items from an output other than the first - Improved binary data management - Introduced Monaco as new UI code editor ### Contributors + [Arpad Gabor](https://github.com/arpadgabor), [Leo Lou](https://github.com/l4u), [Manuel](https://github.com/tennox) ## n8n@0.155.2 @@ -5689,6 +5712,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Mohammed Huzaif](https://github.com/huzaif-plivo), [Лебедев Иван](https://github.com/X-pech) ## n8n@0.153.0 @@ -5716,7 +5740,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Added frontend for value surveys - Fixed an issue preventing the recommendation logic from working as expected after selecting a work area - Fixed an issue where a wrong exit code was sent when running n8n on an unsupported version of Node.js -- Fixed an issue where node options would disappear on hovering when a node is not selected +- Fixed an issue where node options would disappear on hovering when a node isn't selected - Fixed an issue where the execution id was missing when running n8n in queue mode - Fixed an issue where execution data was missing when waiting for a webhook in queue mode - Improved error handling when the n8n port is already in use @@ -5727,14 +5751,15 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Bug fixes -* [APITemplate.io:](/integrations/builtin/app-nodes/n8n-nodes-base.apitemplateio/) Fixed a bug where the Create operation on the Image resource would fail when the Download option is not enabled. -* [HubSpot:](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/) Fixed authentication for new Hubspot applications by using granular scopes when authenticating against the Hubspot OAuth2 API. -* [HubSpot Trigger:](/integrations/builtin/trigger-nodes/n8n-nodes-base.hubspottrigger/) Fixed authentication for new Hubspot applications by using granular scopes when authenticating against the Hubspot Developer API. +* [APITemplate.io:](/integrations/builtin/app-nodes/n8n-nodes-base.apitemplateio/) Fixed a bug where the Create operation on the Image resource would fail when the Download option isn't enabled. +* [HubSpot:](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/) Fixed authentication for new HubSpot applications by using granular scopes when authenticating against the HubSpot OAuth2 API. +* [HubSpot Trigger:](/integrations/builtin/trigger-nodes/n8n-nodes-base.hubspottrigger/) Fixed authentication for new HubSpot applications by using granular scopes when authenticating against the HubSpot Developer API. * [Jira Software:](/integrations/builtin/app-nodes/n8n-nodes-base.jira/) Fixed an issue where the Reporter field would not work as expected on Jira Server instances. * [Salesforce:](/integrations/builtin/app-nodes/n8n-nodes-base.salesforce/) Fixed a typo preventing the value in the amount field of from being saved. ### Contributors + [pemontto](https://github.com/pemontto), [Jascha Lülsdorf](https://github.com/buelsenfrucht), [Jonathan Bennetts](https://github.com/Joffcom) ## n8n@0.152.0 @@ -5774,6 +5799,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Zvonimir Erdelja](https://github.com/zvonimir-ebot7), [m2scared](https://github.com/m2scared) ## n8n@0.151.0 @@ -5801,6 +5827,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Jonathan Bennetts](https://github.com/Joffcom) ## n8n@0.150.0 @@ -5819,7 +5846,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Fixed an issue preventing the `n8n import:workflow --separate` CLI command from finding workflows on Windows. - Further improved the expression security. - Moved all nodes into separate directories in preparation for internationalization. -- Removing default headers for PUT and PATCH operations when using axios. +- Removing default headers for PUT and PATCH operations when using Axios. - Revamped the workflow canvas. ### Bug fixes @@ -5864,6 +5891,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [GeylaniBerk](https://github.com/GeylaniBerk), [Jonathan Bennetts](https://github.com/Joffcom) ## n8n@0.148.0 @@ -5891,7 +5919,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Added a hook after workflow creation. - Fixed a build issue with npm v7 by overriding unwanted behaviour through the .npmrc file. - Fixed an issue preventing unknown node types from being imported. -- Fixed an issue with the UI falsely indicating a credential cannot be selected when using SQLite and multiple credentials with the same name exist. +- Fixed an issue with the UI falsely indicating a credential can't be selected when using SQLite and multiple credentials with the same name exist. ### Bug fixes @@ -5901,6 +5929,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [mizzimizzi](https://github.com/mizzimizzi), [nikozila](https://github.com/nikozila), [Pauline](https://github.com/PaulineDropcontact) ## n8n@0.147.1 @@ -5948,7 +5977,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Added name and ID of a workflow to its settings. - Added parameter inputs to be multi-line. -- Fixed an issue with declaring proxies when axios is used. +- Fixed an issue with declaring proxies when Axios is used. - Fixed an issue with serializing arrays and special characters. - Fixed an issue with updating expressions after renaming a node. @@ -5959,6 +5988,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Valentina Lilova](https://github.com/valentina98), [Oliver Trajceski](https://github.com/SchnapsterDog) ## n8n@0.145.0 @@ -5988,7 +6018,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Changed `vm2` library version from `3.9.3` to `3.9.5`. - Fixed an issue with ignoring the response code. -- Fixed an issue with overwriting credentials via environment variables. +- Fixed an issue with overwriting credentials using environment variables. - Fixed an issue with using query strings combined with the `x-www-form-urlencoded` content type. - Introduced telemetry. @@ -6002,6 +6032,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [pemontto](https://github.com/pemontto), [rdd2](https://github.com/rdd2), [robertodamiani](https://github.com/robertodamiani), [Rodrigo Correia](https://github.com/rodrigoscdc) ## n8n@0.144.0 @@ -6022,6 +6053,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [Cron:](/integrations/builtin/core-nodes/n8n-nodes-base.cron/) Set the version of the cron library to 1.7.2. ### Contributors + [Jonathan Bennetts](https://github.com/Joffcom) ## n8n@0.143.0 @@ -6042,6 +6074,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [ FTP:](/integrations/builtin/core-nodes/n8n-nodes-base.ftp/) Fixed error when opening FTP/SFTP credentials. ### Contributors + [Rodrigo Correia](https://github.com/rodrigoscdc) ## n8n@0.142.0 @@ -6069,6 +6102,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [SeaTable:](/integrations/builtin/app-nodes/n8n-nodes-base.seatable/) Fixed issue when entering a Baser URI with a trailing slash. ### Contributors + [Günther](https://github.com/erbg), [Tom Klingenberg](https://github.com/ktomk) ## n8n@0.141.1 @@ -6094,6 +6128,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Improved error reporting ### Contributors + [Alex Hall](https://github.com/alexmojaki), [Tom Klingenberg](https://github.com/ktomk) ## n8n@0.140.0 @@ -6114,6 +6149,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Fixed an issue with handling of refresh tokens. ### Contributors + [pemontto](https://github.com/pemontto) ## n8n@0.139.1 @@ -6147,6 +6183,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [SendGrid:](/integrations/builtin/app-nodes/n8n-nodes-base.sendgrid/) Fixed issue with adding contacts to lists. ### Contributors + [Matías Aguirre](https://github.com/omab) ## n8n@0.138.0 @@ -6162,7 +6199,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [Baserow:](/integrations/builtin/app-nodes/n8n-nodes-base.baserow/) Added the following filter options: Contains, Contains Not, Date Before Date, Date After Date, Filename Contains, Is Empty, Is Not Empty, Link Row Has, Link Row Does Not Have, Single Select Equal, and Single Select Not Equal. * [Pipedrive:](/integrations/builtin/app-nodes/n8n-nodes-base.pipedrive/) Added support for Notes on Leads. -* [Wekan:](/integrations/builtin/app-nodes/n8n-nodes-base.wekan/) Added Sort field to the Card resource. +* [WeKan:](/integrations/builtin/app-nodes/n8n-nodes-base.wekan/) Added Sort field to the Card resource. ### Core Functionality @@ -6176,6 +6213,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [Notion:](/integrations/builtin/app-nodes/n8n-nodes-base.notion/) Fixed issue listed unnamed databases. ### Contributors + [bramknuever](https://github.com/bramknuever), [Chris Magnuson](https://github.com/ChrisMagnuson) ## n8n@0.137.0 @@ -6189,7 +6227,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Enhanced nodes * [Clockify:](/integrations/builtin/app-nodes/n8n-nodes-base.clockify/) Added Task resource. -* [Hubspot:](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/) Added dropdown selection for Properties and Properties with History filters for Get All Deals operations. +* [HubSpot:](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/) Added dropdown selection for Properties and Properties with History filters for Get All Deals operations. * [Mautic:](/integrations/builtin/app-nodes/n8n-nodes-base.mautic/) Added Campaign Contact resource. * [MongoDB:](/integrations/builtin/app-nodes/n8n-nodes-base.mongodb/) Added ability to query documents by '_id'. * [MQTT:](/integrations/builtin/app-nodes/n8n-nodes-base.mqtt/) Added SSL/TLS support to authentication. @@ -6206,10 +6244,11 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Bug fixes -* [Hubspot:](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/) Fixed issue with 'RequestAllItems' API. -* [Wordpress:](/integrations/builtin/app-nodes/n8n-nodes-base.wordpress/) Fixed issue with 'RequestAllItems' API only returning the first 10 items. +* [HubSpot:](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/) Fixed issue with 'RequestAllItems' API. +* [WordPress:](/integrations/builtin/app-nodes/n8n-nodes-base.wordpress/) Fixed issue with 'RequestAllItems' API only returning the first 10 items. ### Contributors + [André Matthies](https://github.com/matthiez), [DeskYT](https://github.com/DeskYT), [Frederic Alix](https://github.com/fredericalix), [Jonathan Bennetts](https://github.com/Joffcom), [Ketan Somvanshi](https://github.com/KetanSomvanshi), [Luiz Eduardo de Oliveira Fonseca](https://github.com/luizeof), [TheFSilver](https://github.com/TheFSilver) ## n8n@0.136.0 @@ -6242,6 +6281,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - General improvements to parameter labels and tooltips. ### Contributors + [Kyle Mohr](https://github.com/kylefmohr) @@ -6289,6 +6329,7 @@ The features that introduced the breaking changes have been flagged below. * [Interval:](/integrations/builtin/core-nodes/n8n-nodes-base.interval/) Fixed issue where entering too large a value (> 2147483647ms) resulted in an interval of 1sec being used rather than an error. ### Contributors + [Aniruddha Adhikary](https://github.com/aniruddha-adhikary), [lublak](https://github.com/lublak), [parthibanbalaji](https://github.com/parthibanbalaji) @@ -6313,9 +6354,10 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [AWS SES:](/integrations/builtin/app-nodes/n8n-nodes-base.awsses/) Fixed issue where special characters in the message were not encoded. * [Baserow:](/integrations/builtin/app-nodes/n8n-nodes-base.baserow/) Fixed issue where Create operation inserted null values. -* [Hubspot:](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/) Fixed issue when sending context parameter. +* [HubSpot:](/integrations/builtin/app-nodes/n8n-nodes-base.hubspot/) Fixed issue when sending context parameter. ### Contributors + [calvintwr](https://github.com/calvintwr), [CFarcy](https://github.com/CFarcy), [Jeremie Dokime](https://github.com/dokime7), [Michael Hirschler](https://github.com/mvhirsch), [Rodrigo Correia](https://github.com/rodrigoscdc), [sol](https://github.com/5pecia1) ## n8n@0.133.0 @@ -6340,6 +6382,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [Spotify:](/integrations/builtin/app-nodes/n8n-nodes-base.spotify/) Fixed issues with pagination and infinite executions. ### Contributors + [Jacob Burrell](https://github.com/jacobburrell), [Лебедев Иван](https://github.com/X-pech) ## n8n@0.132.2 @@ -6351,6 +6394,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [Interval:](/integrations/builtin/core-nodes/n8n-nodes-base.interval/) Fixed issue with infinite executions. ### Contributors + [Лебедев Иван](https://github.com/X-pech) ## n8n@0.132.1 @@ -6386,6 +6430,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Fixed an issue for large internal values. ### Contributors + [Ed Linklater](https://github.com/edlinklater), [Rodrigo Correia](https://github.com/rodrigoscdc) ## n8n@0.131.0 @@ -6421,6 +6466,7 @@ The features that introduced the breaking changes have been flagged below. * [Spreadsheet File:](/integrations/builtin/core-nodes/n8n-nodes-base.spreadsheetfile/) Fixed issue when saving dates. ### Contributors + [Anthr@x](https://github.com/AnthraX1), [Felipe Cecagno](https://github.com/fcecagno) ## n8n@0.130.0 @@ -6456,6 +6502,7 @@ The features that introduced the breaking changes have been flagged below. * [Notion:](/integrations/builtin/app-nodes/n8n-nodes-base.notion/) Fixed issue when filtering field data type. ### Contributors + [Michael Hirschler](https://github.com/mvhirsch), [Mika Luhta](https://github.com/mluhta), [Pierre Lanvin](https://github.com/planvin) ## n8n@0.129.0 @@ -6471,6 +6518,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [SSH:](/integrations/builtin/core-nodes/n8n-nodes-base.ssh/) Fixed issue with access rights when downloading files. ### Contributors + [Jérémie Pardou-Piquemal](https://github.com/jrmi) ## n8n@0.128.0 @@ -6498,6 +6546,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [Microsoft SQL:](/integrations/builtin/app-nodes/n8n-nodes-base.microsoftsql/) Fixed an issue with sending the connectionTimeout parameter, and creating and updating data using columns with spaces. ### Contributors + [Kaito Udagawa](https://github.com/umireon), [Rodrigo Correia](https://github.com/rodrigoscdc) @@ -6519,7 +6568,7 @@ The features that introduced the breaking changes have been flagged below. * [Zoho CRM:](/integrations/builtin/app-nodes/n8n-nodes-base.zohocrm/) Added Account, Contact, Deal, Invoice, Product, Purchase, Quote, Sales Order, and Vendor resources. ### Core Functionality -- Added a workflow testing framework via a new CLI command to execute all desired workflows. Run `n8n executeBatch --help` for details. +- Added a workflow testing framework using a new CLI command to execute all desired workflows. Run `n8n executeBatch --help` for details. - Added support to display binary video content in Editor UI. ### Bug fixes @@ -6528,6 +6577,7 @@ The features that introduced the breaking changes have been flagged below. * [SSH:](/integrations/builtin/core-nodes/n8n-nodes-base.ssh/) Fixed an issue with setting passphrases. ### Contributors + [flybluewolf](https://github.com/flybluewolf), [Kaito Udagawa](https://github.com/umireon) ## n8n@0.126.1 @@ -6573,6 +6623,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [Notion:](/integrations/builtin/app-nodes/n8n-nodes-base.notion/) Fixed an issue with pagination of databases and users. ### Contributors + [calvintwr](https://github.com/calvintwr), [Jan Baykara](https://github.com/janbaykara) ## n8n@0.125.0 @@ -6591,6 +6642,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ * [MySQL:](/integrations/builtin/app-nodes/n8n-nodes-base.mysql/) Fixed an issue where n8n was unable to save data due to collation, resulting in workflows ending with Unknown status. ### Contributors + [Amudhan Manivasagam](https://github.com/smamudhan), [Carlos Alexandro Becker](https://github.com/caarlos0), [Kaito Udagawa](https://github.com/umireon) ## n8n@0.124.1 @@ -6609,7 +6661,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Enhanced nodes * [Google Drive:](/integrations/builtin/app-nodes/n8n-nodes-base.googledrive/) Added APP Properties and Properties options to the Upload operation of the File resource -* [HTTP Request:](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/) Added the functionlaity to log the request to the browser console for testing +* [HTTP Request:](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/) Added the functionality to log the request to the browser console for testing * [Notion:](/integrations/builtin/app-nodes/n8n-nodes-base.notion/) Added the Include Time parameter date field types * [Salesforce:](/integrations/builtin/app-nodes/n8n-nodes-base.salesforce/) Added Upsert operation to Account, Contact, Custom Object, Lead, and Opportunity resources * [Todoist:](/integrations/builtin/app-nodes/n8n-nodes-base.todoist/) Added the Description option to the Task resource @@ -6624,6 +6676,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Jean M](https://github.com/jemos), [romaincolombo-daily](https://github.com/romaincolombo-daily), [Thomas Jost](https://github.com/Schnouki), [Vincent](https://github.com/vbouchet31) ## n8n@0.123.1 @@ -6657,6 +6710,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Rodrigo Correia](https://github.com/rodrigoscdc), [Sam Roquitte](https://github.com/samr28) ## n8n@0.122.3 @@ -6664,9 +6718,9 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ **Release date:** 2021-06-04 ### Core Functionality -- Fixed error messages for the Textarea field -- Added the missing winston dependency -- Fixed an issue with adding values via the Variable selector. The deleted values don't reappear +- Fixed error messages for the text area field +- Added the missing `winston` dependency +- Fixed an issue with adding values using the Variable selector. The deleted values don't reappear - Fixed an issue with the Error Workflows not getting executed in the queue mode ### Bug fixes @@ -6725,6 +6779,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Alexander Mustafin](https://github.com/sashker) ## n8n@0.121.1 @@ -6760,6 +6815,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Jacob Spizziri](https://github.com/jspizziri) ## n8n@0.120.0 @@ -6792,6 +6848,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [DeskYT](https://github.com/DeskYT), [Daniel Lazaro](https://github.com/1izardo), [DerEnderKeks](https://github.com/DerEnderKeks), [mdasmendel](https://github.com/mdasmendel) ## n8n@0.119.0 @@ -6820,6 +6877,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Nikita](https://github.com/Rirush) @@ -6877,6 +6935,7 @@ The features that introduced the breaking changes have been flagged below. ### Contributors + [Gustavo Arjones](https://github.com/arjones), [lublak](https://github.com/lublak), [Colton Anglin](https://github.com/Colton), [Mika Luhta](https://github.com/mluhta) @@ -6919,6 +6978,7 @@ The features that introduced the breaking changes have been flagged below. ### Contributors + [Bart Vollebregt](https://github.com/bartvollebregt), [Ivan Timoshenko](https://github.com/bugagashenkj), [Konstantin Nosov](https://github.com/nosovk), [lublak](https://github.com/lublak), [Umair Kamran](https://github.com/UmairKamran), ## n8n@0.116.1 @@ -6963,6 +7023,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Allan Daemon](https://github.com/AllanDaemon), [Anton Romanov](https://github.com/theone74), [Bart Vollebregt](https://github.com/bartvollebregt), [Cassiano Vailati](https://github.com/cassvail), [entrailz](https://github.com/entrailz), [Konstantin Nosov](https://github.com/nosovk), [LongYinan](https://github.com/Brooooooklyn) ## n8n@0.115.0 @@ -6994,6 +7055,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Mika Luhta](https://github.com/mluhta), [Loran](https://github.com/loranmutafov), [stwonary](https://github.com/stwonary) ## n8n@0.114.0 @@ -7028,6 +7090,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ ### Contributors + [Agata M](https://github.com/curryy), [Allan Daemon](https://github.com/AllanDaemon), [Craig McElroy](https://github.com/camcelroy), [mjysci](https://github.com/mjysci) ## n8n@0.113.0 @@ -7045,7 +7108,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - SendGrid: Added Mail resource - Spotify: Added Library resource - Telegram: Added Answer Inline Query operation to the Callback resource -- uProc: Added Get ASIN code by EAN code, Get EAN code by ASIN code, Get Email by Social Profile, Get Email by Fullname and Company's domain, and Get Email by Fullname and Company's name operations +- uProc: Added Get ASIN code by EAN code, Get EAN code by ASIN code, Get Email by Social Profile, Get Email by Full name and Company's domain, and Get Email by Full name and Company's name operations - Bug fixes - Clearbit: Fixed an issue with the autocomplete URI - Dropbox: Fixed an issue with the Dropbox credentials by adding the APP Access Type parameter in the credentials. For more details, check out the entry in the [breaking changes](https://github.com/n8n-io/n8n/blob/master/packages/cli/BREAKING-CHANGES.md#01130) page @@ -7097,7 +7160,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Added the functionality to expose metrics to Prometheus. Read more about that [here](/hosting/configuration/#prometheus) - Updated fallback values to match the value type - Added the functionality to display debugging information for pending workflows on exit -- Fixed an issue with queue mode for the executions that should not be saved +- Fixed an issue with queue mode for the executions that shouldn't be saved - Fixed an issue with workflows crashing and displaying `Unknown` status in the execution list - Fixed an issue to prevent crashing while saving execution data when the `data` field has over 64KB in MySQL - Updated `jws-rsa` to version `1.12.1` @@ -7144,14 +7207,14 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - GoToWebinar - Raindrop - Enhanced nodes -- AWS Rekognition: Added the Detect Text type to the Ananlyze operation for the Image resource +- AWS Rekognition: Added the Detect Text type to the Analyze operation for the Image resource - Google Calendar: Added RRULE parameter to the Get All operation for the Event resource - Jira: Added User resource and operations - Reddit: Added the Search operation for the Post resource - Telegram: Added the Send Location operation - Bug fixes - RocketChat: Fixed error responses -- Fixed the issue which caused the execution history of subworkflows (workflows started via the Execute Workflow node) not to be saved +- Fixed the issue which caused the execution history of subworkflows (workflows started using the Execute Workflow node) not to be saved - Added an option to export the credential data in plain text format using the CLI ## n8n@0.108.0 @@ -7192,7 +7255,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Twitter: Added Delete operation to the Tweet resource - Bug fixes - Google Drive: Fixed an issue with the Delete and Share operations -- Filemaker: Fixed an issue with the script list parsing +- FileMaker: Fixed an issue with the script list parsing - Updated Node.js version of Docker images to `14.15` - Added a shortcut `CTRL + scroll` to zoom @@ -7223,7 +7286,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Enhanced nodes - Affinity: Added List and List Entry resource - Asana: Added Project IDs option to the Create operation of the Task resource -- Hubspot Trigger: Added support for multiple subscriptions +- HubSpot Trigger: Added support for multiple subscriptions - Jira: Added Issue Attachment resource and added custom fields to Create and Update operations of the Issue resource - Todoist: Added Section option - Bug fixes @@ -7284,7 +7347,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - AWS Lambda: Fixed an issue with signature - AWS SNS: Fixed an issue with signature - Fixed an issue with nodes not executing if two input gets passed and one of them didn't return any data -- The code editor does not get closed when clicked anywhere outside the editor +- The code editor doesn'tget closed when clicked anywhere outside the editor - Added CLI commands to [export](/hosting/cli-commands/#export-workflows-and-credentials) and [import](/hosting/cli-commands/#import-workflows-and-credentials) credentials and workflows - The title in the browser tab now resets for new workflows @@ -7297,10 +7360,10 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Beeminder - Enhanced nodes - Crypto: Added hash type `SHA384` -- Google Books: Added support for user impersonification -- Google Drive: Added support for user impersonification -- Google Sheets: Added support for user impersonification -- Gmail: Added support for user impersonification +- Google Books: Added support for user impersonation +- Google Drive: Added support for user impersonation +- Google Sheets: Added support for user impersonation +- Gmail: Added support for user impersonation - Microsoft Outlook: Added support for a shared mailbox - RabbitMQ: Added Exchange mode - Salesforce: Added filters to all Get All operations @@ -7316,7 +7379,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - New nodes - Google Analytics -- Phantombuster +- PhantomBuster - Enhanced nodes - AWS: Added support for custom endpoints - Gmail: Added an option to send messages formatted as HTML @@ -7331,7 +7394,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Split In Batches: Fixed a typo in the description - Telegram: Fixed an issue with the Send Audio operation - Based on your settings, vacuum runs on SQLite on startup -- Updated axios to version `0.21.1` +- Updated Axios to version `0.21.1` ## n8n@0.100.0 For a comprehensive list of changes, check out the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.99.1...n8n@0.100.0) for this version.
@@ -7382,7 +7445,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Bug fixes - Dropbox: Fixed an issue with the OAuth credentials - Google Sheets: Fixed an issue with the parameters getting hidden for other operations -- Added functionality to easily copy the data and the path from the output +- Added functionality to copy the data and the path from the output - Fixed an issue with the node getting selected after it was duplicated ## n8n@0.98.0 @@ -7410,7 +7473,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - New nodes - Ghost -- Nasa +- NASA - Snowflake - Twist - Enhanced nodes @@ -7432,7 +7495,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - TheHive Trigger - Yourls - Enhanced nodes -- Hubspot: Added Contact List resource and Search operation for the Deal resource +- HubSpot: Added Contact List resource and Search operation for the Deal resource - Google Calendar: You can now add multiple attendees in the Attendees field - Slack: The node now loads both private and public channels - Bug Fixes @@ -7459,7 +7522,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Quick Base - Spontit - Enhanced nodes -- Airable: The Application ID field has been renamed to Base ID, and the Table ID field has been renamed to Table. The List operation now downloads attachments automatically +- Airtable: The Application ID field has been renamed to Base ID, and the Table ID field has been renamed to Table. The List operation now downloads attachments automatically - Harvest: Moved the account field from the credentials to the node parameters. For more details, check out the entry in the [breaking changes](https://github.com/n8n-io/n8n/blob/master/packages/cli/BREAKING-CHANGES.md#0950) page - Bug Fixes - Slack: Fixed an issue with creating channels and inviting users to a channel @@ -7506,7 +7569,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Enhanced nodes - AMQP: Connection is now closed after a message is sent - AMQP Trigger: Added Message per Cycle option to retrieve the specified number of messages from the bus for every cycle -- Hubspot: Added Custom Properties for the Deal resource as Additional Fields +- HubSpot: Added Custom Properties for the Deal resource as Additional Fields - Jira: The node retrieves all the projects for the Project field instead of just 50 - Mattermost: Improved the channel selection - Microsoft SQL: Added TLS parameter for the credentials @@ -7602,7 +7665,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ **Release date:** 2020-10-16 - Bug Fixes -- HTTP Request: Fixed an issue with the Form-Data Mutipart and the RAW/Custom Body Content Types +- HTTP Request: Fixed an issue with the Form-Data Multipart and the RAW/Custom Body Content Types ## n8n@0.88.0 For a comprehensive list of changes, check out the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.87.2...n8n@0.88.0) for this version.
@@ -7642,7 +7705,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Matrix - Sendy - Vonage -- Wekan +- WeKan - Enhanced nodes - AWS SES: Added Send Template operation for the Email resource and added the Template resource - ClickUp: Added Time Entry and Time Entry Tag resources @@ -7834,8 +7897,8 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Postgres - Webhook - Removed Test-Webhook also in case checkExists fails -- HTTP Request node does not overwrite accept header if it's already set -- Add rawBody to every request so that n8n does not give an error if body is missing +- HTTP Request node doesn'toverwrite accept header if it's already set +- Add rawBody to every request so that n8n doesn'tgive an error if body is missing ## n8n@0.79.0 For a comprehensive list of changes, check out the [commits](https://github.com/n8n-io/n8n/compare/n8n@0.79.2...n8n@0.79.3) for this version.
@@ -7843,8 +7906,8 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - New nodes - Contentful -- Convertkit -- Convertkit Trigger +- ConvertKit +- ConvertKit Trigger - Paddle - Enhanced nodes - Airtable @@ -7909,7 +7972,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Jira Trigger - Enhanced nodes - GitLab -- NextCloud +- Nextcloud - Pipedrive - QuestDB - Webhooks now support OPTIONS request @@ -7929,7 +7992,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - MongoDB - Pipedrive - Postgres -- Uplead +- UpLead - Webhook - Webhook URLs are now handled independently of the workflow ID by `https://{hostname}/webhook/{path}` instead of the older `https://{hostname}/webhook/{workflow_id}/{node_name}/{path}`. @@ -7953,7 +8016,7 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Enhanced nodes - Postmark Trigger - Salesforce -- It is now possible to set default values for credentials that get prefilled, and the user cannot change. +- It's now possible to set default values for credentials that get prefilled, and the user can't change. ## n8n@0.72.0 @@ -7977,13 +8040,13 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - SIGNL4 - Spotify - Enhanced nodes -- Hubspot +- HubSpot - Mailchimp - Typeform - Webflow - Zendesk - Added Postgres SSL support -- It is now possible to deploy n8n under a subfolder +- It's now possible to deploy n8n under a subfolder ## n8n@0.70.0 @@ -7996,3 +8059,5 @@ For a comprehensive list of changes, check out the [commits](https://github.com/ - Monday.com - MongoDB - Fixed the issue with multiuser-setup + + diff --git a/docs/source-control-environments/understand/environments.md b/docs/source-control-environments/understand/environments.md index 04cff3b35d4..ece0f13718a 100644 --- a/docs/source-control-environments/understand/environments.md +++ b/docs/source-control-environments/understand/environments.md @@ -11,11 +11,11 @@ n8n has built its environments feature on top of Git, a version control software * The purpose of environments. * How environments work in n8n. -## Environments: What and why? +## Environments: What and why In software development, the environment is all the infrastructure and tooling around the code, including the tools that run the software, and the specific configuration of those tools. For a more detailed introduction to environments in software development, refer to [Codecademy | Environments](https://www.codecademy.com/article/environments){:target=_blank .external-link}. -Low-code development in n8n is similar. n8n is where you build and run your workflows. Your instance may have particular configurations: on Cloud, the configuration is determined by n8n. On self-hosted instances, there are extensive [configuration options](/hosting/environment-variables/). You may also have made changes to the settings of your instance. This combination of n8n and your instance's specific configuration and settings is the environment your workflows run in. +Low-code development in n8n is similar. n8n is where you build and run your workflows. Your instance may have particular configurations: on Cloud, n8n determines the configuration. On self-hosted instances, there are extensive [configuration options](/hosting/environment-variables/). You may also have made changes to the settings of your instance. This combination of n8n and your instance's specific configuration and settings is the environment your workflows run in. There are advantages to having more than one environment. A common pattern is to have different environments for development and production: diff --git a/docs/source-control-environments/understand/git.md b/docs/source-control-environments/understand/git.md index b71fbfea582..d21637b284b 100644 --- a/docs/source-control-environments/understand/git.md +++ b/docs/source-control-environments/understand/git.md @@ -18,8 +18,8 @@ If you're familiar with Git, don't rely on behaviors matching exactly. In partic This page introduces the Git concepts and terminology used in n8n. It doesn't cover everything you need to set up and manage a repository. The person doing the [Setup](/source-control-environments/setup/) should have some familiarity with Git and with their Git hosting provider. -/// note | This is a very brief introduction -Git is a complex topic. This section provides a very brief introduction to the key terms you need when using environments in n8n. If you want to learn about Git in depth, refer to [GitHub | Git and GitHub learning resources](https://docs.github.com/en/get-started/quickstart/git-and-github-learning-resources){:target=_blank .external-link}. +/// note | This is a brief introduction +Git is a complex topic. This section provides a brief introduction to the key terms you need when using environments in n8n. If you want to learn about Git in depth, refer to [GitHub | Git and GitHub learning resources](https://docs.github.com/en/get-started/quickstart/git-and-github-learning-resources){:target=_blank .external-link}. /// ## Git overview diff --git a/docs/try-it-out/index.md b/docs/try-it-out/index.md index 8f5026c06d9..9f99edefa35 100644 --- a/docs/try-it-out/index.md +++ b/docs/try-it-out/index.md @@ -7,6 +7,6 @@ contentType: overview This section gets you up and running with building workflows in n8n. -* Want a very fast taster of n8n? Try the [Very quick quickstart](/try-it-out/quickstart/). +* Want a fast taster of n8n? Try the [Very quick quickstart](/try-it-out/quickstart/). * Looking for a more detailed introduction? Check out the [Slightly longer introduction](/try-it-out/longer-introduction/). * Prefer to work through extensive examples? Maybe the [courses](/courses/) are for you. diff --git a/docs/try-it-out/longer-introduction.md b/docs/try-it-out/longer-introduction.md index 3a5f259a63e..8ecf8432360 100644 --- a/docs/try-it-out/longer-introduction.md +++ b/docs/try-it-out/longer-introduction.md @@ -87,7 +87,7 @@ Add the If node: 3. Select **If** to add the node to the canvas. n8n opens the node. 4. Select **Add condition** > **String**. 5. You need to check the value of the `classType` property in the NASA data. To do this: - 1. Drag and drop **classType** into **Value 1**. + 1. Drag **classType** into **Value 1**. /// note | Make sure you ran the NASA node in the previous section If you didn't follow the step in the previous section to run the NASA node, you won't see any data to work with in this step. @@ -98,7 +98,7 @@ Add the If node: 6. You can now check that the node is working and returning the expected date: select **Test step** to run the node manually. n8n tests the data against the condition, and shows which results match true or false in the **OUTPUT** panel. /// note | Weeks without large solar flares -In this tutorial, you are working with live date. If you find there are no X class solar flares when you run the workflow, try replacing **X** in **Value 2** with either **A**, **B**, **C**, or **M**. +In this tutorial, you are working with live date. If you find there aren't any X class solar flares when you run the workflow, try replacing **X** in **Value 2** with either **A**, **B**, **C**, or **M**. /// ## Step six: Output data from your workflow diff --git a/docs/try-it-out/quickstart.md b/docs/try-it-out/quickstart.md index c9eefbe3675..a2d1acee0a7 100644 --- a/docs/try-it-out/quickstart.md +++ b/docs/try-it-out/quickstart.md @@ -5,7 +5,7 @@ contentType: tutorial # The very quick quickstart -This quickstart gives you a very quick taste of n8n. Its aim is to allow you to try out the UI, and introduce you to two key features: workflow templates and expressions. It doesn't include detailed explanations or explore concepts. +This quickstart gives you a quick taste of n8n. Its aim is to allow you to try out the UI, and introduce you to two key features: workflow templates and expressions. It doesn't include detailed explanations or explore concepts. You will: diff --git a/docs/user-management/best-practices.md b/docs/user-management/best-practices.md index bec56d83b90..edce8e41f8c 100644 --- a/docs/user-management/best-practices.md +++ b/docs/user-management/best-practices.md @@ -9,16 +9,16 @@ This page contains advice on best practices relating to user management in n8n. ## All platforms -* We recommend that owners create a member-level account for themselves. Owners can see all workflows, but there is no way to see who created a particular workflow, so there is a risk of overriding other people's work if you build and edit workflows as an owner. +* n8n recommends that owners create a member-level account for themselves. Owners can see all workflows, but there is no way to see who created a particular workflow, so there is a risk of overriding other people's work if you build and edit workflows as an owner. * Users must be careful not to edit the same workflow simultaneously. It's possible to do it, but the users will overwrite each other's changes. * To move workflows between accounts, export the workflow as JSON, then import it to the new account. Note that this action loses the workflow history. * Webhook paths must be unique across the entire instance. This means each webhook path must be unique for all workflows and all users. By default, n8n generates a long random value for the webhook path, but users can edit this to their own custom path. If two users set the same path value: - * The path works for the first workflow that is run or activated. + * The path works for the first workflow that's run or activated. * Other workflows will error if they try to run with the same path. ## Self-hosted -If you run n8n behind a reverse proxy, set the following environment variables so that emails are generated with the correct URL: +If you run n8n behind a reverse proxy, set the following environment variables so that n8n generates emails with the correct URL: * `N8N_HOST` * `N8N_PORT` * `N8N_PROTOCOL` diff --git a/docs/user-management/cloud-setup.md b/docs/user-management/cloud-setup.md index 13715da3df4..30a464593aa 100644 --- a/docs/user-management/cloud-setup.md +++ b/docs/user-management/cloud-setup.md @@ -15,10 +15,10 @@ To access user management, upgrade to version 0.195.0 or newer. Once you upgrade your Cloud instance to an n8n version with user management, you can't downgrade your version. /// -## Step one: in-app setup +## Step one: In-app setup --8<-- "_snippets/user-management/in-app-setup.md" -## Step two: invite users +## Step two: Invite users --8<-- "_snippets/user-management/invite-users.md" diff --git a/docs/user-management/index.md b/docs/user-management/index.md index 4dd1f703e4d..31fcdf9c17c 100644 --- a/docs/user-management/index.md +++ b/docs/user-management/index.md @@ -15,7 +15,7 @@ User management in n8n allows you to invite people to work in your n8n instance. The user management feature doesn't send personal information, such as email or username, to n8n. /// ## Setup guides - + This section contains most usage information for user management, and the [Cloud setup guide](/user-management/cloud-setup/). If you self-host n8n, there are extra steps to configure your n8n instance. Refer to the [Self-hosted guide](/hosting/user-management-self-hosted/). - + This section includes guides to configuring [LDAP](/user-management/ldap/) and [SAML](/user-management/saml/) in n8n. diff --git a/docs/user-management/saml/index.md b/docs/user-management/saml/index.md index d2f225ea11f..9906212a6a9 100644 --- a/docs/user-management/saml/index.md +++ b/docs/user-management/saml/index.md @@ -8,7 +8,7 @@ contentType: overview * Available on Enterprise plans. * You need access to the n8n instance owner account to enable and configure SAML -Available from version 0.225.0 onwards. +Available from version 0.225.0. /// diff --git a/docs/user-management/saml/setup.md b/docs/user-management/saml/setup.md index 466deea27f7..11b6e295cd2 100644 --- a/docs/user-management/saml/setup.md +++ b/docs/user-management/saml/setup.md @@ -10,7 +10,7 @@ contentType: howto * Available on Enterprise plans. * You need access to the n8n instance owner account to enable and configure SAML -Available from version 0.225.0 onwards. +Available from version 0.225.0. /// This page tells you how to enable SAML SSO (single sign-on) in n8n. It assumes you're familiar with SAML. If you're not, [SAML Explained in Plain English](https://www.onelogin.com/learn/saml){:target=_blank .external-link} can help you understand how SAML works, and its benefits. diff --git a/docs/workflows/executions/custom-executions-data.md b/docs/workflows/executions/custom-executions-data.md index 0a6a38f570c..68408e5204a 100644 --- a/docs/workflows/executions/custom-executions-data.md +++ b/docs/workflows/executions/custom-executions-data.md @@ -48,6 +48,7 @@ There are limitations: You can retrieve the custom data object, or a specific value in it, during an execution: + === "JavaScript" ```js // Access the current state of the object during the execution @@ -64,3 +65,4 @@ You can retrieve the custom data object, or a specific value in it, during an ex # Access a specific value set during this execution customData = _execution.customData.get("key"); ``` + diff --git a/docs/workflows/templates.md b/docs/workflows/templates.md index 9d9dfa69309..99b88f463fe 100644 --- a/docs/workflows/templates.md +++ b/docs/workflows/templates.md @@ -9,7 +9,7 @@ When creating a new workflow, you can choose whether to start with an empty work Templates provide: -* A way to get started quickly: n8n might already have a template that does what you need. +* Help getting started: n8n might already have a template that does what you need. * Examples of what you can build * Best practices for creating your own workflows diff --git a/document-templates/release-notes.md b/document-templates/release-notes.md index 9730b256d75..5f418661a2d 100644 --- a/document-templates/release-notes.md +++ b/document-templates/release-notes.md @@ -63,7 +63,7 @@ _Description of new feature. Link to new node doc._ ### Contributors -_List external contributors. Do not use a bulleted list here._ +_List external contributors. Don't use a bulleted list here._ diff --git a/overrides/main.html b/overrides/main.html index c5558b65337..fb8f1627c36 100644 --- a/overrides/main.html +++ b/overrides/main.html @@ -54,8 +54,8 @@ height="0" width="0" style="display:none;visibility:hidden"> -{{ super() }} +{{ super() }} {% endblock %} diff --git a/styles/Microsoft/HeadingAcronyms.yml b/styles/Microsoft/HeadingAcronyms.yml deleted file mode 100644 index 9dc3b6c2de7..00000000000 --- a/styles/Microsoft/HeadingAcronyms.yml +++ /dev/null @@ -1,7 +0,0 @@ -extends: existence -message: "Avoid using acronyms in a title or heading." -link: https://docs.microsoft.com/en-us/style-guide/acronyms#be-careful-with-acronyms-in-titles-and-headings -level: warning -scope: heading -tokens: - - '[A-Z]{2,4}' diff --git a/styles/Vocab/default/accept.txt b/styles/Vocab/default/accept.txt deleted file mode 100644 index a3fee596b1b..00000000000 --- a/styles/Vocab/default/accept.txt +++ /dev/null @@ -1,74 +0,0 @@ -Adalo -Agent -agent -Airtable -Asana -Authentik -Axios -Backblaze -backend -Beeminder -Boolean -boolean -Caddy -Citrix -Clockify -Cron -Datastore -Dockerfile -eksctl -Enum -enum -Fargate -Firestore -GIMP -Hetzner -invalid -Infisical -Keycloak -kubectl -Kafka -Lemlist -Luxon -Mattermost -Metabase -Middleware -middleware -n8n -namespace -Nodelinter -npm -npx -Okta -Ollama -onboarding -Pipedrive -Pinecone -Pluralsight -Postbin -Postgres -PostHog -Qdrant -Realtime -Serverless -serverless -Shopify -shopify -Strapi -Supabase -There are -Tooltip -tooltip -Trello -Twilio -Typeahead -typeahead -Unformatted -unformatted -URI -URIs -URL -Venafi -Vuex -Xata -Zep diff --git a/styles/config/vocabularies/default/accept.txt b/styles/config/vocabularies/default/accept.txt new file mode 100644 index 00000000000..6d1b4d7fa59 --- /dev/null +++ b/styles/config/vocabularies/default/accept.txt @@ -0,0 +1,292 @@ +ABCorp +Adalo +Addon +addon +Agent +agent +Aggregate +aggregate +Airtable +Allowlist +allowlist +Anthropic +APIs +Asana +Atlassian +Authentik +Auto-fixing +auto-fixing +Automizy +Autorenew +autorenew +Axios +Backblaze +Backend +backend +balancer's +Bannerbear +Basename +basename +Baserow +bcrypt +Beeminder +Bing +Bitly +Bitwarden +blockquote +Boolean +boolean +Borderless +borderless +bot +Brandfetch +Brevo +buildpack +Burstable +burstable +Caddy +Calendly +Callout +callout +Capterra +cartesian +Chargebee +Chatbot +chatbot +Citrix +Clearbit +Clockify +Codecademy +Cohere +Combinator +Contentful +ConvertKit +CPU +CPython +CRM +Cron +Crypto +crypto +Datastore +DeepL +Demio +disabled +Disqus +Dockerfile +Dropcontact +eksctl +Embeddable +embeddable +Emelia +Entra +Enum +enum +ERPNext +Erroring +erroring +ESLint +Eventbrite +Faircode +faircode +Fargate +Favicon +favicon +Figma +FileMaker +Firestore +Formhub +Formstack +Fortinet +Freshdesk +Freshservice +Freshworks +gcloud +geocoded +geocodes +Geospatial +geospatial +GIMP +Gotify +Grafana +GSuite +Gumroad +Hetzner +Homeserver +Hostname +hostname +HubSpot +Humantic +Imperva +invalid +Infisical +Intuit +IP +Iterable +iterable +Jira +JMESPath +Keap +Keycloak +Kibana +Kitemaker +kubectl +Kafka +Lemlist +Lenovo +Linter +linter +LLM +Luhn +Luxon +Magnetopause +magnetopause +Mailcheck +Mailchimp +Mailgun +Mailjet +marketstack +Mattermost +Mautic +Maximum +maximum +Meraki +Metabase +Middleware +middleware +Millicore +millicore +Mindee +Minimum +minimum +Mocean +Motorhead +Multiple +multiple +n8n +namespace +NASA +Netlify +Nextcloud +ngrok +Nodelinter +npm +npx +OAuth +Odoo +Okta +Ollama +onboarding +Onfleet +Oura +Peekalink +PhantomBuster +Pinterest +Pipedrive +Pinecone +Plivo +Pluralsight +Postbin +Postgres +PostHog +Prefilled +prefilled +Prepopulate +prepopulate +Pushbullet +Pushcut +Pyodide +Qdrant +QRadar +Qualys +Quickstarts +quickstarts +Realtime +Rekognition +requester +Rundeck +Salesmate +Sekoia +Sendy +Serp +Serverless +serverless +Shopify +shopify +signup +Splunk +Spontit +Spotify +Stackby +Stackshare +Storyblok +Strapi +Strava +strikethrough +Subfolder +subfolder +sublist +Subreddit +subreddit +Subtask +subtask +Supabase +Syslog +syslog +Tapfiliate +Textract +There are +Timesheet +timesheet +Todoist +Toggl +Tooltip +tooltip +Touchpad +touchpad +Traefik +Trellix +Trello +TSLint +Twake +Twilio +Typeahead +typeahead +Typeform +Unarchive +unarchive +Unformatted +unformatted +Unpublish +unpublish +Unshare +unshare +Untrash +UpLead +uProc +Upsert +upsert +Upvote +upvote +URI +URIs +URL +Venafi +VERO +Vhost +VM +Vonage +Vuex +Webex +Webflow +WeKan +Wireframe +wireframe +WordPress +Wufoo +Xata +Xero +Zammad +Zendesk +Zep +Zoho +Zscaler diff --git a/styles/Vocab/default/reject.txt b/styles/config/vocabularies/default/reject.txt similarity index 100% rename from styles/Vocab/default/reject.txt rename to styles/config/vocabularies/default/reject.txt diff --git a/styles/alex/Ablist.yml b/styles/from-alex/Ablist.yml similarity index 100% rename from styles/alex/Ablist.yml rename to styles/from-alex/Ablist.yml diff --git a/styles/alex/Condescending.yml b/styles/from-alex/Condescending.yml similarity index 100% rename from styles/alex/Condescending.yml rename to styles/from-alex/Condescending.yml diff --git a/styles/alex/Gendered.yml b/styles/from-alex/Gendered.yml similarity index 100% rename from styles/alex/Gendered.yml rename to styles/from-alex/Gendered.yml diff --git a/styles/alex/LGBTQ.yml b/styles/from-alex/LGBTQ.yml similarity index 100% rename from styles/alex/LGBTQ.yml rename to styles/from-alex/LGBTQ.yml diff --git a/styles/alex/Press.yml b/styles/from-alex/Press.yml similarity index 100% rename from styles/alex/Press.yml rename to styles/from-alex/Press.yml diff --git a/styles/alex/Profanity.yml b/styles/from-alex/Profanity.yml similarity index 100% rename from styles/alex/Profanity.yml rename to styles/from-alex/Profanity.yml diff --git a/styles/alex/README.md b/styles/from-alex/README.md similarity index 100% rename from styles/alex/README.md rename to styles/from-alex/README.md diff --git a/styles/alex/Race.yml b/styles/from-alex/Race.yml similarity index 100% rename from styles/alex/Race.yml rename to styles/from-alex/Race.yml diff --git a/styles/alex/Suicide.yml b/styles/from-alex/Suicide.yml similarity index 100% rename from styles/alex/Suicide.yml rename to styles/from-alex/Suicide.yml diff --git a/styles/alex/meta.json b/styles/from-alex/meta.json similarity index 100% rename from styles/alex/meta.json rename to styles/from-alex/meta.json diff --git a/styles/Microsoft/AMPM.yml b/styles/from-microsoft/AMPM.yml similarity index 100% rename from styles/Microsoft/AMPM.yml rename to styles/from-microsoft/AMPM.yml diff --git a/styles/Microsoft/Accessibility.yml b/styles/from-microsoft/Accessibility.yml similarity index 100% rename from styles/Microsoft/Accessibility.yml rename to styles/from-microsoft/Accessibility.yml diff --git a/styles/Microsoft/Acronyms.yml b/styles/from-microsoft/Acronyms.yml similarity index 100% rename from styles/Microsoft/Acronyms.yml rename to styles/from-microsoft/Acronyms.yml diff --git a/styles/Microsoft/Adverbs.yml b/styles/from-microsoft/Adverbs.yml similarity index 100% rename from styles/Microsoft/Adverbs.yml rename to styles/from-microsoft/Adverbs.yml diff --git a/styles/Microsoft/Auto.yml b/styles/from-microsoft/Auto.yml similarity index 100% rename from styles/Microsoft/Auto.yml rename to styles/from-microsoft/Auto.yml diff --git a/styles/Microsoft/Avoid.yml b/styles/from-microsoft/Avoid.yml similarity index 92% rename from styles/Microsoft/Avoid.yml rename to styles/from-microsoft/Avoid.yml index dab7822c792..b58ae808506 100644 --- a/styles/Microsoft/Avoid.yml +++ b/styles/from-microsoft/Avoid.yml @@ -6,9 +6,7 @@ ignorecase: true level: error tokens: - abortion - - and so on - app(?:lication)?s? (?:developer|program) - app(?:lication)? file - backbone - - backend - contiguous selection diff --git a/styles/Microsoft/ComplexWords.yml b/styles/from-microsoft/ComplexWords.yml similarity index 100% rename from styles/Microsoft/ComplexWords.yml rename to styles/from-microsoft/ComplexWords.yml diff --git a/styles/Microsoft/Contractions.yml b/styles/from-microsoft/Contractions.yml similarity index 100% rename from styles/Microsoft/Contractions.yml rename to styles/from-microsoft/Contractions.yml diff --git a/styles/Microsoft/Dashes.yml b/styles/from-microsoft/Dashes.yml similarity index 100% rename from styles/Microsoft/Dashes.yml rename to styles/from-microsoft/Dashes.yml diff --git a/styles/Microsoft/DateFormat.yml b/styles/from-microsoft/DateFormat.yml similarity index 100% rename from styles/Microsoft/DateFormat.yml rename to styles/from-microsoft/DateFormat.yml diff --git a/styles/Microsoft/DateNumbers.yml b/styles/from-microsoft/DateNumbers.yml similarity index 100% rename from styles/Microsoft/DateNumbers.yml rename to styles/from-microsoft/DateNumbers.yml diff --git a/styles/Microsoft/DateOrder.yml b/styles/from-microsoft/DateOrder.yml similarity index 100% rename from styles/Microsoft/DateOrder.yml rename to styles/from-microsoft/DateOrder.yml diff --git a/styles/Microsoft/Ellipses.yml b/styles/from-microsoft/Ellipses.yml similarity index 100% rename from styles/Microsoft/Ellipses.yml rename to styles/from-microsoft/Ellipses.yml diff --git a/styles/Microsoft/FirstPerson.yml b/styles/from-microsoft/FirstPerson.yml similarity index 100% rename from styles/Microsoft/FirstPerson.yml rename to styles/from-microsoft/FirstPerson.yml diff --git a/styles/Microsoft/Foreign.yml b/styles/from-microsoft/Foreign.yml similarity index 100% rename from styles/Microsoft/Foreign.yml rename to styles/from-microsoft/Foreign.yml diff --git a/styles/Microsoft/Gender.yml b/styles/from-microsoft/Gender.yml similarity index 100% rename from styles/Microsoft/Gender.yml rename to styles/from-microsoft/Gender.yml diff --git a/styles/Microsoft/GenderBias.yml b/styles/from-microsoft/GenderBias.yml similarity index 100% rename from styles/Microsoft/GenderBias.yml rename to styles/from-microsoft/GenderBias.yml diff --git a/styles/Microsoft/GeneralURL.yml b/styles/from-microsoft/GeneralURL.yml similarity index 100% rename from styles/Microsoft/GeneralURL.yml rename to styles/from-microsoft/GeneralURL.yml diff --git a/styles/Microsoft/HeadingColons.yml b/styles/from-microsoft/HeadingColons.yml similarity index 100% rename from styles/Microsoft/HeadingColons.yml rename to styles/from-microsoft/HeadingColons.yml diff --git a/styles/Microsoft/HeadingPunctuation.yml b/styles/from-microsoft/HeadingPunctuation.yml similarity index 100% rename from styles/Microsoft/HeadingPunctuation.yml rename to styles/from-microsoft/HeadingPunctuation.yml diff --git a/styles/Microsoft/Headings.yml b/styles/from-microsoft/Headings.yml similarity index 100% rename from styles/Microsoft/Headings.yml rename to styles/from-microsoft/Headings.yml diff --git a/styles/Microsoft/Hyphens.yml b/styles/from-microsoft/Hyphens.yml similarity index 100% rename from styles/Microsoft/Hyphens.yml rename to styles/from-microsoft/Hyphens.yml diff --git a/styles/Microsoft/Negative.yml b/styles/from-microsoft/Negative.yml similarity index 100% rename from styles/Microsoft/Negative.yml rename to styles/from-microsoft/Negative.yml diff --git a/styles/Microsoft/Ordinal.yml b/styles/from-microsoft/Ordinal.yml similarity index 100% rename from styles/Microsoft/Ordinal.yml rename to styles/from-microsoft/Ordinal.yml diff --git a/styles/Microsoft/OxfordComma.yml b/styles/from-microsoft/OxfordComma.yml similarity index 100% rename from styles/Microsoft/OxfordComma.yml rename to styles/from-microsoft/OxfordComma.yml diff --git a/styles/Microsoft/Passive.yml b/styles/from-microsoft/Passive.yml similarity index 100% rename from styles/Microsoft/Passive.yml rename to styles/from-microsoft/Passive.yml diff --git a/styles/Microsoft/Percentages.yml b/styles/from-microsoft/Percentages.yml similarity index 100% rename from styles/Microsoft/Percentages.yml rename to styles/from-microsoft/Percentages.yml diff --git a/styles/Microsoft/Quotes.yml b/styles/from-microsoft/Quotes.yml similarity index 100% rename from styles/Microsoft/Quotes.yml rename to styles/from-microsoft/Quotes.yml diff --git a/styles/Microsoft/RangeFormat.yml b/styles/from-microsoft/RangeFormat.yml similarity index 100% rename from styles/Microsoft/RangeFormat.yml rename to styles/from-microsoft/RangeFormat.yml diff --git a/styles/Microsoft/RangeTime.yml b/styles/from-microsoft/RangeTime.yml similarity index 100% rename from styles/Microsoft/RangeTime.yml rename to styles/from-microsoft/RangeTime.yml diff --git a/styles/Microsoft/Ranges.yml b/styles/from-microsoft/Ranges.yml similarity index 100% rename from styles/Microsoft/Ranges.yml rename to styles/from-microsoft/Ranges.yml diff --git a/styles/Microsoft/Semicolon.yml b/styles/from-microsoft/Semicolon.yml similarity index 100% rename from styles/Microsoft/Semicolon.yml rename to styles/from-microsoft/Semicolon.yml diff --git a/styles/Microsoft/SentenceLength.yml b/styles/from-microsoft/SentenceLength.yml similarity index 100% rename from styles/Microsoft/SentenceLength.yml rename to styles/from-microsoft/SentenceLength.yml diff --git a/styles/Microsoft/Spacing.yml b/styles/from-microsoft/Spacing.yml similarity index 100% rename from styles/Microsoft/Spacing.yml rename to styles/from-microsoft/Spacing.yml diff --git a/styles/Microsoft/Suspended.yml b/styles/from-microsoft/Suspended.yml similarity index 100% rename from styles/Microsoft/Suspended.yml rename to styles/from-microsoft/Suspended.yml diff --git a/styles/Microsoft/Terms.yml b/styles/from-microsoft/Terms.yml similarity index 96% rename from styles/Microsoft/Terms.yml rename to styles/from-microsoft/Terms.yml index e41ff74b7a4..96380ddb755 100644 --- a/styles/Microsoft/Terms.yml +++ b/styles/from-microsoft/Terms.yml @@ -8,7 +8,6 @@ swap: '(?:agent|virtual assistant|intelligent personal assistant)': personal digital assistant '(?:drive C:|drive C>|C: drive)': drive C '(?:internet bot|web robot)s?': bot(s) - '(?:microsoft cloud|the cloud)': cloud '(?:mobile|smart) ?phone': phone '24/7': every day 'audio(?:-| )book': audiobook diff --git a/styles/Microsoft/URLFormat.yml b/styles/from-microsoft/URLFormat.yml similarity index 100% rename from styles/Microsoft/URLFormat.yml rename to styles/from-microsoft/URLFormat.yml diff --git a/styles/Microsoft/Units.yml b/styles/from-microsoft/Units.yml similarity index 100% rename from styles/Microsoft/Units.yml rename to styles/from-microsoft/Units.yml diff --git a/styles/Microsoft/Vocab.yml b/styles/from-microsoft/Vocab.yml similarity index 100% rename from styles/Microsoft/Vocab.yml rename to styles/from-microsoft/Vocab.yml diff --git a/styles/Microsoft/We.yml b/styles/from-microsoft/We.yml similarity index 100% rename from styles/Microsoft/We.yml rename to styles/from-microsoft/We.yml diff --git a/styles/Microsoft/Wordiness.yml b/styles/from-microsoft/Wordiness.yml similarity index 98% rename from styles/Microsoft/Wordiness.yml rename to styles/from-microsoft/Wordiness.yml index 22a4c932c8a..e25c09538dc 100644 --- a/styles/Microsoft/Wordiness.yml +++ b/styles/from-microsoft/Wordiness.yml @@ -52,8 +52,6 @@ swap: continue on: continue despite the fact that: although disappear from sight: disappear - drag and drop: drag - drag-and-drop: drag doomed to fail: doomed due to the fact that: because during the period of: during diff --git a/styles/Microsoft/meta.json b/styles/from-microsoft/meta.json similarity index 100% rename from styles/Microsoft/meta.json rename to styles/from-microsoft/meta.json diff --git a/styles/write-good/Cliches.yml b/styles/from-write-good/Cliches.yml similarity index 100% rename from styles/write-good/Cliches.yml rename to styles/from-write-good/Cliches.yml diff --git a/styles/write-good/E-Prime.yml b/styles/from-write-good/E-Prime.yml similarity index 100% rename from styles/write-good/E-Prime.yml rename to styles/from-write-good/E-Prime.yml diff --git a/styles/write-good/Illusions.yml b/styles/from-write-good/Illusions.yml similarity index 100% rename from styles/write-good/Illusions.yml rename to styles/from-write-good/Illusions.yml diff --git a/styles/write-good/Passive.yml b/styles/from-write-good/Passive.yml similarity index 100% rename from styles/write-good/Passive.yml rename to styles/from-write-good/Passive.yml diff --git a/styles/write-good/README.md b/styles/from-write-good/README.md similarity index 100% rename from styles/write-good/README.md rename to styles/from-write-good/README.md diff --git a/styles/write-good/So.yml b/styles/from-write-good/So.yml similarity index 100% rename from styles/write-good/So.yml rename to styles/from-write-good/So.yml diff --git a/styles/write-good/ThereIs.yml b/styles/from-write-good/ThereIs.yml similarity index 100% rename from styles/write-good/ThereIs.yml rename to styles/from-write-good/ThereIs.yml diff --git a/styles/write-good/TooWordy.yml b/styles/from-write-good/TooWordy.yml similarity index 100% rename from styles/write-good/TooWordy.yml rename to styles/from-write-good/TooWordy.yml diff --git a/styles/write-good/Weasel.yml b/styles/from-write-good/Weasel.yml similarity index 99% rename from styles/write-good/Weasel.yml rename to styles/from-write-good/Weasel.yml index e29391444bc..8218aa19fbd 100644 --- a/styles/write-good/Weasel.yml +++ b/styles/from-write-good/Weasel.yml @@ -124,7 +124,6 @@ tokens: - normally - obediently - occasionally - - only - openly - painfully - particularly diff --git a/styles/write-good/meta.json b/styles/from-write-good/meta.json similarity index 100% rename from styles/write-good/meta.json rename to styles/from-write-good/meta.json diff --git a/styles/n8n-styles/eg.yml b/styles/n8n-styles/eg.yml index 8030b2ab3b2..19d955585b9 100644 --- a/styles/n8n-styles/eg.yml +++ b/styles/n8n-styles/eg.yml @@ -1,8 +1,7 @@ extends: existence message: Consider replacing '%s' with 'for example' level: warning -code: false ignorecase: true tokens: - '\be\.g\b' - - '\be\.g.\b' \ No newline at end of file + - '\be\.g.\b' diff --git a/styles/n8n-styles/etc.yml b/styles/n8n-styles/etc.yml index 8416642490b..106fed41687 100644 --- a/styles/n8n-styles/etc.yml +++ b/styles/n8n-styles/etc.yml @@ -1,7 +1,7 @@ extends: existence -message: Consider replacing '%s' with 'and so on' +message: Don't use '%s'. Instead, be specific. When space is limited, use such as or like followed by an example or two. +link: https://learn.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/a/and-so-on level: warning -code: false ignorecase: true tokens: - - '\betc\.\b' \ No newline at end of file + - '\betc\.\b' diff --git a/styles/n8n-styles/ie.yml b/styles/n8n-styles/ie.yml index 3dbe85a301a..662d4c372e3 100644 --- a/styles/n8n-styles/ie.yml +++ b/styles/n8n-styles/ie.yml @@ -1,8 +1,7 @@ extends: existence message: Consider replacing '%s' with 'in other words' level: warning -code: false ignorecase: true tokens: - '\bi\.e\b' - - '\bi\.e.\b' \ No newline at end of file + - '\bi\.e.\b' diff --git a/styles/n8n-styles/via.yml b/styles/n8n-styles/via.yml index dc2df23a5ef..67b68749a15 100644 --- a/styles/n8n-styles/via.yml +++ b/styles/n8n-styles/via.yml @@ -1,7 +1,6 @@ extends: existence message: Consider replacing '%s' with 'using' level: warning -code: false ignorecase: true tokens: - - '\bvia\b' \ No newline at end of file + - '\bvia\b'