Pular para conteúdo

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}