Documentação da API
Bem-vindo à documentação oficial da API da Pesquisa Eleitoral 2026. Esta API RESTful fornece acesso completo aos dados de pesquisas, entrevistas e relatórios.
📋 Guia Rápido
- Base URL: https://api.pesquisa.devloopz.com.br
- Versão: 1.0.0
- Autenticação: JWT Bearer Token
- Content-Type: application/json
- Encoding: UTF-8
Características
- ✅ Autenticação com JWT
- ✅ CORS habilitado
- ✅ Rate limiting (100 req/min)
- ✅ HTTPS/SSL obrigatório
- ✅ Versionamento de API
Autenticação
Todos os endpoints (exceto health) requerem autenticação via JWT Bearer Token.
Login
Parâmetros
Exemplo de Requisição
curl -X POST https://api.pesquisa.devloopz.com.br/auth/login \
-H "Content-Type: application/json" \
-d '{
"email": "admin@pesquisa2026.com.br",
"senha": "admin123"
}'
Resposta de Sucesso (200)
{
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"usuario": {
"id": 1,
"nome": "Administrador",
"email": "admin@pesquisa2026.com.br",
"role": "admin"
}
}
Usando o Token
Adicione o token retornado em todas as requisições subsequentes:
curl -H "Authorization: Bearer seu_token_aqui" \ https://api.pesquisa.devloopz.com.br/pesquisas
Endpoints Principais
Health Check
Verifica se a API está disponível (não requer autenticação)
curl https://api.pesquisa.devloopz.com.br/health
{
"status": "online",
"versao": "1.0.0",
"timestamp": "2026-06-05T14:30:00.000Z"
}
Pesquisas
Listar todas as pesquisas
curl -H "Authorization: Bearer token" \ https://api.pesquisa.devloopz.com.br/pesquisas
Criar nova pesquisa
Parâmetros
Entrevistas
Criar nova entrevista
Exemplo
{
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"pesquisaId": 1,
"municipioId": 1,
"bairroId": 5,
"latitude": -15.7932,
"longitude": -48.1471,
"dataHoraInicio": "2026-06-05T10:30:00.000Z"
}
Dashboard
Obter estatísticas do dashboard
{
"totalPesquisas": 5,
"totalEntrevistas": 1234,
"entrevistasHoje": 45,
"taxaSincronizacao": 98.5,
"usuariosAtivos": 12
}
Códigos de Erro
| Código | Significado |
|---|---|
200 |
OK - Requisição bem-sucedida |
201 |
Created - Recurso criado |
400 |
Bad Request - Dados inválidos |
401 |
Unauthorized - Token inválido/expirado |
403 |
Forbidden - Sem permissão |
404 |
Not Found - Recurso não encontrado |
500 |
Internal Server Error - Erro do servidor |
Rate Limiting
A API implementa rate limiting para evitar abuso:
- 100 requisições por minuto (por IP)
- 10 requisições por segundo para endpoints críticos
Quando você exceder o limite, receberá:
HTTP/1.1 429 Too Many Requests
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 1717593120
{
"error": "Limite de requisições excedido. Tente novamente em 60 segundos."
}
Suporte
Para dúvidas ou problemas, entre em contato:
Email: support@pesquisa.devloopz.com.br
Volte para o Portal Principal ou acesse os Relatórios