← Back to all apps

LeapScholar

Educationby Leapscholar
Launched Mar 31, 2026 on ChatGPT

Search and compare university programs abroad — by country, discipline, intake, and degree level — directly inside ChatGPT. LeapScholar connects to a curated database of universities across the UK, USA, Canada, Ireland, Australia, Germany, and more. Ask a question like: • “Data Science programs in the UK” • “Computer Science universities in USA for January 2027 intake” • “Compare Finance programs in UK vs Canada” • “1-year postgraduate Computer Science programs in Ireland for September 2026” Results appear as interactive cards showing university name, course, tuition fee, duration, ranking, and intake periods. Tap any card to visit the university’s program page for full details. This tool is read-only. It does not require login, does not store any user data, and only queries LeapScholar’s internal university database.

1ChatGPT Tools
LeapscholarDeveloper
EducationCategory

Available Tools

Search University Programs

search_courses
Full Description

Search university programs abroad. Required: countryName (1–5 countries), courseTag (discipline — use concrete fields like Computer Science, Mechanical Engineering, MBA, Public Health; avoid vague tags like Masters alone), pageIndex (use 1 unless the user asks for another page), and totalPerPage (how many courses the backend should return per page, default 12). Optional: intake (e.g. SEP_2026), tuitionFeesMax as max tuition in INR: prefer whole rupees (e.g. 4500000 for ₹45 lakhs). Values 1–500 are accepted as lakhs and converted server-side; do not use USD. Optional degreeCode UG|PG. Optional courseDurationMin / courseDurationMax in whole months — translate user phrasing into a band: 'up to N years' → min=9, max=N×12; 'N years' alone → min=max(9, N×12−6), max=N×12; '1-2 year programs' or 'X-Y years' → min=X×12, max=Y×12. sortBy defaults to OPTIMISED_SORT ('Best' — relevance + ranking); switch to RANKING for top / best-ranked university intent, or TUITION_FEE_INR with sortOrder=ASC for cheapest-first. limit caps how many cards are returned to ChatGPT/the widget after local filters (not sent to the course API). Returned cards include tuitionFee as overall fee in ₹ lakhs (from tuitionFeeOverallInr) when present, optional tuitionFeeUSD when the API supplies it, intakePeriods[], scholarshipAvailable, logoUrl, and program links.

Parameters (4 required, 9 optional)
Required
countryNamearray

One or more destination countries to search in, such as ["UK"] or ["Canada", "Ireland"].

courseTagstring

Program subject or discipline (field of study). Use concrete names the catalog understands, e.g. "Computer Science", "Data Science", "Mechanical Engineering", "MBA", "Public Health", "Psychology". Avoid vague phrases like "Masters" alone — pair level with subject or use degreeCode plus a specific discipline.

pageIndexnumber

Required. Pagination index sent to the course API (1 = first page). The model should pass 1 unless the user explicitly asks for another page.

totalPerPagenumber

Required. Page size sent to the course search API — how many raw programs to fetch per request (default 12, max 20). This is not the same as limit.

Optional
courseDurationMaxinteger

Upper bound of program length in **whole months**. Translation: 'up to N years' / 'maximum N years' → **N×12** (e.g. **24** for 'up to 2 years'). 'N years' alone (single-year mention) → **N×12** (e.g. **12** for '1 year', **24** for '2 years'). Explicit ranges 'X-Y years' → **Y×12** (e.g. **24** for '1-2 year', **36** for '2-3 year'). 'fast-track' / 'accelerated' / 'X-month' → match the user's stated upper bound (e.g. **12** for '9-month or 1 year accelerated'). For 'minimum N years' / 'at least N years' / 'short programs' with no upper bound → omit (only set min). Omit when the user does not state any upper limit.

courseDurationMininteger

