Obtaining Your Canvas API Access Credentials (for the CCC Data Warehouse)

This CCC Data Warehouse user guide provides support and implementation steps for the Canvas data direct access service, exclusively for California Community Colleges.


Introduction

This guide provides colleges with an overview of the implementation process and preparatory steps required for colleges to successfully access their Canvas data in the CCC Data Warehouse.

Canvas Data, once in the Data Warehouse, will be available through a Direct (ODBC/JDBC) Connection to the CCC Data Warehouse. Canvas data will not be available through the CCC Data Warehouse Report Server (Jaspersoft).

 

About the CCC Data Warehouse

CCC Data has been developed by the CCC Technology Center in coordination with, and at the direction of, the CCC Chancellor's Office.  

A part of the Data Services Program initiative from the California Community Colleges Chancellor's Office, CCC Data provides the necessary infrastructure to the California Community College System to aggregate data across disparate systems to an enterprise data warehouse (CCC Data Warehouse).

Access to data in the CCC Data Warehouse is provided to institutional researchers, college and district administrators, and other decision makers at the California Community Colleges, district offices, and the Chancellor’s Office, where these critical data may be used to support instructional and institutional decision-making aligned with the Chancellor's Vision for Success.

 

Inclusion of Canvas Data in the CCC Data Warehouse

The CCC Data Warehouse can optionally support the inclusion of Canvas data. When a college (or district) elects to have their Canvas data added to the CCC Data Warehouse, these data can then be accessed through a direct connection (secured through the use of a site-to-site VPN). As Canvas data is managed at a district level, each college in a multi-college district may need to opt-in for their data to be supported in the DW. Colleges may request to implement this service by contacting their College Relationship Manager (CRM) through CCCTC Enabling Services.

Reminder: If your college has not yet implemented the DW Direct Connect service, Enabling Services will get that process started as part of the Canvas direct access service.  


College Participation

California Community Colleges that have adopted Canvas may request to implement the inclusion of their Canvas data in the CCC Data Warehouse through Enabling Services at the CCC Technology Center.

Support for Canvas data will require an authorized college Canvas Administrator to generate the Canvas Data API credentials for your account and securely pass them to the Enabling Services Implementation Engineer working with your college.

 

To get started, colleges must meet the following prerequisites and complete the instructions below.

Prerequisites

  • College has adopted Canvas through the CCC Technology Center (Live).

  • College has implemented, or is implementing, DW Direct (ODBVC/JDBC) Connect (Live).

  • College has a Canvas Admin user that can generate and provide the required Canvas Data API Key and other required account-related information.

Strongly Recommended: For security reasons, the CCCTC recommends that a new Admin user account be created specifically for this project to prevent the API key from affecting other active Admin accounts. In the event this API key needs to be changed or disabled, other API keys would then not be affected. See Creating a New Canvas Admin User instructions below.


Getting Started

  • College must request to participate in having their Canvas data in the CCC Data Warehouse.

  • College will participate in the Enabling Services Implementation process, through successful setup and confirmed data access.

IMPORTANT: Participation requires the college to have a “live” direct access connection to the CCC Data Warehouse. Contact Enabling Services to get started with DW Direct Connect.

 


Implementation Process Overview

  1. College requests to participate through their College Relationship Manager.

  2. College generates and submits the required Canvas Data API key values to CCCTC Enabling Services

  3. College works with the Enabling Services implementation team to confirm successful access to their Canvas Data using their established direct access connection.

The Canvas DW direct access implementation has two configuration steps: first, your college Canvas data is added to the CCC Data Warehouse using the Canvas Data API and your college’s unique credentials; and second, access to the data is configured through DW direct access connection.

 

Step 1: Email a Request to Participate

As the Canvas Data API key is generated at the root account level, implementation will require each college in a multi-college district to consent to have their Canvas data made available in the CCC Data Warehouse.

  1. To participate, send an email to Enabling Services with the following subject line: Request for their Canvas data be added to the CCC Data Warehouse.

  2. The College Relationship Manager (CRM) will process your request and pass your interest to the Enabling Services Implementation team who will work with your college to facilitate the Canvas to Data Warehouse setup process.

 

