---
title: "Download a client-ready PDF visibility report"
method: GET
path: "/reports/visibility"
tags: ["Deliverables"]
---

# Download a client-ready PDF visibility report

`GET /reports/visibility`

Renders a multi-page PDF for the chosen run. `runId` is required — the caller picks the run from `/reports/runs`. Optionally include the full per-prompt detail via `includePrompts=1`.

## Query parameters

- `projectId` string, uuid, required
- `runId` string, uuid, required
- `includePrompts` '1' | '0' | 'true' | 'false' | 'yes' | 'no'
- `promptAttributes` string

## Response `200`

PDF report.

## Other responses

- `400` — Missing or invalid request parameter.
- `401` — Missing, malformed, or revoked API key.
- `402` — Monthly included API calls for your tier are used up (code `USAGE_LIMIT`). Body includes a `limit` object — `{ limitHit, currentTier, targetTier, feature, cap, used, resetAt }` — describing the cap and the upgrade that lifts it.
- `404` — Resource not found or not owned by your account.
- `429` — Rate limit, project cap, or daily quota hit. Body includes a `code` field.
- `500` — Server error. Retry; if persistent, contact support.

---

[API](https://skmtc.dev/openlens/apis/openlens-api.md) · [All operations](https://skmtc.dev/openlens/apis/openlens-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/openlens/openlens-api/revisions/f8f03e555193/schema)
