Skip to content

Latest commit

 

History

History
64 lines (44 loc) · 1.53 KB

File metadata and controls

64 lines (44 loc) · 1.53 KB

Boilerplate Python - FastAPI

Este boilerplate utiliza FastAPI para criar o endpoint de processamento de eventos.

📦 Instalação

# Criar ambiente virtual (recomendado)
python -m venv venv

# Ativar ambiente virtual
# No macOS/Linux:
source venv/bin/activate
# No Windows:
# venv\Scripts\activate

# Instalar dependências
pip install -r requirements.txt

🚀 Executar

uvicorn main:app --reload

Nota: uvicorn é o servidor ASGI usado para executar aplicações FastAPI. O parâmetro --reload habilita o modo de desenvolvimento com recarregamento automático ao salvar alterações.

O servidor estará disponível em http://localhost:8000

📝 Endpoint

POST /events

Recebe uma lista de eventos e processa as atualizações nos pedidos.

Request Body:

[
  {
    "order_id": 1,
    "status": "SHIPPED",
    "date": "2025-10-15T11:22:17.717Z"
  }
]

🔧 Implementação

Edite o arquivo main.py e implemente a lógica de processamento dos eventos na função process_events().

Você precisará:

  1. Processar todos os eventos da lista
  2. Para order_id duplicados, manter apenas o evento mais recente (baseado na data)
  3. Verificar se o pedido já possui status finalizador (DELIVERED, FAILURE) antes de atualizar
  4. Implementar a lógica de atualização dos pedidos (a escolha de como armazenar/atualizar é sua)

📚 Documentação

A documentação interativa da API estará disponível em:

  • Swagger UI: http://localhost:8000/docs
  • ReDoc: http://localhost:8000/redoc