---
title: "Download Job Compliance Pdf"
method: GET
path: "/v1/jobs/{job_id}/pdf"
tags: ["Async Job Status & Results"]
---

# Download Job Compliance Pdf

`GET /v1/jobs/{job_id}/pdf`

## Request

- Base URL: `https://api.vectelos.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.vectelos.com/v1/jobs/{job_id}/pdf`
- Auth: none declared

Renders the advisory landed-cost estimate as a PDF for the account to hand to
its customs broker. Not CBP Form 7501 and not a filing.

The download is single-shot FOR A BROWSER SESSION: once the bytes are on
their way, the stored result is cleared (best-effort — the 30-minute TTL is
the backstop). A machine caller keeps its result until the row expires, so
an ERP that retries a failed download, or fetches the JSON and the PDF in
either order, is not punished for it. That is decided by the credential that
OPENED the job, not the one reading it now: a human downloading one PDF from
the portal must not clear a batch the ERP is midway through collecting.
See docs/api_retention_decisions.md.

## Path parameters

- `job_id` string, required

## Headers

- `authorization` string, nullable: Bearer <JWT session token>

## Cookies

- `vx_session` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

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