Prerequisites
- Talview-provisioned tenant + project DSN. You get a separate DSN per environment (dev / staging / prod).
- Ability to add a script tag and a small bootstrap snippet wherever proctoring needs to run.
Content Security Policy (CSP)
If your application enforces CSP headers, allow the domains and inline resources required by the SDK:1. Load the SDK once
Place the loader as the last script on any page that needs proctoring. The loader attaches itself globally aswindow.Proview and fires window.proviewOnLoad when ready.
Use the environment-specific loader URL shared during onboarding (dev / staging / prod). The example above targets the production CDN.
2. Initialise once per page view
CallProview.session.init after the loader fires. All options are optional; identifiers can be supplied now or later via Proview.session.start.
workflow_step.flow_uuid(optional) is the proctoring configuration identifier for the provideddsn. Please note: if the workflow step is already created with a flow, this will not override it.
Host checklist
- Ensure
dsnis set;session.initrejects withMissing DSNotherwise (seeInitConfigSchemain the SDK). - Provide
attendee(withidentifier),workflow_step(withidentifier), and a top-levelidentifier— all required — duringsession.init. - Do not gate your own UI on the loader script—wait for the session to enter the
MONITORING_IN_PROGRESSstate (next section).
3. Start the proctoring session before showing the assessment
Trigger the session start from your own UI (for example, a “Start Exam” button) once the candidate is ready. Wait for the promise to resolve before displaying your assessment content.4. Stop / complete / pause / resume
The session module mirrors the methods listed in Configuration:onError handler on failure. When rolling out pause/resume, consider mapping them to your own assessment timers as well.
Next steps
- Playback — replay a recorded session in your reviewer-facing app
- Troubleshooting — loading, init, auth, and permission failures
- Best Practices — guidance that applies to every module

