Content Exports
API for exporting courses and course content
A ContentExport object looks like:
{
// the unique identifier for the export
"id": 101,
// the date and time this export was requested
"created_at": "2014-01-01T00:00:00Z",
// the type of content migration: 'common_cartridge' or 'qti'
"export_type": "common_cartridge",
// attachment api object for the export package (not present before the export
// completes or after it becomes unavailable for download.)
"attachment": {"url":"https:\/\/example.com\/api\/v1\/attachments\/789?download_frd=1\u0026verifier=bG9sY2F0cyEh"},
// The api endpoint for polling the current progress
"progress_url": "https://example.com/api/v1/progress/4",
// The ID of the user who started the export
"user_id": 4,
// Current state of the content migration: created exporting exported failed
"workflow_state": "exported"
}
ContentExportsApiController#index
GET /api/v1/courses/:course_id/content_exports
GET /api/v1/courses/:course_id/content_exports
Scope: url:GET|/api/v1/courses/:course_id/content_exports
GET /api/v1/groups/:group_id/content_exports
GET /api/v1/groups/:group_id/content_exports
Scope: url:GET|/api/v1/groups/:group_id/content_exports
GET /api/v1/users/:user_id/content_exports
GET /api/v1/users/:user_id/content_exports
Scope: url:GET|/api/v1/users/:user_id/content_exports
A paginated list of the past and pending content export jobs for a course, group, or user. Exports are returned newest first.
Returns a list ofContentExport objects.
ContentExportsApiController#show
GET /api/v1/courses/:course_id/content_exports/:id
GET /api/v1/courses/:course_id/content_exports/:id
Scope: url:GET|/api/v1/courses/:course_id/content_exports/:id
GET /api/v1/groups/:group_id/content_exports/:id
GET /api/v1/groups/:group_id/content_exports/:id
Scope: url:GET|/api/v1/groups/:group_id/content_exports/:id
GET /api/v1/users/:user_id/content_exports/:id
GET /api/v1/users/:user_id/content_exports/:id
Scope: url:GET|/api/v1/users/:user_id/content_exports/:id
Get information about a single content export.
Returns aContentExport object.
ContentExportsApiController#create
POST /api/v1/courses/:course_id/content_exports
POST /api/v1/courses/:course_id/content_exports
Scope: url:POST|/api/v1/courses/:course_id/content_exports
POST /api/v1/groups/:group_id/content_exports
POST /api/v1/groups/:group_id/content_exports
Scope: url:POST|/api/v1/groups/:group_id/content_exports
POST /api/v1/users/:user_id/content_exports
POST /api/v1/users/:user_id/content_exports
Scope: url:POST|/api/v1/users/:user_id/content_exports
Begin a content export job for a course, group, or user.
You can use the Progress API to track the progress of the export. The migration’s progress is linked to with the progress_url value.
When the export completes, use the Show content export endpoint to retrieve a download URL for the exported content.
Request Parameters:
export_type
Required string
“common_cartridge”
Export the contents of the course in the Common Cartridge (.imscc) format
“qti”
Export quizzes from a course in the QTI format
“zip”
Export files from a course, group, or user in a zip file
Allowed values: common_cartridge
, qti
, zip
skip_notifications
boolean
Don’t send the notifications about the export to the user. Default: false
select
Hash
The select parameter allows exporting specific data. The keys are object types like ‘files’, ‘folders’, ‘pages’, etc. The value for each key is a list of object ids. An id can be an integer or a string.
Multiple object types can be selected in the same call. However, not all object types are valid for every export_type. Common Cartridge supports all object types. Zip and QTI only support the object types as described below.
“folders”
Also supported for zip export_type.
“files”
Also supported for zip export_type.
“quizzes”
Also supported for qti export_type.
Allowed values: folders
, files
, attachments
, quizzes
, assignments
, announcements
, calendar_events
, discussion_topics
, modules
, module_items
, pages
, rubrics
Returns aContentExport object.
This documentation is generated directly from the Canvas LMS source code, available on Github.
Last updated
Was this helpful?