Data Security: For security reasons, access to the CCC Data Warehouse must be requested and managed by the Institutional Research, Planning, and Effectiveness (IRPE) lead at each college and district (as authorized by the department VP, when the IRPE lead is not the VP). IRPE requests should be submitted to your CRM at Enabling Services at the CCC Technology Center.

Next Step: Upon receipt of your request, an Implementation Project Manager from Enabling Services will support your Canvas Admin to generate and submit your Canvas API information.

 

Step 2: Generate Your Canvas API Credentials

In order to access your Canvas data in the CCC Data Warehouse, the Canvas Data API will be used to add your college’s Canvas data to the DW pipeline. This process requires your unique Canvas Data API credentials (API key and secret) in the format that works with the structure of your Canvas account.

To generate your college’s Canvas Data API credentials, follow the steps below. Once the credentials are generated, a copy of the credentials should be captured for security purposes, and safely passed to the CCC Technology Center in a secure manner.

 

Strongly Recommended: For security reasons, the CCCTC recommends that a new Admin user account be created specifically for this project to prevent the API key from affecting other active Admin accounts. In the event this API key needs to be changed or disabled, other API keys would then not be affected. See Creating a New Canvas Admin User instructions below.

 

College Canvas Administrator

From the Admin section of your Canvas application:

  1. Open Your Account: Click the Admin link in your Canvas application, then click on the name of your account or sub-account.

  2. Open Canvas Data Portal: In Account Navigation, click the Canvas Data Portal link.

  3. Create API Credentials: Click the Create Credentials button. A success notification with your API credentials will display.

Success notification displaying the Admin user's Canvas API credentials.

4. Copy API Credentials: Once API credentials are created, copy the API Key and API Secret and prepare to pass to the Implementation Engineer at the CCC Technology Center.

Note: If you return to the Credentials Portal, you will be able to see the API Key but not the API Secret.

Read more creating your Canvas API credentials: How do I obtain an API access token in the Canvas Data Portal?

 

Step 3: Configure the Format of Your Canvas API Credentials & Send Them to CCC Technology Center

  1. To facilitate the process of adding your Canvas data into the Data Warehouse, provide your API Key and Secret values to your ES Implementation Engineer in the format shown below. These values should be passed using a secure method such as Privnote.

    1. Canvas Data API Key: [canvas-datawarehouse-<misCode>-apikey]
      (Replace <misCode> with your college MIS code, and replace “apikey” with your Canvas API key value generated for your specific Instructure account.)

    2. Canvas Data API Secret: [canvas-datawarehouse-<misCode>-apisecret]
      (Replace <misCode> with your college MIS code, and replace “apisecret” with your Canvas API secret value generated for your specific Instructure account.)

  2. Upon receipt of your API values, your ES Implementation Engineer will facilitate the process of adding your Canvas data into the CCC Data Warehouse with the CCCTC DevOps team.

With your API values in place, the DW data pipeline is configured to securely pass your Canvas data to the CCC Data Warehouse. After that, your Canvas data will be updated nightly.

 

Creating New API Credentials: You can create new credentials by clicking the Create Credentials button again.

Important: Generating new API credentials will invalidate the old credentials for all users who have access to them. This includes third-party partner accounts, such as the CCC Data Warehouse.

 

Creating a New Canvas Admin User

When you assign a user as an admin in the root account, that user has all privileges in any sub-account. You might consider assigning users as admins only in the sub-account for which they are responsible.

