Fixed

Course enrollment listings page cleanly and faster

Paging through GET /api/v2/courses/:course_id/enrollments could hand back a Pagination-Next cursor one row behind, so the next page started with an enrollment you had already received, or a final page came back empty. The cursor now comes from the page you were actually sent, so following it visits every enrollment exactly once.

The listing is also much quicker on large courses: each page now reads just the enrollments it returns, so a course with hundreds of thousands of students lists as fast as a small one, from the first page to the last.

Agent examples: sync every student in a course to a CRM without de-duplicating · walk a large course's roster page by page on a schedule.

Resources: Courses::Enrollment
Building with an AI agent? Point it at the Courses skill.