Arquitetura Backend-For-Frontend

O BFF Gateway é responsável por blindar a topologia interna do banco de dados e padronizar contratos:

Responsabilidades do BFF

  1. Extração e Mapeamento de Host: Converte o domínio da requisição no partner_id correspondente consultando a tabela connect.partner_brandings.

  2. Injeção Transparente de Contexto: Adiciona os identificadores requeridos nas chamadas às RPCs sem expor essas chaves primárias ao cliente frontend.

  3. Mapeamento Sanitizado de Erros (RFC 7807): Captura exceções do PostgreSQL e emite respostas HTTP padronizadas (application/problem+json), suprimindo nomes de tabelas ou mensagens internas do motor relacional.

  4. Delegação Estrita de RLS e Zero Bypass: É terminantemente vedado o uso de adminSupabase (service_role com privilégio BYPASSRLS) como mecanismo de fallback para consultas de leitura de recursos operacionais (organizações, unidades, instâncias de WhatsApp). As consultas devem ser submetidas com o JWT da sessão do usuário autenticado (serverSupabaseClient(event)), garantindo que as políticas relacionais de RLS e FORCE ROW LEVEL SECURITY governem de modo absoluto o escopo de dados retornado.

  5. Geração Dinâmica de Cards Open Graph & Blindagem SSRF: Provê a rota /api/og para rasterização em tempo real de cards de link preview multi-tenant via @resvg/resvg-js, empacotamento de fontes Inter e validação defensiva de IP/DNS contra SSRF (ver Geração Dinâmica de Cards Open Graph Multi-Tenant).