Skip to main content

API Endpoints

Esta página fornece documentação completa de todos os endpoints disponíveis na API da Ekonavi.

Swagger UI Interativo

Para a documentação mais atualizada e interativa, acesse nossa interface Swagger:

Swagger UI - API Interactive Documentation

A interface Swagger permite:

  • Testar endpoints diretamente no navegador
  • Ver esquemas de dados em tempo real
  • Executar requisições com autenticação
  • Explorar respostas com exemplos

OpenAPI Specification

Baixe a especificação OpenAPI completa:

OpenAPI JSON

Endpoints por Categoria

Autenticação

MétodoEndpointDescrição
POST/api/auth/login-email-passwordLogin com email e senha
POST/api/auth/google-loginIniciar login com Google OAuth
GET/api/auth/google-callbackCallback do Google OAuth
POST/api/auth/wallet-connectConectar carteira Ethereum
POST/api/auth/refreshRenovar token JWT
POST/api/auth/logoutLogout e invalidar token

Agricultores

MétodoEndpointDescrição
GET/api/farmersListar agricultores
POST/api/farmersCriar novo agricultor
GET/api/farmers/{id}Obter agricultor por ID
PUT/api/farmers/{id}Atualizar agricultor
DELETE/api/farmers/{id}Remover agricultor
GET/api/farmers/{id}/practicesPráticas de um agricultor
GET/api/farmers/profilePerfil do agricultor logado

Práticas Sustentáveis

MétodoEndpointDescrição
GET/api/practicesListar práticas sustentáveis
POST/api/practicesRegistrar nova prática
GET/api/practices/{id}Obter prática por ID
PUT/api/practices/{id}Atualizar prática
DELETE/api/practices/{id}Remover prática
GET/api/practices/typesTipos de práticas disponíveis

Verificações

MétodoEndpointDescrição
GET/api/verificationsListar verificações
POST/api/verificationsCriar nova verificação
GET/api/verifications/{id}Obter verificação por ID
PUT/api/verifications/{id}Atualizar status da verificação
POST/api/verifications/{id}/approveAprovar verificação
POST/api/verifications/{id}/rejectRejeitar verificação

Verificadores

MétodoEndpointDescrição
GET/api/verifiersListar verificadores
POST/api/verifiersCadastrar novo verificador
GET/api/verifiers/{id}Obter verificador por ID
PUT/api/verifiers/{id}Atualizar verificador
GET/api/verifiers/{id}/certificationsCertificações do verificador

Tokens e Recompensas

MétodoEndpointDescrição
GET/api/tokens/balance/{address}Saldo de tokens de uma carteira
POST/api/tokens/mintMintar tokens de recompensa
GET/api/tokens/transactionsHistórico de transações
POST/api/tokens/transferTransferir tokens
GET/api/rewards/leaderboardRanking de recompensas

Dados Públicos

MétodoEndpointDescrição
GET/api/public/statsEstatísticas gerais da plataforma
GET/api/public/farmers/countNúmero total de agricultores
GET/api/public/practices/countNúmero total de práticas registradas
GET/api/public/verifications/countNúmero total de verificações
GET/api/public/tokens/total-supplyOferta total de tokens
GET/api/public/impact/carbon-offsetTotal de carbono compensado

Administração

MétodoEndpointDescrição
GET/api/admin/dashboardDashboard administrativo
GET/api/admin/usersListar todos os usuários
PUT/api/admin/users/{id}/roleAlterar role de usuário
GET/api/admin/system/healthStatus de saúde do sistema
GET/api/admin/logsLogs do sistema

Schemas de Dados

Para informações detalhadas sobre os schemas de request/response, consulte:

Rate Limiting

Todos os endpoints possuem limitação de taxa:

  • Usuários autenticados: 1000 req/hora
  • Usuários anônimos: 100 req/hora
  • Dados públicos: 200 req/hora

Status Codes

CodeSignificado
200Sucesso
201Criado
400Requisição inválida
401Não autorizado
403Proibido
404Não encontrado
429Limite de taxa excedido
500Erro interno

Próximos Passos