Lower bound of program length in **whole months**. **Default 12** — universities rarely run masters/UG programs shorter than 1 year and most users don't want diplomas / foundations / HNC. Translation table: • No duration mentioned → **12** (default) • 'up to N years' / 'maximum N years' / 'within N years' (N ≥ 2) → **12** • '1 year' / '1-year programs' (user explicitly asked for ~1 year) → **9** (allows accelerated 9-month variants) • 'N years' alone (N ≥ 2, e.g. '2-year programs') → max(12, N×12 − 6) so **18** for 2 years, **30** for 3 years (~6 month tolerance below) • '1-2 year programs' / 'X-Y years' (X ≥ 1) → X×12, so **12** for 1-2 year, **24** for 2-3 year • 'fast-track' / 'accelerated' / 'X-month' (X < 12) → set min to X (e.g. **6** for '6-month diploma', **9** for '9-month accelerated', **3** for 'short certificate') • 'short programs' / 'diploma' / 'certificate' (no specific length) → **6** Only drop below 12 when the user is **explicitly** signalling a sub-1-year program. Otherwise keep the default.

Default: 12
degreeCodestring

Degree level to search for: UG or PG.

Options:UGPG
intakearray

Specific intake periods, format MMM_YYYY (uppercase 3-letter month + 4-digit year, e.g. SEP_2026, JAN_2027). **Today is 2026-10-05** — use this date to resolve relative phrasing like "next intake", "soonest", "earliest", "in 6 months", "this year" into specific MMM_YYYY tokens (e.g. if today is mid-April, "next intake" typically means SEP-OCT of the current year for masters programs). When user names a season, expand it to all the months that season covers — universities differ on exact start months, so passing the full set widens recall: • Fall / Autumn → [AUG_<year>, SEP_<year>, OCT_<year>] • Winter → [JAN_<year>, FEB_<year>] • Spring → [JAN_<year>, FEB_<year>, MAR_<year>] (US convention; some UK schools also use APR) • Summer → [MAY_<year>, JUN_<year>, JUL_<year>] When user names a specific month (e.g. 'September 2026'), use just that one entry [SEP_2026]. Multiple seasons / months can be combined in one array. **Omit this field entirely** when the user doesn't mention any timing — results will then span all intakes.

limitnumber

Max programs in this tool result and widget after filters (default 6, max 8). Not sent to the course API — use totalPerPage for how many raw rows to fetch per request.

Default: 6
sortBystring

Sort strategy. **Default OPTIMISED_SORT** (= 'Best' — algorithmic relevance score + country ranking). Set **RANKING** when the user asks for top / best-ranked / highest-ranked universities (lower rank number = better). Set **TUITION_FEE_INR** when the user asks for cheapest / most affordable programs (pair with sortOrder=ASC) or most expensive (DESC). When unsure, leave as OPTIMISED_SORT.

Options:OPTIMISED_SORTRANKINGTUITION_FEE_INR
Default: OPTIMISED_SORT
sortOrderstring

Sort direction. ASC for OPTIMISED_SORT and RANKING (best first). For TUITION_FEE_INR: ASC = cheapest first, DESC = most expensive first.

Options:ASCDESC
Default: ASC
tuitionFeesMaxinteger

Optional **maximum** tuition budget. Use for caps like 'under 30 lakhs', 'maximum ₹25 lakhs', 'cheaper than 50 lakhs' (set 30 / 25 / 50 here). For ranges like 'between 15 and 20 lakhs' set this to the high end (20) and tuitionFeesMin to the low end (15). Integers **1–500** are interpreted as **lakhs** (45 → 45,00,000), >500 as full INR. Prefer lakhs unless the user gives an exact rupee figure. Do not use USD.

tuitionFeesMininteger

Optional **minimum** tuition budget. Use for ranges like 'between 15 and 20 lakhs' (set 15 here, 20 in tuitionFeesMax) or 'at least 10 lakhs' (set 10 here, set tuitionFeesMax to 500 — i.e. ~₹5 crore — to act as an effective ceiling). Same unit rules as tuitionFeesMax: integers 1–500 are interpreted as **lakhs** (15 → 15,00,000), >500 as full INR. Do not use USD. Server-side budget filter only fires when tuitionFeesMax is set, so always pair with a Max.