Skip to content

Gerar token de login transparente

POST
/tenant/login

Gera um token JWT temporário para login transparente (SSO) de um usuário no BI.

Caso de Uso Principal

Este endpoint permite login transparente (Single Sign-On) onde o usuário
é autenticado no seu sistema e redirecionado automaticamente para o BI sem
precisar digitar credenciais novamente.

Validade do Token

Propriedade Valor
Tempo de expiração 1 hora
Uso único Não (pode ser reutilizado até expirar)
Tipo JWT assinado

Importante: O token expira em 1 hora. Gere um novo token a cada sessão do usuário para garantir segurança.

Campos Retornados

Campo Descrição
success Se a operação foi bem sucedida
token Token JWT para autenticação
url URL pronta para redirecionamento/embed

Métodos de Integração

1. Iframe (Embed)

Ideal para embutir o BI dentro do seu sistema:

<iframe src="https://[dominio]/auth/api/[token]?showMenu=0" 
        width="100%" height="600px"></iframe>

2. Redirecionamento

Redirecione o usuário para a URL retornada:

window.location.href = response.url;

3. WebView (Mobile/Desktop)

Use a URL em componentes nativos como WebView.

Parâmetros de URL

A URL retornada aceita query parameters para customização:

Parâmetro Valores Descrição
showMenu 0 / 1 Exibe ou oculta o menu principal
showDesksIcon 0 / 1 Exibe ou oculta o ícone de mesas (padrão: 1)
ref Base64 Redireciona para uma rota específica após login

Deep Linking com ref

Para redirecionar o usuário diretamente para uma página específica:

  1. Codifique a rota em Base64 (ex: /app/report/1L2FwcC9yZXBvcnQvMQ==)
  2. Adicione como parâmetro ref na URL

Exemplo:

https://[dominio]/auth/api/[token]?showMenu=0&ref=L2FwcC9yZXBvcnQvMQ==

Fluxo de Integração Completo

1. Usuário faz login no SEU sistema
2. Seu backend chama POST /tenant/login com o email do usuário
3. Recebe token e URL
4. Exibe iframe ou redireciona o usuário
5. Usuário acessa o BI já autenticado

Construindo Menu Customizado

Quando usar showMenu=0, você pode criar um menu customizado:

  1. Use GET /tenant para listar aplicações e mesas
  2. Use GET /tenant/users para consultar permissões do usuário
  3. Monte links no formato: https://[dominio]/auth/api/[token]?showMenu=0&ref=[base64]

Mensagens de Erro

Mensagem Causa
Usuário não encontrado Login não existe ou não está vinculado ao tenant

Autorizações

tenantBearerAuth

Token de acesso do tenant

TipoHTTP (bearer)

Corpo da Requisição

application/json
JSON
{
"login": "joao.silva@empresa.com"
}

Respostas

Operação processada

application/json
JSON
{
"success": true,
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"url": "https://empresa.horusbi.com.br/auth/api/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...?showMenu=0"
}

Playground

Autorização
Corpo

Exemplos

Desenvolvido por VitePress OpenAPI