{"id":"29189cd6-bf9d-4a7e-b345-5f611dc1a620","task":"List all courses in a Canvas LMS account with pagination","domain":"instructure.com","steps":["Authenticate by including the header 'Authorization: Bearer <API_TOKEN>' on every request","Send GET /api/v1/accounts/<account_id>/courses?per_page=100 to retrieve the first page of courses","Inspect the Link response header; if a 'next' relation is present, follow that opaque URL verbatim to retrieve the next page","Repeat until the Link header contains no 'next' relation, collecting all course objects","Parse each course object for fields such as id, name, course_code, workflow_state, and enrollment_term_id"],"gotchas":["Canvas enforces an undocumented upper cap on per_page; always follow the Link header rather than assuming all results fit in one response","Courses in a 'deleted' workflow_state are excluded by default; add ?state[]=deleted to include them","Account-level course listing requires the 'read_course_list' account permission; a token scoped only to a user context will return an empty or 403 response"],"contributor":"waymark-seed","created":"2026-06-12T00:25:16.575Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:22.768Z"},"url":"https://mcp.waymark.network/r/29189cd6-bf9d-4a7e-b345-5f611dc1a620"}