From 166703bccc4ebc849efa79ea7ba85b95046c226c Mon Sep 17 00:00:00 2001 From: Deborah Barnard Date: Mon, 18 Mar 2024 12:29:37 +0000 Subject: [PATCH] add info on rate limits, add info on custom API calls to all nodes with creds support --- .../app-nodes/operation-not-supported.md | 11 ++++ .../builtin/rate-limits/loop-wait.png | Bin 0 -> 11135 bytes .../app-nodes/n8n-nodes-base.actionnetwork.md | 7 +- .../n8n-nodes-base.activecampaign.md | 5 +- .../builtin/app-nodes/n8n-nodes-base.adalo.md | 3 + .../app-nodes/n8n-nodes-base.airtable.md | 2 + .../app-nodes/n8n-nodes-base.apitemplateio.md | 1 + .../builtin/app-nodes/n8n-nodes-base.asana.md | 3 + .../n8n-nodes-base.awscertificatemanager.md | 2 + .../app-nodes/n8n-nodes-base.awscomprehend.md | 1 + .../app-nodes/n8n-nodes-base.awsdynamodb.md | 2 + .../app-nodes/n8n-nodes-base.awselb.md | 2 + .../app-nodes/n8n-nodes-base.awslambda.md | 3 + .../n8n-nodes-base.awsrekognition.md | 2 + .../builtin/app-nodes/n8n-nodes-base.awss3.md | 4 ++ .../app-nodes/n8n-nodes-base.awsses.md | 3 + .../app-nodes/n8n-nodes-base.awssns.md | 3 + .../app-nodes/n8n-nodes-base.awssqs.md | 3 + .../app-nodes/n8n-nodes-base.awstextract.md | 3 + .../app-nodes/n8n-nodes-base.awstranscribe.md | 2 + .../app-nodes/n8n-nodes-base.beeminder.md | 1 + .../builtin/app-nodes/n8n-nodes-base.bitly.md | 4 ++ .../builtin/app-nodes/n8n-nodes-base.box.md | 3 + .../builtin/app-nodes/n8n-nodes-base.brevo.md | 2 + .../app-nodes/n8n-nodes-base.ciscowebex.md | 4 ++ .../app-nodes/n8n-nodes-base.citrixadc.md | 2 + .../app-nodes/n8n-nodes-base.clickup.md | 3 + .../app-nodes/n8n-nodes-base.clockify.md | 2 + .../app-nodes/n8n-nodes-base.cloudflare.md | 2 + .../app-nodes/n8n-nodes-base.cortex.md | 1 + .../app-nodes/n8n-nodes-base.crowddev.md | 5 +- .../app-nodes/n8n-nodes-base.customerio.md | 1 + .../builtin/app-nodes/n8n-nodes-base.deepl.md | 3 + .../app-nodes/n8n-nodes-base.discord.md | 3 + .../app-nodes/n8n-nodes-base.discourse.md | 3 + .../builtin/app-nodes/n8n-nodes-base.drift.md | 3 + .../app-nodes/n8n-nodes-base.dropbox.md | 2 + .../app-nodes/n8n-nodes-base.dropcontact.md | 1 + .../app-nodes/n8n-nodes-base.elasticsearch.md | 4 ++ .../app-nodes/n8n-nodes-base.erpnext.md | 2 + .../app-nodes/n8n-nodes-base.freshworkscrm.md | 4 ++ .../app-nodes/n8n-nodes-base.getresponse.md | 2 + .../builtin/app-nodes/n8n-nodes-base.ghost.md | 2 + .../app-nodes/n8n-nodes-base.github.md | 3 + .../app-nodes/n8n-nodes-base.gitlab.md | 2 + .../builtin/app-nodes/n8n-nodes-base.gmail.md | 1 + .../app-nodes/n8n-nodes-base.googleads.md | 2 + .../n8n-nodes-base.googleanalytics.md | 1 + .../n8n-nodes-base.googlebigquery.md | 2 + .../app-nodes/n8n-nodes-base.googlebooks.md | 1 + .../n8n-nodes-base.googlecalendar.md | 2 + .../n8n-nodes-base.googlecloudfirestore.md | 1 + ...n-nodes-base.googlecloudnaturallanguage.md | 1 + .../n8n-nodes-base.googlecloudstorage.md | 1 + .../n8n-nodes-base.googlecontacts.md | 2 + .../app-nodes/n8n-nodes-base.googledocs.md | 1 + .../app-nodes/n8n-nodes-base.googledrive.md | 2 +- .../n8n-nodes-base.googleperspective.md | 2 + .../app-nodes/n8n-nodes-base.googlesheets.md | 2 + .../app-nodes/n8n-nodes-base.googleslides.md | 1 + .../app-nodes/n8n-nodes-base.googletasks.md | 2 + .../n8n-nodes-base.googletranslate.md | 2 + .../app-nodes/n8n-nodes-base.gotowebinar.md | 2 + .../app-nodes/n8n-nodes-base.grafana.md | 1 + .../app-nodes/n8n-nodes-base.harvest.md | 2 + .../app-nodes/n8n-nodes-base.helpscout.md | 2 + .../app-nodes/n8n-nodes-base.highlevel.md | 1 + .../app-nodes/n8n-nodes-base.hubspot.md | 2 + .../app-nodes/n8n-nodes-base.invoiceninja.md | 2 + .../builtin/app-nodes/n8n-nodes-base.jira.md | 2 + .../builtin/app-nodes/n8n-nodes-base.keap.md | 2 + .../app-nodes/n8n-nodes-base.kobotoolbox.md | 2 + .../app-nodes/n8n-nodes-base.lemlist.md | 1 + .../builtin/app-nodes/n8n-nodes-base.line.md | 2 + .../app-nodes/n8n-nodes-base.linear.md | 1 + .../app-nodes/n8n-nodes-base.linkedin.md | 2 +- .../app-nodes/n8n-nodes-base.lonescale.md | 2 + .../app-nodes/n8n-nodes-base.magento2.md | 1 + .../app-nodes/n8n-nodes-base.mailchimp.md | 2 + .../app-nodes/n8n-nodes-base.mailgun.md | 2 + .../app-nodes/n8n-nodes-base.mailjet.md | 2 + .../app-nodes/n8n-nodes-base.mattermost.md | 2 + .../app-nodes/n8n-nodes-base.mautic.md | 2 + .../app-nodes/n8n-nodes-base.medium.md | 2 +- .../app-nodes/n8n-nodes-base.metabase.md | 3 +- .../n8n-nodes-base.microsoftdynamicscrm.md | 1 + .../n8n-nodes-base.microsoftexcel.md | 2 + .../n8n-nodes-base.microsoftgraphsecurity.md | 1 + .../n8n-nodes-base.microsoftoutlook.md | 1 + .../n8n-nodes-base.microsoftteams.md | 2 + .../app-nodes/n8n-nodes-base.microsofttodo.md | 1 + .../app-nodes/n8n-nodes-base.mindee.md | 2 +- .../builtin/app-nodes/n8n-nodes-base.misp.md | 1 + .../app-nodes/n8n-nodes-base.mondaycom.md | 2 + .../app-nodes/n8n-nodes-base.nextcloud.md | 2 +- .../app-nodes/n8n-nodes-base.nocodb.md | 1 + .../app-nodes/n8n-nodes-base.notion.md | 2 +- .../builtin/app-nodes/n8n-nodes-base.npm.md | 2 + .../app-nodes/n8n-nodes-base.pagerduty.md | 2 +- .../app-nodes/n8n-nodes-base.phantombuster.md | 2 +- .../app-nodes/n8n-nodes-base.philipshue.md | 2 +- .../app-nodes/n8n-nodes-base.pipedrive.md | 2 + .../app-nodes/n8n-nodes-base.pushbullet.md | 1 + .../app-nodes/n8n-nodes-base.pushover.md | 1 + .../app-nodes/n8n-nodes-base.quickbooks.md | 2 + .../app-nodes/n8n-nodes-base.raindrop.md | 1 + .../app-nodes/n8n-nodes-base.reddit.md | 1 + .../app-nodes/n8n-nodes-base.rocketchat.md | 2 +- .../app-nodes/n8n-nodes-base.rundeck.md | 2 + .../app-nodes/n8n-nodes-base.salesforce.md | 2 + .../app-nodes/n8n-nodes-base.segment.md | 2 + .../app-nodes/n8n-nodes-base.sendgrid.md | 2 + .../app-nodes/n8n-nodes-base.sentryio.md | 1 + .../app-nodes/n8n-nodes-base.servicenow.md | 2 + .../app-nodes/n8n-nodes-base.shopify.md | 2 + .../builtin/app-nodes/n8n-nodes-base.slack.md | 1 + .../app-nodes/n8n-nodes-base.spotify.md | 2 + .../app-nodes/n8n-nodes-base.strapi.md | 2 + .../app-nodes/n8n-nodes-base.strava.md | 1 + .../app-nodes/n8n-nodes-base.stripe.md | 2 + .../app-nodes/n8n-nodes-base.supabase.md | 1 + .../app-nodes/n8n-nodes-base.thehive.md | 3 +- .../app-nodes/n8n-nodes-base.todoist.md | 2 + .../app-nodes/n8n-nodes-base.trello.md | 2 + .../builtin/app-nodes/n8n-nodes-base.twake.md | 2 + .../app-nodes/n8n-nodes-base.twilio.md | 2 + .../builtin/app-nodes/n8n-nodes-base.twist.md | 2 + .../builtin/app-nodes/n8n-nodes-base.uproc.md | 2 +- .../app-nodes/n8n-nodes-base.urlscanio.md | 1 + .../n8n-nodes-base.venafitlsprotectcloud.md | 2 + ...n-nodes-base.venafitlsprotectdatacenter.md | 4 +- .../app-nodes/n8n-nodes-base.webflow.md | 2 +- .../builtin/app-nodes/n8n-nodes-base.wekan.md | 2 +- .../app-nodes/n8n-nodes-base.whatsapp.md | 1 + .../app-nodes/n8n-nodes-base.woocommerce.md | 2 +- .../app-nodes/n8n-nodes-base.wordpress.md | 2 +- .../builtin/app-nodes/n8n-nodes-base.xero.md | 1 + .../app-nodes/n8n-nodes-base.youtube.md | 1 + .../app-nodes/n8n-nodes-base.zendesk.md | 2 + .../app-nodes/n8n-nodes-base.zohocrm.md | 2 + .../builtin/app-nodes/n8n-nodes-base.zoom.md | 2 + .../app-nodes/n8n-nodes-langchain.openai.md | 7 +- .../core-nodes/n8n-nodes-base.httprequest.md | 2 +- docs/integrations/builtin/rate-limits.md | 60 ++++++++++++++++++ document-templates/app-nodes.md | 13 +++- mkdocs.yml | 1 + 146 files changed, 347 insertions(+), 27 deletions(-) create mode 100644 _snippets/integrations/builtin/app-nodes/operation-not-supported.md create mode 100644 docs/_images/integrations/builtin/rate-limits/loop-wait.png create mode 100644 docs/integrations/builtin/rate-limits.md diff --git a/_snippets/integrations/builtin/app-nodes/operation-not-supported.md b/_snippets/integrations/builtin/app-nodes/operation-not-supported.md new file mode 100644 index 00000000000..10630190684 --- /dev/null +++ b/_snippets/integrations/builtin/app-nodes/operation-not-supported.md @@ -0,0 +1,11 @@ +## What to do if your operation isn't supported + +If this node doesn't support the operation you want to do, you can use the [HTTP Request node](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/) to call the service's API. + +You can use the credential you created for this service in the HTTP Request node: + +1. In the HTTP Request node, select **Authentication** > **Predefined Credential Type**. +1. Select the service you want to connect to. +1. Select your credential. + +Refer to [Custom API operations](/integrations/custom-operations/) for more information. diff --git a/docs/_images/integrations/builtin/rate-limits/loop-wait.png b/docs/_images/integrations/builtin/rate-limits/loop-wait.png new file mode 100644 index 0000000000000000000000000000000000000000..f1b0ada19c1456f0f3becfa242f98746ccd642db GIT binary patch literal 11135 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 t%sFbI{vYDsW1T{B4)s66ZY329WnNKNELw + +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" 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 280343357c7..59745bfc69d 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectdatacenter.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.venafitlsprotectdatacenter.md @@ -37,4 +37,6 @@ 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 + + +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" 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 fd41d4fc4d2..9e291ca61eb 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.webflow.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.webflow.md @@ -26,4 +26,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get All * Update - +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" 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 feba2594cf9..6f23da0a2f1 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.wekan.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.wekan.md @@ -50,7 +50,7 @@ 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 - +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" ## FAQs diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.whatsapp.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.whatsapp.md index 8385d675a87..400671f60ad 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.whatsapp.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.whatsapp.md @@ -32,3 +32,4 @@ Refer to [WhatsApp Business Platform's Cloud API documentation](https://develope View [example workflows and related content](https://n8n.io/integrations/whatsapp-business-cloud/){:target=_blank .external-link} on n8n's website. +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.woocommerce.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.woocommerce.md index f73b05c239b..54c606f0155 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.woocommerce.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.woocommerce.md @@ -38,5 +38,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all products * Update a product - +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" 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 9f4ddea688d..9e1e530b537 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.wordpress.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.wordpress.md @@ -35,5 +35,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all users * Update a user - +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.xero.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.xero.md index acd4d335352..f8208690ba6 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.xero.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.xero.md @@ -36,3 +36,4 @@ View [example workflows and related content](https://n8n.io/integrations/xero/){ Refer to [Xero's API documentation](https://developer.xero.com/documentation/api/accounting/overview){:target=_blank .external-link} for more information about the service. +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.youtube.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.youtube.md index a5e4554c74e..0855398d51e 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.youtube.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.youtube.md @@ -45,3 +45,4 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Video Category * Retrieve all video categories +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.zendesk.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.zendesk.md index 17e8e6608d2..0e4536e7d57 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.zendesk.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.zendesk.md @@ -46,3 +46,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get all organizations * Get data related to the organization * Update a organization + +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.zohocrm.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.zohocrm.md index 7e6600036b3..a34c3ffc201 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.zohocrm.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.zohocrm.md @@ -90,3 +90,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Get a vendor * Get all vendors * Update a vendor + +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-base.zoom.md b/docs/integrations/builtin/app-nodes/n8n-nodes-base.zoom.md index 130c90e2cc6..3f559e3514f 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-base.zoom.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-base.zoom.md @@ -25,3 +25,5 @@ For usage examples and templates to help you get started, take a look at n8n's [ * Retrieve a meeting * Retrieve all meetings * Update a meeting + +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" diff --git a/docs/integrations/builtin/app-nodes/n8n-nodes-langchain.openai.md b/docs/integrations/builtin/app-nodes/n8n-nodes-langchain.openai.md index 122fba1d126..64a4e56e0f8 100644 --- a/docs/integrations/builtin/app-nodes/n8n-nodes-langchain.openai.md +++ b/docs/integrations/builtin/app-nodes/n8n-nodes-langchain.openai.md @@ -6,7 +6,7 @@ contentType: integration # OpenAI -Use the OpenAI node to automate work in OpenAI, and integrate OpenAI with other applications. n8n has built-in support for a wide range of OpenAI features, including creating images and chats, as well as moderating, and editing texts. +Use the OpenAI node to automate work in OpenAI, and integrate OpenAI with other applications. n8n has built-in support for a wide range of OpenAI features, including creating images and assistants, as well as chatting with models. On this page, you'll find a list of operations the OpenAI node supports and links to more resources. @@ -54,6 +54,11 @@ Refer to [OpenAI's assistants documentation](https://platform.openai.com/docs/as View [example workflows and related content](https://n8n.io/integrations/openai/){:target=_blank .external-link} on n8n's website. +For help dealing with rate limits, refer to [Handling rate limits](/integrations/builtin/rate-limits/). + +--8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md" + + ## Using tools with OpenAI assistants Some operations allow you to connect tools. [Tools](https://docs.n8n.io/advanced-ai/examples/understand-tools/) act like addons that your AI can use to access extra context or resources. 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 640f9df738b..98ec05f2fd2 100644 --- a/docs/integrations/builtin/core-nodes/n8n-nodes-base.httprequest.md +++ b/docs/integrations/builtin/core-nodes/n8n-nodes-base.httprequest.md @@ -68,7 +68,7 @@ You can choose to send additional information with your request. The data you ne Select **Add Option** to view and select these options. -- **Batching**: control how to batch large responses. +- **Batching**: control how to batch large numbers of input items. - **Ignore SSL Issues**: download the response even if SSL validation isn't possible. - **Redirects**: choose whether to follow redirects. Enabled by default. - **Response**: provide settings about the expected API response. diff --git a/docs/integrations/builtin/rate-limits.md b/docs/integrations/builtin/rate-limits.md new file mode 100644 index 00000000000..54913021668 --- /dev/null +++ b/docs/integrations/builtin/rate-limits.md @@ -0,0 +1,60 @@ +--- +title: Handling API rate limits +pageType: howto +description: How to handle API rate limits when using n8n integrations. +--- + +# Handling API rate limits + +API rate limits are restrictions on request frequency. For example, an API may limit the number of requests you can make per minute, or per day. + +APIs can also limits how much data you can send in one request, or how much data the API sends in a single response. + +## Identify rate limit issues + +When an n8n node hits a rate limit, it errors. n8n displays the error message in the node output panel. + +To check the rate limits for the service you're using, refer to the API documentation for the service. + +## Handle rate limits for app nodes + +There are two ways to handle rate limits in n8n's integrations: using the Retry On Fail setting, or using a combination of the [Loop Over Items](/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/) and [Wait](/integrations/builtin/core-nodes/n8n-nodes-base.wait/) nodes: + +* Retry On Fail adds a pause between API request attempts. +* With Loop Over Items and Wait you can break you request data into smaller chunks, as well as pausing between requests. + +### Enable Retry On Fail + +When you enable Retry On Fail, the node automatically tries the request again if it fails the first time. + +1. Open the node. +1. Select **Settings** ![Settings icon](/_images/common-icons/settings.png). +1. Enable the **Retry On Fail** toggle. +1. Configure the retry settings: if using this to work around rate limits, set **Wait Between Tries (ms)** to more than the rate limit. For example, if the API you're using allows one request per second, set **Wait Between Tries (ms)** to `1000` to allow a 1 second wait. + +### Use Loop Over Items and Wait + +Use the Loop Over Items node to batch the input items, and the Wait node to introduce a pause between each request. + +1. Add the Loop Over Items node before the node that calls the API. Refer to [Loop Over Items](/integrations/builtin/core-nodes/n8n-nodes-base.splitinbatches/) for information on how to configure the node. +1. Add the Wait node after the node that calls the API, and connect it back to the Loop Over Items node. Refer to [Wait](/integrations/builtin/core-nodes/n8n-nodes-base.wait/) for information on how to configure the node. + +For example, to handle rate limits when using OpenAI: + +!["Screenshot of a workflow using the Loop Over Items node and Wait node to handle API rate limits for the OpenAI APIs"](/_images/integrations/builtin/rate-limits/loop-wait.png) + +## Handle rate limits in the HTTP Request node + +The HTTP Request node has built-in settings for handling rate limits and large amounts of data. + +### Batch requests + +Use the Batching option to send more than one request, reducing the request size, and introducing a pause between requests. This is the equivalent of using Loop Over Items and Wait. + +1. In the HTTP Request node, select **Add Option** > **Batching**. +1. Set **Items per Batch**: this is the number of input items to include in each request. +1. Set **Batch Interval (ms)** to introduce a delay between requests. For example, if the API you're using allows one request per second, set **Wait Between Tries (ms)** to `1000` to allow a 1 second wait. + +### Paginate results + +APIs paginate their results when they need to send more data than they can handle in a single response. For more information on pagination in the HTTP Request node, refer to [HTTP Request node | Pagination](/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/#pagination). diff --git a/document-templates/app-nodes.md b/document-templates/app-nodes.md index da541bdcad1..7905520d634 100644 --- a/document-templates/app-nodes.md +++ b/document-templates/app-nodes.md @@ -36,9 +36,11 @@ On this page, you'll find a list of operations the _Name_ node supports, and lin /// note | Credentials You can find authentication information for this node [here](/integrations/builtin/credentials/_Name_/). /// + /// note | Examples and templates For usage examples and templates to help you get started, refer to n8n's [_Name_'s integrations](https://n8n.io/integrations/_Name_/){:target=_blank .external-link} page. -/// +/// + ## Operations * _Bullet list_ @@ -50,13 +52,20 @@ For usage examples and templates to help you get started, refer to n8n's [_Name_ n8n provides a trigger node for _Name_. You can find the trigger node docs [here](/integrations/builtin/trigger-nodes/n8n-nodes-base._Name_trigger/). -View [example workflows and related content](https://n8n.io/integrations/_Name_/){:target=_blank .external-link} on n8n's website. +View [example workflows and related content](https://n8n.io/integrations/_slug_/){:target=_blank .external-link} on n8n's website. Refer to [_Name_'s documentation](){:target=_blank .external-link} for more information about the service. + + + + diff --git a/mkdocs.yml b/mkdocs.yml index bac76713b7f..f253729747b 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1063,6 +1063,7 @@ nav: - integrations/builtin/credentials/zscalerzia.md - integrations/builtin/credentials/zulip.md - Custom API actions for existing nodes: integrations/custom-operations.md + - Handle rate limits: integrations/builtin/rate-limits.md - Community nodes: - Installation and management: - integrations/community-nodes/installation/index.md