{"name":"GPlantio API","version":"2.0.0","description":"API modular para gerenciamento agrícola","modules":[{"name":"Autenticação","version":"2.0.0","description":"Sistema de autenticação JWT com refresh tokens e suporte a múltiplas sessões","basePath":"/api/auth"},{"name":"Diagnóstico","version":"1.0.0","description":"Diagnóstico nutricional de solo","basePath":"/api/diagnostico"},{"name":"Economia","version":"1.0.0","description":"Análise econômica e comparação de insumos","basePath":"/api/economia"},{"name":"Extração de Laudos","version":"2.0.0","description":"Extração de dados de laudos técnicos usando Nanonets","basePath":"/api/extracao"},{"name":"Fazendas","version":"1.0.0","description":"Gerenciamento de fazendas e propriedades rurais","basePath":"/api/fazendas"},{"name":"Laudos","version":"1.0.0","description":"Gerenciamento de laudos técnicos","basePath":"/api/laudos"},{"name":"Token de Máquina","version":"1.0.0","description":"Gerenciamento de identificação única e licenciamento por máquina","basePath":"/api/tokens"},{"name":"Recomendações","version":"1.0.0","description":"Recomendações de adubação e calagem","basePath":"/api/recomendacoes"},{"name":"referencias","version":"1.0.0","description":"","basePath":"/api/"},{"name":"Configurações do Sistema","version":"1.0.0","description":"Gerenciamento de chaves de API, URLs e parâmetros globais","basePath":"/api/config"},{"name":"Talhões","version":"1.0.0","description":"Gerenciamento de talhões e áreas de cultivo","basePath":"/api/talhoes"}],"endpoints":["POST /api/auth/register - Registra novo usuário","POST /api/auth/login - Autentica usuário (suporta múltiplas sessões)","POST /api/auth/refresh - Renova access token","POST /api/auth/logout - Faz logout da sessão atual","GET /api/auth/me - Dados do usuário autenticado (protegido)","PUT /api/auth/me - Atualiza perfil do usuário (protegido)","POST /api/auth/change-password - Altera senha do usuário (protegido)","GET /api/auth/sessions - Lista todas as sessões ativas (protegido)","DELETE /api/auth/sessions/:sessionId - Remove uma sessão específica (protegido)","POST /api/auth/sessions/revoke-others - Remove outras sessões (protegido)","POST /api/auth/sessions/revoke-all - Remove todas as sessões (protegido)","POST /api/diagnostico/gerar - Gera diagnóstico nutricional","GET /api/diagnostico/laudo/:laudoId - Busca diagnóstico por laudo","POST /api/economia - Cria análise econômica","GET /api/economia/:id - Busca análise por ID","GET /api/economia/recomendacao/:recomendacaoId - Busca análise por recomendação","GET /api/economia/custos/listar - Lista todos os custos de insumos","POST /api/economia/custos/comparar - Compara dois insumos","GET /api/economia/custos/agrupar - Agrupa custos por categoria","POST /api/extracao/extrair - Extrai dados de PDF (upload)","POST /api/extracao/url - Extrai dados de PDF (URL)","GET /api/fazendas - Lista todas as fazendas","GET /api/fazendas/:id - Busca uma fazenda","POST /api/fazendas - Cria uma fazenda","PUT /api/fazendas/:id - Atualiza uma fazenda","DELETE /api/fazendas/:id - Exclui uma fazenda","GET /api/laudos - Lista todos os laudos","GET /api/laudos/:id - Busca um laudo","POST /api/laudos - Cria um laudo","PUT /api/laudos/:id - Atualiza um laudo","DELETE /api/laudos/:id - Exclui um laudo","POST /api/laudos/:id/upload - Upload de arquivo","POST /api/tokens/validate/:token - Valida ou registra um token de máquina","GET /api/tokens - Lista todos os tokens registrados (Admin)","POST /api/tokens - Gera um novo token (Admin)","PATCH /api/tokens/:id/status - Atualiza status de um token (Admin)","DELETE /api/tokens/:id - Remove um token (Admin)","POST /api/recomendacoes/gerar - Gera recomendações agronômicas","GET /api/recomendacoes/diagnostico/:diagnosticoId - Busca recomendações por diagnóstico","GET /api/config - Lista todas as configurações","GET /api/config/:key - Obtém uma configuração específica","POST /api/config - Cria ou atualiza uma configuração","DELETE /api/config/:key - Remove uma configuração","GET /api/talhoes/fazenda/:fazendaId - Lista talhões de uma fazenda","GET /api/talhoes/:id - Busca um talhão","POST /api/talhoes - Cria um talhão","PUT /api/talhoes/:id - Atualiza um talhão","DELETE /api/talhoes/:id - Exclui um talhão"]}