Instructure provisions rostering data using two rostering services. Configure your integration to support both service methods. Additionally, review the rostering best practices.
Note: All payloads are expected to pass IMS global validator. Learn more about OneRoster REST service certification.
Note: Instructure is a OneRoster Consumer. For OneRoster Consumer and Provider definitions, view the Introduction to OneRoster.
Bulk Rostering Service
| Service Call | Endpoint | HTTP Verb | Required |
getAllClasses
| /classes | GET | ✓ |
getAllCourses
| /courses | GET | ✓ |
getAllDemographics
| /demographics | GET | 𝗫 |
getAllEnrollments
| /enrollments | GET | ✓ |
getAllOrgs
| /orgs | GET | ✓ |
getAllSchools
| /schools | GET | ✓ |
getAllStudents
| /students | GET | ✓ |
getAllTeachers
| /teachers | GET | ✓ |
getAllUsers
| /users | GET | ✓ |
getAllTerms
| /terms | GET | ✓ |
getAllAcademicSessions
| /academicSessions | GET | ✓ |
getAllGradingPeriods
| /gradingPeriods | GET | ✓ |
School Specific Rostering Service
| Service Call | Endpoint | HTTP Verb | Required |
getCoursesForSchool
| /schools/{id}/courses | GET | ✓ |
getEnrollmentsForSchool
| /schools/{school_id}/enrollments | GET | ✓ |
getStudentsForSchool
| /schools/{school_id}/students | GET | ✓ |
getTeachersForSchool
| /schools/{school_id}/teachers | GET | ✓ |
getTermsForSchool
| /schools/{school_id}/terms | GET | ✓ |
getAllAcademicSessions
| /academicSessions | GET | ✓ |
getAllGradingPeriods
| /gradingPeriods | GET | ✓ |
| getAllOrgs | /orgs | GET | ✓ |
| getAllSchools | /schools | GET | ✓ |