---
title: "Download a run result as a styled PDF"
method: GET
path: "/v1/runs/{id}/result.pdf"
tags: ["runs"]
---

# Download a run result as a styled PDF

`GET /v1/runs/{id}/result.pdf`

## Request

- Base URL: `https://api.hyperresearch.ai`
- URL: `https://api.hyperresearch.ai/v1/runs/{id}/result.pdf`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `hr_session`

Typesets the finished report — cover, contents, body with superscript citations and the sources each section cites, and the verification receipt — and returns it as a PDF. `size` is `a4` (default) or `letter`. The bytes are cached per run, result and size, and served as an attachment. Requires Cloudflare Browser Rendering on the account; a deployment without it answers 501 `pdf_unavailable`.

## Path parameters

- `id` string, required

## Query parameters

- `size` 'a4' | 'letter': Paper size. Defaults to A4.

## Response `200`

The report as a PDF

## Other responses

- `304`: The rendered document has not changed since the client’s `ETag`.
- `400`: Invalid request
- `401`: Authentication failed
- `403`: Insufficient scope or plan
- `404`: Not found
- `429`: Rate limited or over quota
- `500`: Internal error
- `501`: PDF rendering is not enabled on this deployment

---

[API](https://skmtc.dev/hyperresearch/apis/hyperresearch-cloud-api.md) · [All operations](https://skmtc.dev/hyperresearch/apis/hyperresearch-cloud-api/llms.txt) · [OpenAPI document](https://skmtc.dev/hyperresearch/apis/hyperresearch-cloud-api/revisions/726ef831ebf4?raw)
