Back to Blog

WASSCE API Sierra Leone

A WASSCE API Sierra Leone is useful when you are building an exam-preparation product specifically for Sierra Leone and need structured WASSCE questions instead of PDFs or manually entered question banks.

And there is a good reason to treat Sierra Leone as its own market.

WAEC Sierra Leone currently operates dedicated systems for examination registration and results, including its WASSCE private-candidate registration process and biometric candidate capture. In other words, Sierra Leone should not simply be treated as a label attached to a generic "WAEC" database. WAEC Sierra Leone

For developers, SdashAPI now identifies Sierra Leone separately in its WASSCE infrastructure using the country code SL. SdashAPI

Sierra Leone's SdashAPI country code is SL

SdashAPI's current countries endpoint is:

GET https://sdashapi.com/api/countries

Among the returned countries is:

{
  "code": "SL",
  "name": "Sierra Leone",
  "exams": ["waec", "wassce"]
}

The same API currently identifies Nigeria as NG, Ghana as GH, Liberia as LR and The Gambia as GM. SdashAPI

That means your own application can store something clean like:

{
  "country": "SL",
  "exam": "wassce",
  "subject": "mathematics"
}

instead of trying to work out the country from the question text later.

Fetch Sierra Leone WASSCE questions

Country filtering is documented on SdashAPI's V4 question endpoint.

The documented structure is:

GET /api/v4/q?type=wassce&country=COUNTRY_CODE&subject=SUBJECT
AccessToken: YOUR_ACCESS_TOKEN

For Sierra Leone Mathematics, that becomes:

curl -X GET \
  "https://sdashapi.com/api/v4/q?type=wassce&country=SL&subject=mathematics" \
  -H "AccessToken: YOUR_ACCESS_TOKEN"

The important part is:

type=wassce
country=SL
subject=mathematics

SdashAPI explicitly documents SL as the Sierra Leone country code accepted by its multi-country WASSCE system. SdashAPI

Don't build the subject list from assumptions

Here's a small development decision that can save trouble later.

You could write:

const subjects = [
  "mathematics",
  "english",
  "biology",
  "chemistry",
  "physics"
];

But then you're assuming those are exactly the subjects your data source currently has for Sierra Leone.

SdashAPI provides a country-specific endpoint instead:

GET https://sdashapi.com/api/countries/SL/subjects

There are corresponding endpoints for years and examinations:

GET https://sdashapi.com/api/countries/SL/years
GET https://sdashapi.com/api/countries/SL/exams

These country-level endpoints are part of the current SdashAPI documentation. SdashAPI

So your app can ask the API what's actually available before displaying the options.

A cleaner Sierra Leone WASSCE flow

Your application could work like this:

WASSCE Sierra Leone

        ↓

Choose Subject

        ↓

Choose Available Year

        ↓

Practice / Mock Exam

        ↓

Results & Explanations

Behind the scenes:

Student
   ↓
Your Web/Mobile App
   ↓
Your Backend
   ↓
SdashAPI
   ↓
country=SL

This separation also means your frontend doesn't need to know your SdashAPI production key.

A JavaScript example

Your backend could build the request dynamically:

const params = new URLSearchParams({
  type: "wassce",
  country: "SL",
  subject: "mathematics"
});

const response = await fetch(
  `https://sdashapi.com/api/v4/q?${params.toString()}`,
  {
    headers: {
      Accept: "application/json",
      AccessToken: process.env.SDASH_API_KEY
    }
  }
);

const result = await response.json();

SdashAPI's current developer guides use the AccessToken header for authentication and recommend protecting production credentials rather than exposing them in public frontend code. SdashAPI

What can you actually build with it?

The obvious product is a past-question app:

WASSCE Sierra Leone
        ↓
Mathematics
        ↓
2024
        ↓
Past Questions

But that's only one use.

The same structured data could power a timed mock:

Mathematics Mock

40 Questions
Timed Session

[ Start ]

Or a revision system:

