POST/api/v1/face/enroll

Face Embedding Extraction API

Extract compact, portable face embedding vectors. Store them in your own database, use them for identification, or build your own face recognition pipeline on top of our models.

POST /api/v1/face/enroll

REQUEST

200 OK
{
  "user_id": "emp_001",
  "embeddings": {
    "ArcFace": "base64_vector_string_here...",
    "buffalo_l": "base64_vector_string_here..."
  },
  "face_detected": true
}

Key Features

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

Dual Model Output

Returns embeddings from both ArcFace and buffalo_l for maximum downstream compatibility.

Base64 Encoded

All embedding vectors are base64-encoded for easy storage in any database column.

Compact Size

Combined embeddings per user average ~5KB — trivially small for large user bases.

Fully Portable

Store embeddings in your own DB. Use them later for identification with no vendor lock-in.

How it works

Integrate in minutes with our developer-friendly REST API.

01

Send a face image

POST a clear front-facing face image with a user_id to the enroll endpoint.

02

Embedding extraction

ArcFace and buffalo_l extract high-dimensional face vectors independently.

03

Store in your DB

Receive base64-encoded embeddings. Store them in your own database under the user_id.

Data Output

Fields You Can Extract

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

user_id
embeddings.ArcFace
embeddings.buffalo_l
face_detected
response.json
{
  "user_id": "emp_001",
  "embeddings": {
    "ArcFace": "base64_vector_string_here...",
    "buffalo_l": "base64_vector_string_here..."
  },
  "face_detected": true
}

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 Embeddings?

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