Examples
Practical code examples to help you get started quickly.
University Search App
Build a searchable university directory with province and APS filtering.
JavaScript
UniversitiesStarter
const res = await fetch('https://api.apply.org.za/v1/universities?search=Cape+Town', {
headers: { 'X-API-Key': 'uafm_live_your_token' }
})
const { data } = await res.json()High School Lookup Tool
Build a province-aware high school selector for your forms.
curl
High SchoolsFree
curl https://api.apply.org.za/v1/high-schools?province=Gauteng&search=Pretoria \
-H "X-API-Key: uafm_live_your_token"Postal Code Lookup
Find street and box codes for any South African suburb.
JavaScript
Postal CodesFree
const res = await fetch(
'https://api.apply.org.za/v1/postal-codes?search=sandton',
{ headers: { 'X-API-Key': 'uafm_live_your_token' } }
)
const { data } = await res.json()
data.forEach(suburb => {
console.log(`${suburb.suburb} (${suburb.area})`)
console.log(` Street: ${suburb.street_code}`)
console.log(` Box: ${suburb.box_code}`)
})Address Form Autocomplete
Auto-fill postal codes as users type their suburb.
TypeScript
Postal CodesFree
// Debounced suburb search for address forms
let timeout: ReturnType<typeof setTimeout>
async function onSuburbInput(value: string) {
clearTimeout(timeout)
if (value.length < 2) return
timeout = setTimeout(async () => {
const res = await fetch(
`https://api.apply.org.za/v1/postal-codes?search=${encodeURIComponent(value)}`,
{ headers: { 'X-API-Key': 'uafm_live_your_token' } }
)
const { data } = await res.json()
// Populate dropdown with suburb + code options
const options = data.map((p: any) => ({
label: `${p.suburb}, ${p.area} (${p.street_code})`,
value: p.street_code,
}))
updateDropdown(options)
}, 300)
}Bursary Finder Widget
Embed a live bursary finder on any edtech platform.
React
BursariesStarter
import { useState, useEffect } from 'react'
export function BursaryFinder() {
const [bursaries, setBursaries] = useState([])
useEffect(() => {
fetch('/api/bursaries').then(r => r.json()).then(d => setBursaries(d.data))
}, [])
return bursaries.map(b => <BursaryCard key={b.id} {...b} />)
}APS Calculator Integration
Integrate university-specific APS scoring into your application flow.
Python
APS CalculatorPro
import requests
res = requests.post(
'https://api.apply.org.za/v1/aps-calculator',
headers={'X-API-Key': 'uafm_live_your_token'},
json={'university_id': 'uct', 'subjects': [
{'name': 'Mathematics', 'level': 7},
{'name': 'English', 'level': 6},
]}
)
print(res.json()) # {"aps_score": 42, "qualifies": true}