You're viewing documentation for a non-production ProctorSafe environment. The URLs below reflect this environment — in production, use https://www.proctorsafe.eu.

Trial Quick Start

Five steps to your first proctored session. Each one links to the full reference if you want the detail — this page deliberately stays short.

Your trial account comes with a fixed number of sessions. The dashboard banner shows how many you have left, and a session that would exceed the budget is refused at start-up rather than part-way through, so you will never lose a candidate's exam to it.

Before You Start

You will need:

  • Your trial sign-in, and the tenant slug shown on your dashboard. It looks like trial-a1b2c3d4 and identifies your account to the SDK.
  • An application you can add a <script> tag to.

Step 1: Allow Your Application Domain

The SDK only talks to us from origins you have listed. Until you add yours, every session start is rejected by CORS.

Open Network settings and add your application's origin — the scheme and host, for example https://exams.your-company.com. Wildcards like *.your-company.com are accepted for subdomains.

See the Integration Guide for full reference.

Step 2: Create an API Key

Server-side calls — fetching sessions, reading results — authenticate with a bearer token.

Go to API keys and create one. The key is shown once and never again, so store it somewhere safe before you close the dialog. If you lose it, delete it and create another.

See the Integration Guide for full reference.

Step 3: Configure a Webhook

Webhooks tell your application when a session starts, finishes, or is reviewed, so you do not have to poll us for it. This step is optional for a first test, but it is how a real integration learns about outcomes.

Add an endpoint at Webhook settings. Start with the default event subscription; you can narrow it later.

See the Integration Guide for full reference.

Step 4: Add the SDK to Your Page

The SDK is a script tag, not an npm package — there is nothing to install or bundle.

<script src="https://proctorsafe-preview-pr-4f21a294d3.kieffer.me/sdk/proctor.iife.js"></script> <script> async function startExam() { await Proctor.init('trial-a1b2c3d4', 'exam-ref-001', { onReady: () => console.log('Proctoring is running'), }); } </script>

Replace trial-a1b2c3d4 with your own tenant slug and exam-ref-001 with your application's own reference for this exam attempt. That reference must be unique per attempt — it is what ties a session back to your records.

By default we require each session start to be signed, so that nobody else can open sessions against your account. While you are evaluating, the simplest route is the signature helper endpoint described in the guide, which signs with the key we generated for you rather than one you have to manage.

See the Integration Guide for full reference.

Step 5: Run Your First Session

Load the page, allow camera and microphone access when prompted, and complete the short onboarding check. Then open your dashboard — the session appears in the list while it is still running.

When it finishes you can open it to see the event timeline, the trust score and how it was reached, and any captures. That view is what your reviewers would use day to day.

See the Integration Guide for full reference.

When Your Trial Runs Out

Sessions beyond your budget are refused with a 402 response and a SESSION_CREDITS_EXHAUSTED code. Retrying will not help, and neither will a new application reference — the budget is per account.

Get in touch when you are ready to continue and we will move you onto a full account. Your existing configuration, keys and sessions carry over.