Consultar cliente
Retorna o cadastro completo de um usuário e as estatísticas de compra dele.
Use esta operação quando você já tem o id do usuário e quer o cadastro inteiro: documento, nome da empresa (PJ), idioma, preferências de contato, status, grupos e campos de perfil. Para achar o id a partir de um e-mail ou documento, use Listar clientes com search, email ou cnpj.
O que a consulta não traz: endereços (veja Endereços), pedidos (Pedidos, com o filtro customer_id) e formas de pagamento (Formas de pagamento do cliente). A senha e o hash nunca saem pela API.
/api/v1/admin/users/{id}AdminConsulta um usuário
Exige view_users ou manage_users.
Path parameters
iduuidobrigatórioExemplo de requisição
curl "$BASE_URL/api/v1/admin/users/3dc023ca-3746-4b6e-8afd-686a4a9af99f" \
-H "Authorization: Bearer $TOKEN"Resposta
{
"id": "3dc023ca-3746-4b6e-8afd-686a4a9af99f",
"email": "contato@paodoce.example.com",
"user_type": "customer",
"status": "A",
"first_name": "Padaria Pão Doce Ltda",
"last_name": "",
"phone": "+551133334444",
"cnpj": "11222333000181",
"legal_name": "Padaria Pão Doce Ltda",
"trade_name": "Pão Doce",
"language": "pt-BR",
"currency": "BRL",
"timezone": "America/Sao_Paulo",
"email_verified": false,
"login_count": 0,
"is_root": false,
"whatsapp_opt_in": false,
"sms_opt_in": false,
"push_opt_in": true,
"notify_on_orders": true,
"account_type": "individual",
"person_type": "J",
"person_type_declared": true,
"display_name": "Pão Doce",
"responsible_name": "João Pereira",
"created_at": "2026-10-11T20:55:51.332285Z",
"updated_at": "2026-10-11T20:56:18.510829Z",
"user_id": "3dc023ca-3746-4b6e-8afd-686a4a9af99f",
"firstname": "Padaria Pão Doce Ltda",
"lastname": "",
"tax_id": "11222333000181",
"timestamp": 1791752151,
"updated_timestamp": 1791752178
}Campos da resposta
iduuiduser_id repete o mesmo valor.emailstringuser_typestringcustomervendoradminroot_adminstatusstringADPA ativo, D desativado, P pendente.first_namestringlegal_name).last_namestringphonestring+55...) quando gravado pela plataforma. Vazio se não informado.avatar_urlstringcpfstringcnpjstringlegal_namestringtrade_namestringstate_regstringperson_typestringFJF física, J jurídica. Sempre preenchido.person_type_declaredbooleantrue se alguém declarou o tipo; false se ele foi deduzido do documento.display_namestringresponsible_namestringcompany_namestringlanguagestringpt-BRenescurrencystringBRL).timezonestringAmerica/Sao_Paulo).email_verifiedbooleanemail_verified_at traz a data (RFC 3339), quando existe.last_login_atstringlogin_count conta os logins.vendor_namestringis_rootbooleanwhatsapp_phonestringwhatsapp_opt_inbooleanmarketing_consent_atstringterms_accepted_atstringprivacy_accepted_atstringsms_opt_inbooleanpush_opt_inbooleannotify_on_ordersbooleanaccount_typestringindividualcorporate_parentsubaccountindividual é uma conta comum; corporate_parent é a conta-mãe de uma empresa B2B; subaccount é um comprador (funcionário) da empresa.created_atstringupdated_at é a última alteração.firstnamestringuser_id, firstname, lastname, tax_id (CPF ou CNPJ), timestamp (cadastro em Unix), updated_timestamp e last_login (Unix, só se já entrou)./api/v1/admin/users/{id}/statsAdminEstatísticas de compra de um usuário
Resume o comportamento de compra do usuário: quantos pedidos, quanto gastou, ticket médio e pontualidade de pagamento. Exige view_users ou manage_users. Dinheiro em centavos.
Path parameters
iduuidobrigatório{
"user_id": "264a70c1-9c69-458d-ac73-838543f87da2",
"total_orders": 12,
"total_paid_orders": 10,
"total_spend_centavos": 482350,
"average_order_value": 48235,
"first_order_at": "2026-02-03T14:20:11Z",
"last_order_at": "2026-10-02T09:41:50Z",
"total_addresses": 2,
"account_age_days": 250,
"payment_punctuality": {
"email": "maria.souza@example.com",
"orders_4_months": 4,
"late_payments_4_months": 0,
"orders_5_years": 12,
"late_payments_5_years": 1,
"overdue_letter": "Y"
}
}Campos da resposta
total_ordersintegertotal_paid_ordersintegertotal_spend_centavosintegeraverage_order_valueintegerfirst_order_atstringlast_order_at é o mais recente.total_addressesintegeraccount_age_daysintegerpayment_punctualityobjectorders_4_months e late_payments_4_months nos últimos 4 meses, orders_5_years e late_payments_5_years nos últimos 5 anos. overdue_letter é a letra do status "pagamento em atraso" da loja. Pode estar ausente.Erros
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem credenciais, chave inválida ou token expirado | {"error":"invalid or expired token"} |
| 403 | Falta view_users/manage_users | {"error":"insufficient privileges","privilege_required_any":["manage_users","view_users"]} |
| 404 | Usuário não existe ou foi excluído | {"error":"user not found"} |
| 500 | Id que não é UUID | {"error":"failed to get user","detail":"o valor \"abc\" não é um uuid válido. Envie o identificador completo, com os 36 caracteres e os hífens. Corrija o campo e reenvie."} |