---
title: pydo.apps.list_job_invocations()
description: List Job Invocations
product: Reference
url: https://docs.digitalocean.com/reference/pydo/reference/apps/list_job_invocations/
last_updated: "2026-10-01"
---

> **For AI agents:** The documentation index is at [https://docs.digitalocean.com/llms.txt](https://docs.digitalocean.com/llms.txt). Markdown versions of pages use the same URL with `index.html.md` in place of the HTML page (for example, append `index.html.md` to the directory path instead of opening the HTML document).

# pydo.apps.list_job_invocations()

Generated on 1 Oct 2026 from `pydo` version [`v0.43.0`](https://github.com/digitalocean/pydo/releases/tag/v0.43.0v0.43.0)

## Usage

```python
client.apps.list_job_invocations(
    app_id="4f6c71e2-1e90-4762-9fee-6cc4a0a9f2cf",
    job_names=None,
    deployment_id=None,
    page=1,
    per_page=20,
)
```

Returns `JSON`Raises `HttpResponseError`

## Description

List all job invocations for an app.

## Parameters

`app_id` string required

The app ID

`job_names` array of strings optional

The job names to list job invocations for.

`deployment_id` string optional

The deployment ID

`page` integer optional

Which 'page' of paginated results to return.

Min: `1`

Default: `1`

`per_page` integer optional

Number of items returned per page

Min: `1`

Max: `200`

Default: `20`

## Request Sample

## Show Request Sample

```python
import os
from pydo import Client

client = Client(token=os.environ.get("DIGITALOCEAN_TOKEN"))

get_resp = client.apps.list_job_invocations(app_id="4f6c71e2")
```

## Pagination

This method returns paginated results. The response includes a `links.pages` object with URLs for navigating between pages. To retrieve the next page, parse the `next` URL and pass the `page` parameter:

```python
from urllib.parse import urlparse, parse_qs

resp = client.apps.list_job_invocations(app_id="4f6c71e2-1e90-4762-9fee-6cc4a0a9f2cf", )
pages = resp.get("links", {}).get("pages", {})

while "next" in pages:
    parsed = urlparse(pages["next"])
    page = int(parse_qs(parsed.query)["page"][0])
    resp = client.apps.list_job_invocations(app_id="4f6c71e2-1e90-4762-9fee-6cc4a0a9f2cf", page=page)
    pages = resp.get("links", {}).get("pages", {})
```

## Response Example

## Show Response Example

```json
{
  "job_invocations": [
    {
      "id": "ba32b134-569c-4c0c-ba02-8ffdb0492ece",
      "job_name": "good-job",
      "deployment_id": "c020763f-ddb7-4112-a0df-7f01c69fc00b",
      "phase": "SUCCEEDED",
      "created_at": "2025-09-11T11:04:05Z",
      "started_at": "2025-09-11T11:04:10Z",
      "completed_at": "2025-09-11T11:04:40Z",
      "trigger": {
        "type": "SCHEDULE",
        "properties": {
          "type": {
            "type": "string"
          },
          "scheduled": {
            "type": "object",
            "properties": {
              "schedule": {
                "type": "object",
                "properties": {
                  "cron": {
                    "type": "string",
                    "example": "*/2 * * * *"
                  },
                  "time_zone": {
                    "type": "string",
                    "example": "UTC"
                  }
                }
              }
            }
          }
        }
      }
    }
  ]
}
```

## More Information

See [`/v2/apps/{app_id}/job-invocations`](https://docs.digitalocean.com/reference/api/reference/apps/index.html.md#apps_list_job_invocations) in the API reference for additional detail on responses, headers, parameters, and more.