Constructor Proctor API

API parameters

The parameters transmitted on starting a proctored exam are described in the table below.

Mandatory parameters are marked with *.

Parameter groupFieldTypeMax. lengthDescription
User parametersuserId*string255User ID in the client’s system (it can be an employee number or GUID). It must be unique for every user.
emailstringUser email address in the client system.
lastNamestring255User last name.
firstNamestring255User first name.
thirdNamestring255User middle name or patronymic.
languagestring (enum)22-character language code from ISO 639-1.
Ask your integration manager at Constructor to specify the available languages and activate the ones you are planning to use.
Organization / company parametersaccountId*string255Company ID in the client’s system.
Different accountIds are necessary if the LMS is used by several organizations or departments that you need to distinguish and restrict access between.
accountName*string255Company name in the client’s system.
Exam parameterscourseNamestring450Course name, if the exam belongs to this course.
examId*string255Exam ID (test ID in the system, preferably GUID).
examName*string500Exam name.
userAgreementUrlstring (URL)200A link to a document containing the exam regulations that will be displayed right before the exam starts.
duration*intExam duration in minutes.
schedule*booleanParameter specifying whether the user needs to sign up for the exam in the calendar.
proctoring*string (enum)Proctoring mode:
online — real-time proctor
offline — post-review mode
auto — automatic AI conclusion
startDate*string (datetime)Date and time marking the start of the test (ISO 8601).
Must explicitly include a time offset or use UTC format.
If the exam is unscheduled, this parameter is set individually for each proctoring session.
endDate*string (datetime)Date and time marking the end of the test (UTC, ISO 8601).
If the exam is unscheduled, this parameter is set individually for each proctoring session.
allowMultipleDisplaysbooleanWhether an additional monitor is allowed. Default: false.
allowVirtualEnvironmentbooleanWhether a virtual environment is allowed. Default: false.
auxiliaryCamerabooleanEnable an additional smartphone camera during the exam.
auxiliaryCameraModestring (enum)Mode of the second camera:
photo — takes a photo every 30 seconds
video — records continuous video
allowMakingRoomScanSecondCamerabooleanWhether the auxiliary camera can be used for room scan. Default: false.
calculatorstring (enum)Calculator mode:
off — calculator disabled
simple — only basic arithmetic
scientific — advanced operations
checkIdPhotoQualitybooleanWhether automatic document quality check is required (true). Default: false.
desktopAppForbiddenProcessesJSONA list of forbidden processes.
An empty list means no blocked processes. Default: preset list.
desktopAppAllowedProcessesJSONA list of allowed processes.
An empty list means no allowed processes. Default: empty.
identificationstring (enum)The identification mode:
passport
face
face_and_passport
skip
proctorEmailsJSONAssigns specific proctors to an exam (available only in Live review mode).
rulesJSON parametersExam rules.
scoreConfigJSONScore calculation parameters.
trialbooleanIndicates whether the exam is a trial. Trial exams are not listed in the archive. Default: false.
visibleWarningsJSONWarning display options.
webCameraMainViewstring (enum)Main webcam location:
front — front camera
side — side camera
streamsPresetstring (enum)Recording mode:
default — webcam + desktop + optional second camera
no_video — for Secure Browser (high security)
no_ai_detection — full recording, no AI processing
sendManualWarningsToLearnerbooleanWhether warnings added by a live proctor are shown to the learner. Default: true.
shortNamestring255Course code or short name.
Session parameterssessionId*string230Session ID (preferably GUID). Must be unique within the system.
sessionUrl*string (URL)2550Link to the exam in the LMS.
reviewUrlstring (URL)600The URL where the proctoring result will be sent. Overrides review_url for the session.
sessionFinishUrlstring (URL)2550The URL of the page to redirect the test taker to after the exam. Can also be passed at the end of the session.
special_accommodations_infostring500Indicates whether the learner requires special accommodations.
Environment parameterssecureBrowserbooleanIndicates whether to open the exam in a lockdown browser. The specific browser must be chosen in advance.
secureBrowserLevelstring (enum)Secure Browser mode:
basic
medium
high
preliminaryCheckJSONPreliminary check parameters used for examinee identification before the exam.

It is possible to change the parameters of a user or an exam in Constructor Proctor after they have been created.
To do this, pass the same user, exam, and session ID as before, with updated parameter values.
For example, you can change the duration and rules of an exam, or the language of a user.

Constructor Proctor creates or updates a user, authorizes them, and creates a proctoring session.
After that, the test taker starts a proctoring session, passes identification and connection checks, and—if successful—is redirected to the test URL provided in sessionUrl.

If the user disconnects or experiences technical issues during the session, they can return to the exam using the same start link for 5–15 minutes, depending on the timeout set on the Constructor Proctor server.
If disconnected for too long, the session will close automatically, and the user will need a new link with a new sessionId.