---
title: Быстрый старт
description: Запустите Human Plugin и базу данных PostgreSQL в Docker, создайте процесс Human Token и прочитайте его с помощью curl.
canonical: https://developer.unico.io/ru/human-plugin/get-started/quickstart
locale: ru
generated_by: markdown-export
---

# Быстрый старт

От пустого хоста до первого созданного и полученного процесса за несколько минут.

На этой странице Human Plugin запускается вместе с временным контейнером PostgreSQL для быстрого старта в вашей среде. Для развертывания см. [Docker Compose](/ru/human-plugin/self-hosting/docker-compose) или [Kubernetes](/ru/human-plugin/self-hosting/kubernetes).

## Требования

- Docker 24 или новее на `linux/amd64` или `linux/arm64` (Docker Desktop на macOS подходит).
- Учетные данные реестра и ключ доступа от Unico. См. [Требования и доступ](/ru/human-plugin/get-started/prerequisites).

## 1. Получите образ

Войдите в реестр Unico с вашим именем пользователя и токеном, один раз на каждый хост:

```bash
echo "<token>" | docker login pkg.unico.run -u <username> --password-stdin
```

```bash
docker pull pkg.unico.run/human-plugin-api:latest
```

## 2. Запустите PostgreSQL и Human Plugin

```bash
docker network create human-plugin
```

```bash
docker run -d --name human-plugin-db --network human-plugin \
  -e POSTGRES_USER=human_plugin -e POSTGRES_PASSWORD=human_plugin -e POSTGRES_DB=human_plugin \
  postgres:16
```

Задайте ключ доступа в оболочке, затем запустите Human Plugin:

```bash
export HUMAN_API_ACCESS_KEY='<your access key>'
```

```bash
docker run -d --name human-plugin --network human-plugin --stop-timeout 60 -p 127.0.0.1:8080:8080 \
  -e HUMAN_API_ACCESS_KEY \
  -e POSTGRES_ADDRESS_HOST=human-plugin-db \
  -e POSTGRES_USER=human_plugin \
  -e POSTGRES_PASSWORD=human_plugin \
  -e POSTGRES_SSL_MODE=disable \
  pkg.unico.run/human-plugin-api:latest
```

`POSTGRES_SSL_MODE=disable` подходит только для этой локальной базы данных. Для любой другой оставьте значение по умолчанию, `require`. См. [Конфигурация](/ru/human-plugin/self-hosting/configuration).

Проверьте, что Human Plugin готов:

```bash
curl --fail http://127.0.0.1:8080/health/ready
```

Вы должны увидеть `{"status":"ok"}`. Если команда завершилась ошибкой, причину покажет `docker logs human-plugin`.

<a id="3-create-a-process"></a>

## 3. Создайте процесс

Выберите один из [потоков](/ru/human-plugin/api-reference/create-process#flows). `clientId`, `correlationId` и `credential` одинаковы во всех потоках.

### humantoken (снимок делает человек)

Человек делает селфи в журнее захвата (capture journey). Ответ содержит `link` на него.

```bash
curl -s -X POST http://127.0.0.1:8080/v1/processes \
  -H 'Content-Type: application/json' \
  -d '{
    "flow": "humantoken",
    "clientId": "client-a",
    "correlationId": "quickstart-001",
    "credential": { "type": "DUI_TYPE_NG_BVN", "value": "<document number>" },
    "callbackUri": "https://example.com/callback"
  }'
```

```json
{
  "id": "b063041c-7529-4e70-a2b4-c71c00f19801",
  "state": "PROCESS_STATE_CREATED",
  "token": "<SDK token>",
  "link": "https://…"
}
```

Откройте `link` на телефоне и сделайте селфи. `token` и `link` возвращаются только здесь: Human Plugin их не хранит.

### api+humantoken (селфи отправляете вы)

В вашем бэкенде уже есть селфи, и он отправляет его в `imageBase64`. Ответ окончательный, с Human Token и аналитикой.

```bash
curl -s -X POST http://127.0.0.1:8080/v1/processes \
  -H 'Content-Type: application/json' \
  -d '{
    "flow": "api+humantoken",
    "clientId": "client-a",
    "correlationId": "quickstart-002",
    "credential": { "type": "DUI_TYPE_NG_BVN", "value": "<document number>" },
    "imageBase64": "<base64 selfie>"
  }'
```

```json
{
  "id": "5d1f7c2e-1b8a-4e0f-9a4b-2f6c3d9e8a71",
  "state": "PROCESS_STATE_FINISHED",
  "data": {
    "humanToken": { "value": "6d3d71…", "status": "validated" },
    "ndocs": {
      "distinctClientsCount": 1,
      "transactionsCount": 1,
      "firstSeen": "2026-11-03",
      "lastSeen": "2026-11-03",
      "credentials": [
        { "type": "DUI_TYPE_NG_BVN", "countryCode": "NGA", "distinctCredentialCount": 1 }
      ]
    }
  }
}
```

- `id` — собственный идентификатор процесса в Human Plugin. Сохраните его: это единственный способ прочитать процесс позже.
- `correlationId` — ваша ссылка, и он должен быть уникальным. Повторное использование возвращает `409 CORRELATION_ID_ALREADY_USED`.
- `credential` — документ человека. Передайте `null`, если документа нет. Допустимые типы перечислены в [каталоге атрибутов](/ru/human-plugin/additional-resources/attribute-catalog).
- `data.humanToken` — кто этот человек, а `data.ndocs` — аналитика о человеке: что он делал у вас. См. [Аналитика](/ru/human-plugin/get-started/intelligence).
- При использовании Journey завершенный процесс содержит также `data.liveness`: `live`, если захват выполнил живой человек, и `not_live`, если нет. См. [Результат в `data`](/ru/human-plugin/api-reference/create-process#result).

## 4. Прочитайте процесс

Замените идентификатор на тот, что в вашем ответе:

```bash
curl -s http://127.0.0.1:8080/v1/processes/b063041c-7529-4e70-a2b4-c71c00f19801
```

Journey остается в состоянии `PROCESS_STATE_CREATED`, пока человек не завершит захват. Прочитайте процесс снова после этого: ответ станет `PROCESS_STATE_FINISHED` и будет содержать `data.humanToken`, `data.liveness` и `data.ndocs`. Прежде чем доверять результату, убедитесь, что `data.liveness.value` равно `live`.

## 5. Очистка

```bash
docker rm -f human-plugin human-plugin-db && docker network rm human-plugin
```

## Дальше

- [Потоки](/ru/human-plugin/api-reference/create-process#flows): какой поток использовать и что нужно каждому из них.
- [Создание процесса](/ru/human-plugin/api-reference/create-process): все поля и правила.
- [Интеграция вашего бэкенда](/ru/human-plugin/integrations/backend): что сохранять и как обрабатывать сбои.
- [Human Token Journey](/ru/human-plugin/integrations/human-token-journey): журней захвата.
- Руководства по захвату для [Web](/ru/human-plugin/integrations/web), [Android](/ru/human-plugin/integrations/android), [iOS](/ru/human-plugin/integrations/ios), [Ionic](/ru/human-plugin/integrations/ionic), [React Native](/ru/human-plugin/integrations/react-native) и [Flutter](/ru/human-plugin/integrations/flutter): клиентская часть захвата.
- [Запуск Human Plugin в вашей инфраструктуре](/ru/human-plugin/self-hosting/overview)