O que é um Group
Um Group é uma coleção de projetos vinculados a um único produto SaaS. O Group define um schema template — as tabelas, funções e políticas RLS que todos os tenants desse produto compartilham como estrutura base.
Quando um novo cliente (tenant) se cadastra no seu SaaS, o sistema clona automaticamente o schema template para um schema isolado, provisionando o banco desse cliente em segundos.
Caso de uso: SaaS multi-cliente
Group: crm-saas (slug: crm-saas)
│
├── Schema template: proj_crm-saas
│ ├── contacts
│ ├── deals
│ ├── activities
│ └── (RLS policies)
│
├── Tenant: empresa-alpha → proj_crm-saas_empresa-alpha
├── Tenant: empresa-beta → proj_crm-saas_empresa-beta
└── Tenant: empresa-gamma → proj_crm-saas_empresa-gamma
Cada tenant tem seu schema completamente isolado. Não há risco de vazamento de dados entre clientes.
Criar Group via Admin UI
- Acesse Platform → Groups no Admin UI.
- Clique em + Novo Group.
- Preencha:
- Nome: nome legível do produto (ex: "CRM SaaS")
- Slug: identificador URL-safe (ex:
crm-saas). Imutável após criação. - Projeto template: selecione o projeto cujo schema será clonado para cada novo tenant.
- Clique em Criar group.
Adicionar projetos a um Group
Após criar o Group, você pode vincular projetos existentes a ele:
- Abra o Group em Platform → Groups → [nome do group].
- Na aba Projetos, clique em Associar projeto.
- Selecione o projeto da lista e confirme.
Provisionar o primeiro tenant
Com o Group criado, você pode provisionar tenants. Veja o guia completo em Provisionar um tenant.
Schema template atualizado: Se você adicionar tabelas ao schema template depois de criar tenants, use a API de sync template para propagar as alterações para tenants existentes sem apagar dados.