The Instructure Community will enter a read-only state on November 22, 2025 as we prepare to migrate to our new Community platform in early December.
Read our blog post for more info about this change.
Found this content helpful? Log in or sign up to leave a like!
Hello,
Using the REST API, I've been successful in creating Enrollment Terms with overrides dates for "StudentEnrollment", "TeacherEnrollment", "TaEnrollment", and "DesignerEnrollment". However, I've been unable to list the override data for Enrollment Terms.
The API states that the endpoint should look like this:
https://<canvas>/api/v1/accounts/1/terms?include[]=overridesand result in a listing like this:
{"enrollment_terms": [{
"id": 1,
"name": "Fall 20X6"
"start_at": "2026-08-31T20:00:00Z",
"end_at": "2026-12-20T20:00:00Z",
"created_at": "2025-01-02T03:43:11Z",
"workflow_state": "active",
"grading_period_group_id": 1,
"sis_term_id": null,
"overrides": {
"StudentEnrollment": {
"start_at": "2026-09-03T20:00:00Z",
"end_at": "2026-12-19T20:00:00Z"
},
"TeacherEnrollment": {
"start_at": null,
"end_at": "2026-12-30T20:00:00Z"
}}
}]}However, I've been unable to get override data to appear. When I send the request as formatted above, I get a response code = 200 & a list of all my Enrollment Terms, but none of them contain the override information.
The workflow_state[] request parameters seem to work as expected, so I'm left thinking that I must be missing something.
Thanks.
Are you calling this in your browser or in a script? If using a script you may need to grab the overrides field from
$termObject.enrollment_terms.overridesThe browser should just list the overrides.
My implementation is written in Java, but I've also tried this in the browser. Neither one returns Enrollment Term overrides for the Terms that I've created with override times. Using REST, I am able to List Enrollment Terms using the different workflow_state[] parameters, and I can List other objects using include[] parameters, so I'm pretty confident in my code.
At this time, I'm simply using the REST API to create the Enrollment Terms with override time settings, then using the REST API to list the Terms & verify that they were created correctly. I can see that I'm creating the Terms correctly in the web UI (with overrides), but I'm still not able to List the Terms using REST, showing the overrides.
Thank you for your response.
Hi Kurt --
I can't see anything wrong with your request; I just tried this in our test instance and was able to get a result that included override data:
{
"id": XX,
"name": "2014-2015 Winter",
"start_at": "2015-01-01T05:00:00Z",
"end_at": "2015-01-20T05:00:00Z",
"created_at": "2014-05-28T20:47:07Z",
"workflow_state": "active",
"grading_period_group_id": null,
"sis_term_id": "2014-5",
"overrides": {
"StudentEnrollment": {
"start_at": "2015-01-03T05:00:00Z",
"end_at": "2015-01-18T05:00:00Z"
}
}
},FWIW I used Postman to make the request as a GET to:
https://{{api_host}}/api/v1/accounts/1/terms?include[]=overrides&page=1&per_page=100
--Colin
Hi Colin,
Thank you for confirming that my request should work. I just tried the same request on another test server and got the same results...
https://<myserver>/api/v1/accounts/1/terms?include[]=overrides&access_token=<my token>
{
"id":7,
"name":"test_create_urlenc_overrides",
"start_at":"2016-06-20T00:00:00Z",
"end_at":"2016-07-28T00:00:00Z",
"created_at":"2017-04-12T21:34:49Z",
"workflow_state":"active",
"grading_period_group_id":null,
"sis_term_id":"urlenc_overrides"
}
Still no overrides showing up for me (the info above came right off my web browser). Having two of my servers present the information differently than yours makes me think that I'm definitely doing something wrong. However, other than the override info, every other aspect of the API for this object seems to work as expected.
Thanks again for your reply.
Are you self-hosted, or are your instances hosted by Instructure?
--Colin
self-hosted
Ah, I bet that's it! The overrides were only added to the Terms API in the 2/18/2017 release. If you update your local instance to a version later than that you'll get the override data included.
--Colin
I think you're right! I have two test servers, the first was setup on November 22, 2016 and the second was setup on February 15th - just before the 2/18 release. I suppose I'll have to pay more attention to the release cycles... I'm still new to Canvas so there's a lot I'm still not familiar with.
I'll try updating the servers today and post back - first time doing that too!
Thanks again for your help.
---Kurt
Community helpTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign inTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign in