Recursos, não ações
Uma API REST modela recursos: coisas que têm identidade (usuários, pedidos, produtos). As rotas são nomeadas com substantivos no plural, e é o método HTTP —não a URL— que indica a ação:
| Ação | Método + rota |
|---|---|
| Listar | GET /usuarios |
| Ver um | GET /usuarios/:id |
| Criar | POST /usuarios |
| Substituir | PUT /usuarios/:id |
| Atualizar parcial | PATCH /usuarios/:id |
| Excluir | DELETE /usuarios/:id |
Evite verbos na rota (/criarUsuario, /excluirUsuario): o verbo já está
no método. Para recursos aninhados, reflita a hierarquia:
GET /usuarios/:id/pedidos // os pedidos de um usuário
GET /usuarios/:id/pedidos/:pid // um pedido específico desse usuário
Códigos de status apropriados
O código de status comunica o resultado da operação:
- 200 OK — requisição correta com corpo (listar, ver, atualizar).
- 201 Created — um recurso foi criado (resposta a um
POST). - 204 No Content — sucesso sem corpo (típico de um
DELETE). - 400 Bad Request — dados de entrada inválidos ou malformados.
- 404 Not Found — o recurso solicitado não existe.
res.status(201).json(novoUsuario); // criado
res.status(204).send(); // excluído, sem corpo
res.status(404).json({ error: "Não encontrado" });
Usar o status correto não é cosmético: os clientes (apps, caches, outros serviços) tomam decisões com base nele.