API REST simples para gerenciamento de produtos, feita em Flask. Permite listar, criar, atualizar e apagar produtos. Os dados ficam armazenados em memória (lista Python), sem banco de dados.
- Listar todos os produtos
- Criar um novo produto
- Atualizar o preço de um produto existente
- Apagar um produto
- Python
- Flask
- Flask-CORS
- Gunicorn (deploy em produção)
- Python 3.10+
- Clone o repositório:
git clone https://github.com/ProfPlatini/api-produtos.git
cd api-produtos- Crie e ative um ambiente virtual:
python -m venv .venv
source .venv/bin/activate # Linux/Mac
.venv\Scripts\activate # Windows- Instale as dependências:
pip install -r requirements.txtpython app.pyA API sobe em http://localhost:8000.
Retorna todos os produtos cadastrados.
Resposta:
[
{ "id": 1, "nome": "Notebook Gamer", "preco": 4000 },
{ "id": 2, "nome": "Cadeira Gamer", "preco": 300 },
{ "id": 3, "nome": "Monitor", "preco": 500 }
]Cria um novo produto.
Corpo da requisição:
{
"id": 4,
"nome": "Teclado Mecânico",
"preco": 250
}Resposta (201):
{
"id": 4,
"nome": "Teclado Mecânico",
"preco": 250
}Atualiza o preço de um produto pelo id.
Corpo da requisição:
{
"preco": 280
}Resposta:
{
"preco": 280
}Se o id não existir, retorna 404:
{
"mensagem": "ID não encontrado"
}Remove um produto pelo id.
Resposta:
{
"mensagem": "Produto removido!"
}Se o id não existir, retorna 404:
{
"mensagem": "ID não encontrado"
}- Os produtos ficam apenas em memória: ao reiniciar a aplicação, a lista volta ao estado inicial (Notebook Gamer, Cadeira Gamer, Monitor).
- Não há persistência em banco de dados nesta versão.
O projeto já inclui gunicorn nas dependências, pronto para deploy em serviços como o Render.
Exemplo de start command:
gunicorn app:appapi-produtos/
├── app.py # API Flask com as rotas de produtos
├── requirements.txt # Dependências do projeto
└── .gitignore