Integrating to Canvas with RIO Connect (Technical)
Table of Contents
Field mapping and RIO Connect component
You can view the detailed field mapping used by the RIO Connect: Canvas for RIO Education here.
(Note: Kindly send us a request if you wish to access our Google documents. For more on our security policy, see here).
To learn more about the integrations schedule and trigger points, including how to customize, check out RIO Connect Triggers & Schedule configuration.
Prerequisites
The following are the prerequisites to enable RIO Connect to connect with Canvas:
- Ensure that the RIO Education is installed successfully in the Salesforce Org. Please contact the RIO Education or consultant team if you require more information/assistance on RIO Education.
- Ensure that the Canvas instance API is enabled with the Canvas LMS API functionality.
- Have the Canvas API Client Id and Client Secret upfront by creating a Developer Key as well as the Canvas’ domain URL. Note that Canvas Integration user login must be a Site Admin, not a teacher or student login, for you to be able to generate the developer key. Please take note of the client Id and client secret generated as it would be used for connecting to the correct Canvas instance when ready.
Callback/Redirect URLs to be included: - Nominate a Salesforce user (ideally with the System Administrator profile) with a RIO Education license (in order to access RIO Education’s component).
- Configure an OAuth enabled Salesforce Connected App(i.e. name it ‘RIO Connect’) with the following attributes:
- Callback URLs:
- OAuth Scopes:
- Full access (full).
- Perform requests on your behalf at any time (refresh_token, offline_access).
- Others can remain as default.
- Take note of the client Id and client secret generated via #6.
Things you can do before further enabling RIO Connect
Here are the installation/configuration steps that you can perform before further enabling RIO Connect:
-
Deploy the additional Salesforce components (this is available for download via the Salesforce Workbench Metadata package available here) required by RIO Connect. You can refer to the steps as outlined in “To perform a Deploy operation”.Delete
Tip
- It is recommended to work with a Salesforce expert or RIO Education consultant if you are not sure of this step.
- Note that if you performed this in a Salesforce production instance for security purposes, it is recommended to revoke the Workbench connection established post successful deployment.
- Assign the “Canvas Integration” permission set to the Salesforce user that will be used to establish the RIO Connect connection. (This is in reference to #5 in the prerequisites section).
- To expose the additional fields/components for other Salesforce user too, repeat step #2 for the specific user/profile.
- Note that the additional fields are not included in any page layout by default.
- You can add the additional fields into the layout based on your liking. Here are some suggestions on how they can look like by creating a separate section called “Canvas Information”.
- Contact page.
-
Term page. (If "Link Course With Term" is enabled. See the "Defining the Canvas Custom Settings" section.)
-
Course Offering page.
-
Course Connection page.
- Term Grade page.
- If Sync Session as Canvas Section is enabled at the Course Offering record level (Or see also "Default Sync Canvas Section" in "Defining the Canvas Custom Settings" section) :
-
Session page.
- Session Connection page.
-
Session page.
- Contact page.
Defining the Canvas Custom settings
Upon successfully deployment of the additional components via the metadata package, a custom setting component called “RC Canvas Custom Settings” is introduced.
Setup the Canvas Custom settings component to enable RIO Connect to retrieve some of the default information required during the integration run. Failing to do so will result in the integration not being able to run correctly.
When creating a new record for the Canvas Custom settings component, default values are pre-populated, for example:
You can leave the majority of the information as default if you are unsure or if the default matches. Here is some of the key information:
-
Canvas Account Id - This represents the account Id in the Canvas instance. The specific Canvas account which the RIO Connect will be connecting or syncing record to.
Not sure how to retrieve this? Send a note on this when all is set from your end.
-
Canvas User Communication Channel Type - The communication channel used when a user is successfully added to the Canvas instance. Details regarding the communication_channel[type] can be found here.
-
User Creation Send Confirmation - When checked, a user notification of the user creation will be sent to the user. Details regarding the pseudonym [send_confirmation] can be found here.
-
Link Course With Term - When checked, RIO Connect will sync RIO Education Term as Canvas Term. In addition, when syncing Course Offering as Canvas Course, the Course will be refencing the associated Term, as opposed to relying on Course Dates.
-
Default Sync Canvas Section - When checked, RIO Connect will sync RIO Education Session as Canvas Section.
DO NOT CHECK this checkbox if syncing Canvas Section is on a case by case basis. Use the "Sync Session as Canvas Section" checkbox at the Course Offering record level instead, if syncing Canvas Section is on a case by case basis.
-
Sync Canvas Final Grade Details - If checked, additional RIO Final Grade type Term Grade record will be created when syncing Final Grade from Canvas via RIO Connect. Default being checked.
Note that if "Sync Canvas Assessment Grade" is checked, this checkbox will no longer applies.
- Sync Canvas Assessment Grade - Check this checkbox if assessment grade is to be synced into RIO from Canvas via RIO Connect.
All set
When all is set, reach out to the RIO Education account manager or the support team to request for further enablement of RIO Connect for your account. We will provide you with a secure form to supply the credentials information captured during the prerequisites stage.