Onboarder

API Documentation

Onboarder Documentation

OAuth 2.0 identity verification platform. Users verify once, use everywhere.

How Onboarder Works

1

Setup Platform

Configure verification flows

2

Integrate OAuth

Add "Sign in with Onboarder"

3

User Verifies

Hosted verification UI

4

Get Data

Receive verified user info

Why Onboarder?

  • OAuth 2.0 First

    Standard OAuth integration. Users verify once, sign in everywhere. No custom verification flows to build.

  • Hosted Verification UI

    Fully managed signup, login, and verification pages. Email, phone, biometric enrollment (face/voice), document verification - all handled.

  • Configurable Verification Flows

    Define what verifications users need per use case. Banking needs passport? E-commerce just email? You decide.

  • Sandbox & Production Environments

    Test for free in sandbox with test data. Move to production when ready with real biometric verification system.

Quick Example

Here's how to add "Sign in with Onboarder" to your app:

// 1. Redirect user to OAuth authorization
const authUrl = new URL('https://api.onboarder.com/api/v1/oauth/authorize');
authUrl.searchParams.append('client_id', 'plt_sandbox_your_id');
authUrl.searchParams.append('flow_id', 'flow_your_flow_id'); // Defines required verifications
authUrl.searchParams.append('redirect_uri', 'https://yourapp.com/callback');
authUrl.searchParams.append('response_type', 'code');
authUrl.searchParams.append('state', 'random_csrf_token');
window.location.href = authUrl.toString();
// 2. User completes verification on Onboarder's hosted UI
// (email, phone, document upload, liveness check - all handled)
// 3. User returns to your callback with authorization code
const code = new URLSearchParams(window.location.search).get('code');
// 4. Exchange code for access token (backend)
const tokenResponse = await fetch('https://api.onboarder.com/api/v1/oauth/token', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
grant_type: 'authorization_code',
code,
client_id: process.env.CLIENT_ID,
client_secret: process.env.CLIENT_SECRET,
redirect_uri: 'https://yourapp.com/callback'
})
});
const { access_token } = await tokenResponse.json();
// 5. Get verified user data
const userInfo = await fetch('https://api.onboarder.com/api/v1/oauth/userinfo', {
headers: { 'Authorization': `Bearer ${access_token}` }
});
const user = await userInfo.json();
// user contains: email, name, phone, verifications, etc.

Core Concepts

Platforms

Your integration settings. Each platform gets a client_id,client_secret, and can have multiple verification flows.

Verification Flows

Define what users must verify. Each flow has a flow_id and specifies required fields (email, phone, name) and verifications (document, liveness, etc.)

Sandbox vs Production

Sandbox uses test data (free, unlimited). Production uses real biometric verification providers (usage-based pricing).

OAuth 2.0

Standard authorization code flow. Hosted signup/login pages handle all verification. You just exchange codes for tokens.

Ready to integrate?

Follow our quickstart guide to add "Sign in with Onboarder" to your app in minutes.