Course Pace API

API for accessing and building Course Paces.

A CoursePace object looks like:

{
  // the ID of the course pace
  "id": 5,
  // the ID of the course
  "course_id": 5,
  // the ID of the user for this course pace
  "user_id": 10,
  // the state of the course pace
  "workflow_state": "active",
  // boolean value depending on exclude weekends setting
  "exclude_weekends": true,
  // set if the end date is set from course
  "hard_end_dates": true,
  // date when course pace is created
  "created_at": "2013-01-23T23:59:00-07:00",
  // course end date
  "end_date": "2013-01-23T23:59:00-07:00",
  // date when course pace is updated
  "updated_at": "2013-01-23T23:59:00-07:00",
  // date when course pace is published
  "published_at": "2013-01-23T23:59:00-07:00",
  // the root account ID for this course pace
  "root_account_id": 10,
  // course start date
  "start_date": "2013-01-23T23:59:00-07:00",
  // list of modules and items for this course pace
  "modules": null,
  // progress of pace publishing
  "progress": null
}

A Module object looks like:

{
  // the ID of the module
  "id": 5,
  // the name of the module
  "name": "Module 1",
  // the position of the module
  "position": 5,
  // list of module items
  "items": null,
  // the ID of the context for this course pace
  "context_id": 10,
  // The given context for the course pace
  "context_type": "Course"
}

A ModuleItem object looks like:

{
  // the ID of the module item
  "id": 5,
  // the duration of the module item
  "duration": 5,
  // the course pace id of the module item
  "course_pace_id": 5,
  // the root account id of the module item
  "root_account_id": 5,
  // the module item id of the module item
  "module_item_id": 5,
  // The title of the item assignment
  "assignment_title": "Assignment 9",
  // The points of the item
  "points_possible": 10.0,
  // The link of the item assignment
  "assignment_link": "/courses/105/modules/items/264",
  // the current position of the module item
  "position": 5,
  // The module item type of the item assignment
  "module_item_type": "Assignment",
  // published boolean value for course pace
  "published": true
}

A Progress object looks like:

{
  // the ID of the Progress object
  "id": 1,
  // the context owning the job.
  "context_id": 1,
  "context_type": "Account",
  // the id of the user who started the job
  "user_id": 123,
  // the type of operation
  "tag": "course_batch_update",
  // percent completed
  "completion": 100,
  // the state of the job one of 'queued', 'running', 'completed', 'failed'
  "workflow_state": "completed",
  // the time the job was created
  "created_at": "2013-01-15T15:00:00Z",
  // the time the job was last updated
  "updated_at": "2013-01-15T15:04:00Z",
  // optional details about the job
  "message": "17 courses processed",
  // optional results of the job. omitted when job is still pending
  "results": {"id":"123"},
  // url where a progress update can be retrieved
  "url": "https://canvas.example.edu/api/v1/progress/1"
}

Show a Course pace CoursePacesController#api_show

GET /api/v1/courses/:course_id/course_pacing/:id

Scope: url:GET|/api/v1/courses/:course_id/course_pacing/:id

Returns a course pace for the course and pace id provided

Request Parameters:

Parameter Type Description
course_id Required integer

The id of the course

course_pace_id Required integer

The id of the course_pace

Example Request:

curl https://<canvas>/api/v1/courses/1/course_pacing/1 \
  -H 'Authorization: Bearer <token>'
Returns a CoursePace object

Create a Course pace CoursePacesController#create

POST /api/v1/courses/:course_id/course_pacing

Scope: url:POST|/api/v1/courses/:course_id/course_pacing

Update a Course pace CoursePacesController#update

PUT /api/v1/courses/:course_id/course_pacing/:id

Scope: url:PUT|/api/v1/courses/:course_id/course_pacing/:id

Returns the updated course pace

Request Parameters:

Parameter Type Description
course_id Required integer

The id of the course

course_pace_id Required integer

The id of the course pace

end_date Datetime

End date of the course pace

exclude_weekends boolean

Course pace dates excludes weekends if true

hard_end_dates boolean

Course pace uess hard end dates if true

workflow_state string

The state of the course pace

course_pace_module_item_attributes[] string

Module Items attributes

Example Request:

curl https://<canvas>/api/v1/courses/1/course_pacing/1 \
  -X PUT \
  -H 'Authorization: Bearer <token>'
Returns a CoursePace object

Delete a Course pace CoursePacesController#destroy

DELETE /api/v1/courses/:course_id/course_pacing/:id

Scope: url:DELETE|/api/v1/courses/:course_id/course_pacing/:id

Returns the updated course pace

Request Parameters:

Parameter Type Description
course_id Required integer

The id of the course

course_pace_id Required integer

The id of the course_pace

Example Request:

curl https://<canvas>/api/v1/courses/1/course_pacing/1 \
  -X DELETE \
  -H 'Authorization: Bearer <token>'
Returns a CoursePace object