Canvas · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Canvas LMS REST Content Exports API
10 actions
10 updates
phrasing
extends
openapi/canvas-content-exports-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Canvas's API. It is a proposal applied on top of the contract, not a document Canvas publishes.
What the actions change
x-apievangelist-phrasing
Targets 10
$.info
$.paths['/v1/courses/{course_id}/content_exports'].get
$.paths['/v1/courses/{course_id}/content_exports'].post
$.paths['/v1/groups/{group_id}/content_exports'].get
$.paths['/v1/groups/{group_id}/content_exports'].post
$.paths['/v1/users/{user_id}/content_exports'].get
$.paths['/v1/users/{user_id}/content_exports'].post
$.paths['/v1/courses/{course_id}/content_exports/{id}'].get
$.paths['/v1/groups/{group_id}/content_exports/{id}'].get
$.paths['/v1/users/{user_id}/content_exports/{id}'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Canvas LMS REST Content Exports API
version: 1.0.0
extends: openapi/canvas-content-exports-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 9
- target: $.paths['/v1/courses/{course_id}/content_exports'].get
update:
x-apievangelist-phrasing:
intent: List a course's content exports
effect: read
questions:
- What content exports have been run for a course?
- Can I see pending course export jobs, newest first?
instructions:
- text: List content exports for course {course_id}.
slots:
course_id: path.course_id
- text: Show past and pending export jobs in course {course_id}.
slots:
course_id: path.course_id
method: generated
generated: '2026-10-01'
- target: $.paths['/v1/courses/{course_id}/content_exports'].post
update:
x-apievangelist-phrasing:
intent: Export a course's content
effect: write
questions:
- How do I export a whole course as a Common Cartridge file?
- Can I export only a course's quizzes in QTI format?
- Is it possible to export just selected pages and files from a course?
instructions:
- text: Export course {course_id} as {export_type}.
slots:
course_id: path.course_id
export_type: requestBody.export_type
- text: Export only {select} from course {course_id} in {export_type} format.
slots:
select: requestBody.select
course_id: path.course_id
export_type: requestBody.export_type
method: generated
generated: '2026-10-01'
- target: $.paths['/v1/groups/{group_id}/content_exports'].get
update:
x-apievangelist-phrasing:
intent: List a group's content exports
effect: read
questions:
- What exports have been run for a group?
- Are there any group export jobs still pending?
instructions:
- text: List content exports for group {group_id}.
slots:
group_id: path.group_id
- text: Show past and pending export jobs in group {group_id}.
slots:
group_id: path.group_id
method: generated
generated: '2026-10-01'
- target: $.paths['/v1/groups/{group_id}/content_exports'].post
update:
x-apievangelist-phrasing:
intent: Export a group's content
effect: write
questions:
- How do I export the files and pages of a group?
- Can I export a group's content without being notified?
instructions:
- text: Export group {group_id} as {export_type}.
slots:
group_id: path.group_id
export_type: requestBody.export_type
- text: Export {select} from group {group_id} as {export_type} with skip notifications {skip_notifications}.
slots:
select: requestBody.select
group_id: path.group_id
export_type: requestBody.export_type
skip_notifications: requestBody.skip_notifications
method: generated
generated: '2026-10-01'
- target: $.paths['/v1/users/{user_id}/content_exports'].get
update:
x-apievangelist-phrasing:
intent: List a user's content exports
effect: read
questions:
- What exports have been made of a user's personal files?
- Which user-level export jobs are still running?
instructions:
- text: List content exports for user {user_id}.
slots:
user_id: path.user_id
- text: Show past and pending export jobs for user {user_id}.
slots:
user_id: path.user_id
method: generated
generated: '2026-10-01'
- target: $.paths['/v1/users/{user_id}/content_exports'].post
update:
x-apievangelist-phrasing:
intent: Export a user's personal content
effect: write
questions:
- How do I export all of a user's personal files as a zip?
- Can I export a user's content to back it up?
instructions:
- text: Export user {user_id}'s content as {export_type}.
slots:
user_id: path.user_id
export_type: requestBody.export_type
- text: Start a {export_type} export of {select} for user {user_id}.
slots:
export_type: requestBody.export_type
select: requestBody.select
user_id: path.user_id
method: generated
generated: '2026-10-01'
- target: $.paths['/v1/courses/{course_id}/content_exports/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a course export and its download link
effect: read
questions:
- Is my course export finished, and where do I download it?
- Can I check the status of a single course export job?
instructions:
- text: Show content export {id} for course {course_id}.
slots:
id: path.id
course_id: path.course_id
- text: Get the download URL for course {course_id} export {id}.
slots:
course_id: path.course_id
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/v1/groups/{group_id}/content_exports/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a group export and its download link
effect: read
questions:
- Has my group export completed yet?
- Where's the download for a finished group export?
instructions:
- text: Show content export {id} for group {group_id}.
slots:
id: path.id
group_id: path.group_id
- text: Get the download URL for group {group_id} export {id}.
slots:
group_id: path.group_id
id: path.id
method: generated
generated: '2026-10-01'
- target: $.paths['/v1/users/{user_id}/content_exports/{id}'].get
update:
x-apievangelist-phrasing:
intent: Get a user export and its download link
effect: read
questions:
- Is a user's file export ready to download?
- What's the status of one export of a user's content?
instructions:
- text: Show content export {id} for user {user_id}.
slots:
id: path.id
user_id: path.user_id
- text: Get the download URL for user {user_id} export {id}.
slots:
user_id: path.user_id
id: path.id
method: generated
generated: '2026-10-01'
Work with this as data
Every overlay here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/canvas-content-exports-api-phrasing-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.