Skip to main content

Reports API

Manage reports with these API endpoints

Written by Anthony Karcz

What This API Endpoint Does

With the Reports API you can retrieve the user activity report (with all user sessions account-wide), get a list of learner sessions for a specific course or learning path, a list of course sessions within a learning path, or a list of all course sessions for a specific learner.

Endpoints

  • GET /reports/activity - user activity report (list of user sessions)

  • GET /reports/courses/{courseId} - course learner report (list of learner sessions for a course)

  • GET /reports/learners/{userId} - learner course report (list of course sessions for a learner)

  • GET /reports/learning-paths/{learningPathId}/courses - learning path courses report (list of course sessions in a learning path)

  • GET /reports/learning-paths/{learningPathId}/learners - learning path learners report (list of learner sessions in a learning path)

  • GET /reports/groups/{groupId}/courses - Learn• Group courses report (list of course sessions in a group)

Session object (user activity with a course)

  • courseId (string) - course identifier

  • courseTitle (string) - title of course

  • courseReportUrl (string) - URL to fetch course report from the API

  • courseUrl (string) - URL to fetch course's details from the API

  • userId (string) - user identifier

  • email (string) - user email address

  • firstName (string) - the user's first name

  • lastName (string) - the user's last name

  • learnerReportUrl (string) - URL to fetch the user's learner report from the API

  • userUrl (string) - URL to fetch user's details from the API

  • duration (string) - ISO 8601-formatted duration of user session

  • numberOfLessonsCompleted (integer) - number of lessons completed

  • quizScorePercent (integer) - quiz score percentage (if quiz present)

  • isQuizPassed (bool) - whether user passed quiz or not (if quiz present)

  • startedAt (string) - ISO 8601-formatted UTC timestamp of when session started

  • userDeleted (bool) - whether the user has been removed from the Rise account or not.

  • courseDeleted (bool) - whether the course has been deleted.

  • courseAvailable (boolean) - returns true if the course is part of catalog content, but it is no longer accessible due to the content being unavailable

Course learner object (user enrolled in a course)

  • userId (string) - user identifier

  • email (string) - user email address

  • firstName (string) - the user's first name

  • lastName (string) - the user's last name

  • learnerReportUrl (string) - URL to fetch the user's learner report from the API

  • userUrl (string) - URL to fetch user's details from the API

  • duration (string) - ISO 8601-formatted duration of average user session

  • quizScorePercent (integer) - quiz score percentage (if quiz present)

  • dueAt (string) - ISO 8601-formatted UTC timestamp of when course is due for user (if applicable)

  • status (string) - status of course for user (one of Not Started, In Progress, or Complete)

  • completedAt (string) - Timestamp of when the course was completed by the learner or null.

  • userDeleted (bool) - whether the user has been removed from the Rise account or not.

  • progress (integer) - progress percentage

Learner course object (course a learner is enrolled in)

  • courseId (string) - course identifier

  • courseTitle (string) - title of course

  • courseReportUrl (string) - URL to fetch course report from the API

  • courseUrl (string) - URL to fetch course's details from the API

  • duration (string) - ISO 8601-formatted duration of average user session

  • quizScorePercent (integer) - quiz score percentage (if quiz present)

  • dueAt (string) - ISO 8601-formatted UTC timestamp of when course is due for user (if applicable)

  • status (string) - status of course for user (one of Not Started, In Progress, or Complete)

  • completedAt (string) - Timestamp of when the course was completed by the learner or null.

  • courseDeleted (bool) - whether the course has been deleted.

  • progress (integer) - progress percentage

  • courseAvailable (boolean) - returns true if the course is part of catalog content, but it is no longer accessible due to the content being unavailable

Learning path course object (course in a learning path)

  • courseId (string) ****- course identifier

  • courseTitle (string) - course title

  • courseUrl (string) - URL to fetch the course's details from the API

  • numberOfLessons (integer) - number of lessons in the course

  • averageDuration (string) - ISO 8601-formatted duration of average user session

  • courseReportUrl (string) - URL to fetch the course report from the API

  • courseDeleted (bool) - whether the course has been deleted.

Learning path learner object (learner in a learning path)

  • userId (string) - user identifier

  • email (string) - user email address

  • firstName (string) - the user's first name

  • lastName (string) - the user's last name

  • learnerReportUrl (string) - URL to fetch the user's learner report from the API

  • userUrl (string) - URL to fetch user's details from the API

  • duration (string) - ISO 8601-formatted duration of average user session

  • dueAt (string) - ISO 8601-formatted UTC timestamp of when the learning path is due for user (if applicable)

  • status (string) - status of learning path for user (one of Not Started, In Progress, or Complete)

  • userDeleted (bool) - whether the user has been removed from the Rise account or not.

Group Course Object (course in a group)

  • courseId (string) ****- course identifier

  • courseTitle (string) - course title

  • courseUrl (string) - URL to fetch the course's details from the API

  • averageDuration (string) - ISO 8601-formatted duration of average user session

  • courseReportUrl (string) - URL to fetch the course report from the API

  • courseDeleted (bool) - whether the course has been deleted

  • enrollmentDeleted (bool) - whether the group was unenrolled from the course

Get Activity Report

GET /reports/activity

Request Parameters (Query String)

  • limit (integer, optional) - the maximum number of results to return in a single response (see Pagination); must be between 1 and 2,000 (defaults to 50)

Example Response

