---
title: "List Job Events"
method: GET
path: "/v1/jobs/{job_id}/events"
tags: ["public_api", "external", "capabilities"]
---

# List Job Events

`GET /v1/jobs/{job_id}/events`

## Request

- Base URL: `https://api.hydracept.com`
- URL: `https://api.hydracept.com/v1/jobs/{job_id}/events`
- Auth: HTTP bearer

Append-only lifecycle stream for a job.

Events are ordered by monotonic cursor ids. Use the cursor parameter to page forward.

## Path parameters

- `job_id` string, required

## Query parameters

- `cursor` string, nullable: Exclusive lower bound on the event id. Persist the last event cursor. nextCursor is set only when another page remains.
- `type` string, nullable: When set, return only this event type. job.reader_text is partial output from the in-flight call. cursor is an exclusive lower bound; persist the last event cursor.
- `limit` integer

## Response `200`

Successful Response

- object

## Other responses

- `401`: Structured public error envelope (`code`, `message`, `requestId`, …)
- `403`: Structured public error envelope (`code`, `message`, `requestId`, …)
- `404`: Structured public error envelope (`code`, `message`, `requestId`, …)
- `422`: Validation failure: public envelope plus Pydantic `detail` / `validationErrors`
- `429`: Structured public error envelope (`code`, `message`, `requestId`, …)
- `500`: Structured public error envelope (`code`, `message`, `requestId`, …)
- `502`: Structured public error envelope (`code`, `message`, `requestId`, …)
- `503`: Structured public error envelope (`code`, `message`, `requestId`, …)

---

[API](https://skmtc.dev/hydracept/apis/hydracept-public-api.md) · [All operations](https://skmtc.dev/hydracept/apis/hydracept-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hydracept/apis/hydracept-public-api/revisions/2d41a8069ede?raw)
