PowerSchool · Schema

PowerSchool Section

A course section from the PowerSchool SIS REST API (/ws/v1/school/{schoolDcid}/section). A section is a specific scheduled offering of a course, linking a course, teacher, time period, and enrolled students.

K-12EducationStudent Information SystemSISStudentsGradesAttendanceEnrollmentSchedulingEdTech

Properties

Name Type Description
id integer Section DCID — district-wide unique identifier. Also referenced as 'dcid' in SDK code.
course_id integer DCID of the course this section is an offering of.
section_number integer Section number within the course.
expression string Period expression string used internally (e.g., '1(A)').
external_expression string Human-readable period label for display (e.g., 'Period 1').
gradebooktype string Gradebook type identifier controlling grading method for this section.
school_id integer DCID of the school where this section meets.
staff_id integer DCID of the staff member (teacher) assigned to this section.
term_id integer DCID of the academic term during which this section is offered.
View JSON Schema on GitHub

JSON Schema

powerschool-section.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/powerschool/main/json-schema/powerschool-section.json",
  "title": "PowerSchool Section",
  "description": "A course section from the PowerSchool SIS REST API (/ws/v1/school/{schoolDcid}/section). A section is a specific scheduled offering of a course, linking a course, teacher, time period, and enrolled students.",
  "type": "object",
  "required": ["id"],
  "properties": {
    "id": {
      "type": "integer",
      "description": "Section DCID — district-wide unique identifier. Also referenced as 'dcid' in SDK code."
    },
    "course_id": {
      "type": "integer",
      "description": "DCID of the course this section is an offering of."
    },
    "section_number": {
      "type": "integer",
      "description": "Section number within the course."
    },
    "expression": {
      "type": "string",
      "description": "Period expression string used internally (e.g., '1(A)')."
    },
    "external_expression": {
      "type": "string",
      "description": "Human-readable period label for display (e.g., 'Period 1')."
    },
    "gradebooktype": {
      "type": "string",
      "description": "Gradebook type identifier controlling grading method for this section."
    },
    "school_id": {
      "type": "integer",
      "description": "DCID of the school where this section meets."
    },
    "staff_id": {
      "type": "integer",
      "description": "DCID of the staff member (teacher) assigned to this section."
    },
    "term_id": {
      "type": "integer",
      "description": "DCID of the academic term during which this section is offered."
    }
  },
  "examples": [
    {
      "id": 88901,
      "course_id": 4401,
      "section_number": 2,
      "expression": "3(A)",
      "external_expression": "Period 3",
      "gradebooktype": "1",
      "school_id": 5001,
      "staff_id": 22345,
      "term_id": 300100
    }
  ]
}

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/powerschool-section"
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.