This is an n8n community node that provides comprehensive Redis integration with enhanced operations for your n8n workflows.
Redis Enhanced extends the basic Redis functionality with 35+ operations including atomic operations, bulk operations, advanced data structures (sets, sorted sets, hashes), TTL management, Lua scripting, and pub/sub capabilities.
n8n is a fair-code licensed workflow automation platform.
Installation
Operations
Credentials
Compatibility
Usage
Development
Testing
Resources
Version History
Follow the installation guide in the n8n community nodes documentation.
- Open your n8n instance
- Go to Settings β Community Nodes
- Enter the package name:
@vicenterusso/n8n-nodes-redis-enhanced
- Click Install
- Restart n8n
npm install @vicenterusso/n8n-nodes-redis-enhanced
Redis Enhanced provides 35 comprehensive operations organized by category:
- Get - Retrieve values from Redis with automatic type detection
- Set - Store values with atomic lock support (NX/XX modes) and TTL
- Delete - Remove keys from Redis
- Exists - Check if one or more keys exist
- Info - Get Redis server information and statistics
- Multi Get (MGET) - Retrieve multiple keys in a single operation
- Multi Set (MSET) - Set multiple key-value pairs atomically
- Scan - Production-safe key iteration with pattern matching
- Keys - Find keys matching patterns (with optional value retrieval)
- Increment (INCR) - Atomic counter operations with optional TTL
- Append - Append values to existing strings
- String Length - Get the length of string values
- Get Set - Atomically set new value and return old value
- Push - Add elements to lists (left/right)
- Pop - Remove elements from lists (left/right)
- Blocking Pop Left (BLPOP) - Blocking pop from list start
- Blocking Pop Right (BRPOP) - Blocking pop from list end
- List Length - Get the number of elements in a list
- Set Add (SADD) - Add members to sets
- Set Remove (SREM) - Remove members from sets
- Set Is Member (SISMEMBER) - Check set membership
- Set Cardinality (SCARD) - Get the number of set members
- Sorted Set Add (ZADD) - Add scored members to sorted sets
- Sorted Set Range (ZRANGE) - Get ranges with optional scores
- Sorted Set Remove (ZREM) - Remove members from sorted sets
- Sorted Set Cardinality (ZCARD) - Get sorted set size
- Hash Length (HLEN) - Get number of hash fields
- Hash Keys (HKEYS) - Get all field names
- Hash Values (HVALS) - Get all hash values
- Hash Exists (HEXISTS) - Check if hash field exists
- TTL - Get time-to-live for keys
- Persist - Remove expiration from keys
- Expire At - Set expiration at specific timestamp
- Eval - Execute Lua scripts with key/argument support
- Publish - Publish messages to Redis channels
- Atomic Operations - NX (set if not exists) and XX (set if exists) modes
- Bulk Processing - Space-separated input parsing for multiple keys/values
- Type Safety - Automatic type detection and conversion
- Error Handling - Comprehensive error handling with continue-on-fail support
- Production Ready - Optimized for high-performance production use
To use Redis Enhanced, you need to set up Redis credentials in n8n:
- A Redis server (local, cloud, or managed service like AWS ElastiCache, Redis Cloud, etc.)
- Network connectivity from n8n to your Redis instance
- In n8n, go to Credentials β Create New
- Search for Redis Enhanced
- Configure the connection:
- Host: Your Redis server hostname or IP
- Port: Redis port (default: 6379)
- Database: Database number (default: 0)
- Password: Redis password (if AUTH is enabled)
- User: Redis username (for Redis 6+ ACL)
- SSL: Enable for TLS connections
- No Authentication - For development/local Redis instances
- Password Authentication - Traditional Redis AUTH
- Username/Password - Redis 6+ ACL with user accounts
- TLS/SSL - Encrypted connections for production deployments
- Minimum n8n version: 1.0.0+
- Redis versions: 3.0+ (tested up to Redis 7.x)
- Node.js: 20.15+
- Tested with: n8n 1.x, Redis 6.x, Redis 7.x
- β n8n Cloud: Fully compatible
- β Self-hosted n8n: All versions 1.0+
- β Docker deployments: Tested and verified
- β Redis Cloud: Compatible with all major providers
- β AWS ElastiCache: Full compatibility
- β Redis Sentinel: Supported
- β Redis Cluster: Basic operations supported
# Workflow: Cache expensive API calls
1. HTTP Request (API call)
2. Redis Enhanced (SET with TTL)
- Operation: Set
- Key: api:cache:{{$json.id}}
- Value: {{$json}}
- TTL: 300 seconds
# Workflow: Rate limiting with atomic counters
1. Redis Enhanced (SET with NX)
- Operation: Set
- Key: rate_limit:{{$json.user_id}}
- Value: 1
- Set Mode: Set If Not Exists (NX)
- TTL: 3600 seconds
2. If key already exists β Rate limit exceeded
# Workflow: Bulk data processing
1. Redis Enhanced (MGET)
- Operation: Multi Get
- Keys: user:1 user:2 user:3 user:4
2. Redis Enhanced (MSET)
- Operation: Multi Set
- Key-Value Pairs: updated:1 true updated:2 true
- Use SCAN instead of KEYS for production key iteration
- Leverage atomic operations (NX/XX) for race condition prevention
- Set appropriate TTL values for cache invalidation
- Use bulk operations (MGET/MSET) for better performance
- Monitor operations with INFO for production insights
- Node.js 20.15+
- npm or yarn
- Redis server for testing
git clone https://github.com/vicenterusso/n8n-nodes-redis-enhanced.git
cd n8n-nodes-redis-enhanced
npm install
npm run build # Build the node
npm run dev # Build in watch mode
npm run lint # Check code quality
npm run lintfix # Auto-fix linting issues
The project includes comprehensive test coverage with 31+ tests covering all operations:
npm test # Run all tests
npm run test:watch # Run tests in watch mode
npm run test:coverage # Run with coverage report
- 31 passing tests across all operations
- 42.97% code coverage with detailed branch coverage
- Infrastructure testing (connection, client setup)
- Operation testing (all 35 operations)
- Error handling (continue-on-fail scenarios)
- Parameter validation (input validation)
- β Connection Tests - Redis client setup and connectivity
- β Basic Operations - GET, SET, DELETE, EXISTS, INFO
- β Bulk Operations - MGET, MSET, SCAN, KEYS
- β Advanced Operations - Atomic operations, TTL, Lua scripts
- β Error Handling - Comprehensive error scenarios
- β Type Safety - Input/output type validation
- n8n community nodes documentation
- Redis Documentation
- Redis Commands Reference
- n8n Workflow Templates
- Project Repository
- Initial Release with 35 Redis operations
- Comprehensive Testing - 31 tests, 42.97% coverage
- Production Ready - Atomic operations, bulk processing, error handling
- Enhanced Features - NX/XX modes, TTL management, Lua scripting
- Full Documentation - Complete API coverage and examples
- β Basic operations (GET, SET, DELETE, EXISTS, INFO)
- β Bulk operations (MGET, MSET, SCAN, KEYS)
- β String operations (INCR, APPEND, STRLEN, GETSET)
- β List operations (PUSH, POP, BLPOP, BRPOP, LLEN)
- β Set operations (SADD, SREM, SISMEMBER, SCARD)
- β Sorted set operations (ZADD, ZRANGE, ZREM, ZCARD)
- β Hash operations (HLEN, HKEYS, HVALS, HEXISTS)
- β TTL operations (TTL, PERSIST, EXPIREAT)
- β Advanced operations (EVAL, PUBLISH)
- β Atomic lock support (NX/XX modes)
- β Comprehensive error handling
- β Production deployment tools
Author: Vicente Russo Neto ([email protected])
License: MIT
Repository: https://github.com/vicenterusso/n8n-nodes-redis-enhanced