Installing Delphinium

Delphinium is an LTI plugin for Canvas that is installed at the account level. You can learn more in the following links:

Note: While it is possible to start the Delphinium installation in a course, it will not install properly. You will need to install Delphinium in the Canvas Admin area using the instructions below. After you install Delphinium through the Canvas admin, it will be installed (but disabled) in EVERY course and you will not need to install it again on your account or in your courses.

Important Ideas to Consider Before Installing Delphinium

Compliance with Industry Standards

It is good practice to ensure that a 3rd party tool meets your organization's requirements before granting Canvas developer credentials. We go to great lengths to ensure Delphinium is secure and accessible, and we are ready to answer any question you have. To streamline your research, please refer to the following security and accessibility documents that describe Delphinium’s compliance with industry standards.

  • Enforced token scopes (Click up/down chevron to the right for details)

To improve security, Canvas limits Delphinium's access to your Canvas account's API to the following endpoints.

      • Accounts

        • url:GET|/api/v1/accounts

        • url:GET|/api/v1/accounts/:id

      • Analytics

        • url:GET|/api/v1/courses/:course_id/analytics/assignments

        • url:GET|/api/v1/courses/:course_id/analytics/student_summaries

        • url:GET|/api/v1/courses/:course_id/analytics/users/:student_id/activity

        • url:GET|/api/v1/courses/:course_id/analytics/users/:student_id/assignments

      • API Token Scopes

        • url:GET|/api/v1/accounts/:account_id/scopes

      • Assignment Groups

        • url:GET|/api/v1/courses/:course_id/assignment_groups

        • url:GET|/api/v1/courses/:course_id/assignment_groups/:assignment_group_id

        • url:POST|/api/v1/courses/:course_id/assignment_groups

        • url:DELETE|/api/v1/courses/:course_id/assignment_groups/:assignment_group_id

      • Assignments

        • url:GET|/api/v1/courses/:course_id/assignments/:assignment_id/overrides

        • url:GET|/api/v1/courses/:course_id/assignments

        • url:GET|/api/v1/courses/:course_id/assignment_groups/:assignment_group_id/assignments

        • url:GET|/api/v1/users/:user_id/courses/:course_id/assignments

        • url:GET|/api/v1/courses/:course_id/assignments/:id

        • url:POST|/api/v1/courses/:course_id/assignments

        • url:PUT|/api/v1/courses/:course_id/assignments/:id

        • url:DELETE|/api/v1/courses/:course_id/assignments/:id

      • Content Migrations

        • url:GET|/api/v1/courses/:course_id/content_migrations

      • Conversations

        • url:POST|/api/v1/conversations

      • Courses

        • url:GET|/api/v1/courses

        • url:GET|/api/v1/courses/:id

        • url:GET|/api/v1/courses/:course_id/students

        • url:GET|/api/v1/courses/:course_id/settings

        • url:GET|/api/v1/courses/:course_id/users

        • url:GET|/api/v1/courses/:course_id/permissions

      • Discussion Topics

        • url:GET|/api/v1/courses/:course_id/discussion_topics

        • url:GET|/api/v1/courses/:course_id/discussion_topics/:topic_id

        • url:POST|/api/v1/courses/:course_id/discussion_topics

        • url:PUT|/api/v1/courses/:course_id/discussion_topics/:topic_id

        • url:DELETE|/api/v1/courses/:course_id/discussion_topics/:topic_id

      • Enrollment Terms

        • url:GET|/api/v1/accounts/:account_id/terms

      • Enrollments

        • url:GET|/api/v1/courses/:course_id/enrollments

        • url:GET|/api/v1/users/:user_id/enrollments

      • External Tools

        • url:GET|/api/v1/courses/:course_id/external_tools/sessionless_launch

        • url:GET|/api/v1/courses/:course_id/external_tools

      • Files

        • url:GET|/api/v1/courses/:course_id/files

      • Grading Periods

        • url:GET|/api/v1/courses/:course_id/grading_periods

        • url:GET|/api/v1/courses/:course_id/grading_periods/:id

      • Grading Standards

        • url:GET|/api/v1/courses/:course_id/grading_standards

        • url:GET|/api/v1/courses/:course_id/grading_standards/:grading_standard_id

      • JWTs

        • url:POST|/api/v1/jwts

        • url:POST|/api/v1/jwts/refresh

      • Modules

        • url:GET|/api/v1/courses/:course_id/modules

        • url:GET|/api/v1/courses/:course_id/modules/:id

        • url:POST|/api/v1/courses/:course_id/modules

        • url:PUT|/api/v1/courses/:course_id/modules/:id

        • url:DELETE|/api/v1/courses/:course_id/modules/:id

        • url:GET|/api/v1/courses/:course_id/modules/:module_id/items

        • url:GET|/api/v1/courses/:course_id/modules/:module_id/items/:id

        • url:PUT|/api/v1/courses/:course_id/modules/:module_id/items/:id

        • url:DELETE|/api/v1/courses/:course_id/modules/:module_id/items/:id

      • Outcome Results

        • url:GET|/api/v1/courses/:course_id/outcome_results

      • Pages

        • url:GET|/api/v1/courses/:course_id/pages

        • url:POST|/api/v1/courses/:course_id/pages

      • Quiz Questions

        • url:GET|/api/v1/courses/:course_id/quizzes/:quiz_id/questions

      • Quiz Submission Questions

        • url:GET|/api/v1/quiz_submissions/:quiz_submission_id/questions

        • url:POST|/api/v1/quiz_submissions/:quiz_submission_id/questions

      • Quiz Submissions

        • url:GET|/api/v1/courses/:course_id/quizzes/:quiz_id/submission

      • Quizzes

        • url:GET|/api/v1/courses/:course_id/quizzes

        • url:POST|/api/v1/courses/:course_id/quizzes

        • url:GET|/api/v1/courses/:course_id/quizzes/:id

      • Roles

        • url:GET|/api/v1/accounts/:account_id/roles

      • Sections

        • url:GET|/api/v1/courses/:course_id/sections

        • url:GET|/api/v1/sections/:id

      • Submissions

        • url:GET|/api/v1/courses/:course_id/assignments/:assignment_id/submissions

        • url:GET|/api/v1/courses/:course_id/students/submissions

        • url:GET|/api/v1/courses/:course_id/assignments/:assignment_id/submissions/:user_id

        • url:POST|/api/v1/courses/:course_id/assignments/:assignment_id/submissions

        • url:PUT|/api/v1/courses/:course_id/assignments/:assignment_id/submissions/:user_id

      • Tabs

        • url:PUT|/api/v1/courses/:course_id/tabs/:tab_id

      • User Observers

        • url:GET|/api/v1/users/:user_id/observers

        • url:GET|/api/v1/users/:user_id/observees

      • Users

        • url:GET|/api/v1/users/:id

        • url:GET|/api/v1/users/:user_id/profile

