University of Washington Curriculum API

The Curriculum API from University of Washington — 1 operation(s) for curriculum.

OpenAPI Specification

university-of-washington-curriculum-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: IdCard Web Service (IdCardWS) Campus Curriculum API
  description: IdCard Web Service (IdCardWS) provides a RESTful API to UW IdCard data. Subscribe to http://mailman.u.washington.edu/mailman/listinfo/idcardws-users to get notifications about planned outages, support and the announcement of new features.
  contact:
    name: Enterprise Web Services & Events Team
    url: https://itconnect.uw.edu/service/enterprise-web-services-and-events/
    email: idcardws-support@uw.edu
  version: v1
servers:
- url: /idcard
tags:
- name: Curriculum
paths:
  /v5/curriculum:
    get:
      tags:
      - Curriculum
      summary: Search for curriculums that match the supplied parameters
      description: "<pre>\r\n                {\r\n                    \"DisplayTitle\" : \"Curriculum Search\",\r\n                    \"ews_guid\" : \"AC340F89-812E-4FCB-B357-DCCFE65E0059\",\r\n                    \"LongDescription\" : \"Search for a list of curriculum results that match the supplied parameters\",\r\n                    \"ShortDescription\" : \"Search for a list of curriculum results\",\r\n                    \"OriginatingSchema\" : [ { \"source\":\"swssdb\" } ],\r\n                    \"Notes\" : \"This resource requires any of the following ASTRA roles:\r\n                                 - sws:Support\r\n                                 - sws:GradeSubmitter\r\n                                 - sws:UnitReader\r\n                               This resource supports the following authentication types:\r\n                                 - X.509 Certificate\r\n                                 - NetID\r\n                                 - AccessToken\r\n                               You do not need to specify all parameters to return a successful search result. This search resource \r\n                               supports different combinations of search parameters to provide different search results.\r\n                               For college abbreviations refer to the college resource.  \r\n                               For department abbreviations refer to the department resource.\",\r\n                    \"Links\" : [ \"https://metadata.uw.edu/Catalog/ViewItem/Term/studentdata.curriculum\" ],\r\n                    \"Synonyms\" : []\r\n                }\r\n                </pre>"
      operationId: CurriculumSearch
      parameters:
      - name: year
        in: query
        description: 'The 4 digit year.  For example: 2025'
        required: true
        schema:
          type: string
          default: ''
      - name: quarter
        in: query
        description: 'The 1 digit quarter.  For example: 0=Default, 1=winter, 2=spring, 3=summer, 4=autumn'
        required: true
        schema:
          type: string
          default: ''
      - name: future_terms
        in: query
        description: Number of future terms to look ahead
        schema:
          type: integer
          format: int32
          default: 0
      - name: department_abbreviation
        in: query
        description: ''
        schema:
          type: string
          default: ''
      - name: college_abbreviation
        in: query
        description: ''
        schema:
          type: string
          default: ''
      - name: view_unpublished
        in: query
        description: ''
        schema:
          type: string
          default: 'false'
      responses:
        '400':
          description: 'Invalid input | Invalid arg: college abbreviation'
        '200':
          description: OK
          content:
            text/html:
              schema:
                $ref: '#/components/schemas/CurriculumSearchViewModel'
            application/xml:
              schema:
                $ref: '#/components/schemas/CurriculumSearchViewModel'
            text/xml:
              schema:
                $ref: '#/components/schemas/CurriculumSearchViewModel'
            text/plain:
              schema:
                $ref: '#/components/schemas/CurriculumSearchViewModel'
            application/json:
              schema:
                $ref: '#/components/schemas/CurriculumSearchViewModel'
            text/json:
              schema:
                $ref: '#/components/schemas/CurriculumSearchViewModel'
        '202':
          description: Accepted
        '301':
          description: MovedPermanently
        '302':
          description: Found
        '304':
          description: NotModified
        '401':
          description: Identity '{identity}' is not authorized to access this resource.
        '405':
          description: MethodNotAllowed
        '500':
          description: InternalServerError
        '503':
          description: ServiceUnavailable
