# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Canvas LMS REST Sections API version: 1.0.0 extends: openapi/canvas-sections-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-01' generator: build-phrasing.py label: Generated by API Evangelist operations: 9 - target: $.paths['/v1/courses/{course_id}/sections'].get update: x-apievangelist-phrasing: intent: List a course's sections effect: read questions: - What sections does my Canvas course have? - Can I search a course's sections by name? instructions: - text: List the sections in course {course_id}. slots: course_id: path.course_id - text: Find sections in course {course_id} matching {search_term}. slots: course_id: path.course_id search_term: query.search_term method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/sections'].post update: x-apievangelist-phrasing: intent: Create a section in a course effect: write questions: - How do I add a new section to a course? - Can I give a new section its own start and end dates and SIS id? instructions: - text: Create a section named {name} in course {course_id}. slots: name: requestBody.course_section[name] course_id: path.course_id - text: Add section {name} to course {course_id} with SIS id {sis_section_id}, running {start_at} to {end_at}. slots: name: requestBody.course_section[name] course_id: path.course_id sis_section_id: requestBody.course_section[sis_section_id] start_at: requestBody.course_section[start_at] end_at: requestBody.course_section[end_at] method: generated generated: '2026-10-01' - target: $.paths['/v1/sections/{id}/crosslist/{new_course_id}'].post update: x-apievangelist-phrasing: intent: Cross-list a section into another course effect: write questions: - How do I move a section into a different course? - Can I cross-list a section into a course in another department? instructions: - text: Cross-list section {id} into course {new_course_id}. slots: id: path.id new_course_id: path.new_course_id - text: Move section {id} to course {new_course_id}, overriding SIS stickiness {override_sis_stickiness}. slots: id: path.id new_course_id: path.new_course_id override_sis_stickiness: requestBody.override_sis_stickiness method: generated generated: '2026-10-01' - target: $.paths['/v1/sections/{id}/crosslist'].delete update: x-apievangelist-phrasing: intent: Undo cross-listing of a section effect: destructive questions: - How do I send a cross-listed section back to its original course? - Can I reverse a section cross-list? instructions: - text: De-cross-list section {id}. slots: id: path.id - text: Return section {id} to its original course. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/v1/sections/{id}'].get update: x-apievangelist-phrasing: intent: Get a section by its id effect: read questions: - How do I look up a section when I only know its section id? - Can I get a section's details including its student count? instructions: - text: Show section {id}. slots: id: path.id - text: Get section {id} details including {include}. slots: id: path.id include: query.include method: generated generated: '2026-10-01' - target: $.paths['/v1/sections/{id}'].put update: x-apievangelist-phrasing: intent: Edit a section effect: write questions: - Can I rename a section or change its dates? - How do I restrict enrollments to a section's own dates? instructions: - text: Rename section {id} to {name}. slots: id: path.id name: requestBody.course_section[name] - text: Set section {id} to end at {end_at} and restrict enrollments to section dates {restrict_enrollments_to_section_dates}. slots: id: path.id end_at: requestBody.course_section[end_at] restrict_enrollments_to_section_dates: requestBody.course_section[restrict_enrollments_to_section_dates] method: generated generated: '2026-10-01' - target: $.paths['/v1/sections/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a section effect: destructive questions: - How do I delete a section from a course? - What does Canvas return after a section is deleted? instructions: - text: Delete section {id}. slots: id: path.id - text: Remove the course section {id} permanently. slots: id: path.id method: generated generated: '2026-10-01' - target: $.paths['/v1/courses/{course_id}/sections/{id}'].get update: x-apievangelist-phrasing: intent: Get a section within a specific course effect: read questions: - How do I get one section's details scoped to its course? - Can I fetch a section via its course id and section id together? instructions: - text: Show section {id} in course {course_id}. slots: id: path.id course_id: path.course_id - text: Get course {course_id} section {id} with {include}. slots: course_id: path.course_id id: path.id include: query.include method: generated generated: '2026-10-01' - target: $.paths['/v1/sections/{id}/users'].get update: x-apievangelist-phrasing: intent: List users in a section effect: read questions: - Who is enrolled in a particular section? - Can I list only the students in a section and skip inactive enrollments? instructions: - text: List the users in section {id}. slots: id: path.id - text: Show {enrollment_type} users in section {id} matching {search_term}. slots: enrollment_type: query.enrollment_type id: path.id search_term: query.search_term method: generated generated: '2026-10-01'