🚀 Heads up: Our API Docs Have Moved!
We have relocated to Instructure Developer Documentation Portal. 🎉 Please update your bookmarks. This page will automatically redirect after July 1, 2026.
We have relocated to Instructure Developer Documentation Portal. 🎉 Please update your bookmarks. This page will automatically redirect after July 1, 2026.
Blackout Dates API
API for accessing blackout date information.
A BlackoutDate object looks like:
// Blackout dates are used to prevent scheduling assignments on a given date in
// course pacing.
{
// the ID of the blackout date
"id": 1,
// the context owning the blackout date
"context_id": 1,
"context_type": "Course",
// the start date of the blackout date
"start_date": "2022-01-01",
// the end date of the blackout date
"end_date": "2022-01-02",
// title of the blackout date
"event_title": "some title"
}
List blackout dates BlackoutDatesController#index
GET /api/v1/courses/:course_id/blackout_dates
Scope:
url:GET|/api/v1/courses/:course_id/blackout_dates
GET /api/v1/accounts/:account_id/blackout_dates
Scope:
Returns the list of blackout dates for the current context.
Returns a list of
BlackoutDate
objects
url:GET|/api/v1/accounts/:account_id/blackout_dates
Get a single blackout date BlackoutDatesController#show
GET /api/v1/courses/:course_id/blackout_dates/:id
Scope:
url:GET|/api/v1/courses/:course_id/blackout_dates/:id
GET /api/v1/accounts/:account_id/blackout_dates/:id
Scope:
Returns the blackout date with the given id.
Returns a
BlackoutDate
object
url:GET|/api/v1/accounts/:account_id/blackout_dates/:id
New Blackout Date BlackoutDatesController#new
GET /api/v1/courses/:course_id/blackout_dates/new
Scope:
url:GET|/api/v1/courses/:course_id/blackout_dates/new
GET /api/v1/accounts/:account_id/blackout_dates/new
Scope:
Initialize an unsaved Blackout Date for the given context.
Returns a
BlackoutDate
object
url:GET|/api/v1/accounts/:account_id/blackout_dates/new
Create Blackout Date BlackoutDatesController#create
POST /api/v1/courses/:course_id/blackout_dates
Scope:
url:POST|/api/v1/courses/:course_id/blackout_dates
POST /api/v1/accounts/:account_id/blackout_dates
Scope:
Create a blackout date for the given context.
url:POST|/api/v1/accounts/:account_id/blackout_dates
Request Parameters:
| Parameter | Type | Description | |
|---|---|---|---|
| start_date | Date | The start date of the blackout date. | |
| end_date | Date | The end date of the blackout date. | |
| event_title | string | The title of the blackout date. |
Update Blackout Date BlackoutDatesController#update
PUT /api/v1/courses/:course_id/blackout_dates/:id
Scope:
url:PUT|/api/v1/courses/:course_id/blackout_dates/:id
PUT /api/v1/accounts/:account_id/blackout_dates/:id
Scope:
Update a blackout date for the given context.
url:PUT|/api/v1/accounts/:account_id/blackout_dates/:id
Request Parameters:
| Parameter | Type | Description | |
|---|---|---|---|
| start_date | Date | The start date of the blackout date. | |
| end_date | Date | The end date of the blackout date. | |
| event_title | string | The title of the blackout date. |
Delete Blackout Date BlackoutDatesController#destroy
DELETE /api/v1/courses/:course_id/blackout_dates/:id
Scope:
url:DELETE|/api/v1/courses/:course_id/blackout_dates/:id
DELETE /api/v1/accounts/:account_id/blackout_dates/:id
Scope:
Delete a blackout date for the given context.
Returns a
BlackoutDate
object
url:DELETE|/api/v1/accounts/:account_id/blackout_dates/:id
Update a list of Blackout Dates BlackoutDatesController#bulk_update
PUT /api/v1/courses/:course_id/blackout_dates
Scope:
Create, update, and delete blackout dates to sync the db with the incoming data.
url:PUT|/api/v1/courses/:course_id/blackout_dates
Request Parameters:
| Parameter | Type | Description | |
|---|---|---|---|
| blackout_dates: | string | [blackout_date, ...] An object containing the array of BlackoutDates we want to exist after this operation. For array entries, if it has an id it will be updated, if not created, and if an existing BlackoutDate id is missing from the array, it will be deleted. |