components:
  schemas:
    CurriculumSearchViewModel:
      type: object
      properties:
        TotalCount:
          type: integer
          format: int32
        Curricula:
          type: array
          items:
            $ref: '#/components/schemas/CurriculumResourceUri'
          nullable: true
          readOnly: true
        PageSize:
          type: string
          nullable: true
        PageStart:
          type: string
          nullable: true
        Current:
          $ref: '#/components/schemas/CurriculumSearchResourceUri'
        Next:
          $ref: '#/components/schemas/CurriculumSearchResourceUri'
        Previous:
          $ref: '#/components/schemas/CurriculumSearchResourceUri'
      additionalProperties: false
      description: "{\r\n    \"DisplayTitle\" : \"Curriculum Search Model\",\r\n    \"TargetSchema\" : [{\"target\" : \"SWS.Curriculum\"}]\r\n}"
    CurriculumResourceUri:
      type: object
      properties:
        Year:
          type: integer
          description: "<pre>\r\n            {\r\n                \"OriginatingSchema\" : [\r\n                    { \"source\":\"SWSSDB.sr_course_titles.first_eff_yr\" },\r\n                    { \"source\":\"SWSSDB.sr_course_titles.last_eff_yr\" }\r\n                ],\r\n                \"TechnicalDescription\": \"Year\"\r\n            }\r\n            </pre>"
          format: int32
        Quarter:
          type: string
          description: "<pre>\r\n            {\r\n                \"OriginatingSchema\" : [\r\n                    { \"source\":\"SWSSDB.sr_course_titles.first_eff_qtr\" },\r\n                    { \"source\":\"SWSSDB.sr_course_titles.last_eff_qtr\" }\r\n                ],\r\n                \"TechnicalDescription\": \"Quarter\"\r\n            }\r\n            </pre>"
          nullable: true
        CurriculumAbbreviation:
          type: string
          description: "<pre>\r\n            {\r\n                \"OriginatingSchema\" : [\r\n                    { \"source\":\"SWSSDB.sr_curric_code.curric_abbr\" }\r\n                ],\r\n                \"TechnicalDescription\": \"Curriculum abbreviation\"\r\n            }\r\n            </pre>"
          nullable: true
        CurriculumName:
          type: string
          description: "<pre>\r\n            {\r\n                \"OriginatingSchema\" : [\r\n                    { \"source\":\"SWSSDB.sr_curric_code.curric_name\" }\r\n                ],\r\n                \"TechnicalDescription\": \"Curriculum name\"\r\n            }\r\n            </pre>"
          nullable: true
        CurriculumFullName:
          type: string
          description: "<pre>\r\n            {\r\n                \"OriginatingSchema\" : [\r\n                    { \"source\":\"SWSSDB.sr_curric_code.curric_full_nm\" }\r\n                ],\r\n                \"TechnicalDescription\": \"Curriculum full name\"\r\n            }\r\n            </pre>"
          nullable: true
        Href:
          type: string
          nullable: true
      additionalProperties: false
      description: "{\r\n    \"DisplayTitle\" : \"Expanded Curriculum Resource URI\",\r\n    \"TargetSchema\" : [{\"target\" : \"SWS.Curriculum\"}],\r\n    \"TargetOperationId\" : [\"CurriculumSearch\"]\r\n}"
    CurriculumSearchResourceUri:
      type: object
      properties:
        Year:
          type: integer
          description: "<pre>\r\n            {\r\n                \"OriginatingSchema\" : [\r\n                    { \"source\":\"url\" }\r\n                ],\r\n                \"TechnicalDescription\": \"User supplied value\"\r\n            }\r\n            </pre>"
          format: int32
        Quarter:
          type: string
          description: "<pre>\r\n            {\r\n                \"OriginatingSchema\" : [\r\n                    { \"source\":\"url\" }\r\n                ],\r\n                \"TechnicalDescription\": \"User supplied value\"\r\n            }\r\n            </pre>"
          nullable: true
        DepartmentAbbreviation:
          type: string
          description: "<pre>\r\n            {\r\n                \"OriginatingSchema\" : [\r\n                    { \"source\":\"url\" }\r\n                ],\r\n                \"TechnicalDescription\": \"User supplied value\"\r\n            }\r\n            </pre>"
          nullable: true
        CollegeAbbreviation:
          type: string
          description: "<pre>\r\n            {\r\n                \"OriginatingSchema\" : [\r\n                    { \"source\":\"url\" }\r\n                ],\r\n                \"TechnicalDescription\": \"User supplied value\"\r\n            }\r\n            </pre>"
          nullable: true
        FutureTerms:
          type: integer
          description: "<pre>\r\n            {\r\n                \"OriginatingSchema\" : [\r\n                    { \"source\":\"url\" }\r\n                ],\r\n                \"TechnicalDescription\": \"User supplied value\"\r\n            }\r\n            </pre>"
          format: int32
        ViewUnpublished:
          type: boolean
        Href:
          type: string
          nullable: true
      additionalProperties: false
      description: "{\r\n    \"DisplayTitle\" : \"Curriculum Search Resource URI\",\r\n    \"TargetSchema\" : [{\"target\" : \"SWS.Curriculum\"}],\r\n    \"TargetOperationId\" : [\"CurriculumSearch\"]\r\n}"