---
title: "enroll"
method: POST
path: "/gbs-spid-server/people"
tags: ["Enrollment"]
---

# enroll

`POST /gbs-spid-server/people`

## Request

- Base URL: `http://<ip>:8085/gbds/v2`
- URL: `http://<ip>:8085/gbds/v2/gbs-spid-server/people`
- Auth: none declared
- TypeScript: <https://skmtc.dev/griaule/apis/gbds-api/docs/gbs-spid-server/people/post.ts> (a function with typed inputs; its response is checked against the schema)

This method submits the enrollment of a person (client) to the server.

## Request body

- UserTransactionRequest
  - `data` UserTransaction
    - `biometrics` Biometric[]
      - `index` integer
      - `content` string
      - `width` integer
      - `height` integer
      - `resolution` integer
    - `missingBiometrics` MissingBiometric[]
      - `index` integer
      - `type` 'AMPUTATED' | 'UNAVAILABLE'
      - `reason` string
    - `userId` string
    - `operatorId` string
    - `timestamp` integer

## Response `200`

OK

- ExternalResult
  - `id` string
  - `message` string
  - `status` 'OK' | 'SEARCH_PENDING' | 'SEARCH_ENQUEUED' | 'SEARCH_MATCH' | 'SEARCH_NOT_MATCH' | 'SEARCH_FAILED' | 'ENROLL_PENDING' | 'ENROLL_ENQUEUED' | 'ENROLL_CACHE_OK' | 'ENROLL_OK' | 'ENROLL_FAILED' | 'ENROLL_EXCEPTION' | 'DELETE_OK' | 'DELETE_FAILED' | 'DELETE_PENDING' | 'REMOTE_CAPTURE_ACCEPTED' | 'REMOTE_CAPTURE_REFUSED' | 'REMOTE_CAPTURE_PENDING' | 'REMOTE_CAPTURE_AVAILABLE' | 'REMOTE_CAPTURE_STORED' | 'FRAUD' | 'ERROR' | 'ENROLL_REJECTED' | 'PERSON_NOT_FOUND'

## Other responses

- `201`: Created
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `409`: Conflict
- `415`: Unsupported Media Type
- `422`: Unprocessable Entity
- `500`: Internal Server Error
- `503`: Service Unavailable

---

[API](https://skmtc.dev/griaule/apis/gbds-api.md) - [All operations](https://skmtc.dev/griaule/apis/gbds-api/llms.txt) - [OpenAPI document](https://skmtc.dev/griaule/apis/gbds-api/revisions/fa80f482ec5e?raw)
