# mulesoft Redis Connector - Full Documentation --- product: Redis Connector version: 5.4 --- # Redis Connector 5.4 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Remote Dictionary Server (Redis Connector) is an open source, in-memory data structure store used to cache user profiles, create leader boards, track real-time activities on a website, and filter spam. You can use Redis Connector as a message queue, custom object store, and more. ## Before You Begin To use this connector, you must be familiar with: - The Redis API - Anypoint Connectors - Mule runtime engine (Mule) - Elements in a Mule flow - Global elements - How to create a Mule app using Anypoint Studio Before creating an app, you must have access to the Redis target resource. ## Connection Types > [!NOTE] Redis Connector supports only password-based authentication. Redis Connector does not > currently support Role-Based Access Control (RBAC). Redis Connector uses the following connection types: - Clustered - NonClustered - Sentinel ## Next Step After you complete the prerequisites and experiment with examples, you are ready to create an app and configure the connector using [Anypoint Studio](https://docs.mulesoft.com/redis-connector/5.4/redis-connector-studio). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Use Exchange to Discover Connectors, Templates, and Examples](https://docs.mulesoft.com/connectors/introduction/intro-use-exchange) - [Redis in Anypoint Exchange](https://www.mulesoft.com/exchange/com.mulesoft.connectors/mule-redis-connector/) - [Redis in EU Anypoint Exchange](https://eu1.anypoint.mulesoft.com/exchange/com.mulesoft.connectors/mule-redis-connector/) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.4 --- # Redis Connector 5.4 Additional Configuration Information > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Redis Connector contributes an object store implementation. Although Redis offers flexible eviction and persistence, you must understand how the Mule Redis-backed object store is designed to work when Redis is shared across multiple applications or systems. Learn key design constraints, eviction behavior, and best practices for using Redis as an object store in Mule applications, with a focus on avoiding deserialization and eviction-related failures. ## Redis as a Mule Object Store When Redis is configured as an object store in Mule: - Mule serializes payloads before storing them in Redis. - Object Store operations (retrieve, remove, expire) require successful deserialization of stored values. As a result, the Redis object store is designed to manage only entries that it created and can deserialize. ## Common Deployment Patterns In some architectures, Redis is deployed as a shared service and accessed by: - Multiple Mule applications - External (non-Mule) applications - Operational or administrative scripts that insert or delete keys This pattern is valid for Redis itself but introduces important considerations when Redis is used specifically as a Mule object store. ## Examples of Object Store Behavior Here are some scenarios of how the Redis object store behaves when Redis is shared across multiple applications or systems. ### In-Memory Object Store per Application ![App A and App B, each connecting to its own cloud service and dedicated database to store unique access and refresh tokens](/mulesoft/current/en-us/redis-connector/5.4/_images/redis-scenario-1.png) Setup - Application A and Application B each use an in-memory object store. Outcome - Each application maintains its own isolated store. - No key collisions or deserialization issues occur. - Expiration and invalidation are fully controlled per application. This is the safest and most isolated configuration. ### Shared External Object Store (Not Redis) ![App A and App B sharing a single database that stores multiple sets of access and refresh tokens](/mulesoft/current/en-us/redis-connector/5.4/_images/redis-scenario-2.png) Setup - Application A and Application B use a common external object store. - Identical object IDs (for example, access\_token) are used. Outcome - Redis object store implementation prevents overwriting entries created by another application. - This behavior is intentional to prevent data corruption. Cross-application data ownership is restricted by design. ### Redis as a Shared External Object Store ![App A and App B both connecting to a centralized Redis database while also maintaining individual connections to Salesforce and ServiceNow](/mulesoft/current/en-us/redis-connector/5.4/_images/redis-scenario-3.png) Setup - Redis is configured as a shared external object store. - Mule Application A, Application B, and external systems write to the same Redis instance. - Stored data includes: - Java-serialized objects (via Mule object store) - Plain text or JSON (via direct Redis operations) Outcome - During eviction or expiration, the Mule object store might encounter entries it can’t deserialize. - This can result in errors such as: ```text org.mule.runtime.api.store.ObjectStoreException: Could not deserialize object Caused by: java.lang.ClassNotFoundException ``` Eviction or cleanup fails when Redis contains entries not owned by the current application or classloader. ## Expectation vs. Actual Behavior
ExpectationActual Behavior

Redis object store can be freely shared across applications.

Each application can only deserialize objects created within its own classloader.

Expiration task cleans all excess entries.

Expiration fails when encountering unknown or incompatible entries.

Non-Mule data can coexist in Redis.

Non-serialized data can cause object store failures.

Cache Scope can be invalidated across applications.

Cache invalidation is application-bound.

## Why This Behavior Is by Design The Redis object store follows strict safety and isolation principles:
Design PrincipleExplanation

Data Ownership

Manages only data that the object store owns

Data Integrity

Prevents accidental deletion of external or foreign data

Classloader Isolation

Deserializes objects only from its own Mule application

Fail-Safe Operation

Fails safely instead of performing destructive deletes

This ensures predictable behavior and avoids unintended side effects in shared environments. ## Redis Eviction and Mule Object Store Redis eviction policies operate at the Redis level, not at the Mule object store level. Mule object store expiration deserializes values even during expiration. As a result, Mule object store expiration can fail if incompatible entries exist. ## Recommended Best Practices - Separate Object Store and Generic Redis Usage - Use object store APIs only for Mule-managed, serialized data stored in Redis object store. - Use Redis Connector operations for plain text, JSON, or external data. - Namespace Keys Explicitly - For shared Redis object store, ensure object store keys don’t overlap with externally managed Redis keys. --- product: Redis Connector version: 5.4 --- # Redis Connector 5.4 Examples > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The following examples show how to use Redis Connector to set a key value on the Redis server and how to use Redis Connector as a custom object store in a Mule app. ## Set a Key Value on the Redis Server The following screenshot shows the flow for this example: ![Studio flow with Listener, Set, and Set Payload](/mulesoft/current/en-us/redis-connector/5.4/_images/redis-set-raw-flow.png) To use Anypoint Studio to set a key value on the Redis server: 1. Create a new Mule project by clicking **File** > **New** > **Mule Project**. 2. Enter a name for the new project and click **Finish**. 3. In the **Mule Palette** view, select **HTTP** > **Listener** and drag it to the Studio canvas. HTTP Listener is the entry point for the flow and provides the key and its value. 4. Click the plus sign (+) next to the **Connector Configuration** field. 5. Leave the default configuration and click **OK**. 6. Set the **Path** field to `/`. 7. In the **Mule Palette** view, search for `redis` and drag the **Set** operation to the right of **Listener**. The **Set** operation sends data to the Redis server. 8. Set the properties for the **Set** operation as follows: - Set the **Display Name** field to `Set value for key into Redis`. - Set the **Key** field to `#[payload.key]`. - Set the **Value** field to `#[payload.value]`: ![Set operation properties window on General tab](/mulesoft/current/en-us/redis-connector/5.4/_images/redis-set-config.png) 9. In the **Mule Palette** view, search for `payload` and drag the **Set Payload** component to the right of **Set value for key into Redis** on the Studio canvas. The **Set Payload** component creates the response for the incoming HTTP request. 10. Set the **Set Payload** properties as follows: - Set the **Display Name** field to `Set value response`. - Set the **Value** field to `Successfully set value: #[payload.value] to key: #[payload.key]`: ![Set Payload properties window on General tab](/mulesoft/current/en-us/redis-connector/5.4/_images/redis-set-response-config.png) 11. Save your changes and deploy the app by right-clicking the Studio canvas and selecting **Run project **. 12. When the app is running, use an HTTP client app to send a POST request to `localhost:8081/` with content-type `application/x-www-form-urlencoded` and a body in `url-encoded` format. The request body should contain a key and value: `curl -X POST -d "key=test-key" -d "value=test-value" localhost:8081/` The XML for this example should look like this: ```text ​ ``` ## Use Redis Connector as a Custom Object Store In Studio to configure Redis Connector as a custom object store in a Mule app: 1. Add the Redis namespace to the `` element: ```none xmlns:redis="http://www.mulesoft.org/schema/mule/redis" ``` 2. Add the location of the Redis schema referred to by the Redis namespace: ```text http://www.mulesoft.org/schema/mule/redis http://www.mulesoft.org/schema/mule/redis/current/mule-redis.xsd ``` 3. Add the HTTP namespace to the `` element: ```none xmlns:http="http://www.mulesoft.org/schema/mule/http" ``` 4. Add the location of the HTTP schema referred to by the HTTP namespace: ```text http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd ``` 5. Add the object store namespace to the `` element: ```none xmlns:os="http://www.mulesoft.org/schema/mule/os" ``` 6. Add the location of the object store schema referred to by the object store’s namespace: ```text http://www.mulesoft.org/schema/mule/os http://www.mulesoft.org/schema/mule/os/current/mule-os.xsd ``` 7. Using the Studio XML editor, add an `` element to your project and configure it to contain a Redis connection type (`clustered-connection` or `nonclustered-connection`). ```xml ``` 8. Add an `` element to your project and configure it to reference the configuration created previously: ```xml ``` 9. Add an `` element to your project and configure its attributes: ```xml ``` 10. Add an empty `` element to your project: ```xml < name="set-flow"> ``` 11. Within the `` element, add an `` element: ```xml ``` 12. Within the `` element, add an `` element after the `` element and configure `` to use the object store created previously: ```xml ``` When you’re done, the XML file should look like this: ```xml ​ ​ ​ ​ ​ ``` ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.4 --- # Redis Connector 5.4 Reference > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. > [!NOTE] You can set configurations in Expression mode, except when Redis Connector is used in > conjunction with Object Store Connector, which does not support Expression mode. Starting with Redis Connector 5.4.5, Mule apps that use an Object Store **Entry TTL** exceeding 24 days now observe that the TTL for new keys is set to the correct values. ## Redis Configuration
NameTypeDescriptionDefault ValueRequired

Name

String

The name for this configuration. Connectors reference the configuration with this name.

x

Connection

The connection types to provide to this configuration.

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the instance expires at the exact moment that it becomes eligible. Mule purges the instances as appropriate.

## Connection Types > [!NOTE] Redis Connector supports only password-based authentication. Redis Connector does not > currently support Role-Based Access Control (RBAC). ### Clustered > [!NOTE] Redis Connector does not support clustered connections on Redis Enterprise Active-Active > databases. To connect to one of the Redis Enterprise active-active clusters, non-clustered > connection should be used in the connector. However, the connection is only made to the specified > node. > > Redis Connector does not support clustered sharded connections. #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance Connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Password

String

Redis password. Set if the server requires authentication.

Entry TTL

Number

The default time to live to set on keys stored for the connector.

Cluster Hosts

String

Redis cluster hosts separated by commas and having the format host:port. Use this field when you want to access your Redis cluster through the connector.

x

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

### NonClustered #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance Connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Password

String

Redis password. Set this if the server requires authentication.

Entry TTL

Number

The default time to live to be set on keys stored for the connector.

Host

String

Redis host. Use this field when you want to access you Redis server that is not part of a cluster through connector.

localhost

Port

Number

Redis port. The port on which your non cluster server is running.

6379

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

### Sentinel Sentinel provides a high-availability solution in case of failure on your Redis cluster. #### Parameters
NameTypeDescriptionDefault ValueRequired

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Password

String

Redis password. Set this if the server requires authentication.

Entry TTL

Number

The default time to live to be set on keys stored for the connector.

Sentinels Hosts

String

Set of sentinel addresses that are monitoring the master host to which the connector will connect.

x

Master Name

String

Redis master name. The name of the master for which the sentinels will return the current address.

Sentinel Password

String

Sentinel password. Set this if the sentinel servers require authentication.

Index

Number

The index of the database that the pool will use.

Sentinel Connection Timeout

Number

Sentinel connection timeout value.

2000

Sentinel Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for sentinel connection timeout.

MILLISECONDS

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

## Sources Supported source: - [Subscribe](#subscribe) ### Subscribe `` #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Channels

Array of String

A list of channel names or globbing patterns.

x

Output Mime Type

String

The MIME type of the payload that this source outputs.

Primary Node Only

Boolean

Whether this source should be executed on the primary node only when running in a cluster.

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Redelivery Policy

Defines a policy for processing the redelivery of the same message.

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

Attributes Type

### For Configurations - [Redis Configuration](#redis) ## Operations Supported operations: - [Add To Set](#addToSet) - [Add To Sorted Set](#addToSortedSet) - [Decrement](#decrement) - [Del](#del) - [Exists](#exists) - [Expire](#expire) - [Expire At](#expireAt) - [Get](#get) - [Get All From Hash](#getAllFromHash) - [Get From Hash](#getFromHash) - [Get Range By Index](#getRangeByIndex) - [Get Range By Score](#getRangeByScore) - [Get TTL](#getTtl) - [Increment](#increment) - [Increment Hash](#incrementHash) - [Increment Sorted Set](#incrementSortedSet) - [Persist](#persist) - [Pop From List](#popFromList) - [Pop From Set](#popFromSet) - [Publish](#publish) - [Push To List](#pushToList) - [Random Member From Set](#randomMemberFromSet) - [Range From List](#rangeFromList) - [Set](#set) - [Set In Hash](#setInHash) - [Trim From List](#trimFromList) ### Add To Set `` Add the message payload to the set stored at the specified key. If the key does not exist, a new key holding a set is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SADD

x

Value

String

The value to set.

#[payload]

Must Succeed

Boolean

If true, ensures that adding to the set is successful (that is, no pre-existing identical value is in the set)

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Add To Sorted Set `` Add the message payload with the desired score to the sorted set stored at the specified key. If the key does not exist, a new key holding a sorted set is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZADD

x

Value

String

The value to set.

#[payload]

Score

Number

Score to use for the value

x

Must Succeed

Boolean

If true, ensures that adding to the set is successful (that is, no pre-existing identical value is in the set)

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS: - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Decrement `` Decrements the number stored at key by step. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains data that cannot be represented as integer. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for DECR.

x

Step

Number

Step used for the increment.

1

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Del `` Remove the specified key, if it exists. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for DEL

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Exists `` Test if the specified key exists. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for EXISTS

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Expire `` Set a timeout on the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Seconds

Number

The time to live in seconds.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Expire At `` Set a timeout in the form of a UNIX timestamp (number of seconds elapsed since 1 Jan 1970) on the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Unix Time

Number

The UNIX timestamp in seconds.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get `` Get the value of the specified key. If the key does not exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for GET

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get All From Hash `` Get all fields and values of the hash stored at the specified key. If the field or the hash don’t exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGETALL

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Object

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get From Hash `` Get the value stored at the specified field in the hash at the specified key. If the field or the hash don’t exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGET

x

Field

String

Field to use for HGET

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get Range By Index `` Retrieve a range of values from the sorted set stored at the specified key. The range of values is defined by indices in the sorted set and sorted as desired. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZRANGE/ZREVRANGE

x

Start

Number

Range start index

x

End

Number

Range end index

x

Ascending Order

Boolean

Index order for sorting the range. If the parameter is set to true, the range is sorted in ascending order. If the parameter is set to false, the range is sorted in descending order.

true

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get Range By Score `` Retrieve a range of values from the sorted set stored at the specified key. The range of values is defined by scores in the sorted set and sorted as desired. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZRANGEBYSCORE and ZREVRANGEBYSCORE

x

Min

Number

Range start score

x

Max

Number

Range end score

x

Ascending Order

Boolean

Score order for sorting the range. If the parameter is set to true, the range is sorted in ascending order. If the parameter is set to false, the range is sorted in descending order.

true

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get TTL `` Get the remaining time to live of a volatile key, in seconds. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment `` Increments the number stored at key by step. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains data that can not be represented as integer. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for INCR.

x

Step

Number

Step used for the increment.

1

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment Hash `` Increments the number stored at field in the hash stored at key by increment. If the key does not exist, a new key holding a hash is created. If field does not exist, the value is set to `0` before the operation is performed. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGET

x

Field

String

Field to use for HGET

x

Step

Number

Step used for the increment.

1

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment Sorted Set `` Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was `0.0`). If the key does not exist, a new sorted set with the specified member as its sole member is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Value

String

The value to set.

#[payload]

Step

Number

The step to use to increment the score.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Persist `` Undo an expire or expireAt, turning the volatile key into a normal key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Pop From List `` Pop a value from the desired side of the list stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for LPOP/RPOP

x

Pop Left

boolean

The side from which to pop the value. If the parameter is true, the value is popped from the left side. If the parameter is false, the value is popped from the right side.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Pop From Set `` Pops a random value from the set stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SPOP

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Publish `` Publish the message payload to the specified channel. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Channel

String

Destination of the published message

x

Message

String

The message to publish.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Push To List `` Push the message payload to the desired side (LEFT or RIGHT) of the list stored at the specified key. If the key does not exist, a new key holding a list is created as long as ifExists is `false`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for LPUSH or RPUSH, or LPUSHX or RPUSHX.

x

Value

String

The value to push.

#[payload]

Push Left

Boolean

Side that receives the pushed payload. If the parameter is true, push the payload on the left side. If the parameter is false, push the payload on the right side.

false

If Exists

Boolean

If the parameter is true, execute LPUSHX or RPUSHX. If the parameter is false, execute LPUSH or RPUSH.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Random Member From Set `` Reads a random value from the set stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SRANDMEMBER

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Range From List `` Returns the specified range of elements from an existing list. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key of the list from which to return elements

x

start

String

Zero-based index at which the range starts. A negative value indicates that the offset starts at the end of the list.

x

stop

String

Zero-based index at which the range ends. A negative value indicates that the offset starts at the end of the list.

x

Target Variable

String

Name of a variable that stores the operation’s output.

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Set `` Set the key to hold the payload. If the key already holds a value, it is overwritten, regardless of its type as long as ifNotExists is `false`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key used to store payload

x

Value

String

The value to set.

#[payload]

Expire

Number

Set a timeout on the specified key in seconds. After the timeout the key is automatically deleted by the server. A key with an associated timeout is said to be volatile in Redis terminology.

If Not Exists

Boolean

If true, then execute SETNX on the Redis server, otherwise execute SET.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Set In Hash `` Set the specified hash field to the message payload. If the key does not exist, a new key holding a hash is created as long as ifNotExists is true. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HSET

x

Value

String

The value to set.

#[payload]

Field

String

Field to use for HSET

If Not Exists

Boolean

If true execute HSETNX, otherwise HSET.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Trim From List `` Modify an existing list so that it contains only the specified range of elements. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key of the list to modify

x

start

String

Zero-based index at which the range starts. A negative value indicates that the offset starts at the end of the list.

x

stop

String

Zero-based index at which the range ends. A negative value indicates that the offset starts at the end of the list.

x

Target Variable

String

Name of a variable that stores the operation’s output.

Target Value

String

Expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ## Types ### TLS
FieldTypeDescriptionDefault ValueRequired

Enabled Protocols

String

A comma-separated list of protocols enabled for this context.

Enabled Cipher Suites

String

A comma-separated list of cipher suites enabled for this context.

Trust Store

Key Store

Revocation Check

### Truststore
FieldTypeDescriptionDefault ValueRequired

Path

String

The location (which will be resolved relative to the current classpath and file system, if possible) of the truststore.

Password

String

The password used to protect the truststore.

Type

String

The type of store used.

Algorithm

String

The algorithm used by the truststore.

Insecure

Boolean

If true, no certificate validations are performed, rendering connections vulnerable to attacks. Use at your own risk.

### Keystore
FieldTypeDescriptionDefault ValueRequired

Path

String

The location (which will be resolved relative to the current classpath and file system, if possible) of the keystore.

Type

String

The type of store used.

Alias

String

When the keystore contains many private keys, this attribute indicates the alias of the key that should be used. If not defined, the first key in the file will be used by default.

Key Password

String

The password used to protect the private key.

Password

String

The password used to protect the keystore.

Algorithm

String

The algorithm used by the keystore.

### Standard Revocation Check
FieldTypeDescriptionDefault ValueRequired

Only End Entities

Boolean

Only verify the last element of the certificate chain.

Prefer Crls

Boolean

Try CRL instead of OCSP first.

No Fallback

Boolean

Do not use the secondary checking method (the one not selected before).

Soft Fail

Boolean

Avoid verification failure when the revocation server can not be reached or is busy.

### Custom Ocsp Responder
FieldTypeDescriptionDefault ValueRequired

Url

String

The URL of the OCSP responder.

Cert Alias

String

Alias of the signing certificate for the OCSP response (must be in the trust store), if present.

### Crl File
FieldTypeDescriptionDefault ValueRequired

Path

String

The path to the CRL file.

### Reconnection
FieldTypeDescriptionDefault ValueRequired

Fails Deployment

Boolean

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Reconnection Strategy

The reconnection strategy to use.

### Reconnect
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often in milliseconds to reconnect.

Count

Number

How many reconnection attempts to make.

### Reconnect Forever
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often in milliseconds to reconnect.

### Expiration Policy
FieldTypeDescriptionDefault ValueRequired

Max Idle Time

Number

A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it’s considered eligible for expiration.

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

A time unit that qualifies the maxIdleTime attribute

### Subscribe Channel Attributes
FieldTypeDescriptionDefault ValueRequired

Channel

String

### Repeatable In Memory Stream
FieldTypeDescriptionDefault ValueRequired

Initial Buffer Size

Number

The amount of memory that will be allocated to consume the stream and provide random access to it. If the stream contains more data than can be fit into this buffer, then the buffer expands according to the bufferSizeIncrement attribute, with an upper limit of maxInMemorySize.

Buffer Size Increment

Number

This is by how much the buffer size will be expanded if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full.

Max Buffer Size

Number

The maximum amount of memory to use. If more memory is used, a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised. A value lower than or equal to zero means no limit.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

The unit in which all these attributes are expressed

### Repeatable File Store Stream
FieldTypeDescriptionDefault ValueRequired

Max In Memory Size

Number

Defines the maximum memory that the stream should use to keep data in memory. If more than that is consumed then it will start to buffer the content on disk.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

The unit in which maxInMemorySize is expressed

