Canvas

Learn how to use Canvas with Composio

Overview

SLUG

CANVAS

Description

Canvas is a learning management system supporting online courses, assignments, grading, and collaboration, widely used by schools and universities for virtual classrooms

Authentication Details

client_id
stringRequired
client_secret
stringRequired
oauth_redirect_uri
stringDefaults to https://backend.composio.dev/api/v1/auth-apps/add
scopes
string
full
stringDefaults to https://canvas.instructure.com
bearer_token
string
full
stringRequired
generic_api_key
stringRequired

Tools

SLUG: CANVAS_CREATE_COURSE

Creates a new course in canvas within a specified account, with comprehensive configuration options.

Action Parameters

account_id
stringRequired
allow_student_forum_attachments
boolean
allow_student_wiki_edits
boolean
allow_wiki_comments
boolean
apply_assignment_group_weights
boolean
course_code
string
course_format
string
default_view
string
enable_sis_reactivation
boolean
end_at
string
enroll_me
boolean
grade_passback_setting
string
grading_standard_id
integer
hide_final_grades
boolean
integration_id
string
is_public
boolean
is_public_to_auth_users
boolean
license
string
name
string
offer
boolean
open_enrollment
boolean
post_manually
boolean
public_description
string
public_syllabus
boolean
public_syllabus_to_auth
boolean
restrict_enrollments_to_course_dates
boolean
self_enrollment
boolean
sis_course_id
string
start_at
string
syllabus_body
string
term_id
string
time_zone
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_FETCH_DATA

Fetches a specific category of canvas data (e.g., accounts, courses, users) by setting exactly one `get *` boolean flag to true and providing any associated ids.

Action Parameters

account_id
integer
assignment_id
integer
course_id
integer
enrollment_state
string
enrollment_type
string
get_accounts
boolean
get_assignments
boolean
get_courses
boolean
get_discussion_topics
boolean
get_files
boolean
get_pages
boolean
get_quizzes
boolean
get_submissions
boolean
get_user_courses
boolean
get_users
boolean
search_term
string
user_id
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_GET_ACCOUNTS

Retrieves all canvas accounts accessible to the authenticated user.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_GET_ALL_ASSIGNMENTS

Retrieves assignments for a specified canvas course.

Action Parameters

course_id
integerRequired
per_page
integerDefaults to 10

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_GET_CURRENT_USER

Retrieves detailed information about the currently authenticated user from the canvas lms.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_GET_SUBMISSION_FILES

Retrieves files from a student's canvas assignment submission, processing text, binary, and zip files, and providing s3 download urls if s3 integration is active and uploads are successful.

Action Parameters

assignment_id
stringRequired
course_id
stringRequired
user_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_LIST_COURSES

Retrieves a list of the current user's courses from canvas, optionally filtered by enrollment type and state.

Action Parameters

enrollment_state
string
enrollment_type
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_UPDATE_COURSE_SETTINGS

Updates various settings for an existing course in canvas, identified by `course id`.

Action Parameters

allow_final_grade_override
boolean
allow_student_anonymous_discussion_topics
boolean
allow_student_discussion_editing
boolean
allow_student_discussion_reporting
boolean
allow_student_discussion_topics
boolean
allow_student_forum_attachments
boolean
allow_student_organized_groups
boolean
conditional_release
boolean
course_id
integerRequired
default_due_time
string
filter_speed_grader_by_student_group
boolean
hide_distribution_graphs
boolean
hide_final_grades
boolean
hide_sections_on_course_users_page
boolean
home_page_announcement_limit
integer
lock_all_announcements
boolean
restrict_student_future_view
boolean
restrict_student_past_view
boolean
show_announcements_on_home_page
boolean
syllabus_course_summary
boolean
usage_rights_required
boolean

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_ACCOUNT_NOTIFICATION

Creates a global notification within a canvas account, ensuring `end at` is after `start at` and any specified `notification roles` are valid.

Action Parameters

account_id
stringRequired
end_at
stringRequired
icon
stringDefaults to warning
message
stringRequired
notification_roles
array
start_at
stringRequired
subject
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_APPOINTMENT_GROUP

Creates a new appointment group in canvas for schedulable time slots within specified course or group contexts.

Action Parameters

