> Documentation index for AI agents: https://docs.pagerduty.com/llms.txt

# List action items for an Incident Review

`GET https://api.pagerduty.com/incidents/{id}/review/action_items`

List the action items on the Incident Review for the specified Incident, oldest first by creation time.

Returns an empty list for an Incident Review that has no action items, and `404` when the Incident has no Incident Review, or if the caller cannot see it.

This endpoint uses cursor pagination. Omit `cursor` for the first page, then pass the `next_cursor` from the previous response until it is `null`.

Scoped OAuth requires: `incident_reviews.read`

## Authorization

- **api_key** (apiKey) — `Authorization` header. The API Key with format `Token token=<API_KEY>`

## Path parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `id` | string | yes | The ID of the resource. |

## Query parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `limit` | integer |  | The number of results per page. Default: `25`. Minimum: 1. Maximum: 100. |
| `cursor` | string |  | Optional parameter used to request the "next" set of results from an API. The value provided here is most commonly obtained from the `next_cursor` field of the previous request. When no value is provided, the request starts at the beginning of the result set. |

## Header parameters

| Name | Type | Required | Description |
|---|---|---|---|
| `Accept` | string | yes | The `Accept` header is used as a versioning header. Default: `application/vnd.pagerduty+json;version=2`. |

## Response 200

An array of action items on the Incident Review.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `action_items` | array of object | yes |  |
| `action_items[].id` | string |  | The unique identifier of the action item. Read-only. |
| `action_items[].incident_id` | string |  | The ID of the Incident whose Incident Review this action item belongs to. Read-only. |
| `action_items[].name` | string |  | The name of the action item. |
| `action_items[].description` | string \| null |  | A long-form description of the action item. |
| `action_items[].status` | string |  | The status of the action item on the Incident Review. |
| `action_items[].priority` | string \| null |  | The priority of the action item. |
| `action_items[].assignee` | string \| null |  | The ID of the User the action item is assigned to, or `null` if it is unassigned. |
| `action_items[].due_at` | string \| null (date-time) |  | The time the action item is due, or `null` if no due date is set. |
| `action_items[].type` | string \| null |  | The type of external tracker the action item is linked to, or `null` if it is not linked to one. Note that unlike most PagerDuty resources, this names an external tracker rather than identifying the schema of the object. |
| `action_items[].external_url` | string |  | The URL of the action item in the external tracker. Only present when `type` is `Jira`; omitted from the response otherwise. |
| `action_items[].ai_generated` | boolean |  | Whether this action item was generated by AI. Read-only. |
| `action_items[].created_by` | string \| null |  | The ID of the User who created the action item. `null` when it was created by PagerDuty Advance rather than by a User. Read-only. |
| `action_items[].created_at` | string (date-time) |  | The time the action item was created. Read-only. |
| `action_items[].completed_at` | string \| null (date-time) |  | The time the action item was completed, or `null` if it has not been completed. Read-only. |
| `limit` | integer |  | The number of results per page requested. |
| `more` | boolean |  | Whether more action items exist after this page. |
| `next_cursor` | string \| null |  | The cursor to pass as `cursor` to fetch the next page, or `null` on the last page. |

Example: Response Example

```json
{
  "action_items": [
    {
      "id": "AGOBAMKTT5Z3RO7CR7T2ZGSMJA",
      "incident_id": "P1234ABC",
      "name": "Update runbook",
      "description": "Add failover steps to the runbook",
      "status": "incomplete",
      "priority": "high",
      "assignee": "PABC123",
      "due_at": "2026-09-15T17:00:00Z",
      "type": "Jira",
      "external_url": "https://example.atlassian.net/browse/PROJ-123",
      "ai_generated": false,
      "created_by": "PUSER123",
      "created_at": "2026-09-01T20:00:00Z",
      "completed_at": null
    }
  ],
  "limit": 25,
  "more": false,
  "next_cursor": null
}
```

## Response 400

Caller provided invalid arguments. Please review the response for error details. Retrying with the same arguments will *not* work.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | object |  |  |
| `error.code` | integer |  | Read-only. |
| `error.message` | string |  | Error message string. Read-only. |
| `error.errors` | array of string |  | Read-only. |

## Response 401

Caller did not supply credentials or did not provide the correct credentials.
If you are using an API key, it may be invalid or your Authorization header may be malformed.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | object |  |  |
| `error.code` | integer |  | Read-only. |
| `error.message` | string |  | Error message string. Read-only. |
| `error.errors` | array of string |  | Read-only. |

## Response 403

Caller is not authorized to view the requested resource.
While your authentication is valid, the authenticated user or token does not have permission to perform this action.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | object |  |  |
| `error.code` | integer |  | Read-only. |
| `error.message` | string |  | Error message string. Read-only. |
| `error.errors` | array of string |  | Read-only. |

## Response 404

The requested resource was not found.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | object |  |  |
| `error.code` | integer |  | Read-only. |
| `error.message` | string |  | Error message string. Read-only. |
| `error.errors` | array of string |  | Read-only. |

## Response 429

Too many requests have been made, the rate limit has been reached.

### `application/json`

| Field | Type | Required | Description |
|---|---|---|---|
| `error` | object |  |  |
| `error.code` | integer |  | Read-only. |
| `error.message` | string |  | Error message string. Read-only. |
| `error.errors` | array of string |  | Read-only. |

## Developer Agreement

Your access to and use of the PagerDuty Developer Services is governed by the [PagerDuty Developer Agreement](https://docs.pagerduty.com/developer/pagerduty-developer-agreement).