How Does Delphinium Protect Our Institutional Data?

We care a LOT about security and we have designed Delphinium from the ground up to be secure. For example, all communication between our server and Canvas is encrypted. Sensitive data is encrypted in our database and we intentionally limit the data we request and store to limit exposure to data breaches.

Our servers is housed by Amazon, the same as Canvas, so it is physically secure. Remote access to the server is restricted to a single encrypted channel that a very limited number of Delphi M.E. employees have access to. At your request, we will destroy your data at any time. Finally, we carry a two-million-dollar cyber insurance policy in the unlikely case there is a data breach.

Canvas' connections to 3rd party tools are also built with security in mind. Canvas limits Delphinium’s access to only those classes where a teacher manually grants permission. Access expires every hour and must be renewed using OAuth protection. Any teacher and any student can manually revoke granted access at any time in Canvas.

We routinely install security updates to the underlying technology used in our software.

Is Delphinium Accessible?

It is very important to us that everyone be able to enjoy Delphinium and we work hard to ensure that it is WCAG 2.0 level AA and Section 508 compliant. For example, our colors have been carefully chosen to provide high contrast, and our navigation has been optimized for keyboards. In addition, complex data, like verbal descriptions of avatars and data dense visual displays, are carefully configured to work well with screen readers.


Installing Delphinium

Step 1: Enable the Delphinium Inherited Developer Keys

Note: Click here for instructions from Canvas

  1. In your root Canvas account, click Developer Keys in the left hand menu

    • The "Developer Keys" page will appear

  2. At the top of the page, click the Inherited tab

    • The list of "Inherited Developer Keys" will appear

  3. Find and enable the "Delphinium API" and "Delphinium" developer keys

    • Click On for each developer key in the "State" column

Step 2: Install the Delphinium App

Note: Click here for instructions from Canvas

  1. In your root Canvas account (or sub account if your Delphinium license does not include the root and all sub accounts), click Settings in the left hand menu

    • The "Settings" page will appear

  2. Click Apps in the tabs across the top of the page

    • The "External Apps" page will appear

  3. In the top right, click View App Configuration

    • A "list of apps" will appear


4. Click + App

  • The "Add App" popup will appear

5. Configure the following settings

  • Configuration Type: By Client ID

  • Client ID: 170000000000719

6. Click Submit

  • You will be asked to confirm, click Install

  • "Δ Delphinium" will appear in the "External Apps" list

7. Refresh the page

  • "Δ Delphinium" will appear in the left hand menu

Step 3: Complete the Delphinium installation

In this final step, you will submit information required to complete the installation process.

  1. In your root Canvas account, click the Δ Delphinium link that you created in step 2 above in the left-hand menu

    • The "Welcome to Delphinium!" page will appear

2. Fill out the "Register to Begin Your Demo" form

  • Include "First Name", "Last Name: ", "Phone Number", "Email Address", and "Job Title", preferably of an administrator or someone who can represent your organization

  • Include "Organization Name", "Canvas Admin Name", "Canvas Admin Email", "Canvas Admin Phone Number", "Organization Size", "Organization Website" (including 'http://')

  • Optionally, include a short "Note" about your goals for Delphinium or any questions you would like to ask us.

  • Click Submit

    • After a few moments, the "Thank you for your demo request!" page will appear

Note: At this point, Delphi M.E. will be notified that you registered for a Delphinium demo. If you are not already working with Delphi M.E. employees to set up the demo, one will contact you and discuss any other steps required to activate your demo.

3. Wait for a Delphi M.E. employee to notify you that your demo has been approved.

Note: Delphinium is now installed, but disabled, in every course in your Canvas account. Use this tutorial to learn how to enable Delphinium in a course.