---
title: "List the project's agent runs, newest first"
method: GET
path: "/api/v1/{forge}/{project}/runs"
tags: ["Project Agents"]
---

# List the project's agent runs, newest first

`GET /api/v1/{forge}/{project}/runs`

## Request

- Base URL: `https://entire.io` (the document declares no server; this is the origin it was published from)
- URL: `https://entire.io/api/v1/{forge}/{project}/runs`
- Auth: none declared

## Path parameters

- `forge` 'gh' | 'et', required
- `project` string, required

## Query parameters

- `agent_id` string
- `repository_id` string
- `trail_id` string
- `change_id` string
- `status` 'queued' | 'running' | 'succeeded' | 'failed' | 'timed_out' | 'canceled'
- `per_page` integer
- `cursor` string

## Response `200`

A page of runs visible to the caller

- object
  - `items` object[], required
    - `id` string, required
    - `project_id` string, required
    - `repository_id` string, required
    - `status` 'queued' | 'running' | 'succeeded' | 'failed' | 'timed_out' | 'canceled', required
    - `error` object, nullable, required: Why the run failed, timed out or was canceled.
      - `code` string, nullable, required
      - `message` string, required
    - `billing_subject` object, nullable, required
      - `type` 'org' | 'account', required
      - `id` string, required
    - `agent` object, required: The agent, at the version and under the name the run pinned.
      - `id` string, required
      - `version` integer, required
      - `name` string, required
    - `environment` object, required
      - `id` string, required
      - `version` integer, required
    - `trigger` object, required
      - `kind` 'push' | 'manual' | 'retry', required
      - `id` string, nullable, required
    - `actor` object, required
      - `kind` string, required
      - `id` string, required
    - `attempt` integer, required
    - `retry_of` string, nullable, required
    - `created_at` string, required
    - `updated_at` string, required
    - `dispatch_state` string, nullable, required
    - `trail_id` string, required
    - `change_id` string, required
  - `next_cursor` string

## Other responses

- `400`: Invalid request
- `401`: Not authenticated
- `403`: Agents feature disabled
- `404`: Project or run not found, or repository pull is missing
- `422`: Validation failed
- `500`: Run could not be read
- `502`: Project routing or run service unavailable
- `503`: Runs disabled or temporarily unavailable

## Changes

- **2026-10-26** `d83dd99e700e`: 1 info
  - added the new optional `query` request parameter `repository_id`
- **2026-10-23** `365f01543923`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/entire/apis/entire-api/changes/api/v1/:forge/:project/runs/get.md)

---

[API](https://skmtc.dev/entire/apis/entire-api.md) - [All operations](https://skmtc.dev/entire/apis/entire-api/llms.txt) - [OpenAPI document](https://skmtc.dev/entire/apis/entire-api/revisions/a24dfcc828d7?raw)