### Non-repeatable Stream Disables the repeatable stream functionality and use non-repeatable streams to have less performance overhead, memory use, and cost. ### Redelivery Policy
FieldTypeDescriptionDefault ValueRequired

Max Redelivery Count

Number

The maximum number of times a message can be redelivered and processed unsuccessfully before triggering process-failed-message

Use Secure Hash

Boolean

Whether to use a secure hash algorithm to identify a redelivered message.

Message Digest Algorithm

String

The secure hashing algorithm to use. If not set, the default is SHA-256.

Id Expression

String

Defines one or more expressions to use to determine when a message has been redelivered. This property may only be set if useSecureHash is false.

Object Store

Object Store

The object store where the redelivery counter for each message is going to be stored.

## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.4 --- # Redis Connector 5.4 XML and Maven Support > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Studio XML editor or from a text editor, you can get access to the connector in your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file. When you install the connector in Studio, Studio automatically populates the XML code with the connector’s namespace and schema location. It also adds a dependency to the `pom.xml` file. ## Add a Namespace for the Connector Paste the following code inside the `` tag of the header of your configuration XML: ```xml http://www.mulesoft.org/schema/mule/redis http://www.mulesoft.org/schema/mule/redis/current/mule-redis.xsd"> ``` This example shows how the namespace statements are placed in the `` XML block: ```xml ``` ## Add a POM File Dependency The Apache Maven `pom.xml` file generated by Anypoint Studio contains dependencies for a Mule app. If you code a Mule app manually, include this XML snippet in your `pom.xml` file to enable access to this connector: ```xml com.mulesoft.connectors mule-redis-connector x.x.x mule-plugin ``` Replace `x.x.x` with the version that corresponds to the connector you are using. To obtain the most up-to-date `pom.xml` file information: 1. Go to [Anypoint Exchange](https://www.mulesoft.com/exchange/). 2. In Exchange, click **Login** and supply your Anypoint Platform username and password. 3. In Exchange, search for `redis`. 4. Select the connector. 5. Click **Dependency Snippets** near the upper right of the screen. ## Next After completing your namespace and `pom.xml` file, you can try the Redis [Examples](https://docs.mulesoft.com/redis-connector/5.4/redis-connector-examples). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.5 --- # Redis Connector 5.5 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Remote Dictionary Server (Redis Connector) is an open source, in-memory data structure store used to cache user profiles, create leader boards, track real-time activities on a website, and filter spam. You can use Redis Connector as a message queue, custom object store, and more. ## Before You Begin To use this connector, you must be familiar with: - The Redis API - Anypoint Connectors - Mule runtime engine (Mule) - Elements in a Mule flow - Global elements - How to create a Mule app using Anypoint Studio Before creating an app, you must have access to the Redis target resource. ## Connection Types > [!NOTE] Redis Connector supports only password-based authentication. Redis Connector does not > currently support Role-Based Access Control (RBAC). Redis Connector uses the following connection types: - Clustered - NonClustered - Sentinel ## Next Step After you complete the prerequisites and experiment with examples, you are ready to create an app and configure the connector using [Anypoint Studio](https://docs.mulesoft.com/redis-connector/5.5/redis-connector-studio). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Use Exchange to Discover Connectors, Templates, and Examples](https://docs.mulesoft.com/connectors/introduction/intro-use-exchange) - [Redis in Anypoint Exchange](https://www.mulesoft.com/exchange/com.mulesoft.connectors/mule-redis-connector/) - [Redis in EU Anypoint Exchange](https://eu1.anypoint.mulesoft.com/exchange/com.mulesoft.connectors/mule-redis-connector/) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.5 --- # Redis Connector 5.5 Additional Configuration Information > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Redis Connector contributes an object store implementation. Although Redis offers flexible eviction and persistence, you must understand how the Mule Redis-backed object store is designed to work when Redis is shared across multiple applications or systems. Learn key design constraints, eviction behavior, and best practices for using Redis as an object store in Mule applications, with a focus on avoiding deserialization and eviction-related failures. ## Redis as a Mule Object Store When Redis is configured as an object store in Mule: - Mule serializes payloads before storing them in Redis. - Object Store operations (retrieve, remove, expire) require successful deserialization of stored values. As a result, the Redis object store is designed to manage only entries that it created and can deserialize. ## Common Deployment Patterns In some architectures, Redis is deployed as a shared service and accessed by: - Multiple Mule applications - External (non-Mule) applications - Operational or administrative scripts that insert or delete keys This pattern is valid for Redis itself but introduces important considerations when Redis is used specifically as a Mule object store. ## Examples of Object Store Behavior Here are some scenarios of how the Redis object store behaves when Redis is shared across multiple applications or systems. ### In-Memory Object Store per Application ![App A and App B, each connecting to its own cloud service and dedicated database to store unique access and refresh tokens](/mulesoft/current/en-us/redis-connector/5.5/_images/redis-scenario-1.png) Setup - Application A and Application B each use an in-memory object store. Outcome - Each application maintains its own isolated store. - No key collisions or deserialization issues occur. - Expiration and invalidation are fully controlled per application. This is the safest and most isolated configuration. ### Shared External Object Store (Not Redis) ![App A and App B sharing a single database that stores multiple sets of access and refresh tokens](/mulesoft/current/en-us/redis-connector/5.5/_images/redis-scenario-2.png) Setup - Application A and Application B use a common external object store. - Identical object IDs (for example, access\_token) are used. Outcome - Redis object store implementation prevents overwriting entries created by another application. - This behavior is intentional to prevent data corruption. Cross-application data ownership is restricted by design. ### Redis as a Shared External Object Store ![App A and App B both connecting to a centralized Redis database while also maintaining individual connections to Salesforce and ServiceNow](/mulesoft/current/en-us/redis-connector/5.5/_images/redis-scenario-3.png) Setup - Redis is configured as a shared external object store. - Mule Application A, Application B, and external systems write to the same Redis instance. - Stored data includes: - Java-serialized objects (via Mule object store) - Plain text or JSON (via direct Redis operations) Outcome - During eviction or expiration, the Mule object store might encounter entries it can’t deserialize. - This can result in errors such as: ```text org.mule.runtime.api.store.ObjectStoreException: Could not deserialize object Caused by: java.lang.ClassNotFoundException ``` Eviction or cleanup fails when Redis contains entries not owned by the current application or classloader. ## Expectation vs. Actual Behavior
ExpectationActual Behavior

Redis object store can be freely shared across applications.

Each application can only deserialize objects created within its own classloader.

Expiration task cleans all excess entries.

Expiration fails when encountering unknown or incompatible entries.

Non-Mule data can coexist in Redis.

Non-serialized data can cause object store failures.

Cache Scope can be invalidated across applications.

Cache invalidation is application-bound.

## Why This Behavior Is by Design The Redis object store follows strict safety and isolation principles:
Design PrincipleExplanation

Data Ownership

Manages only data that the object store owns

Data Integrity

Prevents accidental deletion of external or foreign data

Classloader Isolation

Deserializes objects only from its own Mule application

Fail-Safe Operation

Fails safely instead of performing destructive deletes

This ensures predictable behavior and avoids unintended side effects in shared environments. ## Redis Eviction and Mule Object Store Redis eviction policies operate at the Redis level, not at the Mule object store level. Mule object store expiration deserializes values even during expiration. As a result, Mule object store expiration can fail if incompatible entries exist. ## Recommended Best Practices - Separate Object Store and Generic Redis Usage - Use object store APIs only for Mule-managed, serialized data stored in Redis object store. - Use Redis Connector operations for plain text, JSON, or external data. - Namespace Keys Explicitly - For shared Redis object store, ensure object store keys don’t overlap with externally managed Redis keys. --- product: Redis Connector version: 5.5 --- # Redis Connector 5.5 Examples > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The following examples show how to use Redis Connector to set a key value on the Redis server and how to use Redis Connector as a custom object store in a Mule app. ## Set a Key Value on the Redis Server The following screenshot shows the flow for this example: ![Studio flow with Listener, Set, and Set Payload](/mulesoft/current/en-us/redis-connector/5.5/_images/redis-set-raw-flow.png) To use Anypoint Studio to set a key value on the Redis server: 1. Create a new Mule project by clicking **File** > **New** > **Mule Project**. 2. Enter a name for the new project and click **Finish**. 3. In the **Mule Palette** view, select **HTTP** > **Listener** and drag it to the Studio canvas. HTTP Listener is the entry point for the flow and provides the key and its value. 4. Click the plus sign (+) next to the **Connector Configuration** field. 5. Leave the default configuration and click **OK**. 6. Set the **Path** field to `/`. 7. In the **Mule Palette** view, search for `redis` and drag the **Set** operation to the right of **Listener**. The **Set** operation sends data to the Redis server. 8. Set the properties for the **Set** operation as follows: - Set the **Display Name** field to `Set value for key into Redis`. - Set the **Key** field to `#[payload.key]`. - Set the **Value** field to `#[payload.value]`: ![Set operation properties window on General tab](/mulesoft/current/en-us/redis-connector/5.5/_images/redis-set-config.png) 9. In the **Mule Palette** view, search for `payload` and drag the **Set Payload** component to the right of **Set value for key into Redis** on the Studio canvas. The **Set Payload** component creates the response for the incoming HTTP request. 10. Set the **Set Payload** properties as follows: - Set the **Display Name** field to `Set value response`. - Set the **Value** field to `Successfully set value: #[payload.value] to key: #[payload.key]`: ![Set Payload properties window on General tab](/mulesoft/current/en-us/redis-connector/5.5/_images/redis-set-response-config.png) 11. Save your changes and deploy the app by right-clicking the Studio canvas and selecting **Run project **. 12. When the app is running, use an HTTP client app to send a POST request to `localhost:8081/` with content-type `application/x-www-form-urlencoded` and a body in `url-encoded` format. The request body should contain a key and value: `curl -X POST -d "key=test-key" -d "value=test-value" localhost:8081/` The XML for this example should look like this: ```text ​ ``` ## Use Redis Connector as a Custom Object Store In Studio to configure Redis Connector as a custom object store in a Mule app: 1. Add the Redis namespace to the `` element: ```none xmlns:redis="http://www.mulesoft.org/schema/mule/redis" ``` 2. Add the location of the Redis schema referred to by the Redis namespace: ```text http://www.mulesoft.org/schema/mule/redis http://www.mulesoft.org/schema/mule/redis/current/mule-redis.xsd ``` 3. Add the HTTP namespace to the `` element: ```none xmlns:http="http://www.mulesoft.org/schema/mule/http" ``` 4. Add the location of the HTTP schema referred to by the HTTP namespace: ```text http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd ``` 5. Add the object store namespace to the `` element: ```none xmlns:os="http://www.mulesoft.org/schema/mule/os" ``` 6. Add the location of the object store schema referred to by the object store’s namespace: ```text http://www.mulesoft.org/schema/mule/os http://www.mulesoft.org/schema/mule/os/current/mule-os.xsd ``` 7. Using the Studio XML editor, add an `` element to your project and configure it to contain a Redis connection type (`clustered-connection` or `nonclustered-connection`). ```xml ``` 8. Add an `` element to your project and configure it to reference the configuration created previously: ```xml ``` 9. Add an `` element to your project and configure its attributes: ```xml ``` 10. Add an empty `` element to your project: ```xml < name="set-flow"> ``` 11. Within the `` element, add an `` element: ```xml ``` 12. Within the `` element, add an `` element after the `` element and configure `` to use the object store created previously: ```xml ``` When you’re done, the XML file should look like this: ```xml ​ ​ ​ ​ ​ ``` ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.5 --- # Redis Connector 5.5 Reference > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. > [!NOTE] You can set configurations in Expression mode, except when Redis Connector is used in > conjunction with Object Store Connector, which does not support Expression mode. Starting with Redis Connector 5.4.5, Mule apps that use an Object Store **Entry TTL** exceeding 24 days now observe that the TTL for new keys is set to the correct values. ## Redis Configuration
NameTypeDescriptionDefault ValueRequired

Name

String

The name for this configuration. Connectors reference the configuration with this name.

x

Connection

The connection types to provide to this configuration.

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the instance expires at the exact moment that it becomes eligible. Mule purges the instances as appropriate.

## Connection Types > [!NOTE] Redis Connector supports only password-based authentication. Redis Connector does not > currently support Role-Based Access Control (RBAC). ### Clustered > [!NOTE] Redis Connector does not support clustered connections on Redis Enterprise Active-Active > databases. To connect to one of the Redis Enterprise active-active clusters, non-clustered > connection should be used in the connector. However, the connection is only made to the specified > node. > > Redis Connector does not support clustered sharded connections. #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance Connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Password

String

Redis password. Set if the server requires authentication.

Entry TTL

Number

The default time to live to set on keys stored for the connector.

Cluster Hosts

String

Redis cluster hosts separated by commas and having the format host:port. Use this field when you want to access your Redis cluster through the connector.

x

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

### NonClustered #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance Connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Password

String

Redis password. Set this if the server requires authentication.

Entry TTL

Number

The default time to live to be set on keys stored for the connector.

Host

String

Redis host. Use this field when you want to access you Redis server that is not part of a cluster through connector.

localhost

Port

Number

Redis port. The port on which your non cluster server is running.

6379

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

### Sentinel Sentinel provides a high-availability solution in case of failure on your Redis cluster. #### Parameters
NameTypeDescriptionDefault ValueRequired

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Password

String

Redis password. Set this if the server requires authentication.

Entry TTL

Number

The default time to live to be set on keys stored for the connector.

Sentinels Hosts

String

Set of sentinel addresses that are monitoring the master host to which the connector will connect.

x

Master Name

String

Redis master name. The name of the master for which the sentinels will return the current address.

Sentinel Password

String

Sentinel password. Set this if the sentinel servers require authentication.

Index

Number

The index of the database that the pool will use.

Sentinel Connection Timeout

Number

Sentinel connection timeout value.

2000

Sentinel Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for sentinel connection timeout.

MILLISECONDS

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

## Sources Supported source: - [Subscribe](#subscribe) ### Subscribe `` #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Channels

Array of String

A list of channel names or globbing patterns.

x

Output Mime Type

String

The MIME type of the payload that this source outputs.

Primary Node Only

Boolean

Whether this source should be executed on the primary node only when running in a cluster.

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Redelivery Policy

Defines a policy for processing the redelivery of the same message.

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

Attributes Type

### For Configurations - [Redis Configuration](#redis) ## Operations Supported operations: - [Add To Set](#addToSet) - [Add To Sorted Set](#addToSortedSet) - [Decrement](#decrement) - [Del](#del) - [Exists](#exists) - [Expire](#expire) - [Expire At](#expireAt) - [Get](#get) - [Get All From Hash](#getAllFromHash) - [Get From Hash](#getFromHash) - [Get Range By Index](#getRangeByIndex) - [Get Range By Score](#getRangeByScore) - [Get TTL](#getTtl) - [Increment](#increment) - [Increment Hash](#incrementHash) - [Increment Sorted Set](#incrementSortedSet) - [Persist](#persist) - [Pop From List](#popFromList) - [Pop From Set](#popFromSet) - [Publish](#publish) - [Push To List](#pushToList) - [Random Member From Set](#randomMemberFromSet) - [Range From List](#rangeFromList) - [Set](#set) - [Set In Hash](#setInHash) - [Trim From List](#trimFromList) ### Add To Set `` Add the message payload to the set stored at the specified key. If the key does not exist, a new key holding a set is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SADD

x

Value

String

The value to set.

#[payload]

Must Succeed

Boolean

If true, ensures that adding to the set is successful (that is, no pre-existing identical value is in the set)

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Add To Sorted Set `` Add the message payload with the desired score to the sorted set stored at the specified key. If the key does not exist, a new key holding a sorted set is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZADD

x

Value

String

The value to set.

#[payload]

Score

Number

Score to use for the value

x

Must Succeed

Boolean

If true, ensures that adding to the set is successful (that is, no pre-existing identical value is in the set)

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS: - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Decrement `` Decrements the number stored at key by step. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains data that cannot be represented as integer. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for DECR.

x

Step

Number

Step used for the increment.

1

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Del `` Remove the specified key, if it exists. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for DEL

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Exists `` Test if the specified key exists. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for EXISTS

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Expire `` Set a timeout on the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Seconds

Number

The time to live in seconds.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Expire At `` Set a timeout in the form of a UNIX timestamp (number of seconds elapsed since 1 Jan 1970) on the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Unix Time

Number

The UNIX timestamp in seconds.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get `` Get the value of the specified key. If the key does not exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for GET

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get All From Hash `` Get all fields and values of the hash stored at the specified key. If the field or the hash don’t exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGETALL

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Object

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get From Hash `` Get the value stored at the specified field in the hash at the specified key. If the field or the hash don’t exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGET

x

Field

String

Field to use for HGET

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get Range By Index `` Retrieve a range of values from the sorted set stored at the specified key. The range of values is defined by indices in the sorted set and sorted as desired. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZRANGE/ZREVRANGE

x

Start

Number

Range start index

x

End

Number

Range end index

x

Ascending Order

Boolean

Index order for sorting the range. If the parameter is set to true, the range is sorted in ascending order. If the parameter is set to false, the range is sorted in descending order.

true

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get Range By Score `` Retrieve a range of values from the sorted set stored at the specified key. The range of values is defined by scores in the sorted set and sorted as desired. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZRANGEBYSCORE and ZREVRANGEBYSCORE

x

Min

Number

Range start score

x

Max

Number

Range end score

x

Ascending Order

Boolean

Score order for sorting the range. If the parameter is set to true, the range is sorted in ascending order. If the parameter is set to false, the range is sorted in descending order.

true

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get TTL `` Get the remaining time to live of a volatile key, in seconds. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment `` Increments the number stored at key by step. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains data that can not be represented as integer. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for INCR.

x

Step

Number

Step used for the increment.

1

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment Hash `` Increments the number stored at field in the hash stored at key by increment. If the key does not exist, a new key holding a hash is created. If field does not exist, the value is set to `0` before the operation is performed. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGET

x

Field

String

Field to use for HGET

x

Step

Number

Step used for the increment.

1

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment Sorted Set `` Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was `0.0`). If the key does not exist, a new sorted set with the specified member as its sole member is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Value

String

The value to set.

#[payload]

Step

Number

The step to use to increment the score.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Persist `` Undo an expire or expireAt, turning the volatile key into a normal key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Pop From List `` Pop a value from the desired side of the list stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for LPOP/RPOP

x

Pop Left

boolean

The side from which to pop the value. If the parameter is true, the value is popped from the left side. If the parameter is false, the value is popped from the right side.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Pop From Set `` Pops a random value from the set stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SPOP

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Publish `` Publish the message payload to the specified channel. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Channel

String

Destination of the published message

x

Message

String

The message to publish.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Push To List `` Push the message payload to the desired side (LEFT or RIGHT) of the list stored at the specified key. If the key does not exist, a new key holding a list is created as long as ifExists is `false`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for LPUSH or RPUSH, or LPUSHX or RPUSHX.

x

Value

String

The value to push.

#[payload]

Push Left

Boolean

Side that receives the pushed payload. If the parameter is true, push the payload on the left side. If the parameter is false, push the payload on the right side.

false

If Exists

Boolean

If the parameter is true, execute LPUSHX or RPUSHX. If the parameter is false, execute LPUSH or RPUSH.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Random Member From Set `` Reads a random value from the set stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SRANDMEMBER

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Range From List `` Returns the specified range of elements from an existing list. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key of the list from which to return elements

x

start

String

Zero-based index at which the range starts. A negative value indicates that the offset starts at the end of the list.

x

stop

String

Zero-based index at which the range ends. A negative value indicates that the offset starts at the end of the list.

x

Target Variable

String

Name of a variable that stores the operation’s output.

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Set `` Set the key to hold the payload. If the key already holds a value, it is overwritten, regardless of its type as long as ifNotExists is `false`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key used to store payload

x

Value

String

The value to set.

#[payload]

Expire

Number

Set a timeout on the specified key in seconds. After the timeout the key is automatically deleted by the server. A key with an associated timeout is said to be volatile in Redis terminology.

If Not Exists

Boolean

If true, then execute SETNX on the Redis server, otherwise execute SET.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Set In Hash `` Set the specified hash field to the message payload. If the key does not exist, a new key holding a hash is created as long as ifNotExists is true. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HSET

x

Value

String

The value to set.

#[payload]

Field

String

Field to use for HSET

If Not Exists

Boolean

If true execute HSETNX, otherwise HSET.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Trim From List `` Modify an existing list so that it contains only the specified range of elements. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key of the list to modify

x

start

String

Zero-based index at which the range starts. A negative value indicates that the offset starts at the end of the list.

x

stop

String

Zero-based index at which the range ends. A negative value indicates that the offset starts at the end of the list.

x

Target Variable

String

Name of a variable that stores the operation’s output.

Target Value

String

Expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ## Types ### TLS
FieldTypeDescriptionDefault ValueRequired

Enabled Protocols

String

A comma-separated list of protocols enabled for this context.

Enabled Cipher Suites

String

A comma-separated list of cipher suites enabled for this context.

Trust Store

Key Store

Revocation Check

### Truststore
FieldTypeDescriptionDefault ValueRequired

Path

String

The location (which will be resolved relative to the current classpath and file system, if possible) of the truststore.

Password

String

The password used to protect the truststore.

Type

String

The type of store used.

Algorithm

String

The algorithm used by the truststore.

Insecure

Boolean

If true, no certificate validations are performed, rendering connections vulnerable to attacks. Use at your own risk.

### Keystore
FieldTypeDescriptionDefault ValueRequired

Path

String

The location (which will be resolved relative to the current classpath and file system, if possible) of the keystore.

Type

String

The type of store used.

Alias

String

When the keystore contains many private keys, this attribute indicates the alias of the key that should be used. If not defined, the first key in the file will be used by default.

Key Password

String

The password used to protect the private key.

Password

String

The password used to protect the keystore.

Algorithm

String

The algorithm used by the keystore.

### Standard Revocation Check
FieldTypeDescriptionDefault ValueRequired

Only End Entities

Boolean

Only verify the last element of the certificate chain.

Prefer Crls

