> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/docs.facephi-pt-br/api-rest/midapi-v2/voice-services/voice-enrollment.md).

# Cadastro de voz

Serviço que gera um modelo de voz a partir dos áudios da captura e devolve o resultado da validação de cada áudio.

### Endpoint

```
POST /biometric/voice/enrollment
```

### Cabeçalhos

| Nome              | Tipo   | Obrigatório | Descrição                                                                                                                   |
| ----------------- | ------ | ----------- | --------------------------------------------------------------------------------------------------------------------------- |
| **Authorization** | string | **Sim**     | Token de consumer no formato `Bearer <token>`. Ver [Autenticação](/docs.facephi-pt-br/api-rest/midapi-v2/autenticacion.md). |
| **consumer-id**   | string | **Sim**     | Identificador do consumer.                                                                                                  |

### Corpo da solicitação

**Content-Type:** `application/json`

#### Parâmetros

| Parâmetro | Tipo  | Obrigatório | Descrição                                           |
| --------- | ----- | ----------- | --------------------------------------------------- |
| `audios`  | array | **Sim**     | Áudios da captura, em Base64, na ordem de gravação. |

#### Exemplo de solicitação

```json
{
  "audios": ["<base64 audio 1>", "<base64 audio 2>", "<base64 audio 3>"]
}
```

### Respostas

#### `200` Sucesso

#### Parâmetros de resposta

| Parâmetro              | Tipo    | Descrição                                                             |
| ---------------------- | ------- | --------------------------------------------------------------------- |
| `consumerId`           | string  | Identificador do consumer que realizou a chamada.                     |
| `transactionId`        | string  | Identificador da transação.                                           |
| `timestamp`            | string  | Carimbo de data e hora da resposta no formato **ISO 8601**.           |
| `message`              | string  | Campo descritivo do resultado da execução do serviço.                 |
| `operationResult`      | integer | Código de resultado da execução do serviço.                           |
| `template`             | string  | Modelo de voz resultante.                                             |
| `templateType`         | string  | Tipo de modelo gerado.                                                |
| `validateAudiosResult` | array   | Resultado por áudio. Ver [Resultado por áudio](#resultado-por-audio). |

#### Resultado por áudio

| Parâmetro                          | Tipo    | Descrição                                     |
| ---------------------------------- | ------- | --------------------------------------------- |
| `audio_position`                   | integer | Posição do áudio na solicitação.              |
| `result_code`                      | integer | Código de resultado do áudio.                 |
| `matching_score`                   | number  | Pontuação de correspondência do áudio.        |
| `snr_db_detected`                  | number  | Relação sinal-ruído detectada, em decibéis.   |
| `speech_length_ms_detected`        | integer | Duração da fala detectada, em milissegundos.  |
| `speech_relative_length_detected`  | number  | Proporção da fala em relação à duração total. |
| `multiple_speakers_score_detected` | number  | Pontuação de detecção de vários falantes.     |

#### Outras respostas

| Código | Descrição                                                          |
| ------ | ------------------------------------------------------------------ |
| `400`  | Campo obrigatório ausente ou áudio em formato não suportado.       |
| `401`  | Token ausente, inválido ou expirado.                               |
| `403`  | O consumer não está provisionado com o serviço `VOICE_ENROLLMENT`. |

O corpo de uma resposta de erro tem o formato descrito em [MIDAPI v2](/docs.facephi-pt-br/api-rest/midapi-v2.md#respuestas-de-error).
