Products

REST API

Create a verification session in one call. Your user finishes it in the widget. Your backend reads the result.

What it does

REST API 2.0 lets your backend start verification sessions, read their results, manage tokens, persons and faces, and erase personal data on request. The method groups are KYC, Faces, Persons, Tokens and Users.

Five-step integration

  1. Your backend creates a session with the identifier of your scenario.
  2. Your page opens the widget for that session.
  3. The user completes the steps.
  4. A webhook tells your backend the session is complete.
  5. Your backend reads the status and results.

Create a session

curl -X POST "<API_BASE_URL>/kyc/session/create" \
  -H "Content-Type: application/json" \
  -d '{
    "token": "<your permanent API token>",
    "schemaId": "<your scenario id>"
  }'
const API_BASE_URL = "<API_BASE_URL>";

const res = await fetch(`${API_BASE_URL}/kyc/session/create`, {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    token: "<your permanent API token>",
    schemaId: "<your scenario id>",
  }),
});

const session = await res.json();
console.log(session.sessionId, session.status);
import requests

API_BASE_URL = "<API_BASE_URL>"

res = requests.post(
    f"{API_BASE_URL}/kyc/session/create",
    json={
        "token": "<your permanent API token>",
        "schemaId": "<your scenario id>",
    },
)

session = res.json()
print(session["sessionId"], session["status"])

Replace <API_BASE_URL> with the API address provided with your access.

Six operations

All calls are POST under your API address.

OperationEndpoint
Create session/kyc/session/create
Session status/kyc/session/status
Sessions filter/kyc/sessions/filter
Change status/kyc/session/status/change
Erase personal data/kyc/session/erase
Erasure log/kyc/session/erase/log

Four webhook events

SESSION_COMPLETE, QUESTIONNAIRE_COMPLETE, DATABASE_CHECKS_COMPLETE and PD_ERASURE_COMPLETE. Details are in the webhooks documentation.

Read the documentation

The documentation covers the quick start, authentication and session statuses.

Questions, answered plainly

Which version is the API?

REST API 2.0.

How do I know a call succeeded?

Read the status field in the body of the response. An error can arrive with a successful HTTP code and an error status in the body, so do not treat the HTTP code as the only signal.

Can I receive results without polling?

Yes. Four webhook events tell your system when a session, questionnaire, database check or erasure completes. See the webhooks documentation.

Ready to talk?

Tell us what you are building and we will help you plan the integration.

Talk to us