List Appointments
curl --request GET \
--url https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments \
--header 'token: <api-key>'import requests
url = "https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments"
headers = {"token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {token: '<api-key>'}};
fetch('https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments")
.header("token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"total": 123,
"first": "<string>",
"next": "<string>",
"prev": "<string>",
"last": "<string>",
"count": 123,
"offset": 123,
"results": [
{
"sid": "<string>",
"examSid": "<string>",
"enrollmentSid": "<string>",
"instructorProctorSid": "<string>",
"status": "<string>",
"sessionType": "<string>",
"schedulingModule": "<string>",
"proctorReviewProcessSid": "<string>",
"appointmentDate": "<string>",
"dateApproved": "<string>",
"dateScheduled": "<string>",
"externalAppointmentId": "<string>",
"externalReservedAppointmentId": "<string>",
"externalReservedAppointmentExpires": "<string>",
"recordingStartDate": "<string>",
"sessionReportCount": 123,
"series": {},
"reviewByDate": "<string>",
"reviewCompletedDate": "<string>",
"reviewRequired": true,
"platformVersion": "<string>",
"systemCheckStartDate": "<string>",
"systemCheckEndDate": "<string>",
"mandatoryRoomScanVideo": true,
"mutedAnnotations": {},
"exam": {
"sid": "<string>",
"courseSid": "<string>",
"title": "<string>",
"type": "<string>",
"description": "<string>",
"useProctorManager": true,
"requireApproval": true,
"enableAppointmentSuggestions": true,
"url": "<string>",
"status": "<string>",
"instructorName": "<string>",
"courseName": "<string>",
"totalSessions": 123,
"needsProctorSessions": 123,
"platformVersion": "<string>"
},
"enrollment": {
"userSid": "<string>",
"enrollmentSid": "<string>",
"courseSid": "<string>",
"role": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"email": "<string>",
"synchronization": {
"failure1": "<string>",
"failure2": "<string>",
"failure3": "<string>",
"failure4": "<string>",
"lastSync": "<string>"
},
"createdDate": "<string>",
"editDate": "<string>",
"user": {},
"course": {}
},
"course": {
"sid": "<string>",
"title": "<string>",
"code": "<string>",
"synchronization": {
"enrollment": {
"lastRun": "<string>",
"lastRunResult": "<string>",
"nextRun": "<string>"
}
},
"createdDate": "<string>",
"editDate": "<string>",
"offering": {
"sid": "<string>",
"lastActivityDate": "<string>",
"title": "<string>",
"matchStrings": "<string>",
"startDate": "<string>",
"endDate": "<string>",
"createdDate": "<string>",
"editDate": "<string>"
}
},
"examConfiguration": {
"sid": "<string>",
"examSid": "<string>",
"enrollmentSid": "<string>",
"examOpenDate": "<string>",
"examCloseDate": "<string>",
"scheduleOpenDate": "<string>",
"scheduleCloseDate": "<string>",
"password": "<string>",
"duration": 123,
"attempts": 123,
"approved": true,
"approvedBy": "<string>",
"requiredSoftware": "<string>",
"studentNotes": "<string>",
"permittedBathroomBreak": true,
"permittedBathroomBreakInformation": "<string>",
"permittedBlankPaper": true,
"permittedBlankPaperInformation": "<string>",
"permittedCalculator": true,
"permittedCalculatorInformation": "<string>",
"permittedDictionary": true,
"permittedDictionaryInformation": "<string>",
"permittedEarplugs": true,
"permittedEarplugsInformation": "<string>",
"permittedFormulaSheet": true,
"permittedFormulaSheetInformation": "<string>",
"permittedNotes": true,
"permittedNotesInformation": "<string>",
"permittedOtherItems": "<string>",
"permittedTextbook": true,
"permittedTextbookInformation": "<string>",
"permittedWebsites": true,
"permittedWebsitesInformation": "<string>",
"synchronization": {
"exam": {
"lastRun": "<string>",
"lastRunResult": "<string>",
"nextRun": "<string>"
}
},
"proctorNotes": "<string>",
"proctorTypes": [
"<string>"
],
"instructorAsProctor": [
{}
],
"createdDate": "<string>",
"editDate": "<string>"
}
}
]
}Reports
List Appointments
Returns all appointments based on the given filter parameters.
GET
/
v1
/
installs
/
{installSid}
/
reports
/
appointments
List Appointments
curl --request GET \
--url https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments \
--header 'token: <api-key>'import requests
url = "https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments"
headers = {"token": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {token: '<api-key>'}};
fetch('https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"token: <api-key>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("token", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments")
.header("token", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.smarterproctoring.com/v1/installs/{installSid}/reports/appointments")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["token"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"total": 123,
"first": "<string>",
"next": "<string>",
"prev": "<string>",
"last": "<string>",
"count": 123,
"offset": 123,
"results": [
{
"sid": "<string>",
"examSid": "<string>",
"enrollmentSid": "<string>",
"instructorProctorSid": "<string>",
"status": "<string>",
"sessionType": "<string>",
"schedulingModule": "<string>",
"proctorReviewProcessSid": "<string>",
"appointmentDate": "<string>",
"dateApproved": "<string>",
"dateScheduled": "<string>",
"externalAppointmentId": "<string>",
"externalReservedAppointmentId": "<string>",
"externalReservedAppointmentExpires": "<string>",
"recordingStartDate": "<string>",
"sessionReportCount": 123,
"series": {},
"reviewByDate": "<string>",
"reviewCompletedDate": "<string>",
"reviewRequired": true,
"platformVersion": "<string>",
"systemCheckStartDate": "<string>",
"systemCheckEndDate": "<string>",
"mandatoryRoomScanVideo": true,
"mutedAnnotations": {},
"exam": {
"sid": "<string>",
"courseSid": "<string>",
"title": "<string>",
"type": "<string>",
"description": "<string>",
"useProctorManager": true,
"requireApproval": true,
"enableAppointmentSuggestions": true,
"url": "<string>",
"status": "<string>",
"instructorName": "<string>",
"courseName": "<string>",
"totalSessions": 123,
"needsProctorSessions": 123,
"platformVersion": "<string>"
},
"enrollment": {
"userSid": "<string>",
"enrollmentSid": "<string>",
"courseSid": "<string>",
"role": "<string>",
"firstName": "<string>",
"lastName": "<string>",
"email": "<string>",
"synchronization": {
"failure1": "<string>",
"failure2": "<string>",
"failure3": "<string>",
"failure4": "<string>",
"lastSync": "<string>"
},
"createdDate": "<string>",
"editDate": "<string>",
"user": {},
"course": {}
},
"course": {
"sid": "<string>",
"title": "<string>",
"code": "<string>",
"synchronization": {
"enrollment": {
"lastRun": "<string>",
"lastRunResult": "<string>",
"nextRun": "<string>"
}
},
"createdDate": "<string>",
"editDate": "<string>",
"offering": {
"sid": "<string>",
"lastActivityDate": "<string>",
"title": "<string>",
"matchStrings": "<string>",
"startDate": "<string>",
"endDate": "<string>",
"createdDate": "<string>",
"editDate": "<string>"
}
},
"examConfiguration": {
"sid": "<string>",
"examSid": "<string>",
"enrollmentSid": "<string>",
"examOpenDate": "<string>",
"examCloseDate": "<string>",
"scheduleOpenDate": "<string>",
"scheduleCloseDate": "<string>",
"password": "<string>",
"duration": 123,
"attempts": 123,
"approved": true,
"approvedBy": "<string>",
"requiredSoftware": "<string>",
"studentNotes": "<string>",
"permittedBathroomBreak": true,
"permittedBathroomBreakInformation": "<string>",
"permittedBlankPaper": true,
"permittedBlankPaperInformation": "<string>",
"permittedCalculator": true,
"permittedCalculatorInformation": "<string>",
"permittedDictionary": true,
"permittedDictionaryInformation": "<string>",
"permittedEarplugs": true,
"permittedEarplugsInformation": "<string>",
"permittedFormulaSheet": true,
"permittedFormulaSheetInformation": "<string>",
"permittedNotes": true,
"permittedNotesInformation": "<string>",
"permittedOtherItems": "<string>",
"permittedTextbook": true,
"permittedTextbookInformation": "<string>",
"permittedWebsites": true,
"permittedWebsitesInformation": "<string>",
"synchronization": {
"exam": {
"lastRun": "<string>",
"lastRunResult": "<string>",
"nextRun": "<string>"
}
},
"proctorNotes": "<string>",
"proctorTypes": [
"<string>"
],
"instructorAsProctor": [
{}
],
"createdDate": "<string>",
"editDate": "<string>"
}
}
]
}Authorizations
Path Parameters
Install Sid
Pattern:
^AI[a-f0-9]{32}$Query Parameters
Result offset
Required range:
x >= 0Number of items to return
Required range:
x >= 0Course sid
Pattern:
^CU[a-f0-9]{32}$Exam sid
Pattern:
^EX[a-f0-9]{32}$Course offering sid
Pattern:
^CO[a-f0-9]{32}$Type of the appointment
Available options:
b-virtual, examity, proctoru, register-blast, instructor-as-proctor, messaging, ad-hoc, vtc, automated Status of the appointment
Available options:
Needs Proctor, Scheduled, Cancelled, In Progress, Closed If the session needs to be reviewed and/or if it has been reviewed.
Available options:
pending, complete, not-required Status of the exam
Available options:
active, draft, deleted Appointments after date
Pattern:
.*ZExample:
"1970-01-01T00:00:00.000Z"
Appointments before date
Pattern:
.*ZExample:
"1970-01-01T00:00:00.000Z"
learner first name
Pattern:
^[^%]*$Learners last name
Pattern:
^[^%]*$Learners email
Pattern:
^[^%]*$Learners sid
Pattern:
^[^%]*$Course title
Pattern:
^[^%]*$Exam title
Pattern:
^[^%]*$Was this page helpful?
⌘I
