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

# Job Diagnosis

`GET /jobs/{job_id}/diagnosis`

## Request

- Base URL: `https://api.os3robotics.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.os3robotics.com/jobs/{job_id}/diagnosis`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

OS3's operator agent's newest diagnosis of the job, null before it has one.

## Path parameters

- `job_id` string, uuid, required

## Response `200`

Successful Response

- JobDiagnosis: OS3's operator agent's diagnosis of a job that failed, or stalled (nothing changed for an hour), or succeeded with a model OS3's policy server cannot serve (undeployable): `queued` or `running` while it diagnoses, `done` with its diagnosis, or `failed` / `killed` without one; `agent` when OS3's job agent works on the job instead (GET /jobs/{id}/agent).
  - `reason` 'failed' | 'stalled' | 'undeployable', required
  - `state` 'queued' | 'running' | 'done' | 'failed' | 'killed' | 'agent', required
  - `diagnosis` Diagnosis, required
    - `summary` string, required
    - `hypotheses` Hypothesis[], required
      - `cause` string, required
      - `confidence` number, required
      - `evidence` string[], required
      - `action` string, required
      - `detail` string, required
      - `needs_confirmation` boolean, required
  - `created_at` string, date-time, required
  - `finished_at` string, date-time, nullable, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/os3robotics/apis/os3-api.md) - [All operations](https://skmtc.dev/os3robotics/apis/os3-api/llms.txt) - [OpenAPI document](https://skmtc.dev/os3robotics/apis/os3-api/revisions/af32cd4f14bb?raw)
