University of California, Santa Barbara Courses API

The Courses API from University of California, Santa Barbara — 1 operation(s) for courses.

Operations 1

GET /v1/courses/{perm} /courses/v1/courses/{perm} #

Documentation

📖
Documentation
https://developer.ucsb.edu/content/academic-curriculums
📖
Documentation
https://developer.ucsb.edu/content/academic-graduate-programs
📖
Documentation
https://developer.ucsb.edu/content/academic-quarter-calendar
📖
Documentation
https://developer.ucsb.edu/content/barc-quarter-calendar
📖
Documentation
https://developer.ucsb.edu/content/barc-students-api
📖
Documentation
https://developer.ucsb.edu/content/academic-clas-schedules
📖
Documentation
https://developer.ucsb.edu/content/classcode-lookup-service
📖
Documentation
https://developer.ucsb.edu/content/department-chartfield
📖
Documentation
https://developer.ucsb.edu/content/department-course-extract
📖
Documentation
https://developer.ucsb.edu/content/employee-job
📖
Documentation
https://developer.ucsb.edu/content/events
📖
Documentation
https://developer.ucsb.edu/content/grad-application-verifications
📖
Documentation
https://developer.ucsb.edu/content/mtd-access
📖
Documentation
https://developer.ucsb.edu/content/peoplesoft-fau-functional-accounting-unit-combination-service
📖
Documentation
https://developer.ucsb.edu/content/student-academic-programs-majors-minors
📖
Documentation
https://developer.ucsb.edu/content/student-basic-student-info
📖
Documentation
https://developer.ucsb.edu/content/student-courses
📖
Documentation
https://developer.ucsb.edu/content/student-record-code-lookups
📖
Documentation
https://developer.ucsb.edu/content/student-registrations
📖
Documentation
https://developer.ucsb.edu/content/student-rosters
📖
Documentation
https://developer.ucsb.edu/content/student-schedules

Specifications

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/ucsb-courses-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

ucsb-courses-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: v1
  title: Student Courses API
  description: Student Course information from the Office of the Registrar.
servers:
- url: https://api.ucsb.edu/students/courses
security:
- ucsb-api-key: []
- ucsbnetid-password: []
tags:
- name: Courses
paths:
  /v1/courses/{perm}:
    get:
      tags:
      - Courses
      operationId: /courses/v1/courses/{perm}
      parameters:
      - name: perm
        in: path
        description: Students 6 or 7 digit perm
        required: true
        schema:
          type: string
      - name: quarter
        in: query
        description: Quarter with format YYYYQ
        required: false
        schema:
          type: string
      - name: enrollCode
        in: query
        description: Enroll code should be 5 chars
        required: false
        schema:
          type: string
      - name: ucsb-user-jwt
        in: header
        description: Used when an application is required to provide an End User Token. Only the data for the student indicated by the End User Token will be retrieved.
        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: Basic course information for student.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Course'
            text/json:
              schema:
                $ref: '#/components/schemas/Course'
        '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 courses in which student is registered. All the courses for that student can be returned when search by perm and quarter/enroll code. Perm is required for search and either quarter and enroll code can be both used. Returned is the collection of courses for student enrollment.


        This service contains information about the students academic history, including their grades. While this endpoint provides information on the current quarter, it is intended to look at the historical information about an individual student''s record.'
      summary: /courses/v1/courses/{perm}
      x-summary-source: derived
components:
  schemas:
    Course:
      description: 'Course Entity represent

        Course Data student enrolled in'
      type: object
      properties:
        perm:
          description: Student 7 digit perm
          type: string
        quarter:
          description: Quarter with format YYYYQ
          type: string
        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
        enrollCode:
          description: 'EnrollCode an unique number assigned

            to a curriculum'
          type: string
        session:
          description: 'Session of the curriculum in which

            Student is enrolled for summer'
          type: string
        grade:
          description: Grade assigned for the Course
          type: string
        repeatTypeCode:
          description: 'Repeat type for a course

            See more RepeatTypeCode and RepeatTypeTranslation on RepeatType interface

            on Public Lookups API'
          type: string
        unitsAttempted:
          format: double
          description: 'Total number of units attempted by the student

            for the course'
          type: number
        unitsCompleted:
          format: double
          description: 'units completed by student during

            the course'
          type: number
    WebApiInvalidModel:
      type: object
      properties:
        message:
          type: string
        modelState:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
    SimpleMessageModel:
      type: object
      properties:
        message:
          type: string
  securitySchemes:
    ucsb-api-key:
      name: ucsb-api-key
      in: header
      type: apiKey
    ucsbnetid-password:
      type: http
      scheme: basic