Skip to content

Restricted pilot. The API reference is generated from the running API. Successful matches return manual_review until attack detection is validated.

Code samples

There are no packaged SDKs. The HTTP API is the contract, and these samples are small enough to copy.

LanguageFile
cURLexamples/curl/quickstart.sh
Pythonexamples/python/quickstart.py
Node / TypeScriptexamples/node/quickstart.ts
Laravel / PHPexamples/laravel/WarkaClient.php
Expo, Android, iOSexamples/mobile/README.md
AttendanceController.php
$session = $warka->startSession($employee->warka_identity_id);
// Return capture_token and upload_url to the app. The API key stays here.

$result = $warka->verify($employee->warka_identity_id, $sessionId);
match ($warka->nextStep($result)) {
    'record_attendance' => Attendance::record($employee),
    'supervisor_queue' => ReviewQueue::push($employee, $result['id']),
    'ask_employee_to_retry' => response()->json(['retry' => $result['guidance']]),
    default => ExceptionProcess::open($employee, $result['id']),
};