---
title: "Generate School Report PDF"
method: POST
path: "/Pdf/SchoolReport"
tags: ["Pdf"]
---

# Generate School Report PDF

`POST /Pdf/SchoolReport`

**Requires permissions:** *Guardian* or *Leaver* or *Parent* or *StaffMember* or *Student*

Renders school reports to a branded PDF in-house (QuestPDF) and returns the bytes.

## Query parameters

- `page` integer, required
- `pageSize` integer, required
- `includes` string[], nullable
- `sort` string, nullable
- `filter` string, nullable

## Request body

- PostSchoolReportPdfRequest
  - `reportName` string, nullable
  - `students` PostSchoolReportPdfReportStudent[]
    - `studentName` string, nullable
    - `entries` PostSchoolReportPdfReportSection[]
      - `title` string, nullable
      - `grades` PostSchoolReportPdfReportGrade[]
        - `displayName` string, nullable
        - `value` string, nullable
      - `bodyHtml` string, nullable
      - `trailingText` string, nullable

## Response `200`

Success - PDF bytes (application/pdf)

## Other responses

- `204` — No Content
- `400` — An error occurred generating the PDF
- `401` — Unauthorized
- `403` — Forbidden

---

[API](https://skmtc.net/tonbridge/apis/tonbridge-app-api.md) · [All operations](https://skmtc.net/tonbridge/apis/tonbridge-app-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tonbridge/tonbridge-app-api/versions/28344aa564b4/schema)