Boolean

Try CRL instead of OCSP first.

No Fallback

Boolean

Do not use the secondary checking method (the one not selected before).

Soft Fail

Boolean

Avoid verification failure when the revocation server can not be reached or is busy.

### Custom Ocsp Responder
FieldTypeDescriptionDefault ValueRequired

Url

String

The URL of the OCSP responder.

Cert Alias

String

Alias of the signing certificate for the OCSP response (must be in the trust store), if present.

### Crl File
FieldTypeDescriptionDefault ValueRequired

Path

String

The path to the CRL file.

### Reconnection
FieldTypeDescriptionDefault ValueRequired

Fails Deployment

Boolean

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Reconnection Strategy

The reconnection strategy to use.

### Reconnect
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often in milliseconds to reconnect.

Count

Number

How many reconnection attempts to make.

### Reconnect Forever
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often in milliseconds to reconnect.

### Expiration Policy
FieldTypeDescriptionDefault ValueRequired

Max Idle Time

Number

A scalar time value for the maximum amount of time a dynamic configuration instance should be allowed to be idle before it’s considered eligible for expiration.

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

A time unit that qualifies the maxIdleTime attribute

### Subscribe Channel Attributes
FieldTypeDescriptionDefault ValueRequired

Channel

String

### Repeatable In Memory Stream
FieldTypeDescriptionDefault ValueRequired

Initial Buffer Size

Number

The amount of memory that will be allocated to consume the stream and provide random access to it. If the stream contains more data than can be fit into this buffer, then the buffer expands according to the bufferSizeIncrement attribute, with an upper limit of maxInMemorySize.

Buffer Size Increment

Number

This is by how much the buffer size will be expanded if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full.

Max Buffer Size

Number

The maximum amount of memory to use. If more memory is used, a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised. A value lower than or equal to zero means no limit.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

The unit in which all these attributes are expressed

### Repeatable File Store Stream
FieldTypeDescriptionDefault ValueRequired

Max In Memory Size

Number

Defines the maximum memory that the stream should use to keep data in memory. If more than that is consumed then it will start to buffer the content on disk.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

The unit in which maxInMemorySize is expressed

### Non-repeatable Stream Disables the repeatable stream functionality and use non-repeatable streams to have less performance overhead, memory use, and cost. ### Redelivery Policy
FieldTypeDescriptionDefault ValueRequired

Max Redelivery Count

Number

The maximum number of times a message can be redelivered and processed unsuccessfully before triggering process-failed-message

Use Secure Hash

Boolean

Whether to use a secure hash algorithm to identify a redelivered message.

Message Digest Algorithm

String

The secure hashing algorithm to use. If not set, the default is SHA-256.

Id Expression

String

Defines one or more expressions to use to determine when a message has been redelivered. This property may only be set if useSecureHash is false.

Object Store

Object Store

The object store where the redelivery counter for each message is going to be stored.

## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.5 --- # Redis Connector 5.5 XML and Maven Support > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Studio XML editor or from a text editor, you can get access to the connector in your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file. When you install the connector in Studio, Studio automatically populates the XML code with the connector’s namespace and schema location. It also adds a dependency to the `pom.xml` file. ## Add a Namespace for the Connector Paste the following code inside the `` tag of the header of your configuration XML: ```xml http://www.mulesoft.org/schema/mule/redis http://www.mulesoft.org/schema/mule/redis/current/mule-redis.xsd"> ``` This example shows how the namespace statements are placed in the `` XML block: ```xml ``` ## Add a POM File Dependency The Apache Maven `pom.xml` file generated by Anypoint Studio contains dependencies for a Mule app. If you code a Mule app manually, include this XML snippet in your `pom.xml` file to enable access to this connector: ```xml com.mulesoft.connectors mule-redis-connector x.x.x mule-plugin ``` Replace `x.x.x` with the version that corresponds to the connector you are using. To obtain the most up-to-date `pom.xml` file information: 1. Go to [Anypoint Exchange](https://www.mulesoft.com/exchange/). 2. In Exchange, click **Login** and supply your Anypoint Platform username and password. 3. In Exchange, search for `redis`. 4. Select the connector. 5. Click **Dependency Snippets** near the upper right of the screen. ## Next After completing your namespace and `pom.xml` file, you can try the Redis [Examples](https://docs.mulesoft.com/redis-connector/5.5/redis-connector-examples). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.6 --- # Redis Connector 5.6 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Remote Dictionary Server (Redis Connector) is an open source, in-memory data structure store used to cache user profiles, create leader boards, track real-time activities on a website, and filter spam. You can use Redis Connector as a message queue, custom object store, and more. ## Before You Begin To use this connector, you must be familiar with: - The Redis API - Anypoint Connectors - Mule runtime engine (Mule) - Elements in a Mule flow - Global elements - How to create a Mule app using Anypoint Studio Before creating an app, you must have access to the Redis target resource. ## Connection Types > [!NOTE] Redis Connector supports only password-based authentication. Redis Connector does not > currently support Role-Based Access Control (RBAC). Redis Connector uses the following connection types: - Clustered - NonClustered - Sentinel ## Next Step After you complete the prerequisites and experiment with examples, you are ready to create an app and configure the connector using [Anypoint Studio](https://docs.mulesoft.com/redis-connector/5.6/redis-connector-studio). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Use Exchange to Discover Connectors, Templates, and Examples](https://docs.mulesoft.com/connectors/introduction/intro-use-exchange) - [Redis in Anypoint Exchange](https://www.mulesoft.com/exchange/com.mulesoft.connectors/mule-redis-connector/) - [Redis in EU Anypoint Exchange](https://eu1.anypoint.mulesoft.com/exchange/com.mulesoft.connectors/mule-redis-connector/) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.6 --- # Redis Connector 5.6 Additional Configuration Information > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Redis Connector contributes an object store implementation. Although Redis offers flexible eviction and persistence, you must understand how the Mule Redis-backed object store is designed to work when Redis is shared across multiple applications or systems. Learn key design constraints, eviction behavior, and best practices for using Redis as an object store in Mule applications, with a focus on avoiding deserialization and eviction-related failures. ## Redis as a Mule Object Store When Redis is configured as an object store in Mule: - Mule serializes payloads before storing them in Redis. - Object Store operations (retrieve, remove, expire) require successful deserialization of stored values. As a result, the Redis object store is designed to manage only entries that it created and can deserialize. ## Common Deployment Patterns In some architectures, Redis is deployed as a shared service and accessed by: - Multiple Mule applications - External (non-Mule) applications - Operational or administrative scripts that insert or delete keys This pattern is valid for Redis itself but introduces important considerations when Redis is used specifically as a Mule object store. ## Examples of Object Store Behavior Here are some scenarios of how the Redis object store behaves when Redis is shared across multiple applications or systems. ### In-Memory Object Store per Application ![App A and App B, each connecting to its own cloud service and dedicated database to store unique access and refresh tokens](/mulesoft/current/en-us/redis-connector/5.6/_images/redis-scenario-1.png) Setup - Application A and Application B each use an in-memory object store. Outcome - Each application maintains its own isolated store. - No key collisions or deserialization issues occur. - Expiration and invalidation are fully controlled per application. This is the safest and most isolated configuration. ### Shared External Object Store (Not Redis) ![App A and App B sharing a single database that stores multiple sets of access and refresh tokens](/mulesoft/current/en-us/redis-connector/5.6/_images/redis-scenario-2.png) Setup - Application A and Application B use a common external object store. - Identical object IDs (for example, access\_token) are used. Outcome - Redis object store implementation prevents overwriting entries created by another application. - This behavior is intentional to prevent data corruption. Cross-application data ownership is restricted by design. ### Redis as a Shared External Object Store ![App A and App B both connecting to a centralized Redis database while also maintaining individual connections to Salesforce and ServiceNow](/mulesoft/current/en-us/redis-connector/5.6/_images/redis-scenario-3.png) Setup - Redis is configured as a shared external object store. - Mule Application A, Application B, and external systems write to the same Redis instance. - Stored data includes: - Java-serialized objects (via Mule object store) - Plain text or JSON (via direct Redis operations) Outcome - During eviction or expiration, the Mule object store might encounter entries it can’t deserialize. - This can result in errors such as: ```text org.mule.runtime.api.store.ObjectStoreException: Could not deserialize object Caused by: java.lang.ClassNotFoundException ``` Eviction or cleanup fails when Redis contains entries not owned by the current application or classloader. ## Expectation vs. Actual Behavior
ExpectationActual Behavior

Redis object store can be freely shared across applications.

Each application can only deserialize objects created within its own classloader.

Expiration task cleans all excess entries.

Expiration fails when encountering unknown or incompatible entries.

Non-Mule data can coexist in Redis.

Non-serialized data can cause object store failures.

Cache Scope can be invalidated across applications.

Cache invalidation is application-bound.

## Why This Behavior Is by Design The Redis object store follows strict safety and isolation principles:
Design PrincipleExplanation

Data Ownership

Manages only data that the object store owns

Data Integrity

Prevents accidental deletion of external or foreign data

Classloader Isolation

Deserializes objects only from its own Mule application

Fail-Safe Operation

Fails safely instead of performing destructive deletes

This ensures predictable behavior and avoids unintended side effects in shared environments. ## Redis Eviction and Mule Object Store Redis eviction policies operate at the Redis level, not at the Mule object store level. Mule object store expiration deserializes values even during expiration. As a result, Mule object store expiration can fail if incompatible entries exist. ## Recommended Best Practices - Separate Object Store and Generic Redis Usage - Use object store APIs only for Mule-managed, serialized data stored in Redis object store. - Use Redis Connector operations for plain text, JSON, or external data. - Namespace Keys Explicitly - For shared Redis object store, ensure object store keys don’t overlap with externally managed Redis keys. --- product: Redis Connector version: 5.6 --- # Redis Connector 5.6 Examples > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The following examples show how to use Redis Connector to set a key value on the Redis server and how to use Redis Connector as a custom object store in a Mule app. ## Set a Key Value on the Redis Server The following screenshot shows the flow for this example: ![Studio flow with Listener, Set, and Set Payload](/mulesoft/current/en-us/redis-connector/5.6/_images/redis-set-raw-flow.png) To use Anypoint Studio to set a key value on the Redis server: 1. Create a new Mule project by clicking **File** > **New** > **Mule Project**. 2. Enter a name for the new project and click **Finish**. 3. In the **Mule Palette** view, select **HTTP** > **Listener** and drag it to the Studio canvas. HTTP Listener is the entry point for the flow and provides the key and its value. 4. Click the plus sign (+) next to the **Connector Configuration** field. 5. Leave the default configuration and click **OK**. 6. Set the **Path** field to `/`. 7. In the **Mule Palette** view, search for `redis` and drag the **Set** operation to the right of **Listener**. The **Set** operation sends data to the Redis server. 8. Set the properties for the **Set** operation as follows: - Set the **Display Name** field to `Set value for key into Redis`. - Set the **Key** field to `#[payload.key]`. - Set the **Value** field to `#[payload.value]`: ![Set operation properties window on General tab](/mulesoft/current/en-us/redis-connector/5.6/_images/redis-set-config.png) 9. In the **Mule Palette** view, search for `payload` and drag the **Set Payload** component to the right of **Set value for key into Redis** on the Studio canvas. The **Set Payload** component creates the response for the incoming HTTP request. 10. Set the **Set Payload** properties as follows: - Set the **Display Name** field to `Set value response`. - Set the **Value** field to `Successfully set value: #[payload.value] to key: #[payload.key]`: ![Set Payload properties window on General tab](/mulesoft/current/en-us/redis-connector/5.6/_images/redis-set-response-config.png) 11. Save your changes and deploy the app by right-clicking the Studio canvas and selecting **Run project **. 12. When the app is running, use an HTTP client app to send a POST request to `localhost:8081/` with content-type `application/x-www-form-urlencoded` and a body in `url-encoded` format. The request body should contain a key and value: `curl -X POST -d "key=test-key" -d "value=test-value" localhost:8081/` The XML for this example should look like this: ```text ​ ``` ## Use Redis Connector as a Custom Object Store In Studio to configure Redis Connector as a custom object store in a Mule app: 1. Add the Redis namespace to the `` element: ```none xmlns:redis="http://www.mulesoft.org/schema/mule/redis" ``` 2. Add the location of the Redis schema referred to by the Redis namespace: ```text http://www.mulesoft.org/schema/mule/redis http://www.mulesoft.org/schema/mule/redis/current/mule-redis.xsd ``` 3. Add the HTTP namespace to the `` element: ```none xmlns:http="http://www.mulesoft.org/schema/mule/http" ``` 4. Add the location of the HTTP schema referred to by the HTTP namespace: ```text http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd ``` 5. Add the object store namespace to the `` element: ```none xmlns:os="http://www.mulesoft.org/schema/mule/os" ``` 6. Add the location of the object store schema referred to by the object store’s namespace: ```text http://www.mulesoft.org/schema/mule/os http://www.mulesoft.org/schema/mule/os/current/mule-os.xsd ``` 7. Using the Studio XML editor, add an `` element to your project and configure it to contain a Redis connection type (`clustered-connection` or `nonclustered-connection`). ```xml ``` 8. Add an `` element to your project and configure it to reference the configuration created previously: ```xml ``` 9. Add an `` element to your project and configure its attributes: ```xml ``` 10. Add an empty `` element to your project: ```xml < name="set-flow"> ``` 11. Within the `` element, add an `` element: ```xml ``` 12. Within the `` element, add an `` element after the `` element and configure `` to use the object store created previously: ```xml ``` When you’re done, the XML file should look like this: ```xml ​ ​ ​ ​ ​ ``` ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.6 --- # Redis Connector 5.6 Reference > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. > [!NOTE] You can set configurations in Expression mode, except when Redis Connector is used in > conjunction with Object Store Connector, which does not support Expression mode. Starting with Redis Connector 5.4.5, Mule apps that use an Object Store **Entry TTL** exceeding 24 days now observe that the TTL for new keys is set to the correct values. ## Redis Configuration
NameTypeDescriptionDefault ValueRequired

Name

String

The name for this configuration. Connectors reference the configuration with this name.

x

Connection

The connection types to provide to this configuration.

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the instance expires at the exact moment that it becomes eligible. Mule purges the instances as appropriate.

## Connection Types > [!NOTE] Redis Connector supports only password-based authentication. Redis Connector does not > currently support Role-Based Access Control (RBAC). ### Clustered > [!NOTE] Redis Connector does not support clustered connections on Redis Enterprise Active-Active > databases. To connect to one of the Redis Enterprise active-active clusters, non-clustered > connection should be used in the connector. However, the connection is only made to the specified > node. > > Redis Connector does not support clustered sharded connections. #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance Connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Password

String

Redis password. Set if the server requires authentication.

Entry TTL

Number

The default time to live to set on keys stored for the connector.

Cluster Hosts

String

Redis cluster hosts separated by commas and having the format host:port. Use this field when you want to access your Redis cluster through the connector.

x

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

### NonClustered #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance Connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Password

String

Redis password. Set this if the server requires authentication.

Entry TTL

Number

The default time to live to be set on keys stored for the connector.

Host

String

Redis host. Use this field when you want to access you Redis server that is not part of a cluster through connector.

localhost

Port

Number

Redis port. The port on which your non cluster server is running.

6379

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

### Sentinel Sentinel provides a high-availability solution in case of failure on your Redis cluster. #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Password

String

Redis password. Set this if the server requires authentication.

Entry TTL

Number

The default time to live to be set on keys stored for the connector.

Sentinels Hosts

String

Set of sentinel addresses that are monitoring the master host to which the connector will connect.

x

Master Name

String

Redis master name. The name of the master for which the sentinels will return the current address.

Sentinel Password

String

Sentinel password. Set this if the sentinel servers require authentication.

Index

Number

The index of the database that the pool will use.

Sentinel Connection Timeout

Number

Sentinel connection timeout value.

2000

Sentinel Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for sentinel connection timeout.

MILLISECONDS

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

## Sources Supported source: - [Subscribe](#subscribe) ### Subscribe `` #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Channels

Array of String

A list of channel names or globbing patterns.

x

Output Mime Type

String

The MIME type of the payload that this source outputs.

Primary Node Only

Boolean

Whether this source should be executed on the primary node only when running in a cluster.

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Redelivery Policy

Defines a policy for processing the redelivery of the same message.

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

Attributes Type

### For Configurations - [Redis Configuration](#redis) ## Operations Supported operations: - [Add To Set](#addToSet) - [Add To Sorted Set](#addToSortedSet) - [Decrement](#decrement) - [Del](#del) - [Exists](#exists) - [Expire](#expire) - [Expire At](#expireAt) - [Get](#get) - [Get All From Hash](#getAllFromHash) - [Get From Hash](#getFromHash) - [Get Range By Index](#getRangeByIndex) - [Get Range By Score](#getRangeByScore) - [Get TTL](#getTtl) - [Increment](#increment) - [Increment Hash](#incrementHash) - [Increment Sorted Set](#incrementSortedSet) - [Persist](#persist) - [Pop From List](#popFromList) - [Pop From Set](#popFromSet) - [Publish](#publish) - [Push To List](#pushToList) - [Random Member From Set](#randomMemberFromSet) - [Range From List](#rangeFromList) - [Set](#set) - [Set In Hash](#setInHash) - [Trim From List](#trimFromList) ### Add To Set `` Add the message payload to the set stored at the specified key. If the key does not exist, a new key holding a set is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SADD

x

Value

String

The value to set.

#[payload]

Must Succeed

Boolean

If true, ensures that adding to the set is successful (that is, no pre-existing identical value is in the set)

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Add To Sorted Set `` Add the message payload with the desired score to the sorted set stored at the specified key. If the key does not exist, a new key holding a sorted set is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZADD

x

Value

String

The value to set.

#[payload]

Score

Number

Score to use for the value

x

Must Succeed

Boolean

If true, ensures that adding to the set is successful (that is, no pre-existing identical value is in the set)

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS: - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Decrement `` Decrements the number stored at key by step. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains data that cannot be represented as integer. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for DECR.

x

Step

Number

Step used for the increment.

1

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Del `` Remove the specified key, if it exists. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for DEL

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Exists `` Test if the specified key exists. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for EXISTS

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Expire `` Set a timeout on the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Seconds

Number

The time to live in seconds.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Expire At `` Set a timeout in the form of a UNIX timestamp (number of seconds elapsed since 1 Jan 1970) on the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Unix Time

Number

The UNIX timestamp in seconds.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get `` Get the value of the specified key. If the key does not exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for GET

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get All From Hash `` Get all fields and values of the hash stored at the specified key. If the field or the hash don’t exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGETALL

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Object

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get From Hash `` Get the value stored at the specified field in the hash at the specified key. If the field or the hash don’t exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGET

x

Field

String

Field to use for HGET

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get Range By Index `` Retrieve a range of values from the sorted set stored at the specified key. The range of values is defined by indices in the sorted set and sorted as desired. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZRANGE/ZREVRANGE

x

Start

Number

Range start index

x

End

Number

Range end index

x

Ascending Order

Boolean

Index order for sorting the range. If the parameter is set to true, the range is sorted in ascending order. If the parameter is set to false, the range is sorted in descending order.

true

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get Range By Score `` Retrieve a range of values from the sorted set stored at the specified key. The range of values is defined by scores in the sorted set and sorted as desired. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZRANGEBYSCORE and ZREVRANGEBYSCORE

x

Min

Number

Range start score

x

Max

Number

Range end score

x

Ascending Order

Boolean

Score order for sorting the range. If the parameter is set to true, the range is sorted in ascending order. If the parameter is set to false, the range is sorted in descending order.

true

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get TTL `` Get the remaining time to live of a volatile key, in seconds. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment `` Increments the number stored at key by step. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains data that can not be represented as integer. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for INCR.

x

Step

Number

Step used for the increment.

1

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment Hash `` Increments the number stored at field in the hash stored at key by increment. If the key does not exist, a new key holding a hash is created. If field does not exist, the value is set to `0` before the operation is performed. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGET

x

Field

String

Field to use for HGET

x

Step

Number

Step used for the increment.

1

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment Sorted Set `` Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was `0.0`). If the key does not exist, a new sorted set with the specified member as its sole member is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Value

String

The value to set.

#[payload]

Step

Number

The step to use to increment the score.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Persist `` Undo an expire or expireAt, turning the volatile key into a normal key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Pop From List `` Pop a value from the desired side of the list stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for LPOP/RPOP

x

Pop Left

boolean

The side from which to pop the value. If the parameter is true, the value is popped from the left side. If the parameter is false, the value is popped from the right side.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Pop From Set `` Pops a random value from the set stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SPOP

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Publish `` Publish the message payload to the specified channel. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Channel

String

Destination of the published message

x

Message

String

The message to publish.

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Push To List `` Push the message payload to the desired side (LEFT or RIGHT) of the list stored at the specified key. If the key does not exist, a new key holding a list is created as long as ifExists is `false`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for LPUSH or RPUSH, or LPUSHX or RPUSHX.

x

Value

String

The value to push.

#[payload]

Push Left

Boolean

Side that receives the pushed payload. If the parameter is true, push the payload on the left side. If the parameter is false, push the payload on the right side.

false

If Exists

Boolean

If the parameter is true, execute LPUSHX or RPUSHX. If the parameter is false, execute LPUSH or RPUSH.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Random Member From Set `` Reads a random value from the set stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SRANDMEMBER

x

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Range From List `` Returns the specified range of elements from an existing list. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key of the list from which to return elements

x

start

String

Zero-based index at which the range starts. A negative value indicates that the offset starts at the end of the list.

x

stop

String

Zero-based index at which the range ends. A negative value indicates that the offset starts at the end of the list.

x

Target Variable

String

Name of a variable that stores the operation’s output.

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Set `` Set the key to hold the payload. If the key already holds a value, it is overwritten, regardless of its type as long as ifNotExists is `false`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key used to store payload

x

Value

String

The value to set.

#[payload]

Expire

Number

Set a timeout on the specified key in seconds. After the timeout the key is automatically deleted by the server. A key with an associated timeout is said to be volatile in Redis terminology.

