OAuth2 scopes

Scope per endpoint

Each endpoint is guarded by exactly one OAuth2 scope. Calling an endpoint without its scope returns 403 (forbidden).

ScopeMethodEndpointGrants
cohort:readGET.../cohorts, .../cohorts/{cohortId}, .../cohorts/{cohortId}/stats, .../cohorts/{cohortId}/progress, .../cohorts/{cohortId}/sections/{sectionId}/contentsRead the cohort list, a single cohort, aggregate stats, progress, and section content
cohort:createPOST.../cohortsCreate a cohort
cohort:updatePATCH.../cohorts/{cohortId}Update a cohort
cohort:add_contentPOST.../cohorts/{cohortId}/sections/{sectionId}/contentsAdd content to a cohort section
cohort:remove_contentDELETE.../cohorts/{cohortId}/sections/{sectionId}/contents/{assignmentId}Remove one content assignment from a cohort section
cohort:deleteDELETE.../cohorts/{cohortId}Delete a cohort
cohort:list_sectionsGET.../cohorts/{cohortId}/sectionsList the cohort sections
cohort:create_sectionPOST.../cohorts/{cohortId}/sectionsCreate a section
cohort:delete_sectionDELETE.../cohorts/{cohortId}/sections/{sectionId}Delete a section and its content
cohort:list_membersGET.../cohorts/{cohortId}/membersList enrolled members
cohort:add_membersPOST.../cohorts/{cohortId}/membersEnroll or invite up to 100 users
cohort:remove_membersDELETE.../cohorts/{cohortId}/members/{userId}Remove one enrolled member
cohort:member_completion_statusGET.../cohorts/{cohortId}/members/completion-statusRead the per-member enrollment/completion status list
cohort:member_statusGET.../cohorts/{cohortId}/members/{userId}/statusRead one member's detailed progress
cohort:list_authorsGET.../cohorts/{cohortId}/authorsList the creator and authors
cohort:add_authorsPOST.../cohorts/{cohortId}/authorsAssign up to 100 authors
cohort:remove_authorsDELETE.../cohorts/{cohortId}/authors/{userId}Remove one author assignment

TIP

A scope grants the ability to call an endpoint. Whether the call succeeds also depends on the caller's role on the cohort — see Roles and permissions.