# API Reference
Welcome to the Redis Toolkit API Reference. Here you'll find detailed documentation for all public classes, methods, and functions.
# 📚 API Documentation Organization
🔧 Core API
All methods of the RedisToolkit main class
- Initialization & Configuration
- Basic Operations
- Batch Operations
- Pub/Sub
🎨 Converters API
Media processing converters
- Image Converters
- Audio Converters
- Video Converters
- Common Interfaces
⚙️ Configuration API
Configuration classes and options
- RedisConnectionConfig
- RedisOptions
- Default Configuration
- Validation Methods
🛠️ Utility Functions
Utility and helper functions
- Serialization Functions
- Retry Decorators
- Validation Tools
- Exception Classes
# 🎯 Quick Navigation
# Most Used APIs
# Core Classes
from redis_toolkit import RedisToolkit
# Configuration Classes
from redis_toolkit import RedisConnectionConfig, RedisOptions
# Converter Functions
from redis_toolkit.converters import (
encode_image, decode_image,
encode_audio, decode_audio,
get_converter
)
# Utility Functions
from redis_toolkit.utils import serialize_value, deserialize_value
from redis_toolkit.utils import with_retry
# Exception Classes
from redis_toolkit.exceptions import (
RedisToolkitError,
SerializationError,
ValidationError
)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# Quick Start Examples
from redis_toolkit import RedisToolkit
# Create Instance
toolkit = RedisToolkit()
# Basic Operations
toolkit.set('key', {'data': 'value'})
value = toolkit.get('key')
# Batch Operations
toolkit.batch_set({
'key1': 'value1',
'key2': {'nested': 'data'}
})
# Pub/Sub
def handler(channel, message):
print(f"Received: {message}")
subscriber = toolkit.subscribe('channel', handler=handler)
toolkit.publish('channel', 'Hello, Redis!')
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 📖 Usage Patterns
# Context Manager Pattern
from redis_toolkit import RedisToolkit
# Automatic resource cleanup
with RedisToolkit() as toolkit:
toolkit.set('temp', 'data')
value = toolkit.get('temp')
1
2
3
4
5
6
2
3
4
5
6
# Custom Configuration
from redis_toolkit import RedisToolkit, RedisConnectionConfig, RedisOptions
# Connection configuration
config = RedisConnectionConfig(
host='redis.example.com',
port=6379,
password='secure_password'
)
# Behavior options
options = RedisOptions(
log_level='INFO',
use_connection_pool=True
)
# Create with custom config
toolkit = RedisToolkit(config=config, options=options)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Error Handling
from redis_toolkit.exceptions import SerializationError, ValidationError
try:
toolkit.set('key', complex_object)
except SerializationError as e:
print(f"Serialization failed: {e}")
except ValidationError as e:
print(f"Validation failed: {e}")
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
# 📦 Optional Dependencies
Different features require different optional dependencies:
# Image processing
pip install redis-toolkit[image]
# Audio processing
pip install redis-toolkit[audio]
# Full media support
pip install redis-toolkit[media]
# All features
pip install redis-toolkit[all]
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
# 🔍 Finding What You Need
- Basic Redis Operations → Core API
- Media Processing → Converters API
- Configuration → Configuration API
- Error Handling → Utility Functions