If Not Exists

Boolean

If true, then execute SETNX on the Redis server, otherwise execute SET.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Set In Hash `` Set the specified hash field to the message payload. If the key does not exist, a new key holding a hash is created as long as ifNotExists is true. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HSET

x

Value

String

The value to set.

#[payload]

Field

String

Field to use for HSET

If Not Exists

Boolean

If true execute HSETNX, otherwise HSET.

false

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Trim From List `` Modify an existing list so that it contains only the specified range of elements. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key of the list to modify

x

start

String

Zero-based index at which the range starts. A negative value indicates that the offset starts at the end of the list.

x

stop

String

Zero-based index at which the range ends. A negative value indicates that the offset starts at the end of the list.

x

Target Variable

String

Name of a variable that stores the operation’s output.

Target Value

String

Expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ## Types ### TLS Configures TLS to provide secure communications for the Mule app.
FieldTypeDescriptionDefault ValueRequired

Enabled Protocols

String

A comma-separated list of protocols enabled for this context.

Enabled Cipher Suites

String

A comma-separated list of cipher suites enabled for this context.

Trust Store

Configures the TLS truststore.

Key Store

Configures the TLS keystore.

Revocation Check

### Truststore Configures the truststore for TLS.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the truststore. Mule resolves the path relative to the current classpath and file system.

Password

String

Password used to protect the truststore.

Type

String

Type of store.

Algorithm

String

Encryption algorithm that the truststore uses.

Insecure

Boolean

If true, Mule stops performing certificate validations. Setting this to true can make connections vulnerable to attacks.

### Keystore Configures the keystore for the TLS protocol. The keystore you generate contains a private key and a public certificate.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the keystore. Mule resolves the path relative to the current classpath and file system.

Type

String

Type of store.

Alias

String

Alias of the key to use when the keystore contains multiple private keys. By default, Mule uses the first key in the file.

Key Password

String

Password used to protect the private key.

Password

String

Password used to protect the keystore.

Algorithm

String

Encryption algorithm that the keystore uses.

### Standard Revocation Check Configures standard revocation checks for TLS certificates.
FieldTypeDescriptionDefault ValueRequired

Only End Entities

Boolean

Which elements to verify in the certificate chain:

* true

Verify only the last element in the certificate chain.

* false

Verify all elements in the certificate chain.

Prefer Crls

Boolean

How to check certificate validity:

* true

Check the Certification Revocation List (CRL) for certificate validity.

* false

Use the Online Certificate Status Protocol (OCSP) to check certificate validity.

No Fallback

Boolean

Whether to use the secondary method to check certificate validity:

* true

Use the method that wasn’t specified in the Prefer Crls field (the secondary method) to check certificate validity.

* false

Do not use the secondary method to check certificate validity.

Soft Fail

Boolean

What to do if the revocation server can’t be reached or is busy:

* true

Avoid verification failure.

* false

Allow the verification to fail.

### Custom OCSP Responder Configures a custom OCSP responder for certification revocation checks.
FieldTypeDescriptionDefault ValueRequired

Url

String

URL of the OCSP responder.

Cert Alias

String

Alias of the signing certificate for the OCSP response. If specified, the alias must be in the truststore.

### CRL File Specifies the location of the certification revocation list (CRL) file.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the CRL file.

### Reconnection Configures a reconnection strategy for an operation.
FieldTypeDescriptionDefault ValueRequired

Fails Deployment

Boolean

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Reconnection Strategy

Reconnection strategy to use.

### Reconnect
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often in milliseconds to reconnect.

Count

Number

How many reconnection attempts to make.

### Reconnect Forever
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often in milliseconds to reconnect.

### Expiration Policy Configures an expiration policy strategy.
FieldTypeDescriptionDefault ValueRequired

Max Idle Time

Number

Configures the maximum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Max Idle Time field.

### Subscribe Channel Attributes
FieldTypeDescriptionDefault ValueRequired

Channel

String

### Repeatable In Memory Stream Configures the in-memory streaming strategy by which the request fails if the data exceeds the MAX buffer size. Always run performance tests to find the optimal buffer size for your specific use case.
FieldTypeDescriptionDefault ValueRequired

Initial Buffer Size

Number

Initial amount of memory to allocate to the data stream. If the streamed data exceeds this value, the buffer expands by Buffer Size Increment, with an upper limit of Max In Memory Size value.

Buffer Size Increment

Number

This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full.

Max Buffer Size

Number

Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a STREAM_MAXIMUM_SIZE_EXCEEDED error. A value of less than or equal to 0 means no limit.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit for the Initial Buffer Size, Buffer Size Increment, and Buffer Unit fields.

### Repeatable File Store Stream Configures the repeatable file-store streaming strategy by which Mule keeps a portion of the stream content in memory. If the stream content is larger than the configured buffer size, Mule backs up the buffer’s content to disk and then clears the memory.
FieldTypeDescriptionDefault ValueRequired

In Memory Size

Number

Maximum amount of memory that the stream can use for data. If the amount of memory exceeds this value, Mule buffers the content to disk. To optimize performance:

* Configure a larger buffer size to avoid the number of times Mule needs to write the buffer on disk. This increases performance, but it also limits the number of concurrent requests your application can process, because it requires additional memory.

* Configure a smaller buffer size to decrease memory load at the expense of response time.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit for the In Memory Size field.

### Non-repeatable Stream Disables the repeatable stream functionality and use non-repeatable streams to have less performance overhead, memory use, and cost. ### Redelivery Policy Configures the redelivery policy for executing requests that generate errors. You can add a redelivery policy to any source in a flow.
FieldTypeDescriptionDefault ValueRequired

Max Redelivery Count

Number

Maximum number of times that a redelivered request can be processed unsuccessfully before returning a REDELIVERY_EXHAUSTED error.

Use Secure Hash

Boolean

If true, Mule uses a secure hash algorithm to identify a redelivered message.

Message Digest Algorithm

String

Secure hashing algorithm to use if the Use Secure Hash field is true. If the payload of the message is a Java object, Mule ignores this value and returns the value that the payload’s hashCode() returned.

Id Expression

String

One or more expressions that determine when a message was redelivered. You can set this property only if the Use Secure Hash field is false.

Object Store

Object Store

Configures the object store that stores the redelivery counter for each message.

## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.6 --- # Redis Connector 5.6 XML and Maven Support > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Studio XML editor or from a text editor, you can get access to the connector in your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file. When you install the connector in Studio, Studio automatically populates the XML code with the connector’s namespace and schema location. It also adds a dependency to the `pom.xml` file. ## Add a Namespace for the Connector Paste the following code inside the `` tag of the header of your configuration XML: ```xml http://www.mulesoft.org/schema/mule/redis http://www.mulesoft.org/schema/mule/redis/current/mule-redis.xsd"> ``` This example shows how the namespace statements are placed in the `` XML block: ```xml ``` ## Add a POM File Dependency The Apache Maven `pom.xml` file generated by Anypoint Studio contains dependencies for a Mule app. If you code a Mule app manually, include this XML snippet in your `pom.xml` file to enable access to this connector: ```xml com.mulesoft.connectors mule-redis-connector x.x.x mule-plugin ``` Replace `x.x.x` with the version that corresponds to the connector you are using. To obtain the most up-to-date `pom.xml` file information: 1. Go to [Anypoint Exchange](https://www.mulesoft.com/exchange/). 2. In Exchange, click **Login** and supply your Anypoint Platform username and password. 3. In Exchange, search for `redis`. 4. Select the connector. 5. Click **Dependency Snippets** near the upper right of the screen. ## Next After completing your namespace and `pom.xml` file, you can try the Redis [Examples](https://docs.mulesoft.com/redis-connector/5.6/redis-connector-examples). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.7 --- # Redis Connector 5.7 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Remote Dictionary Server (Redis Connector) is an open source, in-memory data structure store used to cache user profiles, create leader boards, track real-time activities on a website, and filter spam. You can use Redis Connector as a message queue, custom object store, and more. ## Before You Begin To use this connector, you must be familiar with: - The Redis API - Anypoint Connectors - Mule runtime engine (Mule) - Elements in a Mule flow - Global elements - How to create a Mule app using Anypoint Studio Before creating an app, you must have access to the Redis target resource. ## Connection Types > [!NOTE] Starting with Redis Connector 5.7, in addition to password-based authentication, the > connector supports ACL-based authentication for Redis 6 and later. Set the **Username** field in > the connection configuration to authenticate using the `AUTH ` form. When the > **Username** field is empty, the connector falls back to the legacy `AUTH ` path, which > remains fully backward compatible. Redis Connector uses the following connection types: - Clustered - NonClustered - Sentinel ## Next Step After you complete the prerequisites and experiment with examples, you are ready to create an app and configure the connector using [Anypoint Studio](https://docs.mulesoft.com/redis-connector/5.7/redis-connector-studio). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Use Exchange to Discover Connectors, Templates, and Examples](https://docs.mulesoft.com/connectors/introduction/intro-use-exchange) - [Redis in Anypoint Exchange](https://www.mulesoft.com/exchange/com.mulesoft.connectors/mule-redis-connector/) - [Redis in EU Anypoint Exchange](https://eu1.anypoint.mulesoft.com/exchange/com.mulesoft.connectors/mule-redis-connector/) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.7 --- # Redis Connector 5.7 Additional Configuration Information > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Redis Connector contributes an object store implementation. Although Redis offers flexible eviction and persistence, you must understand how the Mule Redis-backed object store is designed to work when Redis is shared across multiple applications or systems. Learn key design constraints, eviction behavior, and best practices for using Redis as an object store in Mule applications, with a focus on avoiding deserialization and eviction-related failures. ## Redis as a Mule Object Store When Redis is configured as an object store in Mule: - Mule serializes payloads before storing them in Redis. - Object Store operations (retrieve, remove, expire) require successful deserialization of stored values. As a result, the Redis object store is designed to manage only entries that it created and can deserialize. ## Common Deployment Patterns In some architectures, Redis is deployed as a shared service and accessed by: - Multiple Mule applications - External (non-Mule) applications - Operational or administrative scripts that insert or delete keys This pattern is valid for Redis itself but introduces important considerations when Redis is used specifically as a Mule object store. ## Examples of Object Store Behavior Here are some scenarios of how the Redis object store behaves when Redis is shared across multiple applications or systems. ### In-Memory Object Store per Application ![App A and App B, each connecting to its own cloud service and dedicated database to store unique access and refresh tokens](/mulesoft/current/en-us/redis-connector/5.7/_images/redis-scenario-1.png) Setup - Application A and Application B each use an in-memory object store. Outcome - Each application maintains its own isolated store. - No key collisions or deserialization issues occur. - Expiration and invalidation are fully controlled per application. This is the safest and most isolated configuration. ### Shared External Object Store (Not Redis) ![App A and App B sharing a single database that stores multiple sets of access and refresh tokens](/mulesoft/current/en-us/redis-connector/5.7/_images/redis-scenario-2.png) Setup - Application A and Application B use a common external object store. - Identical object IDs (for example, access\_token) are used. Outcome - Redis object store implementation prevents overwriting entries created by another application. - This behavior is intentional to prevent data corruption. Cross-application data ownership is restricted by design. ### Redis as a Shared External Object Store ![App A and App B both connecting to a centralized Redis database while also maintaining individual connections to Salesforce and ServiceNow](/mulesoft/current/en-us/redis-connector/5.7/_images/redis-scenario-3.png) Setup - Redis is configured as a shared external object store. - Mule Application A, Application B, and external systems write to the same Redis instance. - Stored data includes: - Java-serialized objects (via Mule object store) - Plain text or JSON (via direct Redis operations) Outcome - During eviction or expiration, the Mule object store might encounter entries it can’t deserialize. - This can result in errors such as: ```text org.mule.runtime.api.store.ObjectStoreException: Could not deserialize object Caused by: java.lang.ClassNotFoundException ``` Eviction or cleanup fails when Redis contains entries not owned by the current application or classloader. ## Expectation vs. Actual Behavior
ExpectationActual Behavior

Redis object store can be freely shared across applications.

Each application can only deserialize objects created within its own classloader.

Expiration task cleans all excess entries.

Expiration fails when encountering unknown or incompatible entries.

Non-Mule data can coexist in Redis.

Non-serialized data can cause object store failures.

Cache Scope can be invalidated across applications.

Cache invalidation is application-bound.

## Why This Behavior Is by Design The Redis object store follows strict safety and isolation principles:
Design PrincipleExplanation

Data Ownership

Manages only data that the object store owns

Data Integrity

Prevents accidental deletion of external or foreign data

Classloader Isolation

Deserializes objects only from its own Mule application

Fail-Safe Operation

Fails safely instead of performing destructive deletes

This ensures predictable behavior and avoids unintended side effects in shared environments. ## Redis Eviction and Mule Object Store Redis eviction policies operate at the Redis level, not at the Mule object store level. Mule object store expiration deserializes values even during expiration. As a result, Mule object store expiration can fail if incompatible entries exist. ## Recommended Best Practices - Separate Object Store and Generic Redis Usage - Use object store APIs only for Mule-managed, serialized data stored in Redis object store. - Use Redis Connector operations for plain text, JSON, or external data. - Namespace Keys Explicitly - For shared Redis object store, ensure object store keys don’t overlap with externally managed Redis keys. --- product: Redis Connector version: 5.7 --- # Redis Connector 5.7 Examples > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The following examples show how to use Redis Connector to set a key value on the Redis server and how to use Redis Connector as a custom object store in a Mule app. ## Set a Key Value on the Redis Server The following screenshot shows the flow for this example: ![Studio flow with Listener, Set, and Set Payload](/mulesoft/current/en-us/redis-connector/5.7/_images/redis-set-raw-flow.png) To use Anypoint Studio to set a key value on the Redis server: 1. Create a new Mule project by clicking **File** > **New** > **Mule Project**. 2. Enter a name for the new project and click **Finish**. 3. In the **Mule Palette** view, select **HTTP** > **Listener** and drag it to the Studio canvas. HTTP Listener is the entry point for the flow and provides the key and its value. 4. Click the plus sign (+) next to the **Connector Configuration** field. 5. Leave the default configuration and click **OK**. 6. Set the **Path** field to `/`. 7. In the **Mule Palette** view, search for `redis` and drag the **Set** operation to the right of **Listener**. The **Set** operation sends data to the Redis server. 8. Set the properties for the **Set** operation as follows: - Set the **Display Name** field to `Set value for key into Redis`. - Set the **Key** field to `#[payload.key]`. - Set the **Value** field to `#[payload.value]`: ![Set operation properties window on General tab](/mulesoft/current/en-us/redis-connector/5.7/_images/redis-set-config.png) 9. In the **Mule Palette** view, search for `payload` and drag the **Set Payload** component to the right of **Set value for key into Redis** on the Studio canvas. The **Set Payload** component creates the response for the incoming HTTP request. 10. Set the **Set Payload** properties as follows: - Set the **Display Name** field to `Set value response`. - Set the **Value** field to `Successfully set value: #[payload.value] to key: #[payload.key]`: ![Set Payload properties window on General tab](/mulesoft/current/en-us/redis-connector/5.7/_images/redis-set-response-config.png) 11. Save your changes and deploy the app by right-clicking the Studio canvas and selecting **Run project **. 12. When the app is running, use an HTTP client app to send a POST request to `localhost:8081/` with content-type `application/x-www-form-urlencoded` and a body in `url-encoded` format. The request body should contain a key and value: `curl -X POST -d "key=test-key" -d "value=test-value" localhost:8081/` The XML for this example should look like this: ```text ​ ``` ## Use Redis Connector as a Custom Object Store In Studio to configure Redis Connector as a custom object store in a Mule app: 1. Add the Redis namespace to the `` element: ```none xmlns:redis="http://www.mulesoft.org/schema/mule/redis" ``` 2. Add the location of the Redis schema referred to by the Redis namespace: ```text http://www.mulesoft.org/schema/mule/redis http://www.mulesoft.org/schema/mule/redis/current/mule-redis.xsd ``` 3. Add the HTTP namespace to the `` element: ```none xmlns:http="http://www.mulesoft.org/schema/mule/http" ``` 4. Add the location of the HTTP schema referred to by the HTTP namespace: ```text http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd ``` 5. Add the object store namespace to the `` element: ```none xmlns:os="http://www.mulesoft.org/schema/mule/os" ``` 6. Add the location of the object store schema referred to by the object store’s namespace: ```text http://www.mulesoft.org/schema/mule/os http://www.mulesoft.org/schema/mule/os/current/mule-os.xsd ``` 7. Using the Studio XML editor, add an `` element to your project and configure it to contain a Redis connection type (`clustered-connection` or `nonclustered-connection`). ```xml ``` 8. Add an `` element to your project and configure it to reference the configuration created previously: ```xml ``` 9. Add an `` element to your project and configure its attributes: ```xml ``` 10. Add an empty `` element to your project: ```xml < name="set-flow"> ``` 11. Within the `` element, add an `` element: ```xml ``` 12. Within the `` element, add an `` element after the `` element and configure `` to use the object store created previously: ```xml ``` When you’re done, the XML file should look like this: ```xml ​ ​ ​ ​ ​ ``` ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.7 --- # Redis Connector 5.7 Reference > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. > [!NOTE] You can set configurations in Expression mode, except when Redis Connector is used in > conjunction with Object Store Connector, which does not support Expression mode. Starting with Redis Connector 5.4.5, Mule apps that use an Object Store **Entry TTL** exceeding 24 days now observe that the TTL for new keys is set to the correct values. ## Redis Configuration
NameTypeDescriptionDefault ValueRequired

Name

String

The name for this configuration. Connectors reference the configuration with this name.

x

Connection

The connection types to provide to this configuration.

x

Name

String

The ID used to reference this configuration.

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the instance expires at the exact moment that it becomes eligible. Mule purges the instances as appropriate.

## Connection Types > [!NOTE] Starting with Redis Connector 5.7, in addition to password-based authentication, the > connector supports ACL-based authentication for Redis 6 and later. Set the **Username** field in > the connection configuration to authenticate using the `AUTH ` form. When the > **Username** field is empty, the connector falls back to the legacy `AUTH ` path, which > remains fully backward compatible. ### Clustered > [!NOTE] Redis Connector does not support clustered connections on Redis Enterprise Active-Active > databases. To connect to one of the Redis Enterprise active-active clusters, non-clustered > connection should be used in the connector. However, the connection is only made to the specified > node. > > Redis Connector does not support clustered sharded connections. #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance Connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Username

String

Redis ACL username. Set this to authenticate against an ACL-enabled Redis (Redis 6+) using the AUTH <username> <password> form. When left empty, the connector falls back to the legacy AUTH <password> path (the default user), which remains fully backward compatible.

Password

String

Redis password. Set if the Redis server requires authentication.

Entry TTL

Number

The default time to live to set on keys stored for the connector.

Cluster Hosts

String

Redis cluster hosts separated by commas and having the format host:port. Use this field when you want to access your Redis cluster through the connector.

x

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

### NonClustered #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance Connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Username

String

Redis ACL username. Set this to authenticate against an ACL-enabled Redis (Redis 6+) using the AUTH <username> <password> form. When left empty, the connector falls back to the legacy AUTH <password> path (the default user), which remains fully backward compatible.

Password

String

Redis password. Set this if the server requires authentication.

Entry TTL

Number

The default time to live to be set on keys stored for the connector.

Host

String

Redis host. Use this field when you want to access you Redis server that is not part of a cluster through connector.

localhost

Port

Number

Redis port. The port on which your non cluster server is running.

6379

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

### Sentinel Sentinel provides a high-availability solution in case of failure on your Redis cluster. #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Username

String

Redis ACL username. Set this to authenticate against an ACL-enabled Redis (Redis 6+) using the AUTH <username> <password> form. When left empty, the connector falls back to the legacy AUTH <password> path (the default user), which remains fully backward compatible.

Password

String

Redis password. Set this if the server requires authentication.

Entry TTL

Number

The default time to live to be set on keys stored for the connector.

Sentinels Hosts

String

Set of sentinel addresses that are monitoring the master host to which the connector will connect.

x

Master Name

String

Redis master name. The name of the master for which the sentinels will return the current address.

Sentinel Username

String

Sentinel ACL username. Set this to authenticate to the sentinel processes with the AUTH <username> <password> form (Redis 6.0+ sentinel ACL). Independent of the master username: a deployment may use one identity to reach the master and another for the sentinels. When left empty, the connector falls back to the legacy AUTH <sentinelPassword> path on the sentinel channel, which remains fully backward compatible.

Sentinel Password

String

Sentinel password. Set if the sentinel servers require authentication.

Index

Number

The index of the database that the pool will use.

Sentinel Connection Timeout

Number

Sentinel connection timeout value.

2000

Sentinel Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for sentinel connection timeout.

MILLISECONDS

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

## Sources Supported source: - [Subscribe](#subscribe) ### Subscribe `` Message source that subscribes to one or more Redis Pub/Sub channels or glob patterns and emits each received message into the flow. The message payload is the channel message, and the SubscribeChannelAttributes carry the originating channel name. The subscription is established on start and released on stop. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Channels

Array of String

A list of channel names or globbing patterns.

x

Output Mime Type

String

The MIME type of the payload that this source outputs.

Primary Node Only

Boolean

Whether this source should be executed on the primary node only when running in a cluster.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Redelivery Policy

Defines a policy for processing the redelivery of the same message.

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

Attributes Type

### For Configurations - [Redis Configuration](#redis) ## Operations Supported operations: - [Add To Set](#addToSet) - [Add To Sorted Set](#addToSortedSet) - [Decrement](#decrement) - [Del](#del) - [Exists](#exists) - [Expire](#expire) - [Expire At](#expireAt) - [Get](#get) - [Get All From Hash](#getAllFromHash) - [Get From Hash](#getFromHash) - [Get Range By Index](#getRangeByIndex) - [Get Range By Score](#getRangeByScore) - [Get TTL](#getTtl) - [Increment](#increment) - [Increment Hash](#incrementHash) - [Increment Sorted Set](#incrementSortedSet) - [Persist](#persist) - [Pop From List](#popFromList) - [Pop From Set](#popFromSet) - [Publish](#publish) - [Push To List](#pushToList) - [Random Member From Set](#randomMemberFromSet) - [Range From List](#rangeFromList) - [Set](#set) - [Set In Hash](#setInHash) - [Trim From List](#trimFromList) ### Add To Set `` Add the message payload to the set stored at the specified key. If the key does not exist, a new key holding a set is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SADD

