Dartmouth API Developer Portal

Academic Enrollments API

Returns information about enrollments including parent section, term, and role. A history of enrollments is maintained via term.

Rating

Attribute Value
Highly Available Yes
Cache Refresh Interval 30 minutes
Filtering Yes

Required Scopes

Scope Description
api:academic:enrollments:read This scope is required in order to read enrollments. Granting of this scope is via the Undergraduate Registrars Office
api:academic:enrollments:read.sensitive This scope is required in order to read sensitive enrollment attributes (e.g. final_grade). Granting of this scope is via the Undergraduate Registrars Office
urn:dartmouth:people:private This optional scope is required in order to get enrollments for FERPA-protected students. Granting of this scope is via the Undergraduate Registrars Office

Request

GET /api/academic/enrollments/{id}

Required Headers

Authorization: Bearer {jwt}

Parameters

Parameter Name Type Description Valid values Required

(standard filter parameters as documented in the introduction section of this portal)

Notes on usage

When {id} is excluded from the URL, all enrollments are returned as a collection. Standard filtering via URL parameters is also available and returns a collection; the collection will be empty if no records are qualified by the filtering.

Historical information is available for enrollments through queries on term (e.g term.sis_term_code=<202001). To get current (in terms of availabilty for course registration and data feeds) enrollments only, query is_active=true. To get enrollments for classes that are currently in session, query is_in_session=true.

Business Logic

The {id} attribute is constructed from other attributes using the following format: {section.id}-{netid}-{role}.

Returns

Status Code Description
200 {id} requested exists or was not specified
404 {id} requested does not exist

Sample Request

https://api.dartmouth.edu/api/academic/enrollments/AAAS.010.01-202001-U-10188-f002nkd-instructor

Sample Returns

api:academic:enrollments:read scope

{
    "cache_date": "2020-06-15T04:43:15Z",
    "id": "AAAS.010.01-202001-U-10188-f002nkd-instructor",
    "is_active": false,
    "is_in_session": false,
    "netid": "f002nkd",
    "role": "instructor",
    "school_id": "UG",
    "section": {
        "id": "AAAS.010.01-202001-U-10188",
        "lms_section_id": "AAAS.010.01-WI20",
        "sis_section_id": "AAAS.010.01-WI20"
    },
    "term": {
        "id": "202001-U",
        "lms_term_id": "WI20",
        "sis_ptrm_code": "U",
        "sis_term_code": "202001"
    }
}

api:academic:enrollments:read and api:academic:enrollments:read.sensitive scopes

The read.sensitive scope exposes final_grade, credit_hours_earned, and course_assessment attributes:

{
    "cache_date": "2020-06-15T04:43:15Z",
    "final_grade": "A",
    "credit_hours_earned": 1,
    "course_assessment": {
        "submit_date": "2020-03-05T17:53:46Z",
        "opt_out_date": null
    },        
    "id": "AAAS.010.01-202001-U-10188-f001nkx-student",
    "is_active": false,
    "is_in_session": false,
    "netid": "f001nkx",
    "role": "student",
    "school_id": "UG",
    "section": {
        "id": "AAAS.010.01-202001-U-10188",
        "lms_section_id": "AAAS.010.01-WI20",
        "sis_section_id": "AAAS.010.01-WI20"
    },
    "term": {
        "id": "202001-U",
        "lms_term_id": "WI20",
        "sis_ptrm_code": "U",
        "sis_term_code": "202001"
    }
}