Skip to main content
Question

Dúvida Make/Integromat - Query pra Cards Conectados

  • May 18, 2025
  • 1 reply
  • 77 views

gbenassi

Olá, estou tentando rodar uma query para pegar o id de um registro conectado a um card.

No Make ele retorna a query corretamente, trazendo os cards filhos conectados, e o id que eu quero, porém, ao tentar usar os dados retornados no módulo seguinte, os dados que a query retornou não aparecem como opção.

 

query:

 

{
  card(id:{{3.id}}) {
    fields {
      name
      value
    }
    child_relations {
      id
      cards {
        id
        title
        fields {
          name
          value
        }
      }
    } parent_relations {
      id
      cards {
        id
        title
        fields {
          name
          value
        }
      }
    }

  } 
}

 


Observem que há 3 cards conectados:
 

O dado que eu quero está no segundo Card Conectado:
 

 

Ao tentar atualizar um campo do Card com esses dados desse Card Conectado que a query retornou, esse card conectado simplesmente nao aparece. Dos 3 Cards conectados, apenas 1 aparece.

 

 

O que pode estar acontecendo?

1 reply

Eduardo Cerejo
Pipefy Staff

Olá ​@gbenassi !

Não tenho muita certeza sobre o que trarei aqui dado que não tenho familiariadade com a Make. 
O comportamento que você está vendo é esperado da Make quando a query retorna um array,  ele não itera automaticamente sobre os itens, então apenas um dos cards conectados fica disponível para mapeamento nos módulos seguintes.
A possível solução é usar o módulo Iterator logo após o módulo da query GraphQL, apontando para o array child_relations. Isso vai transformar cada item do array em um bundle separado, e aí os módulos seguintes conseguem enxergar todos os cards conectados normalmente.

 

O fluxo ficaria assim:

  1. Pipefy → Execute a GraphQL Query (sua query atual, sem mudanças)
  2. Iterator → aponte para Body > data > card > child_relations[]
  3. Seu próximo módulo → agora você consegue mapear cards[] > id, title, fields[] de cada relação individualmente

Se você precisar de um card conectado específico (por exemplo, que contém o campo ID_PIPE(TOPSERVIR)`), adicione um módulo Filter depois do Iterator filtrando pelo id da relação (`413586351`, no seu caso).
 

Por favor, não deixe de comentar aqui se essa solução que trouxe de fato ajudou ou não a resolver o seu problema 😉