x

Value

String

The value to set.

#[payload]

Must Succeed

Boolean

If true, ensures that adding to the set is successful (that is, no pre-existing identical value is in the set)

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Add To Sorted Set `` Add the message payload with the desired score to the sorted set stored at the specified key. If the key does not exist, a new key holding a sorted set is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZADD

x

Value

String

The value to set.

#[payload]

Score

Number

Score to use for the value

x

Must Succeed

Boolean

If true, ensures that adding to the set is successful (that is, no pre-existing identical value is in the set)

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Decrement `` Decrements the number stored at key by step. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains data that cannot be represented as integer. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for DECR.

x

Step

Number

Step used for the increment.

1

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Del `` Remove the specified key. A key is ignored if it does not exist. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for DEL

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Exists `` Test if the specified key exists. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for EXISTS

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Expire `` Set a timeout on the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Seconds

Number

The time to live in seconds.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Expire At `` Set a timeout in the form of a UNIX timestamp (number of seconds elapsed since 1 Jan 1970) on the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Unix Time

Number

The UNIX timestamp in seconds.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get `` Get the value of the specified key. If the key does not exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for GET

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get All From Hash `` Get all fields and values of the hash stored at the specified key. If the field or the hash don’t exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGETALL

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Object

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get From Hash `` Get the value stored at the specified field in the hash at the specified key. If the field or the hash don’t exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGET

x

Field

String

Field to use for HGET

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get Range By Index `` Retrieve a range of values from the sorted set stored at the specified key. The range of values is defined by indices in the sorted set and sorted as desired. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZRANGE/ZREVRANGE

x

Start

Number

Range start index

x

End

Number

Range end index

x

Ascending Order

Boolean

Index order for sorting the range. If the parameter is set to true, the range is sorted in ascending order. If the parameter is set to false, the range is sorted in descending order.

true

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get Range By Score `` Retrieve a range of values from the sorted set stored at the specified key. The range of values is defined by scores in the sorted set and sorted as desired. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZRANGEBYSCORE and ZREVRANGEBYSCORE

x

Min

Number

Range start score

x

Max

Number

Range end score

x

Ascending Order

Boolean

Score order for sorting the range. If the parameter is set to true, the range is sorted in ascending order. If the parameter is set to false, the range is sorted in descending order.

true

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get TTL `` Get the remaining time to live of a volatile key, in seconds. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment `` Increments the number stored at key by step. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains data that can not be represented as integer. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for INCR.

x

Step

Number

Step used for the increment.

1

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment Hash `` Increments the number stored at field in the hash stored at key by increment. If the key does not exist, a new key holding a hash is created. If field does not exist, the value is set to `0` before the operation is performed. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGET

x

Field

String

Field to use for HGET

x

Step

Number

Step used for the increment.

1

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment Sorted Set `` Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was `0.0`). If the key does not exist, a new sorted set with the specified member as its sole member is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Value

String

The value to set.

#[payload]

Step

Number

The step to use to increment the score.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Persist `` Undo an expire or expireAt, turning the volatile key into a normal key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Pop From List `` Pop a value from the desired side of the list stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for LPOP/RPOP

x

Pop Left

boolean

The side from which to pop the value. If the parameter is true, the value is popped from the left side. If the parameter is false, the value is popped from the right side.

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Pop From Set `` Pops a random value from the set stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SPOP

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Publish `` Publish the message payload to the specified channel. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Channel

String

Destination of the published message

x

Message

String

The message to publish.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Push To List `` Push the message payload to the desired side (LEFT or RIGHT) of the list stored at the specified key. If the key does not exist, a new key holding a list is created as long as ifExists is `false`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for LPUSH or RPUSH, or LPUSHX or RPUSHX.

x

Value

String

The value to push.

#[payload]

Push Left

Boolean

Side that receives the pushed payload. If the parameter is true, push the payload on the left side. If the parameter is false, push the payload on the right side.

false

If Exists

Boolean

If the parameter is true, execute LPUSHX or RPUSHX. If the parameter is false, execute LPUSH or RPUSH.

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Random Member From Set `` Reads a random value from the set stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SRANDMEMBER

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Range From List `` Returns the specified range of elements from an existing list. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key of the list from which to return elements

x

Start

Number

Zero-based index at which the range starts. A negative value indicates that the offset starts at the end of the list.

x

Stop

Number

Zero-based index at which the range ends. A negative value indicates that the offset starts at the end of the list.

x

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output.

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Set `` Set the key to hold the payload. If the key already holds a value, it is overwritten, regardless of its type as long as ifNotExists is `false`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key used to store payload

x

Value

String

The value to set.

#[payload]

Expire

Number

Set a timeout on the specified key in seconds. After the timeout the key is automatically deleted by the server. A key with an associated timeout is said to be volatile in Redis terminology.

If Not Exists

Boolean

If true, then execute SETNX on the Redis server, otherwise execute SET.

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Set In Hash `` Set the specified hash field to the message payload. If the key does not exist, a new key holding a hash is created as long as ifNotExists is true. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HSET

x

Value

String

The value to set.

#[payload]

Field

String

Field to use for HSET

If Not Exists

Boolean

If true execute HSETNX, otherwise HSET.

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Trim From List `` Modify an existing list so that it contains only the specified range of elements. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key of the list to modify

x

Start

Number

Zero-based index at which the range starts. A negative value indicates that the offset starts at the end of the list.

x

Stop

Number

Zero-based index at which the range ends. A negative value indicates that the offset starts at the end of the list.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output.

Target Value

String

Expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ## Types ### TLS Configures TLS to provide secure communications for the Mule app.
FieldTypeDescriptionDefault ValueRequired

Enabled Protocols

String

A comma-separated list of protocols enabled for this context.

Enabled Cipher Suites

String

A comma-separated list of cipher suites enabled for this context.

Trust Store

Configures the TLS truststore.

Key Store

Configures the TLS keystore.

Revocation Check

### Truststore Configures the truststore for TLS.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the truststore. Mule resolves the path relative to the current classpath and file system.

Password

String

Password used to protect the truststore.

Type

String

Type of store.

Algorithm

String

Encryption algorithm that the truststore uses.

Insecure

Boolean

If true, Mule stops performing certificate validations. Setting this to true can make connections vulnerable to attacks.

### Keystore Configures the keystore for the TLS protocol. The keystore you generate contains a private key and a public certificate.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the keystore. Mule resolves the path relative to the current classpath and file system.

Type

String

Type of store.

Alias

String

Alias of the key to use when the keystore contains multiple private keys. By default, Mule uses the first key in the file.

Key Password

String

Password used to protect the private key.

Password

String

Password used to protect the keystore.

Algorithm

String

Encryption algorithm that the keystore uses.

### Standard Revocation Check Configures standard revocation checks for TLS certificates.
FieldTypeDescriptionDefault ValueRequired

Only End Entities

Boolean

Which elements to verify in the certificate chain:

* true

Verify only the last element in the certificate chain.

* false

Verify all elements in the certificate chain.

Prefer Crls

Boolean

How to check certificate validity:

* true

Check the Certification Revocation List (CRL) for certificate validity.

* false

Use the Online Certificate Status Protocol (OCSP) to check certificate validity.

No Fallback

Boolean

Whether to use the secondary method to check certificate validity:

* true

Use the method that wasn’t specified in the Prefer Crls field (the secondary method) to check certificate validity.

* false

Do not use the secondary method to check certificate validity.

Soft Fail

Boolean

What to do if the revocation server can’t be reached or is busy:

* true

Avoid verification failure.

* false

Allow the verification to fail.

### Custom OCSP Responder Configures a custom OCSP responder for certification revocation checks.
FieldTypeDescriptionDefault ValueRequired

Url

String

URL of the OCSP responder.

Cert Alias

String

Alias of the signing certificate for the OCSP response. If specified, the alias must be in the truststore.

### CRL File Specifies the location of the certification revocation list (CRL) file.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the CRL file.

### Reconnection Configures a reconnection strategy for an operation.
FieldTypeDescriptionDefault ValueRequired

Fails Deployment

Boolean

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Reconnection Strategy

Reconnection strategy to use.

### Reconnect Configures a standard reconnection strategy, which specifies how often to reconnect and how many reconnection attempts the connector source or operation can make.
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often to attempt to reconnect, in milliseconds.

Blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread.

Count

Number

How many reconnection attempts the Mule app can make.

### Reconnect Forever Configures a forever reconnection strategy by which the connector source or operation attempts to reconnect at a specified frequency for as long as the Mule app runs.
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often to attempt to reconnect, in milliseconds.

Blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread.

### Expiration Policy Configures an expiration policy strategy.
FieldTypeDescriptionDefault ValueRequired

Max Idle Time

Number

Configures the maximum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Max Idle Time field.

### Subscribe Channel Attributes
FieldTypeDescriptionDefault ValueRequired

Channel

String

### Repeatable In Memory Stream Configures the in-memory streaming strategy by which the request fails if the data exceeds the MAX buffer size. Always run performance tests to find the optimal buffer size for your specific use case.
FieldTypeDescriptionDefault ValueRequired

Initial Buffer Size

Number

Initial amount of memory to allocate to the data stream. If the streamed data exceeds this value, the buffer expands by Buffer Size Increment, with an upper limit of Max In Memory Size value.

Buffer Size Increment

Number

This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full.

Max Buffer Size

Number

Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a STREAM_MAXIMUM_SIZE_EXCEEDED error. A value of less than or equal to 0 means no limit.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit for the Initial Buffer Size, Buffer Size Increment, and Buffer Unit fields.

### Repeatable File Store Stream Configures the repeatable file-store streaming strategy by which Mule keeps a portion of the stream content in memory. If the stream content is larger than the configured buffer size, Mule backs up the buffer’s content to disk and then clears the memory.
FieldTypeDescriptionDefault ValueRequired

In Memory Size

Number

Maximum amount of memory that the stream can use for data. If the amount of memory exceeds this value, Mule buffers the content to disk. To optimize performance:

* Configure a larger buffer size to avoid the number of times Mule needs to write the buffer on disk. This increases performance, but it also limits the number of concurrent requests your application can process, because it requires additional memory.

* Configure a smaller buffer size to decrease memory load at the expense of response time.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit for the In Memory Size field.

### Non-repeatable Stream Disables the repeatable stream functionality and use non-repeatable streams to have less performance overhead, memory use, and cost. ### Redelivery Policy Configures the redelivery policy for executing requests that generate errors. You can add a redelivery policy to any source in a flow.
FieldTypeDescriptionDefault ValueRequired

Max Redelivery Count

Number

Maximum number of times that a redelivered request can be processed unsuccessfully before returning a REDELIVERY_EXHAUSTED error.

Message Digest Algorithm

String

Secure hashing algorithm to use if the Use Secure Hash field is true. If the payload of the message is a Java object, Mule ignores this value and returns the value that the payload’s hashCode() returned.

Message Identifier

One or more expressions that determine if a message was redelivered. This property can be set only if the Use Secure Hash field is false.

Object Store

Object Store

Configures the object store that stores the redelivery counter for each message.

### Redelivery Policy Message Identifier Configures how to identify a redelivered message and how to find out when the message was redelivered.
FieldTypeDescriptionDefault ValueRequired

Use Secure Hash

Boolean

If true, Mule uses a secure hash algorithm to identify a redelivered message.

Id Expression

String

One or more expressions that determine when a message was redelivered. You can set this property only if the Use Secure Hash field is false.

### Error Mapping
FieldTypeDescriptionDefault ValueRequired

Source

Enumeration, one of:

  • ANY

  • REDELIVERY_EXHAUSTED

  • TRANSFORMATION

  • EXPRESSION

  • SECURITY

  • CLIENT_SECURITY

  • SERVER_SECURITY

  • ROUTING

  • CONNECTIVITY

  • RETRY_EXHAUSTED

  • TIMEOUT

Target

String

x

## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.7 --- # Redis Connector 5.7 XML and Maven Support > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Studio XML editor or from a text editor, you can get access to the connector in your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file. When you install the connector in Studio, Studio automatically populates the XML code with the connector’s namespace and schema location. It also adds a dependency to the `pom.xml` file. ## Add a Namespace for the Connector Paste the following code inside the `` tag of the header of your configuration XML: ```xml http://www.mulesoft.org/schema/mule/redis http://www.mulesoft.org/schema/mule/redis/current/mule-redis.xsd"> ``` This example shows how the namespace statements are placed in the `` XML block: ```xml ``` ## Add a POM File Dependency The Apache Maven `pom.xml` file generated by Anypoint Studio contains dependencies for a Mule app. If you code a Mule app manually, include this XML snippet in your `pom.xml` file to enable access to this connector: ```xml com.mulesoft.connectors mule-redis-connector x.x.x mule-plugin ``` Replace `x.x.x` with the version that corresponds to the connector you are using. To obtain the most up-to-date `pom.xml` file information: 1. Go to [Anypoint Exchange](https://www.mulesoft.com/exchange/). 2. In Exchange, click **Login** and supply your Anypoint Platform username and password. 3. In Exchange, search for `redis`. 4. Select the connector. 5. Click **Dependency Snippets** near the upper right of the screen. ## Next After completing your namespace and `pom.xml` file, you can try the Redis [Examples](https://docs.mulesoft.com/redis-connector/5.7/redis-connector-examples). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.8 is-latest-version: true --- # Redis Connector 5.8 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Anypoint Connector for Remote Dictionary Server (Redis Connector) is an open source, in-memory data structure store used to cache user profiles, create leader boards, track real-time activities on a website, and filter spam. You can use Redis Connector as a message queue, custom object store, and more. ## Before You Begin To use this connector, you must be familiar with: - The Redis API - Anypoint Connectors - Mule runtime engine (Mule) - Elements in a Mule flow - Global elements - How to create a Mule app using Anypoint Studio Before creating an app, you must have access to the Redis target resource. ## Connection Types > [!NOTE] Starting with Redis Connector 5.7, in addition to password-based authentication, the > connector supports ACL-based authentication for Redis 6 and later. Set the **Username** field in > the connection configuration to authenticate using the `AUTH ` form. When the > **Username** field is empty, the connector falls back to the legacy `AUTH ` path, which > remains fully backward compatible. Redis Connector uses the following connection types: - Clustered - NonClustered - Sentinel ## Next Step After you complete the prerequisites and experiment with examples, you are ready to create an app and configure the connector using [Anypoint Studio](https://docs.mulesoft.com/redis-connector/latest/redis-connector-studio). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Use Exchange to Discover Connectors, Templates, and Examples](https://docs.mulesoft.com/connectors/introduction/intro-use-exchange) - [Redis in Anypoint Exchange](https://www.mulesoft.com/exchange/com.mulesoft.connectors/mule-redis-connector/) - [Redis in EU Anypoint Exchange](https://eu1.anypoint.mulesoft.com/exchange/com.mulesoft.connectors/mule-redis-connector/) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.8 is-latest-version: true --- # Redis Connector 5.8 Additional Configuration Information > For the full documentation index, see: https://docs.mulesoft.com/llms.txt Redis Connector contributes an object store implementation. Although Redis offers flexible eviction and persistence, you must understand how the Mule Redis-backed object store is designed to work when Redis is shared across multiple applications or systems. Learn key design constraints, eviction behavior, and best practices for using Redis as an object store in Mule applications, with a focus on avoiding deserialization and eviction-related failures. ## Redis as a Mule Object Store When Redis is configured as an object store in Mule: - Mule serializes payloads before storing them in Redis. - Object Store operations (retrieve, remove, expire) require successful deserialization of stored values. As a result, the Redis object store is designed to manage only entries that it created and can deserialize. ## Common Deployment Patterns In some architectures, Redis is deployed as a shared service and accessed by: - Multiple Mule applications - External (non-Mule) applications - Operational or administrative scripts that insert or delete keys This pattern is valid for Redis itself but introduces important considerations when Redis is used specifically as a Mule object store. ## Examples of Object Store Behavior Here are some scenarios of how the Redis object store behaves when Redis is shared across multiple applications or systems. ### In-Memory Object Store per Application ![App A and App B, each connecting to its own cloud service and dedicated database to store unique access and refresh tokens](/mulesoft/current/en-us/redis-connector/latest/_images/redis-scenario-1.png) Setup - Application A and Application B each use an in-memory object store. Outcome - Each application maintains its own isolated store. - No key collisions or deserialization issues occur. - Expiration and invalidation are fully controlled per application. This is the safest and most isolated configuration. ### Shared External Object Store (Not Redis) ![App A and App B sharing a single database that stores multiple sets of access and refresh tokens](/mulesoft/current/en-us/redis-connector/latest/_images/redis-scenario-2.png) Setup - Application A and Application B use a common external object store. - Identical object IDs (for example, access\_token) are used. Outcome - Redis object store implementation prevents overwriting entries created by another application. - This behavior is intentional to prevent data corruption. Cross-application data ownership is restricted by design. ### Redis as a Shared External Object Store ![App A and App B both connecting to a centralized Redis database while also maintaining individual connections to Salesforce and ServiceNow](/mulesoft/current/en-us/redis-connector/latest/_images/redis-scenario-3.png) Setup - Redis is configured as a shared external object store. - Mule Application A, Application B, and external systems write to the same Redis instance. - Stored data includes: - Java-serialized objects (via Mule object store) - Plain text or JSON (via direct Redis operations) Outcome - During eviction or expiration, the Mule object store might encounter entries it can’t deserialize. - This can result in errors such as: ```text org.mule.runtime.api.store.ObjectStoreException: Could not deserialize object Caused by: java.lang.ClassNotFoundException ``` Eviction or cleanup fails when Redis contains entries not owned by the current application or classloader. ## Expectation vs. Actual Behavior
ExpectationActual Behavior

Redis object store can be freely shared across applications.

Each application can only deserialize objects created within its own classloader.

Expiration task cleans all excess entries.

Expiration fails when encountering unknown or incompatible entries.

Non-Mule data can coexist in Redis.

Non-serialized data can cause object store failures.

Cache Scope can be invalidated across applications.

Cache invalidation is application-bound.

## Why This Behavior Is by Design The Redis object store follows strict safety and isolation principles:
Design PrincipleExplanation

Data Ownership

Manages only data that the object store owns

Data Integrity

Prevents accidental deletion of external or foreign data

Classloader Isolation

Deserializes objects only from its own Mule application

Fail-Safe Operation

Fails safely instead of performing destructive deletes

This ensures predictable behavior and avoids unintended side effects in shared environments. ## Redis Eviction and Mule Object Store Redis eviction policies operate at the Redis level, not at the Mule object store level. Mule object store expiration deserializes values even during expiration. As a result, Mule object store expiration can fail if incompatible entries exist. ## Recommended Best Practices - Separate Object Store and Generic Redis Usage - Use object store APIs only for Mule-managed, serialized data stored in Redis object store. - Use Redis Connector operations for plain text, JSON, or external data. - Namespace Keys Explicitly - For shared Redis object store, ensure object store keys don’t overlap with externally managed Redis keys. --- product: Redis Connector version: 5.8 is-latest-version: true --- # Redis Connector 5.8 Examples > For the full documentation index, see: https://docs.mulesoft.com/llms.txt The following examples show how to use Redis Connector to set a key value on the Redis server and how to use Redis Connector as a custom object store in a Mule app. ## Set a Key Value on the Redis Server The following screenshot shows the flow for this example: ![Studio flow with Listener, Set, and Set Payload](/mulesoft/current/en-us/redis-connector/latest/_images/redis-set-raw-flow.png) To use Anypoint Studio to set a key value on the Redis server: 1. Create a new Mule project by clicking **File** > **New** > **Mule Project**. 2. Enter a name for the new project and click **Finish**. 3. In the **Mule Palette** view, select **HTTP** > **Listener** and drag it to the Studio canvas. HTTP Listener is the entry point for the flow and provides the key and its value. 4. Click the plus sign (+) next to the **Connector Configuration** field. 5. Leave the default configuration and click **OK**. 6. Set the **Path** field to `/`. 7. In the **Mule Palette** view, search for `redis` and drag the **Set** operation to the right of **Listener**. The **Set** operation sends data to the Redis server. 8. Set the properties for the **Set** operation as follows: - Set the **Display Name** field to `Set value for key into Redis`. - Set the **Key** field to `#[payload.key]`. - Set the **Value** field to `#[payload.value]`: ![Set operation properties window on General tab](/mulesoft/current/en-us/redis-connector/latest/_images/redis-set-config.png) When **If Not Exists** is `true` and the key already exists, the **Set** operation returns null and does not change the existing value or TTL. For details, see [Set](https://docs.mulesoft.com/redis-connector/latest/redis-connector-reference#set). 9. In the **Mule Palette** view, search for `payload` and drag the **Set Payload** component to the right of **Set value for key into Redis** on the Studio canvas. The **Set Payload** component creates the response for the incoming HTTP request. 10. Set the **Set Payload** properties as follows: - Set the **Display Name** field to `Set value response`. - Set the **Value** field to `Successfully set value: #[payload.value] to key: #[payload.key]`: ![Set Payload properties window on General tab](/mulesoft/current/en-us/redis-connector/latest/_images/redis-set-response-config.png) 11. Save your changes and deploy the app by right-clicking the Studio canvas and selecting **Run project **. 12. When the app is running, use an HTTP client app to send a POST request to `localhost:8081/` with content-type `application/x-www-form-urlencoded` and a body in `url-encoded` format. The request body should contain a key and value: `curl -X POST -d "key=test-key" -d "value=test-value" localhost:8081/` The XML for this example should look like this: ```xml ``` ## Use Redis Connector as a Custom Object Store In Studio to configure Redis Connector as a custom object store in a Mule app: 1. Add the Redis namespace to the `` element: ```none xmlns:redis="http://www.mulesoft.org/schema/mule/redis" ``` 2. Add the location of the Redis schema referred to by the Redis namespace: ```text http://www.mulesoft.org/schema/mule/redis http://www.mulesoft.org/schema/mule/redis/current/mule-redis.xsd ``` 3. Add the HTTP namespace to the `` element: ```none xmlns:http="http://www.mulesoft.org/schema/mule/http" ``` 4. Add the location of the HTTP schema referred to by the HTTP namespace: ```text http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd ``` 5. Add the object store namespace to the `` element: ```none xmlns:os="http://www.mulesoft.org/schema/mule/os" ``` 6. Add the location of the object store schema referred to by the object store’s namespace: ```text http://www.mulesoft.org/schema/mule/os http://www.mulesoft.org/schema/mule/os/current/mule-os.xsd ``` 7. Using the Studio XML editor, add an `` element to your project and configure it to contain a Redis connection type (`clustered-connection` or `nonclustered-connection`). ```xml ``` 8. Add an `` element to your project and configure it to reference the configuration created previously: ```xml ``` 9. Add an `` element to your project and configure its attributes: ```xml ``` 10. Add an empty `` element to your project: ```xml ``` 11. Within the `` element, add an `` element: ```xml ``` 12. Within the `` element, add an `` element after the `` element and configure `` to use the object store created previously: ```xml ``` When you’re done, the XML file should look like this: ```xml ​ ​ ​ ​ ​ ``` ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.8 is-latest-version: true --- # Redis Connector 5.8 Reference > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. > [!NOTE] You can set configurations in Expression mode, except when Redis Connector is used in > conjunction with Object Store Connector, which does not support Expression mode. Starting with Redis Connector 5.4.5, Mule apps that use an Object Store **Entry TTL** exceeding 24 days now observe that the TTL for new keys is set to the correct values. ## Redis Configuration
NameTypeDescriptionDefault ValueRequired

