# Localização de usuário

<mark style="color:green;">`POST`</mark> `https://api.birdid.com.br/v0/oauth/user-discovery`

Informa se um usuário tem uma conta no serviço.

#### Headers

| Name         | Type   | Description      |
| ------------ | ------ | ---------------- |
| Content-Type | string | application/json |
| Accept       | string | application/json |

#### Request Body

| Name            | Type   | Description                                                                                                                                       |
| --------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------- |
| client\_id      | string | Deve conter a identificação da aplicação                                                                                                          |
| client\_secret  | string | Deve ter o secret da aplicação                                                                                                                    |
| user\_cpf\_cnpj | string | Deve conter “CPF” para pessoa física ou “CNPJ” pessoa jurídica                                                                                    |
| val\_cpf\_cnpj  | string | <p>Deve conter o valor do CPF ou CNPJ.<br>Por ser do tipo string, preencha com zeros à esquerda (11 dígitos para CPF e 14 dígitos para CNPJ).</p> |

{% tabs %}
{% tab title="200 " %}
```
{
	"slots": [{
		"slot_alias": "12345678899-1",
		"label": "A3 PESSOAL"
	}, {
		"slot_alias": "12345678899-2",
		"label": "A3 TRABALHO"
	}],
	"status": "S"
}
```
{% endtab %}
{% endtabs %}

#### Recomendações após a descoberta do usuário

* **Não repetir a requisição**: após a primeira descoberta bem-sucedida, não é necessário realizar a requisição novamente em autenticações futuras.
* **Armazenamento permanente**: salvar o **`provider` (PSC)** e, se aplicável, o **`certificate alias`** no cadastro do usuário.
* **Cache para usuários sem certificado**: manter a informação em cache por **2 a 12 horas** antes de refazer a descoberta, evitando chamadas desnecessárias à API.

> ⚠️ **Observação:** esses cuidados ajudam a reduzir a sobrecarga da API e aceleram o fluxo de autenticação para os usuários.