allow_observer_signup
boolean
context_codes
arrayRequired
description
string
location_address
string
location_name
string
max_appointments_per_participant
integer
min_appointments_per_participant
integer
participant_visibility
stringDefaults to private
participants_per_appointment
integer
publish
boolean
sub_context_codes
array
title
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_ASSIGNMENT

Creates a new assignment within a specified course in canvas lms.

Action Parameters

allowed_attempts
integer
allowed_extensions
array
assignment_group_id
integer
course_id
integerRequired
description
string
due_at
string
grading_type
string
integration_id
string
name
stringRequired
points_possible
integer
position
integer
published
boolean
submission_types
array
unlock_at
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_ASSIGNMENT_OVERRIDE

Creates an assignment override to adjust due/unlock/lock dates for an assignment in a course, targeting specific students (requires `title`), a group, or a course section; at least one target (`student ids`, `group id`, or `course section id`) is required.

Action Parameters

assignment_id
stringRequired
course_id
stringRequired
course_section_id
integer
due_at
string
group_id
integer
lock_at
string
student_ids
array
title
string
unlock_at
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_CALENDAR_EVENT

Creates a calendar event with options for recurrence (finite `rrule` series only), section-specific timings, and blackout dates within a specified context.

Action Parameters

all_day
boolean
blackout_date
boolean
child_event_data
object
context_code
stringRequired
description
string
duplicate
object
end_at
string
location_address
string
location_name
string
rrule
string
start_at
string
time_zone_edited
string
title
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_COMMUNICATION_CHANNEL

Creates a new communication channel (e.g., email, sms, push) for an existing canvas user to receive notifications.

Action Parameters

address
stringRequired
token
string
type
stringRequired
user_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_CONTENT_SHARE

Shares a canvas content item to specified users, if the sender has necessary permissions and receiver ids are valid.

Action Parameters

content_id
integerRequired
content_type
stringRequired
receiver_ids
arrayRequired
user_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_CONVERSATION

Use to send messages in canvas by creating a new conversation or adding to an existing one; an existing conversation with the same recipients (and matching scope/filter, if specified) may be reused unless `force new` is true.

Action Parameters

attachment_ids
array
body
stringRequired
context_code
string
filter
array
filter_mode
string
force_new
boolean
group_conversation
boolean
media_comment_id
string
media_comment_type
string
mode
string
recipients
arrayRequired
scope
string
subject
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_DISCUSSION_TOPIC

Creates a new discussion topic in a specified canvas course, allowing comprehensive configuration of its content, type, publication settings, engagement features, and associations.

Action Parameters

allow_rating
boolean
course_id
integerRequired
delayed_post_at
string
discussion_type
string
group_category_id
integer
is_announcement
boolean
lock_at
string
message
string
only_graders_can_rate
boolean
pinned
boolean
podcast_enabled
boolean
podcast_has_student_posts
boolean
position_after
string
published
boolean
require_initial_post
boolean
sort_by_rating
boolean
specific_sections
string
title
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_ENROLLMENT

Enrolls a user in a canvas course with a specified role and status; `associated user id` is required if `enrollment type` is 'observerenrollment'.

Action Parameters

associated_user_id
integer
course_id
integerRequired
course_section_id
integer
end_at
string
enrollment_state
stringDefaults to invited
enrollment_type
string
integration_id
string
limit_privileges_to_course_section
boolean
notify
boolean
role_id
integer
self_enrolled
boolean
self_enrollment_code
string
sis_user_id
string
start_at
string
user_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_FOLDER

Creates a new folder in canvas within a specified context (e.g., course, user) and optional parent folder; ensure the context and any parent folder (specified by id or path, not both) already exist.

Action Parameters

context_type
stringRequired
hidden
boolean
id
stringRequired
lock_at
string
locked
boolean
name
stringRequired
parent_folder_id
string
parent_folder_path
string
position
integer
unlock_at
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

SLUG: CANVAS_CREATE_MODULE

Creates a new organizational module within a specified canvas lms course, with options for availability, sequencing, and prerequisites.

Action Parameters

course_id
stringRequired
name
stringRequired
position
integer
prerequisite_module_ids
array
publish_final_grade
boolean
require_sequential_progress
boolean
unlock_at
string

Action Response

data
objectRequired
error
string
successful
booleanRequired