Implement more OneRoster endpoints
kyoshizaki opened this issue · 3 comments
kyoshizaki commented
1st Priority implementations
Service Call | Endpoint | HTTP Verb | Action |
---|---|---|---|
getStudentsForClass | /classes/{class_id}/students | GET | Return the collection of students that are taking this class. |
getTeachersForClass | /classes/{class_id}/teachers | GET | Return the collection of teachers that are teaching this class. |
kyoshizaki commented
2nd Priority implementations
Service Call | Endpoint | HTTP Verb | Action |
---|---|---|---|
getClassesForCourse | /courses/{course_id}/classes | GET | Return the collection of classes that are teaching this course. |
getClassesForStudent | /students/{student_id}/classes | GET | Return the collection of classes that this student is taking. |
getClassesForTeacher | /teachers/{teacher_id}/classes | GET | Return the collection of classes that this teacher is teaching. |
getClassesForSchool | /schools/{school_id}/classes | GET | Return the collection of classes taught by this school. |
getClassesForUser | /users/{user_id}/classes | GET | Return the collection of classes attended by this user. |
kyoshizaki commented
3rd Priority Implementations
Service Call | Endpoint | HTTP Verb | Action |
---|---|---|---|
getEnrollmentsForSchool | /schools/{school_id}/enrollments | GET | Return the collection of all enrollments for this school. |
getStudentsForSchool | /schools/{school_id}/students | GET | Return the collection of students attending this school. |
getTeachersForSchool | /schools/{school_id}/teachers | GET | Return the collection of teachers teaching at this school. |
getTermsForSchool | /schools/{school_id}/terms | GET | Return the collection of terms that are used by this school. |
Remarks
getStudentsForSchool / getStudentsForSchool
- users.csv has orgSourcedIds as string (list of GUID references), NOT as integer.
- Assumption: User does not belong to multiple orgs.
getTermsForSchool
- academicSessions.csv doesn't have schoolSourcedId, but relates to school(orgs.csv) through classes.csv (Intermediate table).
kyoshizaki commented
4th Priority Implementations
Service Call | Endpoint | HTTP Verb | Action |
---|---|---|---|
getEnrollmentsForClassInSchool | /schools/{school_id}/classes/{class_id}/enrollments | GET | Return the collection of all enrollments into this class. |
getStudentsForClassInSchool | /schools/{school_id}/classes/{class_id}/students | GET | Return the collection of students taking this class in this school. |
getTeachersForClassInSchool | /schools/{school_id}/classes/{class_id}/teachers | GET | Return the collection of teachers taking this class in this school. |
Remarks
getEnrollmentsForClassInSchool
- The school_id is used to select Enrollment.schoolSourcedId.
- The definition of Enrollment.schoolSourcedId is "the school at which the class is being provided".
- It seems redundant to specify both school_id and class_id.
getStudentsForClassInSchool / getTeachersForClassInSchool
- The school_id is used to select Class.schoolSourcedId (which should be equal to Enrollment.schoolSourcedId).
- It seems redundant to specify both school_id and class_id.