Skip to content

Developer Guide

Build with redisctl and contribute to the project.

Using the API Libraries

The Redis API client libraries are available for both Rust and Python:

Rust Crates

Crate Description docs.rs
redis-cloud Redis Cloud API client docs
redis-enterprise Redis Enterprise API client docs
redisctl-config Profile and credential management docs

Python Packages

Package Description PyPI
redis-cloud Redis Cloud API client pypi
redis-enterprise Redis Enterprise API client pypi

Example: Using redis-cloud (Rust)

use redis_cloud::CloudClient;

#[tokio::main]
async fn main() -> anyhow::Result<()> {
    let client = CloudClient::builder()
        .api_key("your-api-key")
        .api_secret("your-secret-key")
        .build()?;

    let subscriptions = client.subscription().list().await?;
    for sub in subscriptions {
        println!("{}: {}", sub.id, sub.name);
    }

    Ok(())
}

Rust Libraries Guide

Example: Using Python

from redis_cloud import CloudClient

client = CloudClient.from_env()

subscriptions = client.subscriptions_sync()
for sub in subscriptions:
    print(f"{sub['id']}: {sub['name']}")

Python Bindings Guide

Architecture

Understand how redisctl is structured:

  • Four-layer design (Profiles, Raw API, Human Commands, Workflows)
  • Workspace organization
  • Error handling patterns
  • Output formatting

Architecture

Contributing

We welcome contributions:

  • Bug reports and feature requests
  • Documentation improvements
  • Code contributions

Contributing Guide