Welcome to the ALOC Developer Portal. Integrate structured, enriched, curriculum-aligned examination content and deep metadata for African EdTech.
ALOC provides curriculum-aligned examination content spanning major African examination bodies (2010–2024). We are an assessment content infrastructure platform—we build the rails and structure the knowledge, so you can build CBT platforms, revisions apps, or student dashboards.
By using our API, you gain access to clean, normalized question banks, AI-generated explanations, concept taxonomies, and difficulty mappings.
ALOC is strictly an API infrastructure layer. We do not provide student-facing apps or school management software.
For interactive testing and complete schema models, check out the Swagger OpenAPI Interactive Docs.
The ALOC API is structured into four pricing and access tiers. Each layer provides deeper metadata and enrichment:
ALOC covers core secondary and tertiary entry examination bodies across West Africa, including:
To get started immediately, follow these three steps:
curl "https://dev.aloc.com.ng/api/v1/questions?subject=mathematics&examType=jamb&year=2019" \ -H "X-API-Key: alc_live_7f3a91c2d8e4f1ab92dd"
Reduce integration boilerplate with full IDE auto-complete and zero-runtime type safety:
npm install @massteck/aloc-sdk
import { QuestionsApi, Configuration } from '@massteck/aloc-sdk';
const config = new Configuration({ apiKey: 'alc_live_...' });
const api = new QuestionsApi(config);
const res = await api.getQuestions({ subject: 'mathematics' });Official Python PyPI SDK package (pip install aloc-sdk) is currently under active development and will be published shortly.
All API requests return a standard JSON envelope with consistent structures:
data: The core payload response (e.g. array of questions or metadata objects).pagination: Cursor keys and indicators for fetching additional pages (when paginated).meta: Diagnostic metrics including credits consumed, remaining balance, tier, and internal request UUID.{
"data": [
// payload objects
],
"pagination": {
"nextCursor": "eyJpZCI6Mj...",
"prevCursor": null,
"hasMore": true
},
"meta": {
"creditsUsed": 1,
"creditsRemaining": 6900,
"tier": "free",
"requestId": "9b1deb4d-3b7d-4bad-9bdd-2b0d7b3d4bad"
}
}