Painel de controle → Integrações — conecte fontes de conteúdo e canais de acesso ao conhecimento.


#Fontes de conteúdo

#Conectadas (sempre ativas)

Fonte Descrição
LiKE Editor Editor de IA integrado para criar artigos
Importação de arquivos Envie PDF, DOCX, TXT, MD, RTF, ZIP
Importação por link Google Docs, Dropbox, links diretos de arquivos

#Conectores disponíveis

Fonte Descrição Modo
Wiki.js Importar ou sincronizar artigos Sincronização / Importação
Confluence Importar do Atlassian Confluence Cloud (OAuth) Sincronização / Importação
Notion Importar páginas e bancos de dados Sincronização / Importação
GitHub Sincronizar arquivos Wiki e Markdown de repositórios Sincronização / Importação
GitLab Sincronizar arquivos Wiki e Markdown de projetos Sincronização / Importação
Gitea Sincronizar arquivos Wiki e Markdown de um Gitea auto-hospedado Sincronização / Importação
Site de documentação Site público através do seu sitemap Sync

#Conectando o GitHub

#Passo 1 — Autorização

  1. No LiKE, vá para Integrações → GitHub → "Conectar"
  2. Escolha um método de autorização:
Método Descrição
Personal Access Token (PAT) Crie um token em GitHub → Settings → Developer settings → Personal access tokens. Fine-grained (recomendado): Repository access + Permissions → Contents: Read-only (Metadata: Read é adicionado automaticamente); para repositórios de organização, o token deve ser aprovado pelo owner da organização. Classic: escopo repo. Enterprise: especifique o Base URL https://HOST/api/v3
OAuth Autorização via GitHub App — clique em "Authorize" e confirme o acesso

#Passo 2 — Escolhendo o conteúdo

  1. Após conectar, é mostrada uma árvore do repositório com pastas e arquivos
  2. Marque os arquivos ou pastas específicos a importar (Selective Sync)
  3. Formatos suportados: .md, .mdx, páginas Wiki

#Passo 3 — Executando a sincronização

  1. Clique em "Sync"
  2. O progresso é mostrado em tempo real
  3. Ao concluir, os artigos aparecem na lista com um rótulo GitHub

#Conectando o GitLab

#Passo 1 — Autorização

  1. No LiKE, vá para Integrações → GitLab → "Conectar"
  2. Escolha um método de autorização:
Método Descrição
Personal Access Token (PAT) Crie um token em GitLab → Preferences → Access Tokens. Escopos: api e read_user; a função do token deve ser no mínimo Reporter (Guest não consegue ver o código). Funciona para GitLab.com e auto-hospedado (para auto-hospedado, especifique o Base URL da instância)
OAuth Autorização via GitLab Application — clique em "Authorize"

#Passo 2 — Escolhendo o conteúdo

  1. É mostrada uma árvore do projeto com páginas Wiki e arquivos Markdown
  2. Marque as páginas específicas a importar (Selective Sync)

#Passo 3 — Executando a sincronização

Igual ao GitHub — clique em "Sync" e aguarde a conclusão.


#Conectando o Gitea

O Gitea é uma plataforma git auto-hospedada. Ele se conecta por meio de um Personal Access Token e uma URL obrigatória da sua instância (não há um Gitea em nuvem por padrão).

#Passo 1 — Crie um token no Gitea

  1. No Gitea, abra Settings → Applications → Generate New Token
  2. Conceda os escopos read:repository e read:user
  3. Copie o token

