Skip to main content

Web SDK

Drop-in browser SDK for identity verification. Handles document capture, selfie capture, and API communication.

Installation

Script Tag

<script src="https://portal.valydar.com/sdk/valydar.js"></script>

npm

npm install @valydar/sdk
import Valydar from '@valydar/sdk';

Quick Start

<script src="https://portal.valydar.com/sdk/valydar.js"></script>
<script>
const client = Valydar.create({
baseUrl: 'https://api.dev.valydar.com',
apiKey: 'YOUR_API_KEY',
});

// Create a verification
const verification = await client.createVerification();
console.log(verification.id);

// Upload a document
const fileInput = document.getElementById('doc-file');
const doc = await client.uploadDocument(verification.id, fileInput.files[0]);
console.log(doc.document_id);

// Upload a selfie
const selfieInput = document.getElementById('selfie-file');
const selfie = await client.uploadSelfie(verification.id, selfieInput.files[0]);
console.log(selfie.selfie_id);

// Run face match
const faceMatch = await client.faceMatch(verification.id);
console.log(faceMatch.result);

// Wait for all checks to complete
const result = await client.waitForCompletion(verification.id, 30000);
console.log(result);
</script>

API Reference

Valydar.create(options)

Creates a new SDK client.

OptionTypeRequiredDescription
baseUrlstringAPI base URL
apiKeystringYour API key

client.createVerification()

Creates a new verification.

Returns: Promise<{ id: string, status: string }>

client.uploadDocument(verificationId, file)

Uploads an identity document.

ParamTypeDescription
verificationIdstringVerification ID
fileFileDocument image (JPEG, PNG, WebP)

Returns: Promise<{ document_id: string, type: string, status: string }>

client.uploadSelfie(verificationId, file)

Uploads a selfie for face matching and liveness.

ParamTypeDescription
verificationIdstringVerification ID
fileFileSelfie image (JPEG, PNG, WebP)

Returns: Promise<{ selfie_id: string }>

client.faceMatch(verificationId)

Runs face match between selfie and document photo.

Returns: Promise<{ type: string, result: string, score: number, details: object }>

client.documentLiveness(verificationId, documentId)

Runs document authenticity check.

ParamTypeDescription
verificationIdstringVerification ID
documentIdstringDocument ID

Returns: Promise<{ type: string, result: string, score: number, details: object }>

client.waitForCompletion(verificationId, timeoutMs)

Polls the verification until it reaches a terminal state.

ParamTypeDefaultDescription
verificationIdstringVerification ID
timeoutMsnumber30000Timeout in milliseconds

Returns: Promise<{ id: string, status: string, checks: array }>

client.health()

Checks API health.

Returns: Promise<{ status: string }>

TypeScript

Full type definitions are included:

import Valydar, { Verification, Document, FaceMatchResult } from '@valydar/sdk';

See valydar.d.ts for all types.