Este projeto fornece uma API REST simples para gerenciar uma lista de presentes, documentada com OpenAPI/Swagger e disponível tanto localmente quanto em ambiente de nuvem (Render).
- Nome: API de Presentes
- Versão: 1.0.0
- Descrição: CRUD de presentes (criar, listar, buscar, atualizar e remover) em memória.
- Documentação interativa:
/docs(Swagger UI)
- URL:
/ - Método: GET
- Descrição: Redireciona para a documentação Swagger.
Exemplo de requisição:
curl -i http://<host>/- URL:
/presentes - Método: GET
- Descrição: Retorna um array com todos os presentes.
Resposta de Sucesso (200):
[
{ "id": 1, "nome": "Bicicleta", "preco": 350.0 }
]-
URL:
/presentes -
Método: POST
-
Descrição: Cria um novo presente em memória.
-
Request Body:
{ "nome": "Livro", "preco": 45.0 }
Resposta de Sucesso (201):
{ "id": 2, "nome": "Livro", "preco": 45.0 }-
URL:
/presentes/{id} -
Método: GET
-
Parâmetros de Rota:
id(integer) — Identificador do presente.
Resposta de Sucesso (200):
{ "id": 1, "nome": "Bicicleta", "preco": 350.0 }Resposta de Erro (404):
{ "erro": "Presente não encontrado" }-
URL:
/presentes/{id} -
Método: PUT
-
Parâmetros de Rota:
id(integer)
-
Request Body:
{ "nome": "Bicicleta Aro 26", "preco": 400.0 }
Resposta de Sucesso (200):
{ "id": 1, "nome": "Bicicleta Aro 26", "preco": 400.0 }-
URL:
/presentes/{id} -
Método: DELETE
-
Parâmetros de Rota:
id(integer)
Resposta de Sucesso (200):
{ "mensagem": "Presente removido com sucesso" }-
Clone o repositório:
git clone https://github.com/Felipai27/api-presentes.git cd api-presentes -
Crie e ative o ambiente virtual:
python -m venv .venv source .venv/bin/activate # Linux/macOS .\.venv\Scripts\activate # Windows
-
Instale as dependências:
pip install --upgrade pip setuptools wheel pip install -r requirements.txt
-
Execute a aplicação:
python app.py
-
Acesse no navegador:
- API root:
http://127.0.0.1:5000/(redireciona para docs) - Documentação:
http://127.0.0.1:5000/docs
- API root:
-
Push no GitHub: sua branch
maincontém o código atualizado. -
Crie um Web Service no Render:
- Build Command:
pip install -r requirements.txt - Start Command:
gunicorn app:app --bind 0.0.0.0:$PORT
- Build Command:
-
Aguarde o deploy e teste:
https://api-presentes-1.onrender.com