# List runs

List the runs you own across every workflow, most recently updated first. Each entry is the run’s id, its title and when it last changed.

`GET https://api.momor.ai/workflow/runs`

The list holds the runs that belong to the caller: those the API key started, or those the signed-in person started. Load one with `GET /workflow/runs/{runId}` to see its turns and events.

## Query

- `persistence` (string): Only runs kept this way. Where absent, every run. Values: `Permanent`, `Ephemeral`.
- `skip` (integer, default `0`): How many of the newest runs to pass over.
- `take` (integer, default `50`): How many runs the page holds, from 1 to 200.

## Response

- `count` (integer): How many runs the list holds.
- `items` (run[]): The page of runs, most recently updated first.
  - `id` (uuid): The run’s id.
  - `title` (string | null): The run’s title, where a title hook has written one.
  - `updatedAt` (datetime): When the run last changed.

To page, raise `skip` by `take` until `skip` reaches `count`.

## Errors

| Status | Code | What happened |
| --- | --- | --- |
| `401` | `—` | No API key or session. |

```bash title="Request"
curl "https://api.momor.ai/workflow/runs?skip=0&take=20" \
  -H "Authorization: Bearer $MOMOR_API_KEY"
```

```python
import os, requests

runs = requests.get(
    "https://api.momor.ai/workflow/runs",
    params={"skip": 0, "take": 20},
    headers={"Authorization": f"Bearer {os.environ['MOMOR_API_KEY']}"},
).json()
```

```typescript
const response = await fetch('https://api.momor.ai/workflow/runs?skip=0&take=20', {
    headers: { Authorization: `Bearer ${process.env.MOMOR_API_KEY}` },
});
const runs = await response.json();
```

```csharp
using var http = new HttpClient { BaseAddress = new Uri("https://api.momor.ai") };
http.DefaultRequestHeaders.Authorization = new("Bearer", Environment.GetEnvironmentVariable("MOMOR_API_KEY"));

var runs = await http.GetFromJsonAsync<JsonElement>("/workflow/runs?skip=0&take=20");
```

```json title="Response"
{
  "count": 2,
  "items": [
    {
      "id": "6d2e4b90-7a1f-4c83-b5e2-0f9a3c1d7e45",
      "title": "Refund for invoice INV-20931",
      "updatedAt": "2026-10-22T13:26:41Z"
    },
    {
      "id": "a91f3c27-5b0e-4d68-8e14-c3d7f2b609a1",
      "title": null,
      "updatedAt": "2026-10-21T16:02:09Z"
    }
  ]
}
```
