Runbook - Equipe e Multicontas do Sagazchat

Manual operacional para uma IA ou pessoa gerenciar Configurações Equipe e a funcionalidade multicontas (acesso a varias empresas com um mesmo login).

8 min de leitura Atualizado em 15 de mai. de 2026

Manual operacional para uma IA ou pessoa gerenciar Configurações > Equipe e a funcionalidade multicontas (acesso a varias empresas com um mesmo login).

Status: parcialmente validado em 2026-05-11 na conta exemplo. A conta de teste tem apenas 1 usuario (o proprio admin de exemplo), o que limita o que e possivel inspecionar sem disparar convite real. Lista e modal de convidar estao validados. Edicao de perfil/departamentos de outro usuario fica como [a validar].

1. Onde fica

  • Sidebar: Configurações > Equipe
  • URL da lista: https://app.sagazchat.com/users
  • Endpoint backend: /users (confirmar em proxima rodada).

2. Estrutura da lista

A tela /users mostra:

  • breadcrumb Painel de controle > Equipe;
  • botoes no topo direito: Convites (lista os convites pendentes) e Adicionar usuário;
  • filtros Status e Perfil no topo da tabela;
  • campo de busca Procure por nome;
  • tabela com colunas:
    • Nome
    • Email
    • Perfil (admin ou user)
    • Status (Ativo ou outros)
  • icone de refresh ao lado direito.

Lista de equipe

Quirk validado em 2026-05-11: a linha do proprio usuario logado (admin) nao tem botao de acoes/kebab — ele nao se edita pela UI da lista. Isso bloqueia auditoria de campos de edicao quando a conta so tem 1 admin.

3. Regras de cadastro

Fonte: confirmacao direta do administrador em 2026-05-11 (informacao nao visivel na UI).

  1. Convite por e-mail: o modal Convidar usuário so pede um email.
  2. A pessoa precisa ja ter conta no Sagazchat para o convite funcionar. Convidar um email que nao tem conta nao da acesso. URLs confirmadas pelo administrador em 2026-05-11:
    • Site institucional: https://sagazchat.com
    • Cadastro: https://app.sagazchat.com/cadastro
    • Login: https://app.sagazchat.com/login
  3. Atendentes geralmente usam conta free. A conta free serve apenas para ativar a funcao multicontas — ela nao da acesso direto ao painel sozinha.
  4. Conta free expira em 3 dias se nao for vinculada como multicontas a uma conta paga. Mas a conta como identidade NAO precisa ser recriada — mesmo apos expirar o periodo de teste, ela continua valida para receber/aceitar convites de outras empresas. Corrigido apos feedback do administrador em 2026-05-11.
  5. Apos aceitar o convite, o usuario passa a ver a empresa no seletor Minhas empresas no topo da sidebar (ver § 6).

4. Convidar usuario

4.1 UI

  1. Clicar Adicionar usuário no canto superior direito.

  2. Modal Convidar usuário abre com:

    • campo E-mail para convite (input[name="email"], placeholder “Informe o e-mail”);
    • botoes Cancelar / Convidar.

    Modal Convidar usuário

  3. Preencher email + clicar Convidar.

4.2 Endpoint validado (2026-05-15)

POST https://backend.sagazchat.com/users/invitation
Authorization: Bearer <jwt>
Content-Type: application/json

{"email":"usuario@exemplo.com"}

Resposta de sucesso (status 200):

{"message":"INVITED"}

4.3 Resultado esperado

  • Se o email tem conta Sagazchat → aparece na aba Convites como pendente até o usuário aceitar.
  • Se o email nao tem conta → retorna 200 {"message":"INVITED"} mas nao aparece nos Convites pendentes — o convite é silenciosamente descartado. A pessoa precisa criar conta em https://app.sagazchat.com/cadastro primeiro.

Validado em 2026-05-15 na conta Auto Center Exemplo: 3 convites enviados. Um convidado (tem conta) → apareceu nos pendentes. atendimento e financeiro (sem conta) → retornaram 200 mas nao apareceram.

4.3 Aba Convites

