🚀 Heads up: Our API Docs Have Moved!
We have relocated to Instructure Developer Documentation Portal. 🎉 Please update your bookmarks. This page will automatically redirect after July 1, 2026.
We have relocated to Instructure Developer Documentation Portal. 🎉 Please update your bookmarks. This page will automatically redirect after July 1, 2026.
Accessibility Course Statistics API
An AccessibilityCourseStatistic object looks like:
// Per-course accessibility issue counts for a user's active teacher/designer
// courses.
{
// The ID of the accessibility course statistic record
"id": 1,
// The ID of the course
"course_id": 42,
// The name of the course
"course_name": "Introduction to Biology",
// The course code (short name) of the course
"course_code": "BIO101",
// Whether the course is published
"published": true,
// The number of active accessibility issues in the course. Null until the first
// calculation completes.
"active_issue_count": 5,
// The number of resolved accessibility issues in the course. Null until the
// first calculation completes.
"resolved_issue_count": 3,
// The number of closed accessibility issues in the course
"closed_issue_count": 2,
// The workflow state of the statistic record
"workflow_state": "active",
// The date and time the record was created
"created_at": "2026-01-01T00:00:00Z",
// The date and time the record was last updated
"updated_at": "2026-01-02T00:00:00Z"
}
List accessibility course statistics AccessibilityCourseStatisticsController#index
GET /api/v1/users/:user_id/educator_accessibility_course_statistics
Scope:
Returns per-course accessibility issue statistics for the current user's
active teacher and designer courses. Only courses where the accessibility
checker is enabled, that are not deleted, and that have not concluded
(by workflow state or by course/term end date) are included. Only
statistic records with workflow_state "active", "queued" or "in_progress"
are returned. Queued and in_progress records are being recalculated, and
a record that has never been calculated has null issue counts.
Requires the educator_dashboard feature flag to be enabled on the root
account, and a11y_checker_account_statistics on site admin plus a11y_checker
on the account (i.e. a11y_checker_account_statistics? must be true).
The X-Total-Items response header contains the total number of matching
courses across all pages.
url:GET|/api/v1/users/:user_id/educator_accessibility_course_statistics
Request Parameters:
| Parameter | Type | Description | |
|---|---|---|---|
| user_id | Required | string | The ID of the user, or "self" for the current user. The requesting user may only retrieve their own statistics. |
| enrollment_term_id[] | string | When present, only include courses that belong to the given enrollment term(s). Accepts a single term id or an array (enrollment_term_id[]=1&enrollment_term_id[]=2), and each value may be a term id or SIS term id. Returns 404 if any given term does not exist in this account. | |
| course_ids[] | string | When present, only include the given courses. Accepts a single course id or an array (course_ids[]=1&course_ids[]=2), and each value may be a course id or SIS course id. Returns 404 if any given course is deleted or does not exist in this account. A concluded course id is accepted but won't appear in the results, the same as a course the caller doesn't teach. Limited to 100 ids per request. | |
| published | boolean | Filters by publish state: true for published courses, false for unpublished courses. Defaults to true. | |
| activity_states[] | string |
Only include courses where the user's enrollment is in one of the given
date-aware activity states. Defaults to active and invited_or_pending.
Returns 400 if any value is not one of the listed states.
Allowed values: |
List accessibility course statistic terms AccessibilityCourseStatisticsController#terms
GET /api/v1/users/:user_id/educator_accessibility_course_terms
Scope:
Returns the distinct enrollment terms that the current user's published
teacher and designer courses belong to, where the enrollment is active or
invited -- the courses the List accessibility course statistics endpoint
reports by default. This endpoint takes no activity_states or published
filters, so terms of courses outside those defaults are not returned. Use
this to populate a term filter for that endpoint. There is no "all terms"
entry; "all terms" is represented by omitting the enrollment_term_id filter.
Requires the same account settings and feature flags as the statistics
endpoint.
url:GET|/api/v1/users/:user_id/educator_accessibility_course_terms
Request Parameters:
| Parameter | Type | Description | |
|---|---|---|---|
| user_id | Required | string | The ID of the user, or "self" for the current user. The requesting user may only retrieve their own terms. |