The decision rule
This is the most important part of the integration. Write it in the positive:- The matrix keys are strings, not numbers:
biometric["0"]["1"]. In typed languages, deserialize as a map fromstringto object. - The 70 threshold is valid only for
vu_v4, the default methodology. The same two photos of the same person score 95 withvu_v4, 78 withcosineand 66 witheuclidean_l2— a 66 that, read against thevu_v4threshold, would mean “different person”. confidencesis a duplicate ofbiometrickept for backwards compatibility. Do not read it; decide onbiometric.
Endpoints
The base URL depends on the environment and is provided by VU along with your api-key. Examples below refer to it as
BASE_URL.
Authentication
Every call carries theApi-Key header with your environment’s key.
A complete example
Comparing two faces — the selfie against the document photo:biometric["0"]["1"] = 93 ≥ 70 ⇒ same person. The diagonal ("0" against "0") is always 100; ignore it. id is the transaction identifier: always log it — it is the first thing support will ask for.
The available operations
When you request
faceFeatures and headPoseEstimation together, the service adds the aggregated quality verdict in inferenceConfidence: high, medium or low. The details are in Responses.
Environments
The UAT environment may run ahead of production. It also validates pre-release versions, so response times and scores can differ. Use it to certify your integration — the contract, the status codes, the error handling — not as a performance reference and not to compare scores image by image across environments.
Next
Integration
Prepare the images, align
operations, build the call, and validate before production.Responses
The biometric matrix, the nested quality verdict, and the antispoofing inside the response.
Errors
Status codes, the plain-text 500s, and which errors are safe to retry.