---
title: "List execution tasks"
method: GET
path: "/jobs/{jobId}/executions/{executionId}/tasks"
tags: ["jobs"]
---

# List execution tasks

`GET /jobs/{jobId}/executions/{executionId}/tasks`

## Request

- Base URL: `https://api.blaxel.ai/v0`
- URL: `https://api.blaxel.ai/v0/jobs/{jobId}/executions/{executionId}/tasks`
- Auth: one of:
  - OAuth 2
    - Authorization code: `/oauth/authorize`
    - Client credentials
    - Token URL: `/oauth/token` scopes: `jobs:get`
  - HTTP bearer
- TypeScript: <https://skmtc.dev/blaxel/apis/blaxel-control-plane/docs/jobs/:jobId/executions/:executionId/tasks/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns one cursor-paginated page of an execution's tasks. Tasks are derived from event history each request; only the in-memory slicing is paginated, the events scan still fetches the whole event log behind the scenes. Available starting with API version 2026-04-28.

## Path parameters

- `jobId` string, required
- `executionId` string, required

## Query parameters

- `cursor` string
- `limit` integer
- `sort` 'createdAt:desc' | 'createdAt:asc' | 'name:asc' | 'name:desc'
- `q` string

## Response `200`

successful operation

- JobExecutionTaskList: Cursor-paginated list of an execution's tasks. Tasks are derived from event history; pagination slices the in-memory list and the cursor is a base64-JSON offset bound to (workspace, job, execution).
  - `data` JobExecutionTask[]: Page of execution tasks.
    - `conditions` JobExecutionTaskCondition[]: Task conditions
      - `executionReason` string: Execution reason
      - `message` string: Condition message
      - `reason` string: Condition reason
      - `severity` string: Condition severity
      - `state` string: Condition state
      - `type` string: Condition type
    - `metadata` JobExecutionTaskMetadata: Job execution task metadata
      - `completedAt` string: Completion timestamp
      - `createdAt` string: Creation timestamp
      - `name` string: Task name
      - `scheduledAt` string: Scheduled timestamp
      - `startedAt` string: Start timestamp
      - `updatedAt` string: Last update timestamp
    - `spec` JobExecutionTaskSpec: Job execution task specification
      - `maxRetries` integer: Maximum number of retries
      - `timeout` string: Task timeout duration
    - `status` 'unspecified' | 'pending' | 'reconciling' | 'failed' | 'succeeded' | 'running' | 'cancelled': Job execution task status
  - `meta` PaginationMeta: Pagination metadata returned alongside a page of listing results. Always present on listing endpoints starting with API version 2026-04-28.
    - `hasMore` boolean: True when more pages are available beyond the current one.
    - `nextCursor` string: Opaque cursor to pass back as the `cursor` query param for the next page. Empty when there are no more pages.
    - `total` integer: Total number of items in the workspace, ignoring the current page's filters. Lets the UI render "page X of Y" without walking the cursor chain. Computed from the hash-only metadata.workspace GSI count, so search (`q`) does not narrow it.

## Other responses

- `400`: bad request
- `404`: job or execution not found
- `500`: internal server error

---

[API](https://skmtc.dev/blaxel/apis/blaxel-control-plane.md) - [All operations](https://skmtc.dev/blaxel/apis/blaxel-control-plane/llms.txt) - [OpenAPI document](https://skmtc.dev/blaxel/apis/blaxel-control-plane/revisions/dfa264bc72ee?raw)
