OAuth2 scopes
Scope per endpoint
Each endpoint is guarded by exactly one OAuth2 scope. Calling an endpoint without its scope returns 403 (forbidden).
| Scope | Method | Endpoint | Grants |
|---|---|---|---|
cohort:read | GET | .../cohorts, .../cohorts/{cohortId}, .../cohorts/{cohortId}/stats, .../cohorts/{cohortId}/progress, .../cohorts/{cohortId}/sections/{sectionId}/contents | Read the cohort list, a single cohort, aggregate stats, progress, and section content |
cohort:create | POST | .../cohorts | Create a cohort |
cohort:update | PATCH | .../cohorts/{cohortId} | Update a cohort |
cohort:add_content | POST | .../cohorts/{cohortId}/sections/{sectionId}/contents | Add content to a cohort section |
cohort:remove_content | DELETE | .../cohorts/{cohortId}/sections/{sectionId}/contents/{assignmentId} | Remove one content assignment from a cohort section |
cohort:delete | DELETE | .../cohorts/{cohortId} | Delete a cohort |
cohort:list_sections | GET | .../cohorts/{cohortId}/sections | List the cohort sections |
cohort:create_section | POST | .../cohorts/{cohortId}/sections | Create a section |
cohort:delete_section | DELETE | .../cohorts/{cohortId}/sections/{sectionId} | Delete a section and its content |
cohort:list_members | GET | .../cohorts/{cohortId}/members | List enrolled members |
cohort:add_members | POST | .../cohorts/{cohortId}/members | Enroll or invite up to 100 users |
cohort:remove_members | DELETE | .../cohorts/{cohortId}/members/{userId} | Remove one enrolled member |
cohort:member_completion_status | GET | .../cohorts/{cohortId}/members/completion-status | Read the per-member enrollment/completion status list |
cohort:member_status | GET | .../cohorts/{cohortId}/members/{userId}/status | Read one member's detailed progress |
cohort:list_authors | GET | .../cohorts/{cohortId}/authors | List the creator and authors |
cohort:add_authors | POST | .../cohorts/{cohortId}/authors | Assign up to 100 authors |
cohort:remove_authors | DELETE | .../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.