A API Varion é um sistema RESTful para gerenciamento de projetos e tarefas, construído com Node.js, Express, TypeScript e TypeORM. A API fornece endpoints completos para gerenciar projetos, tarefas, comentários, itens de to-do e estados customizáveis.
A documentação interativa da API está disponível através do Swagger UI:
- Desenvolvimento: http://localhost:3001/api-docs
- Produção: https://api.varion.dev/api-docs
O esquema OpenAPI 3.0 completo está disponível em:
- Desenvolvimento: http://localhost:3001/api-docs.json
- Produção: https://api.varion.dev/api-docs.json
A documentação Swagger inclui:
- ✅ Especificação completa de todos os endpoints
- ✅ Esquemas de dados com validações Zod
- ✅ Exemplos de requisições e respostas
- ✅ Interface interativa para testar endpoints
- ✅ Códigos de status e tratamento de erros
- ✅ Agrupamento por funcionalidade (Projects, States, etc.)
POST /- Criar projetoGET /- Listar projetosGET /{code}- Detalhes do projetoPUT /{code}- Atualizar projetoPOST /{code}/comments- Adicionar comentário
POST /- Criar estado customizadoGET /- Listar estadosPUT /{id}- Atualizar estadoDELETE /{id}- Remover estado
POST /projects/todo/{code}- Adicionar item ao projetoPUT /projects/todo/{id}- Atualizar itemDELETE /projects/todo/{id}- Remover item
Todas as respostas da API seguem um padrão consistente:
{
"success": true,
"data": { ... },
"message": "Operação realizada com sucesso"
}{
"success": false,
"error": "VALIDATION_ERROR",
"message": "Dados inválidos fornecidos",
"details": "O campo 'title' é obrigatório"
}| Código | Significado | Uso |
|---|---|---|
200 |
OK | Operação realizada com sucesso |
201 |
Created | Recurso criado com sucesso |
400 |
Bad Request | Dados inválidos ou mal formatados |
404 |
Not Found | Recurso não encontrado |
409 |
Conflict | Conflito (ex: nome já existe) |
500 |
Internal Error | Erro interno do servidor |
A API utiliza Zod para validação rigorosa de dados:
- ✅ Validação de tipos e formatos
- ✅ Mensagens de erro descritivas
- ✅ Validação de parâmetros de rota
- ✅ Validação de corpo da requisição
- ✅ Transformação automática de dados
curl -X POST http://localhost:3001/projects \
-H "Content-Type: application/json" \
-d '{
"title": "Sistema de Vendas",
"description": "Plataforma e-commerce completa",
"deadline": "2024-12-31T23:59:59.000Z"
}'- Acesse a documentação: http://localhost:3001/api-docs
- Explore os endpoints organizados por tags
- Clique em "Try it out" em qualquer endpoint
- Preencha os parâmetros necessários
- Execute e veja a resposta em tempo real
- README do Backend - Configuração e instalação
- README do Frontend - Interface do usuário
- README Principal - Visão geral do projeto
- OpenAPI 3.0 - Especificação da API
- Swagger UI - Interface interativa
- swagger-jsdoc - Geração da documentação
- swagger-ui-express - Servidor da documentação
Esta documentação é gerada automaticamente a partir dos comentários JSDoc no código e esquemas Zod de validação.