#Passo 2 — Conecte no LiKE

  1. No LiKE, vá para Integrações → Gitea → "Conectar"
  2. Especifique o Base URL da sua instância (por exemplo https://gitea.company.com) — este campo é obrigatório; sem ele a conexão não é concluída
  3. Cole o token
  4. Escolha um espaço/coleção e um modo (Sync — um espelho contínuo / Import — uma cópia única)

O OAuth 2.0 também é suportado se o administrador do Gitea tiver configurado previamente um aplicativo OAuth. O caminho principal é o token.

#Passo 3 — Escolhendo o conteúdo e sincronizando

  1. É mostrada uma árvore do repositório com páginas Wiki e arquivos Markdown (.md, .mdx)
  2. Marque os nós de que você precisa (Selective Sync) e clique em "Sync"
  3. Para atualizações automáticas em cada push, configure um webhook — o segredo é gerado no cartão do conector. Os artigos do Gitea são somente leitura (como com GitHub/GitLab)

#Seleção de arquivos e filtros de sincronização (GitHub, GitLab, Gitea)

Para fontes git (GitHub, GitLab e Gitea), a lógica de escolher o que sincronizar é mais sutil do que um simples "repositório ligado/desligado":

#O que é sincronizado

Fonte dentro do repositório Incluída
Páginas Wiki (<repo>.wiki) Por padrão, todas as páginas Wiki do repositório selecionado
Arquivos Markdown na árvore principal (*.md, *.mdx) Por padrão, todos os arquivos Markdown, a menos que filtros estejam configurados
README.md Incluído como um artigo separado com o título = <repo-name> · README
Documentação em /docs/** Incluída se a pasta existir; o nome do artigo é extraído do título # ... ou do nome do arquivo
Arquivos que não sejam Markdown (.txt, .rst, .json, código) Não são sincronizados automaticamente — o LiKE não analisa formatos arbitrários

#Filtros de caminho (sincronização seletiva)

Você pode restringir exatamente o que extrair do repositório:

Filtros de caminho
+ docs/** + guides/*.md − internal/**
Apenas arquivos de docs/ e guides/, excluindo internal/
Prefixo Ação
+ path/pattern Include — incluir arquivos por padrão (sintaxe glob)
- path/pattern Exclude — excluir arquivos da sincronização
(vazio) Sem filtros: todo o Wiki + todos os .md/.mdx no repositório

#Detecção de alterações (mudanças recentes)

O LiKE não "baixa tudo" a cada execução. É usada a detecção de alterações:

  • GitHub — via webhook (recomendado) ou polling usando cabeçalhos If-Modified-Since. O webhook reage a um push instantaneamente; o polling — a cada 6/12/24/48 horas (depende da sincronização automática).
  • GitLab — da mesma forma: webhook ou polling por last_activity_at via a Projects API.
  • Gitea — webhook (assinatura X-Gitea-Signature) ou polling. O gatilho de push dispara apenas quando *.md/*.mdx muda.

Assim que uma alteração é detectada, apenas os arquivos afetados são sincronizados; o restante do corpus não é recalculado. Isso economiza bastante a cota da API do GitHub/GitLab e o tempo de execução.

#Branch e tags

Parâmetro Valor padrão
Branch A branch padrão do repositório (geralmente main / master)
Branch alternativa Pode ser especificada explicitamente (por exemplo, sincronizar com release/v2)
Sincronização por tag Opcional: sincronização por uma tag de versão (por exemplo, a documentação da versão v3.0)
Multi-branch Pro+: você pode sincronizar várias branches em paralelo como artigos diferentes

#Histórico e conflitos

  • Histórico de sincronização — a aba "History" no cartão do conector: data, status (✅ ok / ⚠ avisos / ❌ erro), o número de artigos adicionados / atualizados / excluídos, a duração da execução. Útil para depurar "por que um artigo do repositório não apareceu".
  • Conflitos de edição — se um artigo da fonte foi editado no LiKE (para GitHub/GitLab isso não é permitido por padrão — os artigos são somente leitura). Se o modo for Import (uma cópia única), os artigos tornam-se editáveis e o vínculo com a fonte é rompido.

#Selective Sync para outros conectores

Notion, Confluence, Wiki.js — eles têm sua própria lógica de seleção (uma árvore de páginas), mas o princípio é o mesmo:

  1. Ao conectar, é mostrada a árvore de conteúdo da fonte
  2. Caixas de seleção — marque os nós de que precisa
  3. O restante não é importado
  4. Em uma nova sincronização, apenas os itens selecionados são atualizados

#Conectando o Wiki.js

#Passo 1 — Obtenha um token de API do Wiki.js

  1. Abra o seu Wiki.js → AdministrationAPI Access
  2. Ative a API (se estiver desativada)
  3. Clique em New API Key
  4. Nomeie a chave (por exemplo LiKE Integration)
  5. Grupo: Administrators (é necessário acesso a todas as páginas)
  6. Expiração: sem expiração ou 1 ano
  7. Copie o token gerado

#Passo 2 — Conecte no LiKE

  1. No LiKE, vá para Integrações → Wiki.js → "Conectar"
  2. Insira a URL do seu Wiki.js (por exemplo https://wiki.company.com)
  3. Cole o token de API
  4. Escolha um modo:
Modo Descrição
Sync Um vínculo contínuo — as alterações no Wiki.js aparecem no LiKE automaticamente
Import Uma cópia única de todos os artigos
  1. Clique em Salvar

#Passo 3 — Configure a sincronização

Parâmetro Descrição
Sincronização automática Ativar/desativar atualizações automáticas
Intervalo A cada 6, 12, 24 ou 48 horas
Idioma Filtro pelo idioma do artigo (todos / específico)

#Conectando o Confluence

O Confluence se conecta por meio de OAuth 2.0 — autorização segura sem inserir senhas.

#Passo 1 — Clique em "Conectar Confluence"

  1. No LiKE, vá para Painel de controleIntegrações
  2. Encontre o cartão do Confluence → clique em "Conectar"
  3. A janela de autorização da Atlassian é aberta

#Passo 2 — Autorize na Atlassian

  1. Faça login na sua conta Atlassian (se ainda não fez)
  2. A Atlassian mostra uma solicitação: "O LiKE está solicitando acesso ao seu Confluence"
  3. Revise as permissões — o LiKE solicita somente leitura: o conteúdo das páginas e a lista de espaços
  4. Clique em "Accept"

#Passo 3 — Você retorna ao LiKE

Após a confirmação, você é redirecionado automaticamente de volta para Integrações. O cartão do Confluence mostra:

  • Status: Conectado
  • O nome do seu site Confluence
  • Um botão "Sync"

#Passo 4 — Execute a sincronização

  1. Clique em "Sync" para a primeira importação
  2. O LiKE carrega todas as páginas dos espaços acessíveis do Confluence
  3. Os artigos aparecem no catálogo de conhecimento

#Passo 5 — Configure a sincronização automática

Abra as configurações (o ícone de engrenagem no cartão do Confluence):

Parâmetro Descrição
Sincronização automática Ativar atualizações automáticas
Intervalo A cada 6, 12, 24 ou 48 horas

Os artigos do Confluence são somente leitura. Para editar, altere o original no Confluence, e o LiKE atualizará na próxima sincronização.

Ao desconectar o Confluence, você pode manter uma cópia dos artigos no LiKE (eles se tornam editáveis) ou excluí-los.


#Conectando o Notion

#Passo 1 — Crie uma integração no Notion

  1. Abra o Notion → clique no seu avatar (canto superior esquerdo) → Settings
  2. No menu à esquerda, escolha My connections (ou Integrations)
  3. Clique em Develop or manage integrationsNew integration
  4. Insira um nome (por exemplo LiKE Import), escolha um workspace
  5. Clique em Submit → copie o Internal Integration Secret (começa com ntn_; para integrações mais antigas — com secret_)

#Passo 2 — Dê à integração acesso às páginas

Por padrão, a integração não tem acesso a nenhuma página. Você precisa permitir isso explicitamente:

  1. No Notion, abra cada página (ou a página/banco de dados pai) que deseja importar
  2. Clique em (três pontos, canto superior direito) → Connect to → escolha a sua integração LiKE Import
  3. Confirme o acesso
Dica: Dê acesso à página raiz — todas as páginas filhas automaticamente ficam disponíveis para a integração. Não é necessário conectar cada página separadamente.

#Passo 3 — Conecte no LiKE

  1. No LiKE → Painel de controleIntegrações → Notion → "Conectar"
  2. Cole o Integration Secret (copiado no passo 1)
  3. Escolha um espaço para a importação (existente ou crie um novo)
  4. Escolha um modo:
Modo Descrição
Sync Um vínculo contínuo — as alterações no Notion aparecem no LiKE automaticamente. Os artigos são somente leitura
Import Uma cópia única. Os artigos tornam-se editáveis no LiKE
  1. Clique em "Conectar"
  2. O LiKE carrega todas as páginas às quais a integração tem acesso

#Passo 4 — Configure a sincronização automática

Abra as configurações (o ícone de engrenagem no cartão do Notion):

Parâmetro Descrição
Sincronização automática Ativar atualizações automáticas
Intervalo A cada 6, 12, 24 ou 48 horas

Ao desconectar o Notion, você pode manter uma cópia dos artigos no LiKE (eles se tornam editáveis) ou excluí-los.


#Ligar um site de documentação

O conector recolhe artigos de um site público: lê o respetivo mapa (sitemap) e mantém uma cópia no LiKE. Útil quando a documentação já está publicada — em domínio próprio, no Docusaurus, GitBook, Docsify e semelhantes.

#Passo 1 — endereço do site

Integrações → Site de documentação → Ligar site. Cole o endereço: pode ser o de qualquer página, o site é recolhido por inteiro. O sitemap procuramos nós: primeiro em robots.txt, depois em /sitemap.xml.

#Passo 2 — o que encontrámos

Carregue em Verificar site. A verificação não guarda nada: apenas lê o sitemap e mostra quantas páginas foram encontradas e quantas serão adicionadas com os filtros aplicados. Se não houver sitemap, a ligação não se estabelece e dizemo-lo claramente, em vez de importar zero páginas em silêncio.

#Passo 3 — onde colocar

Escolha o espaço e a coleção — a coleção pode ser criada no próprio assistente. Depois de Ligar, o percurso começa de imediato: o progresso vê-se no cartão do conector («A percorrer o site 22 de 92») e no indicador de tarefas em segundo plano.

#O que é recolhido e o que não é

  • é recolhido o conteúdo da página, sem menu, cabeçalho e rodapé do site;
  • Secções do site limitam o percurso por caminho (/docs/, /guides/); em branco, recolhemos o site inteiro;
  • secções de serviço, como pesquisa e etiquetas, são ignoradas por predefinição;
  • Páginas por execução limita uma única passagem: proteção contra sites muito grandes;
  • as páginas bloqueadas em robots.txt não são recolhidas; o seu número aparece no resumo da execução.

#Atualizações seguintes

Com a sincronização automática ativa, relemos o site conforme o agendamento. Só as páginas alteradas são reindexadas — o resumo di-lo assim: «adicionadas», «atualizadas», «sem alterações». As páginas sem alterações não consomem o limite de indexação.

Remover páginas desaparecidas está desativado por predefinição: se uma página desaparecer do site, o artigo permanece na sua base. Ative-o quando a cópia tiver de refletir o site com rigor.

#Que sites servem e quais não

Serve um site público com sitemap — é assim que funcionam quase todos os geradores de documentação. O resto recusamos no passo de verificação, e não depois de ligar:

O que impede O que vai ver
Não há sitemap — nem em robots.txt nem em /sitemap.xml A ligação não será iniciada
No endereço do sitemap não está XML — normalmente uma página de proteção contra robôs A ligação não será iniciada
Há sitemap, mas após os filtros não sobra nenhuma página A ligação não será iniciada
O robots.txt proíbe percorrer todo o site A ligação não será iniciada
O robots.txt está indisponível por erro do servidor A ligação não será iniciada: «sem resposta» não é o mesmo que «permitido»
O site está protegido por palavra-passe ou só é acessível a partir de uma rede interna As páginas não podem ser lidas
O conteúdo é desenhado por scripts já no navegador A página pode chegar quase vazia — lemos o HTML tal como o servidor o devolveu

Mesmo com o site ligado, algumas páginas podem ficar de fora: as bloqueadas no robots.txt, as que respondem com erro, as com mais de 10 MB ou as que não devolvem HTML. Todas aparecem no resumo da execução com o motivo — «ignoradas» e «bloqueadas pelo robots.txt».

Os ficheiros (PDF, ZIP, imagens) não são recolhidos do site. Para eles existe outro caminho: a importação de ficheiros, com o seu próprio processamento.

#Limites

  • um site por organização;
  • o site tem de ser público: páginas protegidas por palavra-passe não são lidas;
  • é necessário um sitemap: sem ele não há ligação;
  • respeitamos o robots.txt, incluindo a pausa entre pedidos que indique.

Desligar. A sincronização para e os artigos já importados podem ser eliminados ou mantidos como artigos normais — o LiKE pergunta isso ao desligar.


#Importação de arquivos

#Enviando arquivos

  1. Painel de controleImportação
  2. Arraste os arquivos ou clique na zona de envio
  3. Formatos suportados: PDF, DOCX, TXT, MD, RTF, ZIP
  4. A IA gera automaticamente um título e um slug para cada arquivo
  5. Antes de publicar, você pode editar o título ou abri-lo no editor
Parâmetro Descrição
Tamanho máximo 20 MB por arquivo, 100 MB para um ZIP
Envio em lote Até 10 arquivos por vez
Idioma Detectado automaticamente

#Arquivos ZIP

Envie um arquivo ZIP com muitos documentos — o LiKE descompacta e processa automaticamente cada arquivo. Útil para migrar uma base de conhecimento inteira.

Arquivos suportados dentro de um ZIP: PDF, DOCX, TXT, MD, RTF. Outros arquivos (imagens, executáveis) são ignorados.

#Importação por link

Cole um link para um documento — o LiKE o baixa e importa:

  1. Painel de controleImportação → a seção "Importação por link"
  2. Cole uma URL → clique em "Adicionar"
  3. Você pode adicionar até 10 links por vez
  4. Clique em "Importar"

Fontes suportadas:

  • Google Docs — exportado automaticamente como DOCX
  • Google Sheets — exportado como CSV
  • Dropbox — um link direto de arquivo
  • Qualquer URL direta para um arquivo PDF, DOCX, TXT, MD ou RTF

#Visibilidade padrão

Para cada fonte, você pode configurar uma visibilidade padrão:

  • Rascunho — os artigos são criados ocultos
  • Equipe — visíveis para usuários autorizados
  • Público — visíveis para todos, inclusive usuários anônimos

Configurada em Integrações → cartão da fonte → Visibilidade.


#Canais de acesso

Os canais permitem que seus funcionários pesquisem informações por meio de ferramentas familiares.

#Bot do Slack

Conectando o Slack:
1. Clique em "Conectar Slack" na seção Integrações
2. Autorize o aplicativo LiKE no seu workspace do Slack
3. Escolha um canal para notificações
4. Pronto — os funcionários usam /like pergunta ou @LiKE

Recursos:

  • /like como configuro o SSO? → uma resposta de IA direto no Slack
  • Mencionar @LiKE em qualquer canal → uma resposta na thread
  • Links para os artigos de origem (clicáveis)

#Bot do Telegram

Conectando o Telegram:
1. Crie um bot via @BotFather no Telegram
2. Copie o token do bot
3. Cole o token no LiKE → Integrações → Telegram
4. Adicione o bot ao grupo desejado

Recursos:

  • Mensagens diretas ao bot → uma resposta de IA
  • Em um chat de grupo: /ask pergunta → uma resposta
  • Suporte a 25+ idiomas

#Widget JS (para o seu site)

Um botão flutuante de pesquisa por IA para incorporar em qualquer site. A integração mais popular — o usuário vê um botão no canto da página, clica nele, e abre um chat com a IA e a pesquisa em toda a sua base de conhecimento.

#Instalação simples

Instale em 3 passos:
1. Integrações → Widgets → "+ Criar widget" → dê um nome e salve
2. Copie o código de incorporação (uma tag `<script>` com uma api-key única)
3. Cole-o antes de </body> em qualquer página do seu site

#Parâmetros básicos

Parâmetro Descrição
Nome O nome interno do widget (para o painel administrativo, não visível aos usuários)
Posição Canto inferior esquerdo ou inferior direito
Cor de destaque A cor do botão e dos destaques no chat (extraída da identidade visual por padrão)
Tecla de atalho Por exemplo Ctrl+K / ⌘K para abrir o chat pelo teclado
Idioma O idioma da interface do chat (detectado automaticamente de <html lang> se não definido)
Placeholder O texto no campo de entrada ("Faça uma pergunta…")
Logo do chat Identidade visual do cabeçalho do chat (nos planos com white-label)
Rodapé "Powered by Lynkora" Pode ser ocultado nos planos com white-label

#Dual-auth: dois modos de autenticação (ADR 0032)

No LiKE, o widget pode funcionar em um de dois modos — escolhido na criação:

Modo 1 — Caminhos permitidos
Para sites públicos
Um widget em uma landing page, páginas de marketing ou uma central de suporte. A autenticação é anônima — qualquer visitante pode usá-lo.
Proteção:
  • Lista de permissões de URLs onde a api-key é válida
  • Escopo = __public__ ou coleções públicas específicas
  • Limite de taxa por api-key
Modo 2 — JWT de sessão
Para um site corporativo com autenticação
Um widget em uma intranet corporativa ou aplicativo SaaS. O widget aceita o JWT de sessão do usuário e vê exatamente aquilo a que ele tem acesso.
Caso de uso:
  • O portal interno da empresa
  • Um widget com reconhecimento de SSO no seu próprio produto
  • Vê os espaços do usuário

Para detalhes sobre a configuração de cada modo e a integração com o seu backend, consulte API e widget.

#Escopo: o que o widget pode encontrar

Ao criar um widget, você define um escopo — o que exatamente ele pesquisa:

Entradas de escopo
🌐 public_umbrella — todos os artigos públicos da organização (para um widget de caminhos permitidos)
📂 space:<id> — um espaço específico (para um widget com JWT de sessão)
📁 collection:<id> — uma coleção específica (um escopo restrito, por exemplo apenas o FAQ)

Dentro de um único widget, você pode combinar várias entradas de escopo (por exemplo, duas coleções do mesmo espaço).

#Multi-widget por tenant (ADR 0029 Stage 4)

Dentro de uma organização, você pode criar vários widgets independentes com escopos e modos diferentes:

Widget Escopo Onde incorporado
Marketing site widget public_umbrella (KB pública) Em yourcompany.com — anônimo
Support center widget collection:faq-coll Em support.yourcompany.com — apenas FAQ
Intranet widget space:eng-space (por JWT) Em intranet.yourcompany.com — corporativo, vê os espaços por permissões

Cada um tem sua própria api-key e sua análise de uso, e a chave pode ser revogada de forma independente. O gerenciamento está em Integrações → Widgets → "+ Criar".

#Gerenciamento de sessões (modo JWT de sessão)

No modo JWT de sessão, cada sessão de usuário tem um sessionId único. Um admin pode visualizar as sessões ativas de um widget específico e revogar um token à força (por exemplo, se houver suspeita de comprometimento). A lista está em Integrações → Widgets → [widget] → Sessões.

#iframe / Link direto

Incorpore a interface de pesquisa completa do LiKE em qualquer página:

  1. Integrações → iframe → copie o código
  2. Cole <iframe src="..."> na sua página
  3. Ou use o link direto para navegar (uma página completa, não uma incorporação)

O iframe e o Link direto também suportam dual-auth — escolhido na criação.

#REST API

Uma API completa para integração programática (por exemplo, sua própria interface ou integração com outros sistemas):

  1. Integrações → API Keys → "Criar chave"
  2. Especifique um nome (para que serve a chave) e um escopo (igual ao de um widget — public_umbrella / space / collection)
  3. Copie a chave — ela é mostrada apenas uma vez; após reabrir, ficará mascarada

Use a chave no cabeçalho X-API-Key ou como um Bearer token.

Endpoints principais:

Endpoint O que faz
POST /api/public/search Pesquisa por IA na base de conhecimento (fluxo completo: retrieval + resposta + fontes)
POST /api/public/ask O mesmo, sem a resposta da IA — apenas uma lista de artigos relevantes
GET /api/public/articles Lista de artigos no escopo da api-key
GET /api/public/articles/{id} Conteúdo do artigo
GET /api/public/collections A árvore de coleções do escopo

Limites: os limites de taxa dependem do plano e estão vinculados à api-key. Ao excedê-los, é retornado HTTP 429 com um cabeçalho Retry-After. Os valores exatos do seu plano estão na página Planos e no painel administrativo.

Documentação completa da API: API e widget.


#Idiomas

O LiKE oferece suporte a 25+ idiomas para pesquisa por IA e pesquisa entre idiomas (a própria interface está disponível em 11 locais de UI):

Русский, English, Deutsch, Français, Español, Português, Italiano, Nederlands, Polski, Čeština, Svenska, Dansk, Suomi, Română, Magyar, Hrvatski, Türkçe, Afrikaans, Kiswahili, Bahasa Indonesia, Tiếng Việt, Українська, Српски, Български, Ελληνικά, 한국어, 日本語, 中文, हिन्दी, ไทย, עברית, العربية.

Pesquisa entre idiomas: uma pergunta em um idioma → uma resposta a partir de artigos em outro.