Skip to content

Raw API Commands ​

Raw API commands provide direct access to any Canvas API endpoint. Use them for endpoints that do not have dedicated CLI commands, or for debugging and exploration.

GET ​

bash
canvas api get /api/v1/courses
canvas api get /api/v1/courses/123/assignments --query search_term=essay
canvas api get /api/v1/courses/123/assignments --paginate --json
canvas api get /api/v1/courses/123/assignments --include-headers --json
canvas api get /api/v1/courses/123/assignments --raw

Default behavior:

  • one request only
  • no auto-pagination unless --paginate
  • JSON envelope unless --raw

POST / PUT / DELETE ​

bash
canvas api post /api/v1/courses/123/assignments --data @payload.json --dry-run
canvas api post /api/v1/courses/123/assignments --data @payload.json --confirm
canvas api put /api/v1/courses/123/assignments/456 --data '{"due_at":"2026-06-15T23:59:00Z"}' --confirm
canvas api delete /api/v1/courses/123/assignments/456 --confirm

Raw writes use the same safety model as dedicated commands:

  • auth and timeout from resolved config
  • retries with exponential backoff
  • token redaction in all output
  • --dry-run preview (method, path, query, payload summary)
  • --confirm required
  • audit log entry on success

Built with VitePress