> ## Documentation Index
> Fetch the complete documentation index at: https://upstash-dx-3009-array-sdk-docs.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# ARGETRANGE

> Read every slot in an inclusive array range.

A start greater than the end returns values in reverse index order. The server rejects ranges containing more than 1,000,000 indexes. Use [ARSCAN](./arscan) for sparse ranges.

## Arguments

<ParamField body="key" type="string" required>
  The array key.
</ParamField>

<ParamField body="start" type="number | string" required>
  The first index of the inclusive range.
</ParamField>

<ParamField body="end" type="number | string" required>
  The last index of the inclusive range.
</ParamField>

## Response

<ResponseField type="(TData | null)[]" required>
  One value per index in the range, including `null` (TypeScript) / `None` (Python) for empty slots.
</ResponseField>

Values use the SDK's automatic deserialization. Use `TData` to describe stored JSON values; it defaults to `string`.

<RequestExample>
  ```ts Example theme={"system"}
  await redis.armset("readings", { 0: "a", 2: "c" });
  console.log(await redis.argetrange("readings", 0, 3)); // ["a", null, "c", null]
  console.log(await redis.argetrange("readings", 2, 0)); // ["c", null, "a"]
  ```
</RequestExample>

See the [server command reference](/redis/commands/array/argetrange) for protocol details.
