Resumo rápido
- O Loop é um bloco nativo da Pluga que permite iteração sobre listas retornadas por etapas anteriores da automação, executando as etapas subsequentes uma vez para cada item destas listas.
- Você adiciona o Loop como uma etapa, escolhe sobre qual lista quer iterar e todas as etapas seguintes são executadas N vezes, uma por item.
- Funciona com qualquer gatilho que capture dados em formato de lista, como e-commerces, ERPs, CRMs, meios de pagamento e webhooks; e também após ações de busca (Google Sheets, Zendesk, Pipedrive, RD CRM, HTTP Request, etc.).
- Após a etapa de Loop, os atributos disponíveis para mapeamento nas etapas seguintes passam a “ser entregues” pelo Loop, retornando os dados de cada item da lista de forma individual. Por exemplo, para cada produto de uma venda, o Loop recupera: SKU, nome, quantidade e valor.
- O Loop em si consome apenas um evento. Mas cada execução de uma etapa subsequente após o Loop conta como 1 evento único.
‼️ Importante: não é possível realizar um loop dentro de outro loop.
Por exemplo: uma busca no Google Calendar retorna uma lista de eventos, e cada evento tem título, data e horário. Não é possível adicionar um novo loop para extrair, em campos separados, os participantes de cada evento.
O que são itens do tipo lista (arrays)
Antes de nos aprofundarmos no funcionamento do Loop e sua configuração dentro da Pluga, é importante entender o que são listas de itens e porque esse conceito é central para utilizar este recurso.
Quando duas ferramentas conversam por meio de uma integração, elas trocam essencialmente dados estruturados.
Na maioria das vezes, esses dados são simples (o que chamamos de atributos de valor único): um nome, um e-mail, uma data, um valor. Ou seja, cada dado traz atributos que carregam uma única informação.
Mas existe um segundo tipo de atributo, conceitualmente diferente, que carrega vários itens de uma vez, como por exemplo o conjunto de produtos contidos em uma única venda. É o que chamamos de lista (ou, na linguagem dos desenvolvedores, array).
Essa diferença é importante porque listas não se comportam da mesma maneira que dados simples. Elas exigem um tratamento próprio na hora de serem usadas em uma automação.
Como uma lista aparece no mundo real
Pense em um pedido de e-commerce. Quando alguém compra na loja, o sistema gera um registro mais ou menos assim:
- Cliente: Fernanda Souza
- E-mail: [email protected]
- Forma de pagamento: cartão de crédito
- Valor total: R$ 319,70
Até aqui, tudo é valor único. Uma cliente, um e-mail, uma forma de pagamento, um total. Mas então aparece este atributo:
- Produtos comprados: ?
Aqui mora a diferença. A cliente “Fernanda” pode ter comprado um produto, mas também pode ter comprado cinco. E cada produto tem suas próprias informações: nome, SKU, preço unitário, quantidade, etc. Fica inviável agrupar todas essas informações em um único campo de texto sem alterar a estrutura do dado.
A solução que os sistemas usam é representar isso como uma lista de objetos. Em JSON, fica assim:
{
"cliente": {
"nome": "Fernanda"
},
"compra": {
"produtos": [
{
"nome": "Tênis",
"sku": "A-12345",
"preco": 199.90,
"quantidade": 1
},
{
"nome": "Camiseta",
"sku": "B-67890",
"preco": 59.90,
"quantidade": 2
}
],
"forma_pagamento": "cartao_credito"
}
} Repare na estrutura: produtos é um único atributo de compra, mas o que vive dentro dele são dois itens, cada um com seus próprios sub-atributos (nome, SKU, preço, quantidade). Essa estrutura (uma lista onde cada item é um pequeno objeto com vários campos) é o que tecnicamente se chama de array_object.
Por que isso é tão comum
Listas aparecem sempre que a vida real permite “muitos de algo dentro de um”. Alguns padrões clássicos:
- Pedidos carregam listas de produtos;
- Negociações de CRM carregam listas de itens ou serviços contratados;
- Notas fiscais carregam listas de itens faturados;
- Buscas (por tickets, contatos, leads, linhas de planilha) retornam listas de resultados.
Sempre que um conceito do negócio admite a relação “um para muitos”, a representação correta é uma lista.
O obstáculo que isso cria numa automação
Aqui surge um problema interessante. Uma automação tradicional executa uma sequência de etapas: o gatilho dispara, a etapa 2 acontece, depois a etapa 3, e assim por diante. Cada etapa roda uma vez.
Mas se a etapa 1 entregou uma lista com cinco produtos para a etapa 2, o que a etapa 2 deveria fazer? Criar um registro só? Cinco registros? Juntar tudo em uma linha só?
Sem um mecanismo dedicado a lidar com isso, o comportamento padrão é tratar as listas como um bloco único de texto, geralmente concatenando os valores com vírgula: “Tênis, Camiseta”. Assim, na próxima etapa, o conjunto de palavras separadas por vírgula é inserido em um único campo da etapa seguinte.
A operação que resolve: iterar
A operação conceitual que resolve listas chama-se iteração: percorrer a lista item por item e fazer alguma ação com cada um.
Quando uma automação itera sobre uma lista, o que ela faz na prática é “abrir” essa lista e tratar cada item como se fosse um evento independente. As etapas seguintes deixam de receber a lista inteira e passam a receber os atributos individuais de cada item, um por vez.
Se a lista tem cinco itens, as etapas posteriores rodam cinco vezes, uma para cada item, com os campos daquele item específico disponíveis para serem mapeados no destino.
E essa pequena mudança de perspectiva muda muita coisa. A partir dela, viram naturais casos de uso como: registrar cada produto vendido em uma linha de uma planilha de controle, criar um card de tarefa para cada item de uma negociação, classificar cada ticket retornado em uma busca, ou disparar uma mensagem para cada participante de um evento.
Listas são uma categoria distinta de atributo dentro de uma automação. Elas existem porque a realidade dos sistemas integrados é cheia de relações “um para muitos”. Tratá-las exige um mecanismo específico de iteração, sem o qual as etapas seguintes ficam limitadas a ver a lista como um amontoado, e não como o conjunto de unidades de trabalho que ela realmente é.
É exatamente esse mecanismo, o Loop, que a Pluga disponibiliza e que abre a porta para uma grande quantidade de casos de uso que, sem ele, ficariam fora do alcance de uma automação.
Onde as listas aparecem na Pluga
Há dois cenários principais:
- Gatilhos com listas embutidas: ferramentas cujo evento de gatilho já retorna uma lista. Essas ferramentas, hoje, estão concentradas essencialmente nas verticais de e-commerce, ERPs, CRMs, meios de pagamento e plataformas digitais, além de webhooks de origem com arrays.
- Ações de busca que retornam múltiplos resultados: como buscar tickets no Zendesk, buscar negócios no Pipedrive, buscar leads no RD Station Marketing, buscar contatos no Conta Azul, buscar eventos no Google Calendar, entre outras.
Exemplos concretos:
- Uma venda na Nuvemshop com 3 produtos retorna a lista
Produtos do pedido. Cada item dessa lista tem: nome, SKU, quantidade, preço. - Um deal ganho no Pipedrive com 4 serviços contratados retorna a lista
Produtos da negociação. Cada item tem: nome, preço unitário, quantidade, desconto. - Uma busca de tickets no Zendesk que retorna 10 resultados. Cada ticket tem: título, descrição, status, responsável.
O problema que o Loop resolve
Sem o Loop, os atributos do tipo lista chegavam na etapa seguinte como um bloco único de texto e os valores vinham concatenados, separados por vírgula. Por exemplo: "Tênis, Camiseta" num único campo.
Para agir individualmente sobre cada item (registrar em linhas separadas, criar cards distintos, classificar um a um) sem o Loop, seria preciso lançar mão de recursos complementares: fórmulas no Sheets, scripts externos, etc.
O Loop resolve isso de forma direta: você adiciona o bloco de Loop na automatização, escolhe qual lista quer iterar e, a partir dali, todas as etapas seguintes executam individualmente para cada item.
❌ Sem o Loop
Venda de 5 serviços → a lista inteira chega como um bloco. Os valores aparecem separados por vírgula (exceto nas ações preparadas para múltiplos itens). Não é possível agir sobre cada serviço individualmente, como criar um card no Trello para cada projeto.
✅ Com o Loop
Venda de 5 serviços → o Loop itera sobre cada um deles e executa as etapas seguintes 5 vezes, uma para cada serviço vendido. Cada etapa recebe os atributos individuais daquele item (nome, quantidade, preço, código).
Exemplo 1: venda no Conta Azul com múltiplos produtos
| # | Etapa | O que acontece |
|---|---|---|
| 1 | Gatilho: nova venda criada no Conta Azul | Retorna atributos da venda, incluindo a lista de produtos (ex: 5 itens). |
| 2 | Loop: selecionar a lista de produtos | A partir daqui, cada etapa subsequente é executada 1x para cada produto. |
| 3 | Ação: criar card no Trello | Executada 5 vezes: um card por produto, com nome, quantidade e preço individuais. |
Resultado: 5 produtos → 5 cards no Trello, cada um com os dados do respectivo produto.
Exemplo 2: busca de negócios no Pipedrive
| # | Etapa | O que acontece |
|---|---|---|
| 1 | Ação: buscar negócios no Pipedrive (limite: 10) | Retorna lista de negócios encontrados dentro de determinado critério. |
| 2 | Loop: selecionar a lista de negócios | A partir daqui, cada etapa subsequente é executada 1x para cada negócio. |
| 3 | Ação: enviar mensagem | Envia uma mensagem de follow up para cada lead. |
Resultado: 10 negócios → 10 mensagens enviadas.
Loop x ações de múltiplos itens
Algumas ferramentas integradas à Pluga (especialmente CRMs e ERPs) já disponibilizam ações que aceitam múltiplos itens dentro de um único registro. É o caso, por exemplo, de “Criar venda no Conta Azul”: no mapeamento, você seleciona uma lista da ferramenta de origem (como compra.produtos) e mapeia os sub-atributos de cada item (nome, preço, quantidade) para os campos correspondentes da venda. O resultado é um único registro na ferramenta de destino contendo todos os itens: uma venda com 5 produtos, não 5 vendas.
Esse recurso continua disponível e é a abordagem mais direta quando o objetivo é lançar múltiplos produtos dentro de um mesmo registro (uma venda, um pedido, uma negociação). Nesses casos, o Loop não substitui a ação: ele pode complementar, fazendo outra coisa:
- A ação de múltiplos itens agrupa N produtos dentro de 1 registro-mãe.
- O Loop separa a lista e executa as etapas seguintes N vezes, de forma independente.
Se a etapa posterior ao Loop fosse “Criar venda no Conta Azul”, o resultado seriam 5 vendas distintas com 1 produto cada. Por isso os dois tipos de ação coexistem: funções diferentes, em cenários diferentes.
| Aspecto | Múltiplos itens (CRMs/ERPs) | Loop |
|---|---|---|
| O que faz | Lança múltiplos produtos/itens dentro de um único registro na ferramenta de destino (ex: uma venda no Conta Azul com 5 produtos). | Itera sobre cada item da lista e executa as etapas seguintes uma vez por item, de forma independente. |
| Destino | Ferramentas específicas que suportam a ação (como CRMs e ERPs — ex: Conta Azul, Bling, Agendor). | Qualquer ferramenta integrada à Pluga. |
| Comportamento | N itens → 1 registro com N itens dentro. A lista é mapeada diretamente para os campos de produto da ferramenta de destino. | N itens → N execuções independentes das etapas seguintes. Cada execução recebe os atributos de 1 item. |
| Quando usar | Lançar uma venda/pedido com múltiplos produtos em um ERP ou CRM, mantendo todos os itens dentro de um único registro. | Executar ações separadas por item: criar cards, classificar com IA, notificar individualmente, registrar em qualquer ferramenta com flexibilidade total de campos. |
Loop x múltiplas linhas no Google Sheets
A Pluga também possui a ação específica para inserir múltiplas linhas no Google Sheets quando um gatilho retorna uma lista de produtos. A ação funciona exclusivamente com o Google Sheets como destino e aceita apenas 4 colunas pré-definidas para os dados de lista (Item - nome, Item - quantidade, Item - preço, Item - código). As demais colunas repetem dados fixos da venda, e a planilha precisa ter cabeçalhos pré-criados com esses nomes exatos.
Essa ação funciona bem para este caso de uso específico: registrar produtos de uma venda em linhas separadas no Sheets quando as 4 colunas padrão atendem. O Loop é a solução mais ampla e genérica, sem restrição de destino e sem limitação de colunas.
| Aspecto | Múltiplas linhas no Sheets | Loop |
|---|---|---|
| Escopo | Exclusivamente Google Sheets como destino. | Qualquer ferramenta como destino. |
| Origem | Funciona apenas com gatilhos que retornam listas de produtos (e-commerces, CRMs, ERPs, alguns meios de pagamento). | Funciona com qualquer etapa que retorne listas (gatilhos ou ações de busca). |
| Colunas | Limitada a 4 colunas pré-definidas. Demais colunas repetem dados fixos. | Sem restrição de colunas. Cada atributo do item pode ser mapeado livremente para qualquer campo da ferramenta de destino. |
| Configuração | A planilha precisa ter cabeçalhos pré-criados com nomes exatos. | Sem exigência especial além daquelas que já sejam padrão da Pluga. |
| Quando usar | Quando o caso de uso é exclusivamente “registrar produtos de uma venda em linhas separadas no Sheets” e os 4 campos padrão atendem. | Para todo o resto, e também para cenários de Sheets que exijam mais flexibilidade de colunas ou combinação com IA. |
Como o Loop funciona na prática
O Loop é inserido como uma etapa em qualquer ponto da automatização onde haja uma lista disponível. Pode ser logo após o gatilho ou após uma ação intermediária (como uma busca).
A Pluga identifica automaticamente as listas disponíveis com base na etapa anterior e, na configuração do Loop, você seleciona qual lista deseja iterar.
Na maioria dos casos, haverá uma única lista disponível, que representa aquela de maior hierarquia na ferramenta de origem. Em casos raros, como webhooks com múltiplos arrays, você terá mais de uma lista disponível para selecionar sobre qual deseja iterar.
Após a etapa de Loop, novos atributos ficam disponíveis no mapeamento das ações seguintes: passa a ser possível mapear atributos de cada item individual. Esses atributos são identificados visualmente pela ferramenta e pelo símbolo do Loop.
Pontos de atenção
| Ponto | Detalhe |
|---|---|
| Quantidade de execuções | As etapas após o Loop executam N vezes, onde N = número de itens da lista. |
| Contagem de eventos | A etapa de Loop consome um evento. Depois, cada vez que as demais etapas rodam, elas contam como 1 evento cada. Ex: 5 itens → 1 evento de Loop → cada etapa seguinte consome 5 eventos. |
| Etapas anteriores ao Loop | Não são afetadas. Continuam executando uma única vez. |
| Lista vazia | Se a lista não tiver itens, nenhuma etapa posterior é executada. |
| Loop aninhado | Ainda não é possível iterar uma sublista dentro de outra. Ex: uma busca no Google Calendar retorna uma lista de eventos; o Loop itera cada evento (capturando nome, data, horário), mas não consegue iterar sobre a lista de participantes dentro de cada evento. |
Casos de uso
E-commerce
Fluxo de produção por produto: venda criada (Nuvemshop, Shopify, Loja Integrada, WooCommerce, Mercado Livre) → Loop → criar card no Trello, Notion, ClickUp, Asana ou Pipefy para cada item. Cada produto vira uma tarefa de produção ou preparação de envio.
Notificação por item: venda criada → Loop → enviar por e-mail uma fatura individual ou link de download para cada produto que o cliente comprou em um único checkout.
ERP / Financeiro
Lançamento detalhado de itens de pedido: pedido criado (Omie, Conta Azul, Bling) → Loop → inserir linha no Google Sheets com dados individuais de cada item. Controle financeiro e de estoque por SKU.
Validação por item com IA: venda realizada → Loop → IA (Extrair Dados) para normalizar e estruturar dados de cada item (nome, código, valor, categoria) → registrar no ERP com dados limpos, no formato esperado.
Agências
Onboarding de cliente com múltiplos serviços: deal ganho no CRM (Pipedrive, RD CRM, Agendor, Ploomes) com vários produtos/serviços → Loop sobre produtos e serviços da negociação → criar card no Trello, Notion, ClickUp ou Asana para cada serviço contratado. Cada card vira uma tarefa de kickoff.
Classificação de leads em lote: buscar leads (RD Station Marketing, HubSpot) → Loop → Classificação por IA → atualizar cada lead no CRM com classificação individual.
Atualização de negócios em massa: buscar negócios (Pipedrive, RD CRM) → Loop → atualizar status de cada negócio ou criar tarefa no Asana/Trello para cada um.
Suporte / SaaS
Atualização de tickets em lote: Agendador (todo dia às 8h) → buscar tickets abertos no Zendesk → Loop → Resumo por IA → enviar resumo de cada ticket no Slack ou e-mail pro responsável. O gerente de CS começa o dia com contexto de cada caso sem abrir o painel.
Distribuição inteligente de tarefas: buscar tickets → Loop → Classificação por IA (urgência/categoria) → Roteador → notificar o time correto no Slack.
Automatizações prontas com Loop
Dez fluxos completos para copiar. Em todos eles, o Loop entra logo depois da etapa que devolve a lista.
Template 1
Fluxo de produção por produto após cada venda
Cada produto de uma venda vira um card individual de demanda de produção/fulfillment. O time de operações recebe tarefas separadas por item.
- 1 Nuvemshop / Shopify / Loja Integrada | Gatilho: pedido criado. Retorna lista de produtos do pedido (nome, SKU, quantidade, preço).
- 2 Loop | Iterar sobre a lista de produtos. A partir daqui, as etapas executam para cada produto.
- 3 Trello / Notion / ClickUp | Criar card. Cria um card com nome, quantidade e preço do produto. Pode incluir data de entrega.
- 4 Slack | Enviar mensagem. Notifica o canal de operações com resumo do item (nome + quantidade).
Template 2
Classificação individual de leads com IA
Busca uma lista de leads, classifica cada um via IA e atualiza o cadastro no CRM individualmente, substituindo triagem manual.
- 1 Agendador | Execução diária. Todos os dias inicia a busca por leads na base cadastrada.
- 2 RD Station Marketing / HubSpot | Buscar leads. Retorna lista de leads com nome, e-mail, cargo, empresa e dados de engajamento.
- 3 Loop | Iterar sobre a lista de leads. A partir daqui, as etapas executam para cada lead.
- 4 Classificar por IA. Instrução: classifica como quente, morno ou frio com base em perfil e engajamento.
- 5 RD Station CRM / Pipedrive | Atualizar lead ou negócio. Registra a classificação da IA no campo correspondente do CRM.
- 6 Slack | Notificar sobre leads quentes. Mensagem no canal de vendas com nome, empresa e motivo da classificação.
Template 3
Onboarding de cliente: um card por serviço contratado
Deal ganho com múltiplos serviços: cada serviço vira uma tarefa de kickoff no board de projetos, e o gestor responsável recebe um resumo por e-mail.
- 1 Pipedrive / RD CRM / Agendor | Gatilho: negócio ganho. Retorna dados do deal e a lista de produtos/serviços da negociação.
- 2 Loop | Iterar sobre a lista de produtos/serviços. A partir daqui, as etapas executam para cada serviço contratado.
- 3 Trello / Asana / ClickUp / Notion | Criar card. Um card por serviço com nome, valor e dados do cliente (repetidos em cada card).
- 4 Gmail | Enviar e-mail ao responsável. E-mail pro gestor de conta com detalhes do serviço a ser implementado.
Template 4
Resumo diário de tickets com IA
Busca tickets abertos, resume cada um via IA e notifica o responsável com contexto para agir sem abrir o painel.
- 1 Pluga Agendador | Gatilho: todo dia às 8h. Dispara a automatização diariamente.
- 2 Zendesk | Ação: buscar tickets. Retorna lista de tickets em aberto (limite configurável).
- 3 Loop | Iterar sobre a lista de tickets. A partir daqui, as etapas executam para cada ticket.
- 4 Zendesk | Ação: buscar histórico do ticket. Para cada ID de ticket encontrado, recupera todo o histórico da conversa.
- 5 Resumo por IA. Instrução: resume o problema reportado e o histórico em até 3 linhas.
- 6 Slack / Gmail | Enviar resumo. Envia o resumo de cada ticket pro canal ou e-mail do responsável, com contexto suficiente para agir.
Template 5
Uma linha por produto vendido, na planilha de controle
Cada produto de uma venda entra em uma linha separada do Google Sheets, com nome, quantidade e preço próprios. É o controle de estoque e de faturamento por SKU que a lista concatenada não permitia.
- 1 Nuvemshop | Gatilho: pedido criado. Retorna os dados da venda e a lista de produtos do pedido (nome, SKU, quantidade, preço).
- 2 Loop | Iterar sobre a lista de produtos. A partir daqui, as etapas executam para cada produto.
- 3 Google Sheets | Inserir linha na planilha. Uma linha por produto, com os atributos daquele item e os dados da venda repetidos.
Template 6
Um card de kickoff por serviço contratado
Negociação ganha com vários serviços vendidos: cada serviço vira uma tarefa separada no board de projetos, em vez de um card só com tudo dentro.
- 1 RD Station CRM | Gatilho: venda fechada. Retorna os dados do negócio e a lista de produtos e serviços da negociação.
- 2 Loop | Iterar sobre a lista de serviços. A partir daqui, as etapas executam para cada serviço contratado.
- 3 Notion | Criar card. Um card por serviço, com nome e valor do item e os dados do cliente repetidos em cada um.
Template 7
Cobrança semanal, um lembrete por inadimplente
A busca na planilha retorna uma lista de clientes em atraso. Sem o Loop, essa lista chegaria concatenada em uma mensagem só; com ele, cada pessoa recebe a sua.
- 1 Agendador | Gatilho: uma vez por semana. Dispara a automatização no dia e hora que você definir.
- 2 Google Sheets | Ação: buscar linhas. Retorna a lista de clientes inadimplentes segundo o critério da busca.
- 3 Loop | Iterar sobre a lista de clientes. A partir daqui, as etapas executam para cada cliente.
- 4 WhatsApp | Enviar mensagem. Um lembrete de pagamento individual, com o nome e o valor devido de cada cliente.
Template 8
Cada item de um webhook como conta a receber
Webhook é a porta de entrada para sistemas sem integração nativa, e é também onde os arrays aparecem com mais liberdade. O Loop separa os itens da notificação e lança um a um.
- 1 Webhooks | Gatilho: notificação recebida. O sistema de origem envia um payload que contém uma lista de itens.
- 2 Loop | Iterar sobre a lista de itens. A partir daqui, as etapas executam para cada item do payload.
- 3 Conta Azul | Criar conta a receber. Um lançamento financeiro por item, com valor e descrição próprios.
Template 9
Itens do pedido do ERP na sua base de dados
Para quem quer os dados brutos fora do ERP: cada item do pedido vira um registro próprio na base, pronto para análise por SKU.
- 1 Bling | Gatilho: pedido de venda criado. Retorna os dados do pedido e a lista de itens (nome, código, quantidade, preço).
- 2 Loop | Iterar sobre a lista de itens. A partir daqui, as etapas executam para cada item do pedido.
- 3 Supabase | Inserir registro. Um registro por item, com os atributos individuais daquele produto.
Template 10
Cálculo proprietário por item, com Loop
Aplicar uma regra de cálculo item a item dentro de um fluxo de vendas.
- 1 RD Station CRM | Gatilho: negócio ganho. Retorna o deal com a lista de produtos.
- 2 Loop | Iterar sobre produtos. As etapas seguintes rodam para cada item.
- 3 Code | Ação: executar Python. Calcula comissão, imposto ou rateio do item com regra própria.
- 4 Google Sheets | Inserir linha. Registra cada item com o valor calculado.
Combinações do Loop com Roteador e IA
Ainda é possível multiplicar as possibilidades de automatização com o Loop: basta combiná-lo com outros componentes da Pluga, como o Roteador e a IA.
- Uma busca retorna uma lista de leads → Loop → Classificação por IA → cada lead recebe uma classificação individual → Roteador → ação diferente por categoria de lead.
- Venda com múltiplos produtos → Loop → diferentes tarefas disparadas na cadeia de produção.
- Agendador diário → lista de tickets abertos nas últimas 24h → Loop → Kit de IA (Classificar) → Roteador → notificação de novos tickets nos canais corretos.