Browse the documentation

Reference

Changelog

Every change to the API that a developer would notice, newest first. Where a change would break a working integration we give reasonable notice, normally at least 30 days, here and by email to registered developers.

Changes we may make without notice

We can change or withdraw an endpoint immediately where we need to for legal or safety reasons: a complaint from a rights holder, a change to a licence we rely on, a court or regulatory order, a security problem, or a risk to users. Being able to act quickly is part of what lets us offer this data at all. Developer terms, clauses 6.3 and 6.4.

Releases

  1. New endpoint

    Chat without naming a genie

    POST /api/v1/chat is a new endpoint for a chat turn that does not name a subject genie. Send no configuration and you get our general study tutor, which covers every UK curriculum subject plus study skills and revision technique. Send a "genie" block and you get a custom tutor shaped by your own settings for that one request.

    It charges the same per assistant message as the subject-genie endpoint, so moving between the two needs no second figure in your budget. The request and response shapes are the same as well: the same messages array, the same stream option, the same NDJSON events and the same usage block.

    Nothing about a custom genie is stored. There is no genie to create, list or delete: your settings are read, used to build one prompt, and dropped. Safeguarding detection is on and cannot be affected by anything in the block, and refusals are not charged.

    • genie.name and genie.subject: what your product calls the tutor, and what the conversation is about.
    • genie.teachingStyle: friendly, socratic, concise or step-by-step. Anything else is refused rather than ignored.
    • genie.instructions and genie.avoidTopics: your tone and focus preferences, and what it should additionally decline to discuss.
    • Nothing in the block can weaken the safety rules or make the tutor anything other than an educational tutor.
  2. Additive

    Question generation takes a topic, and returns multiple choice

    POST /api/v1/questions/generate now accepts a "topic" in your own words as an alternative to a "subtopicId", and can return multiple-choice questions alongside the written ones. Send one anchor or the other, and use "types" to say which shapes you want.

    Nothing about an existing call changed. A request sending only a subtopicId still returns the same written questions in the same block, at the same price, which is per set however many questions and whichever shapes you ask for.

    • New request fields: topic, types, and the subject / qualification / examBoard pitch hints.
    • New response fields: source, topic, subject, a type on every question, and markSchemePoints beside the existing markScheme.
    • Multiple-choice questions carry options, correctAnswer and usually an explanation.
    • count is the total for the set, shared out across the types you asked for.
  3. Beta

    The developer API launched

    Version 1 of the API is live with 9 endpoints: 4 curriculum data endpoints, 4 paid ones, and 1 free account endpoint.

    Coming soon, and not part of the count above: search subject knowledge. Its page in the reference says where it has got to.

    • GET /api/v1/subjects: list subjects
    • GET /api/v1/subjects/{subjectId}/tree: get a subject tree
    • GET /api/v1/search: search the catalogue
    • GET /api/v1/subtopics/{subtopicId}/spec-points: get specification references
    • POST /api/v1/align: align text to subtopics (1p)
    • POST /api/v1/genies/{shortName}/chat: chat with a subject genie (4p)
    • POST /api/v1/chat: chat without naming a genie (4p)
    • POST /api/v1/questions/generate: generate exam-style questions (8p)
    • GET /api/v1/account: read your account (free)

What beta means here

The endpoints are real, the prices are the prices, and what you build on them works. What beta means is that the surface is young: we expect to add endpoints, and we may adjust response shapes in ways that are additive rather than breaking.

  • New fields may appear on a response without notice. Parse defensively, and ignore what you do not recognise.
  • Removing or renaming a field is a breaking change and gets notice.
  • The path stays versioned. Anything that cannot be done additively would arrive under a new version rather than changing /v1 underneath you.

Being told

Notices go by email to registered developers, so keep an address on your developer profile that somebody reads. For anything urgent, or if you are planning a launch and want to know what is coming, write to support@revisiongenie.com.

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.