Your Last Attempt

Score: 27/40

13 questions need revision

[ Review Mistakes ]

Or a learning system that tracks performance by topic and difficulty where richer metadata is available.

SdashAPI's current developer guides show that its richer API versions expose metadata such as topics and difficulty, while its V4 tooling can also retrieve similar questions from a question ID. SdashAPI

That makes the API useful beyond simply recreating a printed past-question booklet on a phone.

Sierra Leone developers should think beyond PDFs

PDF past questions are useful when the goal is:

Open document → read question → check answer.

But they're awkward when the goal becomes:

Give this student 30 questions, mark them automatically, remember their mistakes and recommend what they should practise next.

For that, you want data your application understands.

A structured question record can contain information such as:

Question ID
Question
Options
Correct Answer
Solution
Exam
Year
Image
Metadata

Your software can then decide how those fields should be presented.

WASSCE is part of a broader digital examination ecosystem in Sierra Leone

WAEC Sierra Leone already operates digital services around examination administration. Its current private-candidate registration portal requires candidates to complete biometric registration before proceeding with online registration, and its result service allows candidates to retrieve examination results electronically using their examination information and e-PIN. WAEC Sierra Leone

That doesn't mean those systems are the same thing as an exam-preparation API. They aren't.

But it does show why developers building for Sierra Leone should think about WASSCE as an active digital product category, rather than only as scanned historical papers.

Make your app resilient to weak connections

An API-powered application does not necessarily have to make a network request every time a student presses Next.

SdashAPI's own developer guide recommends caching appropriate historical question responses and gives examples using browser storage or server-side Redis caching. SdashAPI

A smoother practice flow is:

Fetch Question Batch
        ↓
Cache Session
        ↓
Start Practice
        ↓
Student Navigates Locally
        ↓
Save Progress

That can reduce unnecessary network requests and improve responsiveness.

For a fully offline product that permanently stores the entire question database, however, you should use an appropriate bulk-data licensing arrangement rather than assuming ordinary API access gives unrestricted permanent storage rights. SdashAPI currently advertises bulk licensing in JSON, CSV and SQL formats. SdashAPI

Check Sierra Leone coverage dynamically

SdashAPI's public coverage page currently lists WASSCE as covering 23 subjects, with an overall WASSCE year range of 1988–2026, images available and explanations on about 74% of the WASSCE dataset. Sierra Leone is explicitly listed as an available WASSCE country. SdashAPI

Those are overall WASSCE figures.

They should not be interpreted as saying that every Sierra Leone subject has every year from 1988 through 2026.

For Sierra Leone specifically, use:

GET /api/countries/SL/subjects

and:

GET /api/countries/SL/years

before deciding what to show users. SdashAPI

That's also much friendlier to search engines and AI systems reading your product pages because you can make precise claims about what your application actually supports.

You can start without buying a production plan

For someone experimenting with a WASSCE product, starting small makes more sense than buying infrastructure before writing the first screen.

SdashAPI's current Sandbox plan provides 2,000 free API credits, V1 access and UTME/WASSCE data for development and testing. No payment is required for the Sandbox tier. SdashAPI

A developer can therefore start with:

Create SdashAPI account
        ↓
Use 2,000 free credits
        ↓
Build WASSCE question screen
        ↓
Add Sierra Leone support
        ↓
Build scoring
        ↓
Add mock examinations
        ↓
Test with users
        ↓
Move to production

You can use the SdashAPI documentation for the current endpoints, check SdashAPI coverage for dataset availability, and review SdashAPI pricing when the project needs production capacity.

A WASSCE API Sierra Leone is ultimately useful because it lets developers stop thinking of Sierra Leone WASSCE questions as documents and start treating them as structured application data. Once the questions are machine-readable and country-aware, you can build CBT practice, mock examinations, revision systems, progress tracking and more advanced learning tools around them.

Avatar

How can we help?

We reply immediately

Hello! 👋 How can we help you today?