QuizBase vs QuizAPI — general trivia at scale vs programming-mostly developer quizzes
QuizAPI is a developer-focused quiz platform in public beta, with content prevalently around programming (JavaScript and dev quizzes feature heavily in its public docs examples). QuizBase covers general trivia across all domains — over a million questions blended from 11 open sources, EN + PL at parity today, 5-level calibrated difficulty grading (`trivial` to `expert`), multi-layer taxonomy (categories, subcategories, tags, curated topics, and cultural regions), and a Free tier that works in production from day one — 500 requests/day, no credit card.
At a glance
Total questions
1.17M QuizBasevs unknown (QuizAPI)
Topical focus
General trivia (all domains) QuizBasevs Mostly programming (JavaScript and dev quizzes prevalent per docs) (QuizAPI)
Languages supported
2 QuizBasevs unknown (QuizAPI)
Difficulty grading
5 levels (trivial → expert), LLM-calibrated per question QuizBasevs Metadata tag (MEDIUM visible in docs example; full enum unknown) (QuizAPI)
Taxonomy density
24 categories · 30.8K+ subcategories · 81.7K+ tags · 2.2K+ curated topics · 190+ cultural regions QuizBasevs Per-question tags only, no categories / subcategories / topics / regions (QuizAPI)
When to use QuizBase
- Your trivia use case is broader than programming — history, science, geography, arts, sports, entertainment, language, culture (we cover 24 categories across a deep taxonomy)
- Volume matters — over a million questions versus a small focused corpus
- Difficulty grading matters — 5-level calibrated difficulty per question, from `trivial` to `expert`
- You need EN + PL today (333k each on `?quality=high`) or other languages on demand
- Developer surface matters — OpenAPI 3.1, TypeScript SDK on npm, MCP server with OAuth 2.1 for Claude Desktop / Cursor / ChatGPT, IETF rate-limit headers, RFC 9457 errors, public status page
Content & scale
| Dimension | QuizBase | QuizAPI |
|---|---|---|
| Total questions | 1,173,456 | unknown |
| Topical focus | General trivia (all domains) | Mostly programming (JavaScript and dev quizzes prevalent per docs) |
| Languages supported | 2 | unknown |
| Difficulty grading | 5 levels (trivial → expert), LLM-calibrated per question | Metadata tag (MEDIUM visible in docs example; full enum unknown) |
| Taxonomy density | 24 categories · 30.8K+ subcategories · 81.7K+ tags · 2.2K+ curated topics · 190+ cultural regions | Per-question tags only, no categories / subcategories / topics / regions |
Reliability
| Dimension | QuizBase | QuizAPI |
|---|---|---|
| Status page | https://quizbase.runriva.com/status | n/a |
Developer surface
| Dimension | QuizBase | QuizAPI |
|---|---|---|
| OpenAPI 3.1 spec | https://quizbase.runriva.com/openapi.json | https://quizapi.io/api/v1/openapi (Swagger UI page) |
| TypeScript SDK | @quizbase/client (npm) | n/a |
| MCP server transport | Streamable HTTP (/mcp endpoint) | n/a |
Pricing & access
| Dimension | QuizBase | QuizAPI |
|---|---|---|
| Paid tier starts at | Indie — see /pricing | $1.99/mo (Starter — 10k API calls, 25 quizzes) |
Migrating from QuizAPI
// Before — QuizAPI (programming-mostly corpus)
const response = await fetch(
`https://quizapi.io/api/v1/questions?apiKey=${process.env.QUIZAPI_KEY!}&limit=10`
);
const questions = await response.json();
// questions[0].question, questions[0].answers, questions[0].correct_answer
// After — QuizBase (general trivia across all domains)
import { QuizBase } from '@quizbase/client';
const qb = new QuizBase({ apiKey: process.env.QUIZBASE_API_KEY! });
const { data } = await qb.questions.list({
limit: 10,
lang: 'en',
category: 'computers', // or any of 24 categories — science, history, geography, ...
difficulty: 'medium' // trivial | easy | medium | hard | expert
});
// data[0].question, data[0].correct_answer, data[0].difficulty