API REST para um e-commerce de tecnologia desenvolvida utilizando Spring Boot 3 e MySQL. Permite que o usuário acesse e gerencie informações sobre produtos a venda, incluindo consultas com filtragem e paginação, criação, atualização e exclusão de produtos (CRUD completo).
GET /api/produtos
Retorna uma lista de todos os produtos disponíveis.
page
- Número da página desejada (padrão é 0).size
- Tamanho da página (padrão é 100).
GET /api/produtos?page=0&size=10
GET /api/produtos/{id}
Retorna informações sobre um produto específico com base no ID fornecido.
GET /api/produtos/8
GET /api/produtos/categoria/{categoria}
Retorna uma lista de produtos com base na categoria especificada.
- COMPUTADOR
- NOTEBOOK
- SMARTPHONE
- MONITOR
- TECLADO
- MOUSE
- HEADSET
- PLACA_DE_VIDEO
- PROCESSADOR
- MEMORIA_RAM
- ARMAZENAMENTO
- OUTROS
GET /api/produtos/categoria/outros
GET /api/produtos/marca/{marca}
Retorna uma lista de produtos com base na marca especificada.
GET /api/produtos/marca/samsung
POST /api/produtos
Cria um novo produto com base nos dados fornecidos no corpo da solicitação.
{
"categoria": "SMARTPHONE",
"nome": "Samsung Galaxy S21",
"marcaProduto": "Samsung",
"preco": 899.99,
"temDesconto": false,
"precoComDesconto": null,
"parcelas": 10,
"freteGratis": true,
"imgUrl": "https://images.pexels.com/photos/4549408/pexels-photo-4549408.jpeg"
}
PUT /api/produtos/{id}
Atualiza um produto existente com base no ID fornecido e nos dados fornecidos no corpo da solicitação.
{
"id": 6,
"categoria": "PLACA_DE_VIDEO",
"nome": "NVIDIA GeForce RTX 3080",
"marcaProduto": "NVIDIA",
"preco": 2799.99,
"temDesconto": false,
"precoComDesconto": null,
"parcelas": 12,
"freteGratis": false,
"imgUrl": "https://images.pexels.com/photos/6716692/pexels-photo-6716692.jpeg"
}
DELETE /api/produtos/{id}
Exclui um produto existente com base no ID fornecido.
A API retornará respostas com os seguintes códigos de status:
200 OK
: A solicitação foi bem-sucedida.201 Created
: Um novo recurso foi criado com sucesso (usado para POST).204 No Content
: A solicitação de exclusão foi bem-sucedida (usado para DELETE).400 Bad Request
: A solicitação foi malformada ou contém dados inválidos.404 Not Found
: O recurso solicitado não foi encontrado.500 Internal Server Error
: O servidor encontrou um erro interno.
Se você tiver alguma dúvida, sugestão ou encontrar algum problema com esta API, sinta-se à vontade para entrar em contato via LinkedIn - Clique Aqui