Sincronização Automática de Fluxos do Typebot com Backup no GitHub - Fluxo de trabalho n8n

Este sofisticado fluxo do n8n automatiza a sincronização bidirecional, fazendo backup dos fluxos do Typebot para o GitHub e gerindo as eliminações. Utilize este potente modelo do n8n para um controlo de versão de dados fiável e limpeza.

Prévia do Workflow

Pronto para automatizar?

Baixe este modelo de fluxo de trabalho n8n e comece a usá-lo instantaneamente.

Para quem é indicado?

Utilizadores técnicos a gerir instâncias do Typebot auto-hospedadas (self-hosted) que necessitem de estratégias de backup fiáveis.
Engenheiros DevOps à procura de uma integração perfeita entre os dados da aplicação e o controlo de versão do Git.
Utilizadores do n8n que procurem exemplos avançados de sincronização utilizando recursividade e lógica de comparação complexa.
Qualquer pessoa que necessite de modelos (templates) robustos do n8n para gestão de dados de API e operações de limpeza.

Visão Geral

Este potente fluxo do n8n serve como um mecanismo de sincronização abrangente para os fluxos do Typebot, garantindo que as definições do seu chatbot são constantemente submetidas a backup e versionadas num repositório GitHub dedicado. O principal desafio que este modelo do n8n resolve é a gestão do ciclo de vida dos fluxos — não só fazendo backup dos Typebots novos ou modificados, mas também limpando os ficheiros correspondentes no GitHub quando um Typebot é eliminado do espaço de trabalho de origem. Esta abordagem de duas vertentes, possibilitada por lógica JavaScript personalizada dentro da estrutura dos nós (nodes) do n8n, fornece uma solução fiável e eficiente em termos de memória, perfeita para escalar a utilização do Typebot mantendo a integridade dos dados. A lógica utiliza um padrão recursivo através do nó Execute Workflow do n8n para processar inúmeros fluxos do Typebot sem sobrecarregar a memória da instância principal do n8n. Isto garante que o fluxo do n8n é robusto para ambientes de alto volume.

Como funciona

A sincronização é iniciada pelo nó Schedule Trigger do n8n, geralmente executado diariamente, ou manualmente através do gatilho (trigger) On clicking 'execute' do n8n.


  1. Configuração e Recolha de Dados: O fluxo do n8n recupera primeiro as variáveis de configuração (URL do Typebot, ID do espaço de trabalho, proprietário/repo do GitHub) do nó Globals do n8n. Em seguida, utiliza dois pedidos HTTP simultâneos: um para listar todos os fluxos ativos do Typebot e outro utilizando o nó GitHub do n8n para listar todos os ficheiros de backup atuais no repositório.

  2. Ciclo de Processamento de Itens: O nó Split Out do n8n separa a lista de Typebots em itens individuais. O nó Loop Over Items do n8n gere o processamento iterativo, chamando o fluxo recursivamente através do nó Execute Workflow do n8n para cada item para gerir a memória eficientemente.

  3. Encaminhamento de Sub-Fluxo: A execução recursiva começa com o nó Execute Workflow Trigger do n8n, que alimenta um nó Switch do n8n que verifica a origin (Origem) do item (Typebot ou GitHub).

  4. Caminho de Backup do Typebot (Origem: Typebot): O fluxo vai buscar o JSON detalhado do Typebot e tenta obter os dados do ficheiro GitHub existente. Um nó Code do n8n (isDiffOrNew) compara o conteúdo JSON. Este nó personalizado do n8n garante estabilidade ao ordenar as chaves JSON antes da comparação. Um nó Switch subsequente Check Status do n8n encaminha o fluxo para Create new file (Criar novo ficheiro), Edit existing file (Editar ficheiro existente) ou Return (Retornar) (se o conteúdo for "igual" (same)).

  5. Caminho de Limpeza do GitHub (Origem: GitHub): Este caminho verifica se um ficheiro presente no GitHub corresponde a um Typebot atualmente existente. O nó Code isDeleted do n8n verifica o nome do ficheiro (ID) em relação à lista de Typebots ativos. Se o Typebot tiver sido eliminado, um nó If do n8n direciona o fluxo para o nó GitHub Delete a file (Eliminar um ficheiro) do n8n, mantendo um repositório de backup limpo. Esta abordagem robusta de duplo caminho torna este um fluxo de trabalho eficaz do n8n para manutenção.

Guia de Instalação


  1. Importar o modelo do n8n: Copie o código JSON fornecido e importe-o diretamente para a sua instância do n8n.

  2. Configurar Credenciais:

Typebot: Necessitará de uma credencial do tipo Token HTTP Bearer Genérico para autenticar o nó HTTP Request List Typebots e Get Typebot do n8n.
GitHub: Configure uma credencial OAuth2 para o GitHub. Esta credencial deve ter permissões para ler, escrever e eliminar ficheiros no seu repositório de destino.

  1. Atualizar Variáveis Globais: Localize o nó Globals Set do n8n (indicado por uma nota adesiva). Atualize os seguintes valores:

typebot.url: O URL da sua instância Typebot (ex: https://typebot.io).
typebot.workspace.id: O ID do espaço de trabalho específico que deseja fazer backup.
repo.owner: O seu nome de utilizador do GitHub.
repo.name: O nome do repositório GitHub designado para estes backups.

  1. Ativação: Assim que as credenciais e as variáveis globais estiverem definidas, ative o fluxo do n8n. O gatilho Schedule Trigger do n8n tratará das execuções automatizadas, mas também pode executá-lo manualmente através do nó On clicking 'execute' do n8n.

Detalhes do Nó

Schedule Trigger / Gatilho Manual: Estes gatilhos do n8n iniciam o processo de sincronização com base no tempo ou em entrada manual.
Globals (nó Set do n8n): Armazena parâmetros de configuração essenciais (chaves de API, URLs, nomes de repositórios) para todo o fluxo de trabalho do n8n.
List Typebots (nó HTTP Request do n8n): Vai buscar a lista de todos os fluxos ativos do Typebot na API do Typebot.
List files (nó GitHub do n8n): Recupera a lista de ficheiros atualmente guardados no repositório GitHub.
Execute Workflow (nó do n8n): Um componente crucial que permite a execução recursiva do fluxo de trabalho do n8n sobre si mesmo para processar itens um a um, otimizando a gestão de memória.
Get Typebot (nó HTTP Request do n8n): Recupera o conteúdo JSON completo e detalhado para um fluxo específico do Typebot utilizando o seu ID.
isDiffOrNew (nó Code do n8n): Um nó personalizado do n8n que compara o payload JSON do Typebot com os dados de backup existentes do GitHub (que estão codificados em base64) para determinar se o fluxo é "novo", "diferente" ou "igual" com base na comparação de hash de conteúdo/string.
Check Status (nó Switch do n8n): Direciona o fluxo de trabalho do n8n com base no estado de sincronização fornecido pelo nó isDiffOrNew do n8n.
Create new file / Edit existing file / Delete a file (nó GitHub do n8n): Executa as operações Git necessárias (criar, atualizar, eliminar) para manter a integridade da sincronização no repositório GitHub.
isDeleted (nó Code do n8n): Um nó personalizado do n8n responsável por comparar a lista de ficheiros do GitHub com a lista de IDs de Typebot ativos para identificar e marcar ficheiros que necessitam de eliminação.

Fluxos de trabalho n8n relacionados

Grátis

Nós: 15 Nós
Atualizado: Dezembro 26 2025
Ver tudo
Criado por

Apresentou*