API Backend — Hoteis & Pousadas
Visao Geral
O backend expoe duas camadas: API Core (/api/*) para CRUD direto e BFF (/bff/*) para o frontend.
Base URL: http://localhost:5020
API Core (/api/*)
Hotels
| Metodo |
Path |
Descricao |
| POST |
/api/hotels |
Criar hotel |
| GET |
/api/hotels |
Listar hoteis |
| GET |
/api/hotels/{id} |
Obter hotel |
| GET |
/api/hotels/cnpj/{cnpj} |
Buscar por CNPJ |
| GET |
/api/hotels/search |
Pesquisar hoteis |
| PUT |
/api/hotels/{id} |
Atualizar hotel |
| DELETE |
/api/hotels/{id} |
Deletar hotel |
Reservations
| Metodo |
Path |
Descricao |
| GET |
/api/reservations |
Listar reservas |
| GET |
/api/reservations/{id} |
Obter reserva |
| GET |
/api/reservations/code/{code} |
Buscar por codigo |
| GET |
/api/reservations/customer/{id} |
Reservas do cliente |
| POST |
/api/reservations |
Criar reserva |
| PUT |
/api/reservations/{id} |
Atualizar reserva |
| POST |
/api/reservations/{id}/confirm |
Confirmar |
| POST |
/api/reservations/{id}/check-in |
Check-in |
| POST |
/api/reservations/{id}/check-out |
Check-out |
| POST |
/api/reservations/{id}/cancel |
Cancelar |
Rooms
| Metodo |
Path |
Descricao |
| GET |
/api/rooms |
Listar quartos |
| GET |
/api/rooms/{id} |
Obter quarto |
| GET |
/api/rooms/available |
Quartos disponiveis |
| POST |
/api/rooms |
Criar quarto |
| PUT |
/api/rooms/{id} |
Atualizar quarto |
| PATCH |
/api/rooms/{id}/status |
Mudar status |
| DELETE |
/api/rooms/{id} |
Deletar quarto |
Customers
| Metodo |
Path |
Descricao |
| GET |
/api/customers |
Listar clientes |
| GET |
/api/customers/{id} |
Obter cliente |
| GET |
/api/customers/email/{email} |
Buscar por email |
| POST |
/api/customers |
Criar cliente |
| PUT |
/api/customers/{id} |
Atualizar cliente |
| DELETE |
/api/customers/{id} |
Deletar cliente |
Payments
| Metodo |
Path |
Descricao |
| GET |
/api/payments/reservation/{id} |
Pagamentos da reserva |
| GET |
/api/payments/{id} |
Obter pagamento |
| POST |
/api/payments |
Criar pagamento |
| POST |
/api/payments/{id}/process |
Processar pagamento |
| POST |
/api/payments/{id}/refund |
Reembolsar |
Venues
| Metodo |
Path |
Descricao |
| GET |
/api/venues |
Listar ambientes |
| GET |
/api/venues/{id} |
Obter ambiente |
| GET |
/api/venues/available |
Ambientes disponiveis |
| POST |
/api/venues |
Criar ambiente |
| PUT |
/api/venues/{id} |
Atualizar |
| DELETE |
/api/venues/{id} |
Deletar |
Breakfast
| Metodo |
Path |
Descricao |
| GET |
/api/v1/breakfast/config |
Config do cafe |
| PUT |
/api/v1/breakfast/config |
Atualizar config |
| GET |
/api/v1/breakfast/orders |
Listar pedidos |
| POST |
/api/v1/breakfast/orders |
Criar pedido |
| POST |
/api/v1/breakfast/orders/{id}/deliver |
Marcar entregue |
Housekeeping
| Metodo |
Path |
Descricao |
| GET |
/api/v1/housekeeping/tasks |
Listar tarefas |
| POST |
/api/v1/housekeeping/tasks |
Criar tarefa |
| PUT |
/api/v1/housekeeping/tasks/{id}/assign |
Atribuir |
| POST |
/api/v1/housekeeping/tasks/{id}/start |
Iniciar |
| POST |
/api/v1/housekeeping/tasks/{id}/complete |
Concluir |
| POST |
/api/v1/housekeeping/tasks/{id}/verify |
Verificar |
Ledger
| Metodo |
Path |
Descricao |
| GET |
/api/ledger |
Listar lancamentos |
| POST |
/api/ledger |
Criar lancamento |
| GET |
/api/ledger/dre |
Relatorio DRE |
| GET |
/api/ledger/cost-centers |
Centros de custo |
BFF (/bff/*)
Auth
| Metodo |
Path |
Descricao |
| POST |
/bff/auth/login |
Login |
| POST |
/bff/auth/signup |
Cadastro |
| POST |
/bff/auth/select-hotel |
Selecionar hotel |
| GET |
/bff/auth/me |
Dados do usuario |
Dashboard
| Metodo |
Path |
Descricao |
| GET |
/bff/dashboard |
KPIs e metricas |
| GET |
/bff/dashboard/occupancy |
Taxa de ocupacao |
| GET |
/bff/dashboard/revenue |
Receita |
Public (Pagina de Booking)
| Metodo |
Path |
Descricao |
| GET |
/bff/public/{slug} |
Info do hotel |
| GET |
/bff/public/{slug}/rooms |
Quartos disponiveis |
| GET |
/bff/public/{slug}/availability |
Verificar disponibilidade |
| POST |
/bff/public/{slug}/reservation |
Criar reserva publica |
Upload
| Metodo |
Path |
Descricao |
| POST |
/bff/upload |
Upload de arquivo para Vault |
Webhooks
CoinKeeper (Pagamentos)
POST /payments/webhook/payment-confirmation
Headers:
X-Webhook-Signature: HMAC-SHA256
X-Webhook-Timestamp: Unix timestamp
X-Idempotency-Key: UUID
Autenticacao
Todas as requisicoes (exceto /bff/public/* e webhooks) exigem:
Authorization: Bearer {jwt_token}
X-Hotel-Id: {hotel_uuid}