Skip to main content
Emblem Developer Docs

Emblem Developer Docs

Add age verification to your site with Emblem's hosted verification flow.

Add age verification to your site in minutes with Emblem's hosted verification flow.

How it works

  1. Your server starts a verification session with POST /api/v1/verify/start.
  2. You redirect the user's browser to Emblem, and Emblem handles the verification flow.
  3. Your callback receives a result_token, and your server validates it to get the verification result.
  • Getting Started — Build a working hosted verification flow end to end.
  • JavaScript SDK — Use @emblemapp/sdk to start sessions, validate results, and verify webhook signatures.
  • Webhooks — Handle completed, failed, and expired sessions.
  • Error Reference — Look up hosted verification error codes and recovery steps.
  • API Reference — See the hosted verification endpoints and contracts.

Quick install

npm install @emblemapp/sdk
import { createClient } from '@emblemapp/sdk'
import crypto from 'node:crypto'

const emblem = createClient({
  apiKey: process.env.EMBLEM_SECRET_KEY!,
})

const { redirect_url } = await emblem.startVerification({
  integration_id: process.env.EMBLEM_INTEGRATION_ID!,
  callback_url: 'https://your-site.com/callback',
  state: crypto.randomBytes(16).toString('hex'),
})

Server-side validation required

The browser receives a result_token, but your server must call validateVerification() to get the actual verification result.

Emblem Connect

Building a verification provider integration? See Emblem Connect for partner integration docs.

On this page