---
title: "Get Runs"
method: GET
path: "/api/v1/alerts/rules/{rule_id}/runs"
tags: ["ALERTS_V1"]
---

# Get Runs

`GET /api/v1/alerts/rules/{rule_id}/runs`

Paginated execution history for a rule, optionally filtered by status
and an ``executed_at`` date range (powers the history page's date filter).

## Path parameters

- `rule_id` integer, required

## Query parameters

- `page` integer
- `size` integer
- `status` string, nullable
- `start` string, date-time, nullable — Only runs executed at/after this time (ISO-8601)
- `end` string, date-time, nullable — Only runs executed before this time (ISO-8601)

## Response `200`

Successful Response

- RunsListResponse
  - `items` RunResponse[], required
    - `id` integer, required
    - `rule_id` integer, required
    - `status` string, required
    - `result` object, nullable
    - `error` object, nullable
    - `message` string, nullable
    - `executed_at` string, date-time, nullable
    - `created_at` string, date-time, required
    - `destinations` object, nullable, required — Recipients this run was delivered to, snapshotted at run time (lifted from ``result.destinations``) so the run-history "Destination" column doesn't have to reach into the result blob. Computed (not an input field) so it's never read off the ORM row, which has no such column. Playground reports write ``{"emails": [...], "slack_webhook_id": ...}``; metric rules leave it unset (None).
  - `total` integer, required
  - `page` integer, required
  - `size` integer, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/myaltimate/apis/fastapi.md) · [All operations](https://skmtc.net/myaltimate/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/myaltimate/fastapi/revisions/4031762f858d/schema)
