Courses API, List Courses For User: Add "enrollment_term_id" Filter

Idea created by Tristan Baruth on Jun 21, 2019
    Open for Voting
    • Gretchen Anderson
    • Rob Ditto
    • Ruiling Zhang
    • Megan Jensen
    • Jeffrey Brady
    • Amy Ward
    • Leonardo Santos
    • Tristan Baruth

    Problem:  Fetching courses by this API endpoint is very slow for people with a lot of enrollments when filtering only on enrollment_role.  Unfortunately, the situation only becomes worse with time, as the number of enrollments increases with each semester to a point where the API is too slow for the end user.  This is especially problematic for instructors and administrators who happen to use a Canvas instance in a heavy fashion for an extended period of time (e.g. 3+ years).  


    Solution:  Allow filtering to occur on enrollment_term_id, which, of course, corresponds to the enrollment term in which the course resides.  This would greatly improve API endpoint speed and is useful for many use cases where only a current term's data needs to be viewed.  


    Links to API Endpoint(s) to be impacted by requested change: