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

# redis

# `prefect.blocks.redis`

## Classes

### `RedisStorageContainer` <sup>[https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L24](https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L24)</sup>

Block used to interact with Redis as a filesystem

**Attributes:**

* `host`: The value to store.
* `port`: The value to store.
* `db`: The value to store.
* `username`: The value to store.
* `password`: The value to store.
* `connection_string`: The value to store.

**Methods:**

#### `aread_path` <sup>[https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L77](https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L77)</sup>

```python theme={null}
aread_path(self, path: Path | str) -> Optional[bytes]
```

Read the redis content at `path`

**Args:**

* `path`: Redis key to read from

**Returns:**

* Contents at key as bytes, or None if key does not exist

#### `awrite_path` <sup>[https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L116](https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L116)</sup>

```python theme={null}
awrite_path(self, path: Path | str, content: bytes) -> bool
```

Write `content` to the redis at `path`

**Args:**

* `path`: Redis key to write to
* `content`: Binary object to write

**Returns:**

* True if the key was set successfully

#### `block_initialization` <sup>[https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L67](https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L67)</sup>

```python theme={null}
block_initialization(self) -> None
```

#### `from_connection_string` <sup>[https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L204](https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L204)</sup>

```python theme={null}
from_connection_string(cls, connection_string: str | SecretStr) -> Self
```

Create block from a Redis connection string

Supports the following URL schemes:

* `redis://` creates a TCP socket connection
* `rediss://` creates a SSL wrapped TCP socket connection
* `unix://` creates a Unix Domain Socket connection

See \[Redis docs]\([https://redis.readthedocs.io/en/stable/examples](https://redis.readthedocs.io/en/stable/examples)
/connection\_examples.html#Connecting-to-Redis-instances-by-specifying-a-URL
-scheme.) for more info.

**Args:**

* `connection_string`: Redis connection string

**Returns:**

* `RedisStorageContainer` instance

#### `from_host` <sup>[https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L178](https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L178)</sup>

```python theme={null}
from_host(cls, host: str, port: int = 6379, db: int = 0, username: None | str | SecretStr = None, password: None | str | SecretStr = None) -> Self
```

Create block from hostname, username and password

**Args:**

* `host`: Redis hostname
* `username`: Redis username
* `password`: Redis password
* `port`: Redis port

**Returns:**

* `RedisStorageContainer` instance

#### `read_path` <sup>[https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L90](https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L90)</sup>

```python theme={null}
read_path(self, path: Path | str) -> Optional[bytes]
```

Read the redis content at `path`

**Args:**

* `path`: Redis key to read from

**Returns:**

* Contents at key as bytes, or None if key does not exist

#### `read_path` <sup>[https://github.com/PrefectHQ/prefect/blob/main/src/prefect/filesystems.py#L37](https://github.com/PrefectHQ/prefect/blob/main/src/prefect/filesystems.py#L37)</sup>

```python theme={null}
read_path(self, path: str) -> bytes
```

#### `write_path` <sup>[https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L131](https://github.com/PrefectHQ/prefect/blob/main/src/prefect/blocks/redis.py#L131)</sup>

```python theme={null}
write_path(self, path: Path | str, content: bytes) -> bool
```

Write `content` to the redis at `path`

**Args:**

* `path`: Redis key to write to
* `content`: Binary object to write

**Returns:**

* True if the key was set successfully

#### `write_path` <sup>[https://github.com/PrefectHQ/prefect/blob/main/src/prefect/filesystems.py#L41](https://github.com/PrefectHQ/prefect/blob/main/src/prefect/filesystems.py#L41)</sup>

```python theme={null}
write_path(self, path: str, content: bytes) -> None
```
