@bauer-group/n8n-nodes-http-throttled-request
v0.3.6
Published
n8n community node with built-in HTTP request throttling (rate limiting)
Maintainers
Readme
@bauer-group/n8n-nodes-http-throttled-request
An n8n community node that adds intelligent rate-limit throttling to HTTP requests. It automatically detects rate-limit responses (HTTP 429, 503, 504) and waits the appropriate time before retrying, using information from response headers.
Features
- Full V3 Feature Set — Inherits all parameters from the built-in HTTP Request node (50+ auth types, pagination, response format, proxy, SSL, etc.)
- Automatic Rate Limit Detection — Detects HTTP 429, 503, and 504 status codes
- Smart Wait Time Calculation — Parses
Retry-After,X-RateLimit-*, and HubSpot-specific headers - Jitter Support — Prevents thundering herd with configurable random variance
Installation
n8n Community Nodes (Recommended)
- Open your self-hosted n8n instance
- Go to Settings → Community Nodes
- Enter
@bauer-group/n8n-nodes-http-throttled-request - Click Install
The node appears immediately in the node panel — no restart required.
Community Nodes are only available on self-hosted n8n instances.
Docker
Create a custom Dockerfile that pre-installs the package:
FROM n8nio/n8n:latest
USER root
RUN npm install -g @bauer-group/n8n-nodes-http-throttled-request
USER nodeThen build and run:
docker build -t n8n-throttled .
docker run -it --rm -p 5678:5678 n8n-throttledOr with docker-compose — replace image with build:
services:
n8n:
build: .
ports:
- "5678:5678"Quick Start
- Add the HTTP Request (Throttled) node to your workflow
- Configure it exactly like the built-in HTTP Request node
- Throttling is enabled by default — no extra setup needed
- When the API returns 429, the node automatically waits and retries
Default Throttling Settings
| Setting | Default | Description | | ------------------------ | ------- | --------------------------------------- | | HTTP Codes | 429 | Status codes that trigger throttling | | Default Wait Time | 5000 ms | Fallback wait when no header is present | | Random Jitter | ±25% | Variance to prevent thundering herd | | Max Throttle Retries | 5 | Max attempts before failing |
Documentation
| Document | Description | | --- | --- | | Configuration | Full parameter reference, throttling settings, safety limits | | How It Works | Throttling behavior, header priority, architecture, execution flow | | Migration Guide | Replace existing HTTP Request nodes (manual, JSON, API script) | | Troubleshooting | Common issues and solutions |
Development
npm install
npm run build
npm testProject Structure
├── src/
│ └── nodes/
│ └── HttpRequest/
│ ├── HttpRequestThrottled.node.ts # Main node (V3 composition + fallback)
│ ├── v3-loader.ts # Dynamic V3 node loader
│ ├── throttle-wrapper.ts # Helper interception for throttling
│ ├── throttling.ts # Wait time calculation logic
│ ├── throttling-props.ts # Throttling UI properties
│ └── translations/de/ # German translation
├── docs/ # Documentation
├── test/
│ └── throttling.test.ts # Unit tests
├── package.json
└── tsconfig.jsonLicense
MIT
Contributing
- Fork the repository
- Create a feature branch
- Run tests:
npm test - Submit a pull request
