Biometric APIs
Public HTTP API — enroll, compare, liveness, devices, eMRTD.
Live Engine
Modality-agnostic console covering health, devices, enrol, compare, liveness and eMRTD ingest.
Engine
src/routes/api/public/biometrics/v1 · src/routes/api/public/emrtd
API
biometric-core.api/v1
Every modality is reachable behind a stable request/response envelope (biometric-core.api/v1). Requests carry a schema, runId, modality, operation and a typed payload; responses always return ok, result / error, contributesToDecision and diagnostic.
| Method | Path | Purpose | Auth |
|---|---|---|---|
| GET | /api/public/biometrics/v1/health | Service discovery + schema version. | Public (verified inside) |
| POST | /api/public/biometrics/v1/enroll | Extract a template from a sample of any registered modality. | Bearer API key |
| POST | /api/public/biometrics/v1/compare | 1:1 verification (MATCH / NO_MATCH / INDETERMINATE + score). | Bearer API key |
| POST | /api/public/biometrics/v1/liveness | Not enabled — returns 503 liveness_not_available until a certified provider is registered. | Bearer API key |
| GET | /api/public/biometrics/v1/devices | List registered device adapters (mock/production flag included). | Bearer API key |
| POST | /api/public/emrtd/ingest | Ingest ICAO 9303 chip data groups; runs PA + AA + MRZ parsing. | Public (verified inside) |
Request envelope
{
"schema": "biometric-core.api/v1",
"runId": "run-123",
"modality": "face",
"operation": "verify_1_to_1",
"payload": { ... }
}Response envelope
{
"ok": true,
"result": { ... },
"error": null,
"contributesToDecision": false,
"diagnostic": true
}