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

# workflows snapshots list

> List a workflow's automatic version-history snapshots, newest first.

List a workflow's snapshots — the automatic version history. Snapshots are an immutable, content-addressed capture of the whole workflow graph, auto-created before every node edit and at run start. They form the undo log: find the snapshot from just before a bad change, then inspect it with [`clay workflows snapshots get`](/cli/reference/workflows-snapshots-get) or roll back with [`clay workflows snapshots restore`](/cli/reference/workflows-snapshots-restore).

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
clay workflows snapshots list <workflowId>
```

## Arguments

| Argument     | Description                              |
| ------------ | ---------------------------------------- |
| `workflowId` | Workflow id, e.g. `wf_abc123`. Required. |

## Output

Results are returned newest-first, so `data[0]` is the most recent snapshot.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "data": [
    {
      "id": "snap_xyz",
      "hash": "a1b2c3d4",
      "createdAt": "2026-06-01T12:00:00Z",
      "nodeCount": 8,
      "edgeCount": 7
    }
  ]
}
```

| Field              | Type   | Description                                                  |
| ------------------ | ------ | ------------------------------------------------------------ |
| `data[].id`        | string | Snapshot id. Pass to `snapshots get` or `snapshots restore`. |
| `data[].hash`      | string | Content-addressed hash of the captured graph.                |
| `data[].createdAt` | string | When the snapshot was taken.                                 |
| `data[].nodeCount` | number | Number of nodes in the captured graph.                       |
| `data[].edgeCount` | number | Number of edges in the captured graph.                       |

## Errors

| Code               | Exit | Notes                                          |
| ------------------ | ---- | ---------------------------------------------- |
| `validation_error` | 2    | `workflowId` argument is required.             |
| `not_found`        | 6    | No workflow with that id.                      |
| `auth_forbidden`   | 3    | The API key lacks permission for this command. |

## Examples

```bash theme={"theme":{"light":"github-light","dark":"github-dark"}}
clay workflows snapshots list wf_abc123
clay workflows snapshots list wf_abc123 | jq -r '.data[0].id'
clay workflows snapshots list wf_abc123 | jq '.data | length'
```
