Getting Started
Please note that webhooks will need to be set up via https://go.proctoru.com before being able to use them. Make sure to read the Terms & Conditions as well.
If you have any questions, please get in touch with our Engineering Team.
The Webhook system allows notification when certain events occur in the system.
- Every webhook notification contains an event data structure.
- Some webhook notifications always contain additional data.
- Additional information about the fulfillment or reservation can
be selected for some webhook notifications.
- cancellation
- exam
- reservation
- test_taker
- verification
Webhook data can be provided as:
- JSON data
- CSV Data
- Form Post
JSON Data
The JSON data is posted to the supplied endpoint with content_type = “application/json”
CSV Data
information as a CSV file is posted to the supplied endpoint with content_type = “text/csv”
Form Post
information as a CSV file is posted to the supplied endpoint with content_type = “application/x-www-form-urlencoded”
Authentication
Payload authentication
If an optional authentication secret is supplied with an webhook endpoint,
an X-ProctorU-Signature
header is supplied for validation.
This header is of the format:
X-ProctorU-Signature: sha1=f7000d3a2fd51f8f53d91e0085fae1423dfbab8e
Where the above hash is calculated by (OSX and Linux)
echo -n 'request body' | openssl dgst -sha1 -hmac "authentication secret"
The sha1=
prefix is always supplied.
This header can be used to detect malicious payloads sent to your endpoint.
Note: HTTP header names are case-insensitive, so the above header may
be presented to your application as x-proctoru-signature
, X-Proctoru-Signature
or some other capitalization.
Javascript
const CryptoJS = require("crypto-js");
const signature = req.headers['x-proctoru-signature'].split('=')[1];
const computed_signature = CryptoJS.HmacSHA1(JSON.parse(body), authentication_secret);
// expect signature == computed_signature
PHP
<?php
$signature = explode('=',$_SERVER['HTTP_X_PROCTORU_SIGNATURE'])[1];
$computed_signature = hash_hmac('sha1', body, authentication_secret);
# expect $signature == $computed_signature
Ruby
signature_key = request.headers.keys.grep(/x-proctoru-signature/i).first
signature = request.headers[signature_key].split('=').last
computed_signature = OpenSSL::HMAC.hexdigest(OpenSSL::Digest.new('sha1'),
authentication_secret, body)
# expect signature == computed_signature
Examples
CSV with Event and TestTaker (with headers)
data_type, name, description, type,created_at,comment, links_show
"event", "String", "String", "fulfillment-created", "2017-05-25T17:27:46Z", "String", "URL"
data_type, first_name, last_name, email, username, student_id, links_show
"test_taker", "String", "String", "String", "String", "String", "URL"
CSV with Event and TestTaker (without headers)
"event", "String", "String", "fulfillment-created", "2017-05-25T17:27:46Z", "String", "URL"
"test_taker", "String", "String", "String", "String", "string", "URL"
JSON with Event and TestTaker
{
"content_type": "application/x-www-form-urlencoded",
"event": {
"name": String,
"description": String,
"type": "fulfillment-created",
"created_at": "2017-05-25T17:27:46Z",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
Fulfillment Disconnected
Event Name: event-hard-disconnection
The Fulfillment Disconnected webhook is generated when the test-taker disconnects from their session for longer than 10 seconds or closes their recording tab.
{
"event": {
"name": String,
"description": String,
"type": "event-hard-disconnection",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-hard-disconnection, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-hard-disconnection&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Fulfillment Staled
Event Name: event-fulfillment-staled
The Fulfillment Staled webhook is generated when the test-taker does not pay for a session twenty-four hours after the session has been scheduled.
{
"event": {
"name": String,
"description": String,
"type": "event-fulfillment-staled",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-fulfillment-staled, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-fulfillment-staled&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Hard Disconnection
Event Name: event-hard-disconnection
The Hard Disconnection webhook is generated when the test-taker disconnects from their session for longer than 10 seconds or closes their recording tab.
{
"event": {
"name": String,
"description": String,
"type": "event-hard-disconnection",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-hard-disconnection, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-hard-disconnection&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Image
Event Name: event-image
The Image webhook is generated when the test-taker takes their picture during the identity verification pre-check.
{
"event": {
"name": String,
"description": String,
"type": "event-image",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-image, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-image&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Launch Exam Clicked
Event Name: event-launch-exam-clicked
The Launch Exam Clicked webhook is generated when the test-taker clicks the Launch Exam button.
{
"event": {
"name": String,
"description": String,
"type": "event-launch-exam-clicked",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-launch-exam-clicked, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-launch-exam-clicked&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Picked Up
Event Name: event-picked-up
The Picked Up webhook is generated when the test-taker has been picked up and connected to a proctor.
{
"event": {
"name": String,
"description": String,
"type": "event-picked-up",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-picked-up, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-picked-up&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Reservation Created
Event Name: event-reservation-created
The Reservation Created webhook is generated when a reservation is created for the test-taker. A reservation is not the appointment for the test-taker. It is the object that holds the appointments, called fulfillments, for the test-taker.
{
"event": {
"name": String,
"description": String,
"type": "event-reservation-created",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-reservation-created, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-reservation-created&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Room Scan
Event Name: event-room-scan
The Room Scan webhook is generated when the test-taker has performed their room scan for the proctor.
{
"event": {
"name": String,
"description": String,
"type": "event-room-scan",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-room-scan, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-room-scan&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Soft Disconnection Duration
Event Name: event-soft-disconnection-duration
The Soft Disconnection Duration webhook is generated everytime a user disconnects from their ProctorU session no matter the duration of time disconnected. Be warned this webhook can become very noisy if a test-taker’s connection causes multiple short session drops.
{
"event": {
"name": String,
"description": String,
"type": "event-soft-disconnection-duration",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-soft-disconnection-duration, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-soft-disconnection-duration&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
System Metrics Log
Event Name: event-system-metrics-log
The System Metrics Log webhook is generated when the test-taker’s system metrics are logged upon their connection, or reconnection, to the session.
{
"event": {
"name": String,
"description": String,
"type": "event-system-metrics-log",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-system-metrics-log, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-system-metrics-log&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Test-Taker Connected
Event Name: event-test-taker-connected
The Test-Taker Connected webhook is generated once the test-taker’s recorded session begins. A session begins after the test-taker agrees to ProctorU’s recorded session notice.
{
"event": {
"name": String,
"description": String,
"type": "event-test-taker-connected",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-test-taker-connected, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-test-taker-connected&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Admin Reservation Note
Event Name: event-admin-reservation-note
The Admin Reservation Note webhook is generated when a ProctorU Operations Manager leaves a note for the proctor specifically concerning the session or test-taker. An example is that an instructor allowed for the test-taker to have a specific accomodation like additional time.
{
"event": {
"name": String,
"description": String,
"type": "event-admin-reservation-note",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-admin-reservation-note, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-admin-reservation-note&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Browser Resized
Event Name: event-browser-resized
The Browser Resized webhook is generated when the test-taker’s browser is resized.
{
"event": {
"name": String,
"description": String,
"type": "event-browser-resized",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-browser-resized, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-browser-resized&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Browser Tabs Changed
Event Name: event-browser-tab
The Browser Tabs Changed webhook is generated when the tabs for the test-taker’s browser change.
{
"event": {
"name": String,
"description": String,
"type": "event-browser-tab",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-browser-tab, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-browser-tab&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Comment
Comment
Event Name: event-comment
The Comment webhook is generated when a proctor documents an event on the session.
{
"event": {
"name": String,
"description": String,
"type": "event-comment",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-comment, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-comment&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Copy Paste
Event Name: event-copy-paste
The Copy Paste webhook is generated when copy and/or paste by the test-taker is detected during the live stream.
{
"event": {
"name": String,
"description": String,
"type": "event-copy-paste",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-copy-paste, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-copy-paste&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Downloaded At
Downloaded At
Event Name: event-downloaded-at
The Downloaded At webhook is generated when the test-taker is attempting to connect to the proctor. The test-taker then clicks a link to download and run the LMI applet. We use this time to help calculate test-taker wait time.
{
"event": {
"name": String,
"description": String,
"type": "event-downloaded-at",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-downloaded-at, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-downloaded-at&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Escalated
Escalated
Event Name: event-escalated
The Escalated webhook is generated when the a proctor encounters an issue during the exam and the issue is something that will need outside assistance. For example, the assessment delivery system crashed mid-way and the assessment could not be started. The proctor would then escalate the session until the issue can be resolved and the test-taker may resume the assessment.
{
"event": {
"name": String,
"description": String,
"type": "event-escalated",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-escalated, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-escalated&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Escalation Case Opened
Escalation Case Opened
Event Name: event-escalation-case-opened
The Escalation Case Opened webhook is generated once an advocate starts to work on the escalated appointment.
{
"event": {
"name": String,
"description": String,
"type": "event-escalation-case-opened",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-escalation-case-opened, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-escalation-case-opened&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Escalation Needed Attention
Escalation Needed Attention
Event Name: event-escalation-needed-attention
The Escalation Needed Attention webhook is generated when an advocate reaches the end of their day and the case has not been closed. This flag lets other advocates know the case still needs work.
{
"event": {
"name": String,
"description": String,
"type": "event-escalation-needed-attention",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-escalation-needed-attention, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-escalation-needed-attention&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Escalation Rescheduled
Escalation Rescheduled
Event Name: event-escalation-rescheduled
The Escalation Rescheduled webhook is generated when an advocate reschedules an escalated appointment. The appointment is still considered escalated, and the advocate team will still watch the progress to ensure the test-taker completes the assessment without incident.
{
"event": {
"name": String,
"description": String,
"type": "event-escalation-rescheduled",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-escalation-rescheduled, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-escalation-rescheduled&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Escalation Resolved
Escalation Resolved
Event Name: event-escalation-resolved
The Escalation Resolved webhook is generated when the advocate determines the test-taker has been taken care of and no longer needs advocate assistance.
{
"event": {
"name": String,
"description": String,
"type": "event-escalation-resolved",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-escalation-resolved, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-escalation-resolved&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Flight Path
Flight Path
Event Name: event-flight-path
The Flight Path webhook is generated when a proctor completes assessment steps in the proctoring process (ie. The proctor reads specific instructions to the test-taker)
{
"event": {
"name": String,
"description": String,
"type": "event-flight-path",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-flight-path, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-flight-path&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Fulfillment Created
Fulfillment Created Webhook
Event Name: event-fulfillment-created
The Fulfillment Created webhook is generated when the test-taker creates their reservation.
{
"event": {
"name": String,
"description": String,
"type": "event-fulfillment-created",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-fulfillment-created, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-fulfillment-created&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Fulfillment Ended
Fulfillment Ended
Event Name: event-fulfillment-ended
The Fulfillment Ended webhook is generated when the proctor states the reservation has been completed.
{
"event": {
"name": String,
"description": String,
"type": "event-fulfillment-ended",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-fulfillment-ended, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-fulfillment-ended&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Fulfillment Rescheduled
Fulfillment Rescheduled
Event Name: event-fulfillment-rescheduled
The Fulfillment Rescheduled webhook is generated when the reservation is rescheduled for a different date and time.
{
"event": {
"name": String,
"description": String,
"type": "event-fulfillment-rescheduled",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-fulfillment-rescheduled, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-fulfillment-rescheduled&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Fulfillment Scheduled
Fulfillment Scheduled
Event Name: event-fulfillment-scheduled
The Fulfillment Scheduled webhook is generated when the test-taker or proctor schedules the reservation.
{
"event": {
"name": String,
"description": String,
"type": "event-fulfillment-scheduled",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-fulfillment-scheduled, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-fulfillment-scheduled&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Fulfillment Started
Fulfillment Started
Event Name: event-fulfillment-started
The Fulfillment Started webhook is generated when the proctor picks up the session and greets the test-taker.
{
"event": {
"name": String,
"description": String,
"type": "event-fulfillment-started",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-fulfillment-started, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-fulfillment-started&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
ID Confirmation
Id Confirmation
Event Name: event-id-confirmation
The ID Confirmation webhook is generated when the proctor verifies that the test-taker’s photo ID is valid.
{
"event": {
"name": String,
"description": String,
"type": "event-id-confirmation",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-id-confirmation, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-id-confirmation&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Incident
Incident
Event Name: event-incident
The Incident webhook is generated when the proctor observes and flags a session for aberrant behavior.
{
"event": {
"name": String,
"description": String,
"type": "event-incident",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-incident, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-incident&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Incident Report Processed
Event Name: event-incident-report-processed
The Incident Report Processed webhook is generated when the test-taker’s incident report has been processed by ProctorU.
{
"event": {
"name": String,
"description": String,
"type": "event-incident-report-processed",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-incident-report-processed, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-incident-report-processed&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Lost Focus
Event Name: event-lost-focus
The Lost Focus webhook is generated when the focus is lost from the test-taker’s browser.
{
"event": {
"name": String,
"description": String,
"type": "event-lost-focus",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-lost-focus, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-lost-focus&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Multiple Persons Identified
Event Name: event-multiple-persons-identified
The Multiple Persons Identified webhook is generated when multiple persons are identified in the live stream.
{
"event": {
"name": String,
"description": String,
"type": "event-multiple-persons-identified",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-multiple-persons-identified, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-multiple-persons-identified&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
No One In The Frame
Event Name: event-no-one-in-the-frame
The No One In The Frame webhook is generated when no person is recognized in the frame.
{
"event": {
"name": String,
"description": String,
"type": "event-no-one-in-the-frame",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-no-one-in-the-frame, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-no-one-in-the-frame&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Picture Confirmation
Picture Confirmation
Event Name: event-picture-confirmation
The Picture Confirmation webhook is generated when the proctor acknowledges that the test-taker photo is satisfactory.
{
"event": {
"name": String,
"description": String,
"type": "event-picture-confirmation",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-picture-confirmation, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-picture-confirmation&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Reservation Cancelled
Reservation Cancelled
Event Name: event-reservation-cancelled
The Reservation Cancelled webhook is generated when either the test-taker or the proctor cancels the reservation.
{
"event": {
"name": String,
"description": String,
"type": "event-reservation-cancelled",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"cancellation": {
"reason": "One of Cancellation Reasons",
"explanation": String,
"credit": "one of account, card, none, student or blank",
"created_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-reservation-cancelled, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, reason, explanation, credit, created_at, links_show
cancellation, String, see json, see json, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-reservation-cancelled&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
cancellation[reason]=One of Cancellation Reasons&
cancellation[explanation]=String&
cancellation[credit]=one of account, card, none, student or blank&
cancellation[created_at]=iso8601 DateTime&
cancellation[links][show]=URL
Reservation Confirmation
Reservation Confirmation
Event Name: event-reservation-confirmation
The Reservation Confirmation webhook is generated when the test-taker confirms their reservation after a ProctorU employee has scheduled it.
{
"event": {
"name": String,
"description": String,
"type": "event-reservation-confirmation",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-reservation-confirmation, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-reservation-confirmation&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Rules Confirmation
Rules Confirmation
Event Name: event-rules-confirmation
The Rules Confirmation webhook is generated when the proctor has delivered exam instructions the test-taker and test-taker has acknowledged that they recieved instructions.
{
"event": {
"name": String,
"description": String,
"type": "event-rules-confirmation",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-rules-confirmation, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-rules-confirmation&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
School Comment
School Comment
Event Name: event-school-comment
(Deprecated) The School Comment webhook is generated when an institutional user leaves a message on the appointment.
{
"event": {
"name": String,
"description": String,
"type": "event-school-comment",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-school-comment, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-school-comment&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
School Exam Note
School Exam Note
Event Name:
(Deprecated) The School Exam Note webhook is generated when an institutional level message is level on the assessment for the proctor to read.
{
"event": {
"name": String,
"description": String,
"type": "",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, , iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Screen
Screen
Event Name: event-screen
The Screen webhook is generated when the proctor takes a screenshot and posts it the the proctoring session for further review.
{
"event": {
"name": String,
"description": String,
"type": "event-screen",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-screen, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-screen&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Student Reservation Note
Student Reservation Note
Event Name: event-student-reservation-note
The Student Reservation Note webhook is generated when the test-taker leaves a message or asks the proctor a question.
{
"event": {
"name": String,
"description": String,
"type": "event-student-reservation-note",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-student-reservation-note, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-student-reservation-note&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Survey Completed
Event Name: event-survey-completed
The Survey Completed webhook is generated when a test taker completes a survey after a proctoring session
{
"event": {
"name": String,
"description": String,
"type": "event-survey-completed",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"survey_results": [
{
"question": "Were you satisfied with your experience with Proctor (1-5)",
"answer": "5"
},
{
"question": "Please Rate your proctor (1-5)",
"answer": "5"
},
{
"question": "What did you like about ProctorU?",
"answer": "The proctor was exceptionally kind and helpful"
},
{
"question": "What did you not like about ProctorU?",
"answer": ""
},
{
"question": "Additional comments?",
"answer": "My proctor, Kim, was great."
}
]
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-survey-completed, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, name, description
survey_results, question, "Were you satisfied with your experience with Proctor (1-5)"
survey_results, answer, "5"
survey_results, question, "Please Rate your proctor (1-5)"
survey_results, answer, "5"
survey_results, question, "What did you like about ProctorU?"
survey_results, answer, "The proctor was exceptionally kind and helpful"
survey_results, question, "What did you not like about ProctorU?"
survey_results, answer, ""
survey_results, question, "Additional comments?",
survey_results, answer, "My proctor, Kim, was great."
event[name]=String&
event[description]=String&
event[type]=event-survey-completed&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
survey_results[0][question]=Were you satisfied with your experience with Proctor (1-5)&
survey_results[0][answer]=5&
survey_results[0][question]=Please Rate your proctor (1-5)&
survey_results[0][answer]=5&
survey_results[0][question]=What did you like about ProctorU?&
survey_results[0][answer]=The proctor was exceptionally kind and helpful&
survey_results[0][question]=What did you not like about ProctorU?&
survey_results[0][answer]=5&
survey_results[0][question]=Additional comments?&
survey_results[0][answer]=My proctor, Kim, was great.&
System Metrics Log
Event Name: event-system-metrics-log
The System Metrics Log webhook is generated when the test-taker’s system metrics are logged upon their connection, or reconnection, to the session.
{
"event": {
"name": String,
"description": String,
"type": "event-system-metrics-log",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-system-metrics-log, iso8601 DateTime, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
event[name]=String&
event[description]=String&
event[type]=event-system-metrics-log&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
Touch Point
Touch Point
Event Name: event-touch-point
The Touch Point webhook is generated when the proctor engages the test-taker for any particular reason. For example, the proctor informed the test-taker that notes were not allowed during the assessment.
{
"event": {
"name": String,
"description": String,
"type": "event-touch-point",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"touch_point": {
"kind": "See Touch Point Kinds",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-touch-point, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, kind, links_show
touch_point, see json, URL
event[name]=String&
event[description]=String&
event[type]=event-touch-point&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
touch_point[kind]=One of Touch Point Kinds&
touch_point[links][show]=URL
Transfer
Transfer
Event Name: event-transfer
The Transfer webhook is generated when the proctor transfers the session to another proctor to watch.
{
"event": {
"name": String,
"description": String,
"type": "event-transfer",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-transfer, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-transfer&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Unlock Exam
Unlock Exam
Event Name: event-unlock-exam
The Unlock Exam webhook is generated when a proctor unlocks the exam from our test delivery providers. This webhook event is not generated with un-integrated test delivery providers.
{
"event": {
"name": String,
"description": String,
"type": "event-unlock-exam",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-unlock-exam, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-unlock-exam&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
Verification Failed
Verification Failed
Event Name: event-verification-failed
The Verification Failed webhook is generated when a test-taker fails a verification (ie. keystroke, challenge questions, voice, etc).
{
"event": {
"name": String,
"description": String,
"type": "event-verification-failed",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"verification": {
"type": "One of Enrollment or Fulfillment",
"status": "One of failed, passed, pending, skipped, unavailable",
"max_attempts": Integer,
"attempts": Integer,
"score": Float,
"created_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-verification-failed, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, type, status, max_attempts, attempts, score, created_at, links_show
verification, see json, see json, Integer, Integer, Float, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-verification-failed&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
verification[type]=One of Enrollment or Fulfillment&
verification[status]=One of failed, passed, pending, skipped, unavailable&
verification[max_attempts]=Integer&
verification[attempts]=Integer&
verification[score]=Float&
verification[created_at]=iso8601 DateTime&
verification[links][show]=URL
Verification Passed
Verification Passed
Event Name: event-verification-passed
The Verification Passed webhook is generated when a test-taker passes a verification (ie. keystroke, challenge questions, voice, etc).
{
"event": {
"name": String,
"description": String,
"type": "event-verification-passed",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"verification": {
"type": "One of Enrollment or Fulfillment",
"status": "One of failed, passed, pending, skipped, unavailable",
"max_attempts": Integer,
"attempts": Integer,
"score": Float,
"created_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-verification-passed, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, type, status, max_attempts, attempts, score, created_at, links_show
verification, see json, see json, Integer, Integer, Float, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-verification-passed&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
verification[type]=One of Enrollment or Fulfillment&
verification[status]=One of failed, passed, pending, skipped, unavailable&
verification[max_attempts]=Integer&
verification[attempts]=Integer&
verification[score]=Float&
verification[created_at]=iso8601 DateTime&
verification[links][show]=URL
Verification Retried
Verification Retried
Event Name: event-verification-retried
The Verification Retried webhook is generated is generated when the proctor allows the test-taker to retry a verification type (ie. keystroke, challenge questions, etc).
{
"event": {
"name": String,
"description": String,
"type": "event-verification-retried",
"created_at": "iso8601 DateTime",
"event_specific_data": "String",
"comment": String,
"links": {
"show": "URL"
}
},
"test_taker": {
"first_name": String,
"last_name": String,
"email": String,
"username": String,
"student_id": String,
"links": {
"show": "URL"
}
},
"exam": {
"name": String,
"id": "exam-uuid",
"course_number": String,
"term": String,
"department": String,
"links": {
"show": "URL"
}
},
"reservation": {
"status": "String Fulfillment Statuses above",
"campus_name": String,
"id": "reservation-uuid",
"number": Integer,
"external_id": String,
"starts_at": "iso8601 DateTime",
"ends_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
},
"verification": {
"type": "One of Enrollment or Fulfillment",
"status": "One of failed, passed, pending, skipped, unavailable",
"max_attempts": Integer,
"attempts": Integer,
"score": Float,
"created_at": "iso8601 DateTime",
"links": {
"show": "URL"
}
}
}
data_type, name, description, type, created_at, comment, event_specific_data, links_show
event, String, STring, event-verification-retried, iso8601 DateTime, String, String, URL
data_type, first_name, last_name, email, username, student_id, links_show
test_taker, String, String, String, String, String, URL
data_type, name, id, course_number, term, department, links_show
exam, String, exam-uuid, String, String, String, URL
data_type, status, campus_name, id, starts_at, ends_at, links_show
reservation, String Fulfillment Statuses, String, reservation-uuid, iso8601 DateTime, iso8601 DateTime, URL
data_type, type, status, max_attempts, attempts, score, created_at, links_show
verification, see json, see json, Integer, Integer, Float, iso8601 DateTime, URL
event[name]=String&
event[description]=String&
event[type]=event-verification-retried&
event[created_at]=iso8601 DateTime&
event[event_specific_data]=String&
event[comment]=String&
event[links][show]=URL
test_taker[first_name]=String&
test_taker[last_name]=String&
test_taker[email]=String&
test_taker[username]=String&
test_taker[student_id]=String&
test_taker[links][show]=URL
exam[name]=String&
exam[id]=exam-uuid&
exam[course_number]=String&
exam[term]=String&
exam[department]=String&
exam[links][show]=URL
reservation[status]=String Fulfillment Statuses above&
reservation[campus_name]=String&
reservation[id]=reservation-uuid&
reservation[starts_at]=iso8601 DateTime&
reservation[ends_at]=iso8601 DateTime&
reservation[links][show]=URL
verification[type]=One of Enrollment or Fulfillment&
verification[status]=One of failed, passed, pending, skipped, unavailable&
verification[max_attempts]=Integer&
verification[attempts]=Integer&
verification[score]=Float&
verification[created_at]=iso8601 DateTime&
verification[links][show]=URL
Cancellation Reasons
Cancellation Reasons
- Cancellation through API or cancellation from legacy import.
- No Show
- Tech- Cam not working
- Tech- Other
- Student Unprepared
- Tech- internet connection prob
- LMS Malfunction
- LMS- password not working
- LMS- exam not showing
- LMS- kicked out of exam
- Tech- LMI won’t connect
- Duplicate Appointment
- Test/Demo Appointment
- Administrator Demo
- Mock Start
- Help Desk Review
- Training
- Tech- Audio not working
- Tech- CPU/RAM too slow
- Tech- Browser Issues
- Advance Cancellation
- Administration Override
Event Names
Event Names
- event-admin-reservation-note
- escalation-browser-tabs-changed
- event-comment
- event-copy-paste
- event-downloaded-at
- event-escalated
- event-escalation-case-opened
- event-escalation-needed-attention
- event-escalation-rescheduled
- event-escalation-resolved
- event-flight-path
- event-fulfillment-created
- event-fulfillment-ended
- event-fulfillment-rescheduled
- event-fulfillment-scheduled
- event-fulfillment-started
- event-id-confirmation
- event-incident
- event-incident-report-processed
- event-lost-focus
- event multiple-persons-identified
- event no-one-in-the-frame
- event-picture-confirmation
- event-reservation-cancelled
- event-reservation-confirmation
- event-room-scan
- event-rules-confirmation
- event-school-comment
- event-school-exam-note
- event-screen
- event-soft-disconnection-duration
- event-student-reservation-note
- event-system-metrics-log
- event-test-taker-connected
- event-touch-point
- event-transfer
- event-unlock-exam
- event-verification-failed
- event-verification-passed
- event-verification-retried
Fulfillment Statuses
Fulfillment Statuses
- pending
- fulfilled
- cancelled
- scheduled
- voided
- stale
- rescheduled