ApplyBoard APIid.applyboard.com ↗
Search 1,500+ universities and colleges via the ApplyBoard API. Retrieve program tuition, intake dates, school info, and success scores in one endpoint.
What is the ApplyBoard API?
The ApplyBoard Programs API provides access to educational program data across more than 1,500 partner institutions through a single search_programs endpoint. Each response returns structured program objects covering tuition fees, intake dates, school details, and success scores. You can query by keyword, control pagination with page and page_size, and sort results — for example by descending success score — to filter down to the most relevant matches.
curl -X GET 'https://api.parse.bot/scraper/5810e968-dc1e-4b89-b01f-a1f87474074a/search_programs?page=1&query=Computer+Science&page_size=12&sort=-success_score' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace id-applyboard-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: ApplyBoard Programs API — search and browse educational programs."""
from parse_apis.id_applyboard_com_api import ApplyBoard, InputFormatInvalid
client = ApplyBoard()
# Browse top programs without a query — results sorted by success score by default.
for program in client.programs.search(page_size=5, limit=5):
print(program.name, f"({program.currency} {program.tuition})", program.school.name)
# Search for a specific discipline and drill into the first result.
top_hit = client.programs.search(query="Computer Science", limit=1).first()
if top_hit is not None:
print(f"\n--- {top_hit.name} ---")
print(f"Level: {top_hit.program_level}")
print(f"School: {top_hit.school.name}, {top_hit.school.city}, {top_hit.school.country_code}")
print(f"Tuition: {top_hit.currency} {top_hit.tuition}")
print(f"Duration: {top_hit.min_length_months}-{top_hit.max_length_months} months")
print(f"Success score: {top_hit.success_score.label}")
print(f"Tags: {', '.join(top_hit.tags)}")
# Explore available intakes for the program.
for intake in top_hit.intakes:
print(f" Intake {intake.id}: starts {intake.start_date}, deadline {intake.submission_deadline}")
# Demonstrate error handling for invalid input.
try:
client.programs.search(query="Nursing", page_size=200, limit=1).first()
except InputFormatInvalid as e:
print(f"Rejected: {e.message}")
print("\nexercised: programs.search / Program fields / School / SuccessScore / Intake")
Search educational programs across ApplyBoard's partner institutions. Returns paginated results with program details including tuition fees, intake dates, school information, and success scores. When query is omitted, returns all programs sorted by success score. Pagination is controlled by page and page_size parameters.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination (1-indexed). |
| sort | string | Sort order for results. The default '-success_score' sorts by descending success score (highest first). The API validates the value server-side. |
| query | string | Search term for programs (e.g. 'Computer Science', 'Business', 'Nursing'). When omitted, returns all available programs. |
| page_size | integer | Number of results per page (1-100). |
{
"type": "object",
"fields": {
"page": "current page number",
"query": "the search query that was used, or null if no query provided",
"total": "total number of matching programs across all pages",
"programs": "array of program objects with id, name, school, tuition, intakes, tags, and success score",
"page_size": "number of results per page"
},
"sample": {
"data": {
"page": 1,
"query": "Computer Science",
"total": 4976,
"programs": [
{
"id": 232528,
"name": "Master of Science - Computational Sciences (Course)",
"slug": "master-of-science-computational-sciences-course",
"tags": [
"top_programs",
"popular_programs",
"high_job_availability"
],
"school": {
"id": 250,
"city": "Sudbury",
"name": "Laurentian University",
"slug": "laurentian-university",
"logo_url": "https://photos.applyboard.com/schools/000/000/250/logos/small/logo_template_%281%29.png?1544133473",
"province": "Ontario",
"country_code": "CA"
},
"intakes": [
{
"id": 4391265,
"open_date": "2025-12-11",
"start_date": "2027-01-01",
"submission_deadline": "2026-08-15"
}
],
"tuition": 15876,
"currency": "CAD",
"language": "eng",
"short_name": "Computational Sciences",
"program_level": "masters_degree",
"success_score": {
"label": "High",
"intent": "positive"
},
"application_fee": 112.75,
"max_length_months": 24,
"min_length_months": 12
}
],
"page_size": 12
},
"status": "success"
}
}About the ApplyBoard API
What the API Returns
The search_programs endpoint returns paginated arrays of program objects drawn from ApplyBoard's partner institution network. Each program object includes a unique id, program name, associated school details, tuition figures, available intakes (intake dates), descriptive tags, and a success_score indicating application competitiveness. The response envelope also carries total (total matching programs across all pages), page, page_size, and the query that was applied — or null if no query was provided.
Querying and Sorting
The query parameter accepts free-text search terms such as 'Computer Science', 'Business', or 'Nursing'. When query is omitted, the endpoint returns all available programs. The sort parameter defaults to '-success_score', returning programs with the highest success scores first. Pagination is controlled via page (1-indexed) and page_size (1–100 results per page), making it straightforward to walk through large result sets.
Coverage and Scope
The API reflects ApplyBoard's catalog of 1,500+ universities and colleges. Program data includes tuition costs and structured intake schedules, which are useful for comparing study options across institutions. Fields like tags help categorize programs by discipline or credential type, while success_score provides a signal of applicant competitiveness for a given program.
The ApplyBoard API is a managed, monitored endpoint for id.applyboard.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when id.applyboard.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official id.applyboard.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a program comparison tool that ranks options by
success_scoreand displaystuitionside-by-side - Aggregate
intakesdata across institutions to surface programs with upcoming application windows - Filter programs by
querykeyword (e.g. 'Nursing') to populate discipline-specific program directories - Feed
schoolandtuitionfields into a cost-of-education calculator for prospective students - Paginate through the full catalog to index all programs for full-text search in a custom application
- Use
tagsto categorize and group programs by credential level or study area in a student-facing UI
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does ApplyBoard have an official developer API?+
What does the `search_programs` endpoint return for each program?+
id, program name, school information, tuition fees, intakes (scheduled intake dates), tags, and a success_score. The response envelope adds total, page, page_size, and the query used.Can I retrieve application requirements or eligibility criteria for a specific program?+
Is there a way to filter programs by country, institution, or credential type?+
search_programs endpoint accepts a free-text query parameter and a sort option, but does not currently expose structured filter parameters for country, institution name, or credential type. You can fork the API on Parse and revise it to add those filter inputs.How does pagination work and are there limits on result size?+
page (1-indexed) and page_size (1–100). The response includes total, which tells you how many matching programs exist across all pages, so you can calculate the number of pages needed to walk the full result set.