How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

NTHU Data API

A live, keyless, MIT-licensed FastAPI service publishing 22 paths over NTHU campus data — announcements by unit, campus bus routes and schedules, the course catalog and course search, department directories, dining venues and opening hours, real-time campus electricity usage, library study-space availability and lost-and-found, campus locations, and unit newsletters. It publishes its own OpenAPI description at /openapi.json (serving 3.1.0 as of 2026-08-30; the archived pristine copy in openapi/_original/ declares 3.0.3, so upstream has since bumped its emitted version) and Swagger UI at /docs. Split per tag by our refine pipeline into the nine documents referenced below; the pristine source contract is openapi/_original/nthu-data-api.yaml.

NTHU Data API is one of 4 APIs that National Tsing Hua University publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Campus, Open Data, Course Catalog, Transit, and Dining. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and a JSON-LD context.

This API exposes 23 operations across 22 paths, organized into 9 resource areas, and defines 41 schemas. It is described by OpenAPI 3.0.3, at version 2.0.0.

Requests are made against a single base URL, https://api.nthusa.tw.

23 operations 22 paths 41 schemas 22 GET1 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.3
API Version
2.0.0
Base URL
https://api.nthusa.tw
Resource Areas
9

Paths & Operations 23

Across 22 paths, the API surfaces 23 operations — 22 GET, 1 POST. They span 9 resource areas: Announcements, Buses, Courses, Departments, Dining, Energy, Libraries, Locations, Newsletters. Each is listed below with its method, path, parameters, and response codes.

Announcements 3
GET
/announcements/
Get Announcements
getAnnouncements 4 params → 200422
GET
/announcements/sources
Get Announcements List
getAnnouncementsList 1 param → 200422
GET
/announcements/lists/departments
List Announcement Departments
listAnnouncementDepartments → 200
Buses 4
GET
/buses/routes
Get Bus Route Metadata
getBusRouteData 2 params → 200422
GET
/buses/info/stops
Get Bus Stops Information
getBusStopsInformation → 200
GET
/buses/schedules
Get Bus Schedules
getBusSchedules 6 params → 200422
GET
/buses/stops/{stop_name}
Get Stop Bus Information By Stop
getStopBusInformationByStop 6 params → 200422
Courses 4
GET
/courses/
Get All Courses
getAllCourses → 200
GET
/courses/search
Search Courses By Field And Value
searchCoursesByFieldAndValue 19 params → 200422
POST
/courses/search
Search Courses By Condition
searchCoursesByCondition body → 200422
GET
/courses/lists/{list_name}
List Courses By Type
listCoursesByType 1 param → 200422
Departments 2
GET
/departments/
Get All Departments
getAllDepartments → 200
GET
/departments/search
Fuzzy Search Departments And People
searchDepartmentsAndPeople 1 param → 200422
Dining 2
GET
/dining/
Get Dining Data
getDiningData 3 params → 200422
GET
/dining/open
Get Open Restaurants
getOpenRestaurants 1 param → 200422
Energy 1
GET
/energy/electricity_usage
Get Realtime Electricity Usage
getRealtimeElectricityUsage → 200
Libraries 3
GET
/libraries/space
Get Library Space Availability
getLibrarySpaceAvailability → 200
GET
/libraries/lost_and_found
Get Library Lost And Found Items
getLibraryLostAndFoundItems → 200
GET
/libraries/rss/{rss_type}
Get Library Rss Data
getLibraryRssData 1 param → 200422
Locations 2
GET
/locations/
Get All Locations
getAllLocations → 200
GET
/locations/search
Fuzzy Search Locations
fuzzySearchLocations 1 param → 200422
Newsletters 2
GET
/newsletters/
Get All Newsletters
getAllNewsletters → 200
GET
/newsletters/{newsletter_name}
Get Newsletter By Name
getNewsletterByName 1 param → 200422

Schemas 41

The contract defines 41 schemas that model the data the API accepts and returns. The most detailed are CourseData (19 properties), LibraryRssItem (8 properties), DiningRestaurant (6 properties), EnergyElectricityInfo (5 properties). Each schema is shown below with its type and property counts.

AnnouncementArticle
object
Individual announcement article.
3 properties 2 required
AnnouncementDetail
object
Announcement detail with articles list.
5 properties 5 required
AnnouncementLanguageOption
string
BusArriveTime
object
Bus arrival time at a stop.
2 properties 2 required
BusDayWithCurrent
string
Day type including current day option.
BusDetailedSchedule
object
Unified detailed bus schedule for both Main and Nanda campus.
2 properties 2 required
BusDirection
string
Bus direction.
BusInfo
object
Bus route information.
4 properties 4 required
BusRouteType
string
Bus route type.
BusSchedule
object
Unified bus schedule entry for both Main and Nanda campus.
5 properties 4 required
BusStopsInfo
object
Bus stop information.
4 properties 4 required
BusStopsName
string
Bus stop names.
BusStopsQueryResult
object
Result of querying bus stops.
5 properties 5 required
BusType
string
Bus vehicle type.
CourseCondition
object
Single course query condition.
3 properties 2 required
CourseData
object
Course data schema.
19 properties 19 required
CourseFieldName
string
Course field names for querying.
CourseLanguage
string
Course language options.
CourseListName
string
Predefined course lists.
CourseQueryCondition
array
Complex course query condition.
CourseQueryOperation
string
Query operation type.
Department
object
5 properties 2 required
DepartmentContact
object
5 properties
DepartmentDetails
object
3 properties
DepartmentPerson
object
5 properties 4 required
DiningBuilding
object
Building with restaurants.
2 properties 2 required
DiningBuildingName
string
Dining building names.
DiningRestaurant
object
Restaurant information.
6 properties 6 required
DiningScheduleName
string
Schedule names for dining queries.
EnergyElectricityInfo
object
Electricity usage information.
5 properties 5 required
HTTPValidationError
object
1 property
LibraryLostAndFound
object
4 properties 4 required
LibraryRssImage
object
3 properties 3 required
LibraryRssItem
object
8 properties 8 required
LibraryRssType
string
LibrarySpace
object
5 properties 5 required
LocationDetail
object
Location detail information.
3 properties 3 required
NewsletterArticle
object
3 properties 2 required
NewsletterInfo
object
4 properties 4 required
NewsletterName
string
ValidationError
object
3 properties 3 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

nthu-data-api.yaml Raw ↑

Other APIs National Tsing Hua University publishes across the network.

NTHU Academic Information System OAuth 2.0 Service
NTHU Research Portal (Esploro tenant)
NTHU Library Discovery (Primo VE tenant)
Where this information came from

This is an independent, third-party profile of NTHU Data API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.