To create a new Canvas Admin user, follow the directions below:

  1. To add a user as an admin, you must assign the user to an account role. Before adding a user, ensure that you have created the necessary account-level role.

  2. Open the Account: In Global Navigation, click the Admin link, then click the name of the account you want to add a user to.

  3. In Account Settings, click the Settings link.  

  4. In Settings, click the Admins tab. The Add Admins Account button will display.

  5. Click the Add Account Admins button.

  6. Add an Account Role and Email.

    1. In the Add More drop-down menu, set the admin role type. The default admin role in Canvas is Account Admin which has access to all account-level permissions. You can also create admin roles for your institution and manage their permissions.  

    2. In the text box, type the email address of the new user.

    3. Click the Continue... button.

    4. Add Account Admins.

      1. Verify the user you added is listed in the admin field.

      2. Select the OK Looks Good, Add this [#] User button to add the admin.

      3. Click the Go back and edit the list of users link to adjust any errors. A message will appear in your browser.

  7. Verify the new user administrative user was added.

Recommended: The CCCTC recommends that the new Admin user and email address reference “ccctc-dw” to clearly identify the Admin user associated with this API project.

See the illustrated How do I add an admin to an account? instructions on the Canvas website.

Once you add a new Admin user to an existing profile in Canvas, the email address associated with that user account will receive an email notification that the new user is now an admin for the account. If the new user account does not already have a profile, an email with a link to create a profile and access the account will be sent.


Implementation FAQs: See the FAQ: Direct Access to Canvas Data in the CCC Data Warehouse section below.


Reminder: If your college has not yet implemented DW Direct Connect access, your Enabling Services Implementation team will work with you to implement your direct access connection to the CCC Data Warehouse, so that you can then configure access to your Canvas data. 

 

Step 4: Work with the ES Implementation Team to Test Access & Query Canvas Data Sets

  1. After your Canvas data has been added to the CCC Data Warehouse, the ES Implementation Engineer will guide you to connect to the CCC Data Warehouse through your established DW Direct Connect (ODBC/JDBC) and access your Canvas Data either through your local BI application (typically Tableau or Power BI) or an SQL query.

  2. Once connected, test connection to your Canvas data using your local BI data application, and attempt to run at least one query against the Canvas Data set.


FAQ: Direct Access to Canvas Data in the CCC Data Warehouse

 

Q. What is the Canvas Data API?

A. The Canvas Data API allows you to get information about or download Canvas Data files.

 

Q. Who is authorized to access your Canvas Data API credentials?

A. The identified Canvas Data Admin user can generate API credentials for your Canvas account. However, once generated, the credentials are shared between all admin users for that account. If you would like to grant access to other users or third-party partners to download files via the API, you can generate credentials and securely pass them to those users.


Q. Can access to our API credentials be revoked from specific users?

A. Yes, however to revoke access for a user, the Canvas Admin user will need to regenerate the credentials and securely distribute the credentials again.  

 

The Way Canvas API Credentials Work
Any Canvas Data admin can generate API credentials, but the credentials are shared between all admin users in that [college] account. If you would like to grant access to other users or third-party partners to download files via the API, you can generate credentials and securely pass them to those users. However, if you need to revoke access for a user, you will need to regenerate the credentials and securely distribute the credentials again.  Read more about the Canvas Data API

 

Q. How do I obtain an [Canvas] API access token in the Canvas Data Portal?

A. Colleges can review this page for instructions and other information related to their custom API access token.

 

From the Admin link in the Canvas Data Portal navigation bar:

  1. Open Account: Click the Admin link, then click on the name of the Canvas account or sub-account.

  2. Open Canvas Data Portal: In Account Navigation, click the Canvas Data Portal link.

  3. Create API Credentials: Click the Create Credentials button.

  4. Copy API Credentials: Copy the API Key and API Secret. If you return to the Credentials Portal, you will be able to see the API Key but not the API Secret.

  5. Create New API Credentials: You can create new credentials by clicking the Create Credentials button.

Important: Generating new API credentials will invalidate the old credentials for all users who have access to them. This includes third-party partner accounts, such as the CCC Data Warehouse.

 

Q. What Canvas data elements will be available in the CCC Data Warehouse following our college opt-in implementation?

A. The following documentation describes the data dictionary for the Canvas Data warehouse: https://portal.inshosteddata.com/docs