> ## Documentation Index
> Fetch the complete documentation index at: https://ajuda.pandazap.com/llms.txt
> Use this file to discover all available pages before exploring further.

# API de Usuários: Crie, Liste e Atualize Contas de Agentes

> Crie contas de agentes, liste usuários com paginação, consulte status online/offline e atualize dados de usuário via API externa do PanÐá Zap.

Use estes endpoints para provisionar e sincronizar contas de **usuários** (agentes e administradores) da plataforma a partir de um sistema externo de RH, onboarding ou integração — sem precisar de acesso manual ao painel.

Todas as requisições exigem o cabeçalho `Authorization: Bearer {BearerToken}`.

***

## Criar usuário

```http theme={null}
POST https://{BaseUrl}/v2/api/external/{ApiID}/createUser
```

```json theme={null}
{
  "email": "usuario@example.com",
  "password": "senha123",
  "name": "Nome do Usuário",
  "profile": "user"
}
```

| Campo      | Tipo   | Obrigatório | Descrição                                                                                                      |
| ---------- | ------ | ----------- | -------------------------------------------------------------------------------------------------------------- |
| `email`    | string | Sim         | Endereço de e-mail de login. Deve ser único dentro do tenant.                                                  |
| `password` | string | Sim         | Senha inicial da conta (mínimo 8 caracteres). Recomenda-se pedir ao usuário para alterá-la no primeiro acesso. |
| `name`     | string | Sim         | Nome completo exibido na plataforma.                                                                           |
| `profile`  | string | Sim         | Papel do usuário — `admin` ou `user`.                                                                          |

***

## Listar usuários

```http theme={null}
GET https://{BaseUrl}/v2/api/external/{ApiID}/listUsers?pageNumber=1
```

| Query param   | Tipo    | Obrigatório | Descrição                                  |
| ------------- | ------- | ----------- | ------------------------------------------ |
| `pageNumber`  | integer | Não         | Número da página a retornar (padrão: `1`). |
| `searchParam` | string  | Não         | Busca por texto livre em nome ou e-mail.   |

***

## Consultar status de um usuário

Retorna se o usuário está online, offline ou ausente no momento.

```http theme={null}
GET https://{BaseUrl}/v2/api/external/{ApiID}/getUserStatus?userId=1
```

| Query param | Tipo    | Obrigatório | Descrição                  |
| ----------- | ------- | ----------- | -------------------------- |
| `userId`    | integer | Sim         | ID do usuário a consultar. |

***

## Atualizar usuário

```http theme={null}
POST https://{BaseUrl}/v2/api/external/{ApiID}/updateUser
```

```json theme={null}
{
  "userId": 1,
  "name": "Nome Atualizado",
  "email": "novoemail@example.com"
}
```

| Campo    | Tipo    | Obrigatório | Descrição                  |
| -------- | ------- | ----------- | -------------------------- |
| `userId` | integer | Sim         | ID do usuário a atualizar. |
| `name`   | string  | Não         | Novo nome de exibição.     |
| `email`  | string  | Não         | Novo endereço de e-mail.   |

***

## Resposta Padrão

```json theme={null}
{
  "success": true,
  "data": { ... }
}
```

Em `createUser`, `data` traz os detalhes do usuário criado. Em `listUsers`, `data` traz o array paginado de usuários.
