---
title: "List durable jobs for this account"
method: GET
path: "/jobs"
tags: ["Jobs"]
---

# List durable jobs for this account

`GET /jobs`

## Request

- Base URL: `https://api.domscout.io`
- URL: `https://api.domscout.io/jobs`
- Auth: API key in header `x-api-key`

Returns safe metadata for durable jobs owned by this account, including child jobs. Inputs, result artifact keys, and raw payloads are never returned. This is a free control-plane read.

## Query parameters

- `limit` integer
- `offset` integer

## Response `200`

A bounded, newest-first page of durable jobs.

- JobListResponse
  - `jobs` JobListItem[], required
    - `jobId` string, uuid, required
    - `status` 'pending' | 'processing' | 'retrying' | 'done' | 'error' | 'cancel_requested' | 'cancelled', required
    - `kind` string, required
    - `parentJobId` string, uuid, nullable
    - `createdAt` string, date-time, required
    - `startedAt` string, date-time, nullable
    - `completedAt` string, date-time, nullable
    - `cancellationRequestedAt` string, date-time, nullable
    - `counts` ChildCounts, required
      - `total` integer
      - `pending` integer
      - `processing` integer
      - `done` integer
      - `completed` integer
      - `succeeded` integer
      - `error` integer
      - `failed` integer
      - `cancelled` integer
    - `timing` TimingBreakdown
      - `queuedMs` integer
      - `browserMs` integer
      - `uploadMs` integer
      - `webhookMs` integer
      - `totalMs` integer
    - `requestSummary` object
    - `resultSummary` object
    - `error` JobError
      - `code` string, required
      - `message` string, required
    - `expiresAt` string, date-time, nullable
    - `updatedAt` string, date-time, nullable
  - `pagination` CollectionPagination, required
    - `total` integer, required
    - `limit` integer, required
    - `offset` integer, required

## Other responses

- `403`: The request was refused. Returned when the x-api-key header is missing, revoked, or invalid, and when a valid key is blocked by a plan entitlement, the trusted-JavaScript account entitlement, a global product pause, or a security policy. A plan-only restriction returns code PLAN_FEATURE_UNAVAILABLE and can include upgrade_url. FEATURE_NOT_ENABLED identifies either the global product emergency pause or an eligible Business account without trusted-JavaScript permission; it carries no upgrade_url, so upgrading or retrying cannot clear it. Browser capture can return BROWSER_ISOLATION_REQUIRED or BROWSER_EXECUTION_DENIED with reason public_capture_not_enabled when browser work is unavailable for your account. These platform restrictions carry no upgrade_url and are not resolved by changing plan or key. Check GET /credits for current account capabilities. The API does not use 401: it authenticates with an API key header rather than an HTTP authentication scheme, so there is no WWW-Authenticate challenge to issue.
- `429`: The plan quota or rate limit has been reached.
- `500`: An unexpected service error occurred.
- `503`: A dependency this request needs is unavailable or not configured for this deployment. Codes: SUPABASE_TIMEOUT and SUPABASE_INVALID_RESPONSE (a storage operation did not answer, or answered unreadably — the write may have committed, so any retry must be idempotent), CAPTURE_ARTIFACT_UNAVAILABLE and CAPTURE_ARTIFACT_CORRUPT (a stored artifact could not be read or parsed), ASYNC_JOBS_NOT_CONFIGURED and CAPTURE_RETRIEVAL_NOT_CONFIGURED (the capability is not configured here, on any plan). Retryable unless the code names a deployment configuration.

---

[API](https://skmtc.dev/domscout/apis/domscout-api.md) · [All operations](https://skmtc.dev/domscout/apis/domscout-api/llms.txt) · [OpenAPI document](https://skmtc.dev/domscout/apis/domscout-api/revisions/20562d5b5d94?raw)
