Courses
put
Authorizations
Body
attachmentstring · binaryRequired
CSV containing a Catalog Course ID and Catalog Course SKU header
Responses
200
Updating course sku
application/json
Responseobject
put
PUT /api/v1/courses/update_skus HTTP/1.1
Host: replace_me
Authorization: YOUR_API_KEY
Content-Type: multipart/form-data
Accept: */*
Content-Length: 23
{
"attachment": "binary"
}
200
Updating course sku
{
"progress": {
"id": 2,
"account_id": 5,
"canvas_user_id": null,
"completion_percent": null,
"workflow_state": "queued",
"payload": {},
"created_at": "2025/06/10 13:42:01 +0000",
"updated_at": "2025/06/10 13:42:01 +0000"
}
}
get
Authorizations
Responses
200
Listing courses
application/json
Responseobject
get
GET /api/v1/courses HTTP/1.1
Host: replace_me
Authorization: YOUR_API_KEY
Accept: */*
200
Listing courses
{
"courses": [
{
"id": 1,
"visibility": "listed",
"enrollment_open": true,
"enrollment_open_from": null,
"enrollment_open_to": null,
"enrollment_cap": null,
"description": "description_1",
"enrollment_fee": 0,
"created_at": "2025/06/10 13:42:01 +0000",
"credits": 3,
"measurement": "credit",
"updated_at": "2025/06/10 13:42:01 +0000",
"short_description": "teaser_1",
"listing_path": "course-path-1",
"listing_image": null,
"currency": "USD",
"catalog": {
"id": 6,
"name": "Domain Account 7"
},
"type": "Course",
"title": "Course 1",
"list_order": null,
"waitlist": false,
"waitlist_cap": null,
"sku": "sku_1",
"show_free_banner": true,
"image_alt_text": null,
"allowed_payment_types": [
"standard"
],
"tag_names": [
"Another Tag",
"Tag"
],
"listing_url": "http://www.my-catalog.edu/courses/course-path-1",
"start_date": "2025/06/03 13:42:01 +0000",
"end_date": "2025/06/17 13:42:01 +0000",
"canvas_section_id": null,
"associated_account_ids": [],
"canvas_course": {
"id": 1
}
}
]
}
post
Authorizations
Body
skustringOptional
Listing SKU for a course
Responses
201
Creating a course
application/json
post
POST /api/v1/courses HTTP/1.1
Host: replace_me
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 524
{
"course": {
"title": "text",
"description": "text",
"path": "text",
"teaser": "text",
"enrollment_open": "text",
"enrollment_open_from": "text",
"enrollment_open_to": "text",
"visibility": "text",
"enrollment_cap": "text",
"enrollment_fee": "text",
"allowed_payment_types": "text",
"days_to_complete": "text",
"account_id": "text",
"list_order": "text",
"waitlist": "text",
"waitlist_cap": "text",
"listing_image": "text",
"tag_names": [
"text"
],
"show_free_banner": "text",
"associated_account_ids": "text",
"canvas_course_id": "text",
"credits": "text"
},
"sku": "text"
}
201
Creating a course
{
"course": {
"id": 5,
"visibility": "listed",
"enrollment_open": true,
"enrollment_open_from": null,
"enrollment_open_to": null,
"enrollment_cap": 150,
"description": "This is a very important course.",
"enrollment_fee": 49.99,
"created_at": "2025/06/10 13:42:01 +0000",
"credits": 4,
"measurement": "credit",
"updated_at": "2025/06/10 13:42:01 +0000",
"short_description": "This is an example teaser",
"listing_path": "course-1",
"listing_image": null,
"currency": "USD",
"catalog": {
"id": 10,
"name": "Domain Account 11"
},
"type": "Course",
"title": "Course 1",
"list_order": 123,
"waitlist": true,
"waitlist_cap": 25,
"sku": "abc1234",
"show_free_banner": true,
"image_alt_text": null,
"allowed_payment_types": [
"standard"
],
"tag_names": [
"Tag",
"Another Tag"
],
"listing_url": "http://www.my-catalog.edu/courses/course-1",
"start_date": null,
"end_date": null,
"canvas_section_id": null,
"associated_account_ids": [],
"canvas_course": {
"id": 10010010
}
}
}
get
Authorizations
Path parameters
idintegerRequired
Responses
200
Getting a specific course
application/json
get
GET /api/v1/courses/{id} HTTP/1.1
Host: replace_me
Authorization: YOUR_API_KEY
Accept: */*
200
Getting a specific course
{
"course": {
"id": 3,
"visibility": "listed",
"enrollment_open": true,
"enrollment_open_from": null,
"enrollment_open_to": null,
"enrollment_cap": null,
"description": "description_3",
"enrollment_fee": 0,
"created_at": "2025/06/10 13:42:01 +0000",
"credits": 3,
"measurement": "credit",
"updated_at": "2025/06/10 13:42:01 +0000",
"short_description": "teaser_3",
"listing_path": "course-path-3",
"listing_image": null,
"currency": "USD",
"catalog": {
"id": 8,
"name": "Domain Account 9"
},
"type": "Course",
"title": "Course 3",
"list_order": null,
"waitlist": false,
"waitlist_cap": null,
"sku": "sku_3",
"show_free_banner": true,
"image_alt_text": null,
"allowed_payment_types": [
"standard"
],
"tag_names": [
"Another Tag",
"Tag"
],
"listing_url": "http://www.my-catalog.edu/courses/course-path-3",
"start_date": "2025/06/03 13:42:01 +0000",
"end_date": "2025/06/17 13:42:01 +0000",
"canvas_section_id": null,
"associated_account_ids": [],
"canvas_course": {
"id": 3
}
}
}
put
Authorizations
Path parameters
idintegerRequired
Body
skustringOptional
Listing SKU for a course
Responses
204
Updating a course
*/*
Responseobject
put
PUT /api/v1/courses/{id} HTTP/1.1
Host: replace_me
Authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 524
{
"course": {
"title": "text",
"description": "text",
"path": "text",
"teaser": "text",
"enrollment_open": "text",
"enrollment_open_from": "text",
"enrollment_open_to": "text",
"visibility": "text",
"enrollment_cap": "text",
"enrollment_fee": "text",
"allowed_payment_types": "text",
"days_to_complete": "text",
"account_id": "text",
"list_order": "text",
"waitlist": "text",
"waitlist_cap": "text",
"listing_image": "text",
"tag_names": [
"text"
],
"show_free_banner": "text",
"associated_account_ids": "text",
"canvas_course_id": "text",
"credits": "text"
},
"sku": "text"
}
204
Updating a course
{}
delete
Authorizations
Path parameters
idintegerRequired
Responses
204
Deleting a specific course
*/*
Responseobject
delete
DELETE /api/v1/courses/{id} HTTP/1.1
Host: replace_me
Authorization: YOUR_API_KEY
Accept: */*
204
Deleting a specific course
{}
Last updated
Was this helpful?