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

Shnaton Course Catalog API

The public JSON API behind shnaton.huji.ac.il, the Hebrew University's official course catalog. Faculties, departments, degree programs, specializations, study roadmaps, courses, course groups, timetabled study sessions and syllabi, bilingual Hebrew/English, for academic years 2020-2027. Unauthenticated and unpaginated: an anonymous POST to /courses/search-advanced returned 6,355 courses in a single 14,153,560-byte response on 2026-09-01. The university publishes no contract for it — the OpenAPI in this repository was derived by API Evangelist from the catalog's own JavaScript client and then verified operation by operation against the production host.

Shnaton Course Catalog API is one of 6 APIs that Hebrew University of Jerusalem publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 JSON Schema definition.

Tagged areas include Course Catalog, Registrar, Timetable, Syllabus, and Open Access. The published artifact set on APIs.io includes an OpenAPI specification, authentication docs, a JSON-LD context, and 1 JSON Schema.

This API exposes 21 operations across 21 paths, organized into 6 resource areas, and defines 15 schemas. It is described by OpenAPI 3.1.0, at version 2027.

Requests are made against a single base URL, https://shnaton.huji.ac.il/api.

21 operations 21 paths 15 schemas 19 GET2 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.1.0
API Version
2027
Base URL
https://shnaton.huji.ac.il/api
Terms of Service
Resource Areas
6

Paths & Operations 21

Across 21 paths, the API surfaces 21 operations — 19 GET, 2 POST. They span 6 resource areas: Service, Organization, Reference Data, Specializations, Courses, Syllabus. Each is listed below with its method, path, parameters, and response codes.

Service 1

Service health.

GET
/health
Service health probe
getHealth → 200
Organization 2

The university's academic structure — faculties, departments and degree programs.

GET
/faculties
List faculties and schools
listFaculties → 200
GET
/learning-programs
List degree programs
listLearningPrograms → 200
Reference Data 5

Enumerations the catalog is indexed by — academic years, languages, session types, assignment filters.

GET
/reference-data/active-years
List academic years the catalog is published for
listActiveYears → 200
GET
/reference-data/threshold-years
List roadmap threshold years
listThresholdYears → 200
GET
/reference-data/languages
List languages of instruction
listLanguages → 200
GET
/reference-data/study-session-types
List study session types
listStudySessionTypes → 200
GET
/reference-data/assignment-filter-options
List assessment-type filter options
listAssignmentFilterOptions 1 param → 200400
Specializations 6

Specializations, units and yearly study roadmaps.

GET
/specializations/all
List all specializations for a year
listSpecializations 1 param → 200400
GET
/specializations/search
Search specializations by name
searchSpecializations 2 params → 200400
GET
/specializations/search-by-course
Find specializations containing a course
searchSpecializationsByCourse 2 params → 200400
GET
/yearly-roadmaps/search
Search yearly study roadmaps by name
searchYearlyRoadmaps 2 params → 200400
GET
/yearly-roadmaps/search-by-course
Find yearly roadmaps containing a course
searchYearlyRoadmapsByCourse 2 params → 200400
GET
/yearly-roadmaps/{roadmapId}/combinations
Get valid specialization combinations for a roadmap
getRoadmapCombinations 2 params → 200
Courses 6

Course search, course groups, timetabled study sessions and prerequisites.

POST
/courses/search-advanced
Advanced course search
searchCoursesAdvanced 1 param body → 200400
POST
/courses/search-advanced-in-roadmap
Advanced course search scoped to a roadmap
searchCoursesAdvancedInRoadmap body → 200400
GET
/courses/groups-with-sessions
Get groups and timetabled sessions for courses
getCourseGroupsWithSessions 2 params → 200
GET
/courses/code/{courseCode}/requirements
Get a course's prerequisites
getCourseRequirements 2 params → 200
GET
/courses/code/{courseCode}/with-requirement
Find courses that require a course
getCoursesWithRequirement 2 params → 200
GET
/groups/{groupId}/study-sessions
Get the timetable for a course group
getGroupStudySessions 2 params → 200
Syllabus 1

Per-course syllabus documents.

GET
/syllabus
Get a course syllabus
getSyllabus 2 params → 200

Schemas 15

The contract defines 15 schemas that model the data the API accepts and returns. The most detailed are Course (24 properties), CourseGroup (19 properties), StudySession (14 properties), Syllabus (10 properties). Each schema is shown below with its type and property counts.

BilingualText
object
Every human-readable string in this API. Hebrew is the primary member; the English member is usually present but may be an empty string.
2 properties 1 required
CodedTerm
object
A reference-data enumeration member.
2 properties 2 required
AcademicYear
object
4 properties 3 required
Faculty
object
3 properties 3 required
LearningProgram
object
5 properties 3 required
Specialization
object
9 properties 3 required
AssignmentFilterOptions
object
2 properties
CourseSearchRequest
object
Filter document for advanced course search. Members are those the catalog's own client assembles; the server tolerates a subset.
9 properties 1 required
Course
object
24 properties 4 required
CourseGroup
object
19 properties 4 required
StudySession
object
One timetabled meeting of a course group.
14 properties 4 required
CourseRequirements
object
3 properties
Syllabus
object
10 properties 2 required
ProblemDetails
object
RFC 9457 problem document as emitted by ASP.NET Core model validation.
5 properties
CodedError
object
Application-coded error. Carries a code only — no message, no title, no trace id. Observed as {"code":"ERR1101"} when a required year parameter is omitted.
1 property 1 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

hebrew-university-of-jerusalem-shnaton-course-catalog-openapi.yml Raw ↑

Other APIs Hebrew University of Jerusalem publishes across the network.

Hebrew University of Jerusalem SAML 2.0 Identity Provider
HUJI Research Portal / CRIS (Elsevier Pure tenant)
HUJI Library Discovery (Ex Libris Primo tenant)
Crossref member registration
Research Organization Registry (ROR) record
Where this information came from

This is an independent, third-party profile of Shnaton Course Catalog 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.