Coda Packs allow you to seamlessly connect your docs to the external tools and apps your team relies on. With the Canvas LMS Pack, you can sync data from Canvas — courses, modules, assignments, enrollments, submissions, and planner/todo items — into Coda tables. From there, you can organize, visualize, and analyze the data right within your doc.
Unlike most other Coda Packs, this Pack requires some initial setup steps from an Enterprise org admin. Once the setup and configuration are complete, org members can then use the Canvas LMS Pack in their docs. This article explains the steps required to configure this Pack, as well as how users can get started once the configuration is complete.
ℹ️ The Canvas LMS Pack is only available to customers on our Enterprise tier. You must be an Enterprise org admin in order to complete the setup and configuration steps explained in this article.
Within this article, you’ll find…
Configure the Canvas LMS Pack for your org
Before the Canvas LMS Pack can be used successfully by org members, an org admin must complete some initial steps to create a configuration for the Pack. This process has 3 main parts: initiating the configuration in Coda, creating a Developer Key in Canvas, and finalizing the config in Coda.
Part 1: Initiate the configuration in Coda
To kick things off, follow the steps below:
- Navigate to your Coda workspace home at coda.io/docs
- Click on your name in the lower-left, then select Admin settings
- Navigate to - or search for - the Org Pack approvals tab
- Scroll down to the list of Packs, and enter Canvas LMS into the search bar
- Click into the Canvas LMS Pack option (ensure you're selecting the by Coda version), and select + Add new configuration
Next, you’ll need to head over to Canvas to create a Developer Key. Continue to Part 2 to learn more.
Part 2: Create a Developer Key in Canvas
For this next part, you’ll jump over to Canvas. Note that you will need to be a Canvas account admin in order to follow these steps:
- Log in to your Canvas instance (e.g.,
https://yourorg.instructure.com) as an admin - Navigate to Admin → {your account} → Developer Keys
- Click + Developer Key, then select + API Key
- Fill in the following info for the new key:
- Key Name: for instance, “Coda Canvas LMS Pack”
- Owner Email: an admin email address
- Redirect URI: https://coda.io/packsAuth/oauth2/51655
- Enforce Scopes: leave off for read/write access based on the user’s permissions, or enable to manually select specific read & write actions that can be performed by all users. Note that you can make separate “configurations” for different user types by repeating these instructions and creating multiple developer keys (potentially with different scopes).
- Click Save
- On the Developer Keys list, find your new key and toggle its State to ON
- Note the following pieces of info - you’ll need these for Part 3:
- Client ID: the numeric ID shown in the Details column
- Client Secret: revealed by clicking Show Key
Keep this info handy while you head back to Coda to complete the configuration.
Part 3: Finalize configuration in Coda
With the necessary info from Canvas, you can now complete the configuration in Coda:
- With your newly added configuration in Coda ready to edit, add the following code:
{
"connection": {
"endpoint": {
"url": "https://yourorg.instructure.com"
}
}
}- For the URL portion of the code, use your Canvas instance domain - the URL you use to access Canvas in the browser (for example,
https://yourorg.instructure.com). Do not include a trailing slash or any path. - Click Save configuration.
- Then you will need to open the OAuth settings for the newly created configuration. To do so, either click Finish setting up OAuth next to the configuration, or click the three-dot menu to the left of the config, then select OAuth settings.
- On the next screen, fill in the necessary fields with the corresponding info from Canvas:
- Client ID: paste the Client ID from your Developer Key
- Client Secret: paste the Client Secret revealed via Show Key
-
Authorization URL:
https://{your-canvas-domain}/login/oauth2/auth -
Token URL:
https://{your-canvas-domain}/login/oauth2/token
- Click Save
Start using the Canvas LMS Pack in your doc
Once an org admin has created the configuration for the Canvas LMS Pack, workspace members can begin using the Pack in their doc.
To get started, simply type /Canvas on any blank line in your doc. Select the Canvas LMS Pack (by Coda) from the options, and click Add to doc.
You’ll be prompted to sign in to Canvas. The Pack uses OAuth2, so after authenticating, it will act on your behalf using your Canvas permissions.
After connecting, you can add sync tables to pull data from Canvas:
- Courses: the courses available to the authenticated user
- Modules: modules and module items for a given course
- Assignments: assignments for a given course
- Enrollments: enrollments for a given course
- Submissions: submissions for a given assignment
- Much more 🎉
To add a sync table, find it in the Pack settings panel and drag it onto the canvas, or type
/ followed by the table name on any blank line of your doc. You’ll be prompted to provide the necessary parameters (for example, a Course URL or Course ID). To learn more about using sync tables, check out this article.That’s it. You’ve now successfully connected Canvas LMS to Coda.
Related resources
- Configure custom access to Packs
- Overview: Use Packs in Coda
- Canvas LMS Pack | Pack listing page