Name

String

The name for this configuration. Connectors reference the configuration with this name.

x

Connection

The connection types to provide to this configuration.

x

Name

String

The ID used to reference this configuration.

x

Expiration Policy

Configures the minimum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration. This does not mean that the instance expires at the exact moment that it becomes eligible. Mule purges the instances as appropriate.

## Connection Types > [!NOTE] Starting with Redis Connector 5.7, in addition to password-based authentication, the > connector supports ACL-based authentication for Redis 6 and later. Set the **Username** field in > the connection configuration to authenticate using the `AUTH ` form. When the > **Username** field is empty, the connector falls back to the legacy `AUTH ` path, which > remains fully backward compatible. > [!NOTE] Starting with Redis Connector 5.8, the **Clustered**, **NonClustered**, and **Sentinel** > connection types include optional **Socket Timeout** and **Socket Time Unit** fields. Leave > **Socket Timeout** unset to preserve the legacy behavior where **Connection Timeout** also served > as the read timeout. ### Clustered > [!NOTE] Redis Connector does not support clustered connections on Redis Enterprise Active-Active > databases. To connect to one of the Redis Enterprise active-active clusters, non-clustered > connection should be used in the connector. However, the connection is only made to the specified > node. > > Redis Connector does not support clustered sharded connections. > [!NOTE] Starting with Redis Connector 5.8, pooling settings such as **Max Total** and **Max Wait > Millis** on the **Clustered** connection are applied to the cluster client. In Redis Connector > 5.4.6 through 5.7.0, those values were ignored and the client used Jedis defaults. #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance Connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Socket Timeout

Number

Socket (read) timeout applied to Redis command responses. This bounds how long a single blocking command waits for the server to reply, independently of the TCP connect timeout. Leave unset to preserve the legacy behavior where Connection Timeout also served as the read timeout. Existing configurations that leave this field empty keep the previous behavior.

Socket Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the socket (read) timeout. This field applies only when Socket Timeout is set.

MILLISECONDS

Username

String

Redis ACL username. Set this to authenticate against an ACL-enabled Redis (Redis 6+) using the AUTH <username> <password> form. When left empty, the connector falls back to the legacy AUTH <password> path (the default user), which remains fully backward compatible.

Password

String

Redis password. Set if the Redis server requires authentication.

Entry TTL

Number

The default time to live to set on keys stored for the connector.

Cluster Hosts

String

Redis cluster hosts separated by commas and having the format host:port. Use this field when you want to access your Redis cluster through the connector.

x

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

### NonClustered #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance Connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Socket Timeout

Number

Socket (read) timeout applied to Redis command responses. This bounds how long a single blocking command waits for the server to reply, independently of the TCP connect timeout. Leave unset to preserve the legacy behavior where Connection Timeout also served as the read timeout. Existing configurations that leave this field empty keep the previous behavior.

Socket Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the socket (read) timeout. This field applies only when Socket Timeout is set.

MILLISECONDS

Username

String

Redis ACL username. Set this to authenticate against an ACL-enabled Redis (Redis 6+) using the AUTH <username> <password> form. When left empty, the connector falls back to the legacy AUTH <password> path (the default user), which remains fully backward compatible.

Password

String

Redis password. Set this if the server requires authentication.

Entry TTL

Number

The default time to live to be set on keys stored for the connector.

Host

String

Redis host. Use this field when you want to access you Redis server that is not part of a cluster through connector.

localhost

Port

Number

Redis port. The port on which your non cluster server is running.

6379

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

### Sentinel Sentinel provides a high-availability solution in case of failure on your Redis cluster. #### Parameters
NameTypeDescriptionDefault ValueRequired

Endpoint identification algorithm

Enumeration, one of:

  • HTTPS

  • LDAPS

  • DISABLED

The endpoint identification algorithm used by clients to validate the server hostname. The default value is an empty string, which means that this functionality is disabled. Clients, including client connections created by the broker for inter-broker communication, verify that the broker hostname matches the hostname in the broker’s certificate.

DISABLED

TLS Configuration

Configures TLS. If you are running the Mule app securely by using the HTTPS protocol, you must configure TLS in the connector.

Max Total

Number

Maximum number of connections that can be in the pool at a given time

8

Max Idle

Number

Maximum number of idle connections allowed in a pool before the connections are closed

8

Min Idle

Number

Minimum number of idle connections in the pool that are ready for immediate use

0

Lifo

Boolean

If set to true, the queue is last-in first-out

true

Fairness

Boolean

If set to true, the thread that waited for the longest amount of time to connect acquires the next available connection

false

Max Wait Millis

Number

Maximum number of milliseconds the client can wait before a connection is available

-1

Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in the pool before it is evicted

1800000

Soft Min Evictable Idle Time Millis

Number

Minimum amount of time a connection can be idle in pool before it is evicted

1800000

Num Tests Per Eviction Run

Number

Number of connections to test per eviction attempt

3

Test On Create

Boolean

Whether to test the validity of the connection

false

Test On Borrow

Boolean

Whether to test the validity of the connection before it is borrowed from the pool

false

Test On Return

Boolean

Whether to test the validity of the connection before it is returned from the pool

false

Test While Idle

Boolean

Whether to enable idle resource detection

false

Time Between Eviction Runs Millis

Number

Cycle of time for idle resources detection

-1

Block When Exhausted

Boolean

Whether the client waits when the resource pool is exhausted

true

Jmx Enabled

Boolean

Enables JMX monitoring when set to true

true

Jmx Name Prefix

String

JMX name prefix used as part of the name assigned to the JMX-enabled pool

pool

Jmx Name Base

String

JMX name base used as part of the name assigned to the JMX-enabled pool

Connection Timeout

Number

Redis instance connection timeout value.

2000

Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for Redis instance connection timeout.

MILLISECONDS

Socket Timeout

Number

Socket (read) timeout applied to Redis command responses. This bounds how long a single blocking command waits for the server to reply, independently of the TCP connect timeout. Leave unset to preserve the legacy behavior where Connection Timeout also served as the read timeout. Existing configurations that leave this field empty keep the previous behavior.

Socket Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the socket (read) timeout. This field applies only when Socket Timeout is set.

MILLISECONDS

Username

String

Redis ACL username. Set this to authenticate against an ACL-enabled Redis (Redis 6+) using the AUTH <username> <password> form. When left empty, the connector falls back to the legacy AUTH <password> path (the default user), which remains fully backward compatible.

Password

String

Redis password. Set this if the server requires authentication.

Entry TTL

Number

The default time to live to be set on keys stored for the connector.

Sentinels Hosts

String

Set of sentinel addresses that are monitoring the master host to which the connector will connect.

x

Master Name

String

Redis master name. The name of the master for which the sentinels will return the current address.

Sentinel Username

String

Sentinel ACL username. Set this to authenticate to the sentinel processes with the AUTH <username> <password> form (Redis 6.2+ sentinel ACL). Independent of the master username: a deployment may use one identity to reach the master and another for the sentinels. When left empty, the connector falls back to the legacy AUTH <sentinelPassword> path on the sentinel channel, which remains fully backward compatible.

Sentinel Password

String

Sentinel password. Set if the sentinel servers require authentication.

Index

Number

The index of the database that the pool will use.

Sentinel Connection Timeout

Number

Sentinel connection timeout value.

2000

Sentinel Connection Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for sentinel connection timeout.

MILLISECONDS

Reconnection

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

## Sources Supported source: - [Subscribe](#subscribe) ### Subscribe `` Message source that subscribes to one or more Redis Pub/Sub channels or glob patterns and emits each received message into the flow. The message payload is the channel message, and the SubscribeChannelAttributes carry the originating channel name. The subscription is established on start and released on stop. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Channels

Array of String

A list of channel names or globbing patterns.

x

Output Mime Type

String

The MIME type of the payload that this source outputs.

Primary Node Only

Boolean

Whether this source should be executed on the primary node only when running in a cluster.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Streaming Strategy

Configures how Mule processes streams. Repeatable streams are the default behavior.

Redelivery Policy

Defines a policy for processing the redelivery of the same message.

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

Attributes Type

### For Configurations - [Redis Configuration](#redis) ## Operations Supported operations: - [Add To Set](#addToSet) - [Add To Sorted Set](#addToSortedSet) - [Decrement](#decrement) - [Del](#del) - [Exists](#exists) - [Expire](#expire) - [Expire At](#expireAt) - [Get](#get) - [Get All From Hash](#getAllFromHash) - [Get From Hash](#getFromHash) - [Get Range By Index](#getRangeByIndex) - [Get Range By Score](#getRangeByScore) - [Get TTL](#getTtl) - [Increment](#increment) - [Increment Hash](#incrementHash) - [Increment Sorted Set](#incrementSortedSet) - [Persist](#persist) - [Pop From List](#popFromList) - [Pop From Set](#popFromSet) - [Publish](#publish) - [Push To List](#pushToList) - [Random Member From Set](#randomMemberFromSet) - [Range From List](#rangeFromList) - [Set](#set) - [Set In Hash](#setInHash) - [Trim From List](#trimFromList) ### Add To Set `` Add the message payload to the set stored at the specified key. If the key does not exist, a new key holding a set is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SADD

x

Value

String

The value to set.

#[payload]

Must Succeed

Boolean

If true, ensures that adding to the set is successful (that is, no pre-existing identical value is in the set)

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Add To Sorted Set `` Add the message payload with the desired score to the sorted set stored at the specified key. If the key does not exist, a new key holding a sorted set is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZADD

x

Value

String

The value to set.

#[payload]

Score

Number

Score to use for the value

x

Must Succeed

Boolean

If true, ensures that adding to the set is successful (that is, no pre-existing identical value is in the set)

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Decrement `` Decrements the number stored at key by step. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains data that cannot be represented as integer. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for DECR.

x

Step

Number

Step used for the increment.

1

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Del `` Remove the specified key. A key is ignored if it does not exist. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for DEL

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Exists `` Test if the specified key exists. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for EXISTS

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Expire `` Set a timeout on the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Seconds

Number

The time to live in seconds.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Expire At `` Set a timeout in the form of a UNIX timestamp (number of seconds elapsed since 1 Jan 1970) on the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Unix Time

Number

The UNIX timestamp in seconds.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get `` Get the value of the specified key. If the key does not exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for GET

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get All From Hash `` Get all fields and values of the hash stored at the specified key. If the field or the hash don’t exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGETALL

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Object

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get From Hash `` Get the value stored at the specified field in the hash at the specified key. If the field or the hash don’t exist, a null value is returned. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGET

x

Field

String

Field to use for HGET

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get Range By Index `` Retrieve a range of values from the sorted set stored at the specified key. The range of values is defined by indices in the sorted set and sorted as desired. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZRANGE/ZREVRANGE

x

Start

Number

Range start index

x

End

Number

Range end index

x

Ascending Order

Boolean

Index order for sorting the range. If the parameter is set to true, the range is sorted in ascending order. If the parameter is set to false, the range is sorted in descending order.

true

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get Range By Score `` Retrieve a range of values from the sorted set stored at the specified key. The range of values is defined by scores in the sorted set and sorted as desired. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for ZRANGEBYSCORE and ZREVRANGEBYSCORE

x

Min

Number

Range start score

x

Max

Number

Range end score

x

Ascending Order

Boolean

Score order for sorting the range. If the parameter is set to true, the range is sorted in ascending order. If the parameter is set to false, the range is sorted in descending order.

true

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Get TTL `` Get the remaining time to live of a volatile key, in seconds. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment `` Increments the number stored at key by step. If the key does not exist, it is set to 0 before performing the operation. An error is returned if the key contains a value of the wrong type or contains data that can not be represented as integer. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for INCR.

x

Step

Number

Step used for the increment.

1

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment Hash `` Increments the number stored at field in the hash stored at key by increment. If the key does not exist, a new key holding a hash is created. If field does not exist, the value is set to `0` before the operation is performed. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HGET

x

Field

String

Field to use for HGET

x

Step

Number

Step used for the increment.

1

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Increment Sorted Set `` Increments the score of member in the sorted set stored at key by increment. If member does not exist in the sorted set, it is added with increment as its score (as if its previous score was `0.0`). If the key does not exist, a new sorted set with the specified member as its sole member is created. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Value

String

The value to set.

#[payload]

Step

Number

The step to use to increment the score.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Number

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Persist `` Undo an expire or expireAt, turning the volatile key into a normal key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

The key in the sorted set.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Pop From List `` Pop a value from the desired side of the list stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for LPOP/RPOP

x

Pop Left

boolean

The side from which to pop the value. If the parameter is true, the value is popped from the left side. If the parameter is false, the value is popped from the right side.

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Pop From Set `` Pops a random value from the set stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SPOP

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Publish `` Publish the message payload to the specified channel. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Channel

String

Destination of the published message

x

Message

String

The message to publish.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Boolean

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Push To List `` Push the message payload to the desired side (LEFT or RIGHT) of the list stored at the specified key. If the key does not exist, a new key holding a list is created as long as ifExists is `false`. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for LPUSH or RPUSH, or LPUSHX or RPUSHX.

x

Value

String

The value to push.

#[payload]

Push Left

Boolean

Side that receives the pushed payload. If the parameter is true, push the payload on the left side. If the parameter is false, push the payload on the right side.

false

If Exists

Boolean

If the parameter is true, execute LPUSHX or RPUSHX. If the parameter is false, execute LPUSH or RPUSH.

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Random Member From Set `` Reads a random value from the set stored at the specified key. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for SRANDMEMBER

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Range From List `` Returns the specified range of elements from an existing list. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key of the list from which to return elements

x

Start

Number

Zero-based index at which the range starts. A negative value indicates that the offset starts at the end of the list.

x

Stop

Number

Zero-based index at which the range ends. A negative value indicates that the offset starts at the end of the list.

x

Output Mime Type

String

The MIME type of the payload that this operation outputs.

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output.

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

Array of String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Set `` Set the key to hold the payload. If **If Not Exists** is `false` and the key already holds a value, the value is overwritten regardless of its type. If **If Not Exists** is `true` and the key already exists, the operation returns null, leaves the existing value unchanged, and does not update the key’s TTL. TTL is applied only when the write succeeds. > [!NOTE] Starting with Redis Connector 5.8, a **Set** with **If Not Exists** set to `true` returns > null when the key already exists. Redis Connector 5.7 and earlier raised `REDIS:UNKNOWN` for that > no-op. Overwrite (`If Not Exists` = `false`) still raises `REDIS:UNKNOWN` when the server returns > a genuine null response. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key used to store payload

x

Value

String

The value to set.

#[payload]

Expire

Number

Set a timeout on the specified key in seconds. After the timeout the key is automatically deleted by the server. A key with an associated timeout is said to be volatile in Redis terminology.

If Not Exists

Boolean

If true, execute SETNX on the Redis server. If the key already exists, the operation returns null and does not change the existing value or TTL. If false, execute SET.

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

Expression that evaluates against the operation’s output. The expression outcome is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Set In Hash `` Set the specified hash field to the message payload. If the key does not exist, a new key holding a hash is created as long as ifNotExists is true. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key to use for HSET

x

Value

String

The value to set.

#[payload]

Field

String

Field to use for HSET

If Not Exists

Boolean

If true execute HSETNX, otherwise HSET.

false

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output

Target Value

String

An expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ### Trim From List `` Modify an existing list so that it contains only the specified range of elements. #### Parameters
NameTypeDescriptionDefault ValueRequired

Configuration

String

Name for this configuration. Connectors reference the configuration with this name.

x

Key

String

Key of the list to modify

x

Start

Number

Zero-based index at which the range starts. A negative value indicates that the offset starts at the end of the list.

x

Stop

Number

Zero-based index at which the range ends. A negative value indicates that the offset starts at the end of the list.

x

Config Ref

ConfigurationProvider

Name of the configuration to use to execute this component.

Target Variable

String

Name of a variable that stores the operation’s output.

Target Value

String

Expression that evaluates against the operation’s output. The outcome of the expression is stored in the target variable.

#[payload]

Error Mappings

Array of Error Mapping

Set of error mappings

Reconnection Strategy

A retry strategy in case of connectivity errors.

#### Output

Type

String

### For Configurations - [Redis Configuration](#redis) #### Throws - REDIS:CONNECTIVITY - REDIS:INVALID\_REQUEST\_DATA - REDIS:INVALID\_CONFIGURATION - REDIS:INVALID\_STRUCTURE\_FOR\_INPUT\_DATA - REDIS:RETRY\_EXHAUSTED - REDIS:UNKNOWN - REDIS:UNABLE\_TO\_UNSUBSCRIBE ## Types ### TLS Configures TLS to provide secure communications for the Mule app.
FieldTypeDescriptionDefault ValueRequired

Enabled Protocols

String

A comma-separated list of protocols enabled for this context.

Enabled Cipher Suites

String

A comma-separated list of cipher suites enabled for this context.

Trust Store

Configures the TLS truststore.

Key Store

Configures the TLS keystore.

Revocation Check

### Truststore Configures the truststore for TLS.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the truststore. Mule resolves the path relative to the current classpath and file system.

Password

String

Password used to protect the truststore.

Type

String

Type of store.

Algorithm

String

Encryption algorithm that the truststore uses.

Insecure

Boolean

If true, Mule stops performing certificate validations. Setting this to true can make connections vulnerable to attacks.

### Keystore Configures the keystore for the TLS protocol. The keystore you generate contains a private key and a public certificate.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the keystore. Mule resolves the path relative to the current classpath and file system.

Type

String

Type of store.

Alias

String

Alias of the key to use when the keystore contains multiple private keys. By default, Mule uses the first key in the file.

Key Password

String

Password used to protect the private key.

Password

String

Password used to protect the keystore.

Algorithm

String

Encryption algorithm that the keystore uses.

### Standard Revocation Check Configures standard revocation checks for TLS certificates.
FieldTypeDescriptionDefault ValueRequired

Only End Entities

Boolean

Which elements to verify in the certificate chain:

* true

Verify only the last element in the certificate chain.

* false

Verify all elements in the certificate chain.

Prefer Crls

Boolean

How to check certificate validity:

* true

Check the Certification Revocation List (CRL) for certificate validity.

* false

Use the Online Certificate Status Protocol (OCSP) to check certificate validity.

No Fallback

Boolean

Whether to use the secondary method to check certificate validity:

* true

Use the method that wasn’t specified in the Prefer Crls field (the secondary method) to check certificate validity.

* false

Do not use the secondary method to check certificate validity.

Soft Fail

Boolean

What to do if the revocation server can’t be reached or is busy:

* true

Avoid verification failure.

* false

Allow the verification to fail.

### Custom OCSP Responder Configures a custom OCSP responder for certification revocation checks.
FieldTypeDescriptionDefault ValueRequired

Url

String

URL of the OCSP responder.

Cert Alias

String

Alias of the signing certificate for the OCSP response. If specified, the alias must be in the truststore.

### CRL File Specifies the location of the certification revocation list (CRL) file.
FieldTypeDescriptionDefault ValueRequired

Path

String

Path to the CRL file.

### Reconnection Configures a reconnection strategy for an operation.
FieldTypeDescriptionDefault ValueRequired

Fails Deployment

Boolean

When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment fails if the test doesn’t pass after exhausting the associated reconnection strategy.

Reconnection Strategy

Reconnection strategy to use.

### Reconnect Configures a standard reconnection strategy, which specifies how often to reconnect and how many reconnection attempts the connector source or operation can make.
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often to attempt to reconnect, in milliseconds.

Blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread.

Count

Number

How many reconnection attempts the Mule app can make.

### Reconnect Forever Configures a forever reconnection strategy by which the connector source or operation attempts to reconnect at a specified frequency for as long as the Mule app runs.
FieldTypeDescriptionDefault ValueRequired

Frequency

Number

How often to attempt to reconnect, in milliseconds.

Blocking

Boolean

If false, the reconnection strategy runs in a separate, non-blocking thread.

### Expiration Policy Configures an expiration policy strategy.
FieldTypeDescriptionDefault ValueRequired

Max Idle Time

Number

Configures the maximum amount of time that a dynamic configuration instance can remain idle before Mule considers it eligible for expiration.

Time Unit

Enumeration, one of:

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Time unit for the Max Idle Time field.

### Subscribe Channel Attributes
FieldTypeDescriptionDefault ValueRequired

Channel

String

