Class

A class offering in a UCSB quarter curriculum, including units, general-education codes and its sections.

EducationHigher EducationUniversityPublic Research UniversityUC SystemUnited StatesCaliforniaCampusStudent Information SystemCourse CatalogAcademicsIdentity FederationResearch RepositoryLibraryAPI GatewayDeveloper Portal

Properties

Name Type Description
quarter string Quarter with format YYYYQ
courseId string 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-
title string Course Title from curriculum catalog
contactHours number Primary hours for course
description string Detail descriptions for the course
college string College code approved for the course please refer to Student Record Code Lookups API for translations
objLevelCode string 1 character code, The academic program objective level must be 'G'raduate or 'U'ndergraduate , 'L' for Undergraduate lower division and 'S' for Undergraduate upper division
subjectArea string The subject code to match First 8 Char of CourseId
unitsFixed number Number of fixed units for the course
unitsVariableHigh number Number of variable units for the course
unitsVariableLow number Number of low units for the course
delayedSectioning string delayed sectioning for the course
inProgressCourse string If course is in progress
gradingOption string Grading options for the course
instructionType string Instruction type for primary sections (ending with 00)
instructionTypeSecondary string Instruction type for secondary sections (ending with a number > 00)
onLineCourse boolean If the course is online ?
deptCode string department code for the course please refer look up api for translations
generalEducation array list of GeCode and GeCollege
classSections array list of sections associated with the class
View JSON Schema on GitHub

JSON Schema

