mirror of
https://github.com/n8n-io/n8n-docs.git
synced 2025-11-20 17:48:34 +00:00
Merge pull request #2094 from n8n-io/DOC-845-pagination-examples
Doc 845 pagination examples
This commit is contained in:
commit
32ebb82059
@ -11,9 +11,6 @@ Refer to [HTTP Request](/integrations/builtin/core-nodes/n8n-nodes-base.httprequ
|
||||
|
||||
--8<-- "_snippets/integrations/builtin/core-nodes/http/pagination-api-differences.md"
|
||||
|
||||
## An example API
|
||||
|
||||
You can try these examples with any API that supports pagination. If you need a free option, [Punk API](https://punkapi.com/documentation/v2){:target=_blank .external-link} is free with rate limits, and doesn't require authorization.
|
||||
|
||||
## Enable pagination
|
||||
|
||||
@ -35,19 +32,29 @@ If the API you're using allows you to target a particular page by number:
|
||||
|
||||
1. Set **Pagination Mode** to **Update a Parameter in Each Request**.
|
||||
1. Set **Type** to **Query**.
|
||||
1. Enter the **Name** of the query parameter. This depends on your API. For example, Punk API uses a query parameter named `page` to set the page. So **Name** would be `page`.
|
||||
1. Enter the **Name** of the query parameter. This depends on your API and is usually described in its documentation. For example, some APIs use a query parameter named `page` to set the page. So **Name** would be `page`.
|
||||
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). 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.
|
||||
|
||||
## Navigate pagination through body parameters
|
||||
|
||||
If the API you're using allows you to paginate through the body parameters:
|
||||
|
||||
1. Set the HTTP Request Method to **POST**
|
||||
1. Set **Pagination Mode** to **Update a Parameter in Each Request**.
|
||||
1. Select **Body** in the **Type** parameter.
|
||||
1. Enter the **Name** of the body parameter. This depends on the API you're using. `page` is a common key name.
|
||||
1. Hover over **Value** and toggle **Expression** on.
|
||||
1. Enter `{{ $pageCount + 1 }}`
|
||||
|
||||
## Set the page size in the query
|
||||
|
||||
If the API you're using supports choosing the page size in the query:
|
||||
|
||||
1. Select **Add Parameter** in **Query Parameters**. This is in the main node parameters, not in the option settings.
|
||||
1. Enter the **Name** of the query parameter. This depends on your API. For example, Punk API uses a query parameter named `per_page` to set page size. So **Name** would be `per_page`.
|
||||
1. Select **Send Query Parameters** in main node parameters (this is the parameters you see when you first open the node, not the settings within options).
|
||||
1. Enter the **Name** of the query parameter. This depends on your API. For example, a lot of APIs use a query parameter named `limit` to set page size. So **Name** would be `limit`.
|
||||
1. In **Value**, enter your page size.
|
||||
|
||||
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user