---
title: "Grade point average on the NZ nine point scale"
method: POST
path: "/v1/gpa"
tags: ["Calculators"]
---

# Grade point average on the NZ nine point scale

`POST /v1/gpa`

## Request

- Base URL: `https://api.calculate.co.nz`
- URL: `https://api.calculate.co.nz/v1/gpa`
- Auth: API key in header `X-API-Key`

Credit-weighted grade point average for a New Zealand university.

THE SCALE IS NINE POINTS, NOT FOUR. New Zealand universities grade A+ 9,
A 8, A- 7, B+ 6, B 5, B- 4, C+ 3, C 2, C- 1, with D and below at zero. A
GPA of 7.0 here is a strong result, not a broken 4.0 figure, and the two
scales do not convert by scaling: the bands do not correspond.

It is credit-weighted, not an average of grades, so an A+ in a 15 credit
paper does not cancel a C in a 45 credit one. Failed papers still count
their credits at zero points, which is why a fail costs more than expected.

Each paper's contribution comes back so the number can be checked rather
than trusted.

Universities differ on repeated papers, cross-credits and how an award GPA
is worked out. Use `scale` if yours weights grades differently.

## Request body

- GPARequest
  - `courses` GPACourseInput[], required: One entry per paper. Papers with zero credits are ignored.
    - `grade` string, required: Grade for the paper. A+ through C- carry points; D+ and below are zero.
    - `credits` number, required: Credit value of the paper, commonly 15 in NZ.
  - `scale` object, nullable: Override the points for particular grades if your institution differs. Anything not named keeps its New Zealand value.

## Response `200`

The GPA, and each paper's contribution to it.

- GPAResponse
  - `result` GPAResult, required
    - `gpa` number, required: Credit-weighted grade point average on the NEW ZEALAND NINE POINT scale, where A+ is 9. This is not a 4.0 GPA: 7.0 here is a strong result, and the two scales do not convert by simple scaling.
    - `total_credits` number, required: Credits counted, including failed papers.
    - `total_weighted_points` number, required: Sum of points times credits.
    - `courses_counted` integer, required: Papers with credits above zero.
    - `courses` GPACourseResult[], required: Each paper's contribution, so the total can be checked.
      - `grade` string, required: Grade as matched, upper-cased.
      - `credits` number, required: Credits for the paper.
      - `grade_points` number, required: Points that grade is worth on the scale.
      - `weighted_points` number, required: Points times credits, this paper's contribution.
    - `scale` string, required: Which scale was applied.
  - `disclaimer` string, required: Scope and limits of this calculation.

## Other responses

- `422`: Validation Error

---

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