# Usuários

{% hint style="warning" %}
Atenção: O **{**&#x74;oken\_da\_plataform&#x61;**}** é disponibilizado pelo administrador da plataforma. Ele pode encontrar seu token acessando a dashboard, na página de: Plataforma > Configurações > Token.
{% endhint %}

<figure><img src="/files/XT39mGzlXn6AORNAhVTE" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
**Importante**: Sempre altere os dados entre chaves com o parâmetro respectivo.&#x20;

**Exemplo prático**:

No metodo estará descrevendo a rota com&#x6F;**:**

URL\_BASE/users/show-id/{id}/{token\_do\_desenvolvedor}/{token\_da\_plataforma}

Como ficará na prática:&#x20;

URL\_BASE/users/show-id/*<mark style="background-color:purple;">66caec96-...432</mark>*/*<mark style="color:green;background-color:purple;">66caec96-4749-...e07ed7</mark>*/*<mark style="background-color:purple;">66caec96-...4324</mark>*

{% endhint %}

## Buscando usuário

#### Busca de usuário por id, e-mail, documento e id de referência.

## Busca por ID.

<mark style="color:blue;">`GET`</mark> `URL_BASE/users/show-id/{id}/{token_do_desenvolvedor}/{token_da_plataforma}`

Nesta rota troque o termo {id} pelo id do usuário que deseja buscar.

{% tabs %}
{% tab title="200: OK Usuário encontrado com sucesso " %}

```javascript
        {
            "id": "UUID",
            "name": "Novo",
            "last_name": "Aluno(a)",
            "email": "aluno@email.com",
            "photo_url": null,
            "document": "000.000.000-00",
            "genre": null,
            "birth": null,
            "phone": null,
            "status": 1,
            "created_at": "YYYY-MM-DD H:i:s",
            "updated_at": "YYYY-MM-DD H:i:s",
            "subscription": {
                "id": "0",
                "tenant_id": 0,
                "active": 1,
                "user_id": "UUID",
                "package_id": "UUID",
                "expiration_date": "YYYY-MM-DD H:i:s",
                "created_at": "YYYY-MM-DD H:i:s",
                "updated_at": "YYYY-MM-DD H:i:s",
            }
        }
```

{% endtab %}

{% tab title="400: Bad Request Usuário não encontrado (Verifique o ID)" %}

{% endtab %}
{% endtabs %}

## Busca por documento.

<mark style="color:blue;">`GET`</mark> `URL_BASE/users/show-document/{document}/{token_do_desenvolvedor}/{token_da_plataforma}`

Nesta rota troque o termo {document} pelo documento do usuário que deseja buscar.

{% tabs %}
{% tab title="200: OK Usuário encontrado com sucesso " %}

```javascript
 {
            "id": "UUID",
            "name": "Novo",
            "last_name": "Aluno(a)",
            "email": "aluno@email.com",
            "photo_url": null,
            "document": "000.000.000-00",
            "genre": null,
            "birth": null,
            "phone": null,
            "status": 1,
            "created_at": "YYYY-MM-DD H:i:s",
            "updated_at": "YYYY-MM-DD H:i:s",
            "subscription": {
                "id": "0",
                "tenant_id": 0,
                "active": 1,
                "user_id": "UUID",
                "package_id": "UUID",
                "expiration_date": "YYYY-MM-DD H:i:s",
                "created_at": "YYYY-MM-DD H:i:s",
                "updated_at": "YYYY-MM-DD H:i:s",
            }
        }
```

{% endtab %}

{% tab title="400: Bad Request Usuário não encontrado (Verifique o documento)" %}

{% endtab %}
{% endtabs %}

## Busca por e-mail.

<mark style="color:blue;">`GET`</mark> `URL_BASE/users/show-email/{email}/{token_do_desenvolvedor}/{token_da_plataforma}`

Nesta rota troque o termo {email} pelo email do usuário que deseja buscar.

{% tabs %}
{% tab title="200: OK Usuário encontrado com sucesso " %}

```javascript
 {
            "id": "UUID",
            "name": "Novo",
            "last_name": "Aluno(a)",
            "email": "aluno@email.com",
            "photo_url": null,
            "document": "000.000.000-00",
            "genre": null,
            "birth": null,
            "phone": null,
            "status": 1,
            "created_at": "YYYY-MM-DD H:i:s",
            "updated_at": "YYYY-MM-DD H:i:s",
            "subscription": {
                "id": "0",
                "tenant_id": 0,
                "active": 1,
                "user_id": "UUID",
                "package_id": "UUID",
                "expiration_date": "YYYY-MM-DD H:i:s",
                "created_at": "YYYY-MM-DD H:i:s",
                "updated_at": "YYYY-MM-DD H:i:s",
            }
        }
```

{% endtab %}

{% tab title="400: Bad Request Usuário não encontrado (Verifique o documento)" %}

{% endtab %}
{% endtabs %}

## Busca por id de referência .

<mark style="color:blue;">`GET`</mark> `URL_BASE/users/show-reference/{reference_id}/{token_do_desenvolvedor}/{token_da_plataforma}`

Nesta rota troque o termo {reference\_id} pelo id de referência do usuário que deseja buscar.

{% tabs %}
{% tab title="200: OK Usuário encontrado com sucesso " %}

```javascript
 {
            "id": "UUID",
            "name": "Novo",
            "last_name": "Aluno(a)",
            "email": "aluno@email.com",
            "photo_url": null,
            "document": "000.000.000-00",
            "genre": null,
            "birth": null,
            "phone": null,
            "status": 1,
            "created_at": "YYYY-MM-DD H:i:s",
            "updated_at": "YYYY-MM-DD H:i:s",
            "subscription": {
                "id": "0",
                "tenant_id": 0,
                "active": 1,
                "user_id": "UUID",
                "package_id": "UUID",
                "expiration_date": "YYYY-MM-DD H:i:s",
                "created_at": "YYYY-MM-DD H:i:s",
                "updated_at": "YYYY-MM-DD H:i:s",
            }
        }
```

{% endtab %}

{% tab title="400: Bad Request Usuário não encontrado (Verifique o documento)" %}

{% endtab %}
{% endtabs %}

## Criando usuário(s)

Então vamos ao método de criação de usuário(s):

**Exemplo de JSON para criação de um ou mais usuários**:

## Criar um ou mais usuários.

<mark style="color:green;">`POST`</mark> `URL_BASE/users/create/{token_do_desenvolvedor}/{token_da_plataforma}`

Usar JSON de exemplo que esta logo abaixo.

{% tabs %}
{% tab title="200: OK Dados enviados para a fila." %}

{% endtab %}
{% endtabs %}

```json
{
	"product_id" : ["123456789"],
	"users": [
		{
		 "name": "Aluno",
		 "last_name":"teste",
		 "email":"aluno@teste.com.br", // dado obrigatório
		 "password": "senhadoalunoopcional", // dado opcional
		 "document":"123.456.789-10",
		 "phone":"(11)99999-9999",
		 "reference_id": "789456123546",
		 "accession_date" : "YYYY-MM-DD",
		},{
		 "name": "Aluno",
		 "last_name":"teste",
		 "email":"aluno@teste.com.br", // dado obrigatório
		 "password": "senhadoalunoopcional", // dado opcional		 
		 "document":"123.456.789-10",
		 "phone":"(11)99999-9999",
		 "reference_id": "789456123546",
		  "accession_date" : "YYYY-MM-DD",
		}
	]
}
```

{% hint style="info" %}
A propriedade product\_id refere-se ao product\_id registrado no plano criado no painel administrador da The Members. Essa propriedade é de extrema importancia. Com esse valor criamos a inscrição do aluno á plataforma do infoprodutor.
{% endhint %}

## Exclusão de usuário

## Excluir por id.

<mark style="color:red;">`DELETE`</mark> `URL_BASE/users/destroy-user-id/{user_id}/{token_do_desenvolvedor}/{token_da_plataforma}`

Após a exclusão do usuário a operação não poderá ser revertida.

{% tabs %}
{% tab title="200: OK Usuário excluído com sucesso." %}

```javascript
{
    // Response
}
```

{% endtab %}

{% tab title="400: Bad Request Usuário não encontrado." %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Excluir por documento.

<mark style="color:red;">`DELETE`</mark> `URL_BASE/users/destroy-document/{document}/{token_do_desenvolvedor}/{token_da_plataforma}`

Após a exclusão do usuário a operação não poderá ser revertida.

{% tabs %}
{% tab title="200: OK Usuário excluído com sucesso." %}

```javascript
{
    // Response
}
```

{% endtab %}

{% tab title="400: Bad Request Usuário não encontrado." %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Excluir por email.

<mark style="color:red;">`DELETE`</mark> `URL_BASE/users/destroy-email/{email}/{token_do_desenvolvedor}/{token_da_plataforma}`

Após a exclusão do usuário a operação não poderá ser revertida.

{% tabs %}
{% tab title="200: OK Usuário excluído com sucesso." %}

```javascript
{
    // Response
}
```

{% endtab %}

{% tab title="400: Bad Request Usuário não encontrado." %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Excluir por id de referência.

<mark style="color:red;">`DELETE`</mark> `URL_BASE/users/destroy-reference-id/{reference_id}/{token_do_desenvolvedor}/{token_da_plataforma}`

Após a exclusão do usuário a operação não poderá ser revertida.

{% tabs %}
{% tab title="200: OK Usuário excluído com sucesso." %}

```javascript
{
    // Response
}
```

{% endtab %}

{% tab title="400: Bad Request Usuário não encontrado." %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://documentation.themembers.dev.br/api-gerenciamento-de-usuarios/referencia-da-api/usuarios.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