Clicar no botao Convites mostra os convites enviados. Estado validado na conta exemplo: vazia (Nenhum convite).

Aba Convites

5. Perfis e permissoes

Pela coluna Perfil observada, ha dois valores:

  • admin — acesso completo as configuracoes.
  • user — atendente, com acesso limitado (a confirmar quais areas).

Restricoes adicionais por usuario citadas no user-facing original (atendimento/equipe.md antigo): “vincular aos departamentos que atendem” e “restringir funcionalidades específicas”. A UI de edicao com esses campos so aparece em usuarios diferentes do proprio admin logado — nao foi possivel auditar nesta sessao porque a conta lab so tem 1 admin.

[a validar]: campos exatos da edicao, lista de funcionalidades restringiveis, comportamento do checkbox de departamento, se admin pode rebaixar outro admin.

5.bis Editar o proprio cadastro (admin) — via Perfil na sidebar

Caminho descoberto em 2026-05-11: o admin nao se edita pela tela /users (linha sem botao). O caminho correto e:

  1. Clicar no avatar/nome do usuario no rodape da sidebar — logo acima de Suporte. Texto exibido: I (avatar) + exemplo (nome).

    Item de perfil no rodape da sidebar

  2. Popover abre com 4 opcoes:

    • Perfil (estado/visualizacao)
    • Editar perfil — abre modal de edicao
    • Sons de notificações — sliders Volume chat aberto/fechado e Volume mensagens
    • Sair da conta
  3. Clicar Editar perfil abre o modal Editar:

    Modal Editar perfil

    Campos:

    • Nome (input[name="name"])
    • Senha (input[name="password"], deixar vazio mantem a atual)
    • Email (input[name="email"])
    • Departamentos (combobox multi-select, chips com X para remover; opcoes vem de /queue)
    • botao Permissões avançadas
    • botoes Cancelar / Salvar

    No admin lab admin@exemplo.com, os 3 departamentos vinham pre-selecionados (Comercial - Atendente 1, Comercial - Atendente 2, Financeiro/RH).

5.bis.1 Permissoes avancadas — matriz completa

Click Permissões avançadas abre segundo dialog sobre o primeiro. Topo tem switch Ativar permissões avançadas (off por padrao — quando off, o perfil base manda; quando on, valem essas checkboxes granulares).

Dialog Permissões avançadas

Lista completa das areas + acoes (validado em 2026-05-11):

AreaAcoes
Tela principalVer Dashboard · Ver Painel de vendas
Fluxos de conversaVer · Criar · Editar · Deletar
KanbanVer · Criar · Editar · Deletar
Atendimento IAVer · Criar · Editar · Deletar
TransmissãoVer · Criar · Editar · Deletar
AudiênciaVer · Criar · Editar · Deletar
Gerente de gruposVer · Carregar · Ativar
Fluxos de gruposVer · Criar · Editar · Deletar
WebhookVer · Criar · Editar · Deletar
CampanhasVer · Criar · Editar · Deletar
RemarketingVer · Criar · Editar · Deletar
AgendasVer · Criar · Editar · Deletar
Email (Live-Chat)Listar emails · Responder emails
WhatsAppForçar assinatura
InstagramForçar assinatura
EmailForçar assinatura
Empresa (admin)Configuração
Respostas rápidas (admin)Ver · Criar · Editar · Deletar
Etiquetas (admin)Ver · Criar · Editar · Deletar
Equipe (admin)Ver · Criar · Editar · Deletar
Horários (admin)Configurar
Departamentos (admin)Ver · Criar · Editar · Deletar
Fluxo padrão (admin)Configurar
Conexões (admin)Configurar
API (admin)Ver

Total: 22 areas. Areas marcadas (admin) sao tipicamente reservadas para perfil admin — quando “Ativar permissoes avancadas” estiver on para perfil user, marcar essas equivale a dar privilegio admin pontual.

Botoes do dialog: Fechar / Salvar.

Quirk: Forçar assinatura (WhatsApp/Instagram/Email) sao as unicas tres checkboxes em off por padrao no admin master. Indicam restricao ativa quando ligadas.

6. Multicontas — trocar de empresa

