openapi: 3.2.0 info: version: v1 title: Students Rosters API description: Course roster information from the Office of the Registrar. servers: - url: https://api.ucsb.edu/students security: - ucsb-api-key: [] - BasicAuth: [] tags: - name: Rosters paths: /rosters/v1/rosters/{quarter}: get: tags: - Rosters operationId: /rosters/v1/rosters/{quarter} parameters: - name: quarter in: path description: Quarter with format YYYYQ required: true schema: type: string - name: deptCode in: query description: 5 character department code, which can be found in the Student Record Lookup API. required: false schema: type: string - name: courseId in: query description: '13 character course Id with format SSSSSPPPNNNNUUU , First 5 char is course subject, Next 3 char is course prefix then next 3 char is course number and last 2 char is course suffix. For example ''ES 1- 16B '' can be broken down in subject ''ES '' prefix ''1- '' number '' 16'' suffix ''B ''' required: false schema: type: string - name: objLevelCode in: query description: 1 character code, The academic program objective level must be 'G'raduate or 'U'ndergraduate. required: false schema: type: string - name: ucsb-api-version in: header description: Specific api version to use. required: false schema: type: string default: '1.0' responses: '200': description: Get Rosters For department or Course. content: application/json: schema: $ref: '#/components/schemas/RosterCourse' text/json: schema: $ref: '#/components/schemas/RosterCourse' '400': description: Bad or malformed request. See response body for details. content: application/json: schema: $ref: '#/components/schemas/WebApiInvalidModel' text/json: schema: $ref: '#/components/schemas/WebApiInvalidModel' '401': description: Unauthorized. See response body for details. content: application/json: schema: $ref: '#/components/schemas/SimpleMessageModel' text/json: schema: $ref: '#/components/schemas/SimpleMessageModel' '404': description: Resource cannot be found. See response body for details. content: application/json: schema: $ref: '#/components/schemas/SimpleMessageModel' text/json: schema: $ref: '#/components/schemas/SimpleMessageModel' description: 'Search for rosters for a quarter and either Department code or Course Id and optional Objective level. The rosters returned has primary course information such as enroll code, courseId and List of Students enrolled in each sections.' summary: /rosters/v1/rosters/{quarter} x-summary-source: derived components: schemas: RosterSection: description: Roster data for the Non primary sections type: object properties: section: description: Section Number for a course type: string enrollCode: description: 'EnrollCode an unique number assigned to a curriculum' type: string rosters: description: Roster data for the section type: array items: $ref: '#/components/schemas/Roster' SimpleMessageModel: type: object properties: message: type: string WebApiInvalidModel: type: object properties: message: type: string modelState: type: object additionalProperties: type: array items: type: string Roster: description: Roster of Enrolled Students in Section type: object properties: perm: description: Student 7 digit perm type: string unitsAttempted: format: double description: 'Total number of units attempted by the student for the course' type: number RosterCourse: description: Roster data includes course and Enrollment in Sections type: object properties: courseId: description: '13 character course Id with format SSSSSPPPNNNNUUU, Fist 5 char is course subject, Next 3 char is course prefix then next 3 char is course number and last 2 char is course suffix. For example ''ES 1- 16B '' can be broken down in subject ''ES '' prefix ''1- '' number '' 16'' suffix ''B ''' type: string quarter: description: Quarter with format YYYYQ type: string enrollCode: description: 'EnrollCode an unique number assigned to a curriculum' type: string session: description: Session number only for summer quarter type: string sections: description: Roster data for Each section of course type: array items: $ref: '#/components/schemas/RosterSection' securitySchemes: ucsb-api-key: name: ucsb-api-key in: header type: apiKey BasicAuth: type: http scheme: basic