> For the complete documentation index, see [llms.txt](https://doc.faceplugin.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.faceplugin.com/products/face-recognition-sdk.md).

# Face SDK

Faceplugin Face SDK: on-premise face recognition, standalone face liveness, and combined Recognition + Liveness for mobile and server (ports 8083 / 8084).

### Overview

**Faceplugin Face SDK** covers **face recognition**, **standalone face liveness**, and **recognition + liveness** in one server process. Images are processed on the device or on your server — not in Faceplugin’s cloud. Recognition is evaluated on **NIST FRVT** (Face Recognition Vendor Test).

**What it can do:** [Capabilities](/products/face-recognition-sdk/capabilities.md). Then pick a mode:

* [**Recognition**](/products/face-recognition-sdk/recognition.md) — recognition-only server API on **8083** (`faceplugin/face-recognition`)
* [**Liveness**](/products/face-recognition-sdk/liveness-detection-sdk.md) — standalone face PAD on **8084** / mobile (no matching)
* [**Recognition + Liveness**](/products/face-recognition-sdk/recognition-and-liveness.md) — mobile Identify + 2D liveness, and server match + `/api/liveness` on **8083** (**recommended** for eKYC)

```mermaid
flowchart LR
  Camera --> Detect
  Detect --> Liveness2D
  Liveness2D --> Embedding
  Embedding --> Identify
  Identify --> Result
```

### Features

* [x] Face Detection
* [x] Face Landmark Detection
* [x] Face Template Extraction
* [x] Face Template Matching
* [x] Live 1:N Identify (mobile)
* [x] Liveness Detection (passive 2D on mobile Identify)
* [x] Pose Estimation
* [x] On-premise Face Recognition API (port **8083**)

### Modes

Start with [Capabilities](/products/face-recognition-sdk/capabilities.md), then open a mode.

<table data-view="cards"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td></td><td><strong>Capabilities</strong></td><td>Recognition, liveness, and recognition + liveness in one place.</td><td><a href="/products/face-recognition-sdk/capabilities.md">Capabilities</a></td></tr><tr><td></td><td><strong>Recognition</strong></td><td>Recognition-only server (no /api/liveness).</td><td><a href="/products/face-recognition-sdk/recognition.md">Recognition</a></td></tr><tr><td></td><td><strong>Liveness</strong></td><td>Standalone face anti-spoofing on mobile and port 8084.</td><td><a href="/products/face-recognition-sdk/liveness-detection-sdk.md">Liveness</a></td></tr><tr><td></td><td><strong>Recognition + Liveness</strong></td><td>Mobile + combined server — recommended for eKYC.</td><td><a href="/products/face-recognition-sdk/recognition-and-liveness.md">Recognition + Liveness</a></td></tr></tbody></table>

Typical call order on **mobile**: `setActivation` → `init` → detect / extract template → store templates in **your** database → `similarity` or VideoWorker (live 1:N). Identify default **0.67**. Liveness default **0.5**.

Typical call order on **Linux / Windows**: `GET /api/machinecode` → `POST /api/activate` → `POST /api/detect` / `match` / `similarity`. There is **no** server-side 1:N gallery (`POST /api/identify` does not exist).

### FAQ

**Can face recognition work completely offline?** Yes. After you activate with a license key, matching does not need the internet. See [Capabilities](/products/face-recognition-sdk/capabilities.md).

**Does this SDK include liveness?** Mobile Identify includes passive 2D liveness. For standalone face anti-spoofing, use the [Face Liveness Detection SDK](/products/face-recognition-sdk/liveness-detection-sdk.md). On the server you can use combined [Recognition + Liveness](/products/face-recognition-sdk/recognition-and-liveness/recognition-and-liveness-server/face-recognition-sdk-linux.md), which provides both services on port **8083**.

**Is there a Face Recognition API?** Yes — Linux Docker and Windows HTTP on port **8083**. See [Linux](/products/face-recognition-sdk/recognition/server-sdk/face-recognition-linux-sdk.md), [Windows](/products/face-recognition-sdk/recognition/server-sdk/face-recognition-windows-sdk.md), and combined [Face Recognition + Liveness Linux](/products/face-recognition-sdk/recognition-and-liveness/recognition-and-liveness-server/face-recognition-sdk-linux.md) / [Windows](/products/face-recognition-sdk/recognition-and-liveness/recognition-and-liveness-server/face-recognition-sdk-windows.md).

**Does the server SDK support 1:N identification?** The server SDK does not provide a built-in 1:N gallery or `POST /api/identify` endpoint.

Instead, store face templates in your own database. When you need to identify a person, compare the probe template against your stored templates using `/api/similarity` and determine the best match in your application.

### Use cases

* **Access control** — enroll face templates, then live 1:N Identify at a door or gate (mobile)
* **Attendance** — enroll staff once; match camera frames against your person database
* **App login** — 1:1 selfie match against a stored template (`similarity` / `POST /api/match`)
* **KYC selfie match** — after ID OCR, compare portrait crop to a live selfie (with [Document Recognition](/products/id-document-recognition-sdk.md) and optional [Face Liveness](/products/face-recognition-sdk/liveness-detection-sdk.md))
* **Fraud checks** — still-image detect / match / similarity on your server (port **8083**)

### Related documentation

* [Capabilities](/products/face-recognition-sdk/capabilities.md) · [Recognition](/products/face-recognition-sdk/recognition.md) · [Liveness](/products/face-recognition-sdk/liveness-detection-sdk.md) · [Recognition + Liveness](/products/face-recognition-sdk/recognition-and-liveness.md) · [ID Document SDK](/products/id-document-recognition-sdk.md)
* [Request a License](/help/request-a-license-and-support.md) · [Try it](/getting-started/try-it.md) · [FAQ](/help/resources/faq.md) · [Glossary](/help/resources/glossary.md)
* [Combining products (eKYC)](/getting-started/choose-a-product.md) · [SDK comparison](/help/comparisons.md)
* [Status codes](/help/resources/status-codes.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://doc.faceplugin.com/products/face-recognition-sdk.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `build a script that syncs our docs to a CMS` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
