Student Web Service (SWS) Course API

Student Web Service (SWS) Course API — a resource of the UW-IT Student Web Service, split out per resource by the API Evangelist refine step from the institution-published SWS v5 OpenAPI. Specification public; data gated by UW NetID / X.509 client certificate and named ASTRA roles.

Operations 2

GET /v5/course/{year},{quarter},{curriculum_abbreviation},{course_number} Get the information about a specific course #
GET /v5/course #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/university-of-washington-course-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

university-of-washington-course-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Student Web Service (SWS) Course API
  description: Student Web Service (SWS) provides a RESTful API to access and update central student data. Subscribe to http://mailman.u.washington.edu/mailman/listinfo/sws-client-app-dev 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: sws-support@uw.edu
  version: v5
  termsOfService: https://www.washington.edu/online/terms/
servers:
- url: https://ws.admin.washington.edu/student
  description: UW-IT Enterprise Web Services production host for the Student Web Service
externalDocs:
  description: UW-IT Enterprise Web Services registry
  url: https://webservices.washington.edu/sws/
tags:
- name: Course
x-operator: institution
x-provenance:
  method: derived
  source: openapi/_original/university-of-washington-student-web-service.yaml
  generated: '2026-08-30'
  note: Re-based by the university pipeline on 2026-08-30. refine-openapis had welded the IdCard Web Service title/contact/base onto outputs split from the Student Web Service original; identity restored from the true parent named above and the relative base resolved to the production host published on the EWS registry.
