https://github.com/meetbryce/n8n-nodes-smartfetch
HTTP GET requests with built-in caching using postgres (or in-memory)
https://github.com/meetbryce/n8n-nodes-smartfetch
Last synced: 5 months ago
JSON representation
HTTP GET requests with built-in caching using postgres (or in-memory)
- Host: GitHub
- URL: https://github.com/meetbryce/n8n-nodes-smartfetch
- Owner: meetbryce
- License: gpl-3.0
- Created: 2026-01-08T00:24:07.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-01-09T23:42:34.000Z (5 months ago)
- Last Synced: 2026-01-10T21:39:37.474Z (5 months ago)
- Language: TypeScript
- Homepage: https://www.npmjs.com/package/n8n-nodes-smartfetch
- Size: 199 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# n8n-nodes-smartfetch
An n8n community node that provides HTTP GET requests with built-in caching. Think of it as a superset of the native HTTP Request node, but with simple cache controls that don't overwhelm non-technical users.
[n8n](https://n8n.io/) is a [fair-code licensed](https://docs.n8n.io/sustainable-use-license/) workflow automation platform.
## Installation
Follow the [installation guide](https://docs.n8n.io/integrations/community-nodes/installation/) in the n8n community nodes documentation.
## Features
- **HTTP GET with caching** - Automatically cache responses to reduce API calls
- **Flexible cache storage** - Memory (fast, ephemeral) or PostgreSQL (persistent)
- **Simple TTL controls** - Preset durations (5min, 1hr, 1day, 1week, 1month) or custom
- **Multiple auth methods** - Basic, Bearer, Digest, Header, and Query authentication
- **Secure cache keys** - Credentials are hashed (SHA-256) so different auth = different cache
## Cache Storage Options
### Memory
- Fast, in-process caching
- Cleared when n8n restarts
- Good for development or short-lived caches
### PostgreSQL
- Persistent caching across restarts
- Auto-creates cache table with schema:
- `key` (VARCHAR) - hashed cache key
- `request_url` (TEXT) - original URL for debugging
- `response` (JSONB) - cached response data
- `cached_at` (TIMESTAMPTZ) - when cached
- `ttl` (INT) - time-to-live in seconds
- Configurable table name (multiple caches per database)
- SSL enabled by default
## Authentication
| Method | Description |
|--------|-------------|
| None | No authentication |
| Basic Auth | Username/password via Authorization header |
| Bearer Auth | Token via Authorization: Bearer header |
| Digest Auth | Challenge-response authentication |
| Header Auth | Custom header name/value |
| Query Auth | API key as query parameter |
## Compatibility
Tested with n8n version 2.2.4.
## Usage
1. Add the Smartfetch node to your workflow
2. Enter the URL to fetch
3. Select authentication method (if needed)
4. Choose cache storage (Memory or PostgreSQL)
5. Set cache duration
6. Execute!
Subsequent executions with the same URL and credentials will return cached responses until TTL expires.
## Resources
- [n8n community nodes documentation](https://docs.n8n.io/integrations/#community-nodes)