> ## Documentation Index
> Fetch the complete documentation index at: https://upstash.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# CLIENT SETINFO

> Set client library name and version information.

The `CLIENT SETINFO` command sets client library name and version information that will be shown in CLIENT LIST and CLIENT INFO commands. This helps identify which client library is being used and is useful for debugging and monitoring.

## Arguments

<ParamField body="attribute" type="Literal['LIB-NAME', 'LIB-VER']" required>
  The attribute to set (case-insensitive):

  * `"LIB-NAME"` or `"lib-name"`: Library name
  * `"LIB-VER"` or `"lib-ver"`: Library version
</ParamField>

<ParamField body="value" type="str" required>
  The value to set for the attribute.
</ParamField>

## Response

<ResponseField type="str" required>
  Returns `"OK"` if the attribute was successfully set.
</ResponseField>

<RequestExample>
  ```py Set Library Name theme={"system"}
  # Set the library name
  result = redis.client_setinfo("LIB-NAME", "redis-py")
  assert result == "OK"
  ```

  ```py Set Library Version theme={"system"}
  # Set the library version
  result = redis.client_setinfo("LIB-VER", "1.0.0")
  assert result == "OK"
  ```

  ```py Lowercase Attributes theme={"system"}
  # Attributes are case-insensitive
  redis.client_setinfo("lib-name", "redis-py")
  redis.client_setinfo("lib-ver", "2.0.0")
  ```

  ```py With Custom Suffix theme={"system"}
  # Common pattern: include wrapper or framework info
  redis.client_setinfo("LIB-NAME", "redis-py(upstash_v1.0.0)")
  redis.client_setinfo("LIB-VER", "1.0.0")
  ```

  ```py Complete Setup theme={"system"}
  # Set both library name and version
  redis.client_setinfo("LIB-NAME", "my-redis-wrapper")
  redis.client_setinfo("LIB-VER", "3.2.1")

  # Now this information will appear in CLIENT LIST output
  ```
</RequestExample>

## Use Cases

* **Debugging**: Identify which client library version is being used
* **Monitoring**: Track different client libraries connecting to Redis
* **Analytics**: Understand client library distribution across connections
* **Support**: Quickly identify client versions when troubleshooting issues

## Viewing Client Information

After setting client info, you can view it using the CLIENT LIST command:

```py theme={"system"}
# Set client information
redis.client_setinfo("LIB-NAME", "redis-py")
redis.client_setinfo("LIB-VER", "1.0.0")

# View all clients (if you have access to CLIENT LIST)
# The output will include lib-name and lib-ver fields
```

## Best Practices

1. **Set on Connection**: Set client info immediately after establishing a connection
2. **Include Version**: Always set both library name and version
3. **Use Descriptive Names**: Make library names easily identifiable
4. **Version Format**: Use semantic versioning (e.g., "1.2.3")
5. **Include Context**: Add wrapper or framework info if applicable

<Note>
  This command is available in Redis 7.2.0 and later. The attribute names are case-insensitive and will be normalized to uppercase.
</Note>
