# Listar pessoas

{% hint style="info" %}
Assista ao uso dessa API com exemplos [**no final dessa página**](/zeev/apis/all/access/people/list.md#video-de-exemplo-de-uso).
{% endhint %}

## Como listar os dados de cadastro de todas as pessoas utilizando API do Zeev?

Para obter os dados de cadastro de pessoas utilizando API, siga os passos abaixo:

1. **Autenticação**: Primeiro obtenha um [token de autenticação](/zeev/apis/como-utilizar-as-apis-do-zeev/como-gerar-tokens-para-autenticar-nas-apis.md) com permissão para acessar esse tipo de informação. Podem existir configurações que limitem o acesso do usuário ao cadastro e o resultado da consulta neste cenário não representaria a lista completa de pessoas cadastradas, como por exemplo o [controle de acesso por regras hierárquicas](/zeev/outras-configuracoes-avancadas/menu-configurar-do-sistema/como-definir-regras-de-controle-de-acessos.md#controlar-acesso-a-listas-de-pessoas-a-partir-de-regras-hierarquicas).
2. **Enviar a Requisição**: Utilize o endpoint [#api-2-users](#api-2-users "mention") para enviar a requisição conforme modelo e exemplo (troque seu\_endereco.do.zeev pelo endereço que você usa para acessar o Zeev):
3. **Paginar:** Observe que a consulta à essa API retorna um número limitado de registros; para obter todos os dados, [será necessário implementar um algoritmo de paginação](/zeev/apis/como-utilizar-as-apis-do-zeev/como-navegar-entre-paginas-de-retornos-de-apis.md)
4. ***Rate limit:*** Se for paginar os resultados, [respeite os limites máximos de solicitações](/zeev/apis/como-utilizar-as-apis-do-zeev/como-controlar-o-volume-maximo-de-requisicoes-a-apis.md);;
5. **oData**: opcionalmente, utilize [regras oData](/zeev/apis/como-utilizar-as-apis-do-zeev/como-realizar-filtros-e-manipulacoes-adicionais-nas-apis-com-odata.md) para manipular o resultado da API. Essa API aceita `$filter`, `$select`, `$orderby` e `$top`.

{% openapi src="/files/DYIxvabeLXa2mL6uE2si" path="/api/2/users" method="get" %}
[ZeevApi's\_new.json](https://3371003943-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MD66pBdRalAQgnhNstG%2Fuploads%2Ff5huLIsAqm88oSjkTavv%2FZeevApi's_new.json?alt=media\&token=aae47f9f-90ca-48d0-b250-fc38fe74e6c0)
{% endopenapi %}

Exemplos de consulta de pessoas utilizando API

{% tabs %}
{% tab title="Node.js" %}

```javascript
let pageNumber = 1;
let isActive = true;

const myHeaders = new Headers();
myHeaders.append("Accept", "application/json");
myHeaders.append("Content-Type", "application/json");
myHeaders.append("Authorization", "Bearer TOKEN_DO_USUARIO");

const requestOptions = {
  method: "GET",
  headers: myHeaders
};

try {
  const response = await fetch(`https://seu_endereco.do.zeev/api/2/users?pageNumber=${pageNumber}&isActive=${isActive}`, requestOptions);
  const result = await response.json();
  console.log(result)
} catch (error) {
  console.error(error);
};

/*
    Além dos parâmetros ja especificados, 
    é possível fazer mais filtros com oData, 
    veja alguns exemplos que podem ser incluidos na requisiço
    e experimente um ou uma combinação deles:
*/
let urlAddress = `https://seu_endereco.do.zeev/api/2/users?pageNumber=${pageNumber}&isActive=${isActive}`;
// - Configurar a requisição para retornar apenas os 100 primeiros registros
urlAddress = `${urlAddress}&$top=100`;
// - Configurar a requisição para retornar apenas as informações de id, nome e e-mail das pessoas
urlAddress = `${urlAddress}&$select=id,name,email`;
// - Configurar a requisição para retornar apenas pessoas cuja o e-mail contenha Zeev
urlAddress = `${urlAddress}&$filter=contains(email,'@zeev')`;
// - Configurar a requisição para retorndar os dados ordenados por data de criação
urlAddress = `${urlAddress}&$orderby=createDate asc`;

```

{% endtab %}
{% endtabs %}

***

## **Vídeo de exemplo de uso**

{% embed url="<https://youtu.be/TuDiaL0-dh8>" %}

## **Links relacionados**:

* [O que é preciso para fazer integrações do Zeev para outros sistemas?](/zeev/integracoes/o-que-e-preciso-para-fazer-integracoes.md)
* [Como autenticar nas APIs do Zeev](/zeev/apis/como-utilizar-as-apis-do-zeev/como-gerar-tokens-para-autenticar-nas-apis.md)
* [Como controlar o volume máximo de requisições à APIs](/zeev/apis/como-utilizar-as-apis-do-zeev/como-controlar-o-volume-maximo-de-requisicoes-a-apis.md)
* [Como acessar o Swagger / OpenAPI](/zeev/apis/como-utilizar-as-apis-do-zeev/como-acessar-o-swagger-openapi.md)
* [Como listar, filtrar e editar pessoas](/zeev/usuarios-e-permissoes/gerenciar-usuarios/como-filtrar-e-editar-usuarios.md)


---

# 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://kb.stoque.com.br/zeev/apis/all/access/people/list.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.