ucsb-class-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/ucsb/main/json-schema/ucsb-class-schema.json",
  "title": "Class",
  "description": "A class offering in a UCSB quarter curriculum, including units, general-education codes and its sections.",
  "type": "object",
  "properties": {
    "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.\r\nFor example 'ES 1- 16B ' can be broken down in subject 'ES ' prefix '1- ' number ' 16' suffix 'B",
      "type": "string"
    },
    "title": {
      "description": "Course Title from curriculum catalog",
      "type": "string"
    },
    "contactHours": {
      "format": "double",
      "description": "Primary hours for course",
      "type": "number"
    },
    "description": {
      "description": "Detail descriptions for the course",
      "type": "string"
    },
    "college": {
      "description": "College code approved for the course\r\nplease refer to Student Record Code Lookups API for translations",
      "type": "string"
    },
    "objLevelCode": {
      "description": "1 character code, The academic program objective level must be 'G'raduate or 'U'ndergraduate ,\r\n'L' for Undergraduate lower division and 'S' for Undergraduate upper division",
      "type": "string"
    },
    "subjectArea": {
      "description": "The subject code to match First 8 Char of CourseId",
      "type": "string"
    },
    "unitsFixed": {
      "format": "double",
      "description": "Number of fixed units for the course",
      "type": "number"
    },
    "unitsVariableHigh": {
      "format": "double",
      "description": "Number of variable units for the course",
      "type": "number"
    },
    "unitsVariableLow": {
      "format": "double",
      "description": "Number of low units for the course",
      "type": "number"
    },
    "delayedSectioning": {
      "description": "delayed sectioning for the course",
      "type": "string"
    },
    "inProgressCourse": {
      "description": "If course is in progress",
      "type": "string"
    },
    "gradingOption": {
      "description": "Grading options for the course",
      "type": "string"
    },
    "instructionType": {
      "description": "Instruction type for primary sections (ending with 00)",
      "type": "string"
    },
    "instructionTypeSecondary": {
      "description": "Instruction type for secondary sections (ending with a number > 00)",
      "type": "string"
    },
    "onLineCourse": {
      "description": "If the course is online ?",
      "type": "boolean"
    },
    "deptCode": {
      "description": "department code for the course\r\nplease refer look up api for translations",
      "type": "string"
    },
    "generalEducation": {
      "description": "list of GeCode and GeCollege",
      "type": "array",
      "items": {
        "$ref": "#/$defs/GeneralEducation"
      }
    },
    "classSections": {
      "description": "list of sections associated with the class",
      "type": "array",
      "items": {
        "$ref": "#/$defs/ClassSection"
      }
    }
  },
  "$defs": {
    "ClassSection": {
      "description": "Section information for a class",
      "type": "object",
      "properties": {
        "enrollCode": {
          "description": "EnrollCode an unique number assigned\r\nto a curriculum",
          "type": "string"
        },
        "section": {
          "description": "Section number of the course",
          "type": "string"
        },
        "session": {
          "description": "Session number only for summer quarter",
          "type": "string"
        },
        "classClosed": {
          "description": "If the class is closed",
          "type": "string"
        },
        "courseCancelled": {
          "description": "Is course cancelled",
          "type": "string"
        },
        "gradingOptionCode": {
          "description": "Grading Options Code like Pass/No Pass (P/NP)\r\nOr Letter Grades (L)\r\nSee more GradingOptionsCode and GradingOptionsTranslation on GradingOptions interface\r\non Student Record Code Lookups API",
          "type": "string"
        },
        "enrolledTotal": {
          "format": "int32",
          "description": "total number of enrollments in the course",
          "type": "integer"
        },
        "maxEnroll": {
          "format": "int32",
          "description": "max number of students can be enrolled in the section",
          "type": "integer"
        },
        "secondaryStatus": {
          "description": "Secondary Status of the course",
          "type": "string"
        },
        "departmentApprovalRequired": {
          "description": "Is department approval required for enrollment in the section",
          "type": "boolean"
        },
        "instructorApprovalRequired": {
          "description": "Is instructor approval required for enrollment in the section",
          "type": "boolean"
        },
        "restrictionLevel": {
          "description": "Is there restriction on the level of the course",
          "type": "string"
        },
        "restrictionMajor": {
          "description": "RestrictionMajor being a limit on which majors can add into the course",
          "type": "string"
        },
        "restrictionMajorPass": {
          "description": "RestrictionMajorPass limits it to a certain major registration pass only,\r\nmeaning once that registration pass is over, then the limit is no longer enforced",
          "type": "string"
        },
        "restrictionMinor": {
          "description": "RestrictionMinors being a limit on which minors can add into the course",
          "type": "string"
        },
        "restrictionMinorPass": {
          "description": "RestrictionMinorPass limits it to a certain minor registration pass only,\r\nmeaning once that registration pass is over, then the limit is no longer enforced",
          "type": "string"
        },
        "concurrentCourses": {
          "description": "concurrent course for the section",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "timeLocations": {
          "description": "Time location for the section",
          "type": "array",
          "items": {
            "$ref": "#/$defs/ClassTimeLocation"
          }
        },
        "instructors": {
          "description": "instructor the section",
          "type": "array",
          "items": {
            "$ref": "#/$defs/ClassInstructor"
          }
        }
      }
    },
    "GeneralEducation": {
      "description": "General education code and college",
      "type": "object",
      "properties": {
        "geCode": {
          "description": "General education code",
          "type": "string"
        },
        "geCollege": {
          "description": "General education college",
          "type": "string"
        }
      }
    },
    "ClassInstructor": {
      "description": "Instructor of the section and class",
      "type": "object",
      "properties": {
        "instructor": {
          "description": "Name of the Instructor",
          "type": "string"
        },
        "functionCode": {
          "description": "Instruction Function.\r\nSee more InstructionFunctionCode and InstructionFunctionTranslation on InstructionFunction interface\r\nSee translation on Student Record Code Lookups API",
          "type": "string"
        }
      }
    },
    "ClassTimeLocation": {
      "description": "time location for the section",
      "type": "object",
      "properties": {
        "room": {
          "description": "Room where course is offered",
          "type": "string"
        },
        "building": {
          "description": "Building for the room",
          "type": "string"
        },
        "roomCapacity": {
          "format": "int32",
          "description": "Capacity of the room",
          "type": "integer"
        },
        "days": {
          "description": "Days of Instruction for course for example 'M W    ' means instruction happens on Monday and wednesday\r\nFor mode translation on day code look at Days interface at Student Record Code Lookups API",
          "type": "string"
        },
        "beginTime": {
          "description": "Begin time for a course\r\nHH:mm format",
          "type": "string"
        },
        "endTime": {
          "description": "End time of the course\r\nHH:mm format",
          "type": "string"
        }
      }
    }
  },
  "x-source": "openapi/ucsb-academic-curriculums-openapi.yml",
  "x-method": "derived",
  "x-generated": "2026-08-30"
}

Work with this as data

Every JSON Schema 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 schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • 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 JSON Schema
curl "https://apis.io/api/v1/json-schemas/ucsb-class"
All schemas
curl "https://apis.io/api/v1/json-schemas?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.