Skip to main content
The canvas assignments subcommand group gives you direct access to assignment data in a Canvas course. You can list assignments with flexible filters, fetch full details for a single assignment, and inspect grading groups. All output is printed as pretty-printed JSON.

canvas assignments list

List assignments in a course.
canvas assignments list 12345
canvas assignments list 12345 --bucket upcoming
canvas assignments list 12345 --bucket overdue --include-submission
canvas assignments list 12345 --search "midterm" --limit 10
course_id
string
required
Canvas course ID.
Filter assignments by name. Case-insensitive substring match.
--bucket
string
Return only assignments in a specific time/state bucket. Canvas-supported values include:
  • upcoming — not yet due
  • overdue — past due and unsubmitted
  • past — due date has passed
  • undated — no due date set
  • ungraded — submitted but not yet graded
  • unsubmitted — not submitted
Omit the flag to return all assignments regardless of state.
--include-submission
boolean
default:"false"
Attach the current user’s submission data to each assignment where available.
--limit
number
default:"100"
Maximum number of assignments to return.

Examples

List only upcoming assignments:
canvas assignments list 12345 --bucket upcoming
Find assignments matching a search term and include your submission status:
canvas assignments list 12345 --search "essay" --include-submission
List past assignments, capped at 25:
canvas assignments list 12345 --bucket past --limit 25

canvas assignments show

Fetch full details for a single assignment.
canvas assignments show 12345 67890
canvas assignments show 12345 67890 --include-submission
course_id
string
required
Canvas course ID.
assignment_id
string
required
Canvas assignment ID.
--include-submission
boolean
default:"false"
Include the current user’s submission for this assignment where available.

Examples

Show assignment details without submission data:
canvas assignments show 12345 67890
Show assignment details and include your submission:
canvas assignments show 12345 67890 --include-submission

canvas assignments groups

List assignment groups (grading categories) for a course. Assignment groups define how grades are weighted in Canvas.
canvas assignments groups 12345
canvas assignments groups 12345 --assignments
canvas assignments groups 12345 --assignments --include-submission
canvas assignments groups 12345 --assignments --limit 20
course_id
string
required
Canvas course ID.
--assignments/--no-assignments
boolean
default:"false"
Include the assignments nested within each group.
--include-submission
boolean
default:"false"
Attach submission data to each assignment when --assignments is also set.
--limit
number
default:"100"
Maximum number of assignment groups to return.

Examples

List groups with their assignments and your submission status:
canvas assignments groups 12345 --assignments --include-submission
List groups only (no assignment details):
canvas assignments groups 12345

Build docs developers (and LLMs) love