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"},
// 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"
}List content exports
ContentExportsApiController#index
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
Scope: url:GET|/api/v1/groups/:group_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 of ContentExport objects.
Show content export
ContentExportsApiController#show
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
Scope: url:GET|/api/v1/groups/:group_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 a ContentExport object.
Export content
ContentExportsApiController#create
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
Scope: url:POST|/api/v1/groups/:group_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 a ContentExport object.
This documentation is generated directly from the Canvas LMS source code, available on Github.
Last updated
Was this helpful?