LiveLaunch
https://us1.proctorapi.comBody
The Proctor request to create a Proctor Live URL.
1, Maximum value is 3600.^[a-zA-Z0-9-]*$.^(?!goodbye$|support$|update$|setup$|invalid$).*.Represents a course ID or a section ID value. This parameter is optional. It provides a more granular sorting of the exams.
That means that exams that have the same "exam_tag" but different "section_id", will be treated like different exams.
The "section_id" parameter is dependent upon the "roster_url" parameter, and it can't be used without it.
Roster endpoint URL. Http Method: GET. The response should be a JSON stringified array. For example: '[["id1","name1"],["id2","name2"]]'
The "id" value should correspond to the "userId" parameter, be unique to the Candidate, and non-repeatable within the roster.
The roster endpoint is validated by Proctorio, so that means that if an invalid endpoint is provided or if "userId" doesn't match any "id" value inside the array, the attempts will be marked as "Unmatched" in the Review Center.
The roster_url is only fetched by the end user accessing the Review Center or the Exam Agreement page, client-side, not by Proctorio directly. That means that it can be secured with the session for that particular user. This is intentional, and as such there is no need for the PII to be passed to Proctorio at any point, whether that be a Candidate Launch request or a Reviewer Launch request.
Responses200application/jsonIndicates success and returns a Proctor URL.
400application/jsonIndicates bad request.
401application/jsonIndicates unauthorized response.
2154 - Account not active.
2155 - Incorrect region.
2655 - Invalid api_key.
Indicates success and returns a Proctor URL.
Indicates bad request.
Indicates unauthorized response.
2154 - Account not active.
2155 - Incorrect region.
2655 - Invalid api_key.
curl --request POST \
--url https://us1.proctorapi.com/v2/live/launch \
--header 'Content-Type: application/json' \
--header 'api_key: $API_KEY' \
--data '{"user_id":"example-id-123"}' import requests
url = "https://us1.proctorapi.com/v2/live/launch"
payload = { "user_id": "example-id-123" }
headers = {
"api_key": "$API_KEY",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json()) const fetch = require('node-fetch');
const url = 'https://us1.proctorapi.com/v2/live/launch';
const options = {
method: 'POST',
headers: {api_key: '$API_KEY', 'Content-Type': 'application/json'},
body: '{"user_id":"example-id-123"}'
};
try {
const response = await fetch(url, options);
const data = await response.json();
console.log(data);
} catch (error) {
console.error(error);
} using System.Net.Http.Headers;
var client = new HttpClient();
var request = new HttpRequestMessage
{
Method = HttpMethod.Post,
RequestUri = new Uri("https://us1.proctorapi.com/v2/live/launch"),
Headers =
{
{ "api_key", "$API_KEY" },
},
Content = new StringContent("{\"user_id\":\"example-id-123\"}")
{
Headers =
{
ContentType = new MediaTypeHeaderValue("application/json")
}
}
};
using (var response = await client.SendAsync(request))
{
response.EnsureSuccessStatusCode();
var body = await response.Content.ReadAsStringAsync();
Console.WriteLine(body);
} {
"user_id": "example-id-123"
}