feat(HTTP Request Node): Interval Between Requests option for pagination (#8224)

## Summary
Option to add delay between request when using pagination

![image](https://github.com/n8n-io/n8n/assets/88898367/df93f9c7-2569-4d22-a719-494d9dfe8030)

## Related tickets and issues

https://linear.app/n8n/issue/NODE-1029/http-request-pagination-feature-doesnt-use-batch-settings
https://github.com/n8n-io/n8n/issues/8062
This commit is contained in:
Michael Kret
2024-01-04 17:11:16 +02:00
committed by GitHub
parent b50d8058cf
commit 270328ccf6
3 changed files with 24 additions and 0 deletions

View File

@@ -1143,6 +1143,23 @@ export class HttpRequestV3 implements INodeType {
default: 100,
description: 'Maximum amount of request to be make',
},
{
// eslint-disable-next-line n8n-nodes-base/node-param-display-name-miscased
displayName: 'Interval Between Requests (ms)',
name: 'requestInterval',
type: 'number',
displayOptions: {
hide: {
paginationMode: ['off'],
},
},
default: 0,
description: 'Time in milliseconds to wait between requests',
hint: 'At 0 no delay will be added',
typeOptions: {
minValue: 0,
},
},
],
},
],
@@ -1272,6 +1289,7 @@ export class HttpRequestV3 implements INodeType {
completeExpression: string;
limitPagesFetched: boolean;
maxRequests: number;
requestInterval: number;
};
for (let itemIndex = 0; itemIndex < items.length; itemIndex++) {
@@ -1653,6 +1671,7 @@ export class HttpRequestV3 implements INodeType {
const paginationData: PaginationOptions = {
continue: continueExpression,
request: {},
requestInterval: pagination.requestInterval,
};
if (pagination.paginationMode === 'updateAParameterInEachRequest') {