## URL da API
URL utilizado para enviar pedidos HTTP:
```url
https://portal.bulkgate.com/api/1.0/otp/verify
```

> [!NOTE]
> Se o pedido não chegar ao destino, repita-o no [servidor de reserva](https://www.bulkgate.com/pt/documentacao/administracao-da-api/servidor-de-reserva/) `backup1.bulkgate.com`.

## Métodos HTTP suportados

- `POST` - `application/json`

```http
POST /api/1.0/otp/verify HTTP/1.1
Host: portal.bulkgate.com
Content-Type: application/json
```

## Tabela de parâmetros

| NOME DO PARÂMETRO    | VALOR                                         | OBRIGATÓRIO | VALOR PREDEFINIDO |
|:------------------|:----------------------------------------------|:----------|:--------------|
| application_id    | [ID da aplicação](https://www.bulkgate.com/pt/documentacao/administracao-da-api/administracao-de-apis/) | **Sim**   | -             | 
| application_token | [Token da aplicação](https://www.bulkgate.com/pt/documentacao/administracao-da-api/tokens-de-api/)	     | **Sim**   | -             |
| id                | ID recebido ao enviar o código de utilização única | **Sim**   | -             |
| code              | Código a verificar                            | **Sim**   | -             |


## Exemplo de pedido

```http-json
POST /api/1.0/otp/verify HTTP/1.1
Host: portal.bulkgate.com
Content-Type: application/json

{
    "application_id": 451,
    "application_token": "NKN02TWE6NfBkfl-your-secret-token-Wf05GaqLIWLW4aBj",
    "id": "otp-id",
    "code": "0000"
}
```

## Resposta

**Em caso de sucesso:**
```json
{
    "data": {
        "id": "otp-id",
        "verified": true
    }
}
```

**Em caso de código inválido:**
```json
{
    "data": {
        "id": "otp-id",
        "verified": false
    }
}
```

**Em caso de erro:**
```json
{
    "type": "unknown_identity",
    "code": 400,
    "error": "Unknown identity",
    "detail": null
}
```

```json
{
    "type": "invalid_input_parameters",
    "code": 400,
    "error": "Invalid input parameters",
    "detail": null
}
```

Em que:

- **type** e **error** (descrição do erro) encontram-se na [tabela de tipos de erros](https://www.bulkgate.com/pt/documentacao/administracao-da-api/tipos-de-erro-api/)
- **code** representa o código de erro HTTP
- **detail** contém informações adicionais sobre o erro
