May 29, 2026
Pre-launch sprint — content quality, performance, and developer surface
The pre-launch sprint shipped the developer surface and content quality the platform needs to go live. Every endpoint, MCP tool, and the TypeScript SDK reflect these changes.
Added
- 5-level LLM-calibrated difficulty. Each question now carries one of
trivial,easy,medium,hard, orexpert— graded by an LLM with the full distractor-set in context, not just question text. Thedifficultyenum bumped from 3 to 5 values across the API, MCP tools, and SDK types./api/v1/statsbyDifficultyships 6 keys (5 levels +unrated). - New
?quality=highfilter. Surfaces only the cleanest questions (~333k EN + ~332k PL at this date). An opt-inqualityfield on every question response exposes the underlying grade so clients can self-filter further client-side. - Cultural-affinity regions. New
?regions=filter on/api/v1/questionsand/api/v1/randomaccepts ISO 3166-1 alpha-2 codes (case-insensitive) with a curated cultural-codes whitelist (e.g.us,gb,de,fr,jp). New/api/v1/regionsdiscovery endpoint, MCP toolquizbase_regions, andtopRegions(top 20) in the stats snapshot. - Dashboard usage tracks MCP and OAuth requests.
/dashboard/usagenow also reports MCP and OAuth-authenticated traffic, with per-client breakdown alongside per-key.
Changed
- Flat API key model — Free tier is full production access. The old
qb_test_*/qb_live_*split is retired. Keys are now eitherqb_pk_*(publishable, CORS-safe) orqb_sk_*(secret, backend-only). One per-account counter; Free gives 500 requests/day + 10/10s burst, every endpoint, every feature, no credit card. Cap of 20 keys per account. - Content quality recovery. EN↔PL counts on the
?quality=highfilter are now at parity (~333k each). Slug labels canonicalized — common acronyms (USA, EU, NASA, etc.) recovered, multi-word slugs normalized. Plus +16k recovered EN questions; visible catalog now ~1.14M. - Performance baseline refreshed. Updated numbers and methodology on /docs/performance — sustained 50 RPS with p95 ~100ms across the typical mix.
- TypeScript SDK.
@quizbase/clientbumped to 0.7.x with the 5-enum difficulty,topRegions,byQualityHigh, optionalqualityper question, and regions filter typings.
Deprecated
?count=exacton/api/v1/questions. Stripe-style behavior — pagination metadata now uses the snapshot-derivedtotalinstead. Existing clients keep working; new code should drop the parameter.
Fixed
- Smaller performance and reliability improvements across discovery, listing, and random endpoints.