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

# Read snapshot

> Read the latest snapshot or a snapshot at a specific offset.

## Latest snapshot

`GET /ds/{bucket}/{stream}/snapshot` redirects to the latest published snapshot's offset-specific URL.

<ParamField path="bucket" type="string" required>
  Bucket ID.
</ParamField>

<ParamField path="stream" type="string" required>
  Stream ID.
</ParamField>

| Status | Meaning                                                       |
| ------ | ------------------------------------------------------------- |
| `307`  | Redirect to `/ds/{bucket}/{stream}/snapshot/{offset}`.        |
| `404`  | Stream not found, expired, or no snapshot has been published. |

Response headers include `Location`, `Stream-Next-Offset`, `Stream-Snapshot-Offset`, and `Stream-Up-To-Date`.

***

## Snapshot at offset

`GET /ds/{bucket}/{stream}/snapshot/{offset}` returns the snapshot blob at a specific offset.

<ParamField path="offset" type="string" required>
  Snapshot offset (hex or decimal token).
</ParamField>

| Status | Meaning                                |
| ------ | -------------------------------------- |
| `200`  | Snapshot blob returned.                |
| `404`  | Stream, snapshot, or offset not found. |

Response headers include `Content-Type`, `Stream-Next-Offset`, `Stream-Snapshot-Offset`, `Stream-Up-To-Date`, and `Stream-Closed`.

<RequestExample>
  ```bash Follow redirect to latest theme={null}
  curl -L 'https://stream.tonbo.dev/ds/demo/hello/snapshot'
  ```

  ```bash Read specific offset theme={null}
  curl 'https://stream.tonbo.dev/ds/demo/hello/snapshot/000000000000002a'
  ```
</RequestExample>

<Note>
  Snapshot reads go through a linearizable freshness check to ensure you see the latest published snapshot. If the snapshot blob hasn't replicated to the current node yet, the request may be redirected to the leader.
</Note>

<Info>
  See [snapshots](/concepts/snapshots) for the snapshot lifecycle.
</Info>
