Setu Recipes: reusable digital workers across every app.Browse templates

Integrations / Redis Cloud

Redis Cloud

Redis Cloud management: list subscriptions and databases, inspect a database's status, memory, endpoints and slow log, read the audit log, follow tasks and start a backup, through the Redis Cloud REST API. It manages your Redis deployments; it does not read or write keys (for that, use the Upstash toolkit, which runs Redis commands over HTTP).

9 actions API key 8 read1 write Calls api.redislabs.com

Connect

TypeScript
const conn = await setu.connections.initiate({ userId: "user_1", toolkit: "redis" });
console.log(conn.connectUrl); // show this to your user
await conn.waitUntilActive();

Permissions requested

This toolkit uses a single credential and requests no scopes.

Actions

Back up databasewriteredis.backup_databaseStart an on-demand backup of a Redis Cloud Pro database to its configured backup location (or an optional path you give). Returns a task ID: check it with get_task. Active-Active databases need a region_name, one region per call.
InputTypeDescription
subscription_idintegerRequiredSubscription ID, from list_subscriptions
database_idintegerRequiredDatabase ID, from list_databases
region_namestringOptionalRegion to back up (required for Active-Active databases)
adhoc_backup_pathstringOptionalOptional storage path such as s3://my-bucket/backups instead of the database's configured location
TypeScript
await setu.execute({
  userId: "user_1",
  action: "redis.backup_database",
  input: {
    "subscription_id": 1,
    "database_id": 1
  },
});
Get current accountreadredis.get_accountGet the Redis Cloud account the API key belongs to (account ID, name, status) and details of the API key itself. A quick check that the credentials work.

No input.

TypeScript
await setu.execute({
  userId: "user_1",
  action: "redis.get_account",
  input: {},
});
Get databasereadredis.get_databaseGet one Redis Cloud Pro database: status, Redis version, dataset size, memory used, persistence, eviction policy, throughput, endpoints and modules. The password and other security settings are not returned.
InputTypeDescription
subscription_idintegerRequiredSubscription ID, from list_subscriptions
database_idintegerRequiredDatabase ID, from list_databases
TypeScript
await setu.execute({
  userId: "user_1",
  action: "redis.get_database",
  input: {
    "subscription_id": 1,
    "database_id": 1
  },
});
Get database slow logreadredis.get_database_slow_logGet the slow log of a Redis Cloud Pro database: recent commands that exceeded the slow-log threshold, with start time, duration and arguments.
InputTypeDescription
subscription_idintegerRequiredSubscription ID, from list_subscriptions
database_idintegerRequiredDatabase ID, from list_databases
region_namestringOptionalRegion name, required for Active-Active databases
TypeScript
await setu.execute({
  userId: "user_1",
  action: "redis.get_database_slow_log",
  input: {
    "subscription_id": 1,
    "database_id": 1
  },
});
Get subscriptionreadredis.get_subscriptionGet one Redis Cloud Pro subscription: name, status, memory storage type, number of databases and whether the public endpoint is enabled.
InputTypeDescription
subscription_idintegerRequiredSubscription ID, from list_subscriptions
TypeScript
await setu.execute({
  userId: "user_1",
  action: "redis.get_subscription",
  input: {
    "subscription_id": 1
  },
});
Get taskreadredis.get_taskGet the status of an asynchronous Redis Cloud task (such as a backup) by its task ID: initialized, received, processing-in-progress, processing-completed or processing-error.
InputTypeDescription
task_idstringRequiredTask ID (UUID), returned by the action that started it
TypeScript
await setu.execute({
  userId: "user_1",
  action: "redis.get_task",
  input: {
    "task_id": "<task_id>"
  },
});
List databasesreadredis.list_databasesList the databases in a Redis Cloud Pro subscription as parallel lists (same order): IDs, names, statuses, Redis versions, memory used (MB) and public endpoints. Passwords are not returned.
InputTypeDescription
subscription_idintegerRequiredSubscription ID, from list_subscriptions
offsetintegerOptionalNumber of databases to skip
limitintegerOptionalMaximum databases to return
TypeScript
await setu.execute({
  userId: "user_1",
  action: "redis.list_databases",
  input: {
    "subscription_id": 1
  },
});
List subscriptionsreadredis.list_subscriptionsList the Redis Cloud Pro subscriptions in the account with ID, name, status, deployment type, memory storage and number of databases.

No input.

TypeScript
await setu.execute({
  userId: "user_1",
  action: "redis.list_subscriptions",
  input: {},
});
List system logsreadredis.list_system_logsList the account's system (audit) log entries: who changed what and when. Filter by time range or resource ID.
InputTypeDescription
limitintegerOptionalMaximum entries (1-1000)
offsetintegerOptionalEntries to skip
start_timestringOptionalOnly entries after this time (ISO 8601)
end_timestringOptionalOnly entries before this time (ISO 8601)
resource_idintegerOptionalOnly entries about this resource ID
TypeScript
await setu.execute({
  userId: "user_1",
  action: "redis.list_system_logs",
  input: {},
});