Modules
A Module object looks like:
{
// the unique identifier for the module
"id": 123,
// the state of the module: 'active', 'deleted'
"workflow_state": "active",
// the position of this module in the course (1-based)
"position": 2,
// the name of this module
"name": "Imaginary Numbers and You",
// (Optional) the date this module will unlock
"unlock_at": "2012-12-31T06:00:00-06:00",
// Whether module items must be unlocked in order
"require_sequential_progress": true,
// Whether module requires all required items or one required item to be
// considered complete (one of 'all' or 'one')
"requirement_type": "all",
// IDs of Modules that must be completed before this one is unlocked
"prerequisite_module_ids": [121, 122],
// The number of items in the module
"items_count": 10,
// The API URL to retrive this module's items
"items_url": "https://canvas.example.com/api/v1/modules/123/items",
// The contents of this module, as an array of Module Items. (Present only if
// requested via include[]=items AND the module is not deemed too large by
// Canvas.)
"items": null,
// The state of this Module for the calling user one of 'locked', 'unlocked',
// 'started', 'completed' (Optional; present only if the caller is a student or
// if the optional parameter 'student_id' is included)
"state": "started",
// the date the calling user completed the module (Optional; present only if the
// caller is a student or if the optional parameter 'student_id' is included)
"completed_at": null,
// if the student's final grade for the course should be published to the SIS
// upon completion of this module
"publish_final_grade": null,
// (Optional) Whether this module is published. This field is present only if
// the caller has permission to view unpublished modules.
"published": true
}A CompletionRequirement object looks like:
A ContentDetails object looks like:
A ModuleItem object looks like:
A ModuleItemSequenceNode object looks like:
A ModuleItemSequence object looks like:
A ModuleAssignmentOverride object looks like:
An OverrideTarget object looks like:
List modules
GET /api/v1/courses/:course_id/modules
Request Parameters:
Parameter
Type
Description
Example Request:
Show module
GET /api/v1/courses/:course_id/modules/:id
Request Parameters:
Parameter
Type
Description
Example Request:
Create a module
POST /api/v1/courses/:course_id/modules
Request Parameters:
Parameter
Type
Description
Example Request:
Update a module
PUT /api/v1/courses/:course_id/modules/:id
Request Parameters:
Parameter
Type
Description
Example Request:
Delete module
DELETE /api/v1/courses/:course_id/modules/:id
Example Request:
Re-lock module progressions
PUT /api/v1/courses/:course_id/modules/:id/relock
Example Request:
List module items
GET /api/v1/courses/:course_id/modules/:module_id/items
Request Parameters:
Parameter
Type
Description
Example Request:
Show module item
GET /api/v1/courses/:course_id/modules/:module_id/items/:id
Request Parameters:
Parameter
Type
Description
Example Request:
Create a module item
POST /api/v1/courses/:course_id/modules/:module_id/items
Request Parameters:
Parameter
Type
Description
Example Request:
Update a module item
PUT /api/v1/courses/:course_id/modules/:module_id/items/:id
Request Parameters:
Parameter
Type
Description
Example Request:
Select a mastery path
POST /api/v1/courses/:course_id/modules/:module_id/items/:id/select_mastery_path
Request Parameters:
Parameter
Type
Description
Example Request:
Delete module item
DELETE /api/v1/courses/:course_id/modules/:module_id/items/:id
Example Request:
Mark module item as done/not done
PUT /api/v1/courses/:course_id/modules/:module_id/items/:id/done
Example Request:
Get module item sequence
GET /api/v1/courses/:course_id/module_item_sequence
Request Parameters:
Parameter
Type
Description
Example Request:
Mark module item read
POST /api/v1/courses/:course_id/modules/:module_id/items/:id/mark_read
Example Request:
List a module's overrides
GET /api/v1/courses/:course_id/modules/:context_module_id/assignment_overrides
Example Request:
Update a module's overrides
PUT /api/v1/courses/:course_id/modules/:context_module_id/assignment_overrides
Request Parameters:
Parameter
Type
Description
Example Request:
Last updated
Was this helpful?