POST/api/v1/face/verify

4-Model Face Verification API

Compare any two face images with enterprise-grade precision. Our verification engine fuses ArcFace, Facenet512, buffalo_l, and buffalo_sc for majority-vote decisions.

POST /api/v1/face/verify

REQUEST

200 OK
{
  "verified": true,
  "confidence": 0.91,
  "models": {
    "ArcFace":    { "verified": true,  "distance": 0.28 },
    "Facenet512": { "verified": true,  "distance": 0.35 },
    "buffalo_l":  { "verified": true,  "distance": 0.31 },
    "buffalo_sc": { "verified": false, "distance": 0.42 }
  }
}

Key Features

Everything you need from a production-ready Face Verification API.

4-Model Voting

ArcFace, Facenet512, InsightFace buffalo_l, and buffalo_sc all vote independently.

Distance Scoring

Returns cosine distance per model alongside the final verified/not-verified verdict.

Threshold Control

Each model has a calibrated threshold. Override per-request for your use case.

Fast & Scalable

All four models run in parallel. Average response under 1.5 seconds.

How it works

Integrate in minutes with our developer-friendly REST API.

01

Upload two images

POST file1 and file2 — the two face images you want to compare.

02

Parallel analysis

All four models compute embeddings and cosine distances simultaneously.

03

Majority verdict

If 3 or more models agree the faces match, the result is verified.

Data Output

Fields You Can Extract

All data returned as structured JSON — map directly to your database schema.

verified
confidence
models.ArcFace
models.Facenet512
models.buffalo_l
models.buffalo_sc
response.json
{
  "verified": true,
  "confidence": 0.91,
  "models": {
    "ArcFace":    { "verified": true,  "distance": 0.28 },
    "Facenet512": { "verified": true,  "distance": 0.35 },
    "buffalo_l":  { "verified": true,  "distance": 0.31 },
    "buffalo_sc": { "verified": false, "distance": 0.42 }
  }
}

Mobile SDK

NO API KEY

Face Capture SDK

Capture a face image natively in your app and pass it to this endpoint. No API key needed for the capture itself.

Add to build.gradle.kts — Kotlin 2.0+:

Kotlin
dependencies {
    implementation("com.codelyticalhub:face-capture:1.0.0")
}
// settings.gradle.kts
repositories { mavenCentral() }

Manifest permission (runtime request handled by the SDK):

XML
<uses-permission android:name="android.permission.CAMERA" />

Quick start:

Kotlin
FaceCaptureSDK.register(this)  // in onCreate

FaceCaptureSDK.start(activity) { result ->
    when (result) {
        is FaceCaptureResult.Success -> {
            val file   = ImageUtils.bitmapToFile(context, result.bitmap)
            val base64 = ImageUtils.bitmapToBase64(result.bitmap)
            myBackend.callFaceGuardApi(file)  // never put API key in the app
        }
        FaceCaptureResult.Cancelled -> { }
        is FaceCaptureResult.Error  -> showError(result.message)
    }
}

⚠ Note

Never embed your FaceGuard API key in the app. Always proxy through your backend.

Ready to integrate Face Verification?

Create a free account. Get 50 test API requests instantly — no credit card required.