🚀 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.

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: url:GET|/api/v1/users/:user_id/educator_accessibility_course_statistics
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.

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: active, invited_or_pending, completed, inactive

Returns a list of AccessibilityCourseStatistic objects

List accessibility course statistic terms AccessibilityCourseStatisticsController#terms

GET /api/v1/users/:user_id/educator_accessibility_course_terms

Scope: url:GET|/api/v1/users/:user_id/educator_accessibility_course_terms
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.

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.
Returns a list of EnrollmentTerm objects