biofrq.verify
1:1 match. The first image in params.images[] is the probe.
The comparison target is either a second image in images[1] or
an already-enrolled subjectId.
Params
| Field | Type | Required | Default | Notes |
|---|---|---|---|---|
images[0] | ImageItem | yes | — | Probe image. |
images[1] | ImageItem | image-image only | — | Right-side image. Provide this or subjectId, not both. |
subjectId | UUID | image-subject only | — | Compare probe against the enrolled subject's templates. |
threshold | float | no | tenant default | 0–1. Match score must clear this. |
See Envelope → Image inputs for the
ImageItem shape.
Request — image vs subject
json
{
"action": "biofrq.verify",
"params": {
"images": [
{ "kind": "image", "bytes": "<base64>", "contentType": "image/jpeg" }
],
"subjectId": "8a1c...",
"threshold": 0.6
}
}
Request — image vs image
json
{
"action": "biofrq.verify",
"params": {
"images": [
{ "kind": "image", "bytes": "<base64-A>", "contentType": "image/jpeg" },
{ "kind": "image", "bytes": "<base64-B>", "contentType": "image/jpeg" }
],
"threshold": 0.6
}
}
Response
The per-action payload lives at data.results[0].value:
json
{
"isMatch": true,
"score": 0.87,
"threshold": 0.6
}
score is cosine similarity in embedding space. threshold is
the value score was compared against, echoed so you don't have
to remember what you sent.
Common errors
SUBJECT_NOT_FOUND—subjectIddoesn't exist in the active project.INVALID_REQUEST— bothsubjectIdand a second image; or neither; or no face in one of the images.