{ 
"sessions": [
{
"courseAvailable": true, //
"courseId": "example-course-id-1",
"courseDeleted": false,
"courseTitle": "Course Title 1",
"courseReportUrl": "https://api.rise.com/reports/courses/example-course-id-1",
"courseUrl": "https://api.rise.com/courses/example-course-id-1",
"userId": "example-user-id-1",
"firstName": "Example First Name 1",
"lastName": "Example Last Name 1",
"learnerReportUrl": "https://api.rise.com/reports/learners/example-user-id-1",
"userDeleted": false,
"userUrl": "https://api.rise.com/users/example-user-id-1",
"duration": "PT37.578S",
"numberOfLessonsCompleted": 1,
"quizScorePercent": null,
"isQuizPassed": null,
"startedAt": "2020-01-01T12:30:00.000Z"
}, ...
],
"nextUrl": "https://url-for-next-page-of-results"
}

Get Course Learner Report

GET /reports/courses/{courseId}

Request Parameters (Query String)

  • limit (integer, optional) - the maximum number of results to return in a single response (see Pagination); must be between 1 and 2,000 (defaults to 50)

Example Response

{ 
"courseAvailable": true, //
"courseDeleted": false,
"courseUrl": "https://api.rise.com/courses/example-course-id",
"learners": [
{
"userId": "example-user-id-1",
"firstName": "Example First Name 1",
"lastName": "Example Last Name 1",
"learnerReportUrl": "https://api.rise.com/reports/learners/example-user-id-1",
"userUrl": "https://api.rise.com/users/example-user-id-1",
"duration": "PT37.578S",
"progress": 51,
"quizScorePercent": null,
"dueAt": "2020-01-01T12:30:00.000Z",
"status": "Complete",
"userDeleted": false,
"completedAt": "2019-12-31T12:30:00.000Z",
}, ...
],
"nextUrl": "https://url-for-next-page-of-results"
}

Endpoint-specific Error Codes

  • course_not_found - cannot retrieve report because course does not exist

Get Learner Course Report

GET /reports/learners/{userId}

Request Parameters (Query String)

  • limit (integer, optional) - the maximum number of results to return in a single response (see Pagination); must be between 1 and 2,000 (defaults to 50)

Example Response

{
"userDeleted": false,
"userUrl": "https://api.rise.com/users/example-user-id",
"courses": [
{
"completedAt": "2019-12-31T12:30:00.000Z",
"courseDeleted": false,
"courseId": "example-course-id-1",
"courseTitle": "Course Title 1",
"courseReportUrl": "https://api.rise.com/reports/courses/example-course-id-1",
"courseUrl": "https://api.rise.com/courses/example-course-id-1",
"duration": "PT37.578S",
"progress": 51,
"quizScorePercent": null,
"dueAt": "2020-01-01T12:30:00.000Z",
"status": "Complete"
}, ...
],
"nextUrl": "https://url-for-next-page-of-results"
}

Endpoint-specific Error Codes

  • user_not_found - cannot retrieve report because user does not exist

Get Learning Path Courses Report

GET /reports/learning-paths/{learningPathId}/courses

Request Parameters (Query String)

  • limit (integer, optional) - the maximum number of results to return in a single response (see Pagination); must be between 1 and 2,000 (defaults to 50)

Example Response

{ 
"learningPathDeleted": false,
"learningPathUrl": "https://api.rise.com/learning-paths/example-learning-path-id",
"learnersReportUrl": "https://api.rise.com/reports/learning-paths/example-learning-path-id/learners",
"courses": [
{
"courseDeleted": false,
"courseId": "example-course-1",
"courseTitle": "Example Course",
"courseUrl": "https://api.rise.com/courses/example-course-1",
"numberOfLessons": 6,
"averageDuration": "PT37.578S",
"courseReportUrl": "https://api.rise.com/reports/courses/example-course-1"
}, ...
],
"nextUrl": "https://url-for-next-page-of-results"
}

Endpoint-specific Error Codes

  • learning_path_not_found - cannot retrieve report because learning path does not exist

Get Learning Path Learners Report

GET /reports/learning-paths/{learningPathId}/learners

Request Parameters (Query String)

  • limit (integer, optional) - the maximum number of results to return in a single response (see Pagination); must be between 1 and 2,000 (defaults to 50)

Example Response

{ 
"learningPathUrl": "https://api.rise.com/learning-paths/example-learning-path-id",
"coursesReportUrl": "https://api.rise.com/reports/learning-paths/example-learning-path-id/courses",
"learners": [
{
"dueAt": null,
"duration": "PT37.578S",
"firstName": "Example First Name 1",
"lastName": "Example Last Name 1",
"learnerReportUrl": "https://api.rise.com/reports/learners/example-user-id-1",
"status": "Complete",
"userDeleted": false,
"userId": "example-user-id-1",
"userUrl": "https://api.rise.com/users/example-user-id-1"
}, ...
],
"nextUrl": "https://url-for-next-page-of-results"
}

Endpoint-specific Error Codes

  • learning_path_not_found - cannot retrieve report because learning path does not exist

Get Group Courses Report

GET /reports/groups/{groupId}/courses

Request Parameters (Query String)

  • limit (integer, optional) - the maximum number of results to return in a single response (see Pagination); must be between 1 and 2000 (defaults to 50)

Example response

{ 
"courses": [
{
"courseDeleted": false,
"courseId": "example-course-1",
"courseTitle": "Example Course",
"courseUrl": "<https://api.rise.com/courses/example-course-1>",
"averageDuration": "PT0S",
"courseReportUrl": "<https://api.rise.com/reports/courses/example-course-1>",
"enrollmentDeleted": false }, ... ],
"groupDeleted": false,
"groupUrl": "<https://api.rise.com/groups/example-group-1>",
"nextUrl": "<https://url-for-next-page-of-results>"
}

Endpoint-specific error codes

  • group_not_found - can't retrieve report because group does not exist

Did this answer your question?