Account Reports API
API for accessing account reports.
A Report object looks like:
{
// The unique identifier for the report.
"id": 1,
// The type of report.
"report": "sis_export_csv",
// The url to the report download.
"file_url": "https://example.com/some/path",
// The status of the report
"status": "complete",
// The report parameters
"parameters": {"course_id":2,"start_at":"2012-07-13T10:55:20-06:00","end_at":"2012-07-13T10:55:20-06:00"},
// The progress of the report
"progress": "100"
}
A ReportParameters object looks like:
// The parameters returned will vary for each report.
{
// The canvas id of the term to get grades from
"enrollment_term_id": 2,
// Include deleted objects
"include_deleted": false,
// The course to report on
"course_id": 2,
// The sort order for the csv, Options: 'users', 'courses', 'outcomes'.
"order": "users",
// Get the data for users
"users": false,
// Get the data for accounts
"accounts": false,
// Get the data for terms
"terms": false,
// Get the data for courses
"courses": false,
// Get the data for sections
"sections": false,
// Get the data for enrollments
"enrollments": false,
// Get the data for groups
"groups": false,
// Get the data for cross-listed courses
"xlist": false,
"sis_terms_csv": 1,
"sis_accounts_csv": 1,
// Include enrollment state. Defaults to false
"include_enrollment_state": false,
// Include enrollment state. Defaults to 'all' Options: ['active'| 'invited'|
// 'creation_pending'| 'deleted'| 'rejected'| 'completed'| 'inactive'| 'all']
"enrollment_state": ["all"],
// The beginning date for submissions. Max time range is 2 weeks.
"start_at": "2012-07-13T10:55:20-06:00",
// The end date for submissions. Max time range is 2 weeks.
"end_at": "2012-07-13T10:55:20-06:00"
}
List Available Reports AccountReportsController#available_reports
GET /api/v1/accounts/:account_id/reports
Returns the list of reports for the current context.
API response field:
-
name
The name of the report.
-
parameters
The parameters will vary for each report
Example Request:
curl -H 'Authorization: Bearer <token>' \
https://<canvas>/api/v1/accounts/<account_id>/reports/
Example Response:
[
{
"report":"student_assignment_outcome_map_csv",
"title":"Student Competency",
"parameters":null
},
{
"report":"grade_export_csv",
"title":"Grade Export",
"parameters":{
"term":{
"description":"The canvas id of the term to get grades from",
"required":true
}
}
}
]
Start a Report AccountReportsController#create
POST /api/v1/accounts/:account_id/reports/:report
Generates a report instance for the account.
Request Parameters:
Parameter | Type | Description | |
---|---|---|---|
[parameters] | string |
The parameters will vary for each report |
Index of Reports AccountReportsController#index
GET /api/v1/accounts/:account_id/reports/:report
Shows all reports that have been run for the account of a specific type.
Example Request:
curl -H 'Authorization: Bearer <token>' \
https://<canvas>/api/v1/accounts/<account_id>/reports/<report_type>
Status of a Report AccountReportsController#show
GET /api/v1/accounts/:account_id/reports/:report/:id
Returns the status of a report.
Example Request:
curl -H 'Authorization: Bearer <token>' \
https://<canvas>/api/v1/accounts/<account_id>/reports/<report_type>/<report_id>
Delete a Report AccountReportsController#destroy
DELETE /api/v1/accounts/:account_id/reports/:report/:id
Deletes a generated report instance.
Example Request:
curl -H 'Authorization: Bearer <token>' \
-X DELETE \
https://<canvas>/api/v1/accounts/<account_id>/reports/<report_type>/<id>