### Repeatable In Memory Stream Configures the in-memory streaming strategy by which the request fails if the data exceeds the MAX buffer size. Always run performance tests to find the optimal buffer size for your specific use case.
FieldTypeDescriptionDefault ValueRequired

Initial Buffer Size

Number

Initial amount of memory to allocate to the data stream. If the streamed data exceeds this value, the buffer expands by Buffer Size Increment, with an upper limit of Max In Memory Size value.

Buffer Size Increment

Number

This is by how much the buffer size expands if it exceeds its initial size. Setting a value of zero or lower means that the buffer should not expand, meaning that a STREAM_MAXIMUM_SIZE_EXCEEDED error is raised when the buffer gets full.

Max Buffer Size

Number

Maximum size of the buffer. If the buffer size exceeds this value, Mule raises a STREAM_MAXIMUM_SIZE_EXCEEDED error. A value of less than or equal to 0 means no limit.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit for the Initial Buffer Size, Buffer Size Increment, and Buffer Unit fields.

### Repeatable File Store Stream Configures the repeatable file-store streaming strategy by which Mule keeps a portion of the stream content in memory. If the stream content is larger than the configured buffer size, Mule backs up the buffer’s content to disk and then clears the memory.
FieldTypeDescriptionDefault ValueRequired

In Memory Size

Number

Maximum amount of memory that the stream can use for data. If the amount of memory exceeds this value, Mule buffers the content to disk. To optimize performance:

* Configure a larger buffer size to avoid the number of times Mule needs to write the buffer on disk. This increases performance, but it also limits the number of concurrent requests your application can process, because it requires additional memory.

* Configure a smaller buffer size to decrease memory load at the expense of response time.

Buffer Unit

Enumeration, one of:

  • BYTE

  • KB

  • MB

  • GB

Unit for the In Memory Size field.

### Non-repeatable Stream Disables the repeatable stream functionality and use non-repeatable streams to have less performance overhead, memory use, and cost. ### Redelivery Policy Configures the redelivery policy for executing requests that generate errors. You can add a redelivery policy to any source in a flow.
FieldTypeDescriptionDefault ValueRequired

Max Redelivery Count

Number

Maximum number of times that a redelivered request can be processed unsuccessfully before returning a REDELIVERY_EXHAUSTED error.

Message Digest Algorithm

String

Secure hashing algorithm to use if the Use Secure Hash field is true. If the payload of the message is a Java object, Mule ignores this value and returns the value that the payload’s hashCode() returned.

Message Identifier

One or more expressions that determine if a message was redelivered. This property can be set only if the Use Secure Hash field is false.

Object Store

Object Store

Configures the object store that stores the redelivery counter for each message.

### Redelivery Policy Message Identifier Configures how to identify a redelivered message and how to find out when the message was redelivered.
FieldTypeDescriptionDefault ValueRequired

Use Secure Hash

Boolean

If true, Mule uses a secure hash algorithm to identify a redelivered message.

Id Expression

String

One or more expressions that determine when a message was redelivered. You can set this property only if the Use Secure Hash field is false.

### Error Mapping
FieldTypeDescriptionDefault ValueRequired

Source

Enumeration, one of:

  • ANY

  • REDELIVERY_EXHAUSTED

  • TRANSFORMATION

  • EXPRESSION

  • SECURITY

  • CLIENT_SECURITY

  • SERVER_SECURITY

  • ROUTING

  • CONNECTIVITY

  • RETRY_EXHAUSTED

  • TIMEOUT

Target

String

x

## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.8 is-latest-version: true --- # Redis Connector 5.8 XML and Maven Support > For the full documentation index, see: https://docs.mulesoft.com/llms.txt If you manually code a Mule runtime engine (Mule) app in XML, either from the Anypoint Studio XML editor or from a text editor, you can get access to the connector in your app by adding reference statements to both your XML Mule flow and the Apache Maven `pom.xml` file. When you install the connector in Studio, Studio automatically populates the XML code with the connector’s namespace and schema location. It also adds a dependency to the `pom.xml` file. ## Add a Namespace for the Connector Paste the following code inside the `` tag of the header of your configuration XML: ```xml http://www.mulesoft.org/schema/mule/redis http://www.mulesoft.org/schema/mule/redis/current/mule-redis.xsd"> ``` This example shows how the namespace statements are placed in the `` XML block: ```xml ``` ## Add a POM File Dependency The Apache Maven `pom.xml` file generated by Anypoint Studio contains dependencies for a Mule app. If you code a Mule app manually, include this XML snippet in your `pom.xml` file to enable access to this connector: ```xml com.mulesoft.connectors mule-redis-connector x.x.x mule-plugin ``` Replace `x.x.x` with the version that corresponds to the connector you are using. To obtain the most up-to-date `pom.xml` file information: 1. Go to [Anypoint Exchange](https://www.mulesoft.com/exchange/). 2. In Exchange, click **Login** and supply your Anypoint Platform username and password. 3. In Exchange, search for `redis`. 4. Select the connector. 5. Click **Dependency Snippets** near the upper right of the screen. ## Configure a Connection in XML Use `` with a nested connection element. Valid connection elements are ``, ``, and ``. This **NonClustered** example sets an independent socket (read) timeout: ```xml ``` Omit `socketTimeout` to reuse `connectionTimeout` as the read timeout. This **Clustered** example applies pool sizing. Starting with Redis Connector 5.8, `maxTotal` and `maxWaitMillis` are honored on the cluster client: ```xml ``` ## Next After completing your namespace and `pom.xml` file, you can try the Redis [Examples](https://docs.mulesoft.com/redis-connector/latest/redis-connector-examples). ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.4 --- # Using Anypoint Studio to Configure Redis Connector 5.4 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. To add and configure a connector in Studio: 1. [Create a Mule project](#create-mule-project). 2. [Add the connector to your Mule project](#add-connector-to-project). 3. [Configure an input source for the connector’s flow](#configure-input-source). 4. [Add a connector operation to the flow](#add-connector-operation). 5. [Configure a global element for the connector](#configure-global-element). When you run your app, you can view the app log as described in [View the App Log](#view-app-log). If you are new to configuring connectors in Studio, see [Using Anypoint Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio). If, after reading this topic, you need additional information about the connector fields, see the [Redis Connector 5.4 Reference](https://docs.mulesoft.com/redis-connector/5.4/redis-connector-reference). ## Create a Mule Project In Studio, create a new Mule project in which to add and configure the connector: 1. In Studio, select **File > New > Mule Project**. 2. Enter a name for your Mule project and click **Finish**. ## Add the Connector to Your Mule Project Add Aynpoint Connector for Redis to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and add the required dependencies to the project’s `pom.xml` file: 1. In the **Mule Palette** view, click **(X) Search in Exchange**. 2. In **Add Dependencies to Project**, type `redis` in the search field. 3. Click **Redis Connector** in **Available modules**. 4. Click **Add**. 5. Click **Finish**. Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace. ## Configure an Input Source An input source initiates a flow when a specified condition is met. You can configure one of these input sources to use with Redis Connector: - **Subscribe** Enables the Mule app to listen to specified channels - **HTTP Listener** Initiates a flow each time it receives a request on the configured host and port - **Scheduler** Initiates a flow when a time-based condition is met For example, to configure the **Subscribe** input source, follow these steps: 1. In the **Mule Palette** view, select **Redis > Subscribe**. 2. Drag **Subscribe** to the Studio canvas. 3. On the **Subscribe** configuration screen, optionally change the value of the **Display Name** field. 4. In **Channels** provide a list of Redis channel names or globbing patterns. ## Add a Connector Operation to the Flow When you add a connector operation to your flow, you immediately define a specific operation for that connector to perform. To add an operation for Redis Connector, follow these steps: 1. In the **Mule Palette** view, select **Redis** and then select the desired operation. 2. Drag the operation onto the Studio canvas to the right of the input source. ## Configure a Global Element for the Connector When you configure a connector, it’s best to configure a global element that all instances of that connector in the app can use. Configuring a global element requires you to provide the authentication credentials the connector uses to access the target Redis system. Redis Connector supports global elements for clustered Redis configurations and non-clustered Redis configurations. 1. Select the operation in the Studio canvas. 2. In the configuration screen for the operation, click the plus sign (+) next to the **Connector configuration** field to configure a global element that can be used by all instances of Redis Connector in the app. When you configure a global element, you can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, see [Anypoint Connector Configuration](https://docs.mulesoft.com/connectors/introduction/intro-connector-configuration-overview). 3. On the **Connection** tab, select the connection type: - **[Clustered](#clustered-config)** - **[NonClustered](#nonclustered-config)** - **[Sentinel](#sentinel-config)** 4. Click **Test Connection** to confirm that Mule can connect with the specified server. 5. Click **OK**. ### Clustered Redis Configuration Enter the following information on the **General** tab of the **Global Element Properties** screen to configure a Clustered connection: ![Configuration fields for Redis clustered connection type](/mulesoft/current/en-us/redis-connector/5.4/_images/redis-basic-config-clustered.png) 1. In **Name**, enter a name for the configuration. 2. In **Connection**, select **Clustered** to use the connector with a clustered Redis configuration. 3. Enter values for the following fields: - **Cluster hosts** Comma-separated list for all Redis cluster hosts using the format `host:port` - **Connection timeout** Optional connection timeout value, in milliseconds - **Entry Ttl** Optional default time-to-live value to set on keys stored through the connector **Password** Redis password for server authentication 4. Click **Test Connection**. 5. Click **OK**. ### Nonclustered Redis Configuration Enter the following information on the **General** tab of the **Global Element Properties** screen to configure a non-clustered connection: ![Configuration fields for Redis non-clustered connection type](/mulesoft/current/en-us/redis-connector/5.4/_images/redis-basic-config.png) 1. In **Name**, enter a name for the configuration. 2. In **Connection**, select **NonClustered** to use the connector with a non-clustered Redis configuration. 3. Enter values for the following fields: - **Host** Host for the Redis server - **Port** Port on which the non-clustered server is running **Connection Timeout** Optional connection timeout value, in milliseconds - **Entry Ttl** Optional default time-to-live value to set on keys stored through the connector. - **Password** Password for server authentication. 4. Click **Test Connection**. 5. Click **OK**. ## Sentinel Configuration Sentinel provides a high-availability solution in case of failure on your Redis cluster. To configure a Sentinel connection: 1. On the **General** tab of the **Global Element Properties**, enter a name for the configuration. 2. In **Connection**, select **Sentinel** to use the connector with a non-clustered Redis configuration. 3. Enter values for the following fields: - **Sentinels hosts** Sentinel addresses that monitor the Redis master host to which the connector will connect - **Master name** Name of the Redis master for which Sentinel discovers and returns the address of the master instance to connect to - **Sentinel password** Password for Sentinel server authentication - **Index** Index of the database that the pool uses - **Password** Password for Redis server authentication - **Entry ttl** Optional default time-to-live value to set on keys stored through the connector 4. Click **Test Connection**. 5. Click **OK**. ### TLS Configuration To enable and configure TLS for your app: 1. In the **Connection** section for the configuration, click the **Security** tab. 2. To configure a truststore, in **TLS Configuration**, select **Edit inline** and provide the following values: - **Path** Location of the truststore file. - **Password** Password for the truststore file. - **Type** File format of the truststore file. - **Algorithm** Algorithm the truststore uses. - **Insecure** Boolean that determines whether or not to validate the truststore. If set to `true`, no validation occurs. The default value is `false`. 3. To configure a keystore, enter the following values: - **Type** Optionally specify the file format of the keystore file. The default value is `JKS`. - **Path** Optionally specify the location of the keystore file. This can be used for two-way authentication for the connector. - **Alias** Attribute that indicates the alias of the key to use when the keystore contains many private keys. If not defined, the first key in the file is used by default. - **Key password** Key manager password, which is the password for the private key inside the keystore. - **Password** Store password for the keystore file. This is required only if the **Key Store Location** is configured. - **Algorithm** Algorithm used in the keystore. 4. Click **Test Connection**. 5. Click **OK**. ## View the App Log You can view the app log for the connector as follows: - If you’re running the app from the Anypoint Platform, the output is visible in the Anypoint Studio **Console** window. - If you’re running the app using Mule from the command line, the app log is visible in your OS console. Unless the log file path was customized in the app’s log file (`log4j2.xml`), you can also view the app log in `MULE_HOME/logs/.log`. For more information about the app log, see [Configuring Logging](https://docs.mulesoft.com/mule-runtime/latest/logging-in-mule). ## Next Step After you configure a global element and connection information, configure the other fields for the connector. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.5 --- # Using Anypoint Studio to Configure Redis Connector 5.5 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. To add and configure a connector in Studio: 1. [Create a Mule project](#create-mule-project). 2. [Add the connector to your Mule project](#add-connector-to-project). 3. [Configure an input source for the connector’s flow](#configure-input-source). 4. [Add a connector operation to the flow](#add-connector-operation). 5. [Configure a global element for the connector](#configure-global-element). When you run your app, you can view the app log as described in [View the App Log](#view-app-log). If you are new to configuring connectors in Studio, see [Using Anypoint Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio). If, after reading this topic, you need additional information about the connector fields, see the [Redis Connector 5.5 Reference](https://docs.mulesoft.com/redis-connector/5.5/redis-connector-reference). ## Create a Mule Project In Studio, create a new Mule project in which to add and configure the connector: 1. In Studio, select **File > New > Mule Project**. 2. Enter a name for your Mule project and click **Finish**. ## Add the Connector to Your Mule Project Add Aynpoint Connector for Redis to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and add the required dependencies to the project’s `pom.xml` file: 1. In the **Mule Palette** view, click **(X) Search in Exchange**. 2. In **Add Dependencies to Project**, type `redis` in the search field. 3. Click **Redis Connector** in **Available modules**. 4. Click **Add**. 5. Click **Finish**. Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace. ## Configure an Input Source An input source initiates a flow when a specified condition is met. You can configure one of these input sources to use with Redis Connector: - **Subscribe** Enables the Mule app to listen to specified channels - **HTTP Listener** Initiates a flow each time it receives a request on the configured host and port - **Scheduler** Initiates a flow when a time-based condition is met For example, to configure the **Subscribe** input source, follow these steps: 1. In the **Mule Palette** view, select **Redis > Subscribe**. 2. Drag **Subscribe** to the Studio canvas. 3. On the **Subscribe** configuration screen, optionally change the value of the **Display Name** field. 4. In **Channels** provide a list of Redis channel names or globbing patterns. ## Add a Connector Operation to the Flow When you add a connector operation to your flow, you immediately define a specific operation for that connector to perform. To add an operation for Redis Connector, follow these steps: 1. In the **Mule Palette** view, select **Redis** and then select the desired operation. 2. Drag the operation onto the Studio canvas to the right of the input source. ## Configure a Global Element for the Connector When you configure a connector, it’s best to configure a global element that all instances of that connector in the app can use. Configuring a global element requires you to provide the authentication credentials the connector uses to access the target Redis system. Redis Connector supports global elements for clustered Redis configurations and non-clustered Redis configurations. 1. Select the operation in the Studio canvas. 2. In the configuration screen for the operation, click the plus sign (+) next to the **Connector configuration** field to configure a global element that can be used by all instances of Redis Connector in the app. When you configure a global element, you can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, see [Anypoint Connector Configuration](https://docs.mulesoft.com/connectors/introduction/intro-connector-configuration-overview). 3. On the **Connection** tab, select the connection type: - **[Clustered](#clustered-config)** - **[NonClustered](#nonclustered-config)** - **[Sentinel](#sentinel-config)** 4. Click **Test Connection** to confirm that Mule can connect with the specified server. 5. Click **OK**. ### Clustered Redis Configuration Enter the following information on the **General** tab of the **Global Element Properties** screen to configure a Clustered connection: ![Configuration fields for Redis clustered connection type](/mulesoft/current/en-us/redis-connector/5.5/_images/redis-basic-config-clustered.png) 1. In **Name**, enter a name for the configuration. 2. In **Connection**, select **Clustered** to use the connector with a clustered Redis configuration. 3. Enter values for the following fields: - **Cluster hosts** Comma-separated list for all Redis cluster hosts using the format `host:port` - **Connection timeout** Optional connection timeout value, in milliseconds - **Entry Ttl** Optional default time-to-live value to set on keys stored through the connector **Password** Redis password for server authentication 4. Click **Test Connection**. 5. Click **OK**. ### Nonclustered Redis Configuration Enter the following information on the **General** tab of the **Global Element Properties** screen to configure a non-clustered connection: ![Configuration fields for Redis non-clustered connection type](/mulesoft/current/en-us/redis-connector/5.5/_images/redis-basic-config.png) 1. In **Name**, enter a name for the configuration. 2. In **Connection**, select **NonClustered** to use the connector with a non-clustered Redis configuration. 3. Enter values for the following fields: - **Host** Host for the Redis server - **Port** Port on which the non-clustered server is running **Connection Timeout** Optional connection timeout value, in milliseconds - **Entry Ttl** Optional default time-to-live value to set on keys stored through the connector. - **Password** Password for server authentication. 4. Click **Test Connection**. 5. Click **OK**. ## Sentinel Configuration Sentinel provides a high-availability solution in case of failure on your Redis cluster. To configure a Sentinel connection: 1. On the **General** tab of the **Global Element Properties**, enter a name for the configuration. 2. In **Connection**, select **Sentinel** to use the connector with a non-clustered Redis configuration. 3. Enter values for the following fields: - **Sentinels hosts** Sentinel addresses that monitor the Redis master host to which the connector will connect - **Master name** Name of the Redis master for which Sentinel discovers and returns the address of the master instance to connect to - **Sentinel password** Password for Sentinel server authentication - **Index** Index of the database that the pool uses - **Password** Password for Redis server authentication - **Entry ttl** Optional default time-to-live value to set on keys stored through the connector 4. Click **Test Connection**. 5. Click **OK**. ### TLS Configuration To enable and configure TLS for your app: 1. In the **Connection** section for the configuration, click the **Security** tab. 2. To configure a truststore, in **TLS Configuration**, select **Edit inline** and provide the following values: - **Path** Location of the truststore file. - **Password** Password for the truststore file. - **Type** File format of the truststore file. - **Algorithm** Algorithm the truststore uses. - **Insecure** Boolean that determines whether or not to validate the truststore. If set to `true`, no validation occurs. The default value is `false`. 3. To configure a keystore, enter the following values: - **Type** Optionally specify the file format of the keystore file. The default value is `JKS`. - **Path** Optionally specify the location of the keystore file. This can be used for two-way authentication for the connector. - **Alias** Attribute that indicates the alias of the key to use when the keystore contains many private keys. If not defined, the first key in the file is used by default. - **Key password** Key manager password, which is the password for the private key inside the keystore. - **Password** Store password for the keystore file. This is required only if the **Key Store Location** is configured. - **Algorithm** Algorithm used in the keystore. 4. Click **Test Connection**. 5. Click **OK**. ## View the App Log You can view the app log for the connector as follows: - If you’re running the app from the Anypoint Platform, the output is visible in the Anypoint Studio **Console** window. - If you’re running the app using Mule from the command line, the app log is visible in your OS console. Unless the log file path was customized in the app’s log file (`log4j2.xml`), you can also view the app log in `MULE_HOME/logs/.log`. For more information about the app log, see [Configuring Logging](https://docs.mulesoft.com/mule-runtime/latest/logging-in-mule). ## Next Step After you configure a global element and connection information, configure the other fields for the connector. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.6 --- # Using Anypoint Studio to Configure Redis Connector 5.6 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. To add and configure a connector in Studio: 1. [Create a Mule project](#create-mule-project). 2. [Add the connector to your Mule project](#add-connector-to-project). 3. [Configure an input source for the connector’s flow](#configure-input-source). 4. [Add a connector operation to the flow](#add-connector-operation). 5. [Configure a global element for the connector](#configure-global-element). When you run your app, you can view the app log as described in [View the App Log](#view-app-log). If you are new to configuring connectors in Studio, see [Using Anypoint Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio). If, after reading this topic, you need additional information about the connector fields, see the [Redis Connector 5.6 Reference](https://docs.mulesoft.com/redis-connector/5.6/redis-connector-reference). ## Create a Mule Project In Studio, create a new Mule project in which to add and configure the connector: 1. In Studio, select **File > New > Mule Project**. 2. Enter a name for your Mule project and click **Finish**. ## Add the Connector to Your Mule Project Add Aynpoint Connector for Redis to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and add the required dependencies to the project’s `pom.xml` file: 1. In the **Mule Palette** view, click **(X) Search in Exchange**. 2. In **Add Dependencies to Project**, type `redis` in the search field. 3. Click **Redis Connector** in **Available modules**. 4. Click **Add**. 5. Click **Finish**. Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace. ## Configure an Input Source An input source initiates a flow when a specified condition is met. You can configure one of these input sources to use with Redis Connector: - **Subscribe** Enables the Mule app to listen to specified channels - **HTTP Listener** Initiates a flow each time it receives a request on the configured host and port - **Scheduler** Initiates a flow when a time-based condition is met For example, to configure the **Subscribe** input source, follow these steps: 1. In the **Mule Palette** view, select **Redis > Subscribe**. 2. Drag **Subscribe** to the Studio canvas. 3. On the **Subscribe** configuration screen, optionally change the value of the **Display Name** field. 4. In **Channels** provide a list of Redis channel names or globbing patterns. ## Add a Connector Operation to the Flow When you add a connector operation to your flow, you immediately define a specific operation for that connector to perform. To add an operation for Redis Connector, follow these steps: 1. In the **Mule Palette** view, select **Redis** and then select the desired operation. 2. Drag the operation onto the Studio canvas to the right of the input source. ## Configure a Global Element for the Connector When you configure a connector, it’s best to configure a global element that all instances of that connector in the app can use. Configuring a global element requires you to provide the authentication credentials the connector uses to access the target Redis system. Redis Connector supports global elements for clustered Redis configurations and non-clustered Redis configurations. 1. Select the operation in the Studio canvas. 2. In the configuration screen for the operation, click the plus sign (+) next to the **Connector configuration** field to configure a global element that can be used by all instances of Redis Connector in the app. When you configure a global element, you can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, see [Anypoint Connector Configuration](https://docs.mulesoft.com/connectors/introduction/intro-connector-configuration-overview). 3. On the **Connection** tab, select the connection type: - **[Clustered](#clustered-config)** - **[NonClustered](#nonclustered-config)** - **[Sentinel](#sentinel-config)** 4. Click **Test Connection** to confirm that Mule can connect with the specified server. 5. Click **OK**. ### Clustered Redis Configuration Enter the following information on the **General** tab of the **Global Element Properties** screen to configure a Clustered connection: ![Configuration fields for Redis clustered connection type](/mulesoft/current/en-us/redis-connector/5.6/_images/redis-basic-config-clustered.png) 1. In **Name**, enter a name for the configuration. 2. In **Connection**, select **Clustered** to use the connector with a clustered Redis configuration. 3. Enter values for the following fields: - **Cluster hosts** Comma-separated list for all Redis cluster hosts using the format `host:port` - **Connection timeout** Optional connection timeout value, in milliseconds - **Entry Ttl** Optional default time-to-live value to set on keys stored through the connector **Password** Redis password for server authentication 4. Click **Test Connection**. 5. Click **OK**. ### Nonclustered Redis Configuration Enter the following information on the **General** tab of the **Global Element Properties** screen to configure a non-clustered connection: ![Configuration fields for Redis non-clustered connection type](/mulesoft/current/en-us/redis-connector/5.6/_images/redis-basic-config.png) 1. In **Name**, enter a name for the configuration. 2. In **Connection**, select **NonClustered** to use the connector with a non-clustered Redis configuration. 3. Enter values for the following fields: - **Host** Host for the Redis server - **Port** Port on which the non-clustered server is running **Connection Timeout** Optional connection timeout value, in milliseconds - **Entry Ttl** Optional default time-to-live value to set on keys stored through the connector. - **Password** Password for server authentication. 4. Click **Test Connection**. 5. Click **OK**. ## Sentinel Configuration Sentinel provides a high-availability solution in case of failure on your Redis cluster. To configure a Sentinel connection: 1. On the **General** tab of the **Global Element Properties**, enter a name for the configuration. 2. In **Connection**, select **Sentinel** to use the connector with a non-clustered Redis configuration. 3. Enter values for the following fields: - **Sentinels hosts** Sentinel addresses that monitor the Redis master host to which the connector will connect - **Master name** Name of the Redis master for which Sentinel discovers and returns the address of the master instance to connect to - **Sentinel password** Password for Sentinel server authentication - **Index** Index of the database that the pool uses - **Password** Password for Redis server authentication - **Entry ttl** Optional default time-to-live value to set on keys stored through the connector 4. Click **Test Connection**. 5. Click **OK**. ### TLS Configuration To enable and configure TLS for your app: 1. In the **Connection** section for the configuration, click the **Security** tab. 2. To configure a truststore, in **TLS Configuration**, select **Edit inline** and provide the following values: - **Path** Location of the truststore file. - **Password** Password for the truststore file. - **Type** File format of the truststore file. - **Algorithm** Algorithm the truststore uses. - **Insecure** Boolean that determines whether or not to validate the truststore. If set to `true`, no validation occurs. The default value is `false`. 3. To configure a keystore, enter the following values: - **Type** Optionally specify the file format of the keystore file. The default value is `JKS`. - **Path** Optionally specify the location of the keystore file. This can be used for two-way authentication for the connector. - **Alias** Attribute that indicates the alias of the key to use when the keystore contains many private keys. If not defined, the first key in the file is used by default. - **Key password** Key manager password, which is the password for the private key inside the keystore. - **Password** Store password for the keystore file. This is required only if the **Key Store Location** is configured. - **Algorithm** Algorithm used in the keystore. 4. Click **Test Connection**. 5. Click **OK**. ## View the App Log You can view the app log for the connector as follows: - If you’re running the app from the Anypoint Platform, the output is visible in the Anypoint Studio **Console** window. - If you’re running the app using Mule from the command line, the app log is visible in your OS console. Unless the log file path was customized in the app’s log file (`log4j2.xml`), you can also view the app log in `MULE_HOME/logs/.log`. For more information about the app log, see [Configuring Logging](https://docs.mulesoft.com/mule-runtime/latest/logging-in-mule). ## Next Step After you configure a global element and connection information, configure the other fields for the connector. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.7 --- # Using Anypoint Studio to Configure Redis Connector 5.7 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. To add and configure a connector in Studio: 1. [Create a Mule project](#create-mule-project). 2. [Add the connector to your Mule project](#add-connector-to-project). 3. [Configure an input source for the connector’s flow](#configure-input-source). 4. [Add a connector operation to the flow](#add-connector-operation). 5. [Configure a global element for the connector](#configure-global-element). When you run your app, you can view the app log as described in [View the App Log](#view-app-log). If you are new to configuring connectors in Studio, see [Using Anypoint Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio). If, after reading this topic, you need additional information about the connector fields, see the [Redis Connector Reference](https://docs.mulesoft.com/redis-connector/5.7/redis-connector-reference). ## Create a Mule Project In Studio, create a new Mule project in which to add and configure the connector: 1. In Studio, select **File > New > Mule Project**. 2. Enter a name for your Mule project and click **Finish**. ## Add the Connector to Your Mule Project Add Aynpoint Connector for Redis to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and add the required dependencies to the project’s `pom.xml` file: 1. In the **Mule Palette** view, click **(X) Search in Exchange**. 2. In **Add Dependencies to Project**, type `redis` in the search field. 3. Click **Redis Connector** in **Available modules**. 4. Click **Add**. 5. Click **Finish**. Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace. ## Configure an Input Source An input source initiates a flow when a specified condition is met. You can configure one of these input sources to use with Redis Connector: - **Subscribe** Enables the Mule app to listen to specified channels - **HTTP Listener** Initiates a flow each time it receives a request on the configured host and port - **Scheduler** Initiates a flow when a time-based condition is met For example, to configure the **Subscribe** input source, follow these steps: 1. In the **Mule Palette** view, select **Redis > Subscribe**. 2. Drag **Subscribe** to the Studio canvas. 3. On the **Subscribe** configuration screen, optionally change the value of the **Display Name** field. 4. In **Channels** provide a list of Redis channel names or globbing patterns. ## Add a Connector Operation to the Flow When you add a connector operation to your flow, you immediately define a specific operation for that connector to perform. To add an operation for Redis Connector, follow these steps: 1. In the **Mule Palette** view, select **Redis** and then select the desired operation. 2. Drag the operation onto the Studio canvas to the right of the input source. ## Configure a Global Element for the Connector When you configure a connector, it’s best to configure a global element that all instances of that connector in the app can use. Configuring a global element requires you to provide the authentication credentials the connector uses to access the target Redis system. Redis Connector supports global elements for clustered Redis configurations and non-clustered Redis configurations. 1. Select the operation in the Studio canvas. 2. In the configuration screen for the operation, click the plus sign (+) next to the **Connector configuration** field to configure a global element that can be used by all instances of Redis Connector in the app. When you configure a global element, you can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, see [Anypoint Connector Configuration](https://docs.mulesoft.com/connectors/introduction/intro-connector-configuration-overview). 3. On the **Connection** tab, select the connection type: - **[Clustered](#clustered-config)** - **[NonClustered](#nonclustered-config)** - **[Sentinel](#sentinel-config)** 4. Click **Test Connection** to confirm that Mule can connect with the specified server. 5. Click **OK**. ### Clustered Redis Configuration Enter the following information on the **General** tab of the **Global Element Properties** screen to configure a Clustered connection: ![Configuration fields for Redis clustered connection type](/mulesoft/current/en-us/redis-connector/5.7/_images/redis-basic-config-clustered.png) 1. In **Name**, enter a name for the configuration. 2. In **Connection**, select **Clustered** to use the connector with a clustered Redis configuration. 3. Enter values for the following fields: - **Cluster hosts** Comma-separated list for all Redis cluster hosts using the format `host:port` - **Connection timeout** Optional connection timeout value, in milliseconds - **Entry Ttl** Optional default time-to-live value to set on keys stored through the connector - **Password** Redis password for server authentication - **Username** Optional Redis ACL username for Redis 6 and later ACL-based authentication. When set, the connector authenticates using the `AUTH ` form. When empty, the connector falls back to the legacy `AUTH ` form. 4. Click **Test Connection**. 5. Click **OK**. ### Nonclustered Redis Configuration Enter the following information on the **General** tab of the **Global Element Properties** screen to configure a non-clustered connection: ![Configuration fields for Redis non-clustered connection type](/mulesoft/current/en-us/redis-connector/5.7/_images/redis-basic-config.png) 1. In **Name**, enter a name for the configuration. 2. In **Connection**, select **NonClustered** to use the connector with a non-clustered Redis configuration. 3. Enter values for the following fields: - **Host** Host for the Redis server - **Port** Port on which the non-clustered server is running **Connection Timeout** Optional connection timeout value, in milliseconds - **Entry Ttl** Optional default time-to-live value to set on keys stored through the connector. - **Password** Password for server authentication. - **Username** Optional Redis ACL username for Redis 6 and later ACL-based authentication. When set, the connector authenticates using the `AUTH ` form. When empty, the connector falls back to the legacy `AUTH ` form. 4. Click **Test Connection**. 5. Click **OK**. ## Sentinel Configuration Sentinel provides a high-availability solution in case of failure on your Redis cluster. To configure a Sentinel connection: 1. On the **General** tab of the **Global Element Properties**, enter a name for the configuration. 2. In **Connection**, select **Sentinel** to use the connector with a non-clustered Redis configuration. 3. Enter values for the following fields: - **Sentinels hosts** Sentinel addresses that monitor the Redis master host to which the connector will connect - **Master name** Name of the Redis master for which Sentinel discovers and returns the address of the master instance to connect to - **Sentinel password** Password for Sentinel server authentication - **Sentinel username** Optional Redis ACL username for authenticating to the Sentinel processes (Redis 6.2 and later). When set, the connector uses `AUTH ` to authenticate with each Sentinel. When empty, falls back to the legacy `AUTH ` form. - **Index** Index of the database that the pool uses - **Password** Password for Redis server authentication - **Username** Optional Redis ACL username for Redis 6 and later ACL-based authentication on the master. When set, the connector authenticates using the `AUTH ` form. When empty, the connector falls back to the legacy `AUTH ` form. - **Entry ttl** Optional default time-to-live value to set on keys stored through the connector 4. Click **Test Connection**. 5. Click **OK**. ### TLS Configuration To enable and configure TLS for your app: 1. In the **Connection** section for the configuration, click the **Security** tab. 2. To configure a truststore, in **TLS Configuration**, select **Edit inline** and provide the following values: - **Path** Location of the truststore file. - **Password** Password for the truststore file. - **Type** File format of the truststore file. - **Algorithm** Algorithm the truststore uses. - **Insecure** Boolean that determines whether or not to validate the truststore. If set to `true`, no validation occurs. The default value is `false`. 3. To configure a keystore, enter the following values: - **Type** Optionally specify the file format of the keystore file. The default value is `JKS`. - **Path** Optionally specify the location of the keystore file. This can be used for two-way authentication for the connector. - **Alias** Attribute that indicates the alias of the key to use when the keystore contains many private keys. If not defined, the first key in the file is used by default. - **Key password** Key manager password, which is the password for the private key inside the keystore. - **Password** Store password for the keystore file. This is required only if the **Key Store Location** is configured. - **Algorithm** Algorithm used in the keystore. 4. Click **Test Connection**. 5. Click **OK**. ## View the App Log You can view the app log for the connector as follows: - If you’re running the app from the Anypoint Platform, the output is visible in the Anypoint Studio **Console** window. - If you’re running the app using Mule from the command line, the app log is visible in your OS console. Unless the log file path was customized in the app’s log file (`log4j2.xml`), you can also view the app log in `MULE_HOME/logs/.log`. For more information about the app log, see [Configuring Logging](https://docs.mulesoft.com/mule-runtime/latest/logging-in-mule). ## Next Step After you configure a global element and connection information, configure the other fields for the connector. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com) --- product: Redis Connector version: 5.8 is-latest-version: true --- # Using Anypoint Studio to Configure Redis Connector 5.8 > For the full documentation index, see: https://docs.mulesoft.com/llms.txt > [!NOTE] Where possible, we changed noninclusive terms to align with our company value of Equality. > We maintained certain terms to avoid any effect on customer implementations. Anypoint Studio (Studio) editors help you design and update your Mule applications, properties, and configuration files. To add and configure a connector in Studio: 1. [Create a Mule project](#create-mule-project). 2. [Add the connector to your Mule project](#add-connector-to-project). 3. [Configure an input source for the connector’s flow](#configure-input-source). 4. [Add a connector operation to the flow](#add-connector-operation). 5. [Configure a global element for the connector](#configure-global-element). When you run your app, you can view the app log as described in [View the App Log](#view-app-log). If you are new to configuring connectors in Studio, see [Using Anypoint Studio to Configure a Connector](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio). If, after reading this topic, you need additional information about the connector fields, see the [Redis Connector Reference](https://docs.mulesoft.com/redis-connector/latest/redis-connector-reference). ## Create a Mule Project In Studio, create a new Mule project in which to add and configure the connector: 1. In Studio, select **File > New > Mule Project**. 2. Enter a name for your Mule project and click **Finish**. ## Add the Connector to Your Mule Project Add Anypoint Connector for Redis to your Mule project to automatically populate the XML code with the connector’s namespace and schema location and add the required dependencies to the project’s `pom.xml` file: 1. In the **Mule Palette** view, click **(X) Search in Exchange**. 2. In **Add Dependencies to Project**, type `redis` in the search field. 3. Click **Redis Connector** in **Available modules**. 4. Click **Add**. 5. Click **Finish**. Adding a connector to a Mule project in Studio does not make that connector available to other projects in your Studio workspace. ## Configure an Input Source An input source initiates a flow when a specified condition is met. You can configure one of these input sources to use with Redis Connector: - **Subscribe** Enables the Mule app to listen to specified channels - **HTTP Listener** Initiates a flow each time it receives a request on the configured host and port - **Scheduler** Initiates a flow when a time-based condition is met For example, to configure the **Subscribe** input source, follow these steps: 1. In the **Mule Palette** view, select **Redis > Subscribe**. 2. Drag **Subscribe** to the Studio canvas. 3. On the **Subscribe** configuration screen, optionally change the value of the **Display Name** field. 4. In **Channels** provide a list of Redis channel names or globbing patterns. ## Add a Connector Operation to the Flow When you add a connector operation to your flow, you immediately define a specific operation for that connector to perform. To add an operation for Redis Connector, follow these steps: 1. In the **Mule Palette** view, select **Redis** and then select the desired operation. 2. Drag the operation onto the Studio canvas to the right of the input source. ## Configure a Global Element for the Connector When you configure a connector, it’s best to configure a global element that all instances of that connector in the app can use. Configuring a global element requires you to provide the authentication credentials the connector uses to access the target Redis system. Redis Connector supports global elements for clustered Redis configurations and non-clustered Redis configurations. 1. Select the operation in the Studio canvas. 2. In the configuration screen for the operation, click the plus sign (+) next to the **Connector configuration** field to configure a global element that can be used by all instances of Redis Connector in the app. When you configure a global element, you can reference a configuration file that contains ANT-style property placeholders (recommended), or you can enter your authorization credentials in the global configuration properties. For information about the benefits of using property placeholders and how to configure them, see [Anypoint Connector Configuration](https://docs.mulesoft.com/connectors/introduction/intro-connector-configuration-overview). 3. On the **Connection** tab, select the connection type: - **[Clustered](#clustered-config)** - **[NonClustered](#nonclustered-config)** - **[Sentinel](#sentinel-config)** 4. Click **Test Connection** to confirm that Mule can connect with the specified server. 5. Click **OK**. ### Clustered Redis Configuration Enter the following information on the **General** tab of the **Global Element Properties** screen to configure a Clustered connection: ![Configuration fields for Redis clustered connection type](/mulesoft/current/en-us/redis-connector/latest/_images/redis-basic-config-clustered.png) 1. In **Name**, enter a name for the configuration. 2. In **Connection**, select **Clustered** to use the connector with a clustered Redis configuration. 3. Enter values for the following fields: - **Cluster Hosts** Comma-separated list for all Redis cluster hosts using the format `host:port` - **Username** Optional Redis ACL username for Redis 6 and later ACL-based authentication. When set, the connector authenticates using the `AUTH ` form. When empty, the connector falls back to the legacy `AUTH ` form. - **Password** Redis password for server authentication - **Entry TTL** Optional default time-to-live value to set on keys stored through the connector 4. Optionally, on the **Pooling** tab, configure pool sizing such as **Max Total** and **Max Wait Millis**. Starting with Redis Connector 5.8, these values are applied to the cluster client. For field descriptions, see [Clustered](https://docs.mulesoft.com/redis-connector/latest/redis-connector-reference#redis_clustered). 5. Optionally, on the **Advanced** tab, configure [timeout fields](#socket-timeout-config). 6. Click **Test Connection**. 7. Click **OK**. ### Nonclustered Redis Configuration Enter the following information on the **General** tab of the **Global Element Properties** screen to configure a non-clustered connection: ![Configuration fields for Redis non-clustered connection type](/mulesoft/current/en-us/redis-connector/latest/_images/redis-basic-config.png) 1. In **Name**, enter a name for the configuration. 2. In **Connection**, select **NonClustered** to use the connector with a non-clustered Redis configuration. 3. Enter values for the following fields: - **Host** Host for the Redis server - **Port** Port on which the non-clustered server is running - **Username** Optional Redis ACL username for Redis 6 and later ACL-based authentication. When set, the connector authenticates using the `AUTH ` form. When empty, the connector falls back to the legacy `AUTH ` form. - **Password** Password for server authentication - **Entry TTL** Optional default time-to-live value to set on keys stored through the connector 4. Optionally, on the **Advanced** tab, configure [timeout fields](#socket-timeout-config). 5. Click **Test Connection**. 6. Click **OK**. ### Sentinel Configuration Sentinel provides a high-availability solution in case of failure on your Redis cluster. To configure a Sentinel connection: 1. On the **General** tab of the **Global Element Properties**, enter a name for the configuration. 2. In **Connection**, select **Sentinel** to use the connector with a Sentinel Redis configuration. 3. Enter values for the following fields: - **Sentinels Hosts** Sentinel addresses that monitor the Redis master host to which the connector will connect - **Master Name** Name of the Redis master for which Sentinel discovers and returns the address of the master instance to connect to - **Sentinel Username** Optional Redis ACL username for authenticating to the Sentinel processes (Redis 6.2 and later). When set, the connector uses `AUTH ` to authenticate with each Sentinel. When empty, the connector falls back to the legacy `AUTH ` form. - **Sentinel Password** Password for Sentinel server authentication - **Index** Index of the database that the pool uses - **Username** Optional Redis ACL username for Redis 6 and later ACL-based authentication on the master. When set, the connector authenticates using the `AUTH ` form. When empty, the connector falls back to the legacy `AUTH ` form. - **Password** Password for Redis server authentication - **Entry TTL** Optional default time-to-live value to set on keys stored through the connector 4. Optionally, on the **Advanced** tab, configure [timeout fields](#socket-timeout-config). 5. Click **Test Connection**. 6. Click **OK**. ### Advanced Timeout Configuration On the **Advanced** tab for **Clustered**, **NonClustered**, and **Sentinel** connections, configure these timeout fields: - **Connection Timeout** Optional TCP connect timeout. The default is `2000`. - **Connection Time Unit** Time unit for **Connection Timeout**. The default is milliseconds. - **Socket Timeout** Optional read timeout for Redis command responses. This value bounds how long a single blocking command waits for the server to reply, independently of the TCP connect timeout. Leave empty to reuse **Connection Timeout** (the 5.7 and earlier single-timeout behavior). - **Socket Time Unit** Time unit for **Socket Timeout**. The default is milliseconds. This field applies only when **Socket Timeout** is set. For **Sentinel** connections, **Socket Timeout** applies to the Redis master channel. Sentinel discovery uses **Sentinel Connection Timeout** for both connect and read. For field descriptions, see [Clustered](https://docs.mulesoft.com/redis-connector/latest/redis-connector-reference#redis_clustered), [NonClustered](https://docs.mulesoft.com/redis-connector/latest/redis-connector-reference#redis_nonclustered), and [Sentinel](https://docs.mulesoft.com/redis-connector/latest/redis-connector-reference#redis_sentinel). ### TLS Configuration To enable and configure TLS for your app: 1. In the **Connection** section for the configuration, click the **Security** tab. 2. To configure a truststore, in **TLS Configuration**, select **Edit inline** and provide the following values: - **Path** Location of the truststore file. - **Password** Password for the truststore file. - **Type** File format of the truststore file. - **Algorithm** Algorithm the truststore uses. - **Insecure** Boolean that determines whether or not to validate the truststore. If set to `true`, no validation occurs. The default value is `false`. 3. To configure a keystore, enter the following values: - **Type** Optionally specify the file format of the keystore file. The default value is `JKS`. - **Path** Optionally specify the location of the keystore file. This can be used for two-way authentication for the connector. - **Alias** Attribute that indicates the alias of the key to use when the keystore contains many private keys. If not defined, the first key in the file is used by default. - **Key password** Key manager password, which is the password for the private key inside the keystore. - **Password** Store password for the keystore file. This is required only if the **Key Store Location** is configured. - **Algorithm** Algorithm used in the keystore. 4. Click **Test Connection**. 5. Click **OK**. ## View the App Log You can view the app log for the connector as follows: - If you’re running the app from the Anypoint Platform, the output is visible in the Anypoint Studio **Console** window. - If you’re running the app using Mule from the command line, the app log is visible in your OS console. Unless the log file path was customized in the app’s log file (`log4j2.xml`), you can also view the app log in `MULE_HOME/logs/.log`. For more information about the app log, see [Configuring Logging](https://docs.mulesoft.com/mule-runtime/latest/logging-in-mule). ## Next Step After you configure a global element and connection information, configure the other fields for the connector. ## See Also - [Introduction to Anypoint Connectors](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Salesforce Help](https://help.salesforce.com)