Referência da API
Listar clientes
Retorna a lista paginada de clientes da sua conta. Suporta busca textual em nome/email/documento. Resultados ordenados por `createdAt DESC` (mais recentes primeiro).
/v2/customerspage Diferente do resto do mundo: `page=0` é a primeira página, não `page=1`. Se você passar `page=1` esperando o primeiro resultado, vai receber o segundo bloco e pular os primeiros 20 clientes.Autenticação
HTTP Basic Auth. Envie sua secret key no header:
Authorization: Basic {base64(secret:SUA_SECRET_KEY)}Parâmetros
pagenumber (query, 0-indexed)opcionalPágina, começando em 0. Padrão: 0.
Exemplo: 0
limitnumber (query)opcionalQuantidade por página. Padrão: 20. Máximo: 100 (valores acima são clampados).
Exemplo: 20
searchstring (query)opcionalBusca textual case-insensitive em `name`, `email` e `document`. Para o `document`, o servidor extrai apenas os dígitos do termo antes de buscar — então `"123.456"` casa com `"12345678901"`.
Exemplo: joão
includeDeletedboolean (query, string)opcionalPasse `true` para incluir clientes arquivados na resposta. Padrão: false (apenas ativos).
Exemplo: true
Respostas
Lista retornada. Campos no result são um subset reduzido (sem endereço, notes ou metadata) — para o objeto completo, faça GET /v2/customers/:id.
{
"result": [
{
"id": "c8a5f4d2-1b3e-4c9f-8a7d-2e5f6c1d4b9a",
"name": "João Silva",
"email": "joao.silva@exemplo.com",
"document": "12345678901",
"phone": "11987654321",
"city": "São Paulo",
"state": "SP",
"deletedAt": null,
"createdAt": "2026-05-26T14:32:01.923Z"
},
{
"id": "d9b6e5f3-2c4f-5d0a-9b8e-3f6g7d2e5c1b",
"name": "Maria Souza",
"email": "maria@exemplo.com",
"document": "98765432100",
"phone": "11912345678",
"city": "Rio de Janeiro",
"state": "RJ",
"deletedAt": null,
"createdAt": "2026-05-25T10:15:00.000Z"
}
],
"totalCount": 42
}Exemplos
# Primeira página (page=0!)
curl -X GET "https://api.pagnovo.com/v2/customers" \
-H "Authorization: Basic $(echo -n 'secret:SUA_SECRET_KEY' | base64)"
# Busca por documento
curl -X GET "https://api.pagnovo.com/v2/customers?search=12345678&limit=50" \
-H "Authorization: Basic $(echo -n 'secret:SUA_SECRET_KEY' | base64)"
# Incluir deletados
curl -X GET "https://api.pagnovo.com/v2/customers?includeDeleted=true" \
-H "Authorization: Basic $(echo -n 'secret:SUA_SECRET_KEY' | base64)"const token = Buffer.from("secret:" + process.env.PAGNOVO_SECRET_KEY).toString("base64");
// Itera todas as paginas — note o page=0 inicial
let page = 0;
const limit = 100;
const all = [];
while (true) {
const res = await fetch(
`https://api.pagnovo.com/v2/customers?page=${page}&limit=${limit}`,
{ headers: { Authorization: `Basic ${token}` } },
);
const { result, totalCount } = await res.json();
all.push(...result);
if (all.length >= totalCount) break;
page++;
}
console.log("total:", all.length);