Ac APIresults.vtu.ac.in ↗
Access VTU examination results programmatically. Fetch student marks, subject scores, batch results, and program listings for UG, Online Degree, and PhD programs.
What is the Ac API?
This API exposes 7 endpoints that cover Visvesvaraya Technological University's examination results portal, letting you list available exam sessions, enumerate programs, and retrieve individual student results including internal marks, external marks, and subject-level performance. The fetch_student_result endpoint returns a full marks array keyed to a student's USN, while batch_fetch_results handles multiple USNs in a single call across any supported exam directory.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/5c3fa745-2b64-4ce2-be5e-10103a738188/get_available_examinations' \ -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 results-vtu-ac-in-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: VTU Results API — list exams, drill into programs, check online degrees."""
from parse_apis.vtu_results_api import VTU, NotFoundError
client = VTU()
# List available examination sessions from VTU homepage
for exam in client.examinations.list(limit=5):
print(exam.name, exam.id, exam.url)
# Drill into one exam to see its program sub-links
exam = client.examinations.list(limit=1).first()
if exam:
for program in exam.programs(limit=3):
print(program.name, program.url, program.exam_dir)
# List online degree program (CDOE) results
for online_exam in client.onlinedegreeexams.list(limit=3):
print(online_exam.name, online_exam.exam_dir)
# Get the most recent PhD coursework result details
try:
phd = client.phdcourseworks.get()
print(phd.name, phd.url)
except NotFoundError as exc:
print(f"PhD coursework not found: {exc}")
print("exercised: examinations.list / exam.programs / onlinedegreeexams.list / phdcourseworks.get")
List all available examination sessions from the VTU results homepage. Each examination session has a name, URL, and identifier. The homepage lists current and recent past exams including regular semesters, special exams, makeup exams, and PhD coursework.
No input parameters required.
{
"type": "object",
"fields": {
"items": "array of examination objects each with id (string identifier), name (string exam title), and url (string full URL)"
},
"sample": {
"data": {
"items": [
{
"id": "indexMJ26",
"url": "https://results.vtu.ac.in/indexMJ26.php",
"name": "May/June-2026 Examination"
},
{
"id": "indexJJ25",
"url": "https://results.vtu.ac.in/indexJJ25.php",
"name": "June/July-2025 Examination"
}
]
},
"status": "success"
}
}About the Ac API
Exam Discovery
Start with get_available_examinations, which returns all current and recent exam sessions from the VTU results homepage. Each item in the items array carries an id, a human-readable name (e.g. "5th Semester Regular Nov/Dec 2024"), and a url. Pass that url to get_examination_programs to receive the list of programs (B.E., B.Tech, MCA, etc.) for that session, each with its own url and exam_dir identifier — the exam_dir is required for all result-fetch calls.
Student Result Lookup
Use fetch_student_result with a student's usn, the form token, a solved captcha, and the exam_dir to get back a student_name, usn, and a marks array covering all subjects. For a single-subject breakdown, get_subject_marks_besck204d returns the same identity fields plus discrete internal_marks, external_marks, total_marks, subject_code, subject_name, and a result status string. Both endpoints require a valid token and captcha per request.
Batch and Specialised Result Types
batch_fetch_results accepts an exam_dir and a captcha_data_list array — each element holding a usn, captcha, and token — and returns the same marks structure for each USN. This is useful when pulling results across an entire class or department cohort. For non-regular programs, get_online_degree_results lists CDOE (Online Degree) exam sessions with their exam_dir values, and get_phd_coursework_results returns the name and URL for the most recent PhD / M.S.(Research) Coursework result page.
Coverage Notes
The API covers undergraduate, Online Degree (CDOE), and PhD Coursework programs listed on results.vtu.ac.in. Results are only available for exam sessions that VTU has published to the portal. Historical sessions that have been removed from the homepage may not be discoverable via get_available_examinations.
The Ac API is a managed, monitored endpoint for results.vtu.ac.in — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when results.vtu.ac.in 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 results.vtu.ac.in 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?+
- Automate result collection for an entire batch by passing multiple USNs to
batch_fetch_results - Build a college dashboard that surfaces each student's internal and external marks per subject
- Track semester-over-semester academic performance by storing marks arrays from successive exam sessions
- Notify students via SMS or email when their USN appears in a new exam session returned by
get_available_examinations - Aggregate pass/fail statistics across programs by iterating
get_examination_programsresults - Support Online Degree students by pulling CDOE-specific sessions from
get_online_degree_results - Monitor PhD coursework result publication dates using
get_phd_coursework_results
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does VTU provide an official developer API for results.vtu.ac.in?+
What does `fetch_student_result` return compared to `get_subject_marks_besck204d`?+
fetch_student_result returns the full marks array covering all subjects a student appeared in for a given exam session. get_subject_marks_besck204d targets a single subject and returns discrete fields — internal_marks, external_marks, total_marks, subject_code, subject_name, and a result string — making it useful when you only need per-subject detail rather than the full result sheet.Are results from previous academic years accessible?+
get_available_examinations, so deep historical data may not be reachable. Results that are actively published remain accessible as long as VTU keeps them on the portal.Does the API return marks for postgraduate programs like M.Tech?+
get_examination_programs enumerates all degree links (including PG programs if published), but there is no dedicated filter for M.Tech specifically. Individual PG marks carry the same marks array structure as UG results. You can fork this API on Parse and add a filtering or dedicated PG-only endpoint if your use case requires it.Is there a way to look up results without providing a captcha token?+
fetch_student_result, get_subject_marks_besck204d, and batch_fetch_results all require a token and a solved captcha value alongside the usn and exam_dir. There is no captcha-free result lookup path in the current API. You can fork the API on Parse and revise it to integrate a captcha-solving service at the API level if you want to avoid handling captchas in your client.