---
title: "Get Exam Results for the whole School"
method: GET
path: "/Exams/Results/School"
tags: ["Exams"]
---

# Get Exam Results for the whole School

`GET /Exams/Results/School`

**Requires permission:** *ExamAdmin*

Get every pupil's exam results and component marks for one exam year, or a single pupil's full history when Upi is supplied. Release dates in EX_Settings are applied unless BypassLockdown is set by a caller holding ExamAdmin.

## Query parameters

- `year` integer, nullable
- `upi` string, guid, nullable
- `level` string, nullable
- `includeComponentMarks` boolean, required
- `bypassLockdown` boolean, required
- `page` integer, required
- `pageSize` integer, required
- `includes` string[], nullable
- `sort` string, nullable
- `filter` string, nullable

## Response `200`

Success - Success

- GetSchoolExamResultsResponse
  - `results` SchoolExamResultView[]
    - `upi` string, guid, nullable
    - `pupilName` string, nullable
    - `forename` string, nullable
    - `surname` string, nullable
    - `yearGroup` string, nullable
    - `house` string, nullable
    - `candidateNumber` integer, nullable
    - `passNameId` integer, nullable
    - `year` integer
    - `subject` string, nullable
    - `subjectCode` string, nullable
    - `exam` string, nullable
    - `level` string, nullable
    - `grade` string, nullable
    - `mark` string, nullable
    - `maxMark` string, nullable
    - `item` string, nullable
    - `boardCode` string, nullable
    - `examCode` string, nullable
    - `points` integer, nullable
    - `components` ExamComponentView[]
      - `year` integer
      - `examBoard` string, nullable
      - `subject` string, nullable
      - `component` string, nullable
      - `componentCode` string, nullable
      - `componentMark` string, nullable
      - `maximumMark` integer, nullable
      - `examCode` string, nullable
  - `examSettings` ExamSetting[]
    - `id` integer
    - `examType` string, nullable
    - `visibleToStudents` string, date-time, nullable
    - `visibleToStaff` string, date-time, nullable
    - `visibleToParents` string, date-time, nullable
    - `dateToDisplay` string, date-time
    - `saving` boolean
    - `currentlyVisible` boolean
  - `availableYears` integer[]
  - `year` integer, nullable
  - `lockdownBypassed` boolean
  - `hiddenByLockdown` integer
  - `componentMarksVisible` boolean
  - `currentDateTime` string, date-time, nullable
  - `currentDateTimeUtc` string, date-time, nullable
  - `meta` Meta
    - `page` integer
    - `pageSize` integer
    - `total` integer

## Other responses

- `400` — An Error Occurred - Explain Error
- `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/revisions/4d9bcf62aa69/schema)
