---
title: "List a run's items"
method: GET
path: "/org/content-generation/runs/{run_id}/items"
tags: ["Content Generation"]
---

# List a run's items

`GET /org/content-generation/runs/{run_id}/items`

## Request

- Base URL: `https://apiv2.senso.ai/api/v1`
- URL: `https://apiv2.senso.ai/api/v1/org/content-generation/runs/{run_id}/items`
- Auth: API key in header `X-API-Key`

Returns the run's individual work items — one per prompt — with each item's outcome and the content it produced. Requires the GEO product.

## Path parameters

- `run_id` string, uuid, required

## Query parameters

- `limit` integer
- `offset` integer
- `status` 'pending' | 'running' | 'succeeded' | 'failed' | 'skipped' | 'stopped'

## Response `200`

One page of the run's items.

- ContentGenerationRunItemsResponse: One page of a run's items.
  - `items` ContentGenerationRunItem[], required
    - `run_item_id` string, uuid, required
    - `run_id` string, uuid, required
    - `geo_question_id` string, uuid, required
    - `question_text` string, required
    - `queue_type` string, required: `create` (the prompt had no content yet) or `update` (regenerating existing content).
    - `status` 'pending' | 'running' | 'succeeded' | 'failed' | 'skipped' | 'stopped', required
    - `failed_at_step` 'validation' | 'kb_search' | 'content_generation' | 'metadata_generation' | 'json_ld_extraction' | 'content_persist' | 'publish' | 'unknown': The pipeline step where a failed item gave up.
    - `operator_message` string: A human-readable explanation of the item's outcome.
    - `content_id` string, uuid: The content item this run item produced or updated, once one exists.
    - `version_id` string, uuid: The content version this run item produced, once one exists.
    - `publish_summary` unknown
    - `started_at` string, date-time
    - `completed_at` string, date-time
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
  - `total` integer, required: The total number of items matching the filter.
  - `limit` integer, required
  - `offset` integer, required

## Other responses

- `400`: The request was malformed — a bad path/query parameter or an invalid value.
- `401`: Missing or invalid credentials — supply a valid org API key in the `X-API-Key` header.
- `403`: The API key is authenticated but not permitted to access this resource.
- `404`: The requested resource does not exist or is not visible to this key.

---

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