# Myschool — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Search for Nigerian schools by type, explore courses and admission requirements, and stay updated with the latest education news all in one place. Find detailed information about schools and their programs to make informed decisions about your education.

**Category:** Education | **Website:** [myschool.ng/](https://myschool.ng/) | **Docs:** [parse.bot/marketplace/a69cd403-f43b-48ac-baa5-a20e2fc0fb5e/myschool-ng-api](https://parse.bot/marketplace/a69cd403-f43b-48ac-baa5-a20e2fc0fb5e/myschool-ng-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-myschool-ng-api-a69cd403/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_course_requirements

Retrieve admission requirements for a specific course at a specific school. Returns UTME subject combinations, O'Level requirements, and Direct Entry requirements when available. The path parameter is obtained from get_school_courses results.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `path` | string | Yes | The requirements_path from get_school_courses results (e.g. '/classroom/jamb-brochure/university/admin/accountancy-accounting') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-myschool-ng-api-a69cd403/get_course_requirements \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"path":"<string>"}'
```

### get_latest_news

Retrieve the latest news articles from myschool.ng, optionally filtered by category. Returns articles from the /news/latest page or a specific category page. Each article includes title, slug, URL, and summary (summary is null when unavailable). Not paginated — returns all articles on the page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category` | string | No | Category slug to filter news articles. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-myschool-ng-api-a69cd403/get_latest_news \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"category":"<string>"}'
```

### get_school_courses

Retrieve all courses offered by a school. Each course includes a requirements_path that can be passed to get_course_requirements to fetch admission requirements. Not paginated — returns the full course catalog for the school.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `slug` | string | Yes | The school's URL slug from list_schools_by_type (e.g. 'abia-state-university') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-myschool-ng-api-a69cd403/get_school_courses \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"slug":"<string>"}'
```

### get_school_info

Retrieve detailed information about a specific school including its full name, abbreviation (AKA), institution type, location, and official website. Fields are present only when data is available on the school's profile page.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `slug` | string | Yes | The school's URL slug from list_schools_by_type (e.g. 'abia-state-university') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-myschool-ng-api-a69cd403/get_school_info \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"slug":"<string>"}'
```

### list_schools_by_type

List all schools of a given institutional type. Returns the full roster of schools (name and slug) for universities, polytechnics, or colleges of education. Not paginated — one request returns the complete list for the given type.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `type` | string | No | Type of school to list. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-myschool-ng-api-a69cd403/list_schools_by_type \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"type":"<string>"}'
```

### search

Full-text search across all content types on myschool.ng — news, questions, events, groups, materials, and marketplace listings. Returns deduplicated results with title, URL, and content type. Results are not paginated; a single request returns all matches.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search keyword (e.g. 'Unilag', 'admission', 'engineering') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-myschool-ng-api-a69cd403/search \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```
