ALOTDocumentation

Inviting Candidates

There are three ways to get candidates into an assessment: direct invite by email, shared link, or the API/SDK.

Via the dashboard

  1. Open an assessment and click Invite Candidate
  2. Enter the candidate's name and email
  3. Click Send Invite

The candidate receives an email with a unique, one-time access link. The link contains a signed token that expires after 7 days.

Via the REST API

POST /v1/candidates/:assessmentId/invite
Authorization: Bearer <token>
Content-Type: application/json

{
  "name": "Jane Smith",
  "email": "jane@example.com"
}

// Response
{
  "data": {
    "sessionId": "...",
    "inviteLink": "https://assessment.yourdomain.com/a/your-slug?token=...",
    "status": "INVITED"
  }
}

Via the SDK

const session = await alot.candidates.invite(assessmentId, {
  name: 'Jane Smith',
  email: 'jane@example.com',
})

console.log(session.inviteLink) // Share this with the candidate

Invite email

The invite email includes:

  • Assessment title
  • Organization name
  • Number of stages
  • Time limit (if set)
  • A call-to-action button linking to the assessment

Shared link (open access)

For public assessments without individual invites, share the assessment's direct URL:

https://assessment.yourdomain.com/a/{slug}

Candidates fill in their name and email on arrival. A session is created automatically.

After completion

When a candidate submits their final stage:

  1. The session is marked COMPLETED
  2. A short-lived result token is generated
  3. The candidate is redirected to your configured redirectUrl with ?result=<token>
  4. If webhooks are enabled (PRO), a candidate.completed event is dispatched

Exchange the result token for the full session data via GET /v1/public/results/:token.

Candidate limits

  • FREE plan — 50 candidate sessions per calendar month
  • PRO plan — unlimited