---
title: "Get Job"
method: GET
path: "/v1/jobs/{job_id}"
tags: ["jobs"]
---

# Get Job

`GET /v1/jobs/{job_id}`

## Path parameters

- `job_id` string, uuid, required

## Response `200`

Successful Response

- JobResponse — A job resource — the uniform, control-plane envelope over every job implementation. Stable across every status; status-specific fields (``error``) are present-but-null rather than added/removed. Heavy, high-frequency, or implementation-specific data lives behind the ``*_url`` sub-resources, never inline.
  - `id` union, required
    - string, uuid
    - string
  - `job_type` string, required
  - `status` 'pending' | 'running' | 'completed' | 'failed' | 'cancelled', required
  - `progress` number, nullable
  - `error` JobError — Structured failure info; present on a ``JobResponse`` only when ``status == failed``.
    - `code` string, required
    - `message` string, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `metrics_url` string, required
  - `result_url` string, required
  - `artifacts_url` string, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/outerproduct/apis/outerproduct-api.md) · [All operations](https://skmtc.net/outerproduct/apis/outerproduct-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/outerproduct/outerproduct-api/revisions/6c6e81fb3282/schema)