paths:
  /v5/course/{year},{quarter},{curriculum_abbreviation},{course_number}:
    get:
      tags:
      - Course
      summary: Get the information about a specific course
      description: "<pre>\n                {\n                    \"DisplayTitle\" : \"Course\",\n                    \"ews_guid\" : \"A081D91E-7332-4975-9C5E-67F0133CC94C\",\n                    \"LongDescription\" : \"Display the information about a specific course. \n                                          Can filter by year, quarter, curriculum and course number.\",\n                    \"ShortDescription\" : \"Display the information about a specific course\",\n                    \"OriginatingSchema\" : [ { \"source\":\"sdb\" }, { \"source\":\"swssdb\" }, { \"source\":\"uweo\" } ],\n                    \"Notes\" : \"This resource requires any of the following ASTRA roles:\n                                 - sws:Support\n                                 - sws:GradeSubmitter\n                                 - sws:UnitReader\n                               This resource supports the following authentication types:\n                                 - X.509 Certificate\n                                 - NetID\n                                 - AccessToken\n                               For curriculum abbreviations see the curriculum resource.\",\n                    \"Links\" : [ \"https://metadata.uw.edu/Catalog/ViewItem/Term/studentdata.course\" ],\n                    \"Synonyms\" : []\n                }\n                </pre>"
      operationId: GetCourse
      parameters:
      - name: year
        in: path
        description: 'The 4 digit year.  For example: 2025'
        required: true
        schema:
          maxLength: 4
          minLength: 4
          type: string
      - name: quarter
        in: path
        description: 'The 1 digit quarter.  For example: 0=Default, 1=winter, 2=spring, 3=summer, 4=autumn'
        required: true
        schema:
          maxLength: 6
          minLength: 6
          type: string
      - name: curriculum_abbreviation
        in: path
        required: true
        schema:
          type: string
      - name: course_number
        in: path
        required: true
        schema:
          maxLength: 3
          minLength: 3
          type: string
      responses:
        '400':
          description: 'Invalid arg: year | Invalid arg: quarter | Invalid arg: curriculum abbreviation | Invalid arg: course number'
        '404':
          description: No course with requested year, quarter, curriculum, and course number found.
        '200':
          description: OK
          content:
            text/html:
              schema:
                $ref: '#/components/schemas/CourseViewModel'
            application/xml:
              schema:
                $ref: '#/components/schemas/CourseViewModel'
            text/xml:
              schema:
                $ref: '#/components/schemas/CourseViewModel'
            text/plain:
              schema:
                $ref: '#/components/schemas/CourseViewModel'
            application/json:
              schema:
                $ref: '#/components/schemas/CourseViewModel'
            text/json:
              schema:
                $ref: '#/components/schemas/CourseViewModel'
        '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
  /v5/course:
    get:
      tags:
      - Course
      summary: ''
      description: "<pre>\n                 {\n                     \"DisplayTitle\" : \"Course Search\",\n                     \"ews_guid\" : \"991BDC13-42C4-4EF7-991B-785CC2516B0E\",\n                     \"LongDescription\" : \"Search for courses that match the supplied parameters\",\n                     \"ShortDescription\" : \"Search for courses\",\n                     \"OriginatingSchema\" : [ { \"source\":\"swssdb\" }, { \"source\":\"uweo\" } ],\n                     \"Notes\" : \"This resource requires any of the following ASTRA roles:\n                                  - sws:Support\n                                  - sws:GradeSubmitter\n                                  - sws:UnitReader\n                                This resource supports the following authentication types:\n                                  - X.509 Certificate\n                                  - NetID\n                                  - AccessToken\n                                You do not need to specify all parameters to return a successful search result. This search resource \n                                supports different combinations of search parameters to provide different search results.\n                                For curriculum abbreviations see the curriculum resource.\",\n                     \"Links\" : [ \"https://metadata.uw.edu/Catalog/ViewItem/Term/studentdata.course\" ],\n                     \"Synonyms\" : []\n                 }\n                 </pre>"
      operationId: CourseSearch
      parameters:
      - name: year
        in: query
        description: 'The 4 digit year.  For example: 2025'
        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'
        schema:
          type: string
          default: ''
      - name: curriculum_abbreviation
        in: query
        description: ''
        schema:
          type: string
          default: ''
      - name: course_number
        in: query
        description: ''
        schema:
          type: string
          default: ''
      - name: course_title_contains
        in: query
        description: ''
        schema:
          type: string
          default: ''
      - name: course_title_starts
        in: query
        description: ''
        schema:
          type: string
          default: ''
      - name: exclude_courses_without_sections
        in: query
        description: ''
        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: page_size
        in: query
        description: ''
        schema:
          type: string
          default: ''
      - name: page_start
        in: query
        description: ''
        schema:
          type: string
          default: ''
      - name: changed_since_date
        in: query
        description: If you have a value in ChangedSinceDate all other input fields will be ignored and will return all data that has changed since the date entered. This is used for applications that only need the changes since they last checked without having to know specific details to search by.
        schema:
          type: string
          default: ''
      - name: transcriptable_course
        in: query
        description: "Choose yes, no, or all. If yes then results will include any course that can be creditable such that it can be shown on a transcript. This would include certain classes that also fall under the Educational Outreach (EO). Yes is also the default value chosen for this search criteria if none is specified.\n            If no then only classes from EO will be returned.\n            If all then both transcriptable and non-transcriptable courses will be returned.\n            All will return every course regardless of whether it can be included in a transcript or not."
        schema:
          type: string
          default: 'yes'
      - name: view_unpublished
        in: query
        description: ''
        schema:
          type: string
          default: 'false'
      responses:
        '400':
          description: Invalid input | Invalid number of future terms | exclude_courses_without_sections used with future_terms is undefined | Maximum size for a change since request is 1000 | Page start must be an integer greater than 0. | Maximum size for a change since request is 1000 | Only transcriptable course or changed since or curriculum abbreviation or course title starts or course title contains can be used as a single search parameter
        '200':
          description: OK
          content:
            text/html:
              schema:
                $ref: '#/components/schemas/CourseSearchViewModel'
            application/xml:
              schema:
                $ref: '#/components/schemas/CourseSearchViewModel'
            text/xml:
              schema:
                $ref: '#/components/schemas/CourseSearchViewModel'
            text/plain:
              schema:
                $ref: '#/components/schemas/CourseSearchViewModel'
            application/json:
              schema:
                $ref: '#/components/schemas/CourseSearchViewModel'
            text/json:
              schema:
                $ref: '#/components/schemas/CourseSearchViewModel'
        '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:
    GeneralEducationRequirementViewModel:
      type: object
      properties:
        Diversity:
          type: boolean
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.time_schedule.diversity_crs\" },\n                    { \"source\":\"UWEO.selSWSCourseSections.GeneralEducationRequirements/Diversity\"}\n                ],\n                \"TechnicalDescription\": \"Diversity\"\n            }\n            </pre>"
        EnglishComposition:
          type: boolean
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SDB.SWI202.ged.engc\" },\n                    { \"source\":\"UWEO.selSWSCourseSections.GeneralEducationRequirements/EnglishComposition\"}\n                ],\n                \"TechnicalDescription\": \"English composition\"\n            }\n            </pre>"
        IndividualsAndSocieties:
          type: boolean
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SDB.SWI202.ged.ind\" },\n                    { \"source\":\"UWEO.selSWSCourseSections.GeneralEducationRequirements/IndividualsAndSocieties\"}\n                ],\n                \"TechnicalDescription\": \"Individuals and societies\"\n            }\n            </pre>"
        NaturalWorld:
          type: boolean
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SDB.SWI202.ged.nw\" },\n                    { \"source\":\"UWEO.selSWSCourseSections.GeneralEducationRequirements/NaturalWorld\"}\n                ],\n                \"TechnicalDescription\": \"Natural world\"\n            }\n            </pre>"
        QuantitativeAndSymbolicReasoning:
          type: boolean
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SDB.SWI202.ged.qsr\" },\n                    { \"source\":\"UWEO.selSWSCourseSections.GeneralEducationRequirements/QuantitativeAndSymbolicReasoning\"}\n                ],\n                \"TechnicalDescription\": \"Quantitative and symbolic reasoning\"\n            }\n            </pre>"
        VisualLiteraryAndPerformingArts:
          type: boolean
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SDB.SWI202.ged.vlpa\" },\n                    { \"source\":\"UWEO.selSWSCourseSections.GeneralEducationRequirements/VisualLiteraryAndPerformingArts\"}\n                ],\n                \"TechnicalDescription\": \"Visual literary and performing arts\"\n            }\n            </pre>"
        Writing:
          type: boolean
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SDB.SWI202.ged.wrt\" },\n                    { \"source\":\"UWEO.selSWSCourseSections.GeneralEducationRequirements/Writing\"}\n                ],\n                \"TechnicalDescription\": \"Writing\"\n            }\n            </pre>"
      additionalProperties: false
      description: "{\n    \"DisplayTitle\" : \"General Education Requirement Model\",\n    \"TargetSchema\" : [\n         {\"target\" : \"SWS.Section\"},\n         {\"target\" : \"SWS.Course\"}\n    ]\n}"
    CourseViewModel:
      type: object
      properties:
        CourseNumber:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.course.course_number\" },\n                    { \"source\":\"UWEO.selSWSCourse.CourseNumber\" }\n                ],\n                \"TechnicalDescription\": \"Course number\"\n            }\n            </pre>"
        CourseTitle:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_course_titles.course_title\" },\n                    { \"source\":\"UWEO.selSWSCourse.CourseTitle\" }\n                ],\n                \"TechnicalDescription\": \"Course title\"\n            }\n            </pre>"
        CourseCampus:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_course_titles.course_branch\" },\n                    { \"source\":\"UWEO.selSWSCourse.CourseCampus\" }\n                ],\n                \"TechnicalDescription\": \"Course campus\"\n            }\n            </pre>"
        CourseTitleLong:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_course_titles.long_course_title\" },\n                    { \"source\":\"UWEO.selSWSCourse.CourseTitleLong\" }\n                ],\n                \"TechnicalDescription\": \"Course title long\"\n            }\n            </pre>"
        CourseDescription:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.course.course_descr\" },\n                    { \"source\":\"UWEO.selSWSCourse.CourseDescription\" }\n                ],\n                \"TechnicalDescription\": \"Course description\"\n            }\n            </pre>"
        CourseCollege:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_coll_code.college_name\" },\n                    { \"source\":\"UWEO.selSWSCourse.CourseCollege\" }\n                ],\n                \"TechnicalDescription\": \"Course college\"\n            }\n            </pre>"
        CourseComment:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.course.course_comment\" },\n                    { \"source\":\"UWEO.selSWSCourse.CourseComment\" }\n                ],\n                \"TechnicalDescription\": \"Course comment\"\n            }\n            </pre>"
        CreditControl:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.course.credit_control\" },\n                    { \"source\":\"UWEO.selSWSCourse.CreditControl\" }\n                ],\n                \"TechnicalDescription\": \"Credit control\"\n            }\n            </pre>"
        Curriculum:
          $ref: '#/components/schemas/CurriculumShortResourceUri'
        FirstEffectiveTerm:
          $ref: '#/components/schemas/TermResourceUri'
        GradingSystem:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.course.grading_system\" },\n                    { \"source\":\"UWEO.selSWSCourse.GradingSystem\" }\n                ],\n                \"TechnicalDescription\": \"Grading system\"\n            }\n            </pre>"
        LastEffectiveTerm:
          $ref: '#/components/schemas/TermResourceUri'
        MinimumTermCredit:
          type: number
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.course.min_qtr_credits\" },\n                    { \"source\":\"UWEO.selSWSCourse.MinimumTermCredit\" }\n                ],\n                \"TechnicalDescription\": \"Minimum term credit\"\n            }\n            </pre>"
          format: double
        MaximumTermCredit:
          type: number
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.course.max_qtr_credits\" },\n                    { \"source\":\"UWEO.selSWSCourse.MaximumTermCredit\" }\n                ],\n                \"TechnicalDescription\": \"Maximum term credit\"\n            }\n            </pre>"
          format: double
        MaximumCredit:
          type: number
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.course.max_credits\" },\n                    { \"source\":\"UWEO.selSWSCourse.MaximumCredit\" }\n                ],\n                \"TechnicalDescription\": \"Maximum credit\"\n            }\n            </pre>"
          format: double
        GeneralEducationRequirements:
          $ref: '#/components/schemas/GeneralEducationRequirementViewModel'
        RepositoryTimeStamp:
          type:
          - string
          - 'null'
        Metadata:
          type:
          - string
          - 'null'
      additionalProperties: false
      description: "{\n    \"DisplayTitle\" : \"Course Model\",\n    \"TargetSchema\" : [{\"target\" : \"SWS.Course\"}]\n}"
    CourseSearchResourceUri:
      type: object
      properties:
        Year:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        Quarter:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        CurriculumAbbreviation:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        CourseNumber:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        FutureTerms:
          type: integer
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
          format: int32
        CourseTitleStarts:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        CourseTitleContains:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        ExcludeCoursesWithoutSections:
          type: boolean
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        ChangedSinceDate:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        TranscriptableCourse:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        ViewUnpublished:
          type: boolean
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        PageStart:
          type:
          - string
          - 'null'
        PageSize:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"url\" }\n                ],\n                \"TechnicalDescription\": \"User supplied value\"\n            }\n            </pre>"
        Href:
          type:
          - string
          - 'null'
      additionalProperties: false
      description: "{\n    \"DisplayTitle\" : \"Course Search Resource URI\",\n    \"TargetSchema\" : [{\"target\" : \"SWS.Course\"}],\n    \"TargetOperationId\" : [\"CourseSearch\"]\n}"
    TermResourceUri:
      type: object
      properties:
        Href:
          type:
          - string
          - 'null'
        Year:
          type: integer
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_major_code.major_last_yr\" },\n                    { \"source\":\"SWSSDB.sr_major_code.major_first_yr\" },\n                    { \"source\":\"SWSSDB.sys_tbl_39_calendar.table_key\" },\n                    { \"source\":\"SWSSDB.student_1.last_yr_enrolled\" },\n                    { \"source\":\"SDB.SWI610.trm/yr\" },\n                    { \"source\":\"SWSSDB.sr_course_titles.first_eff_yr\" },\n                    { \"source\":\"UWEO.selSWSRegistrations.FirstEffectiveTerm/Year\"}\n                ],\n                \"TechnicalDescription\": \"Year for the given term\"\n            }\n            </pre>"
          format: int32
        Quarter:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_major_code.major_last_qtr\" },\n                    { \"source\":\"SWSSDB.sr_major_code.major_first_qtr\" },\n                    { \"source\":\"SWSSDB.sys_tbl_39_calendar.table_key\" },\n                    { \"source\":\"SWSSDB.student_1.last_qtr_enrolled\" },\n                    { \"source\":\"SDB.SWI610.trm/qtr\" },\n                    { \"source\":\"SWSSDB.sr_course_titles.first_eff_qtr\" },\n                    { \"source\":\"UWEO.selSWSRegistrations.FirstEffectiveTerm/Quarter\"}\n                ],\n                \"TechnicalDescription\": \"Quarter for the given term\"\n            }\n            </pre>"
      additionalProperties: false
      description: "{\n    \"DisplayTitle\" : \"Term Resource URI\",\n    \"TargetSchema\" : [{\"target\" : \"SWS.Term\"}],\n    \"TargetOperationId\" : [\"GetTerm\"]\n}"
    CourseSearchViewModel:
      type: object
      properties:
        TotalCount:
          type: integer
          format: int32
        PageSize:
          type:
          - string
          - 'null'
        PageStart:
          type:
          - string
          - 'null'
        Courses:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/CourseSearchResultViewModel'
          readOnly: true
        Current:
          $ref: '#/components/schemas/CourseSearchResourceUri'
        Previous:
          $ref: '#/components/schemas/CourseSearchResourceUri'
        Next:
          $ref: '#/components/schemas/CourseSearchResourceUri'
      additionalProperties: false
      description: "{\n    \"DisplayTitle\" : \"Course Search Model\",\n    \"TargetSchema\" : [{\"target\" : \"SWS.Course\"}]\n}"
    CourseSearchResultViewModel:
      type: object
      properties:
        Href:
          type:
          - string
          - 'null'
        Year:
          type: integer
          format: int32
        Quarter:
          type:
          - string
          - 'null'
        CourseTitle:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_course_titles.course_title\" },\n                    { \"source\":\"UWEO.selSWSCourse.CourseTitle\" }\n                ],\n                \"TechnicalDescription\": \"Course title\"\n            }\n            </pre>"
        CurriculumAbbreviation:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_curric_code.curric_abbr\" }\n                ],\n                \"TechnicalDescription\": \"Curriculum abbreviation\"\n            }\n            </pre>"
        CourseTitleLong:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_course_titles.long_course_title\" },\n                    { \"source\":\"UWEO.selSWSCourse.CourseTitleLong\" }\n                ],\n                \"TechnicalDescription\": \"Course title long\"\n            }\n            </pre>"
        CourseNumber:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.course.course_number\" },\n                    { \"source\":\"UWEO.selSWSCourse.CourseNumber\" }\n                ],\n                \"TechnicalDescription\": \"Course number\"\n            }\n            </pre>"
      additionalProperties: false
      description: "{\n    \"DisplayTitle\" : \"Course Search Result\",\n    \"TargetSchema\" : [{\"target\" : \"SWS.Course\"}]\n}"
    CurriculumShortResourceUri:
      type: object
      properties:
        Href:
          type:
          - string
          - 'null'
        Year:
          type: integer
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_course_titles.first_eff_yr\" },\n                    { \"source\":\"SWSSDB.sr_course_titles.last_eff_yr\" }\n                ],\n                \"TechnicalDescription\": \"Year\"\n            }\n            </pre>"
          format: int32
        Quarter:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_course_titles.first_eff_qtr\" },\n                    { \"source\":\"SWSSDB.sr_course_titles.last_eff_qtr\" }\n                ],\n                \"TechnicalDescription\": \"Quarter\"\n            }\n            </pre>"
        CurriculumAbbreviation:
          type:
          - string
          - 'null'
          description: "<pre>\n            {\n                \"OriginatingSchema\" : [\n                    { \"source\":\"SWSSDB.sr_curric_code.curric_abbr\" }\n                ],\n                \"TechnicalDescription\": \"Curriculum abbreviation\"\n            }\n            </pre>"
      additionalProperties: false
      description: "{\n    \"DisplayTitle\" : \"Curriculum Resource URI\",\n    \"TargetSchema\" : [{\"target\" : \"SWS.Curriculum\"}],\n    \"TargetOperationId\" : [\"CurriculumSearch\"]\n}"