---
title: "GET /courses"
method: GET
path: "/courses"
tags: ["Courses"]
---

# GET /courses

`GET /courses`

Get all courses, in alphabetical order

## Query parameters

- `department` string
- `reviews` boolean
- `limit` integer
- `offset` integer

## Response `200`

Returns courses matching query

- Course[]
  - `department` string, required
  - `course_number` string, required
  - `title` string, required
  - `description` string, required
  - `credits` integer, required
  - `average_gpa` number
  - `professors` string[], required

## Other responses

- `400` — bad input parameter

## Changes

- **2026-07-17** `3df33ecea977` — 1 breaking
  - for the `query` request parameter `limit`, the max was decreased from `1000.00` to `100.00`
- **2022-08-15** `cf42bda7c43a` — 1 info
  - added the optional property `items/average_gpa` to the response with the `200` status
- **2022-01-12** `38d30377b08c` — 1 breaking
  - for the `query` request parameter `reviews`, default value `false` was added
- **2022-01-12** `475b2b7b242f` — 1 breaking, 1 warning, 1 info
  - for the `query` request parameter `reviews`, default value `false` was removed
  - removed the optional property `items/average_gpa` from the response with the `200` status
  - for the `query` request parameter `limit`, the max was increased from `100.00` to `1000.00`

[Change history](https://skmtc.dev/planetterp/apis/planetterp-api/changes/courses/get.md)

---

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