Browse the documentation

Included

List subjects

GET/api/v1/subjectsIncluded
Scope
curriculum:read
Price
Included once you've topped up

Every subject in the catalogue, with its qualification and exam board. The starting point for everything else, because the ids it returns are what the other endpoints take.

What to know

  • An empty list is a valid answer to a filter nothing matches. It is never an error.
  • There are no topic or subtopic counts on this list, deliberately. Counting per subject would be one query per row on a list of hundreds. Fetch a subject tree when you need the size of one.
  • Only active catalogue content appears. Retired, archived and user-created subjects are never returned.

Parameters

FieldTypeRequiredDescription
qualificationstringNoFilter to one qualification, for example "GCSE" or "A-Level". Matched case-insensitively against the whole value.
examBoardstringNoFilter to one board, for example "AQA". Matched case-insensitively against the whole value.

Example request

curl
curl "https://www.revisiongenie.com/api/v1/subjects?qualification=GCSE&examBoard=AQA" \
  -H "Authorization: Bearer rgk_live_YOUR_KEY_HERE"

Example response

json
{
  "subjects": [
    {
      "id": "6612f0a1c3b4d5e6f7a80912",
      "name": "Biology",
      "qualification": "GCSE",
      "examBoard": "AQA"
    },
    {
      "id": "6612f0a1c3b4d5e6f7a80913",
      "name": "Chemistry",
      "qualification": "GCSE",
      "examBoard": "AQA"
    }
  ],
  "count": 2
}

Errors

Every error carries the same shape: a stable error code to branch on and a message for a human. Codes specific to this endpoint come first.

CodeStatusWhen
topup_required402This developer account has never topped up. The data endpoints are included from your first top-up onwards, whatever your balance does afterwards. The body carries a top-up link.
invalid_key401The key is missing, malformed, revoked, expired, or is not a developer key.
forbidden403The key is valid but does not hold the scope this endpoint requires.
suspended403The developer account is suspended. Data reads stop as well as billable calls.
rate_limited429The key went past its ceiling: 120 calls a minute overall, 30 a minute on the paid endpoints. Also returned after repeated failed authentication from one address.
server_error500Something failed on our side. Retry; a paid call is refunded.

Revision Genie is an independent product and is not affiliated with or endorsed by AQA, Pearson Edexcel, OCR, WJEC or Eduqas.

Use of this API is governed by the developer terms. Questions: support@revisiongenie.com.