Skip to main content
Vision scopes work on images rather than identifiers. You send one or more images, and Pruva returns a comparison score, detected faces, or the data read off a document.

Sending images

Image inputs are sent as base64 data URIs in the JSON body, the same way any other field is sent. Keep in mind that images make requests large; send a reasonably sized image rather than a full resolution photo.
Images are biometric data. Pruva stores any returned images to secure storage and returns them as short lived links, never as raw bytes in the stored record. Do not log full image payloads on your side either.

Face comparison

face_compare compares two faces and returns how closely they match. The common use is matching a live selfie against an ID portrait.
string
required
The first image, as a base64 data URI. Typically the live selfie.
string
required
The second image, as a base64 data URI. Typically the ID portrait.
The result carries a similarity score and whether the faces are considered a match.

Face detection

face_detect finds faces in a single image and returns each one. This scope is priced per face, since one image can contain several. See per item pricing.
string
required
The image to scan, as a base64 data URI.
The result lists the detected faces, each with its attributes and a cropped image link.

Document reader

document_read reads the data off an identity document, returning the fields it can extract.
string
required
The document image, as a base64 data URI.
The result carries the fields read from the document, which vary by document type.
For collecting selfies and documents from an end user in the browser without handling the images yourself, use the Widget instead of sending images to these scopes directly.