Skip to content
Hawkeye Help
Esc
↑↓navigate↵open⌘Jpreview
On this page

Install Hawkeye in Canvas (administrators)

Create the two Canvas Developer Keys that Hawkeye needs, install the app and send the IDs to the person who runs Hawkeye.

This page is for Canvas administrators. Hawkeye connects to Canvas with LTI 1.3. You create two Developer Keys:

  • An LTI key, so instructors and students can open Hawkeye from Canvas.
  • An API key, so Hawkeye can set the access code on a Classic Quiz when an instructor selects Connect Canvas.

Hawkeye keeps its settings in environment variables. The person who runs Hawkeye (the Hawkeye operator) sets them. You send that person the values from Canvas. In the steps below, https://hawkeye.example.com is the Hawkeye address. Use your real Hawkeye address.

Part 1: Create the LTI key

Get the configuration

Open https://hawkeye.example.com/lti/config.json in your browser. Copy all of the text. If the page is not found, ask the Hawkeye operator to set up the tool key first.

Open Developer Keys

In Canvas, go to Admin, select your account, then select Developer Keys.

Add an LTI key

Select + Developer Key, then + LTI Key.

Paste the configuration

Set the method to Paste JSON. Paste the text from step 1. Give the key a name, for example “Hawkeye”.

Save and turn it on

Select Save. In the Developer Keys list, set the key’s state to On.

Copy the client ID

Copy the number in the Details column. This number is the client ID.

The configuration already contains everything Canvas needs. Do not change it:

  • The login URL /lti/login and the launch URL /lti/launch.
  • Hawkeye’s public key (a public JWK). Hawkeye also publishes this key at /lti/jwks.json.
  • Three placements: Assignment Selection, Link Selection and Course Navigation. The course menu link is called Hawkeye. Only instructors and administrators see it.
  • One scope: Names and Roles. Hawkeye uses it only to read the class list: when an instructor selects Email the Class Now, and when the instructor later opens the exam’s Canvas section, to see whether new students joined the course.
  • Three custom fields: canvas_user_id with the value $Canvas.user.id, canvas_course_id with $Canvas.course.id, and canvas_assignment_id with $Canvas.assignment.id.

Part 2: Install the app

  1. In Canvas, go to Admin, select your account, then select Settings and the Apps tab.
  2. Select View App Configurations, then + App.
  3. Set Configuration Type to By Client ID.
  4. Paste the client ID from Part 1. Select Submit, then Install.
  5. Find Hawkeye in the list of apps. Select its gear icon, then Deployment Id.
  6. Copy the deployment ID.

A Canvas course with Hawkeye in the course menu after the install

Part 3: Create the API key

Add an API key

In Developer Keys, select + Developer Key, then + API Key.

Set the redirect URI

In Redirect URIs, type https://hawkeye.example.com/canvas/oauth/callback.

Limit the scopes

Turn on Enforce Scopes. Select only these three scopes: url:GET|/api/v1/courses/:course_id/quizzes/:id, url:PUT|/api/v1/courses/:course_id/quizzes/:id and url:GET|/api/v1/courses/:course_id/quizzes/:quiz_id/submissions.

Save and turn it on

Select Save. Set the key’s state to On.

Copy the ID and the key

Copy the client ID from the Details column. Select Show Key and copy the secret.

Hawkeye uses these scopes to read the quiz, set its access code and check the quiz submissions. It asks for nothing else.

Part 4: Send the values to the Hawkeye operator

Send these values to the person who runs Hawkeye:

Value From
LTI client ID Part 1, step 6
Deployment ID Part 2, step 6
Your Canvas address, for example https://canvas.example.com Your browser
API client ID Part 3, step 5
API secret Part 3, step 5

When the operator confirms the setup, instructors can start. Send them Use Hawkeye with Canvas.