APIs - data exchange
This integration is used to transfer Data from WebUntis to your 3rd-Party-Application or the other way.
We provide APIs which follows the international OneRoster specification and we provide our own WebUntis specific APIs.
Attention: For all APIs you have to use the EAP-URL, not the WU-URL!
OneRoster APIs
It´s based on REST-Interfaces that are correspondig to the international OneRoster-Specification 1.1 from IMS Global.
OneRoster 1.1 is a standard for sharing roster data between different systems at a school. Here you can find more informations about the Specification: OneRoster v1.1 Final Specification
The following APIs are provided by WebUntis:
Domain |
Service Call |
Endpoint |
---|---|---|
Organisation |
getAllOrgs |
{{EAP_URL}}ims/oneroster/v1p1/orgs |
getOrg |
{{EAP_URL}}ims/oneroster/v1p1/orgs/{{id}} |
|
getAllSchools |
{{EAP_URL}}ims/oneroster/v1p1/schools |
|
getSchool |
{{EAP_URL}}ims/oneroster/v1p1/schools/{{id}} |
|
User |
getAllUsers |
{{EAP_URL}}ims/oneroster/v1p1/users |
getAllStudents |
{{EAP_URL}}ims/oneroster/v1p1/students/ |
|
getAllTeachers |
{{EAP_URL}}ims/oneroster/v1p1/teachers |
|
getTeachersForSchool |
{{EAP_URL}}ims/oneroster/v1p1/schools/{{id}}/teachers |
|
getStudentsForSchool |
{{EAP_URL}}ims/oneroster/v1p1/schools/{{id}}/students |
|
getStudent |
{{EAP_URL}}ims/oneroster/v1p1/students/{{id}} |
|
getTeacher |
{{EAP_URL}}ims/oneroster/v1p1/teachers/{{id}} |
|
getUser |
{{EAP_URL}}ims/oneroster/v1p1/users/{{id}} |
|
getStudentsForClassInSchool |
{{EAP_URL}}ims/oneroster/v1p1/classes/{{id}}/students |
|
getTeachersForClassInSchool |
{{EAP_URL}}ims/oneroster/v1p1/classes/{{id}}/teachers |
|
Class |
getAllClasses |
{{EAP_URL}}ims/oneroster/v1p1/classes |
|
getClass |
{{EAP_URL}}ims/oneroster/v1p1/classes/{{id}} |
AcademicSession |
getAllAcademicSessions |
{{EAP_URL}}ims/oneroster/v1p1/academicSessions |
|
getAcademicSession |
{{EAP_URL}}ims/oneroster/v1p1/academicSessions/{{id}} |
For further informations about the API and how to call it, please check the OneRoster-Specification above.
Attention:
- A class in OneRoster is not a "Class" in WebUntis! A class in OneRoster is equivalent to a lesson in WebUntis.
- OneRoster only knows users and no master data without a user. therefore, only student or teacher data is transferred via these interfaces if corresponding users exist for it.
Information:
We extend the following information using the metadata-attributes:
- User-information:
- Sex (gender) (optional)
- Birthdate (optional)
- Usergroup: The usergroup from WebUntis
- Userrole: The users role from WebUntis
- Sex (gender) (optional)
- Class-information:
- ID and name of the WebUntis-Classes (eg. "1A")
- From- and to-date of the lesson.
- Optional name of the lesson.
WebUntis APIs
Managing student masterdata
With these APIs you can manage student masterdata including class-assignments and user for the student.
There is currently no way to delete students via the API. This needs to be done manually in WebUntis.
You can find the YAML-specification down below under "openapi-extern-student-management.yaml"
Domain |
Service Call |
Endpoint |
---|---|---|
Student |
getStudent |
GET {{EAP_URL}}WebUntis/api/rest/extern/v1/students/{{id}} |
getStudents |
GET {{EAP_URL}}WebUntis/api/rest/extern/v1/students |
|
createStudents |
POST {{EAP_URL}}WebUntis/api/rest/extern/v1/students |
|
updateStudents |
PUT {{EAP_URL}}WebUntis/api/rest/extern/v1/students |
Reading up2date timetable
With this API you get all data needed to display a timetable. You can filter by resource (student, teacher, room, class or lesson) and it can include all periods or only changed periods.
It includes the current state and changes from the scheduling timetable.
You can find the YAML-specification down below under "openapi-extern-timetable_v2.yaml"
Domain |
Service Call |
Endpoint |
---|---|---|
Timetable |
getTimetable |
GET {{EAP_URL}}WebUntis/api/rest/extern/v1/timetable |
Timetable |
getTimetableV2 |
GET {{EAP_URL}}WebUntis/api/rest/extern/v2/timetable |
Reading Class register student absences
With this API you can read the absences of students from the class register. The class register is an optional module!
Calculated totals and also the individual data are returned.
You can find the YAML-specification down below under "openapi-extern-classreg-absences-v1-api.yaml"
Domain |
Service Call |
Endpoint |
---|---|---|
Class register |
getStudentAbsenceTimes |
GET {{EAP_URL}}WebUntis/api/rest/extern/v1/classreg/students/absencetimes |
Reading Exams and ExamTypes
With this API you can read ExamTypes and Exams.
You can find the YAML-specification down below under "openapi-extern-exam-api.yaml"
Domain |
Service Call |
Endpoint |
---|---|---|
Exams |
getExams |
GET {{EAP_URL}}WebUntis/api/rest/extern/v1/exam |
Exams |
getExamTypes |
GET {{EAP_URL}}WebUntis/api/rest/extern/v1/exam-types |