---
title: "Download a job report as a PDF"
method: GET
path: "/api/v2/jobs/{job_id}/download_report"
tags: ["jobs"]
---

# Download a job report as a PDF

`GET /api/v2/jobs/{job_id}/download_report`

## Request

- Base URL: `https://api.ai.vision.tiliter.com`
- URL: `https://api.ai.vision.tiliter.com/api/v2/jobs/{job_id}/download_report`
- Auth: API key in header `X-API-Key`

Generate and stream a PDF report for a completed job.

The report is rendered fresh on every request from stored run data and
is never cached. Visible to the job's owner, or to an ADMIN/OWNER of the
organisation that ran the job. Returns 404 for jobs the caller may not
see (so existence is not leaked) and 409 for jobs that have not finished
running.

## Path parameters

- `job_id` string, required

## Query parameters

- `tz` string, nullable: Optional IANA timezone name (e.g. `Australia/Sydney`, `America/Los_Angeles`) used to render every timestamp in the PDF. When omitted or set to an unknown value, the report renders in UTC. The zone is labelled once, under the Job Details table.

## Response `200`

The rendered job report.

## Other responses

- `404`: Job does not exist or the caller may not see it.
- `409`: Job has not finished running, so no report is available yet.
- `422`: Validation Error

---

[API](https://skmtc.dev/tiliter/apis/tiliter-vision-ai-public-api.md) - [All operations](https://skmtc.dev/tiliter/apis/tiliter-vision-ai-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/tiliter/apis/tiliter-vision-ai-public-api/revisions/d1aed8b7c278?raw)