O seletor de empresa fica no topo da sidebar, logo abaixo do logo. Mostra o rotulo “Empresa” + o nome da empresa atual + chevron >.

Seletor de empresa (fechado)

Clicar no seletor abre o popover Minhas empresas com:

  • campo de busca Busque por empresa;
  • lista de todas as empresas as quais o usuario tem acesso (incluindo a atual destacada).

Seletor de empresa aberto (popover Minhas empresas)

Exemplo real validado: o login admin@exemplo.com (admin da exemplo) tem acesso a 5 empresas: Empresa A, Empresa B, Empresa C, Empresa D, Empresa E.

Clicar no nome de outra empresa muda toda a sidebar/contexto para aquela conta.

Este e o unico mecanismo de troca de empresa dentro do Sagazchat. Nao ha menu de usuario ou settings — e via sidebar topo.

7. Acoes seguras e perigosas

AcaoImpactoRegra
Abrir listaLeituraSeguro.
Buscar/filtrarLeituraSeguro.
Trocar empresa via seletorMuda contexto da sidebarSeguro, mas atencao: operacoes seguintes afetam a empresa selecionada. Confirmar visualmente que voltou para a esperada.
Convidar email realDispara envio de convite (e cria registro)Nao fazer sem autorizacao. Convite consome assento no plano.
Editar perfil de outro usuarioAltera permissoes/departamentosNao fazer sem ordem explicita.
Remover usuarioTira acesso a empresaDestrutivo, nao fazer sem ordem.

8. Quirks descobertos

  • Admin nao edita a si proprio via UI: linha do usuario logado nao tem botao de acoes.
  • Convite exige conta previa no Sagazchat (regra de negocio, nao validada pela UI — UI aceita qualquer email no campo).
  • Conta free expira em 3 dias se nao for vinculada como multicontas a uma conta paga.
  • Multicontas e a unica forma de atendentes acessarem varias empresas com o mesmo login.
  • Seletor de empresa fica no topo da sidebar, nao em um menu de avatar/usuario (como em outras SaaS).

9. Snippets

9.1 Listar usuarios via API (tentativa)

const v = localStorage.getItem('token');
const token = v?.startsWith('"') ? JSON.parse(v) : v;
const res = await fetch('https://backend.sagazchat.com/users', {
  headers: { Authorization: `Bearer ${token}` },
});
console.log(await res.json());

[a validar] o endpoint exato (pode ser /users, /team, /members etc).

9.2 Listar empresas do login

[a investigar] qual endpoint alimenta o popover Minhas empresas (provavelmente /companies ou /me/companies).

10. Imagens

  • public/media/nova-ui/equipe-lista.png
  • public/media/nova-ui/equipe-modal-convidar.png
  • public/media/nova-ui/equipe-convites.png
  • public/media/nova-ui/equipe-seletor-empresa-fechado.png
  • public/media/nova-ui/equipe-seletor-empresa-aberto.png

11. Pendencias para proxima rodada

  • Convidar email lab → mapear payload do POST + estado na aba Convites + comportamento se conta nao existe. RESOLVIDO 2026-05-15: endpoint POST /users/invitation, payload {"email":"..."}, resposta {"message":"INVITED"}.
  • Apos aceitar convite e haver 2+ usuarios na conta, editar perfil do user lab e mapear:
    • Campos do modal de edicao (perfil, departamentos, restricoes).
    • Endpoint exato (PUT /users/{id} ou similar).
    • Lista exata de funcionalidades restringiveis.
  • Mapear endpoint do popover Minhas empresas.
  • Validar se admin pode rebaixar outro admin a user e vice-versa.

12. Scripts validados

node scripts/sagaz-equipe-mapear.mjs              # lista
node scripts/sagaz-equipe-modal.mjs               # modal Convidar usuário + Convites
node scripts/sagaz-equipe-editar.mjs              # tentativa de editar (falhou: admin nao tem kebab)
node scripts/sagaz-equipe-seletor-empresa.mjs           # popover Minhas empresas
node scripts/sagaz-equipe-convidar-exemplo.mjs           # convite real x3 + captura endpoint (validado 2026-05-15)