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/loginand 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_idwith the value$Canvas.user.id,canvas_course_idwith$Canvas.course.id, andcanvas_assignment_idwith$Canvas.assignment.id.
Part 2: Install the app
- In Canvas, go to Admin, select your account, then select Settings and the Apps tab.
- Select View App Configurations, then + App.
- Set Configuration Type to By Client ID.
- Paste the client ID from Part 1. Select Submit, then Install.
- Find Hawkeye in the list of apps. Select its gear icon, then Deployment Id.
- Copy the deployment ID.

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.