---
title: "Download the project Gantt chart as a PDF"
method: GET
path: "/reports/project/{id}/gantt.pdf"
tags: ["reports"]
---

# Download the project Gantt chart as a PDF

`GET /reports/project/{id}/gantt.pdf`

## Request

- Base URL: `https://api.onplana.com/api`
- URL: `https://api.onplana.com/api/reports/project/{id}/gantt.pdf`
- Auth: one of:
  - HTTP bearer
  - API key in header `Authorization`

Renders the Gantt server-side as a vector PDF: a task table (WBS number, name, start, finish, and with table=full also duration, percent and owner), the timeline with weekend and holiday shading from the project calendar, status-coloured bars with progress, summary brackets, milestone diamonds, finish-to-start arrows, an optional baseline overlay and the critical path in red. Available on every plan with the same visibility rule as the Excel and MSPDI exports. Refuses more than 20,000 tasks (422 FILE_TOO_COMPLEX) and a layout over 600 pages (422 PDF_TOO_LARGE). Rate limited to 30 exports per user per hour (429).

## Path parameters

- `id` string, required

## Query parameters

- `token` string, required
- `pageSize` string
- `orientation` string
- `margins` string
- `scale` string
- `fit` string
- `table` string
- `from` string
- `to` string
- `baselineId` string
- `showCriticalPath` string
- `showDependencies` string
- `showBaseline` string
- `hideCompleted` string

## Headers

- `X-Organization-Id` string, required

## Response `200`

PDF file download; X-Gantt-Pdf-Pages carries the page count

## Other responses

- `400`: Invalid export options
- `404`: Project or baseline not found, or project not visible to the caller
- `422`: Too many tasks, or the layout would exceed 600 pages
- `429`: Rate limited

---

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