OneRoster 1.2 Norwegian Profile
Spec Version 1.0
| Document Version: | 1.0 |
| Date Issued: | 28th, August 2025 |
| Status: | This document is made available for adoption by the public community at large. |
| This version: | https://www.imsglobal.org/spec/or-nor/v1p0/ |
| Latest version: | https://www.imsglobal.org/spec/or-nor/latest/ |
| Errata: | https://www.imsglobal.org/spec/or-nor/v1p0/errata/ |
IPR and Distribution Notice
Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the specification set forth in this document, and to provide supporting documentation.
1EdTech takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on 1EdTech's procedures with respect to rights in 1EdTech specifications can be found at the 1EdTech Intellectual Property Rights webpage: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf .
Use of this specification to develop products or services is governed by the license with 1EdTech found on the 1EdTech website: http://www.imsglobal.org/speclicense.html.
Permission is granted to all parties to use excerpts from this document as needed in producing requests for proposals.
The limited permissions granted above are perpetual and will not be revoked by 1EdTech or its successors or assigns.
THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTER'S OWN RISK, AND NEITHER THE CONSORTIUM, NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.
Public contributions, comments and questions can be posted here: http://www.imsglobal.org/forums/ims-glc-public-forums-and-resources .
© 2024 1EdTech™ Consortium, Inc. All Rights Reserved.
Trademark information: http://www.imsglobal.org/copyright.html
Abstract
The 1EdTech OneRoster® (OR) standard addresses the exchange of student data (primarily about people, courses, enrollments and grades) between different educational systems for the specific needs of K-12/Schools. The primary use-cases are: the exchange of data between a Student Information System (SIS)/Student Administration System (SAS) and Learning Management System (LMS), and the rostering of access to learning tools.
OneRoster 1.2 has been defined to enable various attributes to be "tailored" to meet regional/country needs. This document defines the Norwegian Profile of OneRoster. This Profile is based on the OneRoster European Profile [OR-EU-12], which defines a framework upon which European Country-specific profiles of OneRoster 1.2 are based. A key constraint applied by the Norwegian profile is that interoperability is enabled through the REST-based API ONLY i.e. CSV-based exchange is not permitted. This document includes details about conformance and certification with respect to this profile, and implementation guidance on the best practice usage of the new Norwegian constraints. The certification addresses both the requirements for REST-based Service Providers and Service Consumers.
This Profile adds constraints to the OneRoster 1.2 specification [OR-OVIEW-12] upon which it is based, and also defines additional constructs to tailor the OneRoster information model to meet needs of the Norwegian K-12 ecosystem. Also, a new OneRoster service has been defined (the Student Absence Service) to address important Norwegian K-12 use-cases not enabled by the OneRoster 1.2 specification.
The 1EdTech OneRoster® (OR) standard addresses the exchange of student data (primarily about people, courses, enrollments and grades) between different educational systems for the specific needs of K-12. The primary use-cases are: the exchange of data between a Student Information System (SIS)/Student Administration System (SAS) and Learning Management System (LMS), and the rostering of learning tools. In OR 1.2, the service has been split into four core services:
- OR 1.2 Rostering Service Model [ORROS-SM-12] - to enable the exchange of information about the rostering of people in classes;
- OR 1.2 Resources Service Model [ORRES-SM-12] - to enable the exchange of information about the set of resources that SHOULD be made available to users, courses and classes;
- OR 1.2 Gradebook Service Model [ORGBK-SM-12] - to enable the exchange of information about results which may be aligned as lineItems and categories which are collections of lineItems;
- Assessment Results Profile for Gradebook Services [ORGBK-ARP-10] - to enable the exchange of information about detailed results aligned to lineItems.
The standard includes a REST-based binding to make it quicker and easier to implement the exchange of information about people, membership, courses and gradebooks [ORROS-BD-12], [ORRES-BD-12], [ORGBK-BD-12]. In addition to the REST binding description, a format for CSV file based exchange has also been defined [OR-CSV-121].
This document, the OneRoster 1.2 Norwegian Profile, defines a set of restrictions and extensions on OneRoster 1.2 to tailor the specification for use within the Norwegian K-12 ecosystem. Part of the profiling activity has included the definition of a new OneRoster service (the Student Absence Service) to address important Norwegian K-12 use-cases not enabled by the OneRoster 1.2 specification. The Norwegian K-12 Profile REQUIRES the use of the REST/JSON binding technology only.
As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.
The key words MAY, MUST, MUST NOT, OPTIONAL, RECOMMENDED, REQUIRED, SHALL, SHALL NOT, SHOULD, and SHOULD NOT in this document are to be interpreted as described in [RFC2119].
An implementation of this specification that fails to implement a MUST/REQUIRED/SHALL requirement or fails to abide by a MUST NOT/SHALL NOT prohibition is considered nonconformant. SHOULD/SHOULD NOT/RECOMMENDED statements constitute a best practice. Ignoring a best practice does not violate conformance but a decision to disregard such guidance should be carefully considered. MAY/OPTIONAL statements indicate that implementers are entirely free to choose whether or not to implement the option.
1EdTech create flexible specifications that can be used in a wide range of teaching and learning scenarios, markets and geographic locations. The consensus-based specification development process used by 1EdTech creates specifications that are imperfect but which 'enable practice'. The process of Profiling is used to enable different communities to tailor those specifications that enable, and enforce, best practice in the form of a Profile. It is for the community themselves to decide the form of a Profile but ALL Profiles MUST follow the constraints established by 1EdTech for the definition of a Profile. The key principle for a Profile is that an instance that conforms to the Profile will also conform to the corresponding base specification.
The creation of a Profile is based upon the following constraints:
- A Data Model MUST only be extended as permitted by the extension points in the base specification and MUST use the corresponding constraints as imposed by the binding technology that realises the form of the extension;
- The properties in a Data Model MAY be changed as long as the change adds constraints, This includes:
- Multiplicity - optional properties MAY be PROHIBITED or REQUIRED. The degree of support MAY be reduced e.g. 1-to-many reduced to one ONLY
- Data-type - making a data-type more restrictive is permitted e.g. String to Enumeration, reducing the list of permitted enumerations, Integer to Non-negative Integer, etc.
- Embedded vocabularies MAY be extended if the original vocabulary permits extensions (it is 1EdTech best practice for all embedded vocabularies to be designed such that they can be extended. Properties of appropriate data-types e.g. String, etc. MAY be constrained by the inclusion of a new embedded vocabulary;
- For a service model new operations MAY be added to the set of established operations. The style of definition of those operations MUST follow the style of the established operations. The new operations MAY be added to an established 'Interface' or new 'Interfaces' MAY be created;
- New services MAY be defined. In some cases a 1EdTech specification is the combination of more than one service and so the addition of new services is consistent with the 1EdTech definition of a specification. The style of definition of a new MUST follow the style of 1EdTech service definitions and MUST be defined to support Profiling;
- The capabilities of a service MAY be extended to take advantage of the inherent features of the binding technology. For example, new OAuth 2' scopes MAY be added as part of the REST-based service binding. Similarly, new Query Parameters could also be added.
The only way to ensure that a valid Profile is created is to use the 1EdTech Model Driven Specification Toolkits. Therefore, a Profile SHOULD be created as a collaborative activity between the profiling community and the 1EdTech core technical team. A Profile is published using the normal specification development process i.e. undergoes formal vote by the 1EdTEch Technical Advisory Board. All 1EdTech Members and the broader public will have access to a published Profile. Only those 1EdTech Contributing Members that either require the use of the Profile or who create products that are certified to the Profile are responsible for the maintenance of the Profile.
The structure of the rest of this document is:
| 2. Key Details of K-12 Education in Norway | An overview of the relevant teaching and learning structures and activities that must be supported by this Norwegian profile of OneRoster 1.2. The objective is to tailor the OneRoster specification to the needs of the Norwegian teaching and learning activities. |
| 3. Use Cases for OneRoster in K-12 Education in Norway | The new use-cases that were identified to support education in Norwegian schools. The corresponding detailed use-case descriptions are supplied in Appendix A. |
| 4. The Constraints and Extensions Applied by the Profile | The functional details for the profile. This includes definition of the data model extensions and increased constraints, the new endpoints to the existing Rostering Service, the definition of the new Student Absence Service, and the definition of the new vocabularies. |
| 5. Implementation Guide | The suggested best practices for the new features that have added in this profile. Usage of the best practices from the base OneRoster 1.2 specification are assumed. |
| 6. Conformance & Certifications | The certifications that are available for the Norwegian Profile and the corresponding functionality that must be supported by Service Providers and Service Consumers to prove conformance. |
| Appendix A Summary Use-case Descriptions Specific to the Norwegian K-12 Profile | The set of new use-cases specific to the requirements of K-12/Schools in Norway. |
| Appendix B Summary of Changes to the OneRoster 1.2 Rostering Service | The formal statement of the changes made to the base specification. This statement is produced by the 1EdTech Model Driven Specification toolkit. |
| Appendix C AfterSchool and Childcare Extension Endpoints | The detailed definition for the new set of endpoints that have been added to the OneRoster Service to support the exchange of information about After-School and Childcare activities. |
| Appendix D OpenAPI Listings | The set of OpenAPI files that have been produced to support this profile. OpenAPI files, version 3, in both the JSON and YAML formats are available. |
| Appendix E Revision History | Formal release history of changes made to this document. |
| Appendix F References | Formal citations for all of the works referenced in this document. |
| Appendix G List of Contributors | The list of individuals who contributed to the development of this document. |
- API
- Application Programming Interface
- Consumer
- The entity that is contained with an application/system/tool to obtain data from a Service Provider.
- CASE
- Competencies and Academic Standards Exchange
- County (Fylkeskommune)
- Norway is divided into 11 administrative regions called counties. The counties form the first-level administrative divisions of Norway and are further subdivided into 356 Municipalities.
- CSV
- Comma Separated Values
- FEIDE
- Felles Elektronisk Identitetshåndtering is a centralized identity management solution for the educational sector of Norway and is short for «common electronic identity management.
- Grep
- The national database for subjects, curricula and the structure of available courses and apprenticeships in the primary and secondary education and training in Norway.
- GUID
- Globally Unique Identifier
- HTTP
- HyperText Transfer Protocol
- IETF
- Internet Engineering Task Force
- IUT
- Implementation Under Test. An IUT may be claiming compliance as a Consumer and/or a Service Provider and may also support CSV import and/or CSV export.
- JSON
- JavaScript Object Notation
- LIS
- Learning Information Services
- LMS
- Learning Management System
- LOR
- Learning Object Repository
- LTI
- Learning Tools Interoperability
- Municipality (Kommune)
- Municipalities are the unit of local government in Norway responsible for primary education (until 10th grade), outpatient health services, senior citizen services, unemployment and other social services, zoning, economic development, and municipal road
- PAS Code
- This is the PAS examination code assigned to the school.
- PIFU
- Personrelatert informasjonsflyt i utdanning (English: Flow of person-related information in education)
- PPT
- Pedagogisk Psykologisk Tjeneste (English: Pedagogical Psychology Service)
- REST
- Representational State Transfer
- RFC
- Request For Comment
- Service Provider
- The entity that is responsible for supplying data to a Consumer. In general a Service Provider will support many Consumers concurrently.
- SAS
- Student Administration Service (Norwegian: Skoleadministrativt System)
- SFO
- Skolefritidsordning (English: After School-programme)
- SIS
- Student Information Service
- UPN
- User Principal Name
- URI
- Uniform Resource Identifier
- URN
- Uniform Resource Name
- UTF
- Unicode Transformation Format
- UUID
- Universally Unique Identifier
- VIGO Identifier
- This is the identifier for a school under the VIGO database.
Figure 1 shows the schooling in Norway and how it is structured with grades 1 through 13 for both public and private schools. In Norway, schooling is divided into three parts: Primary School (grades 1-7), Lower Secondary school (grades 8-10) and Upper Secondary School (grades 11-13, called Vg1, Vg2 and Vg3). The Municipalities (school owner) are responsible for primary and secondary school, whilst the Counties (school owner) are responsible for Upper Secondary. The Municipalities are also responsible for the after school activities.
The Municipalities and Counties can be school owner for one or more schools. For private schools, school owner and school are the same entity, but registered as different organizations (with different organization numbers). They follow the structure as the picture above, with a few exceptions. The Municipalities and Counties are not responsible for the private schools.
Figure 2 shows how students in Norway are members or enrolled into different units and groups. They have a relationship to both the school owner (Municipality or County) and the school. They are also enrolled into a grade level (10th grade) and a “main” class (10A), consisting of his or her fellow students and one or two contact teachers with responsibility for that particular main class. The students in this main class are enrolled into the same subject groups (Science 10A, English 10A etc). A student can also take subjects outside of this “main” class, often an interdisciplinary group or an elective subject e.g. foreign language (German, French etc). Students can also be members of “non-subject” groups like a student council, a lab group for science, etc.
The dotted line shows how a student can have a membership in a different school. This might happen if the student is going to take a subject or needs access to content in learning materials that are either higher or lower in difficulty based on grade level.
Figure 3 is similar to Figure 2, but is from the teacher's perspective. The main difference is that teachers often teach in multiple grade levels.
The teacher is enrolled into different units and groups. They have a relation to both the school owner (Municipality or County) and the school. They are also enrolled into one or more grade levels as well as a “main” class (10A), which they are responsibility for. The teacher is enrolled into the main class’s subject groups (Science 10A, English 10A etc) and the other classes the teacher teaches. Teachers can also be members of "non-subject" groups e.g. a lab group for science.
The set of single objects that can be exchanged between OR Rostering end-systems are:
- An 'academicSession' - a duration over which teaching and learning occurs. This includes a 'term' or 'gradingPeriod' which are types of 'academicSession';
- A 'class' - a teaching activity for a course. Each course will be taught through one or more classes;
- A 'course' - a course of study that, typically, has a shared curriculum although it may be taught to different students by different teachers;
- A 'demographics' - the set of demographics information for a user;
- An 'enrollment' - a user is enrolled on a class delivered by an 'org';
- An 'org' - the information about an organization. This includes a 'school' which is a type of 'org';
- A 'user' - the information about a user. This includes a 'student' or 'teacher' who are types of 'user'. This information includes the roles for the user in the corresponding 'orgs' and the set of 'userProfiles' for a user on the various systems/tools/apps that could be used.
The set of collection objects that can be exchanged between OR Rostering end-systems are:
- A collection of 'academicSessions';
- A collection of 'classes';
- A collection of 'courses';
- A collection of 'demographics';
- A collection of 'enrollments';
- A collection of 'orgs' (this includes the new after school and childcare activities);
- A collection of 'users' - this includes the set of roles and userProfiles for each user.
The full OneRoster data model, including the relationships between the core classes, is shown in Figure 4 with annotations identifying the amendments made in this Profile.
- A course will be delivered by one or more classes. Each course is assigned to a single 'org' and an org' may be responsible for any number of courses. A course MAY be identified as a "Ghost Course" to support classes that are not being scheduled;
- A user is enrolled on a class (a class MUST be associated to a course). A user may be enrolled on more than one class and each class will have one or more enrolled users;
- Each class will be delivered in a specific 'academicSession' and any number of classes may be delivered in an 'academicSession';
- Each 'academicSession' will be handled by an 'org' and each 'org' will be responsible for any number of academicSessions;
- Each user may have a demographics description and each demographics is assigned to a single user only;
- A user must have at least one role and each role is assigned in the context of a single org. A user may have many roles in many orgs (denoted by many role-org mappings);
- A user may have one or more profiles and each profile is assigned to a single user. A role may be aligned to a user profile.
The set of use-cases that were identified as the basis for this Norwegian Profile are described in the table below. The corresponding use-case summaries are supplied in Appendix A.
| ID | Use-case Description |
|---|---|
| N1 | Support for different groups. The Norwegian school system uses different kind of groups. A new vocabulary is detailed in the revised data model in Section 4. A Group is defined as a new type of Class. Therefore, clarification on the definition and use of Groups, Classes and Courses is provided. |
| N2 | Support for URI's in a class/course. The Norwegian school system has a national database for subjects, curricula and structure on available courses (this is the Grep database). They are often used in combination with groups and to express grades, subjects, etc. Identification of this information is through the use of URIs. |
| N3 | Support for different roles. For a specific employee or student at a school, access to services is based on the person's role. The person can have different kind of roles in different kind of groups. For example, the role "subject teacher" in one group and "contact teacher" in another. This is also related to the student data for which a teacher should have access. Roles are also defined for access to groups. Roles are also used in Feide and the profile should support the roles that exist there. In Norway there are many roles that need to be supported beyond those currently defined in the OneRoster specification. |
| N4 | Support for multiple user identifiers for a person. A person usually has more than one user identity including: National Identity Number, Workforce ID, UPN (which equates to username/email in many systems), FeideID (Feide is a centralized identity management solution for the educational sector of Norway) among others. Support for identification using these identifiers is required. |
| N5 | Support for absence. All contact teachers in a school must note the absence for a student. The Norwegian school system, uses both “valid” and “invalid” absence on both detailed and aggregated level. The total absence is stated on both a grading card (given at the end of each semester) and the diploma (given at the end of lower an upper secondary). Valid absences are deducted from the total. |
| N6 | Support for fictional data. An administrator needs to assign fictional data to certain students that are in category 6 (strengt fortrolig - strictly confidential) or 7 (fortrolig - confidential). The data (phone number) is blocked from view by all private persons. Category 7 means that the phone number of the person exposed to threats is not provided to private individuals but is available to the part of the public sector that has access to information from the National Register of Citizens. Category 6 means that information about the phone number is not delivered to anyone. |
The Table below lists the changes made by the Norwegian Profile of OneRoster 1.2.
| ID | Construct | Change Summary | Details |
|---|---|---|---|
| 1 | CSV Support | Removal of the requirement for CSV support as part of certification. Implementations are REQUIRED to support REST. | N/A |
| 2 | Gradebooks, Assessment Results and Resources Services | The requirements and expectations for support of the OneRoster 1.2 Gradebooks, Assessment Results and Resources Services are unchanged. | N/A |
| 3 | Absence Service | Addition of new endpoints for describing student absence, with support for both detailed and summarised information. | New Absence Details Service |
| 4 | AfterSchool and Childcare | Add new endpoints to support afterschool and childcare activities. The returned data conforms to the same schema as that for schools. | AfterSchool & Childcare Details |
| 5 | Class and Course | Clarification on how the semantics of Class and Course objects MUST be interpreted in the Norwegian context. | Class and Course Clarification |
| 6 | Groups and Class types | Clarify how to define groups using Class and extend the classType enumeration to contain group types. | Groups and Class Type Details |
| 7 | User Roles | Append values to the 'User.role' vocabulary. | User Role Vocabulary Changes |
| 8 | Enrollment Roles | Append values to the 'Enrollment.role' vocabulary. | Enrollment Role Vocabulary Changes |
| 9 | Org Types | Append more possible values to the 'Org.type' vocabulary. | Org Type Vocabulary Changes |
| 10 | Language Extension | Add support to identify the default language for all of the string and string-related properties. | Add Language Identification |
| 11 | Demographics | Remove all properties except 'sex' and 'birthDate'. The demographics object remains in place to enable support for additional fields to be added in future revisions of the profile. | Change in Demographics Definition |
| 12 | Subject Codes | Deprecate the use of the OneRoster 1.2 'subjectCodes' property, and instead use a new property defined as part of metadata. | Subject Codes details |
| 13 | Identifier and Password | Remove 'User.identifier' and 'User.password' from the schema (these are deprecated in OR 1.2). | Changes to the User Data Model |
| 14 | UserIDs | For 'UserId.type', add PIFU values as the vocabulary | UserIDs Vocabulary Definition |
| 15 | Org Identifier | Specify that this MUST be a valid "organisasjonsnummer" as per the organization number registry at: https://www.brreg.no. | Org Identifier Definition |
| 16 | Add New School Identifiers and Codes | New identifiers are added in definition of the School to provide the VIGO Identifier and the PAS Code. | New School Identifiers and Codes |
| 17 | Grades | For the 'grades' property in the 'Class' and 'Course' objects, use GREP arstrinn as the preferred, but not required, vocabulary. The actual values used are the "uri" field in the arstrinn JSON-encoded Vocabulary. | Grades Vocabulary Definition |
A new service that enables the reporting of student absence has been created [ORABS-SM-10] [ORABS-BD-10]. One “absence” is the absence for a student during a school year. Absence for previous and pre-registered (next) school years come with status “tobedeleted” as they are to be considered historical and/or not relevant for the present year.
A summary of the set of endpoints defined for this service is listed in the Table below.
| Service Call | Description | REST Endpoint | HTTP Verb |
|---|---|---|---|
| getAllDetailAbsences | To read, get, the complete collection of student absences (detail) i.e. all absences (detail). | /absences/detail | GET |
| getAllSummaryAbsences | To read, get, the complete collection of student absences (summary) i.e. all absences (summary). | /absences/summary | GET |
| getDetailAbsence | To read, get, a specific student absence (detail) description. | /absences/detail/{sourcedId} | GET |
| getDetailAbsenceForSchool | To read the specified student absence (detail) information for the specified school. | /schools/{schoolSourcedId}/absences/detail/{absenceSourcedId} | GET |
| getDetailAbsenceForStudentInSchool | To read the specified student absence (detail) information for the specified school and student. | /schools/{schoolSourcedId}/students/{studentSourcedId}/absences/detail/{absenceSourcedId} | GET |
| getDetailAbsenceSetForSchool | To read the set of student absence (detail) information for the specified school. | /schools/{schoolSourcedId}/absences/full | GET |
| getDetailAbsenceSetForStudentInSchool | To read the set of student absence (detail) information for the specified school and student. | /schools/{schoolSourcedId}/students/{studentSourcedId}/absences/detail | GET |
| getSummaryAbsence | To read, get, a specific student absence (summary) description. | /absences/summary/{sourcedId} | GET |
| getSummaryAbsenceForSchool | To read the specified student absence (summary) information for the specified school. | /schools/{schoolSourcedId}/absences/summary/{absenceSourcedId} | GET |
| getSummaryAbsenceForStudentInSchool | To read the specified student absence (summary) information for the specified school and student. | /schools/{schoolSourcedId}/students/{studentSourcedId}/absences/summary/{absenceSourcedId} | GET |
| getSummaryAbsenceSetForSchool | To read the set of student absence (summary) information for the specified school. | /schools/{schoolSourcedId}/absences/summary | GET |
| getSummaryAbsenceSetForStudentInSchool | To read the set of student absence (summary) information for the specified school and student. | /schools/{schoolSourcedId}/students/{studentSourcedId}/absences/summary | GET |
The full service binding description to REST/JSON technology is defined in [ORABS-BD-10].
The set of service objects that are exchanged between end-systems are:
- StudentAbsenceSummary - the container for the base set of data for a student absence;
- StudentAbsenceDetails - the container for the full set of student absence information (the base plus the absence details and absence adjustments).
The set of service collection objects that are exchanged between end-systems are:
- StudentAbsenceSummarySet - a set of base Student Absences;
- StudentAbsenceDetailsSet - a set of full Student Absences.
A StudentAbsenceSummary points to the related user (Student), the org (School) and the academicSession (Term). The StudentAbsenceDetails points to the related users (RegisteredByUsers and SignedByUsers) and academicSessions (Terms). A schematic representation of this set of relationships is shown in Figure 5.
The full data model is defined in [ORABS-SM-10].
An example of the payloads exchanged using the Absence Service is shown HERE.
Support for the new afterschool and childcare activities has been achieved by adding a new set of endpoints to the Rostering Service. Both afterschool and childcare Groups are defined as a type of 'org'. Therefore, NO new first class data model features have been defined. The new set of endpoints are defined in the Table below. Details of these new endpoints is given in [ORROS-NOR-BD-12]. The corresponding modified OpenAPI files are given in Appendix B1 and Appendix B2.
| Service Call | Description | REST Endpoint | HTTP Verb |
|---|---|---|---|
| getAllAfterSchools | To read, get, a collection of after-school activities i.e. all orgs of type 'after-school'. | /afterschools | GET |
| getAcademicSessionSetForAfterSchool | To read, get, the collection of academic sessions for specific after-school activity. | /afterschools/{afterschoolSourcedId}/academicSessions | GET |
| getAcademicSessionForAfterSchool | To read, get, the specific academic session for the specific after-school activity. | /afterschools/{afterschoolSourcedId}/academicsessions/{sourcedId} | GET |
| getClassSetForAfterSchool | To read, get, the collection of classes for specific after-school activity. | /afterschools/{afterschoolSourcedId}/classes | GET |
| getClassForAfterSchool | To read, get, the specific class for the specific after-school activity. | /afterschools/{afterschoolSourcedId}/classes/{classSourcedId} | GET |
| getStudentSetForClassInAfterSchool | To read, get, the collection of students for specific after-school activity and class. | /afterschools/{afterschoolSourcedId}/classes/{classSourcedId}/students | GET |
| getTeacherSetForClassInAfterSchool | To read, get, the collection of teachers for specific after-school activity and class. | /afterschools/{afterschoolSourcedId}/classes/{classSourcedId}/teachers | GET |
| getEnrollmentSetForAfterSchool | To read, get, the collection of enrollments for specific after-school activity. | /afterschools/{afterschoolSourcedId}/enrollments | GET |
| getEnrollmentForAfterSchool | To read, get, the specific enrollment for the specific after-school activity. | /afterschools/{afterschoolSourcedId}/enrollments/{sourcedId} | GET |
| getStudentSetForAfterSchool | To read, get, the collection of students for specific after-school activity. | /afterschools/{afterschoolSourcedId}/students | GET |
| getStudentForAfterSchool | To read, get, the specific student for the specific after-school activity. | /afterschools/{afterschoolSourcedId}/students/{sourcedId} | GET |
| getTeacherSetForAfterSchool | To read, get, the collection of teachers for specific after-school activity. | /afterschools/{afterschoolSourcedId}/teachers | GET |
| getTeacherForAfterSchool | To read, get, the specific teacher for the specific after-school activity. | /afterschools/{afterschoolSourcedId}/teachers/{sourcedId} | GET |
| getUserSetForAfterSchool | To read, get, the collection of users for specific after-school activity. | /afterschools/{afterschoolSourcedId}/users | GET |
| getUserForAfterSchool | To read, get, the specific user for the specific after-school activity. | /afterschools/{afterschoolSourcedId}/users/{sourcedId} | GET |
| getAfterSchool | To read, get, a specific after-school activity. | /afterschools/{sourcedId} | GET |
| getAllChildcares | To read, get, a collection of child care activities i.e. all orgs of type 'child care'. | /childcares | GET |
| getAcademicSessionSetForChildcare | To read, get, the collection of academic sessions for specific childcare activity. | /childcares/{childcareSourcedId}/academicsessions | GET |
| getAcademicSessionForChildcare | To read, get, the specific academic session for the specific childcare activity. | /childcares/{childcareSourcedId}/academicsessions/{sourcedId} | GET |
| getClassSetForChildcare | To read, get, the collection of classes for specific childcare activity. | /childcares/{childcareSourcedId}/classes | GET |
| getClassForChildcare | To read, get, the specific class for the specific childcare activity. | /childcares/{childcareSourcedId}/classes/{sourcedId} | GET |
| getStudentSetForClassInChildcare | To read, get, the collection of students for specific childcare activity and class. | childcares/{childcareSourcedId}/classes/{classSourcedId}/students | GET |
| getTeacherSetForClassInChildcare | To read, get, the collection of teachers for specific childcare activity and class. | /childcares/{childcareSourcedId}/classes/{classSourcedId}/teachers | GET |
| getEnrollmentSetForChildcare | To read, get, the collection of enrollments for specific childcare activity. | /childcares/{childcareSourcedId}/enrollments | GET |
| getEnrollmentForChildcare | To read, get, the specific enrollment for the specific childcare activity. | /childcares/{childcareSourcedId}/enrollments/{sourcedId} | GET |
| getStudentSetForChildcare | To read, get, the collection of students for specific childcare activity. | /childcares/{childcareSourcedId}/students | GET |
| getStudentForChildcare | To read, get, the specific student for the specific childcare activity. | /childcares/{childcareSourcedId}/students/{sourcedId} | GET |
| getTeacherSetForChildcare | To read, get, the collection of teachers for specific childcare activity. | /childcares/{childcareSourcedId}/teachers | GET |
| getTeacherForChildcare | To read, get, the specific teacher for the specific childcare activity. | /childcares/{childcareSourcedId}/teachers/{sourcedId} | GET |
| getUserSetForChildcare | To read, get, the collection of users for specific childcare activity. | /childcares/{childcareSourcedId}/users | GET |
| getUserForChildcare | To read, get, the specific user for the specific childcare activity. | /childcares/{childcareSourcedId}/users/{sourcedId} | GET |
| getChildcare | To read, get, a specific child care activity. | /childcares/{sourcedId} | GET |
Key points to note when using the AfterSchool and Childcare endpoints are:
- The
AfterSchoolandChildcarepayloads are anorgwith atypeofext:afterSchoolandext:childcarerespectively - Both
AfterSchoolandChildcareare a sub-type of school i.e."org.type" = "school"i.e. the set ofAfterSchoolandChildcareobjects will be returned in the payload for agetAllSchoolsendpoint and otherSchoolrelated endpoints - When enrolled on a
classat anAfterSchoolorChildcarethen"classType" = "homeroom"and the associatedCoursehas a property of"courseCode" = "Ghost Course".
An example of the payloads exchanged using the new afterschools and childcare endpoints are shown HERE.
In the Norwegian K-12 context, OneRoster Class and Course types MUST be interpreted as follows:
- Course
-
Norwegian:
Beskrivelse av en læreplan med gitte fagkoder og kompetansemål. For eksempel "Matematikk 1.-10. årstrinn (MAT01‑05)". -
English:
Description of a curriculum with given subject codes and competence goals. For example "Mathematics 1st-10th grade (MAT01‑05. - Class
-
Norwegian:
Et konkret tilfelle av en Course som beskriver hvilken fagkode og årstrinn en Class er knyttet til i en gitt Course (læreplan). For eksempel fagkoden Matematikk 2. årstrinn (MAT0002) og årstrinn 2. Til forskjell fra Course, har Class påmeldte lærere og elever. Samtidig kan Class si noe om tid og sted. I den norske profilen er det ikke alle typene av Class som har en tilknytning til en Course, og i disse tilfellene benyttes "Ghost Course" -
English:
A concrete instance of a Course that describes which subject code and grade level a Class is linked to in a given Course (curriculum). For example, the subject code Mathematics 2nd year (MAT0002) and grade level 2. Unlike Course, Class has enrolled teachers and students. At the same time, Class can say something about time and place. In the Norwegian profile, not all types of Class have a connection to a Course, and such courses are referred to as "Ghost Course"
OneRoster defines only two types of class i.e. "homeroom" and "scheduled". This is too limited and so this vocabulary has been extended.
Furthermore, Norwegian K-12 has Group-based activities which MUST be scheduled but are NOT aligned to a Course. Groups are represented using
the regular Class class of OneRoster. In OneRoster, all classes must have an associated Course. But not all groups
e.g. a parent planning committee, have a natural Course association. In these cases, a “ghost course” is created and associated with the given Class.
“Ghost Courses” are identified by the value of the courseCode property in the corresponding Course having a value of Ghost Course.
This means that at least one Ghost Course MUST be defined to support the definition of any number of Groups.
The extended vocabulary for the type of class/group is shown in the following Table. The details in the Table are:
| Term | Description (Norwegian) | Description (English) | Ghost Course |
|---|---|---|---|
| homeroom | Basisgruppe, klasse, SFO-model eller barnehageavdeling. Avhengig av organisasjonstypen. | The homeroom (form) assigned to the class. The equivalent to a base group, class, after-school model or child care department. Therefore, the context determines the type of organization. | Yes |
| scheduled | Undervisningsgruppe / faggruppe. | The class as assigned in the timetable. The equivalent to a teaching group. | No |
| ext:contactTeacherGroup | Gruppe for KontaktLærer. | A group for the Contact Teachers. | No |
| ext:grepGroup | En gruppe for forskjellige grep-oppføringer. Mulige verdier er: fagkoder, programområder, utdanningsprogram og årstrinn. | A group for different grep entries. Possible values are: fagkoder, programomraader, utdanningsprogram and aarstrinn. | Yes |
| ext:nationalTestsGroup | Gruppe for nasjonale prøver. | Group for national tests. | Yes |
| ext:specialEducation | Gruppe for elever med rett til spesialundervisning, i henhold til et enkeltvedtak. | Group for students with the right to special needs education, according to an individual administrative decision. | Yes |
An example of the payloads exchanged to support the definition of Groups is shown HERE.
In the scenario when a Grep Group is being defined, further information about the group MUST be supplied. This information is supplied in the metadata
extension property for the Class. This new extension property is 1edtech.grepGroups and the definition is:
| Property Name | Description | Data Type | Multiplicity |
|---|---|---|---|
| 1edtech.grepGroups | A set of Grep Group definitions. | GrepGroups | 0..* |
| Property Name | Description | Data Type | Multiplicity |
|---|---|---|---|
| grepType | The type of Grep Group | Enumeration: [ 'fagkoder', 'programomraader', 'utdanningsprogram', 'aarstrinn' ] | 1 (REQUIRED) |
| code | Identifier for the Grep Group. | NormalizedString | 1 (REQUIRED) |
| title | Human-readable title for the Group. | String | 1 (REQUIRED) |
| vocabName | The name of the source vocabulary. | Extensible Enumeration: [ 'GREP', 'VIGO', 'localCode', 'ext:*' ] | 0..1 (OPTIONAL) |
| uri | A URI to more information about this Grep Group, if existing. | URI | 0..1 (OPTIONAL) |
An example of the payloads exchanged to support the definition of Grep Groups is shown HERE.
The available set of roles for a user has been extended. Every user MUST have at least one assigned role. The set of roles available is listed in the Table below.
| Vocabulary Term | Norwegian Term | Description | Note |
|---|---|---|---|
| aide | Assistent i en organisasjon. | Someone who provides appropriate aid to the user but NOT also one of the other roles. | No change. |
| counselor | Sosiallærer, miljøterapeut i en organisasjon. | Someone who has care/pastoral supervision responsibility for one or more people | No change. |
| districtAdministrator | IKT-ansvarlig i en organisasjon. | The district administrator will have responsibility for systems within the district sites and/or for systems that are accessed by the schools in the district. | No change. |
| guardian | Foresatt som ikke er biologisk forelder. | Guardian of the user and NOT the Mother or Father i.e. parent. May also be a Relative. | This term is PROHIBITED. |
| parent | Biologiske foreldre. | Mother or father of the user | This term is PROHIBITED. |
| principal | Rektor eller annen person med lederansvar i en organisasjon. | The schools' Principal or other very senior academic administrator in the School. The principal will have access to confidential/private data about teachers, etc. | No change. |
| proctor | No equivalent term. | Exam proctor. May be used for enrollment. | This term is PROHIBITED. |
| relative | Slektning som ikke er biologisk forelder | A relative of the user and NOT the Mother or Father. May also be the Guardian. | This term is PROHIBITED. |
| siteAdministrator | IKT-ansvarlig på skolen | Site administrator in the organization e.g. School. The site administrator will have responsibility for all of the systems at the site. | No change. |
| student | Elev på en skole eller SFO, eller barn i barnehage. | A student at an organization e.g. School. May be used for enrollment. | No change. |
| systemAdministrator | IKT-ansvarlig for et system i en organisasjonsenhet. | System administrator in the organization e.g. School. The system administrator will have responsibility for one of more systems at the site. | No change. |
| teacher | Lærer i en organisasjon. | A Teacher at the organization e.g. School. May be used for enrollment. | No change. |
| ext:ownerRepresentative | Skoleeir | Indicates an individual who acts on behalf of the owner of the school. | A new role added in this profile. |
| ext:primaryGuardian | Person med foreldreansvar eller annet formalisert ansvar for barnet. | Person with parental responsibility or other formalized responsibility for the child. | A new role added in this profile. |
| ext:responsibleCaregiver | Person/er som kan være en midlertidig eller permanent støtte sammen med den/de med foreldreansvar. | Person who in a permanent or temporarily position can support the legal guardian(s.) | A new role added in this profile. |
| ext:staff | Annen ansatt ved en organisasjon, men rollen deres er ikke dekket av de allerede eksisterende rollene./td> | Indicates an individual who is an employee of the learning organization but their role is not covered by one of the other terms. | A new role added in this profile. |
The available set of roles for enrollment has been extended through the use of subroles. A role/subrole approach has been adopted. Every enrollment MUST have an assigned role. The set of roles for enrollment available is listed in the Table below.
| Vocabulary Term | Norwegian Term | Description | Note |
|---|---|---|---|
| administrator | IKT-ansvarlig | An administrator will have responsibility for systems within the district sites and/or for systems that are accessed by the schools in the district. | No change. |
| proctor | No equivalent term. | Exam proctor. | This term is PROHIBITED. |
| student | Elev | A student at an organization e.g. School. | No change. |
| teacher | Lærer | A Teacher at organization e.g. School. | No change. |
| ext:aide | Assistent i en organisasjon. | Someone who provides appropriate aid to the user but NOT also one of the other roles. | A new role added in this profile. |
| ext:contactTeacher | Kontaktlærer i en organisasjon. | Contact teacher responsible for a class or parts of a class, e.g 5A, 10C etc.. | A new role added in this profile. |
The vocabulary for the 'type' property is extensible. The new, full, vocabulary tokens are defined in the following Table.
| New Vocabulary Token | Norwegian Description | English Description | Note |
|---|---|---|---|
| department | Avdeling | A department may be a subset grouping in a school or a set of schools. | No change. |
| district | Distrikt | A school district. | No change. |
| local | N/A | Denotes some local grouping responsible for teaching and learning. | Use of this value is PROHIBITED. |
| national | N/A | A national level organization. | Use of this value is PROHIBITED. |
| school | Skole | The organization in which the K-12 teaching activity is delivered. | No change. When used, the associated subtype definition MUST be defined. |
| state | N/A | Denotes a state/regional level organization. | Use of this value is PROHIBITED. |
| ext:afterSchool | SFO. | Denotes an after school activity organization. | New term added in this Profile. |
| ext:childCare | Barnehage. | Denotes a child care activity organization. | New term added in this Profile. |
| ext:counsellingService | PPT. | Educational and Psychological Counselling Service. | New term added in this Profile. |
| ext:county | Fylkeskommune. | Denotes that the County is the owner of the school, child care or after school. | New term added in this Profile. |
| ext:municipality | Kommune. | Denotes that the Municipality is the owner of the school, child care or after school. | New term added in this Profile. |
| ext:privateOwner | Organisasjonen som er eier av en skole,barnehage eller SFO. | The organization that is the private owner of a school, child care or after school. | New term added in this Profile. |
The set of subtypes that are available when the type of 'school' has been assigned as the main type of organization is listed in the Table below.
| New Vocabulary Token | Norwegian Description | English Description | Note |
|---|---|---|---|
| adultEducation | Voksenopplæring | Education of adults. | New term added in this Profile. This term extends the range of the types of school. |
| homeEducation | Hjemmeundervisning. | The teaching of children at home. | New term added in this Profile. This term extends the range of the types of school. |
| kindergarten | Barnehage. | Primary school for grade level 1. | New term added in this Profile. This term extends the range of the types of school. |
| vocationalSchool | Fagskole. | Education in an upper secondary school followed by two years of apprenticeship training and productive work in a training enterprise or public institution. | New term added in this Profile. This term extends the range of the types of school. |
| primarySchool | Barneskole (1.-7. trinn). | Primary school for grade levels 1-7. | New term added in this Profile. This term extends the range of the types of school. |
| primaryAndLowerSecondarySchool | Skole som er kombinert både barne- og ungdomsskole (1.-10. årstrinn). | School combined of both primary and lower secondary (grade levels 1-10). | New term added in this Profile. This term extends the range of the types of school. |
| lowerSecondarySchool | Ungdomsskole (8.-10. trinn). | Lower secondary school for grade levels 8-10. | New term added in this Profile. This term extends the range of the types of school. |
| upperSecondarySchool | Videregående skole (vg1, vg2, vg3, vg4 og påbygg). | Upper secondary school for grade levels 11-13 (14). | New term added in this Profile. This term extends the range of the types of school. |
| lowerSecondaryAndUpperSecondarySchool | Ungdomsskole (8.-10. trinn). Videregående skole (vg1, vg2, vg3, vg4 og påbygg). | Lower secondary school for grade levels 8-10 and Upper secondary school for grades levels 11-13 (14). | New term added in this Profile. This term extends the range of the types of school. |
An example of using the combined type/subtype approach is available HERE.
The OPTIONAL property '1edtech.language' has been added to the Metadata Extension class. The value space for this property is defined in [BCP47].
An example of using this property is given in HERE.
In the 'Demographics' class this profile permits the use of ONLY the following properties:
- 'sourcedId'
- 'status'
- 'dataLastModified'
- 'metadata'
- 'sex'
- 'birthDate'
Therefore, use of the following properties is PROHIBITED:
- 'americanIndianOrAlaskaNative'
- 'asian'
- 'blackOrAfricanAmerican'
- 'nativeHawaiianOrOtherPacificIslander'
- 'white'
- 'demographicRaceTwoOrMoreRaces'
- 'hispanicOrLatinoEthnicity'
- 'countryOfBirthCode'
- 'stateOfBirthAbbreviation'
- 'cityOfBirth'
- 'publicSchoolResidenceStatus'
The existing OneRoster 1.2 subjectCodes property, available as optional on Course and Class, is deprecated in this profile. This means that it
remains available for use to achieve backwards compatibility, but that the new metadata 1edtech.subjectCodes property is the preferred mechanism
for relaying subject code information. The definition of this property is:
| Property Name | Description | Data Type | Multiplicity |
|---|---|---|---|
| 1edtech.subjectCodes | A set of subject codes. | SubjectCode | 0..* |
| Property Name | Description | Data Type | Multiplicity |
|---|---|---|---|
| code | The subject code | NormalizedString | 1 (REQUIRED) |
| title | Human-readable title of the subject. | String | 1 (REQUIRED) |
| vocabName | The name of the source vocabulary. | Extensible Enumeration: [ 'GREP', 'VIGO', 'localCode', 'ext:*' ] | 0..1 (OPTIONAL) |
| uri | A URI to more information about this subject code, if existing. | URI | 0..1 (OPTIONAL) |
In the Norwegian profile, subjectCodes are relevant only when they occur with a classType with one of the following values:
scheduledbasicLangTrainingGroup
An example of using this property is given in HERE.
In the 'User' class the properties 'identifier' and 'password' have been deprecated i.e. they were included for backwards compatibility to OneRoster 1.1. Therefore, for this profile, the use of these properties is PROHIBITED.
The userIds property in the User class has a child property of type which is used to identify the type of identifier being
supplied. In the base OneRoster 1.2 specification the type property has a data-type of String. In this profile this property is changed to an
enumerated vocabulary. This vocabulary is defined in the following Table.
| Vocabulary Term | Norwegian Description | English Description |
|---|---|---|
| feideID | Feidebruker identifikator. Tilsvarer verdien eduPersonPrincipalName i feidedokumentasjonen | Feide-user ID. Corresponds to the value eduPersonPrincipalName in the Feide-documentation |
| UPN | Brukernavn. | Username in systems such as Office 365, Azure AD, etc. |
| personFIN | personidentifikator fra VIGO. | ID given from VIGO. |
| personLIN | lokalt gitt ID-nummer. | Locally given ID-number. |
| personNIN | Fødselsnummer, D-nummer eller DUF-nummer. | Identity numbers issued by authorities. For example: Social security number, D-number, DUF-number, etc. |
| personNINencrypted | personNIN kryptert slik at avsender kan dekryptere innholdet til en personNIN (Kryperingsmetode avtales mellom avsender og mottaker utenfor overføringen). | personNIN encrypted so that the sender can decrypt the content of personNIN (Encryption method agreed between sender and recipient outside the transmission). |
| sisID | systemidentifikator i SAS/SIS (IPOS/OID). | SystemID in SAS/SIS (IPOS/OID). |
| studentID | Elevnummer. | Student ID. |
| username | Brukernavn. | Username. |
| workforceID | Ansattnummer. | Workforce ID. |
An example of using this property is given in HERE.
In the 'Org' class the 'identifier' property has a data-type of 'String'. For this profile the value space for that string MUST be a valid "organisasjonsnummer" i.e. the legal organization number. The register for these numbers is available at: https://www.brreg.no.
Use of this number is a best practice requirement. However, real-time validation of this number is not an operational or certification requirement.
An example of using this property is given in HERE.
Two new properties are defined in the extension for the Org Class when the description is for a School. In both cases these new properties are OPTIONAL with a data-type of 'NormalizedString'. The formal definition of these new properties is:
| Property Name | Description | Data Type | Multiplicity |
|---|---|---|---|
| 1edtech.schoolVIGOID | The VIGO identifier assigned to the school. | NormalizedString | 0..1 |
| 1edtech.schoolPASCode | The PAS code assigned to the school. | NormalizedString | 0..1 |
An example of using these two new properties is given in HERE.
The 'grades' property in the Class, Course and User objects has a data-type of NormalizedString with a multiplicity of [ 0..* ].
The definition recommends that the appropriate local vocabulary is used. For this profile the vocabulary that SHOULD be used
is defined in the JSON-encoded Vocabulary (if the preferred vocabulary
is unsuitable then an abbreviated form MAY be used). The specific values are supplied as the uri properties in the JSON file
e.g. "uri" : "http://psi.udir.no/kl06/aarstrinn1", etc.
Sometimes a students grade level and the grade level of the class they are enrolled on are different. The model supports this
requirement through the use of grades vocabularies on different entities, e.g. a student may have user.grade set as http://psi.udir.no/kl06/aarstrinn1
while the grade of a class they are enrolled in might be set as https://data.udir.no/kl06/v201906/aarstrinn/aarstrinn2.
This scenario can be interpreted as the student is a 1st grade student enrolled in a 2nd grade class.
An example of using this property is given in HERE.
The content in the payloads being exchanged MAY contain fictional data. The specification does not provide a mechanism to identify the data which is 'real' or 'fictional'. The 1EdTech Privacy Framework [PRIVACY-10] and the privacy sensitivity annotations in the OneRoster 1.2 Rostering Service [ORROS-SM-12] and accompanying REST/JSON Binding [ORROS-BD-12] describe how to identify and sensitive data.
All of the relevant recommendations in the OneRoster Implementation Guide [OR-IG-12] SHOULD be followed.
An example payload for the request 'getAllDetailAbsences()' is shown below.
001 {
002 "absences" : [
003 {
004 "sourcedId" : "5d70fb2a-6bdf-4281-85a8-4adb2bf9f17d-a7c9c25e-c959-443f-a497-192587ff811a-673",
005 "status" : "active"",
006 "dateLastModified" : "2022-01-14T11:37:13.166Z",
007 "metadata" : {
008 "..permitted extension point.." : "..user defined value.."
009 },
010 "totalDaysAbsent" : 0,
011 "totalMinutesAbsent" : 0,
012 "deductedDaysAbsent" : 0,
013 "deductedMinutesAbsent" : 0,
014 "adjustedDaysAbsent" : 0,
015 "adjustedMinutesAbsent" : 0,
016 "accumulatedDaysAbsent" : 0,
017 "accumulatedMinutesAbsent" : 0,
018 "user" : {
019 "href" : "href" : "http://localhost:4004/api/cadf58be-8a62-49f0-9722-638748f8449f/ims/oneroster/v1p1/users/a7c9c25e-c959-443f-a497-192587ff811a",
020 "sourcedId" : "a7c9c25e-c959-443f-a497-192587ff811a",
021 "type" : "user"
022 },
023 "school" : {
024 "href" : "http://localhost:4004/api/cadf58be-8a62-49f0-9722-638748f8449f/ims/oneroster/v1p1/schools/5d70fb2a-6bdf-4281-85a8-4adb2bf9f17d",
025 "sourcedId" : "5d70fb2a-6bdf-4281-85a8-4adb2bf9f17d",
026 "type" : "org"
027 },
028 "term" : {
029 "href" : "http://localhost:4004/api/cadf58be-8a62-49f0-9722-638748f8449f/ims/oneroster/v1p1/academicSessions/673?filter=type='term'",
030 "sourcedId" : "673",
031 "type" : "academicSession"
032 },
033 "absenceDetailsSet" : [
034 {
035 "identifier" : "..String..",
036 "fromTime" : "..Date/Time..",
037 "toTime" : "..Date/Time..",
038 "absenceDurationUnit" : "DAYS"|"MINUTES",
039 "absenceDurationValue" : ..Number(NonNegativeInteger)..,
040 "registeredInfo" : {
041 "comment" : "..String..",
042 "time" : "..Date/Time..",
043 "byUserId" : {
044 "href" : "..URI..",
045 "sourcedId" : "..String..",
046 "type" : "user"
047 }
048 },
049 "absenceClassification" : "..select from Union..",
050 "signingInfo" : {
051 "comment" : "..String..",
052 "time" : "..Date/Time..",
053 "byUserId" : {
054 "href" : "..URI..",
055 "sourcedId" : "..String..",
056 "type" : "user"
057 }
058 },
059 "sessionsAffected" : [ "..String..", ..., "..String.." ],
060 "classesAffected" : [ "..String..", ..., "..String.." ]
061 },
062 {...absences 1/absenceDetailsSet 2...},
063 {...absences 1/absenceDetailsSet 3...}
064 ],
065 "absenceAdjustmentSet" : [
066 {
067 "identifier" : "..String..",
068 "registeredInfo" : {
069 "comment" : "..String..",
070 "time" : "..Date/Time..",
071 "byUserId" : {
072 "href" : "..URI..",
073 "sourcedId" : "..String..",
074 "type" : "user"
075 }
076 },
077 "days" : ..Number(Integer)..,
078 "minutes" : ..Number(Integer)..,
079 "term" : {
080 "href" : "..URI..",
081 "sourcedId" : "..String..",
082 "type" : "academicSession"
083 }
084 },
085 {...absences 1/absenceAdjustmentSet 2...},
086 {...absences 1/absenceAdjustmentSet 3...}
087 ]
088 },
089 {
090 "sourcedId" : "...absences 2...",
091 "status" : "active"|"tobedeleted",
092 "dateLastModified" : "..Date/Time..",
093 "metadata" : {
094 "..permitted extension point.." : "..user defined value.."
095 },
096 "totalDaysAbsent" : ..Number(NonNegativeInteger)..,
097 "totalMinutesAbsent" : ..Number(NonNegativeInteger)..,
098 "deductedDaysAbsent" : ..Number(NonNegativeInteger)..,
099 "deductedMinutesAbsent" : ..Number(NonNegativeInteger)..,
100 "adjustedDaysAbsent" : ..Number(NonNegativeInteger)..,
101 "adjustedMinutesAbsent" : ..Number(NonNegativeInteger)..,
102 "accumulatedDaysAbsent" : ..Number(NonNegativeInteger)..,
103 "accumulatedMinutesAbsent" : ..Number(NonNegativeInteger)..,
104 "user" : {
105 "href" : "..URI..",
106 "sourcedId" : "..String..",
107 "type" : "user"
108 },
109 "school" : {
110 "href" : "..URI..",
111 "sourcedId" : "..String..",
112 "type" : "org"
113 },
114 "term" : {
115 "href" : "..URI..",
116 "sourcedId" : "..String..",
117 "type" : "academicSession"
118 },
119 "absenceDetailsSet" : [
120 {
121 "identifier" : "..String..",
122 "fromTime" : "..Date/Time..",
123 "toTime" : "..Date/Time..",
124 "absenceDurationUnit" : "DAYS"|"MINUTES",
125 "absenceDurationValue" : ..Number(NonNegativeInteger)..,
126 "registeredInfo" : {
127 "comment" : "..String..",
128 "time" : "..Date/Time..",
129 "byUserId" : {
130 "href" : "..URI..",
131 "sourcedId" : "..String..",
132 "type" : "user"
133 }
134 },
135 "absenceClassification" : "..select from Union..",
136 "signingInfo" : {
137 "comment" : "..String..",
138 "time" : "..Date/Time..",
139 "byUserId" : {
140 "href" : "..URI..",
141 "sourcedId" : "..String..",
142 "type" : "user"
143 }
144 },
145 "sessionsAffected" : [ "..String..", ..., "..String.." ],
146 "classesAffected" : [ "..String..", ..., "..String.." ]
147 },
148 {...absences 2/absenceDetailsSet 2...},
149 {...absences 2/absenceDetailsSet 2...}
150 ],
151 "absenceAdjustmentSet" : [
152 {
153 "identifier" : "..String..",
154 "registeredInfo" : {
155 "comment" : "..String..",
156 "time" : "..Date/Time..",
157 "byUserId" : {
158 "href" : "..URI..",
159 "sourcedId" : "..String..",
160 "type" : "user"
161 }
162 },
163 "days" : ..Number(Integer)..,
164 "minutes" : ..Number(Integer)..,
165 "term" : {
166 "href" : "..URI..",
167 "sourcedId" : "..String..",
168 "type" : "academicSession"
169 }
170 },
171 {...absences 2/absenceAdjustmentSet 2...},
172 {...absences 2/absenceAdjustmentSet 2...}
173 ]
174 },
175 {...absences 3...}
176 ]
177 }
In the example above there are 2 absence structures i.e. lines (003-088) and (089-174). Each absence contains an
absenceDetailsSet and absenceAdjustmentSet properties.
An example payload for the request 'getSummaryAbsence()' is shown below.
001 {
002 "absence" :
003 {
004 "sourcedId" : "5d70fb2a-6bdf-4281-85a8-4adb2bf9f17d-a7c9c25e-c959-443f-a497-192587ff811a-673",
005 "status" : "active"",
006 "dateLastModified" : "2022-01-14T11:37:13.166Z",
007 "metadata" : {
008 "..permitted extension point.." : "..user defined value.."
009 },
010 "totalDaysAbsent" : 0,
011 "totalMinutesAbsent" : 0,
012 "deductedDaysAbsent" : 0,
013 "deductedMinutesAbsent" : 0,
014 "adjustedDaysAbsent" : 0,
015 "adjustedMinutesAbsent" : 0,
016 "accumulatedDaysAbsent" : 0,
017 "accumulatedMinutesAbsent" : 0,
018 "user" : {
019 "href" : "href" : "http://localhost:4004/api/cadf58be-8a62-49f0-9722-638748f8449f/ims/oneroster/v1p1/users/a7c9c25e-c959-443f-a497-192587ff811a",
020 "sourcedId" : "a7c9c25e-c959-443f-a497-192587ff811a",
021 "type" : "user"
022 },
023 "school" : {
024 "href" : "http://localhost:4004/api/cadf58be-8a62-49f0-9722-638748f8449f/ims/oneroster/v1p1/schools/5d70fb2a-6bdf-4281-85a8-4adb2bf9f17d",
025 "sourcedId" : "5d70fb2a-6bdf-4281-85a8-4adb2bf9f17d",
026 "type" : "org"
027 },
028 "term" : {
029 "href" : "http://localhost:4004/api/cadf58be-8a62-49f0-9722-638748f8449f/ims/oneroster/v1p1/academicSessions/673?filter=type='term'",
030 "sourcedId" : "673",
031 "type" : "academicSession"
032 },
033 }
034 }
In the example above the absence structure is presented in lines (003-033).
The absence data is supplied in the context of a Term. It is the consumers responsibility to analyse and collate this information to establish the absence information for a school year.
New endpoints have been added to support the management of access to information about AfterSchool and Childcare activities. An example of the payload in response to a 'getAfterSchool()' request (/afterschools/AFTERSCHOOL_001) is shown below.
001 {
002 "org" : {
003 "sourcedId" : "AFTERSCHOOL_001",
004 "status" : "active",
005 "dateLastModified" : "20230505T00:00:00.000Z",
006 "name" : "AFTER SCHOOL SPECIAL",
007 "type" : "ext:afterSchool",
008 "identifier" : "928619516",
009 "parent" : {
010 "href" : "...URI...",
011 "sourcedId" : "AFTERSCHOOL_ORG_1001",
012 "type" : "org"
013 }
014 }
015 }
An example of the payload in response to a 'getChildcare()' request (/afterschools/CHILDCARE_001) is shown below.
001 {
002 "org" : {
003 "sourcedId" : "CHILDCARE_001",
004 "status" : "active",
005 "dateLastModified" : "20230505T00:00:00.000Z",
006 "name" : "Child Care Education",
007 "type" : "ext:childCare",
008 "identifier" : "984636539",
009 "parent" : {
010 "href" : "...URI...",
011 "sourcedId" : "CHILDCARE_ORG_1001",
012 "type" : "org"
013 }
014 }
015 }
Support for the definition of groups has been added in this Profile (this requires the use of 'Ghost Course'). An example of the definition of a 'Group' and the equivalent definition of the referenced 'Course' is shown below.
001 {
002 "class": {
003 "sourcedId": "CLASS_01",
004 "status": "active",
005 "dateLastModified": "20230105T00:00:00.000Z",
006 "title" : "Algebra",
007 "classType": "ext:specialEducation",
008 "course" : {
009 "href" : "...URI...",
010 "sourcedId" : "COURSE_101",
011 "type" : "course"
012 },
013 "school" : {
014 "href" : "...URI...",
015 "sourcedId" : "ORG_01",
016 "type" : "org"
017 }
018 }
019 }
The definition of the Group (a type of Class) is shown in the payload above. The type of class is shown in line (007). The corresponding Course link is shown in lines (008-012). The payload for the corresponding Course is shown below.
001 {
002 "course": {
003 "sourcedId": "COURSE_101",
004 "status": "active",
005 "dateLastModified": "20230105T00:00:00.000Z",
006 "title" : "Introduction to Science",
007 "schoolYear" : {
008 "href" : "..URI..",
009 "sourcedId" : "ACADEMICSESSION_01",
010 "type" : "academicSession"
011 },
012 "courseCode" : "Ghost Course"
013 }
014 }
The Course is identified by its sourcedId in line (003). The identification of this as a Course for a Group is denoted by the
assignment of the value Ghost Course for the property courseCode in line (012).
Support for the definition of Grep groups has been added in this Profile (this requires the use of 'Ghost Course'). An example of the definition of a 'Grep Group' and the equivalent definition of the referenced 'Course' is shown below.
001 {
002 "class": {
003 "sourcedId": "CLASS_01",
004 "status": "active",
005 "dateLastModified": "20230105T00:00:00.000Z",
006 "title" : "Algebra",
007 "classType": "ext:grepGroup",
008 "course" : {
009 "href" : "...URI...",
010 "sourcedId" : "COURSE_101",
011 "type" : "course"
012 },
013 "school" : {
014 "href" : "...URI...",
015 "sourcedId" : "ORG_01",
016 "type" : "org"
017 }
018 "metadata" : {
019 "1edtech.grepGroups" : [
020 {
021 "1edtech.grepType" : "aarstrinn",
022 "1edtech.code" : "aarstrinn9",
023 "1edtech.description" : "Niende årstrinn",
024 "1edtech.vocabName" : "GREP",
025 "1edtech.uri" : "http://psi.udir.no/kl06/aarstrinn8"
026 }
027 ]
028 }
030 }
031 }
The definition of the Grep Group is shown in the payload above. The type of class is shown in line (007). The corresponding Course
link is shown in lines (008-012). The data about the Grep Group is shown in the metadata property in lines (018-028).
The payload for the corresponding Course is shown below.
001 {
002 "course": {
003 "sourcedId": "COURSE_101",
004 "status": "active",
005 "dateLastModified": "20230105T00:00:00.000Z",
006 "title" : "Introduction to Science",
007 "schoolYear" : {
008 "href" : "..URI..",
009 "sourcedId" : "ACADEMICSESSION_01",
010 "type" : "academicSession"
011 },
012 "courseCode" : "Ghost Course"
013 }
014 }
The Course is identified by its sourcedId in line (003). The identification of this as a Course for a Group is denoted by the
assignment of the value Ghost Course for the property courseCode in line (012).
Support for the assignment of subtypes for an Org of type school has been added. An example of using the type/subtype approach in the 'Org' class is shown below.
001 {
002 "org" : {
003 "sourcedId" : "ORG_02",
004 "status" : "active",
005 "dateLastModified" : "20230605T00:00:00.000Z",
006 "metadata" : {
007 "1edtech.schoolType" : "upperSecondarySchool"
009 }
010 "name" : "Elvebakken videregående skole",
011 "type" : "school",
012 "identifier" : "111 222 333"
013 }
014 }
The key relationship is that the org is of type school (line 011) with a subtype of upperSecondarySchool defined in the
extension metadata in lines (006-009).
A new structure to enable identification of the subject codes assigned to a Class and/or Course has been added.
An example of the use of the 1edtech.subjectCodes property in the metadata extension for either a class or course is shown below.
001 {
002 "metadata" : {
003 "1edtech.subjectCodes" : [
004 {
005 "1edtech.code": "MAT0004",
006 "1edtech.description": "Matematikk 4. årstrinn",
007 "1edtech.vocabName": "GREP",
008 "1edtech.uri": "http://psi.udir.no/kl06/MAT0004"
009 },
010 {
011 "1edtech.code": "AENG101",
012 "1edtech.description": "Engelsk skriftlig, forb min.spr",
013 "1edtech.vocabName": "VIGO"
014 }
015 ]
016 }
017 }
An example of the use of the language extension in an 'class' JSON payload is shown below. In the example the 1edtech.language property has been entered
under the metadata property and given a value of 'es-ES' as per line(007).
001 {
002 "class" : {
003 "sourcedId" : "CLASS_01",
004 "status" : "active",
005 "dateLastModified" : "20200505T00:00:00.000Z",
006 "metadata" : {
007 "1edtech.language" : "es-ES"
008 },
009 "title" : "Literatura Española",
010 "subjects" : [ "Miguel de Cervantes","Federico García Lorca","Rosalía de Castro" ],
011 "course" : {
012 "href" : "...URI...",
013 "sourcedId" : "COURSE_01",
014 "type" : "course"
015 },
016 "school" : {
017 "href" : "...URI...",
018 "sourcedId" : "ORG_01",
019 "type" : "org"
020 }
021 }
022 }
An extensible enumerated vocabulary for the supported types of userId has been created. An example of the
use of the new vocabulary for the user.userIds.type property is shown below.
001 {
002 "user" : {
003 "sourcedId" : "USER_01",
004 "status" : "active",
005 "dateLastModified" : "20230105T00:00:00.000Z",
006 "givenName" : "Bruce",
007 "familyName" : "Wayne",
008 "userIds" : [
009 { "type" : "feideID",
010 "identifier" : "brucewayne@skotthyllkommune.no"
011 },
012 { "type" : "username",
013 "identifier" : "brucewayne"
014 }
015 ],
016 "roles" : [...],
017 }
018 }
Examples of the use of this new user.userIds.type vocabulary is shown lines (009) and (013).
For this profile the value space for the identifier for an Org MUST be a valid "organisasjonsnummer" i.e. the legal organization number. An example of using the identifier property in the 'Org' class is shown below.
001 {
002 "org" : {
003 "sourcedId" : "ORG_01",
004 "status" : "active",
005 "dateLastModified" : "20230505T00:00:00.000Z",
006 "name" : "Halden",
007 "type" : "ext:municipality",
008 "identifier" : "959 159 092"
009 }
010 }
The key relationship is that the org is of type (line 007) ext:municipality with a name (line 006) of Halden and the formal identifier (line 008) of 3001.
During the development of this Profile there was discussion on whether or not to support the alternative registration authorities e.g. [ISO6523].
It was agreed that if other registries are to be used then a metadata extension field will be used to identify the new authority. An example is shown below:
001 {
002 "org" : {
003 "sourcedId" : "ORG_01",
004 "status" : "active",
005 "dateLastModified" : "20230505T00:00:00.000Z",
006 "metadata" : {
007 "1edtech.idAuthority" : "iso6523-actorid-upis"
008 }
009 "name" : "Halden",
010 "type" : "ext:municipality",
011 "identifier" : "0192:991825827"
012 }
013 }
The extension field 1edtech.idAuthority is added (lines 006-008) to indicate that the authority for the registry is [ISO6523].
An example of the new school identifier and code are contained within the metadata extension attribute.
001 {
002 "org" : {
003 "sourcedId" : "ORG_02",
004 "status" : "active",
005 "dateLastModified" : "20230605T00:00:00.000Z",
006 "metadata" : {
007 "1edtech.schoolVIGOID" : "...example VIGO identifier...",
008 "1edtech.schoolPASCode" : "...example PAS Code..."
009 }
010 "name" : "Elvebakken videregående skole",
011 "type" : "school",
012 "identifier" : "111 222 333"
013 }
014 }
The VIGO identifier and PAS code are shown in lines (007-008) respectively.
For this profile the vocabulary for the grades attribute MUST be defined as a JSON-encoded Vocabulary (URI). An example of using the new vocabulary is shown below.
001 {
002 "course" : {
003 "sourcedId" : "COURSE_02",
004 "status" : "active",
005 "dateLastModified" : "20230505T00:00:00.000Z",
006 "title" : "Norwegian",
007 "schoolYear" : {
008 "href" : "..URI..",
009 "sourcedId" : "ACADEMICSESSION_01",
010 "type" : "academicSession"
011 },
012 "courseCode" : "NORWEGIAN01",
013 "grades" : ["http://psi.udir.no/laereplan/aarstrinn/aarstrinn8",
014 "http://psi.udir.no/laereplan/aarstrinn/aarstrinn9"]
014 }
015 }
The value for the grades attribute is shown in lines (013-014).
There are some situations where proprietary information is required about the role for a user. The Role class does not
support extensions. The recommended practice for adding such new information is to use the associated userProfile.credentials property.
An example of this approach is shown below.
001 {
002 "user" : {
003 "sourcedId" : "USER_01",
004 "status" : "active",
005 "dateLastModified" : "20230105T00:00:00.000Z",
006 "givenName" : "Bruce",
007 "familyName" : "Wayne",
008 "userIds" : [
009 { "type" : "feideID",
010 "identifier" : "brucewayne@skotthyllkommune.no"
011 },
012 { "type" : "username",
013 "identifier" : "brucewayne"
014 }
015 ],
016 "roles" : [
017 {
018 "roleType" : "primary",
019 "role" : "student",
020 "org" : {
021 "href" : "..URI..",
022 "sourcedId" : "ORGID01",
023 "type" : "org"
024 },
025 "userProfile" : "WayneProfile01",
026 }
027 ],
028 "userProfiles" : [
029 {
030 "profileId" : "WayneProfile01",
031 "profileType" : "RoleExtension",
032 "vendorId" : "SYSTEM01",
033 "credentials" : [
034 {
035 "type" : "rolextension",
036 "username" : "brucewayne",
037 "1edtech.role.ext1" : "..user defined value..",
038 "1edtech.role.ext2" : "..user defined value..",
039 },
040 ]
041 }
042 ]
043 }
044 }
The new role data is shown in lines (037-038). The link to this information and the associated role is through the profileId (line 030) and the reference
to it using the userProfile property in line (025) for the role defined in lines (017-026).
There are some cases when a student may be attending more than one school. For example, a student may move schools during the academic year (this may include moving between schools in different municipalities). Another example is when a student may attend classes for a particular subject in a school different to that which they attend for most of their classes. Therefore, collection of the total absences by a student must be obtained across multiple schools. There are two types of endpoint in Absence Service:
- Endpoints that read all of the collections e.g. ‘getAllSummaryAbsences’ and so information for a student is determined by the set of schools supported by the Service Provider
- Endpoints that read information specific to a single school e.g. getSummaryAbsenceSetForSchool’ and so information for a student is only with respect to the identified school.
The data models for the absence service provide information for a specific student, at a specific school for a specific term. To cover the scenario of when a student attends more than one school, an application that needs to obtain the full set of absences for a student MUST use one of the following approaches:
- When using the endpoints for reading a full collection the application MUST search all known Service Providers and correlate the data for a specific student. This requires each Service Provider to use a common set of ‘sourcedIds’ for the students. Each Service Provider will be responsible for its own set of Schools i.e. the set of supported schools will depend on the teaching and learning deployment coverage. The consuming application is responsible for the correct correlation of data for each student
- When using the single school specific endpoints the application MUST search all of the known schools for information about the specific student. This can be achieved by either issuing a ‘getDetailAbsenceSetForStudentInSchool’ for each school or by issuing the ‘getDetailAbsenceSetForSchool’ for each school and searching the data for specific students. For complete coverage, the consuming application MUST interrogate all of the known Service Providers.
The key point is that it is the responsibility of the consuming application to search the relevant set of Service Providers. Awareness of such a scenario may be supplied to the application using information exchange not covered by the OneRoster specification or by the application undertaking an awareness process that uses a combination of the two approaches described above.
The Norwegian OneRoster 1.2 REST API Conformance program provides conformance testing for:
- Systems that act as OneRoster Service Providers – these are, primarily, systems that store OneRoster data and MUST enable that data to be returned to requests from a consumer;
- Systems that act as OneRoster Service Consumers – these are, primarily, systems that enable a OneRoster repository to be accessed and MUST enable requests to be made by the consumer.
For conformance the endpoint functionality is split into five classifications:
- Rostering endpoints – the endpoints that handle rostering information, in particular, data about people, classes, courses, and enrollments;
- Gradebooks endpoints – the endpoints that handle gradebooks information, in particular, data about results, lineItems and categories;
- Assessment Results endpoints – the endpoints that handle detailed information about results, in particular, data about results, lineItems and categories;
- Resources endpoints – the endpoints that handle information about OneRoster resources;
- Absences endpoints – the endpoints that handle information about student absence from school attendance.
For the REST binding ALL systems MUST support at LEAST one of the 'Rostering', 'Resources', 'Gradebooks', 'Assessment Results' and 'Absences' set of endpoints.
The process for conformance testing implementations of OneRoster includes the following:
- Go to the 1EdTech Conformance Test Suites for REST API testing. Conformance Test Suite links are available in the 1EdTech LIS Alliance and the relevant link details are given later in this section of this document;
- Follow the onscreen instructions to run the tests;
- Once the test has been successfully run, submit a print out of the test
results along with the following information to conformance@1edtech.org:
- Your Name
- Your Organization
- Your Product Name and Version
- Date the Product was tested
- Whether you are a Service Provider or a Service Consumer
- The set of operational modes that are supported - all systems must support at least one core service ('Rostering', 'Resources', 'Gradebook', 'Assessment Results' and/or 'Absences').
All Tests for the appropriate operational modes must be passed successfully to be considered 1EdTech compliant.
All of the relevant REST API Tests must be passed successfully to be considered 1EdTech OneRoster compliant. In the Norwegian Profile there are five core functional modes:
- Rostering - the enrolment of people in classes (several new endpoints added as part of the Norwegian Profile);
- Resources - the association of teaching/learning resources with courses/classes;
- Gradebooks - the scores/grades for a learner who has completed some assessment of their learning activity on a class/course;
- Assessment Results - the detailed scores/grades for a learner who has completed some assessment of their learning activity;
- Absences - reporting of student absence from school attendance (added as part of the Norwegian Profile)
For the REST binding ALL systems MUST support at LEAST one of the 'Rostering', 'Resources', 'Gradebooks', 'Assessment Results' and 'Absences' modes.
After you have submitted your successful conformance information to conformance@1edtech.org, and received confirmation and a registration number from 1EdTech you may then apply the appropriate conformance mark. The 1EdTech conformance chart will list your conformance details. If you have any questions, please feel free to contact us at any point.
Membership in the OneRoster/Learning Information Services Alliance is the only way to achieve official conformance to the OneRoster standard. Products without a 1EdTech Conformance Registration Number are not considered to be compliant by 1EdTech.
In the tabular summaries of the endpoint requirements the following should be noted:
- For a OneRoster 1.2 Rostering implementation the 'Endpoint' string should be appended to the string '/ims/oneroster/roster/v1p2';
- For a OneRoster 1.2 Resource implementation the 'Endpoint' string should be appended to the string '/ims/oneroster/resource/v1p2';
- For a OneRoster 1.2 Gradebook implementation the 'Endpoint' string should be appended to the string '/ims/oneroster/gradebook/v1p2';
- For a OneRoster 1.2 Assessment Result implementation the 'Endpoint' string should be appended to the string '/ims/oneroster/gradebook/v1p2';
- For a OneRoster Absences 1.0 implementation the 'Endpoint' string should be appended to the string '/ims/oneroster/absences/v1p0';
- The 'Mode' is used denote whether the system is responsible for issuing the request (Init) or responding to the request (Resp).
For service provider rostering conformance the endpoints listed in following Table MUST be supported.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| getAllAcademicSessions | /academicSessions | GET | Resp |
| getAcademicSession | /academicSessions/{id} | GET | Resp |
| getAllClasses | /classes | GET | Resp |
| getClass | /classes/{id} | GET | Resp |
| getAllCourses | /courses | GET | Resp |
| getCourse | /courses/{id} | GET | Resp |
| getAllEnrollments | /enrollments | GET | Resp |
| getEnrollment | /enrollments/{id} | GET | Resp |
| getAllGradingPeriods | /gradingPeriods | GET | Resp |
| getGradingPeriod | /gradingPeriods/{id} | GET | Resp |
| getAllOrgs | /orgs | GET | Resp |
| getOrg | /orgs/{id} | GET | Resp |
| getAllSchools | /schools | GET | Resp |
| getSchool | /schools/{id} | GET | Resp |
| getAllStudents | /students | GET | Resp |
| getStudent | /students/{id} | GET | Resp |
| getAllTeachers | /teachers | GET | Resp |
| getTeacher | /teachers/{id} | GET | Resp |
| getAllTerms | /terms | GET | Resp |
| getTerm | /terms/{id} | GET | Resp |
| getAllUsers | /users | GET | Resp |
| getUser | /users/{id} | GET | Resp |
Support for ANY of the other endpoints and service modes is OPTIONAL. For 'GET' requests a service provider must supply all of the required data fields for the action and may supply any of the optional data fields.
Note that the none of the newly added AfterSchool and Childcare endpoints are listed in the above Table i.e. support of those endpoints is OPTIONAL whereas a Provider MUST support the same set of endpoints as per the base OneRoster Rostering Service.
For service provider resources conformance the endpoints listed in following Table MUST be supported.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| getAllResources | /resources | GET | Resp |
| getResource | /resources/{id} | GET | Resp |
Support for ANY of the other endpoints and service modes is OPTIONAL. For 'GET' requests a service provider must supply all of the required data fields for the action and may supply any of the optional data fields.
For service provider gradebook conformance the endpoints listed in following Table MUST be supported.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| getAllCategories | /categories | GET | Resp |
| getCategory | /categories/{id} | GET | Resp |
| getAllLineItems | /lineItems | GET | Resp |
| getLineItem | /lineItems/{id} | GET | Resp |
| getAllResults | /results | GET | Resp |
| getResult | /results/{id} | GET | Resp |
| getAllScoreScales | /scoreScales | GET | Resp |
| getScoreScale | /scoreScales/{id} | GET | Resp |
Support for ANY of the other endpoints and service modes is OPTIONAL. For 'GET' requests a service provider must supply all of the required data fields for the action and may supply any of the optional data fields.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| putLineItem | /lineItems/{id} | PUT | Init |
| putResult | /results/{id} | PUT | Init |
Support for ANY of the other endpoints and service modes is OPTIONAL.
For service provider gradebook conformance the endpoints listed in either of the following Tables MUST be supported.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| getAllAssessmentLineItems | /assessmentLineItems | GET | Resp |
| getAssessmentLineItem | /assessmentLineItems/{id} | GET | Resp |
| getAllAssessmentResults | /assessmentResults | GET | Resp |
| getAssessmentResult | /assessmentResults/{id} | GET | Resp |
Support for ANY of the other endpoints and service modes is OPTIONAL. For a 'GET' request a service provider must supply all of the required data fields for the action and may supply any of the optional data fields.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| putAssessmentLineItem | /assessmentResults/{id} | PUT | Init |
| putAssessmentResult | /assessmentResults/{id} | PUT | Init |
Support for ANY of the other endpoints and service modes is OPTIONAL.
For service provider student absences conformance the endpoints listed in following Table MUST be supported.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| getSummaryAbsenceForSchool | /schools/{schoolId}/absences/summary/{Id} | GET | Resp |
The shaded rows denote the endpoints introduced in OR 1.2 Norwegian K-12 Profile.
Support for ANY of the other endpoints and service modes is OPTIONAL. For 'GET' requests a service provider must supply all of the required data fields for the action and may supply any of the optional data fields.
In the tabular summaries of the endpoint requirements the following should be noted:
- For a OneRoster 1.2 Rostering implementation the 'Endpoint' string should be appended to the string '/ims/oneroster/roster/v1p2';
- For a OneRoster 1.2 Resource implementation the 'Endpoint' string should be appended to the string '/ims/oneroster/resource/v1p2';
- For a OneRoster 1.2 Gradebook implementation the 'Endpoint' string should be appended to the string '/ims/oneroster/gradebook/v1p2';
- For a OneRoster 1.2 Assessment Result implementation the 'Endpoint' string should be appended to the string '/ims/oneroster/gradebook/v1p2';
- For a OneRoster Absences 1.0 implementation the 'Endpoint' string should be appended to the string '/ims/oneroster/absences/v1p0';
- The 'Mode' is used denote whether the system is responsible for issuing the request (Init) or responding to the request (Resp).
For service consumer rostering conformance AT LEAST ONE of the endpoints listed in the Table below MUST be supported.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| getAllAcademicSessions | /academicSessions | GET | Init |
| getAcademicSession | /academicSessions/{sourcedId} | GET | Init |
| getAllClasses | /classes | GET | Init |
| getClass | /classes/{sourcedId} | GET | Init |
| getAllCourses | /courses | GET | Init |
| getCourse | /courses/{sourcedId} | GET | Init |
| getAllEnrollments | /enrollments | GET | Init |
| getEnrollment | /enrollments/{sourcedId} | GET | Init |
| getAllOrgs | /orgs | GET | Init |
| getOrg | /orgs/{sourcedId} | GET | Init |
| getAllUsers | /users | GET | Init |
| getUser | /users/{sourcedId} | GET | Init |
Support for ANY of the other endpoints and service modes is OPTIONAL. For a 'GET' request a service consumer must support all of the required and optional data fields in the corresponding received records.
Note that the none of the newly added AfterSchool and Childcare endpoints are listed in the above Table i.e. support of those endpoints is OPTIONAL whereas a Consumer MUST support at least one of set of endpoints as per the base OneRoster Rostering Service.
For service consumer resources conformance the endpoints listed in Table below MUST be supported.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| getAllResources | /resources | GET | Init |
| getResource | /resources/{id} | GET | Init |
Support for ANY of the other endpoints and service modes is optional. For a 'GET' request a service consumer must support all of the required and optional data fields in the corresponding received records.
For service consumer gradebooks conformance the endpoints listed in either of the Tables below MUST be supported.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| getAllCategories | /categories | GET | Init |
| getAllLineItems | /lineItems | GET | Init |
| getAllResults | /results | GET | Init |
| getAllScoreScales | /scoreScales | GET | Init |
Support for ANY of the other endpoints and service modes is OPTIONAL. For a 'GET' request a service consumer must support all of the required and optional data fields in the corresponding received records.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| putLineItem | /lineItems/{id} | PUT | Resp |
| putResult | /results/{id} | PUT | Resp |
Support for ANY of the other endpoints and service modes is OPTIONAL.
For service consumer assessment results conformance the endpoints listed in either of the Tables below MUST be supported.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| getAllAssessmentLineItems | /assessmentLineItems | GET | Init |
| getAllAssessmentResults | /assessmentResults | GET | Init |
Support for ANY of the other endpoints and service modes is OPTIONAL. For a 'GET' request a service consumer must support all of the required and optional data fields in the corresponding received records.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| putAssessmentLineItem | /assessmentLineItems/{id} | PUT | Resp |
| putAssessmentResult | /assessmentResults/{id} | PUT | Resp |
Support for ANY of the other endpoints and service modes is OPTIONAL.
For service consumer student absences conformance the endpoints listed in Table below MUST be supported.
| Service Call | Endpoint | HTTP Verb | Mode |
|---|---|---|---|
| getSummaryAbsenceForSchool | /schools/{schoolId}/absences/summary/{Id} | GET | Init |
The shaded rows denote the endpoints introduced in OR 1.2 Norwegian K-12 Profile.
Support for ANY of the other endpoints and service modes is optional. For a 'GET' request a service consumer must support all of the required and optional data fields in the corresponding received records.
The functional capabilities of such systems are:
- The OpenAPI file(s) that describe the functionality of the available OneRoster 1.2 services MUST be published at the endpoint base URL. This must be a valid OpenAPI 3.0 JSON file. The name and location of these files are:
- Rostering Service - "...hostname..."/ims/oneroster/rostering/v1p2/discovery/imsorv1p2_rostering_openapi3_v1p0.json
- Resources Service - "...hostname..."/ims/oneroster/resources/v1p2/discovery/imsorv1p2_resources_openapi3_v1p0.json
- Gradebook Service - "...hostname..."/ims/oneroster/gradebook/v1p2/discovery/imsorv1p2_gradebook_openapi3_v1p0.json
- Absences Service - "...hostname..."/ims/oneroster/gradebook/v1p0/discovery/imsorv1p0_absences_openapi3_v1p0.json
- At least one of the rostering, gradebooks, assessment results, resources and student absences set of endpoints MUST be supported;
- If rostering is supported, all of the required endpoints MUST be supported;
- If rostering is supported, any of the optional endpoints MAY be supported;
- If resources is supported, all of the required endpoints MUST be supported;
- If resources is supported, any of the optional endpoints MAY be supported;
- If gradebooks is supported, all of either the pull or the push modes required endpoints MUST be supported;
- If gradebooks is supported, any of the optional endpoints may be supported (from both the pull and push modes);
- If assessment results is supported, all of either the pull or the push modes required endpoints MUST be supported;
- If assessment results is supported, any of the optional endpoints MAY be supported (from both the pull and push modes);
- If student absences is supported, all of the required endpoints MUST be supported;
- If student absences is supported, any of the optional endpoints MAY be supported;
- They MUST supply all of the required data fields;
- They MAY supply any of the optional data fields;
- They MUST use the extension data fields as required for the support of the new data fields defined in this Profile;
- They MAY use the extension data fields to provide proprietary data;
- They MUST support the endpoint payload pagination mechanism for all responses that provide a collection in the payload;
- They MUST support the endpoint payload filtering mechanism for all responses that provide a collection in the payload. When the rostering service is supported the following filtering rules MUST be supported:-
- Filtering for students using the filter of "filter=roles.role~'student'" on the "getAllUsers()" endpoint
- Filtering for teachers using the filter of "filter=roles.role~'teacher'" on the "getAllUsers()" endpoint
- Filtering for grading periods using the filter of "filter=type='gradingPeriod'" on the "getAllAcademicSessions()" endpoint
- Filtering for terms using the filter of "filter=type='term'" on the "getAllAcademicSessions()" endpoint
- Filtering for schools using the filter of "filter=type='school'" on the "getAllAcademicSessions()" endpoint
- They MUST support the endpoint payload sorting mechanism for all responses that provide a collection in the payload;
- They MUST support the endpoint payload field selection mechanism for all responses that provide a collection or a singleton in the payload;
- They MUST support the OAuth 2.0 Bearer Token authentication mechanism.
Systems that wish to undertake conformance testing as a Service Provider for the Norwegian Profile should use the conformance test system located at: https://validate.imsglobal.org/NK12_ORv1p2_CTS_ServiceProvider/
The functional capabilities of such systems are:
- At least one of the rostering, gradebooks, assessment results and resources set of endpoints MUST be supported;
- If rostering is supported, all of the required endpoints MUST be supported;
- If rostering is supported, any of the optional endpoints MAY be supported;
- If resources is supported, all of the required endpoints MUST be supported;
- If resources is supported, any of the optional endpoints MAY be supported;
- If gradebooks is supported, all of either the pull or the push modes required endpoints MUST be supported;
- If gradebooks is supported, any of the optional endpoints MAY be supported (from both the pull and push modes);
- If assessment results is supported, all of either the pull or the push modes required endpoints MUST be supported;
- If assessment results is supported, any of the optional endpoints MAY be supported (from both the pull and push modes);
- If student absences is supported, all of the required endpoints MUST be supported;
- If student absences is supported, any of the optional endpoints MAY be supported;
- They MUST support all of the required data fields;
- They MUST support all of the optional data fields;
- They MUST process the extension data fields as required for the support of the new data fields defined in this Profile;
- They MAY process extension data fields when used to contain proprietary data;
- They MUST support the endpoint payload pagination mechanism for all requests that provide a collection in the response payload;
- They MUST support the endpoint payload filtering mechanism for all requests that provide a collection in the response payload;
- They MUST support the endpoint payload sorting mechanism for all requests that provide a collection in the response payload;
- They MUST support the endpoint payload field selection mechanism for all requests that provide a collection or a singleton in the response payload;
- They MUST support the OAuth 2.0 Bearer Token authentication mechanism;
- MAY read the Service Provider's OpenAPI service description file(s) to obtain the details of the service(s) made available by that provider.
Systems that wish to undertake conformance testing as a Service Consumer should use the conformance test system located at: https://certification.imsglobal.org/certification/or12cts
A comparison of the available certifications for the defined OneRoster endpoints is shown in Table 4.13. In this table the key is:
- 'C' denotes a service consumer;
- 'P' denotes a service provider;
- 'Init' denotes that the end-system issues the request (a shaded box denotes that support for the endpoint is required for that mode and a black cell indicates that AT LEAST ONE of those endpoints MUST be supported);
- 'Resp' denotes that the end-system responds to the request (a shaded box denotes that support for the endpoint is required for that mode);
- '-' denotes that the endpoint is not available to that operational mode.
Those rows that are shaded under the 'Service Call' column indicates the new endpoints added in this Profile.
| Service Call | Endpoint | HTTP Verb | Rostering | Gradebooks | Assessment Results | Resources | Absences | |||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| C | P | C | P | C | P | C | P | C | P | |||
| getAllDetailAbsences | /absences/detail | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getDetailAbsence | /absences/detail/{id} | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getAllSummaryAbsences | /absences/summary | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getSummaryAbsence | /absences/summary/{id} | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getAllAcademicSessions | /academicSessions | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAcademicSession | /academicSessions/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllAfterSchools | /afterschools | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAfterSchool | /afterschools/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAcademicSessionSetForAfterSchool | /afterschools/{afterschool_id}/academicsessions | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAcademicSessionForAfterSchool | /afterschools/{afterschool_id}/academicsessions/{academicsession_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getClassSetForAfterSchool | /afterschools/{afterschool_id}/classes | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getClassForAfterSchool | /afterschools/{afterschool_id}/classes/{class_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getStudentSetForClassInAfterSchool | /afterschools/{afterschool_id}/classes/{class_id}/students | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTeacherSetForClassInAfterSchool | /afterschools/{afterschool_id}/classes/{class_id}/teachers | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getEnrollmentSetForAfterSchool | /afterschools/{afterschool_id}/enrollments | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getEnrollmentForAfterSchool | /afterschools/{afterschool_id}/enrollments/{enrollment_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getStudentSetForAfterSchool | /afterschools/{afterschool_id}/students | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getStudentForAfterSchool | /afterschools/{afterschool_id}/students/{student_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTeacherSetForAfterSchool | /afterschools/{afterschool_id}/teachers | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTeacherForAfterSchool | /afterschools/{afterschool_id}/teachers/{teacher_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getUserSetForAfterSchool | /afterschools/{afterschool_id}/users | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getUserForAfterSchool | /afterschools/{afterschool_id}/users/{user_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllChildcares | /childcares | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getChildcare | /childcares/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAcademicSessionSetForChildcare | /childcares/{childcare_id}/academicsessions | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAcademicSessionForChildcare | /childcares/{childcare_id}/academicsessions/{academicsession_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getClassSetForChildcare | /childcares/{childcare_id}/classes | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getClassForChildcare | /childcares/{childcare_id}/classes/{class_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getStudentSetForClassInChildcare | /childcares/{childcare_id}/classes/{class_id}/students | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTeacherSetForClassInChildcare | /childcares/{childcare_id}/classes/{class_id}/teachers | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getEnrollmentSetForChildcare | /childcares/{childcare_id}/enrollments | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getEnrollmentForChildcare | /childcares/{childcare_id}/enrollments/{enrollment_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getStudentSetForChildcare | /childcares/{childcare_id}/students | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getStudentForChildcare | /childcares/{childcare_id}/students/{student_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTeacherSetForChildcare | /childcares/{childcare_id}/teachers | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTeacherForChildcare | /childcares/{childcare_id}/teachers/{teacher_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getUserSetForChildcare | /childcares/{childcare_id}/users | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getUsersForChildcare | /childcares/{childcare_id}/users/{user_id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllClasses | /classes | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getClass | /classes/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getResourcesForClass | /classes/{class_id}/resources | GET | - | - | - | - | - | - | Init | Resp | - | - |
| getStudentsForClass | /classes/{class_id}/students | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTeachersForClass | /classes/{class_id}/teachers | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllCourses | /courses | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getCourse | /courses/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getClassesForCourse | /courses/{course_id}/classes | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getResourcesForCourse | /courses/{course_id}/resources | GET | - | - | - | - | - | - | Init | Resp | - | - |
| getAllDemographics | /demographics | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getDemographics | /demographics/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllEnrollments | /enrollments | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getEnrollment | /enrollments/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllGradingPeriods | /gradingPeriods | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getGradingPeriod | /gradingPeriods/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllOrgs | /orgs | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getOrg | /orgs/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllResources | /resources | GET | - | - | - | - | - | - | Init | Resp | - | - |
| getResource | /resources/{id} | GET | - | - | - | - | - | - | Init | Resp | - | - |
| getAllSchools | /schools | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getSchool | /schools/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getDetailAbsenceSetForSchool | /schools/{school_id}/absences/detail | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getDetailAbsenceForSchool | /schools/{school_id}/absences/detail/{absence_id} | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getClassesForSchool | /schools/{school_id}/classes | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getCoursesForSchool | /schools/{id}/courses | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getEnrollmentsForSchool | /schools/{school_id}/enrollments | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getEnrollmentsForClassInSchool | /schools/{school_id}/classes/{class_id}/enrollments | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getStudentsForClassInSchool | /schools/{school_id}/classes/{class_id}/students | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getStudentsForSchool | /schools/{school_id}/students | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTeachersForClassInSchool | /schools/{school_id}/classes/{class_id}/teachers | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getDetailAbsenceSetForStudentInSchool | /schools/{school_id}/students/{student_id}/absences/detail | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getDetailAbsenceForStudentInSchool | /schools/{school_id}/students/{student_id}/absences/detail/{absence_id} | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getSummaryAbsenceSetForSchool | /schools/{school_id}/absences/summary | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getSummaryAbsenceForSchool | /schools/{school_id}/absences/summary/{absence_id} | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getSummaryAbsenceSetForStudentInSchool | /schools/{school_id}/students/{student_id}/absences/summary | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getSummaryAbsenceForStudentInSchool | /schools/{school_id}/students/{student_id}/absences/summary/{absence_id} | GET | - | - | - | - | - | - | - | - | Init | Resp |
| getTeachersForSchool | /schools/{school_id}/teachers | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTermsForSchool | /schools/{school_id}/terms | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllStudents | /students | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getStudent | /students/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getClassesForStudent | /students/{student_id}/classes | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllTeachers | /teachers | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTeacher | /teachers/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getClassesForTeacher | /teachers/{teacher_id}/classes | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllTerms | /terms | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getTerm | /terms/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getClassesForTerm | /terms/{term_id}/classes | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getGradingPeriodsForTerm | /terms/{term_id}/gradingPeriods | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getAllUsers | /users | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getUser | /users/{id} | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getClassesForUser | /users/{user_id}/classes | GET | Init | Resp | - | - | - | - | - | - | - | - |
| getResourcesForUser | /users/{user_id}/resources | GET | - | - | - | - | - | - | Init | Resp | - | - |
| getAcademicStandardIdsForClass | /classes/{classSourcedId}/academicStandardIds | GET | - | - | Resp (Pull) |
Init (Pull) |
- | - | - | - | - | - |
| getAcademicStandardIdsForSchool | /schools/{schoolSourcedId}/academicStandardIds | GET | - | - | Resp (Pull) |
Init (Pull) |
- | - | - | - | - | - |
| getAllCategories | /categories | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| getCategory | /categories/{id} | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| getCategoriesForClass | /classes/{classSourcedId}/categories | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| putCategory | /categories/{id} | PUT | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| deleteCategory | /categories/{id} | DELETE | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| getAllAssessmentLineItems | /assessmentLineItems | GET | - | - | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - |
| getAssessmentLineItem | /assessmentLineItems/{id} | GET | - | - | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - |
| putAssessmentLineItem | /assessmentLineItems/{id} | PUT | - | - | - | - | Resp (Push) |
Init (Push) |
- | - | - | - |
| deleteAssessmentLineItem | /assessmentLineItems/{id} | DELETE | - | - | - | - | Resp (Push) |
Init (Push) |
- | - | - | - |
| getAllLineItems | /lineItems | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| getLineItem | /lineItems/{id} | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| postLineItemsForClass | /classes/{classSourcedId}/lineItems | POST | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| postLineItemsForSchool | /schools/{schoolSourcedId}/lineItems | POST | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| putLineItem | /lineItems/{id} | PUT | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| deleteLineItem | /lineItems/{id} | DELETE | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| getLineItemsForClass | /classes/{class_id}/lineItems | GET | - | - | Resp (Pull) |
Init (Pull) |
- | - | - | - | - | - |
| getAllAssessmentResults | /assessmentResults | GET | - | - | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - |
| getAssessmentResult | /assessmentResults/{id} | GET | - | - | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - |
| putAssessmentResult | /assessmentResults/{id} | PUT | - | - | - | - | Resp (Push) |
Init (Push) |
- | - | - | - |
| deleteAssessmentResult | /assessmentResults/{id} | DELETE | - | - | - | - | Resp (Push) |
Init (Push) |
- | - | - | - |
| getAllResults | /results | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| getResult | /results/{id} | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| postResultsForLineItem | /lineItems/{lineItemSourcedId}/results | POST | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| postResultsForAcademicSessionForClass | /classes/{classSourcedId}/academicSessions/{academicSessionSourcedId}/results | POST | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| putResult | /results/{id} | PUT | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| deleteResult | /results/{id} | DELETE | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| getResultsForClass | /classes/{class_id}/results | GET | - | - | Resp (Pull) |
Init (Pull) |
- | - | - | - | - | - |
| getResultsForLineItemForClass | /classes/{class_id}/lineItems/{li_id}/results | GET | - | - | Resp (Pull) |
Init (Pull) |
- | - | - | - | - | - |
| getResultsForStudentForClass | /classes/{class_id}/students/{student_id}/results | GET | - | - | Resp (Pull) |
Init (Pull) |
- | - | - | - | - | - |
| getAllScoreScales | /scoreScales | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| getScoreScale | /scoreScales/{id} | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| getScoreScalesForClass | /classes/{classSourcedId}/scoreScales | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| getScoreScalesForSchool | /schools/{schoolSourcedId}/scoreScales | GET | - | - | Init (Pull) |
Resp (Pull) |
- | - | - | - | - | - |
| putScoreScale | /scoreScales/{id} | PUT | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
| deleteScoreScale | /scoreScales/{id} | DELETE | - | - | Resp (Push) |
Init (Push) |
- | - | - | - | - | - |
The contents for each use-case are:
- Use-case Title – the unique title for the use-case. This should identify the goal as a short active verb phrase;
- Use-case Local ID – the unique identifier for the use-case in the set of use-cases under development. This identifier does not have to be globally unique;
- Brief Description – this should provide a concise description of the use-case including its context and scope (the black-box range of the system being described);
- Level – the level of abstraction of the use-case description using the vocabulary ‘Summary’, ‘Primary Task’ and ‘Subfunction’. Set as ‘Summary’;
- Actors – identification of the role names of ‘Primary’ and ‘Secondary’ actors (this could be users or software systems themselves e.g. operating system). There must be only one primary actor but there can be any number of secondary actors;
- Stakeholders – the names of the stakeholders and the primary interest of the stakeholders in the goal described by the use-case;
- Data Flow – a short explanation of the data flows between the components of the system enabling the use-case;
- Notes – the notes that will have been referenced within the rest of the table.
| Use-case Title | Support for Different Groups. |
| Use-case Local ID | N1 |
| Brief Description | A user needs to have a membership / enrolment in different types of groups. In this way the corresponding teaching aid(s) can adapt
the UI to fit the different groups and their roles in those groups. A teacher needs a different UI than a student. In Norwegian schooling there are
different types of groups, including:
|
| Level | Summary |
| Actors | Primary: Student |
| Secondary: Teacher, Feide, LMS+Vendor, Teaching Aid+Vendor | |
| Stakeholders | School - required to provide Group-based activities and to distribute definition and enrolment on these Groups. |
| Date Flow | This follows the standardized data flow between OneRoster Service Provider(s) and Service Consumer(s). |
| Notes | A number of clarifications are made to the use of OneRoster with respect to the definition of a Group as a type of Class. This requires the definition of 'Ghost Course' to maintain syntactic consistency of a OneRoster payload. |
| Use-case Title | Support for URI's in a Class/Course |
| Use-case Local ID | N2 |
| Brief Description | Some services need to know the set of educational class/courses/groups and so there must be some way of reading class, course and groups code(s) from the Grep database or other relevant databases/vocabularies. The code is usually an URI. For the most part this is a code for a subject but can also be the grade level. In upper secondary school the terms “education-programme” (utdanningsprogram), “programme-area” (programområde) and “programme-subject” (programfag). These may not fit within the same categories as subject or grade level. |
| Level | Summary |
| Actors | Primary: Service Provider - responsible for distributing the new URIs. |
| Secondary: the system/tool/app receiving the new URIs. | |
| Stakeholders | Grep Database and other Repositories - any supplier of the URIs. |
| Date Flow | This follows the standardized data flow between OneRoster Service Provider(s) and Service Consumer(s). |
| Notes | Use the metadata extension mechanism to support this broader definition of subject codes in Class and Course objects. |
| Use-case Title | Support for Different Roles |
| Use-case Local ID | N3 |
| Brief Description | For a specific employee or student at a school, access to services is based on the person's role. The person can have different kind of roles in different kind of groups. For example, the role "subject teacher" in one group and "contact teacher" in another. This is also related to the student data for which a teacher should have access. Roles are also defined for access to groups. Roles are also used in Feide and the profile should support these roles. In Norway there are many roles that need to be supported beyond those currently defined in the OneRoster specification. |
| Level | Summary |
| Actors | Primary: Student Information/Administration System - required to manage distribution of allocation of roles. |
| Secondary: Data Consumer - the system/tool/app that requires the role information. | |
| Stakeholders | Person (Employee and/or Student) - the individual for whom the role is being assigned. |
| Date Flow | This follows the standardized data flow between OneRoster Service Provider(s) and Service Consumer(s). |
| Notes | Support of this use-case is through the extension of enumerated vocabulary for the roles attribute in the Role
class and use of a new subrole definitions in the metadata extension capability. |
| Use-case Title | Support for Multiple User Identifiers for a Person |
| Use-case Local ID | N4 |
| Brief Description | Given an employee or a student, support for multiple userIDs that are in use in the Norwegian school system is required. The
full list of userIds is:
|
| Level | Summary |
| Actors | Primary: Service Provider - responsible for supplying the new identifiers. |
| Secondary: Service Consumer - the system/tool/app receiving the identifier information. | |
| Stakeholders | Person - the individual for whom the identifier is being assigned. |
| Date Flow | This follows the standardized data flow between OneRoster Service Provider(s) and Service Consumer(s). |
| Notes | Support of this use-case is through the definition of the enumerated vocabulary for the type/'[ attribute in the 'UserId' class. |
| Use-case Title | Support for Absence |
| Use-case Local ID | N5 |
| Brief Description | All contact teachers in a school must note the absence for a student. The Norwegian school system, uses both “valid” and “invalid” absence on both detailed and aggregated level. The total absence is stated on both a grading card (given at the end of each semester) and the diploma (given at the end of lower and upper secondary). Valid absences are deducted from the total. |
| Level | Summary |
| Actors | Primary: Student Information/Administration System - required to store and manage access to this information. |
| Secondary: Data Consumer - the system/tool/app that requires the student absence information. | |
| Stakeholders | Schools - required to track student absence and to report this information to the appropriate Norwegian audit authorities. Students - the people who will have their absence record reported in their diploma |
| Date Flow | This is a new service that defines the exchange of the student absence information between a Service Provider (provider of the REST API) and a Service Consumer (user of the REST API). |
| Notes | This requires the definition of a new 1EdTech service (the 1EdTech OneRoster Student Absence Specification 1.0). |
| Use-case Title | Support for Fictional Data |
| Use-case Local ID | N6 |
| Brief Description | An administrator needs to assign fictional data to certain students that are in category 6 (strengt fortrolig - strictly confidential) or 7 (fortrolig - confidential). For example, the data (phone number) must be blocked from view for all private citizens. Category 7 means that the phone number of the person exposed to threats is not provided to private individuals but is available to the part of the public sector that has access to information from the National Register of Citizens. Category 6 means that information about the phone number is not delivered to anyone. |
| Level | Summary |
| Actors | Primary: Administrator |
| Secondary: System used by the Administrator | |
| Stakeholders | Student - maintenance of the privacy of their personal information. |
| Date Flow | Machine readable definition, in the OneRoster specification, of the properties that have privacy implications enable the Service Provider to determine if, or how, this data is to be supplied. |
| Notes | Support for this capability is defined in the 1EdTech Privacy Framework [PRIVACY-10]. This requires inclusion of new Sections in the corresponding documentation [ORROS-SM-12], [ORROS-BD-12], [ORROS-NOR-BD-12]. |
The summary of changes made to the base OneRoster 1.2 Rostering Service definition is:
- The
AfterSchoolsManagementinterface has been added (this enables the management of information about after-school activities. An after school activity is a type of 'org')getAcademicSessionForAfterSchoolendpoint - to read, get, the specific academic session for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetAcademicSessionSetForAfterSchoolendpoint - to read, get, the collection of academic sessions for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetAfterSchoolendpoint - to read, get, a specific after-school activity. If the specified after-school cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetAllAfterSchoolsendpoint - to read, get, a collection of after-school activities i.e. all orgs of type 'after-school'getClassForAfterSchoolendpoint - to read, get, the specific class for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetClassSetForAfterSchoolendpoint - to read, get, the collection of classes for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetEnrollmentForAfterSchoolendpoint - to read, get, the specific enrollment for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetEnrollmentSetForAfterSchoolendpoint - to read, get, the collection of enrollments for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetStudentForAfterSchoolendpoint - to read, get, the specific student for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetStudentSetForAfterSchoolendpoint - to read, get, the collection of students for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetStudentSetForClassInAfterSchoolendpoint - to read, get, the collection of students for specific after-school activity and class. If the specified after-school activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetTeacherForAfterSchoolendpoint - to read, get, the specific teacher for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetTeacherSetForAfterSchoolendpoint - to read, get, the collection of teachers for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetTeacherSetForClassInAfterSchoolendpoint - to read, get, the collection of teachers for specific after-school activity and class. If the specified after-school activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetUserForAfterSchoolendpoint - to read, get, the specific user for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetUserSetForAfterSchoolendpoint - to read, get, the collection of users for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported
- The
ChildcaresManagementinterface has been added (this enables the management of information about child care activities. A child care activity is a type of 'org')getAcademicSessionForChildcareendpoint - to read, get, the specific academic session for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetAcademicSessionSetForChildcareendpoint - to read, get, the collection of academic sessions for specific childCare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetAllChildcaresendpoint - to read, get, a collection of child care activities i.e. all orgs of type 'child care'getChildcareendpoint - to read, get, a specific child care activity. If the specified child care activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetClassForChildcareendpoint - to read, get, the specific class for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetClassSetForChildcareendpoint - to read, get, the collection of classes for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetEnrollmentForChildcareendpoint - to read, get, the specific enrollment for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetEnrollmentSetForChildcareendpoint - to read, get, the collection of enrollments for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetStudentForChildcareendpoint - to read, get, the specific student for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetStudentSetForChildcareendpoint - to read, get, the collection of students for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetStudentSetForClassInChildcareendpoint - to read, get, the collection of students for specific childcare activity and class. If the specified childcare activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetTeacherForChildcareendpoint - to read, get, the specific teacher for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetTeacherSetForChildcareendpoint - to read, get, the collection of teachers for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetTeacherSetForClassInChildcareendpoint - to read, get, the collection of teachers for specific childcare activity and class. If the specified childcare activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetUserForChildcareendpoint - to read, get, the specific user for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reportedgetUserSetForChildcareendpoint - to read, get, the collection of users for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported
- The following classes/data-types have been modified
- Changes to the
ClassTypeEnumclass are- The enumeration token
ext:nationalTestsGrouphas been ADDED - The enumeration token
ext:specialEducationhas been ADDED - The enumeration token
ext:grepGrouphas been ADDED - The enumeration token
ext:contactTeacherGrouphas been ADDED
- The enumeration token
- Changes to the
Demographicsclass are- The attribute
americanIndianOrAlaskaNativehas been PROHIBITED - The attribute
asianhas been PROHIBITED - The attribute
blackOrAfricanAmericanhas been PROHIBITED - The attribute
nativeHawaiianOrOtherPacificIslanderhas been PROHIBITED - The attribute
whitehas been PROHIBITED - The attribute
demographicRaceTwoOrMoreRaceshas been PROHIBITED - The attribute
hispanicOrLatinoEthnicityhas been PROHIBITED - The attribute
countryOfBirthCodehas been PROHIBITED - The attribute
stateOfBirthAbbreviationhas been PROHIBITED - The attribute
cityOfBirthhas been PROHIBITED - The attribute
publicSchoolResidenceStatushas been PROHIBITED
- The attribute
- Changes to the
EnrolRoleEnumclass are- The attribute
proctorhas been PROHIBITED - The enumeration token
ext:aidehas been ADDED - The enumeration token
ext:contactTeacherhas been ADDED
- The attribute
- Changes to the
MetadataClassclass are- The OPTIONAL attribute
1edtech.languageof data-type LANGUAGE has been APPENDED - The OPTIONAL attribute
1edtech.subjectCodeswith a COMPLEX data-type (SubjectCodes) has been APPENDED - The OPTIONAL attribute
1edtech.grepGroupswith a COMPLEX data-type (GrepGroups) has been APPENDED
- The OPTIONAL attribute
- Changes to the
MetadataCourseclass are- The OPTIONAL attribute
1edtech.languageof data-type LANGUAGE has been APPENDED - The OPTIONAL attribute
1edtech.subjectCodeswith a COMPLEX data-type (SubjectCodes) has been APPENDED
- The OPTIONAL attribute
- Changes to the
MetadataEnrollmentclass are- The OPTIONAL attribute
1edtech.languageof data-type LANGUAGE has been APPENDED
- The OPTIONAL attribute
- Changes to the
MetadataGeneralclass are- The OPTIONAL attribute
1edtech.languageof data-type LANGUAGE has been APPENDED
- The OPTIONAL attribute
- Changes to the
MetadataOrgclass are- The OPTIONAL attribute
1edtech.languageof data-type LANGUAGE has been APPENDED - The OPTIONAL attribute
1edtech.schoolVIGOIDof data-type NORMALIZEDSTRING has been APPENDED - The OPTIONAL attribute
1edtech.schoolPASCodeof data-type NORMALIZEDSTRING has been APPENDED - The OPTIONAL attribute
1edtech.schoolTypewith an ENUMERATED data-type (SchoolTypeEnum) has been APPENDED
- The OPTIONAL attribute
- Changes to the
MetadataUserclass are- The OPTIONAL attribute
1edtech.languageof data-type LANGUAGE has been APPENDED
- The OPTIONAL attribute
- Changes to the
OrgTypeEnumclass are- The attribute
statehas been PROHIBITED - The attribute
localhas been PROHIBITED - The attribute
nationalhas been PROHIBITED - The enumeration token
ext:afterSchoolhas been ADDED - The enumeration token
ext:childCarehas been ADDED - The enumeration token
ext:counsellingServicehas been ADDED - The enumeration token
ext:countyhas been ADDED - The enumeration token
ext:municipalityhas been ADDED - The enumeration token
ext:privateOwnerhas been ADDED
- The attribute
- Changes to the
RoleEnumclass are- The attribute
proctorhas been PROHIBITED - The attribute
guardianhas been PROHIBITED - The attribute
parenthas been PROHIBITED - The attribute
relativehas been PROHIBITED - The enumeration token
ext:staffhas been ADDED - The enumeration token
ext:primaryGuardianhas been ADDED - The enumeration token
ext:ownerRepesentativehas been ADDED - The enumeration token
ext:responsibleCaregiverhas been ADDED
- The attribute
- Changes to the
Userclass are- The attribute
identifierhas been PROHIBITED - The attribute
passwordhas been PROHIBITED
- The attribute
- Changes to the
- The following new classes/data-types have been defined
- The NEW class
GrepGroupshas been created. This is a new class defined in this Profile to hold information about the defined Grep Groups. This consists of the following attributes:1edtech.grepType : GrepTypeEnum [1..1]1edtech.code : NormalizedString [1..1]1edtech.title : String [1..1]1edtech.vocabName : VocabNameEnum [0..1]1edtech.uri : AnyURI [0..1]
- The NEW class
GrepTypeEnumhas been created. This is the container for the new enumerated vocabulary for the type of Grep Group. This provides an enumeration of:- The token
fagkoderhas been defined - The token
programomraaderhas been defined - The token
utdanningsprogramhas been defined - The token
aarstrinnhas been defined
- The token
- The NEW class
SchoolTypeEnumhas been created. This is the container for the new enumerated sub-type vocabulary for a School org. This provides an enumeration of:- The token
primarySchoolhas been defined - The token
lowerSecondarySchoolhas been defined - The token
upperSecondarySchoolhas been defined - The token
adultEducationhas been defined - The token
vocationalSchoolhas been defined - The token
homeEducationhas been defined - The token
primaryAndLowerSecondarySchoolhas been defined
- The token
- The NEW class
SubjectCodeshas been created. This is a new class defined in this Profile to hold information about the subjectCodes assigned to a Class or Course. This is the preferred mechanism for providing the subject codes information. This consists of the following attributes:1edtech.code : NormalizedString [1..1]1edtech.title : String [1..1]1edtech.vocabName : VocabNameEnum [0..1]1edtech.uri : AnyURI [0..1]
- The NEW class
UserIdTypeEnumhas been created. This is the container for the new enumerated vocabulary for the type of UserId. This provides an enumeration of:- The token
feideIDhas been defined - The token
UPNhas been defined - The token
personFINhas been defined - The token
personLINhas been defined - The token
personNINhas been defined - The token
personNINencryptedhas been defined - The token
sisIDhas been defined - The token
studentIDhas been defined - The token
usernamehas been defined - The token
workforceIDhas been defined
- The token
- The NEW class
VocabNameEnumhas been created. This is the container for the new enumerated vocabulary for the vocabulary name for Subject Codes. This provides an enumeration of:- The token
GREPhas been defined - The token
VIGOhas been defined - The token
localCodehas been defined
- The token
- The NEW class
The OpenAPI 3 (JSON) listing (based upon [OpenAPI3]) is shown below (the OpenAPI JSON is available at: https://purl.imsglobal.org/spec/or/v1p2/schema/openapi/onerosterv1p2rostersservice_norwegiank12profile_openapi3_v1p0.json).
{
"openapi" : "3.0.0",
"info" : {
"version" : "1.0",
"title" : "OneRoster 1.2 Norwegian Profile for K-12 Education [ NorwegianK-12 ] OpenAPI (JSON) Definition",
"description" : "The OneRoster Rostering Service enables the exchange of K-12 oriented roster data. This exchange is typically between the Student Information System and the learning delivery systems. The service provides a number of operations, collected as several endpoints, primarily based upon read, create and delete of the first class objects. In this Norwegian Profile K-12 many new endpoints have been added to support information exchange about Childcare and After School activities. THIS IS A FORMAL PROFILE OF: OneRoster Rostering Service 1.2.",
"termsOfService" : "https://www.imsglobal.org/license.html",
"contact" : {
"name" : "Vice President of Operations, 1EdTech",
"url" : "https://www.1edtech.org",
"email" : "operations@1edtech.org"
},
"license" : {
"name" : "1EdTech",
"url" : "https://www.1edtech.org/license.html"
}
},
"servers" : [
{
"url" : "https://{hostName}{basePath}",
"description" : "The pattern for the Server URL should be configured for the actual server location.",
"variables" : {
"hostName" : {
"description" : "This is the hostname for the server and MUST be set to the actual service provider (the 1EdTech URL is given as a default value).",
"default" : "www.imsglobal.org"
},
"basePath" : {
"description" : "This is the base-path for the full URL and MUST be a part of the service endpoints.",
"enum" : ["/ims/oneroster/rostering/v1p2"],
"default" : "/ims/oneroster/rostering/v1p2"
}
}
}
],
"tags" : [
{
"name" : "AcademicSessionsManagement",
"description" : "This enables the management of academic sessions i.e. periods of academic activity."
},
{
"name" : "ClassesManagement",
"description" : "This enables the management of Classes i.e. scheduled learning of courses."
},
{
"name" : "CoursesManagement",
"description" : "This enables the management of Courses i.e. programme of study."
},
{
"name" : "DemographicsManagement",
"description" : "This enables the management of demographics information (each assigned to a specific user). The sourcedIds for the user and the demographics records should be the same."
},
{
"name" : "EnrollmentsManagement",
"description" : "This enables the management of the enrollments of users (teachers, students, etc.) on classes supplied by schools."
},
{
"name" : "GradingPeriodsManagement",
"description" : "This enables the management of grading periods i.e. specific academic sessions."
},
{
"name" : "OrgsManagement",
"description" : "This enables the management of orgs i.e. an organization involved in the learning in some form or other."
},
{
"name" : "SchoolsManagement",
"description" : "This enables the management of information about schools. A school is a type of 'org'."
},
{
"name" : "StudentsManagement",
"description" : "This enables the management of information about students (a student is a type of 'user')."
},
{
"name" : "TeachersManagement",
"description" : "This enables the management of information about teachers (a teacher is a type of 'user')."
},
{
"name" : "TermsManagement",
"description" : "This enables the management of information about terms (a term is a type of 'academicSession')."
},
{
"name" : "UsersManagement",
"description" : "This enables the management of information about users (including students and teachers)."
},
{
"name" : "AfterSchoolsManagement",
"description" : "NEW in the [ NorwegianK-12 ] Profile: This enables the management of information about after-school activities. An after school activity is a type of 'org'."
},
{
"name" : "ChildcaresManagement",
"description" : "NEW in the [ NorwegianK-12 ] Profile: This enables the management of information about child care activities. A child care activity is a type of 'org'."
}
],
"paths" : {
"/academicSessions" : {
"get" : {
"operationId" : "getAllAcademicSessions",
"summary" : "The REST read request message for the getAllAcademicSessions() API call.",
"tags" : [ "AcademicSessionsManagement" ],
"description" : "To read, get, a collection of academic sessions i.e. all academic sessions.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/AcademicSessionSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllAcademicSessions",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllAcademicSessions",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllAcademicSessions",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllAcademicSessions",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/academicSessions/{sourcedId}" : {
"get" : {
"operationId" : "getAcademicSession",
"summary" : "The REST read request message for the getAcademicSession() API call.",
"tags" : [ "AcademicSessionsManagement" ],
"description" : "To read, get, a specific academic session. If the specified academic session cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this academic session.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleAcademicSessionDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/classes" : {
"get" : {
"operationId" : "getAllClasses",
"summary" : "The REST read request message for the getAllClasses() API call.",
"tags" : [ "ClassesManagement" ],
"description" : "To read, get, a collection of classes i.e. all classes.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ClassSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllClasses",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllClasses",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllClasses",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllClasses",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/classes/{classSourcedId}/students" : {
"get" : {
"operationId" : "getStudentsForClass",
"summary" : "The REST read request message for the getStudentsForClass() API call.",
"tags" : [ "ClassesManagement" ],
"description" : "To read, get, the collection of students associated with a specific class. If the specified class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getStudentsForClass",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getStudentsForClass",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getStudentsForClass",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getStudentsForClass",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/classes/{classSourcedId}/teachers" : {
"get" : {
"operationId" : "getTeachersForClass",
"summary" : "The REST read request message for the getTeachersForClass() API call.",
"tags" : [ "ClassesManagement" ],
"description" : "To read, get, the collection of teachers associated with a specific class. If the specified class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getTeachersForClass",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getTeachersForClass",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getTeachersForClass",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getTeachersForClass",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/classes/{sourcedId}" : {
"get" : {
"operationId" : "getClass",
"summary" : "The REST read request message for the getClass() API call.",
"tags" : [ "ClassesManagement" ],
"description" : "To read, get, a specific class. If the specified class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleClassDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/courses" : {
"get" : {
"operationId" : "getAllCourses",
"summary" : "The REST read request message for the getAllCourses() API call.",
"tags" : [ "CoursesManagement" ],
"description" : "To read, get, a collection of courses i.e. all courses.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/CourseSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllCourses",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllCourses",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllCourses",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllCourses",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/courses/{courseSourcedId}/classes" : {
"get" : {
"operationId" : "getClassesForCourse",
"summary" : "The REST read request message for the getClassesForCourse() API call.",
"tags" : [ "CoursesManagement" ],
"description" : "To get the set of classes related to a specific course. If the specified course cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "courseSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific course.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ClassSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getClassesForCourse",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getClassesForCourse",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getClassesForCourse",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getClassesForCourse",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/courses/{sourcedId}" : {
"get" : {
"operationId" : "getCourse",
"summary" : "The REST read request message for the getCourse() API call.",
"tags" : [ "CoursesManagement" ],
"description" : "To read, get, a specific course. If the specified course cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this course.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleCourseDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/demographics" : {
"get" : {
"operationId" : "getAllDemographics",
"summary" : "The REST read request message for the getAllDemographics() API call.",
"tags" : [ "DemographicsManagement" ],
"description" : "To read, get, a collection of demographics i.e. all demographics.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-demographics.readonly"
]
}
],
"x-1edtech-confidentiality" : "veryrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/DemographicsSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllDemographics",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllDemographics",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllDemographics",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllDemographics",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/demographics/{sourcedId}" : {
"get" : {
"operationId" : "getDemographics",
"summary" : "The REST read request message for the getDemographics() API call.",
"tags" : [ "DemographicsManagement" ],
"description" : "To read, get, a specific user demographics. If the specified user and/or demographics records cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this user demographics.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-demographics.readonly"
]
}
],
"x-1edtech-confidentiality" : "veryrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleDemographicsDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/enrollments" : {
"get" : {
"operationId" : "getAllEnrollments",
"summary" : "The REST read request message for the getAllEnrollments() API call.",
"tags" : [ "EnrollmentsManagement" ],
"description" : "To read, get, a collection of enrollments i.e. all enrollments.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "normal",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/EnrollmentSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllEnrollments",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllEnrollments",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllEnrollments",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllEnrollments",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/enrollments/{sourcedId}" : {
"get" : {
"operationId" : "getEnrollment",
"summary" : "The REST read request message for the getEnrollment() API call.",
"tags" : [ "EnrollmentsManagement" ],
"description" : "To read, get, a specific enrollment. If the specified enrollment cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this enrollment.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "normal",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleEnrollmentDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/gradingPeriods" : {
"get" : {
"operationId" : "getAllGradingPeriods",
"summary" : "The REST read request message for the getAllGradingPeriods() API call.",
"tags" : [ "GradingPeriodsManagement" ],
"description" : "To read, get, a collection of grading periods i.e. all academic sessions.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/AcademicSessionSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllGradingPeriods",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllGradingPeriods",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllGradingPeriods",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllGradingPeriods",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/gradingPeriods/{sourcedId}" : {
"get" : {
"operationId" : "getGradingPeriod",
"summary" : "The REST read request message for the getGradingPeriod() API call.",
"tags" : [ "GradingPeriodsManagement" ],
"description" : "To read, get, a specific grading period. If the specified grading period cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this grading period.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleAcademicSessionDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/orgs" : {
"get" : {
"operationId" : "getAllOrgs",
"summary" : "The REST read request message for the getAllOrgs() API call.",
"tags" : [ "OrgsManagement" ],
"description" : "To read, get, a collection of orgs i.e. all orgs.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/OrgSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllOrgs",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllOrgs",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllOrgs",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllOrgs",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/orgs/{sourcedId}" : {
"get" : {
"operationId" : "getOrg",
"summary" : "The REST read request message for the getOrg() API call.",
"tags" : [ "OrgsManagement" ],
"description" : "To read, get, a specific org. If the specified org cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this org.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleOrgDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools" : {
"get" : {
"operationId" : "getAllSchools",
"summary" : "The REST read request message for the getAllSchools() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, a collection of schools i.e. all schools.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/OrgSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllSchools",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllSchools",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllSchools",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllSchools",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools/{schoolSourcedId}/classes" : {
"get" : {
"operationId" : "getClassesForSchool",
"summary" : "The REST read request message for the getClassesForSchool() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, the collection of classes associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "schoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific school.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ClassSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getClassesForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getClassesForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getClassesForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getClassesForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools/{schoolSourcedId}/classes/{classSourcedId}/enrollments" : {
"get" : {
"operationId" : "getEnrollmentsForClassInSchool",
"summary" : "The REST read request message for the getEnrollmentsForClassInSchool() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, the collection of enrollments associated with a specific class at a specific school. If the specified school and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "schoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the school.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "normal",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/EnrollmentSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getEnrollmentsForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getEnrollmentsForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getEnrollmentsForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getEnrollmentsForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools/{schoolSourcedId}/classes/{classSourcedId}/students" : {
"get" : {
"operationId" : "getStudentsForClassInSchool",
"summary" : "The REST read request message for the getStudentsForClassInSchool() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, the collection of students associated with a specific class at a specific school. If the specified school and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "schoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific school.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getStudentsForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getStudentsForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getStudentsForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getStudentsForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools/{schoolSourcedId}/classes/{classSourcedId}/teachers" : {
"get" : {
"operationId" : "getTeachersForClassInSchool",
"summary" : "The REST read request message for the getTeachersForClassInSchool() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, the collection of teachers associated with a specific class at a specific school. If the specified school and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "schoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific school.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getTeachersForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getTeachersForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getTeachersForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getTeachersForClassInSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools/{schoolSourcedId}/courses" : {
"get" : {
"operationId" : "getCoursesForSchool",
"summary" : "The REST read request message for the getCoursesForSchool() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, the collection of courses associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "schoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the school.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/CourseSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getCoursesForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getCoursesForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getCoursesForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getCoursesForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools/{schoolSourcedId}/enrollments" : {
"get" : {
"operationId" : "getEnrollmentsForSchool",
"summary" : "The REST read request message for the getEnrollmentsForSchool() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, the collection of enrollments associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "schoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific school.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "normal",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/EnrollmentSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getEnrollmentsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getEnrollmentsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getEnrollmentsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getEnrollmentsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools/{schoolSourcedId}/students" : {
"get" : {
"operationId" : "getStudentsForSchool",
"summary" : "The REST read request message for the getStudentsForSchool() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, the collection of students associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "schoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific school.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getStudentsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getStudentsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getStudentsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getStudentsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools/{schoolSourcedId}/teachers" : {
"get" : {
"operationId" : "getTeachersForSchool",
"summary" : "The REST read request message for the getTeachersForSchool() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, the collection of teachers associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "schoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific school.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getTeachersForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getTeachersForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getTeachersForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getTeachersForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools/{schoolSourcedId}/terms" : {
"get" : {
"operationId" : "getTermsForSchool",
"summary" : "The REST read request message for the getTermsForSchool() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, the collection of terms associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "schoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific school.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/AcademicSessionSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getTermsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getTermsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getTermsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getTermsForSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/schools/{sourcedId}" : {
"get" : {
"operationId" : "getSchool",
"summary" : "The REST read request message for the getSchool() API call.",
"tags" : [ "SchoolsManagement" ],
"description" : "To read, get, a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this school.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleOrgDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/students" : {
"get" : {
"operationId" : "getAllStudents",
"summary" : "The REST read request message for the getAllStudents() API call.",
"tags" : [ "StudentsManagement" ],
"description" : "To read, get, a collection of students i.e. all students.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllStudents",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllStudents",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllStudents",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllStudents",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/students/{sourcedId}" : {
"get" : {
"operationId" : "getStudent",
"summary" : "The REST read request message for the getStudent() API call.",
"tags" : [ "StudentsManagement" ],
"description" : "To read, get, a specific student. If the specified student cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this student.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleUserDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/students/{studentSourcedId}/classes" : {
"get" : {
"operationId" : "getClassesForStudent",
"summary" : "The REST read request message for the getClassesForStudent() API call.",
"tags" : [ "StudentsManagement" ],
"description" : "To get the set of classes related to a specific student. If the specified student cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "studentSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific student.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ClassSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getClassesForStudent",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getClassesForStudent",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getClassesForStudent",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getClassesForStudent",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/teachers" : {
"get" : {
"operationId" : "getAllTeachers",
"summary" : "The REST read request message for the getAllTeachers() API call.",
"tags" : [ "TeachersManagement" ],
"description" : "To read, get, a collection of teachers i.e. all teachers.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllTeachers",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllTeachers",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllTeachers",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllTeachers",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/teachers/{sourcedId}" : {
"get" : {
"operationId" : "getTeacher",
"summary" : "The REST read request message for the getTeacher() API call.",
"tags" : [ "TeachersManagement" ],
"description" : "To read, get, a specific teacher. If the specified teacher cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this teacher.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleUserDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/teachers/{teacherSourcedId}/classes" : {
"get" : {
"operationId" : "getClassesForTeacher",
"summary" : "The REST read request message for the getClassesForTeacher() API call.",
"tags" : [ "TeachersManagement" ],
"description" : "To get the set of classes related to a specific teacher. If the specified teacher cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "teacherSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific teacher.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ClassSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getClassesForTeacher",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getClassesForTeacher",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getClassesForTeacher",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getClassesForTeacher",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/terms" : {
"get" : {
"operationId" : "getAllTerms",
"summary" : "The REST read request message for the getAllTerms() API call.",
"tags" : [ "TermsManagement" ],
"description" : "To read, get, a collection of terms i.e. all terms.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/AcademicSessionSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllTerms",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllTerms",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllTerms",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllTerms",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/terms/{sourcedId}" : {
"get" : {
"operationId" : "getTerm",
"summary" : "The REST read request message for the getTerm() API call.",
"tags" : [ "TermsManagement" ],
"description" : "To read, get, a specific term. If the specified term cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this term.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleAcademicSessionDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/terms/{termSourcedId}/classes" : {
"get" : {
"operationId" : "getClassesForTerm",
"summary" : "The REST read request message for the getClassesForTerm() API call.",
"tags" : [ "TermsManagement" ],
"description" : "To get the set of classes related to a specific term. If the specified term cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "termSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific term.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ClassSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getClassesForTerm",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getClassesForTerm",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getClassesForTerm",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getClassesForTerm",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/terms/{termSourcedId}/gradingPeriods" : {
"get" : {
"operationId" : "getGradingPeriodsForTerm",
"summary" : "The REST read request message for the getGradingPeriodsForTerm() API call.",
"tags" : [ "TermsManagement" ],
"description" : "To get the set of grading periods related to a specific term. If the specified term cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "termSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific term.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/AcademicSessionSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getGradingPeriodsForTerm",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getGradingPeriodsForTerm",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getGradingPeriodsForTerm",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getGradingPeriodsForTerm",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/users" : {
"get" : {
"operationId" : "getAllUsers",
"summary" : "The REST read request message for the getAllUsers() API call.",
"tags" : [ "UsersManagement" ],
"description" : "To read, get, a collection of users i.e. all users (including students and teachers).",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllUsers",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllUsers",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllUsers",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllUsers",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/users/{sourcedId}" : {
"get" : {
"operationId" : "getUser",
"summary" : "The REST read request message for the getUser() API call.",
"tags" : [ "UsersManagement" ],
"description" : "To read, get, a specific user. If the specified user cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this user.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"x-1edtech-confidentiality" : "restricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleUserDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/users/{userSourcedId}/classes" : {
"get" : {
"operationId" : "getClassesForUser",
"summary" : "The REST read request message for the getClassesForUser() API call.",
"tags" : [ "UsersManagement" ],
"description" : "To get the set of classes related to a specific user. If the specified user cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "userSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specific user.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"x-1edtech-confidentiality" : "unrestricted",
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ClassSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getClassesForUser",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getClassesForUser",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getClassesForUser",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getClassesForUser",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools" : {
"get" : {
"operationId" : "getAllAfterSchools",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getAllAfterSchools() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, a collection of after-school activities i.e. all orgs of type 'after-school'.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/OrgSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllAfterSchools",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllAfterSchools",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllAfterSchools",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllAfterSchools",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/academicsessions" : {
"get" : {
"operationId" : "getAcademicSessionSetForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getAcademicSessionSetForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the collection of academic sessions for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/AcademicSessionSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAcademicSessionSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAcademicSessionSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAcademicSessionSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAcademicSessionSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/academicsessions/{academicSessionSourcedId}" : {
"get" : {
"operationId" : "getAcademicSessionForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getAcademicSessionForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the specific academic session for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "academicSessionSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified academicSession.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleAcademicSessionDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/classes" : {
"get" : {
"operationId" : "getClassSetForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getClassSetForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the collection of classes for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ClassSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getClassSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getClassSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getClassSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getClassSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/classes/{classSourcedId}" : {
"get" : {
"operationId" : "getClassForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getClassForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the specific class for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleClassDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/classes/{classSourcedId}/students" : {
"get" : {
"operationId" : "getStudentSetForClassInAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getStudentSetForClassInAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the collection of students for specific after-school activity and class. If the specified after-school activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getStudentSetForClassInAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getStudentSetForClassInAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getStudentSetForClassInAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getStudentSetForClassInAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/classes/{classSourcedId}/teachers" : {
"get" : {
"operationId" : "getTeacherSetForClassInAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getTeacherSetForClassInAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the collection of teachers for specific after-school activity and class. If the specified after-school activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getTeacherSetForClassInAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getTeacherSetForClassInAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getTeacherSetForClassInAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getTeacherSetForClassInAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/enrollments" : {
"get" : {
"operationId" : "getEnrollmentSetForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getEnrollmentSetForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the collection of enrollments for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/EnrollmentSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getEnrollmentSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getEnrollmentSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getEnrollmentSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getEnrollmentSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/enrollments/{enrollmentSourcedId}" : {
"get" : {
"operationId" : "getEnrollmentForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getEnrollmentForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the specific enrollment for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "enrollmentSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified enrollment.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleEnrollmentDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/students" : {
"get" : {
"operationId" : "getStudentSetForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getStudentSetForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the collection of students for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getStudentSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getStudentSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getStudentSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getStudentSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/students/{studentSourcedId}" : {
"get" : {
"operationId" : "getStudentForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getStudentForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the specific student for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "studentSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified student.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleUserDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/teachers" : {
"get" : {
"operationId" : "getTeacherSetForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getTeacherSetForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the collection of teachers for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getTeacherSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getTeacherSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getTeacherSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getTeacherSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/teachers/{teacherSourcedId}" : {
"get" : {
"operationId" : "getTeacherForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getTeacherForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the specific teacher for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "teacherSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified teacher.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleUserDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/users" : {
"get" : {
"operationId" : "getUserSetForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getUserSetForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the collection of users for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getUserSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getUserSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getUserSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getUserSetForAfterSchool",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{afterschoolSourcedId}/users/{userSourcedId}" : {
"get" : {
"operationId" : "getUserForAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getUserForAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, the specific user for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "afterschoolSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "userSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified user.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleUserDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/afterschools/{sourcedId}" : {
"get" : {
"operationId" : "getAfterSchool",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getAfterSchool() API call.",
"tags" : [ "AfterSchoolsManagement" ],
"description" : "To read, get, a specific after-school activity. If the specified after-school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this after-school activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleOrgDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares" : {
"get" : {
"operationId" : "getAllChildcares",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getAllChildcares() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, a collection of child care activities i.e. all orgs of type 'child care'.",
"parameters" : [
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/OrgSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAllChildcares",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAllChildcares",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAllChildcares",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAllChildcares",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/academicsessions" : {
"get" : {
"operationId" : "getAcademicSessionSetForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getAcademicSessionSetForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the collection of academic sessions for specific childCare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/AcademicSessionSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getAcademicSessionSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getAcademicSessionSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getAcademicSessionSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getAcademicSessionSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/academicsessions/{academicSessionSourcedId}" : {
"get" : {
"operationId" : "getAcademicSessionForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getAcademicSessionForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the specific academic session for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "academicSessionSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified academicSession.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleAcademicSessionDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/classes" : {
"get" : {
"operationId" : "getClassSetForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getClassSetForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the collection of classes for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ClassSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getClassSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getClassSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getClassSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getClassSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/classes/{classSourcedId}" : {
"get" : {
"operationId" : "getClassForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getClassForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the specific class for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleClassDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/classes/{classSourcedId}/students" : {
"get" : {
"operationId" : "getStudentSetForClassInChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getStudentSetForClassInChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the collection of students for specific childcare activity and class. If the specified childcare activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getStudentSetForClassInChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getStudentSetForClassInChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getStudentSetForClassInChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getStudentSetForClassInChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/classes/{classSourcedId}/teachers" : {
"get" : {
"operationId" : "getTeacherSetForClassInChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getTeacherSetForClassInChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the collection of teachers for specific childcare activity and class. If the specified childcare activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "classSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified class.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getTeacherSetForClassInChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getTeacherSetForClassInChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getTeacherSetForClassInChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getTeacherSetForClassInChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/enrollments" : {
"get" : {
"operationId" : "getEnrollmentSetForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getEnrollmentSetForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the collection of enrollments for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/EnrollmentSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getEnrollmentSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getEnrollmentSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getEnrollmentSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getEnrollmentSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/enrollments/{enrollmentSourcedId}" : {
"get" : {
"operationId" : "getEnrollmentForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getEnrollmentForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the specific enrollment for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "enrollmentSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified enrollment.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleEnrollmentDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/students" : {
"get" : {
"operationId" : "getStudentSetForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getStudentSetForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the collection of students for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getStudentSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getStudentSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getStudentSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getStudentSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/students/{studentSourcedId}" : {
"get" : {
"operationId" : "getStudentForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getStudentForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the specific student for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "studentSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified student.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleUserDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/teachers" : {
"get" : {
"operationId" : "getTeacherSetForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getTeacherSetForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the collection of teachers for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getTeacherSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getTeacherSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getTeacherSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getTeacherSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/teachers/{teacherSourcedId}" : {
"get" : {
"operationId" : "getTeacherForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getTeacherForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the specific teacher for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "teacherSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified teacher.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleUserDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/users" : {
"get" : {
"operationId" : "getUserSetForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getUserSetForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the collection of users for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "limit",
"in" : "query",
"description" : "To define the download segmentation value i.e. the maximum number of records to be contained in the response.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 100,
"minimum" : 1
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "offset",
"in" : "query",
"description" : "The number of the first record to be supplied in the segmented response message.",
"required" : false,
"schema" : {
"type" : "integer",
"format" : "int32",
"default" : 0,
"minimum" : 0
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "sort",
"in" : "query",
"description" : "Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "orderBy",
"in" : "query",
"description" : "The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string",
"enum" : [ "asc","desc" ]
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "filter",
"in" : "query",
"description" : "The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.",
"required" : false,
"schema" : {
"type" : "string"
},
"style" : "form",
"allowEmptyValue" : false
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/UserSetDType"
}
}
},
"headers" : {
"X-Total-Count" : {
"description" : "The total number of resources that are available to be returned",
"schema" : {
"type" : "integer"
}
}
},
"links" : {
"next" : {
"description" : "Get the next set of resources i.e. from offset to offset+limit",
"operationId" : "getUserSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"last" : {
"description" : "Get the last set of resources i.e. from offset to end",
"operationId" : "getUserSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"first" : {
"description" : "Get the first set of resources i.e. from first to limit",
"operationId" : "getUserSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
},
"prev" : {
"description" : "Get the previous set of resources i.e. from last_offset to last_offset+limit",
"operationId" : "getUserSetForChildcare",
"parameters" : {
"limit" : "$request.path.limit",
"offset" : "$request.path.offset"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{childcareSourcedId}/users/{userSourcedId}" : {
"get" : {
"operationId" : "getUserForChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getUserForChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, the specific user for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "childcareSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified childcare activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "userSourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for the specified user.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleUserDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
},
"/childcares/{sourcedId}" : {
"get" : {
"operationId" : "getChildcare",
"summary" : "NEW in the [ NorwegianK-12 ] Profile: The REST read request message for the getChildcare() API call.",
"tags" : [ "ChildcaresManagement" ],
"description" : "To read, get, a specific child care activity. If the specified child care activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.",
"parameters" : [
{
"name" : "sourcedId",
"in" : "path",
"description" : "The unique identifier, GUID, for this child care activity.",
"required" : true,
"schema" : {
"type" : "string"
},
"style" : "simple"
},
{
"name" : "fields",
"in" : "query",
"description" : "To identify the range of fields that should be supplied in the response message.",
"required" : false,
"schema" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"style" : "form",
"allowEmptyValue" : false
}
],
"security" : [
{
"OAuth2CC" : [
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly"
]
}
],
"responses" : {
"default" : {
"description" : "This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"200" : {
"description" : "The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/SingleOrgDType"
}
}
}
},
"400" : {
"description" : "Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"401" : {
"description" : "The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"403" : {
"description" : "This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"404" : {
"description" : "Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"405" : {
"description" : "This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"422" : {
"description" : "This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"429" : {
"description" : "The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
},
"500" : {
"description" : "This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/imsx_StatusInfoDType"
}
}
}
}
}
}
}
},
"components" : {
"securitySchemes" : {
"OAuth2CC" : {
"type" : "oauth2",
"description" : "OAuth 2 Client Credentials (as per the requirements in the IMS Security Framework) is to be used.",
"flows" : {
"clientCredentials" : {
"tokenUrl" : "https://www.imsglobal.org",
"scopes" : {
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly" : "Support for all of the read operations (excluding demographics) to enable information about collections or a single object to be obtained.",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly" : "The core set of read operations to enable information about collections or a single object to be obtained.",
"https://purl.imsglobal.org/spec/or/v1p2/scope/roster-demographics.readonly" : "The read operations to provide all demographics or a single demographics object to be obtained."
}
}
}
}
},
"schemas" : {
"AcadSessionGUIDRefDType" : {
"description" : "This is the container for reference to a OneRoster 'Academic Session' object that has an allocated sourcedId (GUID).",
"type" : "object",
"properties" : {
"href" : {
"description" : "Model Primitive Datatype = AnyURI. The URI for the type of object being referenced.",
"type" : "string",
"format" : "uri"
},
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The globally unique identifier of the object being referenced.",
"type" : "string"
},
"type" : {
"description" : "The type of object being referenced i.e. an 'academicSession'.",
"type" : "string",
"enum" : [ "academicSession" ]
}
},
"required" : [ "href","sourcedId","type" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"AcademicSessionDType" : {
"description" : "The container for an academicSession. An academicSession represents a duration of time. Typically they are used to describe terms, grading periods, and other durations e.g. school years. Term is used to describe a period of time during which learning will take place. Other words for term could be in common use around the world e.g. Semester. The important thing is that Term is a unit of time, often many weeks long, into which classes are scheduled. Grading Period is used to represent another unit of time, that within which line items are assessed. A term may have many grading periods, a grading period belongs to a single term. A class may be assessed over several grade periods (represented by a line item being connected to a grading period). The parent / child attributes of academic sessions allow terms to be connected to their grading periods and vice-versa. ",
"type" : "object",
"properties" : {
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general.",
"type" : "string"
},
"status" : {
"description" : "All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.",
"type" : "string",
"enum" : [ "active","tobedeleted" ]
},
"dateLastModified" : {
"description" : "Model Primitive Datatype = DateTime. All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601].",
"type" : "string",
"format" : "date-time"
},
"title" : {
"description" : "Model Primitive Datatype = NormalizedString. The title/label for the academic session.",
"type" : "string"
},
"startDate" : {
"description" : "Model Primitive Datatype = Date. The start date for the academic session. The start date is included in the academic session. This is in [ISO 8601] format of 'YYYY-MM-DD'.",
"type" : "string",
"format" : "date"
},
"endDate" : {
"description" : "Model Primitive Datatype = Date. The end date for the academic session. The end date is excluded from the academic session. This is in [ISO 8601] format of 'YYYY-MM-DD'.",
"type" : "string",
"format" : "date"
},
"type" : {
"description" : "The type of academic session. This is based upon an enumerated vocabulary.",
"anyOf" : [
{
"type" : "string",
"enum" : [ "gradingPeriod","semester","schoolYear","term" ]
},
{
"description" : "Model Primitive Datatype = NormalizedString.",
"type" : "string",
"pattern" : "(ext:)[a-zA-Z0-9\\.\\-_]+"
}
]
},
"parent" : {
"$ref" : "#/components/schemas/AcadSessionGUIDRefDType"
},
"children" : {
"description" : "The set of links to the child AcademicSessions i.e. a set of AcademicSession 'sourcedIds'.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/AcadSessionGUIDRefDType"
}
},
"schoolYear" : {
"description" : "Model Primitive Datatype = NormalizedString. The school year for the academic session. This year should include the school year end e.g. 2014. This is in the [ISO 8601] format of 'YYYY'.",
"type" : "string"
},
"metadata" : {
"$ref" : "#/components/schemas/MetadataGeneralDType"
}
},
"required" : [ "sourcedId","status","dateLastModified","title","startDate","endDate","type","schoolYear" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"AcademicSessionSetDType" : {
"description" : "This is the container for a collection of academicSessions instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.",
"type" : "object",
"properties" : {
"academicSessions" : {
"description" : "The collection of academicSession instances. The order is not significant. The corresponding query constraints may result in no instances being returned.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/AcademicSessionDType"
}
}
},
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"ClassDType" : {
"description" : "A class is an instance of a course, onto which students and teachers are enrolled. A class is typically held within a term.",
"type" : "object",
"properties" : {
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general.",
"type" : "string"
},
"status" : {
"description" : "All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.",
"type" : "string",
"enum" : [ "active","tobedeleted" ]
},
"dateLastModified" : {
"description" : "Model Primitive Datatype = DateTime. All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601].",
"type" : "string",
"format" : "date-time"
},
"title" : {
"description" : "Model Primitive Datatype = NormalizedString. The tile/label for the class.",
"type" : "string"
},
"classCode" : {
"description" : "Model Primitive Datatype = NormalizedString. The class code.",
"type" : "string"
},
"classType" : {
"description" : "The type of class. This is based upon an enumerated vocabulary.",
"anyOf" : [
{
"type" : "string",
"enum" : [ "homeroom","scheduled","ext:nationalTestsGroup","ext:specialEducation","ext:grepGroup","ext:contactTeacherGroup" ]
},
{
"description" : "Model Primitive Datatype = NormalizedString.",
"type" : "string",
"pattern" : "(ext:)[a-zA-Z0-9\\.\\-_]+"
}
]
},
"location" : {
"description" : "Model Primitive Datatype = NormalizedString. The location for the class e.g. 'Room 19'.",
"type" : "string"
},
"grades" : {
"description" : "Model Primitive Datatype = NormalizedString. The grade(s) who attend the class. The permitted vocabulary should be defined as part of the adoption and deployment process. See the Implementation Guide [OR-IMPL-12] for more details on how to define/use such a vocabulary.",
"type" : "array",
"minItems" : 0,
"items" : {
"type" : "string"
}
},
"subjects" : {
"description" : "Model Primitive Datatype = NormalizedString. The set of subjects addressed by this class e.g. 'chemistry'.",
"type" : "array",
"minItems" : 0,
"items" : {
"type" : "string"
}
},
"course" : {
"$ref" : "#/components/schemas/CourseGUIDRefDType"
},
"school" : {
"$ref" : "#/components/schemas/OrgGUIDRefDType"
},
"terms" : {
"description" : "The links to the set of terms or semesters (academicSession) i.e. the set of 'sourcedIds' for the terms within the associated school year.",
"type" : "array",
"minItems" : 1,
"items" : {
"$ref" : "#/components/schemas/AcadSessionGUIDRefDType"
}
},
"subjectCodes" : {
"description" : "Model Primitive Datatype = NormalizedString. This is a machine readable set of codes and the number should match the associated 'subjects' attribute. The vocabulary for this characteristic should be defined as part of the local addition of this specification (see the Implementation Guide [OR-IMPL-12] for more details).",
"type" : "array",
"minItems" : 0,
"items" : {
"type" : "string"
}
},
"periods" : {
"description" : "Model Primitive Datatype = NormalizedString. The time slots in the day that the class will be given. Examples are 1 or a list of 1, 3, 5, etc.",
"type" : "array",
"minItems" : 0,
"items" : {
"type" : "string"
}
},
"resources" : {
"description" : "The links to the set of associated resources i.e. the Resource 'sourcedIds'.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/ResourceGUIDRefDType"
}
},
"metadata" : {
"$ref" : "#/components/schemas/MetadataClassDType"
}
},
"required" : [ "sourcedId","status","dateLastModified","title","classType","course","school","terms" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"ClassGUIDRefDType" : {
"description" : "This is the container for reference to a OneRoster 'Class' object that has an allocated sourcedId (GUID).",
"type" : "object",
"properties" : {
"href" : {
"description" : "Model Primitive Datatype = AnyURI. The URI for the type of object being referenced.",
"type" : "string",
"format" : "uri"
},
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The globally unique identifier of the object being referenced.",
"type" : "string"
},
"type" : {
"description" : "The type of object being referenced i.e. a 'class'.",
"type" : "string",
"enum" : [ "class" ]
}
},
"required" : [ "href","sourcedId","type" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"ClassSetDType" : {
"description" : "This is the container for a collection of classes instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.",
"type" : "object",
"properties" : {
"classes" : {
"description" : "The collection of class instances. The order is not significant. The corresponding query constraints may result in no instances being returned.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/ClassDType"
}
}
},
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"CourseDType" : {
"description" : "The information about a course. A Course is a course of study that, typically, has a shared curriculum although it may be taught to different students by different teachers. It is likely that several classes of a single course may be taught in a term. For example, a school runs Grade 9 English in the spring term. There are four classes, each with a different 30 students, taught by 4 different teachers. However the curriculum for each of those four classes is the same i.e. the course curriculum.",
"type" : "object",
"properties" : {
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general.",
"type" : "string"
},
"status" : {
"description" : "All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.",
"type" : "string",
"enum" : [ "active","tobedeleted" ]
},
"dateLastModified" : {
"description" : "Model Primitive Datatype = DateTime. All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601].",
"type" : "string",
"format" : "date-time"
},
"title" : {
"description" : "Model Primitive Datatype = NormalizedString. The title of the course.",
"type" : "string"
},
"schoolYear" : {
"$ref" : "#/components/schemas/AcadSessionGUIDRefDType"
},
"courseCode" : {
"description" : "Model Primitive Datatype = NormalizedString. The assigned course code.",
"type" : "string"
},
"grades" : {
"description" : "Model Primitive Datatype = NormalizedString. Grade(s) for which the class is attended. The permitted vocabulary should be defined as part of the adoption and deployment process. See the Implementation Guide [OR-IMPL-12] for more details on how to define/use such a vocabulary.",
"type" : "array",
"minItems" : 0,
"items" : {
"type" : "string"
}
},
"subjects" : {
"description" : "Model Primitive Datatype = NormalizedString. The set of subjects addressed by this course. This is a set of human readable strings. ",
"type" : "array",
"minItems" : 0,
"items" : {
"type" : "string"
}
},
"org" : {
"$ref" : "#/components/schemas/OrgGUIDRefDType"
},
"subjectCodes" : {
"description" : "Model Primitive Datatype = NormalizedString. This is a machine readable set of codes and the number should match the associated 'subjects' attribute. The vocabulary for this characteristic should be defined as part of the local addition of this specification (see the Implementation Guide [OR-IMPL-12] for more details).",
"type" : "array",
"minItems" : 0,
"items" : {
"type" : "string"
}
},
"resources" : {
"description" : "The links to the associated resources if applicable i.e. the resource 'sourcedIds'.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/ResourceGUIDRefDType"
}
},
"metadata" : {
"$ref" : "#/components/schemas/MetadataCourseDType"
}
},
"required" : [ "sourcedId","status","dateLastModified","title","org" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"CourseGUIDRefDType" : {
"description" : "This is the container for reference to a OneRoster 'Course' object that has an allocated sourcedId (GUID).",
"type" : "object",
"properties" : {
"href" : {
"description" : "Model Primitive Datatype = AnyURI. The URI for the type of object being referenced.",
"type" : "string",
"format" : "uri"
},
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The globally unique identifier of the object being referenced.",
"type" : "string"
},
"type" : {
"description" : "The type of object being referenced i.e. a 'course'.",
"type" : "string",
"enum" : [ "course" ]
}
},
"required" : [ "href","sourcedId","type" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"CourseSetDType" : {
"description" : "This is the container for a collection of courses instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.",
"type" : "object",
"properties" : {
"courses" : {
"description" : "The collection of course instances. The order is not significant. The corresponding query constraints may result in no instances being returned.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/CourseDType"
}
}
},
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"CredentialDType" : {
"description" : "The container for a single set of credentials for an account.",
"type" : "object",
"properties" : {
"type" : {
"description" : "Model Primitive Datatype = String. The type of credentials for the profile. This should be indicative of when this specific credential should be used.",
"type" : "string"
},
"username" : {
"description" : "Model Primitive Datatype = NormalizedString. The username.",
"type" : "string"
},
"password" : {
"description" : "Model Primitive Datatype = String. The password in this set of credentials. Care should be taken to ensure that no unencrypted value is revealed.",
"type" : "string"
}
},
"required" : [ "type","username" ],
"x-1edtech-privacy" : [ "username","password","extensions" ],
"x-1edtech-confidentiality" : "restricted",
"x-1edtech-confidentiality-normal" : [ "username","extensions" ],
"x-1edtech-confidentiality-restricted" : [ "password" ],
"additionalProperties" : true
},
"DemographicsDType" : {
"description" : "Demographics information is taken from the Common Educational Data Standards (CEDS) from the US government (http://ceds.ed.gov). Note that demographics data is held in its own service, and that access to this service is considered privileged. Not all consumer keys will be able to request demographics data. NOTE that the sourcedId used to retrieve the demographics data MUST be the same as the sourcedId of the User i.e. the owner of the demographics data.",
"type" : "object",
"properties" : {
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general. The sourcedId used to retrieve the demographics data MUST be the same as the sourcedId of the User i.e. the owner of the demographics data.",
"type" : "string"
},
"status" : {
"description" : "All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.",
"type" : "string",
"enum" : [ "active","tobedeleted" ]
},
"dateLastModified" : {
"description" : "Model Primitive Datatype = DateTime. All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601].",
"type" : "string",
"format" : "date-time"
},
"birthDate" : {
"description" : "Model Primitive Datatype = Date. The date of birth. The format is [ISO 8601] of 'YYYY-MM-DD'.",
"type" : "string",
"format" : "date"
},
"sex" : {
"description" : "The sex of the individual. The permitted values are from an enumerated list.",
"anyOf" : [
{
"type" : "string",
"enum" : [ "male","female","unspecified","other" ]
},
{
"description" : "Model Primitive Datatype = NormalizedString.",
"type" : "string",
"pattern" : "(ext:)[a-zA-Z0-9\\.\\-_]+"
}
]
},
"metadata" : {
"$ref" : "#/components/schemas/MetadataGeneralDType"
}
},
"required" : [ "sourcedId","status","dateLastModified" ],
"x-1edtech-privacy" : [ "sourcedId","birthDate","sex","metadata" ],
"x-1edtech-confidentiality" : "veryrestricted",
"x-1edtech-confidentiality-normal" : [ "sourcedId" ],
"x-1edtech-confidentiality-veryrestricted" : [ "birthDate","sex" ],
"additionalProperties" : false
},
"DemographicsSetDType" : {
"description" : "This is the container for a collection of demographics instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.",
"type" : "object",
"properties" : {
"demographics" : {
"description" : "The collection of demographics instances. The order is not significant. The corresponding query constraints may result in no instances being returned.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/DemographicsDType"
}
}
},
"x-1edtech-privacy" : [ "demographics" ],
"x-1edtech-confidentiality" : "veryrestricted",
"x-1edtech-confidentiality-veryrestricted" : [ "demographics" ],
"additionalProperties" : false
},
"EnrollmentDType" : {
"description" : "An enrollment is the name given to an individual taking part in a class. In the vast majority of cases, users will be students learning in a class, or teachers teaching the class. Other roles are also possible.",
"type" : "object",
"properties" : {
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general.",
"type" : "string"
},
"status" : {
"description" : "All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.",
"type" : "string",
"enum" : [ "active","tobedeleted" ]
},
"dateLastModified" : {
"description" : "Model Primitive Datatype = DateTime. All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601].",
"type" : "string",
"format" : "date-time"
},
"user" : {
"$ref" : "#/components/schemas/UserGUIDRefDType"
},
"class" : {
"$ref" : "#/components/schemas/ClassGUIDRefDType"
},
"school" : {
"$ref" : "#/components/schemas/OrgGUIDRefDType"
},
"role" : {
"description" : "The role of the user for this class in the school e.g teacher, student, etc. This is from an enumerated vocabulary.",
"anyOf" : [
{
"type" : "string",
"enum" : [ "administrator","student","teacher","ext:aide","ext:contactTeacher" ]
},
{
"description" : "Model Primitive Datatype = NormalizedString.",
"type" : "string",
"pattern" : "(ext:)[a-zA-Z0-9\\.\\-_]+"
}
]
},
"primary" : {
"description" : "Applicable only to teachers. Only one teacher should be designated as the primary teacher for a class (this value set as 'true') in the period defined by the begin/end dates.",
"type" : "string",
"enum" : [ "false","true" ]
},
"beginDate" : {
"description" : "Model Primitive Datatype = Date. The start date for the enrollment (inclusive). This date must be within the period of the associated Academic Session for the class (Term/Semester/SchoolYear). Use the [ISO 8601] format of 'YYYY-MM-DD'.",
"type" : "string",
"format" : "date"
},
"endDate" : {
"description" : "Model Primitive Datatype = Date. The end date for the enrollment (exclusive). This date must be within the period of the associated Academic Session for the class (Term/Semester/SchoolYear). Use the [ISO 8601] format of 'YYYY-MM-DD'.",
"type" : "string",
"format" : "date"
},
"metadata" : {
"$ref" : "#/components/schemas/MetadataEnrollmentDType"
}
},
"required" : [ "sourcedId","status","dateLastModified","user","class","school","role" ],
"x-1edtech-privacy" : [ "user","role","metadata" ],
"x-1edtech-confidentiality" : "normal",
"x-1edtech-confidentiality-normal" : [ "user","role" ],
"additionalProperties" : false
},
"EnrollmentSetDType" : {
"description" : "This is the container for a collection of enrollment instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.",
"type" : "object",
"properties" : {
"enrollments" : {
"description" : "The collection of enrollment instances. The order is not significant. The corresponding query constraints may result in no instances being returned.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/EnrollmentDType"
}
}
},
"x-1edtech-privacy" : [ "enrollments" ],
"x-1edtech-confidentiality" : "normal",
"x-1edtech-confidentiality-normal" : [ "enrollments" ],
"additionalProperties" : false
},
"MetadataClassDType" : {
"description" : "The container for the proprietary extensions in the Class class.",
"type" : "object",
"properties" : {
"1edtech.language" : {
"description" : "Model Primitive Datatype = Language. An extension that is used to contain identification of the default language for the content being supplied.",
"type" : "string"
},
"1edtech.subjectCodes" : {
"description" : "The existing OneRoster 1.2 subjectCodes property, available as optional on Class, is deprecated in this profile. This means that it remains available for use to achieve backwards compatibility, but that the new metadata 1edtech.subjectCodes property is the preferred mechanism for relaying subject code information. ",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/SubjectCodesDType"
}
},
"1edtech.grepGroups" : {
"description" : "This is an extension property used to contain the definitions of the associated set of Grep Groups.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/GrepGroupsDType"
}
}
},
"x-1edtech-privacy" : [ "extensions" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : true
},
"MetadataCourseDType" : {
"description" : "The container for the proprietary extensions in the Course class.",
"type" : "object",
"properties" : {
"1edtech.language" : {
"description" : "Model Primitive Datatype = Language. An extension that is used to contain identification of the default language for the content being supplied.",
"type" : "string"
},
"1edtech.subjectCodes" : {
"description" : "The existing OneRoster 1.2 subjectCodes property, available as optional on Course, is deprecated in this profile. This means that it remains available for use to achieve backwards compatibility, but that the new metadata 1edtech.subjectCodes property is the preferred mechanism for relaying subject code information. ",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/SubjectCodesDType"
}
}
},
"x-1edtech-privacy" : [ "extensions" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : true
},
"MetadataEnrollmentDType" : {
"description" : "The container for the proprietary extensions in the Enrollment class.",
"type" : "object",
"properties" : {
"1edtech.language" : {
"description" : "Model Primitive Datatype = Language. An extension that is used to contain identification of the default language for the content being supplied.",
"type" : "string"
}
},
"x-1edtech-privacy" : [ "extensions" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : true
},
"MetadataGeneralDType" : {
"description" : "The container for the proprietary extensions.",
"type" : "object",
"properties" : {
"1edtech.language" : {
"description" : "Model Primitive Datatype = Language. An extension that is used to contain identification of the default language for the content being supplied.",
"type" : "string"
}
},
"x-1edtech-privacy" : [ "extensions" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : true
},
"MetadataOrgDType" : {
"description" : "The container for the proprietary extensions for the Org class.",
"type" : "object",
"properties" : {
"1edtech.language" : {
"description" : "Model Primitive Datatype = Language. An extension that is used to contain identification of the default language for the content being supplied.",
"type" : "string"
},
"1edtech.schoolVIGOID" : {
"description" : "Model Primitive Datatype = NormalizedString. This is an extension that is used to contain the VIGO identifier for the school. This is ONLY used when the associated type of 'org' is a school.",
"type" : "string"
},
"1edtech.schoolPASCode" : {
"description" : "Model Primitive Datatype = NormalizedString. This is an extension that is used to contain the PAS code for the school. This is ONLY used when the associated type of 'org' is a school.",
"type" : "string"
},
"1edtech.schoolType" : {
"description" : "This is an extension that is used to contain further definition of the type of school. This is ONLY used when the associated type of 'org' is a school.",
"type" : "string",
"enum" : [ "primarySchool","lowerSecondarySchool","upperSecondarySchool","adultEducation","vocationalSchool","homeEducation","primaryAndLowerSecondarySchool","kindergarten","lowerSecondaryAndUpperSecondarySchool" ]
}
},
"x-1edtech-privacy" : [ "extensions" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : true
},
"MetadataUserDType" : {
"description" : "The container for the proprietary extensions in the User class.",
"type" : "object",
"properties" : {
"1edtech.language" : {
"description" : "Model Primitive Datatype = Language. An extension that is used to contain identification of the default language for the content being supplied.",
"type" : "string"
}
},
"x-1edtech-privacy" : [ "extensions" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : true
},
"OrgDType" : {
"description" : "ORG is defined here as a structure for holding organizational information. An ORG might be a school, or it might be a local, statewide, or national entity. ORGs will typically have a parent ORG (up to the national level), and children, allowing a hierarchy to be established. School is defined here as the place where the learning happens. Most commonly this is the data that describes a bricks and mortar building, or, in the case of a virtual school, the virtual school organization. For enrollment and result reporting purposes, little information about this organization is required. A common example of a local organization is a school district.",
"type" : "object",
"properties" : {
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general.",
"type" : "string"
},
"status" : {
"description" : "All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.",
"type" : "string",
"enum" : [ "active","tobedeleted" ]
},
"dateLastModified" : {
"description" : "Model Primitive Datatype = DateTime. All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601].",
"type" : "string",
"format" : "date-time"
},
"name" : {
"description" : "Model Primitive Datatype = NormalizedString. The name of the organization.",
"type" : "string"
},
"type" : {
"description" : "The type of organization. This uses a predefined vocabulary.",
"anyOf" : [
{
"type" : "string",
"enum" : [ "department","district","school","ext:afterSchool","ext:childCare","ext:counsellingService","ext:county","ext:municipality","ext:privateOwner" ]
},
{
"description" : "Model Primitive Datatype = NormalizedString.",
"type" : "string",
"pattern" : "(ext:)[a-zA-Z0-9\\.\\-_]+"
}
]
},
"identifier" : {
"description" : "Model Primitive Datatype = String. Human readable identifier for this org e.g. NCES ID.",
"type" : "string"
},
"parent" : {
"$ref" : "#/components/schemas/OrgGUIDRefDType"
},
"children" : {
"description" : "The 'sourcedIds' for the set of child organizations.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/OrgGUIDRefDType"
}
},
"metadata" : {
"$ref" : "#/components/schemas/MetadataOrgDType"
}
},
"required" : [ "sourcedId","status","dateLastModified","name","type" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"OrgGUIDRefDType" : {
"description" : "This is the container for reference to a OneRoster 'Org' object that has an allocated sourcedId (GUID).",
"type" : "object",
"properties" : {
"href" : {
"description" : "Model Primitive Datatype = AnyURI. The URI for the type of object being referenced.",
"type" : "string",
"format" : "uri"
},
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The globally unique identifier of the object being referenced.",
"type" : "string"
},
"type" : {
"description" : "The type of object being referenced i.e. an 'org'.",
"type" : "string",
"enum" : [ "org" ]
}
},
"required" : [ "href","sourcedId","type" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"OrgSetDType" : {
"description" : "This is the container for a collection of org instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.",
"type" : "object",
"properties" : {
"orgs" : {
"description" : "The collection of org instances. The order is not significant. The corresponding query constraints may result in no instances being returned.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/OrgDType"
}
}
},
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"ResourceGUIDRefDType" : {
"description" : "This is the container for reference to a OneRoster 'Resource' object that has an allocated sourcedId (GUID).",
"type" : "object",
"properties" : {
"href" : {
"description" : "Model Primitive Datatype = AnyURI. The URI for the type of object being referenced.",
"type" : "string",
"format" : "uri"
},
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The globally unique identifier of the object being referenced.",
"type" : "string"
},
"type" : {
"description" : "The type of object being referenced i.e. a 'resource'.",
"type" : "string",
"enum" : [ "resource" ]
}
},
"required" : [ "href","sourcedId","type" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"RoleDType" : {
"description" : "The container for one mapping between a role and an org for the user.",
"type" : "object",
"properties" : {
"roleType" : {
"description" : "Indicates if this role is the primary or secondary role for that org. There MUST be one, and only one, primary role for each org.",
"type" : "string",
"enum" : [ "primary","secondary" ]
},
"role" : {
"description" : "The role of the user in the org. The permitted values are from an enumerated list. ",
"anyOf" : [
{
"type" : "string",
"enum" : [ "aide","counselor","districtAdministrator","principal","siteAdministrator","student","systemAdministrator","teacher","ext:staff","ext:primaryGuardian","ext:ownerRepesentative","ext:responsibleCaregiver" ]
},
{
"description" : "Model Primitive Datatype = NormalizedString.",
"type" : "string",
"pattern" : "(ext:)[a-zA-Z0-9\\.\\-_]+"
}
]
},
"org" : {
"$ref" : "#/components/schemas/OrgGUIDRefDType"
},
"userProfile" : {
"description" : "Model Primitive Datatype = AnyURI. The identifier for the system/tool/app access account that is relevant to this role in the org. The equivalent UserProfile should exist with a 'profileId' equal to this identifier value.",
"type" : "string",
"format" : "uri"
},
"beginDate" : {
"description" : "Model Primitive Datatype = Date. The start date on which the role becomes active (inclusive). ",
"type" : "string",
"format" : "date"
},
"endDate" : {
"description" : "Model Primitive Datatype = Date. The end date on which the role becomes inactive (exclusive). ",
"type" : "string",
"format" : "date"
}
},
"required" : [ "roleType","role","org" ],
"x-1edtech-privacy" : [ "role","userProfile" ],
"x-1edtech-confidentiality" : "restricted",
"x-1edtech-confidentiality-normal" : [ "role" ],
"x-1edtech-confidentiality-restricted" : [ "userProfile" ],
"additionalProperties" : false
},
"SingleAcademicSessionDType" : {
"description" : "This is the container for a single academicSession instance for a message payload.",
"type" : "object",
"properties" : {
"academicSession" : {
"$ref" : "#/components/schemas/AcademicSessionDType"
}
},
"required" : [ "academicSession" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"SingleClassDType" : {
"description" : "This is the container for a single class instance for a message payload.",
"type" : "object",
"properties" : {
"class" : {
"$ref" : "#/components/schemas/ClassDType"
}
},
"required" : [ "class" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"SingleCourseDType" : {
"description" : "This is the container for a single course instance for a message payload.",
"type" : "object",
"properties" : {
"course" : {
"$ref" : "#/components/schemas/CourseDType"
}
},
"required" : [ "course" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"SingleDemographicsDType" : {
"description" : "This is the container for a single demographics instance for a message payload.",
"type" : "object",
"properties" : {
"demographics" : {
"$ref" : "#/components/schemas/DemographicsDType"
}
},
"required" : [ "demographics" ],
"x-1edtech-privacy" : [ "demographics" ],
"x-1edtech-confidentiality" : "veryrestricted",
"x-1edtech-confidentiality-veryrestricted" : [ "demographics" ],
"additionalProperties" : false
},
"SingleEnrollmentDType" : {
"description" : "This is the container for a single enrollment instance for a message payload.",
"type" : "object",
"properties" : {
"enrollment" : {
"$ref" : "#/components/schemas/EnrollmentDType"
}
},
"required" : [ "enrollment" ],
"x-1edtech-privacy" : [ "enrollment" ],
"x-1edtech-confidentiality" : "normal",
"x-1edtech-confidentiality-normal" : [ "enrollment" ],
"additionalProperties" : false
},
"SingleOrgDType" : {
"description" : "This is the container for a single org instance for a message payload.",
"type" : "object",
"properties" : {
"org" : {
"$ref" : "#/components/schemas/OrgDType"
}
},
"required" : [ "org" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"SingleUserDType" : {
"description" : "This is the container for a single user instance for a message payload.",
"type" : "object",
"properties" : {
"user" : {
"$ref" : "#/components/schemas/UserDType"
}
},
"required" : [ "user" ],
"x-1edtech-privacy" : [ "user" ],
"x-1edtech-confidentiality" : "restricted",
"x-1edtech-confidentiality-restricted" : [ "user" ],
"additionalProperties" : false
},
"UserDType" : {
"description" : "Users, Teachers and Students are human beings that are teaching or studying in a class respectively. A single User class is used to represent both teachers and students and a role property is used to distinguish a user's natural role.Humans may have relationships with other humans. For example, a student may have parents. The 'agents' attribute allows for relationships between humans to be expressed. Note that these are typically from the point of view of the student - so a student will link to its parents (via the agent attribute). The reverse view MUST also be modeled, so for example, a user of role 'parent' MUST have agents that are of type 'student'. Note: Teachers MUST NOT be set as agents of students i.e. the teaching relationship is covered via enrollments. ",
"type" : "object",
"properties" : {
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general.",
"type" : "string"
},
"status" : {
"description" : "All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.",
"type" : "string",
"enum" : [ "active","tobedeleted" ]
},
"dateLastModified" : {
"description" : "Model Primitive Datatype = DateTime. All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601].",
"type" : "string",
"format" : "date-time"
},
"userMasterIdentifier" : {
"description" : "Model Primitive Datatype = NormalizedString. The master unique identifier for this user. This is NOT the same as the user's interoperability 'sourcedId'. This should be used to ensure that all of the system identifiers/accounts etc. can be reconciled to the same user. How this identifier is assigned and its format is beyond the scope of this specification.",
"type" : "string"
},
"username" : {
"description" : "Model Primitive Datatype = NormalizedString. The user name assigned to the user. NOTE - This has been kept for backwards compatibility with OneRoster 1.1 and the new 'userProfiles' characteristic SHOULD be used instead.",
"type" : "string"
},
"userIds" : {
"description" : "The set of external user identifiers that should be used for this user, if for some reason the sourcedId cannot be used. This might be an active directory id, an LTI id, or some other machine-readable identifier that is used for this person.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/UserIdDType"
}
},
"enabledUser" : {
"description" : "This is used to determine whether or not the record is active in the local system. 'false' denotes that the record is active but system access is curtailed according to the local administration rules.",
"type" : "string",
"enum" : [ "false","true" ]
},
"givenName" : {
"description" : "Model Primitive Datatype = NormalizedString. The given name. Also, known as the first name.",
"type" : "string"
},
"familyName" : {
"description" : "Model Primitive Datatype = NormalizedString. The family name. Also, known as the last name.",
"type" : "string"
},
"middleName" : {
"description" : "Model Primitive Datatype = NormalizedString. The set of middle names. If more than one middle name is needed separate using a space e.g. 'Wingarde Granville'.",
"type" : "string"
},
"preferredGivenName" : {
"description" : "Model Primitive Datatype = NormalizedString. The user's preferred given name. This attribute was added in version 1.2.",
"type" : "string"
},
"preferredMiddleName" : {
"description" : "Model Primitive Datatype = NormalizedString. The user's preferred middle name(s). This attribute was added in version 1.2.",
"type" : "string"
},
"preferredFamilyName" : {
"description" : "Model Primitive Datatype = NormalizedString. The user's preferred family name. This attribute was added in version 1.2.",
"type" : "string"
},
"pronouns" : {
"description" : "Model Primitive Datatype = NormalizedString. The pronoun(s) by which this person is referenced. Examples (in the case of English) include 'she/her/hers', 'he/him/his', 'they/them/theirs', 'ze/hir/hir', 'xe/xir', or a statement that the person's name should be used instead of any pronoun.",
"type" : "string"
},
"roles" : {
"description" : "The set of roles for each of the orgs to which the user is affiliated. This is expressed as a set of role/org tuples.",
"type" : "array",
"minItems" : 1,
"items" : {
"$ref" : "#/components/schemas/RoleDType"
}
},
"userProfiles" : {
"description" : "The set of system/app/tool profiles for the user.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/UserProfileDType"
}
},
"primaryOrg" : {
"$ref" : "#/components/schemas/OrgGUIDRefDType"
},
"email" : {
"description" : "Model Primitive Datatype = NormalizedString. The email address for the user.",
"type" : "string"
},
"sms" : {
"description" : "Model Primitive Datatype = NormalizedString. The SMS number for the user.",
"type" : "string"
},
"phone" : {
"description" : "Model Primitive Datatype = NormalizedString. The phone number for the user.",
"type" : "string"
},
"agents" : {
"description" : "The links to other people i.e. User 'sourcedIds'.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/UserGUIDRefDType"
}
},
"grades" : {
"description" : "Model Primitive Datatype = NormalizedString. Grade(s) for which a user with role 'student' is enrolled. The permitted vocabulary should be defined as part of the adoption and deployment process. See the Implementation Guide [OR-IMPL-12] for more details on how to define/use such a vocabulary.",
"type" : "array",
"minItems" : 0,
"items" : {
"type" : "string"
}
},
"resources" : {
"description" : "The identifiers (GUIDs) for the set of resources that are to be made available to the user. These are the sourcedIds that should be used for obtaining the metadata about the resources using the OR 1.2 Resources Service [OR-RES-SM-12].",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/ResourceGUIDRefDType"
}
},
"metadata" : {
"$ref" : "#/components/schemas/MetadataUserDType"
}
},
"required" : [ "sourcedId","status","dateLastModified","username","enabledUser","givenName","familyName","roles" ],
"x-1edtech-privacy" : [ "sourcedId","userMasterIdentifier","username","userIds","givenName","familyName","middleName","preferredGivenName","preferredMiddleName","preferredFamilyName","pronouns","roles","userProfiles","email","sms","phone","agents","metadata" ],
"x-1edtech-confidentiality" : "restricted",
"x-1edtech-confidentiality-normal" : [ "sourcedId","userMasterIdentifier","username","userIds","givenName","familyName","middleName","preferredGivenName","preferredMiddleName","preferredFamilyName","pronouns","email","sms","phone","agents" ],
"x-1edtech-confidentiality-restricted" : [ "roles","userProfiles" ],
"additionalProperties" : false
},
"UserGUIDRefDType" : {
"description" : "This is the container for reference to a OneRoster 'User' object that has an allocated sourcedId (GUID).",
"type" : "object",
"properties" : {
"href" : {
"description" : "Model Primitive Datatype = AnyURI. The URI for the type of object being referenced.",
"type" : "string",
"format" : "uri"
},
"sourcedId" : {
"description" : "Model Primitive Datatype = String. The globally unique identifier of the object being referenced.",
"type" : "string"
},
"type" : {
"description" : "The type of object being referenced i.e. a 'user'.",
"type" : "string",
"enum" : [ "user" ]
}
},
"required" : [ "href","sourcedId","type" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"UserIdDType" : {
"description" : "This is the set of external user identifiers that should be used for this user, if for some reason the sourcedId cannot be used. This might be an active directory id, an LTI id, or some other machine-readable identifier that is used for this person.",
"type" : "object",
"properties" : {
"type" : {
"description" : "The type of identifier. This is no predefined vocabulary. In this Profile the data-type has been changed to an enumerated vocabulary.",
"type" : "string",
"enum" : [ "feideID","UPN","personFIN","personLIN","personNIN","personNINencrypted","sisID","studentID","username","workforceID" ]
},
"identifier" : {
"description" : "Model Primitive Datatype = String. The user identifier.",
"type" : "string"
}
},
"required" : [ "type","identifier" ],
"x-1edtech-privacy" : [ "type","identifier" ],
"x-1edtech-confidentiality" : "normal",
"x-1edtech-confidentiality-normal" : [ "type","identifier" ],
"additionalProperties" : false
},
"UserProfileDType" : {
"description" : "The container for the information about a User Profile that will provide the user with access to some system, application, tool, etc.",
"type" : "object",
"properties" : {
"profileId" : {
"description" : "Model Primitive Datatype = AnyURI. The unique identifier for the profile. This does not need to be a globally unique identifier but it must be unique within the scope of the user.",
"type" : "string",
"format" : "uri"
},
"profileType" : {
"description" : "Model Primitive Datatype = NormalizedString. The type of profile. This should be a human readable label that has some significance in the context of the related system, app, tool, etc.",
"type" : "string"
},
"vendorId" : {
"description" : "Model Primitive Datatype = NormalizedString. The unique identifier for the vendor of the system, tool, app, etc. which requires the use of this profile.",
"type" : "string"
},
"applicationId" : {
"description" : "Model Primitive Datatype = NormalizedString. Identifier for the application associated with the account. The nature, and how this identifier is assigned is not defined by this specification. This may have a value of 'default' to denote this account should be used for default access to all applications related to this vendor.",
"type" : "string"
},
"description" : {
"description" : "Model Primitive Datatype = String. A human readable description of the use of the profile. This should not contain any security information for access to the account.",
"type" : "string"
},
"credentials" : {
"description" : "The set of credentials that are available for access to this profile.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/CredentialDType"
}
}
},
"required" : [ "profileId","profileType","vendorId" ],
"x-1edtech-privacy" : [ "profileId","credentials" ],
"x-1edtech-confidentiality" : "restricted",
"x-1edtech-confidentiality-normal" : [ "profileId" ],
"x-1edtech-confidentiality-restricted" : [ "credentials" ],
"additionalProperties" : false
},
"UserSetDType" : {
"description" : "This is the container for a collection of user instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.",
"type" : "object",
"properties" : {
"users" : {
"description" : "The collection of user instances. The order is not significant. The corresponding query constraints may result in no instances being returned.",
"type" : "array",
"minItems" : 0,
"items" : {
"$ref" : "#/components/schemas/UserDType"
}
}
},
"x-1edtech-privacy" : [ "users" ],
"x-1edtech-confidentiality" : "restricted",
"x-1edtech-confidentiality-restricted" : [ "users" ],
"additionalProperties" : false
},
"imsx_CodeMinorDType" : {
"description" : "This is the container for the set of code minor status codes reported in the responses from the Service Provider.",
"type" : "object",
"properties" : {
"imsx_codeMinorField" : {
"description" : "Each reported code minor status code.",
"type" : "array",
"minItems" : 1,
"items" : {
"$ref" : "#/components/schemas/imsx_CodeMinorFieldDType"
}
}
},
"required" : [ "imsx_codeMinorField" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"imsx_CodeMinorFieldDType" : {
"description" : "This is the container for a single code minor status code.",
"type" : "object",
"properties" : {
"imsx_codeMinorFieldName" : {
"description" : "Model Primitive Datatype = NormalizedString. This should contain the identity of the system that has produced the code minor status code report. In most cases this will be the target service provider denoted as 'TargetEndSystem'.",
"type" : "string",
"default" : "TargetEndSystem"
},
"imsx_codeMinorFieldValue" : {
"description" : "The code minor status code (this is a value from the corresponding enumerated vocabulary).",
"type" : "string",
"enum" : [ "fullsuccess","invalid_filter_field","invalid_selection_field","invaliddata","unauthorisedrequest","forbidden",
"server_busy","unknownobject","internal_server_error" ]
}
},
"required" : [ "imsx_codeMinorFieldName","imsx_codeMinorFieldValue" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"imsx_StatusInfoDType" : {
"description" : "This is the container for the status code and associated information returned within the HTTP messages received from the Service Provider. For the OneRoster Rostering service this object will only be returned to provide information about a failed request i.e. it will NOT be in the payload for a successful request. See Appendix B for further information on the interpretation of the information contained within this class.",
"type" : "object",
"properties" : {
"imsx_codeMajor" : {
"description" : "The code major value (from the corresponding enumerated vocabulary). See Appendix B for further information on the interpretation of this set of codes. The permitted vocabulary for the values for the CodeMajor field.",
"type" : "string",
"enum" : [ "failure","processing","success","unsupported" ]
},
"imsx_severity" : {
"description" : "The severity value (from the corresponding enumerated vocabulary). See Appendix B for further information on the interpretation of this set of codes.",
"type" : "string",
"enum" : [ "error","status","warning" ]
},
"imsx_description" : {
"description" : "Model Primitive Datatype = String. A human readable description supplied by the entity creating the status code information.",
"type" : "string"
},
"imsx_CodeMinor" : {
"$ref" : "#/components/schemas/imsx_CodeMinorDType"
}
},
"required" : [ "imsx_codeMajor","imsx_severity" ],
"x-1edtech-confidentiality" : "unrestricted",
"additionalProperties" : false
},
"GrepGroupsDType" : {
"description" : "This is a new class defined in this Profile to hold information about the defined Grep Groups.",
"type" : "object",
"properties" : {
"1edtech.grepType" : {
"description" : "The type of Grep Group. This is a fixed enumerated vocabulary.",
"type" : "string",
"enum" : [ "fagkoder","programomraader","utdanningsprogram","aarstrinn" ]
},
"1edtech.code" : {
"description" : "Model Primitive Datatype = NormalizedString. The unique identifier for the Grep Group.",
"type" : "string"
},
"1edtech.title" : {
"description" : "Model Primitive Datatype = String. Human readable title for the Grep Group.",
"type" : "string"
},
"1edtech.vocabName" : {
"description" : "The name of the source vocabulary. This is an extensible enumerated vocabulary.",
"anyOf" : [
{
"type" : "string",
"enum" : [ "GREP","VIGO","localCode" ]
},
{
"description" : "Model Primitive Datatype = NormalizedString.",
"type" : "string",
"pattern" : "(ext:)[a-zA-Z0-9\\.\\-_]+"
}
]
},
"1edtech.uri" : {
"description" : "Model Primitive Datatype = AnyURI. URI for Grep Group.",
"type" : "string",
"format" : "uri"
}
},
"required" : [ "1edtech.grepType","1edtech.code","1edtech.title" ],
"additionalProperties" : false
},
"SubjectCodesDType" : {
"description" : "This is a new class defined in this Profile to hold information about the subjectCodes assigned to a Class or Course. This is the preferred mechanism for providing the subject codes information.",
"type" : "object",
"properties" : {
"1edtech.code" : {
"description" : "Model Primitive Datatype = NormalizedString. The subject code from the corresponding identified vocabulary.",
"type" : "string"
},
"1edtech.title" : {
"description" : "Model Primitive Datatype = String. Human-readable title of the subject.",
"type" : "string"
},
"1edtech.vocabName" : {
"description" : "The name of the source vocabulary. This is an extensible enumerated vocabulary.",
"anyOf" : [
{
"type" : "string",
"enum" : [ "GREP","VIGO","localCode" ]
},
{
"description" : "Model Primitive Datatype = NormalizedString.",
"type" : "string",
"pattern" : "(ext:)[a-zA-Z0-9\\.\\-_]+"
}
]
},
"1edtech.uri" : {
"description" : "Model Primitive Datatype = AnyURI. URI for the definition of the subject code.",
"type" : "string",
"format" : "uri"
}
},
"required" : [ "1edtech.code","1edtech.title" ],
"additionalProperties" : false
}
}
}
}
The OpenAPI 3 (YAML) listing (based upon [OpenAPI3]) is shown below (the OpenAPI YAML is available at: https://purl.imsglobal.org/spec/or/v1p2/schema/openapi/onerosterv1p2rostersservice_norwegiank12profile_openapi3_v1p0.yaml).
# #####################################################################################
# YAML File Information
# #####################################################################################
#
# Author: Colin Smythe (1EdTech) and Markus Gylling (1EdTech)
# Date: 31st January 2023
# Version: 1.0
# Status: Candidate Final
# Description: The OneRoster Rostering Service enables the exchange of K-12 oriented roster data. This exchange is typically between the Student Information System and the learning delivery systems. The service provides a number of operations, collected as several endpoints, primarily based upon read, create and delete of the first class objects. In this Norwegian Profile K-12 many new endpoints have been added to support information exchange about Childcare and After School activities.
# The changes to the base specification are:
# * The "AfterSchoolsManagement" interface has been added (This enables the management of information about after-school activities. An after school activity is a type of 'org'.)
# - "getAcademicSessionForAfterSchool" endpoint - To read, get, the specific academic session for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getAcademicSessionSetForAfterSchool" endpoint - To read, get, the collection of academic sessions for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getAfterSchool" endpoint - To read, get, a specific after-school activity. If the specified after-school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getAllAfterSchools" endpoint - To read, get, a collection of after-school activities i.e. all orgs of type 'after-school'.
# - "getClassForAfterSchool" endpoint - To read, get, the specific class for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getClassSetForAfterSchool" endpoint - To read, get, the collection of classes for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getEnrollmentForAfterSchool" endpoint - To read, get, the specific enrollment for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getEnrollmentSetForAfterSchool" endpoint - To read, get, the collection of enrollments for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getStudentForAfterSchool" endpoint - To read, get, the specific student for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getStudentSetForAfterSchool" endpoint - To read, get, the collection of students for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getStudentSetForClassInAfterSchool" endpoint - To read, get, the collection of students for specific after-school activity and class. If the specified after-school activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getTeacherForAfterSchool" endpoint - To read, get, the specific teacher for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getTeacherSetForAfterSchool" endpoint - To read, get, the collection of teachers for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getTeacherSetForClassInAfterSchool" endpoint - To read, get, the collection of teachers for specific after-school activity and class. If the specified after-school activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getUserForAfterSchool" endpoint - To read, get, the specific user for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getUserSetForAfterSchool" endpoint - To read, get, the collection of users for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
#
# * The "ChildcaresManagement" interface has been added (This enables the management of information about child care activities. A child care activity is a type of 'org'.)
# - "getAcademicSessionForChildcare" endpoint - To read, get, the specific academic session for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getAcademicSessionSetForChildcare" endpoint - To read, get, the collection of academic sessions for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getAllChildcares" endpoint - To read, get, a collection of child care activities i.e. all orgs of type 'child care'.
# - "getChildcare" endpoint - To read, get, a specific child care activity. If the specified child care activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getClassForChildcare" endpoint - To read, get, the specific class for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getClassSetForChildcare" endpoint - To read, get, the collection of classes for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getEnrollmentForChildcare" endpoint - To read, get, the specific enrollment for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getEnrollmentSetForChildcare" endpoint - To read, get, the collection of enrollments for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getStudentForChildcare" endpoint - To read, get, the specific student for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getStudentSetForChildcare" endpoint - To read, get, the collection of students for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getStudentSetForClassInChildcare" endpoint - To read, get, the collection of students for specific childcare activity and class. If the specified childcare activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getTeacherForChildcare" endpoint - To read, get, the specific teacher for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getTeacherSetForChildcare" endpoint - To read, get, the collection of teachers for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getTeacherSetForClassInChildcare" endpoint - To read, get, the collection of teachers for specific childcare activity and class. If the specified childcare activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getUserForChildcare" endpoint - To read, get, the specific user for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
# - "getUserSetForChildcare" endpoint - To read, get, the collection of users for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
#
# * The following classes/data-types have been modified:-
# - Changes to the "ClassTypeEnum" class are:-
# + The enumeration token "ext:nationalTestsGroup" has been ADDED
# + The enumeration token "ext:specialEducation" has been ADDED
# + The enumeration token "ext:grepGroup" has been ADDED
# + The enumeration token "ext:contactTeacherGroup" has been ADDED
# - Changes to the "Demographics" class are:-
# + The attribute "americanIndianOrAlaskaNative" has been PROHIBITED
# + The attribute "asian" has been PROHIBITED
# + The attribute "blackOrAfricanAmerican" has been PROHIBITED
# + The attribute "nativeHawaiianOrOtherPacificIslander" has been PROHIBITED
# + The attribute "white" has been PROHIBITED
# + The attribute "demographicRaceTwoOrMoreRaces" has been PROHIBITED
# + The attribute "hispanicOrLatinoEthnicity" has been PROHIBITED
# + The attribute "countryOfBirthCode" has been PROHIBITED
# + The attribute "stateOfBirthAbbreviation" has been PROHIBITED
# + The attribute "cityOfBirth" has been PROHIBITED
# + The attribute "publicSchoolResidenceStatus" has been PROHIBITED
# - Changes to the "EnrolRoleEnum" class are:-
# + The attribute "proctor" has been PROHIBITED
# + The enumeration token "ext:aide" has been ADDED
# + The enumeration token "ext:contactTeacher" has been ADDED
# - Changes to the "MetadataClass" class are:-
# + The attribute "1edtech.language" of data-type LANGUAGE has been APPENDED
# + The attribute "1edtech.subjectCodes" with a COMPLEX data-type (SubjectCodes) has been APPENDED
# + The attribute "1edtech.grepGroups" with a COMPLEX data-type (GrepGroups) has been APPENDED
# - Changes to the "MetadataCourse" class are:-
# + The attribute "1edtech.language" of data-type LANGUAGE has been APPENDED
# + The attribute "1edtech.subjectCodes" with a COMPLEX data-type (SubjectCodes) has been APPENDED
# - Changes to the "MetadataEnrollment" class are:-
# + The attribute "1edtech.language" of data-type LANGUAGE has been APPENDED
# - Changes to the "MetadataGeneral" class are:-
# + The attribute "1edtech.language" of data-type LANGUAGE has been APPENDED
# - Changes to the "MetadataOrg" class are:-
# + The attribute "1edtech.language" of data-type LANGUAGE has been APPENDED
# + The attribute "1edtech.schoolVIGOID" of data-type NORMALIZEDSTRING has been APPENDED
# + The attribute "1edtech.schoolPASCode" of data-type NORMALIZEDSTRING has been APPENDED
# + The attribute "1edtech.schoolType" with an ENUMERATED data-type (SchoolTypeEnum) has been APPENDED
# - Changes to the "MetadataUser" class are:-
# + The attribute "1edtech.language" of data-type LANGUAGE has been APPENDED
# - Changes to the "OrgTypeEnum" class are:-
# + The attribute "state" has been PROHIBITED
# + The attribute "local" has been PROHIBITED
# + The attribute "national" has been PROHIBITED
# + The enumeration token "ext:afterSchool" has been ADDED
# + The enumeration token "ext:childCare" has been ADDED
# + The enumeration token "ext:counsellingService" has been ADDED
# + The enumeration token "ext:county" has been ADDED
# + The enumeration token "ext:municipality" has been ADDED
# + The enumeration token "ext:privateOwner" has been ADDED
# - Changes to the "RoleEnum" class are:-
# + The attribute "proctor" has been PROHIBITED
# + The attribute "guardian" has been PROHIBITED
# + The attribute "parent" has been PROHIBITED
# + The attribute "relative" has been PROHIBITED
# + The enumeration token "ext:staff" has been ADDED
# + The enumeration token "ext:primaryGuardian" has been ADDED
# + The enumeration token "ext:ownerRepesentative" has been ADDED
# + The enumeration token "ext:responsibleCaregiver" has been ADDED
# - Changes to the "User" class are:-
# + The attribute "identifier" has been PROHIBITED
# + The attribute "password" has been PROHIBITED
#
# * The following new classes/data-types have been defined:-
# - The NEW class "GrepGroups" has been created.
# This is a new class defined in this Profile to hold information about the defined Grep Groups.
# This consists of the following attributes:
# + "1edtech.grepType : GrepTypeEnum [1..1]"
# + "1edtech.code : NormalizedString [1..1]"
# + "1edtech.title : String [1..1]"
# + "1edtech.vocabName : VocabNameEnumExt [0..1]"
# + "1edtech.uri : AnyURI [0..1]"
# - The NEW class "GrepTypeEnum" has been created.
# This is the container for the new enumerated vocabulary for the type of Grep Group.
# This provides an enumeration of:
# + The token "fagkoder" has been defined
# + The token "programomraader" has been defined
# + The token "utdanningsprogram" has been defined
# + The token "aarstrinn" has been defined
# - The NEW class "SchoolTypeEnum" has been created.
# This is the container for the new enumerated sub-type vocabulary for a School org.
# This provides an enumeration of:
# + The token "primarySchool" has been defined
# + The token "lowerSecondarySchool" has been defined
# + The token "upperSecondarySchool" has been defined
# + The token "adultEducation" has been defined
# + The token "vocationalSchool" has been defined
# + The token "homeEducation" has been defined
# + The token "primaryAndLowerSecondarySchool" has been defined
# + The token "kindergarten" has been defined
# + The token "lowerSecondaryAndUpperSecondarySchool" has been defined
# - The NEW class "SubjectCodes" has been created.
# This is a new class defined in this Profile to hold information about the subjectCodes assigned to a Class or Course. This is the preferred mechanism for providing the subject codes information.
# This consists of the following attributes:
# + "1edtech.code : NormalizedString [1..1]"
# + "1edtech.title : String [1..1]"
# + "1edtech.vocabName : VocabNameEnumExt [0..1]"
# + "1edtech.uri : AnyURI [0..1]"
# - The NEW class "UserIdTypeEnum" has been created.
# This is the container for the new enumerated vocabulary for the type of UserId.
# This provides an enumeration of:
# + The token "feideID" has been defined
# + The token "UPN" has been defined
# + The token "personFIN" has been defined
# + The token "personLIN" has been defined
# + The token "personNIN" has been defined
# + The token "personNINencrypted" has been defined
# + The token "sisID" has been defined
# + The token "studentID" has been defined
# + The token "username" has been defined
# + The token "workforceID" has been defined
# - The NEW class "VocabNameEnum" has been created.
# This is the container for the new enumerated vocabulary for the vocabulary name for Subject Codes.
# This provides an enumeration of:
# + The token "GREP" has been defined
# + The token "VIGO" has been defined
# + The token "localCode" has been defined
# - The NEW class "VocabNameEnumExt" has been created (UNSUPPORTED STEREOTYPE).
#
# History: This is the first release of the OneRoster Norwegian K-12 Profile. This Candidate Final release is for internal review and adoption by 1EdTech Members.
#
# License: IPR and Distribution Notices
#
# This machine readable file is derived from the 1EdTech OneRoster 1.2 Norwegian Profile for K-12 Education Version 1.0
# found at https://www.1edtech.org/ and the original 1EdTech schema binding or code base at
# https://www.1edtech.org/.
#
# Recipients of this document are requested to submit, with their comments, notification of any relevant
# patent claims or other intellectual property rights of which they may be aware that might be infringed by
# any implementation of the specification set forth in this document, and to provide supporting documentation.
#
# 1EdTech takes no position regarding the validity or scope of any intellectual property or other rights that might
# be claimed to pertain to the implementation or use of the technology described in this document or the extent
# to which any license under such rights might or might not be available; neither does it represent that it has
# made any effort to identify any such rights. Information on 1EdTech procedures with respect to rights in 1EdTech
# specifications can be found at the 1EdTech Intellectual Property Rights web page: https://www.1edtech.org/ipr/imsipr_policyFinal.pdf.
#
# Copyright (c) 1EdTech Consortium 1999-2024. All Rights Reserved.
#
# Use of this specification to develop products or services is governed by the license with 1EdTech found on the 1EdTech website: http://www.1edtech.org/license.html.
#
# Permission is granted to all parties to use excerpts from this document as needed in producing requests for proposals.
#
# The limited permissions granted above are perpetual and will not be revoked by 1EdTech or its successors or assigns.
#
# THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS
# EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTERS OWN RISK, AND NEITHER THE CONSORTIUM
# NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF
# ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.
#
# Source UML File Information
# ===========================
# The source file information must be supplied as an XMI file (without diagram layout information).
# The supported UML authoring tools are:
# (a) Papyrus - v1.1.3 (and later)
#
# Source XSLT File Information
# ============================
# XSL Generator: Specificationv1p0_GenerationToolv1.xsl
# XSLT Processor: Saxon
# Release: 1.0
# Date: 31st October, 2022
# Autogen Engineer: Colin Smythe (1EdTech)
# Autogen Date: 2024-08-13
#
# 1EdTech Auto-generation Binding Tool-kit (E-BAT)
# ================================================
# This file was auto-generated using the 1EdTech Binding Auto-generation Tool-kit (E-BAT). While every
# attempt has been made to ensure that this tool auto-generates the files correctly, users should be aware
# that this is an experimental tool. Permission is given to make use of this tool. 1EdTech makes no
# claim on the materials created by third party users of this tool. Details on how to use this tool
# are contained in the 1EdTech "E-BAT" documentation available at the 1EdTech web-site:
# https://www.1edtech.org.
#
# Tool Copyright: 2012-2024 (c) 1EdTech Consortium Inc. All Rights Reserved.
#
# #####################################################################################
openapi: '3.0.0'
#####################################################################################
# API Information #
#####################################################################################
info:
version: '1.0'
title: OneRoster 1.2 Norwegian Profile for K-12 Education [ NorwegianK-12 ] OpenAPI (YAML) Definition
description: The OneRoster Rostering Service enables the exchange of K-12 oriented roster data. This exchange is typically between the Student Information System and the learning delivery systems. The service provides a number of operations, collected as several endpoints, primarily based upon read, create and delete of the first class objects. In this Norwegian Profile K-12 many new endpoints have been added to support information exchange about Childcare and After School activities. THIS IS A FORMAL PROFILE OF OneRoster Rostering Service 1.2.
termsOfService: https://www.imsglobal.org/license.html
contact:
name: Vice President of Operations, 1EdTech
url: https://www.1edtech.org
email: operations@1edtech.org
license:
name: 1EdTech Consortium
url: https://www.1edtech.org/license.html
#####################################################################################
# Servers #
#####################################################################################
servers:
- url: https://{hostName}{basePath}
description: The pattern for the Server URL should be configured for the actual server location.
variables:
"hostName":
description: This is the hostname for the server and MUST be set to the actual service provider (the 1EdTech url is given as a default value).
default: www.imsglobal.org
"basePath":
description: This is the base-path for the full URL and MUST be a part of the service endpoints.
enum:
- /ims/oneroster/rostering/v1p2
default: /ims/oneroster/rostering/v1p2
#####################################################################################
# Tags #
#####################################################################################
tags:
- name: AcademicSessionsManagement
description: |
This enables the management of academic sessions i.e. periods of academic activity.
- name: ClassesManagement
description: |
This enables the management of Classes i.e. scheduled learning of courses.
- name: CoursesManagement
description: |
This enables the management of Courses i.e. programme of study.
- name: DemographicsManagement
description: |
This enables the management of demographics information (each assigned to a specific user). The sourcedIds for the user and the demograohics records should be the same.
- name: EnrollmentsManagement
description: |
This enables the management of the enrollments of users (teachers, students, etc.) on classes supplied by schools.
- name: GradingPeriodsManagement
description: |
This enables the management of grading periods i.e. specific academic sessions.
- name: OrgsManagement
description: |
This enables the management of orgs i.e. an organization involved in the learning in some form or other.
- name: SchoolsManagement
description: |
This enables the management of information about schools. A school is a type of 'org'.
- name: StudentsManagement
description: |
This enables the management of information about students (a student is a type of 'user').
- name: TeachersManagement
description: |
This enables the management of information about teachers (a teacher is a type of 'user').
- name: TermsManagement
description: |
This enables the management of information about terms (a term is a type of 'academicSession').
- name: UsersManagement
description: |
This enables the management of information about users (including students and teachers).
- name: AfterSchoolsManagement
description: |
NEW in the [ NorwegianK-12 ] Profile: This enables the management of information about after-school activities. An after school activity is a type of 'org'.
- name: ChildcaresManagement
description: |
NEW in the [ NorwegianK-12 ] Profile: This enables the management of information about child care activities. A child care activity is a type of 'org'.
#####################################################################################
# Paths #
#####################################################################################
paths:
/academicSessions:
get:
operationId: getAllAcademicSessions
summary: The REST read request message for the getAllAcademicSessions() API call.
tags:
- AcademicSessionsManagement
description: |
To read, get, a collection of academic sessions i.e. all academic sessions.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/AcademicSessionSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllAcademicSessions
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllAcademicSessions
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllAcademicSessions
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllAcademicSessions
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/academicSessions/{sourcedId}:
get:
operationId: getAcademicSession
summary: The REST read request message for the getAcademicSession() API call.
tags:
- AcademicSessionsManagement
description: |
To read, get, a specific academic session. If the specified academic session cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this academic session.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleAcademicSessionDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/classes:
get:
operationId: getAllClasses
summary: The REST read request message for the getAllClasses() API call.
tags:
- ClassesManagement
description: |
To read, get, a collection of classes i.e. all classes.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/ClassSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllClasses
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllClasses
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllClasses
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllClasses
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/classes/{classSourcedId}/students:
get:
operationId: getStudentsForClass
summary: The REST read request message for the getStudentsForClass() API call.
tags:
- ClassesManagement
description: |
To read, get, the collection of students associated with a specific class. If the specified class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the class.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getStudentsForClass
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getStudentsForClass
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getStudentsForClass
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getStudentsForClass
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/classes/{classSourcedId}/teachers:
get:
operationId: getTeachersForClass
summary: The REST read request message for the getTeachersForClass() API call.
tags:
- ClassesManagement
description: |
To read, get, the collection of teachers associated with a specific class. If the specified class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the class.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getTeachersForClass
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getTeachersForClass
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getTeachersForClass
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getTeachersForClass
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/classes/{sourcedId}:
get:
operationId: getClass
summary: The REST read request message for the getClass() API call.
tags:
- ClassesManagement
description: |
To read, get, a specific class. If the specified class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this class.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleClassDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/courses:
get:
operationId: getAllCourses
summary: The REST read request message for the getAllCourses() API call.
tags:
- CoursesManagement
description: |
To read, get, a collection of courses i.e. all courses.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/CourseSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllCourses
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllCourses
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllCourses
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllCourses
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/courses/{courseSourcedId}/classes:
get:
operationId: getClassesForCourse
summary: The REST read request message for the getClassesForCourse() API call.
tags:
- CoursesManagement
description: |
To get the set of classes related to a specific course. If the specified course cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: courseSourcedId
in: path
description: |
The unique identifier, GUID, for the specific course.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/ClassSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getClassesForCourse
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getClassesForCourse
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getClassesForCourse
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getClassesForCourse
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/courses/{sourcedId}:
get:
operationId: getCourse
summary: The REST read request message for the getCourse() API call.
tags:
- CoursesManagement
description: |
To read, get, a specific course. If the specified course cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this course.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleCourseDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/demographics:
get:
operationId: getAllDemographics
summary: The REST read request message for the getAllDemographics() API call.
tags:
- DemographicsManagement
description: |
To read, get, a collection of demographics i.e. all demographics.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-demographics.readonly
x-1edtech-confidentiality: veryrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/DemographicsSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllDemographics
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllDemographics
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllDemographics
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllDemographics
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/demographics/{sourcedId}:
get:
operationId: getDemographics
summary: The REST read request message for the getDemographics() API call.
tags:
- DemographicsManagement
description: |
To read, get, a specific user demographics. If the specified user and/or demographics records cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this user demographics.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-demographics.readonly
x-1edtech-confidentiality: veryrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleDemographicsDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/enrollments:
get:
operationId: getAllEnrollments
summary: The REST read request message for the getAllEnrollments() API call.
tags:
- EnrollmentsManagement
description: |
To read, get, a collection of enrollments i.e. all enrollments.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: normal
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/EnrollmentSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllEnrollments
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllEnrollments
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllEnrollments
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllEnrollments
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/enrollments/{sourcedId}:
get:
operationId: getEnrollment
summary: The REST read request message for the getEnrollment() API call.
tags:
- EnrollmentsManagement
description: |
To read, get, a specific enrollment. If the specified enrollment cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this enrollment.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: normal
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleEnrollmentDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/gradingPeriods:
get:
operationId: getAllGradingPeriods
summary: The REST read request message for the getAllGradingPeriods() API call.
tags:
- GradingPeriodsManagement
description: |
To read, get, a collection of grading periods i.e. all academic sessions.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/AcademicSessionSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllGradingPeriods
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllGradingPeriods
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllGradingPeriods
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllGradingPeriods
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/gradingPeriods/{sourcedId}:
get:
operationId: getGradingPeriod
summary: The REST read request message for the getGradingPeriod() API call.
tags:
- GradingPeriodsManagement
description: |
To read, get, a specific grading period. If the specified grading period cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this grading period.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleAcademicSessionDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/orgs:
get:
operationId: getAllOrgs
summary: The REST read request message for the getAllOrgs() API call.
tags:
- OrgsManagement
description: |
To read, get, a collection of orgs i.e. all orgs.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/OrgSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllOrgs
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllOrgs
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllOrgs
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllOrgs
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/orgs/{sourcedId}:
get:
operationId: getOrg
summary: The REST read request message for the getOrg() API call.
tags:
- OrgsManagement
description: |
To read, get, a specific org. If the specified org cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this org.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleOrgDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools:
get:
operationId: getAllSchools
summary: The REST read request message for the getAllSchools() API call.
tags:
- SchoolsManagement
description: |
To read, get, a collection of schools i.e. all schools.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/OrgSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllSchools
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllSchools
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllSchools
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllSchools
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools/{schoolSourcedId}/classes:
get:
operationId: getClassesForSchool
summary: The REST read request message for the getClassesForSchool() API call.
tags:
- SchoolsManagement
description: |
To read, get, the collection of classes associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: schoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specific school.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/ClassSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getClassesForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getClassesForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getClassesForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getClassesForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools/{schoolSourcedId}/classes/{classSourcedId}/enrollments:
get:
operationId: getEnrollmentsForClassInSchool
summary: The REST read request message for the getEnrollmentsForClassInSchool() API call.
tags:
- SchoolsManagement
description: |
To read, get, the collection of enrollments associated with a specific class at a specific school. If the specified school and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: schoolSourcedId
in: path
description: |
The unique identifier, GUID, for the school.
required: true
schema:
type: string
style: simple
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the class.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: normal
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/EnrollmentSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getEnrollmentsForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getEnrollmentsForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getEnrollmentsForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getEnrollmentsForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools/{schoolSourcedId}/classes/{classSourcedId}/students:
get:
operationId: getStudentsForClassInSchool
summary: The REST read request message for the getStudentsForClassInSchool() API call.
tags:
- SchoolsManagement
description: |
To read, get, the collection of students associated with a specific class at a specific school. If the specified school and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: schoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specific school.
required: true
schema:
type: string
style: simple
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the class.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getStudentsForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getStudentsForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getStudentsForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getStudentsForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools/{schoolSourcedId}/classes/{classSourcedId}/teachers:
get:
operationId: getTeachersForClassInSchool
summary: The REST read request message for the getTeachersForClassInSchool() API call.
tags:
- SchoolsManagement
description: |
To read, get, the collection of teachers associated with a specific class at a specific school. If the specified school and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: schoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specific school.
required: true
schema:
type: string
style: simple
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the class.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getTeachersForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getTeachersForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getTeachersForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getTeachersForClassInSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools/{schoolSourcedId}/courses:
get:
operationId: getCoursesForSchool
summary: The REST read request message for the getCoursesForSchool() API call.
tags:
- SchoolsManagement
description: |
To read, get, the collection of courses associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: schoolSourcedId
in: path
description: |
The unique identifier, GUID, for the school.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/CourseSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getCoursesForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getCoursesForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getCoursesForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getCoursesForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools/{schoolSourcedId}/enrollments:
get:
operationId: getEnrollmentsForSchool
summary: The REST read request message for the getEnrollmentsForSchool() API call.
tags:
- SchoolsManagement
description: |
To read, get, the collection of enrollments associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: schoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specific school.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: normal
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/EnrollmentSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getEnrollmentsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getEnrollmentsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getEnrollmentsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getEnrollmentsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools/{schoolSourcedId}/students:
get:
operationId: getStudentsForSchool
summary: The REST read request message for the getStudentsForSchool() API call.
tags:
- SchoolsManagement
description: |
To read, get, the collection of students associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: schoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specific school.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getStudentsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getStudentsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getStudentsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getStudentsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools/{schoolSourcedId}/teachers:
get:
operationId: getTeachersForSchool
summary: The REST read request message for the getTeachersForSchool() API call.
tags:
- SchoolsManagement
description: |
To read, get, the collection of teachers associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: schoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specific school.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getTeachersForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getTeachersForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getTeachersForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getTeachersForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools/{schoolSourcedId}/terms:
get:
operationId: getTermsForSchool
summary: The REST read request message for the getTermsForSchool() API call.
tags:
- SchoolsManagement
description: |
To read, get, the collection of terms associated with a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: schoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specific school.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/AcademicSessionSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getTermsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getTermsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getTermsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getTermsForSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/schools/{sourcedId}:
get:
operationId: getSchool
summary: The REST read request message for the getSchool() API call.
tags:
- SchoolsManagement
description: |
To read, get, a specific school. If the specified school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this school.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleOrgDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/students:
get:
operationId: getAllStudents
summary: The REST read request message for the getAllStudents() API call.
tags:
- StudentsManagement
description: |
To read, get, a collection of students i.e. all students.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllStudents
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllStudents
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllStudents
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllStudents
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/students/{sourcedId}:
get:
operationId: getStudent
summary: The REST read request message for the getStudent() API call.
tags:
- StudentsManagement
description: |
To read, get, a specific student. If the specified student cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this student.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleUserDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/students/{studentSourcedId}/classes:
get:
operationId: getClassesForStudent
summary: The REST read request message for the getClassesForStudent() API call.
tags:
- StudentsManagement
description: |
To get the set of classes related to a specific student. If the specified student cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: studentSourcedId
in: path
description: |
The unique identifier, GUID, for the specific student.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/ClassSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getClassesForStudent
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getClassesForStudent
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getClassesForStudent
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getClassesForStudent
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/teachers:
get:
operationId: getAllTeachers
summary: The REST read request message for the getAllTeachers() API call.
tags:
- TeachersManagement
description: |
To read, get, a collection of teachers i.e. all teachers.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllTeachers
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllTeachers
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllTeachers
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllTeachers
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/teachers/{sourcedId}:
get:
operationId: getTeacher
summary: The REST read request message for the getTeacher() API call.
tags:
- TeachersManagement
description: |
To read, get, a specific teacher. If the specified teacher cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this teacher.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleUserDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/teachers/{teacherSourcedId}/classes:
get:
operationId: getClassesForTeacher
summary: The REST read request message for the getClassesForTeacher() API call.
tags:
- TeachersManagement
description: |
To get the set of classes related to a specific teacher. If the specified teacher cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: teacherSourcedId
in: path
description: |
The unique identifier, GUID, for the specific teacher.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/ClassSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getClassesForTeacher
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getClassesForTeacher
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getClassesForTeacher
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getClassesForTeacher
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/terms:
get:
operationId: getAllTerms
summary: The REST read request message for the getAllTerms() API call.
tags:
- TermsManagement
description: |
To read, get, a collection of terms i.e. all terms.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/AcademicSessionSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllTerms
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllTerms
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllTerms
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllTerms
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/terms/{sourcedId}:
get:
operationId: getTerm
summary: The REST read request message for the getTerm() API call.
tags:
- TermsManagement
description: |
To read, get, a specific term. If the specified term cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this term.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleAcademicSessionDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/terms/{termSourcedId}/classes:
get:
operationId: getClassesForTerm
summary: The REST read request message for the getClassesForTerm() API call.
tags:
- TermsManagement
description: |
To get the set of classes related to a specific term. If the specified term cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: termSourcedId
in: path
description: |
The unique identifier, GUID, for the specific term.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/ClassSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getClassesForTerm
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getClassesForTerm
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getClassesForTerm
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getClassesForTerm
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/terms/{termSourcedId}/gradingPeriods:
get:
operationId: getGradingPeriodsForTerm
summary: The REST read request message for the getGradingPeriodsForTerm() API call.
tags:
- TermsManagement
description: |
To get the set of grading periods related to a specific term. If the specified term cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: termSourcedId
in: path
description: |
The unique identifier, GUID, for the specific term.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/AcademicSessionSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getGradingPeriodsForTerm
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getGradingPeriodsForTerm
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getGradingPeriodsForTerm
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getGradingPeriodsForTerm
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/users:
get:
operationId: getAllUsers
summary: The REST read request message for the getAllUsers() API call.
tags:
- UsersManagement
description: |
To read, get, a collection of users i.e. all users (including students and teachers).
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllUsers
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllUsers
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllUsers
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllUsers
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/users/{sourcedId}:
get:
operationId: getUser
summary: The REST read request message for the getUser() API call.
tags:
- UsersManagement
description: |
To read, get, a specific user. If the specified user cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this user.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
x-1edtech-confidentiality: restricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleUserDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/users/{userSourcedId}/classes:
get:
operationId: getClassesForUser
summary: The REST read request message for the getClassesForUser() API call.
tags:
- UsersManagement
description: |
To get the set of classes related to a specific user. If the specified user cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: userSourcedId
in: path
description: |
The unique identifier, GUID, for the specific user.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
x-1edtech-confidentiality: unrestricted
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/ClassSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getClassesForUser
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getClassesForUser
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getClassesForUser
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getClassesForUser
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools:
get:
operationId: getAllAfterSchools
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getAllAfterSchools() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, a collection of after-school activities i.e. all orgs of type 'after-school'.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/OrgSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllAfterSchools
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllAfterSchools
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllAfterSchools
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllAfterSchools
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/academicsessions:
get:
operationId: getAcademicSessionSetForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getAcademicSessionSetForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the collection of academic sessions for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/AcademicSessionSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAcademicSessionSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAcademicSessionSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAcademicSessionSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAcademicSessionSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/academicsessions/{academicSessionSourcedId}:
get:
operationId: getAcademicSessionForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getAcademicSessionForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the specific academic session for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: academicSessionSourcedId
in: path
description: |
The unique identifier, GUID, for the specified academicSession.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleAcademicSessionDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/classes:
get:
operationId: getClassSetForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getClassSetForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the collection of classes for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/ClassSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getClassSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getClassSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getClassSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getClassSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/classes/{classSourcedId}:
get:
operationId: getClassForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getClassForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the specific class for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the specified class.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleClassDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/classes/{classSourcedId}/students:
get:
operationId: getStudentSetForClassInAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getStudentSetForClassInAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the collection of students for specific after-school activity and class. If the specified after-school activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the specified class.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getStudentSetForClassInAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getStudentSetForClassInAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getStudentSetForClassInAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getStudentSetForClassInAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/classes/{classSourcedId}/teachers:
get:
operationId: getTeacherSetForClassInAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getTeacherSetForClassInAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the collection of teachers for specific after-school activity and class. If the specified after-school activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the specified class.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getTeacherSetForClassInAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getTeacherSetForClassInAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getTeacherSetForClassInAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getTeacherSetForClassInAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/enrollments:
get:
operationId: getEnrollmentSetForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getEnrollmentSetForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the collection of enrollments for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/EnrollmentSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getEnrollmentSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getEnrollmentSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getEnrollmentSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getEnrollmentSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/enrollments/{enrollmentSourcedId}:
get:
operationId: getEnrollmentForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getEnrollmentForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the specific enrollment for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: enrollmentSourcedId
in: path
description: |
The unique identifier, GUID, for the specified enrollment.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleEnrollmentDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/students:
get:
operationId: getStudentSetForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getStudentSetForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the collection of students for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getStudentSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getStudentSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getStudentSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getStudentSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/students/{studentSourcedId}:
get:
operationId: getStudentForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getStudentForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the specific student for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: studentSourcedId
in: path
description: |
The unique identifier, GUID, for the specified student.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleUserDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/teachers:
get:
operationId: getTeacherSetForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getTeacherSetForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the collection of teachers for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getTeacherSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getTeacherSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getTeacherSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getTeacherSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/teachers/{teacherSourcedId}:
get:
operationId: getTeacherForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getTeacherForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the specific teacher for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: teacherSourcedId
in: path
description: |
The unique identifier, GUID, for the specified teacher.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleUserDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/users:
get:
operationId: getUserSetForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getUserSetForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the collection of users for specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getUserSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getUserSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getUserSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getUserSetForAfterSchool
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{afterschoolSourcedId}/users/{userSourcedId}:
get:
operationId: getUserForAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getUserForAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, the specific user for the specific after-school activity. If the specified after-school activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: afterschoolSourcedId
in: path
description: |
The unique identifier, GUID, for the specified after-school activity.
required: true
schema:
type: string
style: simple
- name: userSourcedId
in: path
description: |
The unique identifier, GUID, for the specified user.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleUserDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/afterschools/{sourcedId}:
get:
operationId: getAfterSchool
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getAfterSchool() API call.
tags:
- AfterSchoolsManagement
description: |
To read, get, a specific after-school activity. If the specified after-school cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this after-school activity.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleOrgDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares:
get:
operationId: getAllChildcares
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getAllChildcares() API call.
tags:
- ChildcaresManagement
description: |
To read, get, a collection of child care activities i.e. all orgs of type 'child care'.
parameters:
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/OrgSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAllChildcares
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAllChildcares
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAllChildcares
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAllChildcares
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/academicsessions:
get:
operationId: getAcademicSessionSetForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getAcademicSessionSetForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the collection of academic sessions for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/AcademicSessionSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getAcademicSessionSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getAcademicSessionSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getAcademicSessionSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getAcademicSessionSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/academicsessions/{academicSessionSourcedId}:
get:
operationId: getAcademicSessionForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getAcademicSessionForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the specific academic session for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: academicSessionSourcedId
in: path
description: |
The unique identifier, GUID, for the specified academicSession.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleAcademicSessionDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/classes:
get:
operationId: getClassSetForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getClassSetForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the collection of classes for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/ClassSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getClassSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getClassSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getClassSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getClassSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/classes/{classSourcedId}:
get:
operationId: getClassForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getClassForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the specific class for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the specified class.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleClassDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/classes/{classSourcedId}/students:
get:
operationId: getStudentSetForClassInChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getStudentSetForClassInChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the collection of students for specific childcare activity and class. If the specified childcare activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the specified class.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getStudentSetForClassInChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getStudentSetForClassInChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getStudentSetForClassInChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getStudentSetForClassInChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/classes/{classSourcedId}/teachers:
get:
operationId: getTeacherSetForClassInChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getTeacherSetForClassInChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the collection of teachers for specific childcare activity and class. If the specified childcare activity and/or class cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: classSourcedId
in: path
description: |
The unique identifier, GUID, for the specified class.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getTeacherSetForClassInChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getTeacherSetForClassInChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getTeacherSetForClassInChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getTeacherSetForClassInChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/enrollments:
get:
operationId: getEnrollmentSetForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getEnrollmentSetForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the collection of enrollments for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/EnrollmentSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getEnrollmentSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getEnrollmentSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getEnrollmentSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getEnrollmentSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/enrollments/{enrollmentSourcedId}:
get:
operationId: getEnrollmentForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getEnrollmentForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the specific enrollment for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: enrollmentSourcedId
in: path
description: |
The unique identifier, GUID, for the specified enrollment.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleEnrollmentDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/students:
get:
operationId: getStudentSetForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getStudentSetForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the collection of students for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getStudentSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getStudentSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getStudentSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getStudentSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/students/{studentSourcedId}:
get:
operationId: getStudentForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getStudentForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the specific student for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: studentSourcedId
in: path
description: |
The unique identifier, GUID, for the specified student.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleUserDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/teachers:
get:
operationId: getTeacherSetForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getTeacherSetForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the collection of teachers for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getTeacherSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getTeacherSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getTeacherSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getTeacherSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/teachers/{teacherSourcedId}:
get:
operationId: getTeacherForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getTeacherForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the specific teacher for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: teacherSourcedId
in: path
description: |
The unique identifier, GUID, for the specified teacher.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleUserDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/users:
get:
operationId: getUserSetForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getUserSetForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the collection of users for specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: limit
in: query
description: |
To define the download segmentation value i.e. the maximum number of records to be contained in the response.
required: false
schema:
type: integer
format: int32
default: 100
minimum: 1
allowEmptyValue: false
style: form
- name: offset
in: query
description: |
The number of the first record to be supplied in the segmented response message.
required: false
schema:
type: integer
format: int32
default: 0
minimum: 0
allowEmptyValue: false
style: form
- name: sort
in: query
description: |
Identifies the sort criteria to be used for the records in the response message. Use with the orderBy parameter. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: orderBy
in: query
description: |
The form of ordering for response to the sorted request i.e. ascending (asc) or descending (desc). The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
enum:
- asc
- desc
allowEmptyValue: false
style: form
- name: filter
in: query
description: |
The filtering rules to be applied when identifying the records to be supplied in the response message. The sort order should follow the [UNICODE, 16] standard.
required: false
schema:
type: string
allowEmptyValue: false
style: form
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a collection has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/UserSetDType"
headers:
"X-Total-Count" :
description: |
The total number of resources that are available to be returned
schema:
type: integer
links:
"next" :
description: |
Get the next set of resources i.e. from offset to offset+limit
operationId: getUserSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"last" :
description: |
Get the last set of resources i.e. from offset to end
operationId: getUserSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"first" :
description: |
Get the first set of resources i.e. from first to limit
operationId: getUserSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"prev" :
description: |
Get the previous set of resources i.e. from last_offset to last_offset+limit
operationId: getUserSetForChildcare
parameters:
"limit" : "$request.path.limit"
"offset" : "$request.path.offset"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{childcareSourcedId}/users/{userSourcedId}:
get:
operationId: getUserForChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getUserForChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, the specific user for the specific childcare activity. If the specified childcare activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: childcareSourcedId
in: path
description: |
The unique identifier, GUID, for the specified childcare activity.
required: true
schema:
type: string
style: simple
- name: userSourcedId
in: path
description: |
The unique identifier, GUID, for the specified user.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleUserDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
/childcares/{sourcedId}:
get:
operationId: getChildcare
summary: NEW in the [ NorwegianK-12 ] Profile - The REST read request message for the getChildcare() API call.
tags:
- ChildcaresManagement
description: |
To read, get, a specific child care activity. If the specified child care activity cannot be identified within the service provider then a status code of 'unknownobject' must be reported.
parameters:
- name: sourcedId
in: path
description: |
The unique identifier, GUID, for this child care activity.
required: true
schema:
type: string
style: simple
- name: fields
in: query
description: |
To identify the range of fields that should be supplied in the response message.
required: false
schema:
type: array
items:
type: string
allowEmptyValue: false
style: form
security:
- OAuth2CC:
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly
- https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly
responses:
"default" :
description: |
This is the default error response when no other appropriate code is available. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"200" :
description: |
The request was successfully completed and a record has been returned. This would be accompanied by the 'codeMajor/severity' values of 'success/status' and for a REST binding a HTTP code of '200'.
content:
application/json:
schema:
$ref: "#/components/schemas/SingleOrgDType"
"400" :
description: |
Either an invalid selection field or invalid filter selection was supplied and data filtering on the selection criteria was not possible i.e. 'invalid_selection_field' or 'invalid_filter_field' respectively. This is accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"401" :
description: |
The request was not correctly authorised i.e. 'unauthorisedrequest'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"403" :
description: |
This is used to indicate that the server can be reached and process the request but refuses to take any further action i.e. 'forbidden'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"404" :
description: |
Either the supplied identifier is unknown in the Service Provider and so the object could not be changed or an invalid GUID has been supplied. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'. The statement 'Unknown Object' should also be presented.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"405" :
description: |
This error report is returned when the Service Provider does not support, but is aware of, the endpoint to which the request was made. This would be accompanied by the 'codeMajor/severity' values of 'status/unsupported.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"422" :
description: |
This error condition may occur if a JSON request body contains well-formed (i.e. syntactically correct), but semantically erroneous, JSON instructions. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"429" :
description: |
The server is receiving too many requests i.e. 'server_busy'. Retry at a later time. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
"500" :
description: |
This code should be used only if there is catastrophic error and there is not a more appropriate code i.e. 'internal_server_error'. This would be accompanied by the 'codeMajor/severity' values of 'failure/error'.
content:
application/json:
schema:
$ref: "#/components/schemas/imsx_StatusInfoDType"
#####################################################################################
# Components #
#####################################################################################
components:
securitySchemes:
OAuth2CC:
type: oauth2
description: |
OAuth 2 Client Credentials (as per the requirements in the IMS Security Framework) is to be used.
flows:
clientCredentials:
tokenUrl: https://www.imsglobal.org
scopes:
https://purl.imsglobal.org/spec/or/v1p2/scope/roster.readonly: Support for all of the read operations (excluding demographics) to enable information about collections or a single object to be obtained.
https://purl.imsglobal.org/spec/or/v1p2/scope/roster-core.readonly: The core set of read operations to enable information about collections or a single object to be obtained.
https://purl.imsglobal.org/spec/or/v1p2/scope/roster-demographics.readonly: The read operations to provide all demographics or a single demographics object to be obtained.
schemas:
AcadSessionGUIDRefDType:
description: |
This is the container for reference to a OneRoster 'Academic Session' object that has an allocated sourcedId (GUID).
type: object
required:
- href
- sourcedId
- type
x-1edtech-confidentiality: unrestricted
properties:
href:
description: The URI for the type of object being referenced. Model Primitive Datatype = AnyURI.
type: string
format: uri
sourcedId:
description: The globally unique identifier of the object being referenced. Model Primitive Datatype = String.
type: string
type:
description: |
The type of object being referenced i.e. an 'academicSession'.
type: string
enum:
- academicSession
additionalProperties: false
AcademicSessionDType:
description: |
The container for an academicSession. An academicSession represents a duration of time. Typically they are used to describe terms, grading periods, and other durations e.g. school years. Term is used to describe a period of time during which learning will take place. Other words for term could be in common use around the world e.g. Semester. The important thing is that Term is a unit of time, often many weeks long, into which classes are scheduled. Grading Period is used to represent another unit of time, that within which line items are assessed. A term may have many grading periods, a grading period belongs to a single term. A class may be assessed over several grade periods (represented by a line item being connected to a grading period). The parent / child attributes of academic sessions allow terms to be connected to their grading periods and vice-versa.
type: object
required:
- sourcedId
- status
- dateLastModified
- title
- startDate
- endDate
- type
- schoolYear
x-1edtech-confidentiality: unrestricted
properties:
sourcedId:
description: The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general. Model Primitive Datatype = String.
type: string
status:
description: |
All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.
type: string
enum:
- active
- tobedeleted
dateLastModified:
description: All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601]. Model Primitive Datatype = DateTime.
type: string
format: date-time
title:
description: The title/label for the academic session. Model Primitive Datatype = NormalizedString.
type: string
startDate:
description: The start date for the academic session. The start date is included in the academic session. This is in [ISO 8601] format of 'YYYY-MM-DD'. Model Primitive Datatype = Date.
type: string
format: date
endDate:
description: The end date for the academic session. The end date is excluded from the academic session. This is in [ISO 8601] format of 'YYYY-MM-DD'. Model Primitive Datatype = Date.
type: string
format: date
type:
description: |
The type of academic session. This is based upon an enumerated vocabulary.
anyOf:
- enum:
- gradingPeriod
- semester
- schoolYear
- term
type: string
- description: The data-type that enables an enumerated vocabulary to be extended. Model Primitive Datatype = NormalizedString.
type: string
pattern: "(ext:)[a-zA-Z0-9\\.\\-_]+"
parent:
$ref: "#/components/schemas/AcadSessionGUIDRefDType"
children:
description: |
The set of links to the child AcademicSessions i.e. a set of AcademicSession 'sourcedIds'.
type: array
minItems: 0
items:
$ref: "#/components/schemas/AcadSessionGUIDRefDType"
schoolYear:
description: The school year for the academic session. This year should include the school year end e.g. 2014. This is in the [ISO 8601] format of 'YYYY'. Model Primitive Datatype = NormalizedString.
type: string
metadata:
$ref: "#/components/schemas/MetadataGeneralDType"
additionalProperties: false
AcademicSessionSetDType:
description: |
This is the container for a collection of academicSessions instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.
type: object
x-1edtech-confidentiality: unrestricted
properties:
academicSessions:
description: |
The collection of academicSession instances. The order is not significant. The corresponding query constraints may result in no instances being returned.
type: array
minItems: 0
items:
$ref: "#/components/schemas/AcademicSessionDType"
additionalProperties: false
ClassDType:
description: |
A class is an instance of a course, onto which students and teachers are enrolled. A class is typically held within a term.
type: object
required:
- sourcedId
- status
- dateLastModified
- title
- classType
- course
- school
- terms
x-1edtech-confidentiality: unrestricted
properties:
sourcedId:
description: The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general. Model Primitive Datatype = String.
type: string
status:
description: |
All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.
type: string
enum:
- active
- tobedeleted
dateLastModified:
description: All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601]. Model Primitive Datatype = DateTime.
type: string
format: date-time
title:
description: The tile/label for the class. Model Primitive Datatype = NormalizedString.
type: string
classCode:
description: The class code. Model Primitive Datatype = NormalizedString.
type: string
classType:
description: |
The type of class. This is based upon an enumerated vocabulary.
anyOf:
- enum:
- homeroom
- scheduled
- ext:nationalTestsGroup
- ext:specialEducation
- ext:grepGroup
- ext:contactTeacherGroup
type: string
- description: The data-type that enables an enumerated vocabulary to be extended. Model Primitive Datatype = NormalizedString.
type: string
pattern: "(ext:)[a-zA-Z0-9\\.\\-_]+"
location:
description: The location for the class e.g. 'Room 19'. Model Primitive Datatype = NormalizedString.
type: string
grades:
description: The grade(s) who attend the class. The permitted vocabulary should be defined as part of the adoption and deployment process. See the Implementation Guide [OR-IMPL-12] for more details on how to define/use such a vocabulary. Model Primitive Datatype = NormalizedString.
type: array
minItems: 0
items:
type: string
subjects:
description: The set of subjects addressed by this class e.g. 'chemistry'. Model Primitive Datatype = NormalizedString.
type: array
minItems: 0
items:
type: string
course:
$ref: "#/components/schemas/CourseGUIDRefDType"
school:
$ref: "#/components/schemas/OrgGUIDRefDType"
terms:
description: |
The links to the set of terms or semesters (academicSession) i.e. the set of 'sourcedIds' for the terms within the associated school year.
type: array
minItems: 1
items:
$ref: "#/components/schemas/AcadSessionGUIDRefDType"
subjectCodes:
description: This is a machine readable set of codes and the number should match the associated 'subjects' attribute. The vocabulary for this characteristic should be defined as part of the local addition of this specification (see the Implementation Guide [OR-IMPL-12] for more details). Model Primitive Datatype = NormalizedString.
type: array
minItems: 0
items:
type: string
periods:
description: The time slots in the day that the class will be given. Examples are 1 or a list of 1, 3, 5, etc. Model Primitive Datatype = NormalizedString.
type: array
minItems: 0
items:
type: string
resources:
description: |
The links to the set of associated resources i.e. the Resource 'sourcedIds'.
type: array
minItems: 0
items:
$ref: "#/components/schemas/ResourceGUIDRefDType"
metadata:
$ref: "#/components/schemas/MetadataClassDType"
additionalProperties: false
ClassGUIDRefDType:
description: |
This is the container for reference to a OneRoster 'Class' object that has an allocated sourcedId (GUID).
type: object
required:
- href
- sourcedId
- type
x-1edtech-confidentiality: unrestricted
properties:
href:
description: The URI for the type of object being referenced. Model Primitive Datatype = AnyURI.
type: string
format: uri
sourcedId:
description: The globally unique identifier of the object being referenced. Model Primitive Datatype = String.
type: string
type:
description: |
The type of object being referenced i.e. a 'class'.
type: string
enum:
- class
additionalProperties: false
ClassSetDType:
description: |
This is the container for a collection of classes instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.
type: object
x-1edtech-confidentiality: unrestricted
properties:
classes:
description: |
The collection of class instances. The order is not significant. The corresponding query constraints may result in no instances being returned.
type: array
minItems: 0
items:
$ref: "#/components/schemas/ClassDType"
additionalProperties: false
CourseDType:
description: |
The information about a course. A Course is a course of study that, typically, has a shared curriculum although it may be taught to different students by different teachers. It is likely that several classes of a single course may be taught in a term. For example, a school runs Grade 9 English in the spring term. There are four classes, each with a different 30 students, taught by 4 different teachers. However the curriculum for each of those four classes is the same i.e. the course curriculum.
type: object
required:
- sourcedId
- status
- dateLastModified
- title
- org
x-1edtech-confidentiality: unrestricted
properties:
sourcedId:
description: The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general. Model Primitive Datatype = String.
type: string
status:
description: |
All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.
type: string
enum:
- active
- tobedeleted
dateLastModified:
description: All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601]. Model Primitive Datatype = DateTime.
type: string
format: date-time
title:
description: The title of the course. Model Primitive Datatype = NormalizedString.
type: string
schoolYear:
$ref: "#/components/schemas/AcadSessionGUIDRefDType"
courseCode:
description: The assigned course code. Model Primitive Datatype = NormalizedString.
type: string
grades:
description: Grade(s) for which the class is attended. The permitted vocabulary should be defined as part of the adoption and deployment process. See the Implementation Guide [OR-IMPL-12] for more details on how to define/use such a vocabulary. Model Primitive Datatype = NormalizedString.
type: array
minItems: 0
items:
type: string
subjects:
description: The set of subjects addressed by this course. This is a set of human readable strings. Model Primitive Datatype = NormalizedString.
type: array
minItems: 0
items:
type: string
org:
$ref: "#/components/schemas/OrgGUIDRefDType"
subjectCodes:
description: This is a machine readable set of codes and the number should match the associated 'subjects' attribute. The vocabulary for this characteristic should be defined as part of the local addition of this specification (see the Implementation Guide [OR-IMPL-12] for more details). Model Primitive Datatype = NormalizedString.
type: array
minItems: 0
items:
type: string
resources:
description: |
The links to the associated resources if applicable i.e. the resource 'sourcedIds'.
type: array
minItems: 0
items:
$ref: "#/components/schemas/ResourceGUIDRefDType"
metadata:
$ref: "#/components/schemas/MetadataCourseDType"
additionalProperties: false
CourseGUIDRefDType:
description: |
This is the container for reference to a OneRoster 'Course' object that has an allocated sourcedId (GUID).
type: object
required:
- href
- sourcedId
- type
x-1edtech-confidentiality: unrestricted
properties:
href:
description: The URI for the type of object being referenced. Model Primitive Datatype = AnyURI.
type: string
format: uri
sourcedId:
description: The globally unique identifier of the object being referenced. Model Primitive Datatype = String.
type: string
type:
description: |
The type of object being referenced i.e. a 'course'.
type: string
enum:
- course
additionalProperties: false
CourseSetDType:
description: |
This is the container for a collection of courses instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.
type: object
x-1edtech-confidentiality: unrestricted
properties:
courses:
description: |
The collection of course instances. The order is not significant. The corresponding query constraints may result in no instances being returned.
type: array
minItems: 0
items:
$ref: "#/components/schemas/CourseDType"
additionalProperties: false
CredentialDType:
description: |
The container for a single set of credentials for an account.
type: object
required:
- type
- username
x-1edtech-privacy:
- username
- password
- extensions
x-1edtech-confidentiality: restricted
x-1edtech-confidentiality-normal:
- username
- extensions
x-1edtech-confidentiality-restricted:
- password
properties:
type:
description: The type of credentials for the profile. This should be indicative of when this specific credential should be used. Model Primitive Datatype = String.
type: string
username:
description: The username. Model Primitive Datatype = NormalizedString.
type: string
password:
description: The password in this set of credentials. Care should be taken to ensure that no unencrypted value is revealed. Model Primitive Datatype = String.
type: string
additionalProperties: true
DemographicsDType:
description: |
Demographics information is taken from the Common Educational Data Standards (CEDS) from the US government (http://ceds.ed.gov). Note that demographics data is held in its own service, and that access to this service is considered privileged. Not all consumer keys will be able to request demographics data. NOTE that the sourcedId used to retrieve the demographics data MUST be the same as the sourcedId of the User i.e. the owner of the demographics data.
type: object
required:
- sourcedId
- status
- dateLastModified
x-1edtech-privacy:
- sourcedId
- birthDate
- sex
- metadata
x-1edtech-confidentiality: veryrestricted
x-1edtech-confidentiality-normal:
- sourcedId
- metadata
x-1edtech-confidentiality-veryrestricted:
- birthDate
- sex
properties:
sourcedId:
description: The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general. The sourcedId used to retrieve the demographics data MUST be the same as the sourcedId of the User i.e. the owner of the demographics data. Model Primitive Datatype = String.
type: string
status:
description: |
All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.
type: string
enum:
- active
- tobedeleted
dateLastModified:
description: All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601]. Model Primitive Datatype = DateTime.
type: string
format: date-time
birthDate:
description: The date of birth. The format is [ISO 8601] of 'YYYY-MM-DD'. Model Primitive Datatype = Date.
type: string
format: date
sex:
description: |
The sex of the individual. The permitted values are from an enumerated list.
anyOf:
- enum:
- male
- female
- unspecified
- other
type: string
- description: The data-type that enables an enumerated vocabulary to be extended. Model Primitive Datatype = NormalizedString.
type: string
pattern: "(ext:)[a-zA-Z0-9\\.\\-_]+"
metadata:
$ref: "#/components/schemas/MetadataGeneralDType"
additionalProperties: false
DemographicsSetDType:
description: |
This is the container for a collection of demographics instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.
type: object
x-1edtech-privacy:
- demographics
x-1edtech-confidentiality: veryrestricted
x-1edtech-confidentiality-veryrestricted:
- demographics
properties:
demographics:
description: |
The collection of demographics instances. The order is not significant. The corresponding query constraints may result in no instances being returned.
type: array
minItems: 0
items:
$ref: "#/components/schemas/DemographicsDType"
additionalProperties: false
EnrollmentDType:
description: |
An enrollment is the name given to an individual taking part in a class. In the vast majority of cases, users will be students learning in a class, or teachers teaching the class. Other roles are also possible.
type: object
required:
- sourcedId
- status
- dateLastModified
- user
- class
- school
- role
x-1edtech-privacy:
- user
- role
- metadata
x-1edtech-confidentiality: normal
x-1edtech-confidentiality-normal:
- user
- role
- metadata
properties:
sourcedId:
description: The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general. Model Primitive Datatype = String.
type: string
status:
description: |
All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.
type: string
enum:
- active
- tobedeleted
dateLastModified:
description: All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601]. Model Primitive Datatype = DateTime.
type: string
format: date-time
user:
$ref: "#/components/schemas/UserGUIDRefDType"
class:
$ref: "#/components/schemas/ClassGUIDRefDType"
school:
$ref: "#/components/schemas/OrgGUIDRefDType"
role:
description: |
The role of the user for this class in the school e.g teacher, student, etc. This is from an enumerated vocabulary.
anyOf:
- enum:
- administrator
- student
- teacher
- ext:aide
- ext:contactTeacher
type: string
- description: The data-type that enables an enumerated vocabulary to be extended. Model Primitive Datatype = NormalizedString.
type: string
pattern: "(ext:)[a-zA-Z0-9\\.\\-_]+"
primary:
description: |
Applicable only to teachers. Only one teacher should be designated as the primary teacher for a class (this value set as 'true') in the period defined by the begin/end dates.
type: string
enum:
- true
- false
beginDate:
description: The start date for the enrollment (inclusive). This date must be within the period of the associated Academic Session for the class (Term/Semester/SchoolYear). Use the [ISO 8601] format of 'YYYY-MM-DD'. Model Primitive Datatype = Date.
type: string
format: date
endDate:
description: The end date for the enrollment (exclusive). This date must be within the period of the associated Academic Session for the class (Term/Semester/SchoolYear). Use the [ISO 8601] format of 'YYYY-MM-DD'. Model Primitive Datatype = Date.
type: string
format: date
metadata:
$ref: "#/components/schemas/MetadataEnrollmentDType"
additionalProperties: false
EnrollmentSetDType:
description: |
This is the container for a collection of enrollment instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.
type: object
x-1edtech-privacy:
- enrollments
x-1edtech-confidentiality: normal
x-1edtech-confidentiality-normal:
- enrollments
properties:
enrollments:
description: |
The collection of enrollment instances. The order is not significant. The corresponding query constraints may result in no instances being returned.
type: array
minItems: 0
items:
$ref: "#/components/schemas/EnrollmentDType"
additionalProperties: false
MetadataClassDType:
description: |
The container for the proprietary extensions in the Class class.
type: object
x-1edtech-privacy:
- extensions
x-1edtech-confidentiality: unrestricted
x-1edtech-confidentiality-normal:
- extensions
properties:
1edtech.language:
description: An extension that is used to contain identification of the default language for the content being supplied. Model Primitive Datatype = Language.
type: string
1edtech.subjectCodes:
description: The existing OneRoster 1.2 subjectCodes property, available as optional on Class, is deprecated in this profile. This means that it remains available for use to achieve backwards compatibility, but that the new metadata 1edtech.subjectCodes property is the preferred mechanism for relaying subject code information.
$ref: "#/components/schemas/SubjectCodesDType"
1edtech.grepGroups:
description: This is an extension property used to contain the definitions of the associated set of Grep Groups.
$ref: "#/components/schemas/GrepGroupsDType"
additionalProperties: true
MetadataCourseDType:
description: |
The container for the proprietary extensions in the Course class.
type: object
x-1edtech-privacy:
- extensions
x-1edtech-confidentiality: unrestricted
x-1edtech-confidentiality-normal:
- extensions
properties:
1edtech.language:
description: An extension that is used to contain identification of the default language for the content being supplied. Model Primitive Datatype = Language.
type: string
1edtech.subjectCodes:
description: The existing OneRoster 1.2 subjectCodes property, available as optional on Course, is deprecated in this profile. This means that it remains available for use to achieve backwards compatibility, but that the new metadata 1edtech.subjectCodes property is the preferred mechanism for relaying subject code information.
$ref: "#/components/schemas/SubjectCodesDType"
additionalProperties: true
MetadataEnrollmentDType:
description: |
The container for the proprietary extensions in the Enrollment class.
type: object
x-1edtech-privacy:
- extensions
x-1edtech-confidentiality: unrestricted
x-1edtech-confidentiality-normal:
- extensions
properties:
1edtech.language:
description: An extension that is used to contain identification of the default language for the content being supplied. Model Primitive Datatype = Language.
type: string
additionalProperties: true
MetadataGeneralDType:
description: |
The container for the proprietary extensions.
type: object
x-1edtech-privacy:
- extensions
x-1edtech-confidentiality: unrestricted
x-1edtech-confidentiality-normal:
- extensions
properties:
1edtech.language:
description: An extension that is used to contain identification of the default language for the content being supplied. Model Primitive Datatype = Language.
type: string
additionalProperties: true
MetadataOrgDType:
description: |
The container for the proprietary extensions for the Org class.
type: object
x-1edtech-privacy:
- extensions
x-1edtech-confidentiality: unrestricted
x-1edtech-confidentiality-normal:
- extensions
properties:
1edtech.language:
description: An extension that is used to contain identification of the default language for the content being supplied. Model Primitive Datatype = Language.
type: string
1edtech.schoolVIGOID:
description: This is an extension that is used to contain the VIGO identifier for the school. This is ONLY used when the associated type of 'org' is a school. Model Primitive Datatype = NormalizedString.
type: string
1edtech.schoolPASCode:
description: This is an extension that is used to contain the PAS code for the school. This is ONLY used when the associated type of 'org' is a school. Model Primitive Datatype = NormalizedString.
type: string
1edtech.schoolType:
description: This is an extension that is used to contain further definition of the type of school. This is ONLY used when the associated type of 'org' is a school.
type: string
enum:
- primarySchool
- lowerSecondarySchool
- upperSecondarySchool
- adultEducation
- vocationalSchool
- homeEducation
- primaryAndLowerSecondarySchool
- kindergarten
- lowerSecondaryAndUpperSecondarySchool
additionalProperties: true
MetadataUserDType:
description: |
The container for the proprietary extensions in the User class.
type: object
x-1edtech-privacy:
- extensions
x-1edtech-confidentiality: unrestricted
x-1edtech-confidentiality-normal:
- extensions
properties:
1edtech.language:
description: An extension that is used to contain identification of the default language for the content being supplied. Model Primitive Datatype = Language.
type: string
additionalProperties: true
OrgDType:
description: |
ORG is defined here as a structure for holding organizational information. An ORG might be a school, or it might be a local, statewide, or national entity. ORGs will typically have a parent ORG (up to the national level), and children, allowing a hierarchy to be established. School is defined here as the place where the learning happens. Most commonly this is the data that describes a bricks and mortar building, or, in the case of a virtual school, the virtual school organization. For enrollment and result reporting purposes, little information about this organization is required. A common example of a local organization is a school district.
type: object
required:
- sourcedId
- status
- dateLastModified
- name
- type
x-1edtech-confidentiality: unrestricted
properties:
sourcedId:
description: The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general. Model Primitive Datatype = String.
type: string
status:
description: |
All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.
type: string
enum:
- active
- tobedeleted
dateLastModified:
description: All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601]. Model Primitive Datatype = DateTime.
type: string
format: date-time
name:
description: The name of the organization. Model Primitive Datatype = NormalizedString.
type: string
type:
description: |
The type of organization. This uses a predefined vocabulary.
anyOf:
- enum:
- department
- district
- school
- ext:afterSchool
- ext:childCare
- ext:counsellingService
- ext:county
- ext:municipality
- ext:privateOwner
type: string
- description: The data-type that enables an enumerated vocabulary to be extended. Model Primitive Datatype = NormalizedString.
type: string
pattern: "(ext:)[a-zA-Z0-9\\.\\-_]+"
identifier:
description: Human readable identifier for this org e.g. NCES ID. Model Primitive Datatype = String.
type: string
parent:
$ref: "#/components/schemas/OrgGUIDRefDType"
children:
description: |
The 'sourcedIds' for the set of child organizations.
type: array
minItems: 0
items:
$ref: "#/components/schemas/OrgGUIDRefDType"
metadata:
$ref: "#/components/schemas/MetadataOrgDType"
additionalProperties: false
OrgGUIDRefDType:
description: |
This is the container for reference to a OneRoster 'Org' object that has an allocated sourcedId (GUID).
type: object
required:
- href
- sourcedId
- type
x-1edtech-confidentiality: unrestricted
properties:
href:
description: The URI for the type of object being referenced. Model Primitive Datatype = AnyURI.
type: string
format: uri
sourcedId:
description: The globally unique identifier of the object being referenced. Model Primitive Datatype = String.
type: string
type:
description: |
The type of object being referenced i.e. an 'org'.
type: string
enum:
- org
additionalProperties: false
OrgSetDType:
description: |
This is the container for a collection of org instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.
type: object
x-1edtech-confidentiality: unrestricted
properties:
orgs:
description: |
The collection of org instances. The order is not significant. The corresponding query constraints may result in no instances being returned.
type: array
minItems: 0
items:
$ref: "#/components/schemas/OrgDType"
additionalProperties: false
ResourceGUIDRefDType:
description: |
This is the container for reference to a OneRoster 'Resource' object that has an allocated sourcedId (GUID).
type: object
required:
- href
- sourcedId
- type
x-1edtech-confidentiality: unrestricted
properties:
href:
description: The URI for the type of object being referenced. Model Primitive Datatype = AnyURI.
type: string
format: uri
sourcedId:
description: The globally unique identifier of the object being referenced. Model Primitive Datatype = String.
type: string
type:
description: |
The type of object being referenced i.e. a 'resource'.
type: string
enum:
- resource
additionalProperties: false
RoleDType:
description: |
The container for one mapping between a role and an org for the user.
type: object
required:
- roleType
- role
- org
x-1edtech-privacy:
- role
- userProfile
x-1edtech-confidentiality: restricted
x-1edtech-confidentiality-normal:
- role
x-1edtech-confidentiality-restricted:
- userProfile
properties:
roleType:
description: |
Indicates if this role is the primary or secondary role for that org. There MUST be one, and only one, primary role for each org.
type: string
enum:
- primary
- secondary
role:
description: |
The role of the user in the org. The permitted values are from an enumerated list.
anyOf:
- enum:
- aide
- counselor
- districtAdministrator
- principal
- siteAdministrator
- student
- systemAdministrator
- teacher
- ext:staff
- ext:primaryGuardian
- ext:ownerRepesentative
- ext:responsibleCaregiver
type: string
- description: The data-type that enables an enumerated vocabulary to be extended. Model Primitive Datatype = NormalizedString.
type: string
pattern: "(ext:)[a-zA-Z0-9\\.\\-_]+"
org:
$ref: "#/components/schemas/OrgGUIDRefDType"
userProfile:
description: The identifier for the system/tool/app access account that is relevant to this role in the org. The equivalent UserProfile should exist with a 'profileId' equal to this identifier value. Model Primitive Datatype = AnyURI.
type: string
format: uri
beginDate:
description: The start date on which the role becomes active (inclusive). Model Primitive Datatype = Date.
type: string
format: date
endDate:
description: The end date on which the role becomes inactive (exclusive). Model Primitive Datatype = Date.
type: string
format: date
additionalProperties: false
SingleAcademicSessionDType:
description: |
This is the container for a single academicSession instance for a message payload.
type: object
required:
- academicSession
x-1edtech-confidentiality: unrestricted
properties:
academicSession:
$ref: "#/components/schemas/AcademicSessionDType"
additionalProperties: false
SingleClassDType:
description: |
This is the container for a single class instance for a message payload.
type: object
required:
- class
x-1edtech-confidentiality: unrestricted
properties:
class:
$ref: "#/components/schemas/ClassDType"
additionalProperties: false
SingleCourseDType:
description: |
This is the container for a single course instance for a message payload.
type: object
required:
- course
x-1edtech-confidentiality: unrestricted
properties:
course:
$ref: "#/components/schemas/CourseDType"
additionalProperties: false
SingleDemographicsDType:
description: |
This is the container for a single demographics instance for a message payload.
type: object
required:
- demographics
x-1edtech-privacy:
- demographics
x-1edtech-confidentiality: veryrestricted
x-1edtech-confidentiality-veryrestricted:
- demographics
properties:
demographics:
$ref: "#/components/schemas/DemographicsDType"
additionalProperties: false
SingleEnrollmentDType:
description: |
This is the container for a single enrollment instance for a message payload.
type: object
required:
- enrollment
x-1edtech-privacy:
- enrollment
x-1edtech-confidentiality: normal
x-1edtech-confidentiality-normal:
- enrollment
properties:
enrollment:
$ref: "#/components/schemas/EnrollmentDType"
additionalProperties: false
SingleOrgDType:
description: |
This is the container for a single org instance for a message payload.
type: object
required:
- org
x-1edtech-confidentiality: unrestricted
properties:
org:
$ref: "#/components/schemas/OrgDType"
additionalProperties: false
SingleUserDType:
description: |
This is the container for a single user instance for a message payload.
type: object
required:
- user
x-1edtech-privacy:
- user
x-1edtech-confidentiality: restricted
x-1edtech-confidentiality-restricted:
- user
properties:
user:
$ref: "#/components/schemas/UserDType"
additionalProperties: false
UserDType:
description: |
Users, Teachers and Students are human beings that are teaching or studying in a class respectively. A single User class is used to represent both teachers and students and a role property is used to distinguish a user's natural role.Humans may have relationships with other humans. For example, a student may have parents. The 'agents' attribute allows for relationships between humans to be expressed. Note that these are typically from the point of view of the student - so a student will link to its parents (via the agent attribute). The reverse view MUST also be modeled, so for example, a user of role 'parent' MUST have agents that are of type 'student'. Note: Teachers MUST NOT be set as agents of students i.e. the teaching relationship is covered via enrollments.
type: object
required:
- sourcedId
- status
- dateLastModified
- username
- enabledUser
- givenName
- familyName
- roles
x-1edtech-privacy:
- sourcedId
- userMasterIdentifier
- username
- userIds
- givenName
- familyName
- middleName
- preferredGivenName
- preferredMiddleName
- preferredFamilyName
- pronouns
- roles
- userProfiles
- email
- sms
- phone
- agents
- metadata
x-1edtech-confidentiality: restricted
x-1edtech-confidentiality-normal:
- sourcedId
- userMasterIdentifier
- username
- userIds
- givenName
- familyName
- middleName
- preferredGivenName
- preferredMiddleName
- preferredFamilyName
- pronouns
- email
- sms
- phone
- agents
- metadata
x-1edtech-confidentiality-restricted:
- roles
- userProfiles
properties:
sourcedId:
description: The sourcedId of the object. All objects MUST be identified by a Source Identifier. This is an interoperability System ID for an object. This is the identifier that SYSTEMS will refer to when making API calls, or when needing to identify an object. It is RECOMMENDED that systems are able to map whichever local ids (e.g. database key fields) they use to SourcedId. The sourcedId of an object is considered an addressable property of an entity and as such will not be treated as Personally Identifiable Information (PII) by certified products. Therefore, as a part of certification, vendors will be required to declare that they will notify customers via documentation or other formal and documented agreement that sourcedIds should never contain PII in general. Model Primitive Datatype = String.
type: string
status:
description: |
All objects MUST BE either 'active' or 'tobedeleted'. Something which is flagged 'tobedeleted' is to be considered safe to delete. Systems can delete records that are flagged as such if they wish, but they are not under any compulsion to do so. In v1.1 the enumeration value of 'inactive' was removed and so for backwards compatibility all such marked objects should be interpreted as 'tobedeleted'.
type: string
enum:
- active
- tobedeleted
dateLastModified:
description: All objects MUST be annotated with the dateTime upon which they were last modified. This enables requesters to query for just the latest objects. DateTimes MUST be expressed in the format 'YYYY-MM-DDThh:mm:ss.sssZ' [ISO 8601]. Model Primitive Datatype = DateTime.
type: string
format: date-time
userMasterIdentifier:
description: The master unique identifier for this user. This is NOT the same as the user's interoperability 'sourcedId'. This should be used to ensure that all of the system identifiers/accounts etc. can be reconciled to the same user. How this identifier is assigned and its format is beyond the scope of this specification. Model Primitive Datatype = NormalizedString.
type: string
username:
description: The user name assigned to the user. NOTE - This has been kept for backwards compatibility with OneRoster 1.1 and the new 'userProfiles' characteristic SHOULD be used instead. Model Primitive Datatype = NormalizedString.
type: string
userIds:
description: |
The set of external user identifiers that should be used for this user, if for some reason the sourcedId cannot be used. This might be an active directory id, an LTI id, or some other machine-readable identifier that is used for this person.
type: array
minItems: 0
items:
$ref: "#/components/schemas/UserIdDType"
enabledUser:
description: |
This is used to determine whether or not the record is active in the local system. 'false' denotes that the record is active but system access is curtailed according to the local administration rules.
type: string
enum:
- true
- false
givenName:
description: The given name. Also, known as the first name. Model Primitive Datatype = NormalizedString.
type: string
familyName:
description: The family name. Also, known as the last name. Model Primitive Datatype = NormalizedString.
type: string
middleName:
description: The set of middle names. If more than one middle name is needed separate using a space e.g. 'Wingarde Granville'. Model Primitive Datatype = NormalizedString.
type: string
preferredGivenName:
description: The user's preferred given name. This attribute was added in version 1.2. Model Primitive Datatype = NormalizedString.
type: string
preferredMiddleName:
description: The user's preferred middle name(s). This attribute was added in version 1.2. Model Primitive Datatype = NormalizedString.
type: string
preferredFamilyName:
description: The user's preferred family name. This attribute was added in version 1.2. Model Primitive Datatype = NormalizedString.
type: string
pronouns:
description: The pronoun(s) by which this person is referenced. Examples (in the case of English) include 'she/her/hers', 'he/him/his', 'they/them/theirs', 'ze/hir/hir', 'xe/xir', or a statement that the person's name should be used instead of any pronoun. Model Primitive Datatype = NormalizedString.
type: string
roles:
description: |
The set of roles for each of the orgs to which the user is affiliated. This is expressed as a set of role/org tuples.
type: array
minItems: 1
items:
$ref: "#/components/schemas/RoleDType"
userProfiles:
description: |
The set of system/app/tool profiles for the user.
type: array
minItems: 0
items:
$ref: "#/components/schemas/UserProfileDType"
primaryOrg:
$ref: "#/components/schemas/OrgGUIDRefDType"
email:
description: The email address for the user. Model Primitive Datatype = NormalizedString.
type: string
sms:
description: The SMS number for the user. Model Primitive Datatype = NormalizedString.
type: string
phone:
description: The phone number for the user. Model Primitive Datatype = NormalizedString.
type: string
agents:
description: |
The links to other people i.e. User 'sourcedIds'.
type: array
minItems: 0
items:
$ref: "#/components/schemas/UserGUIDRefDType"
grades:
description: Grade(s) for which a user with role 'student' is enrolled. The permitted vocabulary should be defined as part of the adoption and deployment process. See the Implementation Guide [OR-IMPL-12] for more details on how to define/use such a vocabulary. Model Primitive Datatype = NormalizedString.
type: array
minItems: 0
items:
type: string
resources:
description: |
The identifiers (GUIDs) for the set of resources that are to be made available to the user. These are the sourcedIds that should be used for obtaining the metadata about the resources using the OR 1.2 Resources Service [OR-RES-SM-12].
type: array
minItems: 0
items:
$ref: "#/components/schemas/ResourceGUIDRefDType"
metadata:
$ref: "#/components/schemas/MetadataUserDType"
additionalProperties: false
UserGUIDRefDType:
description: |
This is the container for reference to a OneRoster 'User' object that has an allocated sourcedId (GUID).
type: object
required:
- href
- sourcedId
- type
x-1edtech-confidentiality: unrestricted
properties:
href:
description: The URI for the type of object being referenced. Model Primitive Datatype = AnyURI.
type: string
format: uri
sourcedId:
description: The globally unique identifier of the object being referenced. Model Primitive Datatype = String.
type: string
type:
description: |
The type of object being referenced i.e. a 'user'.
type: string
enum:
- user
additionalProperties: false
UserIdDType:
description: |
This is the set of external user identifiers that should be used for this user, if for some reason the sourcedId cannot be used. This might be an active directory id, an LTI id, or some other machine-readable identifier that is used for this person.
type: object
required:
- type
- identifier
x-1edtech-privacy:
- type
- identifier
x-1edtech-confidentiality: normal
x-1edtech-confidentiality-normal:
- type
- identifier
properties:
type:
description: |
The type of identifier. This is no predefined vocabulary. In this Profile the data-type has been changed to an enumerated vocabulary.
type: string
enum:
- feideID
- UPN
- personFIN
- personLIN
- personNIN
- personNINencrypted
- sisID
- studentID
- username
- workforceID
identifier:
description: The user identifier. Model Primitive Datatype = String.
type: string
additionalProperties: false
UserProfileDType:
description: |
The container for the information about a User Profile that will provide the user with access to some system, application, tool, etc.
type: object
required:
- profileId
- profileType
- vendorId
x-1edtech-privacy:
- profileId
- credentials
x-1edtech-confidentiality: restricted
x-1edtech-confidentiality-normal:
- profileId
x-1edtech-confidentiality-restricted:
- credentials
properties:
profileId:
description: The unique identifier for the profile. This does not need to be a globally unique identifier but it must be unique within the scope of the user. Model Primitive Datatype = AnyURI.
type: string
format: uri
profileType:
description: The type of profile. This should be a human readable label that has some significance in the context of the related system, app, tool, etc. Model Primitive Datatype = NormalizedString.
type: string
vendorId:
description: The unique identifier for the vendor of the system, tool, app, etc. which requires the use of this profile. Model Primitive Datatype = NormalizedString.
type: string
applicationId:
description: Identifier for the application associated with the account. The nature, and how this identifier is assigned is not defined by this specification. This may have a value of 'default' to denote this account should be used for default access to all applications related to this vendor. Model Primitive Datatype = NormalizedString.
type: string
description:
description: A human readable description of the use of the profile. This should not contain any security information for access to the account. Model Primitive Datatype = String.
type: string
credentials:
description: |
The set of credentials that are available for access to this profile.
type: array
minItems: 0
items:
$ref: "#/components/schemas/CredentialDType"
additionalProperties: false
UserSetDType:
description: |
This is the container for a collection of user instances for a message payload. This may be empty if no instances are found that sustain the applied query constraints. The order is not significant.
type: object
x-1edtech-privacy:
- users
x-1edtech-confidentiality: restricted
x-1edtech-confidentiality-restricted:
- users
properties:
users:
description: |
The collection of user instances. The order is not significant. The corresponding query constraints may result in no instances being returned.
type: array
minItems: 0
items:
$ref: "#/components/schemas/UserDType"
additionalProperties: false
imsx_CodeMinorDType:
description: |
This is the container for the set of code minor status codes reported in the responses from the Service Provider.
type: object
required:
- imsx_codeMinorField
x-1edtech-confidentiality: unrestricted
properties:
imsx_codeMinorField:
description: |
Each reported code minor status code.
type: array
minItems: 1
items:
$ref: "#/components/schemas/imsx_CodeMinorFieldDType"
additionalProperties: false
imsx_CodeMinorFieldDType:
description: |
This is the container for a single code minor status code.
type: object
required:
- imsx_codeMinorFieldName
- imsx_codeMinorFieldValue
x-1edtech-confidentiality: unrestricted
properties:
imsx_codeMinorFieldName:
description: This should contain the identity of the system that has produced the code minor status code report. In most cases this will be the target service provider denoted as 'TargetEndSystem'. Model Primitive Datatype = NormalizedString.
type: string
default: TargetEndSystem
imsx_codeMinorFieldValue:
description: |
The code minor status code (this is a value from the corresponding enumerated vocabulary).
type: string
enum:
- fullsuccess
- invalid_filter_field
- invalid_selection_field
- invaliddata
- unauthorisedrequest
- forbidden
- server_busy
- unknownobject
- internal_server_error
additionalProperties: false
imsx_StatusInfoDType:
description: |
This is the container for the status code and associated information returned within the HTTP messages received from the Service Provider. For the OneRoster Rostering service this object will only be returned to provide information about a failed request i.e. it will NOT be in the payload for a successful request. See Appendix B for further information on the interpretation of the information contained within this class.
type: object
required:
- imsx_codeMajor
- imsx_severity
x-1edtech-confidentiality: unrestricted
properties:
imsx_codeMajor:
description: |
The code major value (from the corresponding enumerated vocabulary). See Appendix B for further information on the interpretation of this set of codes. The permitted vocabulary for the values for the CodeMajor field.
type: string
enum:
- success
- processing
- failure
- unsupported
imsx_severity:
description: |
The severity value (from the corresponding enumerated vocabulary). See Appendix B for further information on the interpretation of this set of codes.
type: string
enum:
- status
- warning
- error
imsx_description:
description: A human readable description supplied by the entity creating the status code information. Model Primitive Datatype = String.
type: string
imsx_CodeMinor:
$ref: "#/components/schemas/imsx_CodeMinorDType"
additionalProperties: false
GrepGroupsDType:
description: |
This is a new class defined in this Profile to hold information about the defined Grep Groups.
type: object
required:
- 1edtech.grepType
- 1edtech.code
- 1edtech.title
properties:
1edtech.grepType:
description: The type of Grep Group. This is a fixed enumerated vocabulary.
type: string
enum:
- fagkoder
- programomraader
- utdanningsprogram
- aarstrinn
1edtech.code:
description: The unique identifier for the Grep Group. Model Primitive Datatype = NormalizedString.
type: string
1edtech.title:
description: Human readable title for the Grep Group. Model Primitive Datatype = String.
type: string
1edtech.vocabName:
description: |
The name of the source vocabulary. This is an extensible enumerated vocabulary.
anyOf:
- enum:
- GREP
- VIGO
- localCode
type: string
- description: The data-type that enables an enumerated vocabulary to be extended. Model Primitive Datatype = NormalizedString.
type: string
pattern: "(ext:)[a-zA-Z0-9\\.\\-_]+"
1edtech.uri:
description: URI for Grep Group. Model Primitive Datatype = AnyURI.
type: string
format: uri
additionalProperties: false
SubjectCodesDType:
description: |
This is a new class defined in this Profile to hold information about the subjectCodes assigned to a Class or Course. This is the preferred mechanism for providing the subject codes information.
type: object
required:
- 1edtech.code
- 1edtech.title
properties:
1edtech.code:
description: The subject code from the corresponding identified vocabulary. Model Primitive Datatype = NormalizedString.
type: string
1edtech.title:
description: Human-readable title of the subject. Model Primitive Datatype = String.
type: string
1edtech.vocabName:
description: |
The name of the source vocabulary. This is an extensible enumerated vocabulary.
anyOf:
- enum:
- GREP
- VIGO
- localCode
type: string
- description: The data-type that enables an enumerated vocabulary to be extended. Model Primitive Datatype = NormalizedString.
type: string
pattern: "(ext:)[a-zA-Z0-9\\.\\-_]+"
1edtech.uri:
description: URI for the definition of the subject code. Model Primitive Datatype = AnyURI.
type: string
format: uri
additionalProperties: false
This section is non-normative.
| Version No. | Release Date | Comments |
|---|---|---|
| 1EdTech Final Release 1.0 | 1st January, 2025 | The first Final Release made available for broad adoption. |
- [BCP47]
- Tags for Identifying Languages. A. Phillips, Ed.; M. Davis, Ed.. IETF. September 2009. Best Current Practice. URL: https://www.rfc-editor.org/rfc/rfc5646
- [ISO6523]
- ISO/IEC 6523:2023 - Information Trechnology - Structure for the identification of organizations and organizations parts. ISO/IEC. 2023. URL: https://www.iso.org/standard/82246.html
- [OpenAPI3]
- OpenAPI Specification 3.0. Open API Initiative (Linux Foundation). July 2017. URL: https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md
- [OR-CSV-121]
- OneRoster 1.2.1 CSV Binding Final Release 1.0. 1EdTech Consortium, Inc. August, 2023. URL: https://www.imsglobal.org/spec/oneroster/v1p2/bind/csv/
- [OR-IG-12]
- OneRoster 1.2 Implementation Guide Final Release 1.0. 1EdTech Consortium, Inc. September, 2022. URL: https://www.imsglobal.org/lis/imsonerosterv1p2/imsOneRosterv1p2-bestpracticesv1p0.html
- [ORABS-BD-10]
- OneRoster 1.0 Student Absence Service REST/JSON Binding Candidate Final 1.0. 1EdTech Consortium, Inc. June, 2023. URL: https://www.imsglobal.org/spec/oneroster/v1p0/absence/bind
- [ORABS-SM-10]
- OneRoster 1.0 Student Absence Service Candidate Final 1.0. 1EdTech Consortium, Inc. June, 2023. URL: https://www.imsglobal.org/spec/oneroster/v1p0/absence/info
- [ORGBK-ARP-10]
- Assessment Results Profile for Gradebook Services Final Release 1.0. 1EdTech Consortium, Inc. September, 2022. URL: https://www.imsglobal.org/lis/imsonerosterv1p2/imsOneRosterv1p2-assessmentresults-profilev1p0.html
- [ORGBK-BD-12]
- OneRoster 1.2 Gradebook Services REST/JSON Binding Final Release 1.0. 1EdTech Consortium, Inc. September, 2022. URL: https://www.imsglobal.org/sites/default/files/spec/oneroster/v1p2/gradebook-restbinding/OneRosterv1p2GradebookService_RESTBindv1p0.html
- [ORGBK-SM-12]
- OneRoster 1.2 Gradebook Services Final Release 1.0. 1EdTech Consortium, Inc. September, 2022. URL: https://www.imsglobal.org/sites/default/files/spec/oneroster/v1p2/gradebook-informationmodel/OneRosterv1p2GradebookService_InfoModelv1p0.html
- [ORRES-BD-12]
- OneRoster 1.2 Resource Services REST/JSON Binding Final Release 1.0. 1EdTech Consortium, Inc. September, 2022. URL: https://www.imsglobal.org/sites/default/files/spec/oneroster/v1p2/resources-restbinding/OneRosterv1p2ResourcesService_RESTBindv1p0.html
- [ORRES-SM-12]
- OneRoster 1.2 Resource Services Final Release 1.0. 1EdTech Consortium, Inc. September, 2022. URL: https://www.imsglobal.org/sites/default/files/spec/oneroster/v1p2/resources-informationmodel/OneRosterv1p2ResourcesService_InfoModelv1p0.html
- [ORROS-BD-12]
- OneRoster 1.2 Rostering Services REST/JSON Binding Final Release 1.0. 1EdTech Consortium, Inc. September, 2022. URL: https://www.imsglobal.org/sites/default/files/spec/oneroster/v1p2/rostering-restbinding/OneRosterv1p2RosteringService_RESTBindv1p0.html
- [ORROS-NOR-BD-12]
- Norwegian K-12 Profile OneRoster 1.2 Rostering Services REST/JSON Binding Candidate Final 1.0. 1EdTech Consortium, Inc. February, 2024. URL: https://www.imsglobal.org/spec/oneroster/v1p2/norwegiank12/bind
- [ORROS-SM-12]
- OneRoster 1.2 Rostering Services Final Release 1.0. 1EdTech Consortium, Inc. September, 2022. URL: https://www.imsglobal.org/sites/default/files/spec/oneroster/v1p2/rostering-informationmodel/OneRosterv1p2RosteringService_InfoModelv1p0.html
- [PRIVACY-10]
- Privacy Framework 1.0 Candidate Final 1.0. 1EdTech Consortium, Inc. June, 2024. URL: https://www.imsglobal.org/spec/privacy/v1p0/
- [RFC2119]
- Key words for use in RFCs to Indicate Requirement Levels. S. Bradner. IETF. March 1997. Best Current Practice. URL: https://www.rfc-editor.org/rfc/rfc2119
- [OR-EU-12]
- OneRoster 1.2 European Profile Candidate Final 1.0. 1EdTech Consortium, Inc. July, 2020. URL: https://www.imsglobal.org/spec/oneroster/v1p2/european
- [OR-OVIEW-12]
- OneRoster 1.2 Standard 2.0. Colin, Smythe; Matthew, Richards; Joshua, McGhee. IMS Global Learning Consortium, Inc. September, 2022. IMS Final Release. URL: https://www.imsglobal.org/spec/oneroster/v1p2/
The following individuals contributed to the development of this document:
| Name | Organization |
|---|---|
| Sindre Gusfre Berge | The Norwegian Directorate for Education and Training |
| Cristoffer Bråthen | Conexus |
| Torleif Gravelsæter | Norwegian Agency for Shared Services in Education and Research |
| Markus Gylling | 1EdTech Consortium |
| Knut Ivar Skogland | Vigilo |
| Kjartan Müller | The Norwegian Directorate for Education and Training |
| Colin Smythe | 1EdTech Consortium |
| Christian Stange | NDLA |
| Frode Utvik | Vigilo |
| Knut Ivar Skogland | Vigilo AS |
| Jo Are I. Rivelsrud | Vigilo AS |
| Heine Halvorsen | Conexus AS |
| Jon Harald Berge | Conexus AS |
| Kjartan Rekdal Müller | Udir |
| Aurimas Valauskas | Visma |
| Sindre Berge | Udir |
| Julija Tkaca | Udir |
| Eva Mjovik | Udir |
| Joakim Nylén | Utdanningsetaten Oslo |
| Christofer Nygård | Utdanningsetaten Oslo |
| Arild B. Anda | Utdanningsetaten Oslo |
| Mikael Nilsson | IST |
| Trond J. Undrum | Strigoo AS |
| Hans Martin Graedler | Visma Enterprise AS |
| Silje Hæhre Lien | IST |
| Dovydas Vaitkus | Visma Enterprise AS |
| Adomas Sutkevicius | Visma |
| Jon Harald | Conexus |
| Christoffer Bråthen | Conexus |
| Leslie McCafferty | 1EdTech |
| Amund Elstad | IST |
| Joakim Wold Nylén | Osloskolen |







