Skip to main content

Quickstart

Make your first MirrorMingo Exam API call in five minutes.

1. Get an API key

  1. Sign in at mirrormingo.com and open Account → Developer.
  2. Click Create key, name it (e.g. local-dev), and copy it. The key (mirrormingo_...) is shown once — store it in a secret manager, never in client-side code or git.

Test against the sandbox first (https://sandbox.api.mirrormingo.com/v1) — sandbox keys are non-billable and return the same shapes as production.

2. Make a request

cURL

curl https://api.mirrormingo.com/v1/exam-prep/list?country=Nigeria \
-H "Authorization: Bearer $MIRRORMINGO_API_KEY"

TypeScript / Node

npm install @mirrormingo/sdk
import { MirrorMingo } from "@mirrormingo/sdk";

const mm = new MirrorMingo({ apiKey: process.env.MIRRORMINGO_API_KEY });
const exams = await mm.exams.list({ country: "Nigeria" });
console.log(exams.map((e) => e.exam_key));

Python

pip install mirrormingo
import os
from mirrormingo import ApiClient, Configuration
from mirrormingo.api.exams_api import ExamsApi

config = Configuration(
host="https://api.mirrormingo.com/v1",
access_token=os.environ["MIRRORMINGO_API_KEY"],
)
exams = ExamsApi(ApiClient(config)).list_exams(country="Nigeria")
print([e.exam_key for e in exams.exams])

3. Run a mock exam

// 1. Find a verified past-question paper
const catalog = await mm.mockExams.listPapers("jamb");
const paperId = catalog.years[0].papers[0].paper_id;

// 2. Open a timed attempt (first 10 questions)
const attempt = await mm.mockExams.open("jamb", { paperId, questionLimit: 10 });

// 3. Submit answers, get scored feedback
const result = await mm.mockExams.submit("jamb", {
attemptId: attempt.attempt_id,
answers: { "1": "C", "2": "A", "3": "D" },
});
console.log(result.feedback);

Next