Notification Preferences
Welcome to Our New API Docs! This is the new home for all things API (previously at Canvas LMS REST API Documentation).
Notification Preferences API
API for managing notification preferences
A NotificationPreference object looks like:
{
"href": "https://canvas.instructure.com/users/1/communication_channels/email/[email protected]/notification_preferences/new_announcement",
// The notification this preference belongs to
"notification": "new_announcement",
// The category of that notification
"category": "announcement",
// How often to send notifications to this communication channel for the given
// notification. Possible values are 'immediately', 'daily', 'weekly', and
// 'never'
"frequency": "daily"
}
NotificationPreferencesController#index
GET /api/v1/users/:user_id/communication_channels/:communication_channel_id/notification_preferences
Scope: url:GET|/api/v1/users/:user_id/communication_channels/:communication_channel_id/notification_preferences
GET /api/v1/users/:user_id/communication_channels/:type/:address/notification_preferences
Scope: url:GET|/api/v1/users/:user_id/communication_channels/:type/:address/notification_preferences
Fetch all preferences for the given communication channel
Returns a list of NotificationPreference objects.
NotificationPreferencesController#category_index
GET /api/v1/users/:user_id/communication_channels/:communication_channel_id/notification_preference_categories
Scope: url:GET|/api/v1/users/:user_id/communication_channels/:communication_channel_id/notification_preference_categories
Fetch all notification preference categories for the given communication channel
NotificationPreferencesController#show
GET /api/v1/users/:user_id/communication_channels/:communication_channel_id/notification_preferences/:notification
Scope: url:GET|/api/v1/users/:user_id/communication_channels/:communication_channel_id/notification_preferences/:notification
GET /api/v1/users/:user_id/communication_channels/:type/:address/notification_preferences/:notification
Scope: url:GET|/api/v1/users/:user_id/communication_channels/:type/:address/notification_preferences/:notification
Fetch the preference for the given notification for the given communication channel
Returns a NotificationPreference object.
NotificationPreferencesController#update
PUT /api/v1/users/self/communication_channels/:communication_channel_id/notification_preferences/:notification
Scope: url:PUT|/api/v1/users/self/communication_channels/:communication_channel_id/notification_preferences/:notification
PUT /api/v1/users/self/communication_channels/:type/:address/notification_preferences/:notification
Scope: url:PUT|/api/v1/users/self/communication_channels/:type/:address/notification_preferences/:notification
Change the preference for a single notification for a single communication channel
Request Parameters:
notification_preferences[frequency]
Required string
The desired frequency for this notification
NotificationPreferencesController#update_preferences_by_category
PUT /api/v1/users/self/communication_channels/:communication_channel_id/notification_preference_categories/:category
Scope: url:PUT|/api/v1/users/self/communication_channels/:communication_channel_id/notification_preference_categories/:category
Change the preferences for multiple notifications based on the category for a single communication channel
Request Parameters:
category
string
The name of the category. Must be parameterized (e.g. The category “Course Content” should be “course_content”)
notification_preferences[frequency]
Required string
The desired frequency for each notification in the category
NotificationPreferencesController#update_all
PUT /api/v1/users/self/communication_channels/:communication_channel_id/notification_preferences
Scope: url:PUT|/api/v1/users/self/communication_channels/:communication_channel_id/notification_preferences
PUT /api/v1/users/self/communication_channels/:type/:address/notification_preferences
Scope: url:PUT|/api/v1/users/self/communication_channels/:type/:address/notification_preferences
Change the preferences for multiple notifications for a single communication channel at once
Request Parameters:
notification_preferences[<X>][frequency]
Required string
The desired frequency for <X> notification
This documentation is generated directly from the Canvas LMS source code, available on Github.
Last updated
Was this helpful?