Notification preferences - GUI versus API
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
As we want to change a specific notification setting of all our 400+ admins (with only read rights) in our sub-account, I have been trying to make sense how the notification preferences in the interface (canvas.instructure.com/profile/communication) relate to the Notification Preferences API parameters. Sources I have used are:
- How do I set my Canvas notification preferences as an instructor?
https://s3.amazonaws.com/tr-learncanvas/docs/CanvasNotifications.pdf
- Notification Preferences - Canvas LMS REST API Documentation
- Canvas Live API (on our own instance)
The documentation is missing a lot of information at the moment. E.g. the NotificationPreference object is described with only 4 items instead of the structure of the whole object. Using the Live API a retrieved the full (I hope) object which were 93 items.
To make sense of how these 93 items are related to the notification preferences in the interface I extracted the following details:
Course activities
Due Date
Assignment due date change
Grading policies
Course grading policy change
Course Content
Change to course content:
Page content
Quiz content
Assignment content
Files
New file added to your course
Announcement
New Announcement in your course
Announcement created by you
Announcement created by you
Replies to announcements you've created
Grading
Includes:
Assignment/submission grade entered/changed
Un-muted assignment grade
Grade weight changed
Option: Include scores when alerting about grades. If your email is not an institution email, this means sensitive content will be sent outside of the institution.
Invitation
Invitation for:
Web conference
Group
Collaboration
Peer review & reminder
All submissions
Instructor and Admin only:
Assignment (except quizzes) submission/resubmission
Late grading
Instructor and admin only:
Late assignment submission
Submission comment
Assignment submission comment
Blueprint Sync
Instructor and Admin only:
Content was synced from a blueprint course to associated courses
Discussions
Discussions notification events and settings
Discussion
New discussion topic in your course
Discussion post
New discussion post in a topic you're subscribed to
Conversations
Conversations notification events and settings
Added to conversation
You are added to a conversation
Conversation message
New Inbox messages
Conversations created by me
You created a conversation
Scheduling
Scheduling notification events and settings
Student appointment signups
Instructor and admin only:
Student appointment sign-up
Appointment signups
New appointment on your calendar
Appointment Cancellations
Appointment cancellation
Appointment availability
New appointment time slots are available for signup
Calendar
New and changed items on your course calendar
Groups
Groups notification events and settings
Membership update
Admin only: pending enrolment activated
Group enrolment
accepted/rejected
Alerts
Alerts notification events and settings
Administrative Notifications
Instructor and Admin only:
Course enrolment
Report generated
Content export
Migration report
New account user
New student group
Conferences
Conferences notification events and settings
Recording ready
A conference recording is ready
The NotificationPreference object, returned by the Live API has the following items (sorted by category):
category | notification |
added_to_conversation | added_to_conversation |
alert | alert |
all_submissions | assignment_submitted |
all_submissions | assignment_resubmitted |
all_submissions | submission_needs_grading |
announcement | new_announcement |
announcement_created_by_you | announcement_created_by_you |
announcement_created_by_you | announcement_reply |
appointment_availability | appointment_group_published |
appointment_availability | appointment_group_updated |
appointment_cancelations | appointment_deleted_for_user |
appointment_cancelations | appointment_group_deleted |
appointment_signups | appointment_reserved_for_user |
blueprint | blueprint_content_added |
blueprint | blueprint_sync_complete |
calendar | new_event_created |
calendar | event_date_changed |
conversation_created | conversation_created |
conversation_message | conversation_message |
course_content | assignment_changed |
course_content | new_wiki_page |
course_content | updated_wiki_page |
discussion | new_discussion_topic |
discussion_entry | new_discussion_entry |
due_date | assignment_due_date_changed |
due_date | assignment_created |
due_date | assignment_due_date_override_changed |
files | new_file_added |
files | new_files_added |
grading | assignment_graded |
grading | submission_graded |
grading | submission_grade_changed |
grading | assignment_unmuted |
grading | quiz_regrade_finished |
grading_policies | grade_weight_changed |
invitation | collaboration_invitation |
invitation | web_conference_invitation |
invitation | rubric_assessment_submission_reminder |
invitation | rubric_assessment_invitation |
invitation | rubric_association_created |
invitation | new_context_group_membership_invitation |
invitation | peer_review_invitation |
late_grading | assignment_submitted_late |
late_grading | group_assignment_submitted_late |
membership_update | new_context_group_membership |
membership_update | group_membership_accepted |
membership_update | group_membership_rejected |
migration | migration_export_ready |
migration | migration_import_finished |
migration | migration_import_failed |
migration | content_export_finished |
migration | content_export_failed |
other | new_account_user |
other | teacher_context_message |
other | enrollment_accepted |
other | new_student_organized_group |
other | new_course |
other | new_user |
other | new_teacher_registration |
other | new_teacher_registration_immediate |
other | report_generated |
other | report_generation_failed |
recording_ready | web_conference_recording_ready |
registration | confirm_email_communication_channel |
registration | confirm_sms_communication_channel |
registration | confirm_registration |
registration | forgot_password |
registration | enrollment_invitation |
registration | enrollment_notification |
registration | enrollment_registration |
registration | merge_email_communication_channel |
registration | account_user_registration |
registration | account_user_notification |
registration | pseudonym_registration |
registration | canvasnet_migration |
registration | course_started |
registration | course_starts_in_week |
registration | course_required_materials |
registration | course_already_started |
registration | self_enrollment_registration |
registration | twd_migration_new |
registration | twd_migration_existing |
registration | twd_migration_new_late |
registration | twd_migration_existing_late |
registration | pseudonym_registration_done |
reminder | assignment_publishing_reminder |
reminder | assignment_grading_reminder |
reminder | assignment_due_date_reminder |
student_appointment_signups | appointment_canceled_by_user |
student_appointment_signups | appointment_reserved_by_user |
submission_comment | submission_comment |
submission_comment | submission_comment_for_teacher |
summaries | summaries |
In Excel I tried to match them, but it appeared to become a matter of guessing.
Question: Is there detailed and complete information available about how the notification preferences from the interface relate to the items in the API NotificationPreference object?
Additionally, the Notification Preferences API documentation describes the list all preferences an uses and the example shows how to get it from another user. But the documentation about updating notification preferences only uses an example of updating own preferences, not of other users.
Question: Is it possible to update a preference (as an admin) of another user (many users in our case) using the API? If not, why not? (Canvas Helpdesk suggested this approach)
This discussion post is outdated and has been archived. Please use the Community question forums and official documentation for the most current and accurate information.