Solved

Como faço para saber se um card tem um upload de um arquivo?


Userlevel 3

Olá! Tudo bem? 

Pessoal, estou fazendo uma integração do Pipefy com o BaseCamp3, utilizando a plataforma de integração Integromat. 

Em uma fase do pipe, permito fazer um upload de arquivos, Como faço para identificar que um upload foi feito e subir esse mesmo arquivo para o BaseCamp3? 

Existe algum item me ajude a identificar (pode ser via GraphiQL) que houve esse upload? E “copiar” esse arquivo do Pipefy para o BaseCamp?

icon

Best answer by Lucas Democh 15 October 2021, 23:29

View original

10 replies

Userlevel 7
Badge +6

Bom dia Luiz, tudo certo? 

Eu tenho uma demanda parecida em minha empresa sobre saber se tem ou não um anexo. Eu coloquei um campo logo abaixo do anexo com uma pergunta simples “Tem arquivo anexado” com as opções “Sim” ou “Não, assim, quem olhar o formulário vai saber se tem anexo. 

Sobre como copiar esse arquivo para o BaseCamp eu não consigo te ajudar, porque nunca usei essa ferramenta. 

Userlevel 7
Badge +4

Opa, Eai @luiz_menani, na API do GraphQL, existe a saída de verificação de anexo sim, a verificação pode ser feita por lá. Mas nunca tentei exportar o arquivo em si

Userlevel 7
Badge +15

@luiz_menani @rafael.jefte como parceiro do Integromat e Pipefy, já desenvolvi algumas soluções parecidas. Não sei exatamente como funciona as integrações do Basecamp, mas vou colocar alguns passos importantes para a extração dos anexos dos Pipefy via Integromat e a partir desse passo, vocês podem movimentar o anexo para outras plataformas.

Para melhor gestão dos anexos, é uma boa prática criar um campo para cada anexo que será recebido, pois assim, você poderá saber previamente qual o conteúdo do anexo.

 

Para consultar todos os anexo de um card, você pode utilizar este código:

 

{
  card(id: xxxxxxxxx) {
         title
    attachments_count
    attachments {
      createdAt
      path
      url
    }

    parent_relations {
      cards {
        id
      }
    }
  }
}

 

Se o anexo fica em um campo específico, você pode consular apenas este campo. Assim fica mais fácil de localizar o link.

 

No Integromat, você vai fazer uma chamada de API consultando o CARD. Para isso, utilize o módulo MAKE AN API CALL puxando o ID do CARD em alguma fase anterior do fluxo (vai depender do gatilho que dará início ao processo).

 

Depois da chamada da API, você deverá fazer um PARSE JSON para separar os conteúdos do resultado do GraphiQL.

 

Logo em seguida do PARSE, você terá que fazer uma chamada HTTP para extrair o arquivo e depois utilizar o módulo do Basecamp ou outra ferramenta onde você irá transferir o arquivo:

 

Exemplo de parte de um processo onde eu extraio todo os arquivos e coloco no Google Drive:

 

Userlevel 7
Badge +6

@luiz_menani @rafael.jefte como parceiro do Integromat e Pipefy, já desenvolvi algumas soluções parecidas. Não sei exatamente como funciona as integrações do Basecamp, mas vou colocar alguns passos importantes para a extração dos anexos dos Pipefy via Integromat e a partir desse passo, vocês podem movimentar o anexo para outras plataformas.

Para melhor gestão dos anexos, é uma boa prática criar um campo para cada anexo que será recebido, pois assim, você poderá saber previamente qual o conteúdo do anexo.

 

Para consultar todos os anexo de um card, você pode utilizar este código:

 

{
  card(id: xxxxxxxxx) {
         title
    attachments_count
    attachments {
      createdAt
      path
      url
    }

    parent_relations {
      cards {
        id
      }
    }
  }
}

 

Se o anexo fica em um campo específico, você pode consular apenas este campo. Assim fica mais fácil de localizar o link.

 

No Integromat, você vai fazer uma chamada de API consultando o CARD. Para isso, utilize o módulo MAKE AN API CALL puxando o ID do CARD em alguma fase anterior do fluxo (vai depender do gatilho que dará início ao processo).

 

Depois da chamada da API, você deverá fazer um PARSE JSON para separar os conteúdos do resultado do GraphiQL.

 

Logo em seguida do PARSE, você terá que fazer uma chamada HTTP para extrair o arquivo e depois utilizar o módulo do Basecamp ou outra ferramenta onde você irá transferir o arquivo:

 

Exemplo de parte de um processo onde eu extraio todo os arquivos e coloco no Google Drive:

 

Muito bom! 

Userlevel 3

@rafael.jefte, muuuuito obrigado! Funcionou perfeitamente. No caso o próprio Integromat tem integração com o BaseCamp.Já está operacional! Muito obrigado novamente

Userlevel 3

@Lucas Democh , muuuuito obrigado! Funcionou perfeitamente. No caso o próprio Integromat tem integração com o BaseCamp.Já está operacional! Muito obrigado novamente

Userlevel 7
Badge +6

@rafael.jefte, muuuuito obrigado! Funcionou perfeitamente. No caso o próprio Integromat tem integração com o BaseCamp.Já está operacional! Muito obrigado novamente

Que bom! Sucesso ai! 

Userlevel 7
Badge +15

@luiz_menani que ótimo! Fico feliz em saber! Precisando de suporte no Pipe ou no Integromat, pode me chamar! 

Badge

“Se o anexo fica em um campo específico, você pode consular apenas este campo. Assim fica mais fácil de localizar o link.”

 

Como faço pra puxar o campo específico?

Userlevel 7
Badge +15

@lqdart pelo ID do campo.

 

Para consultar o ID, você pode utilizar o GraphiQL.

 

Exemplo de Consulta:

 {
pipe (id: XXXXXXXXX) {
id
name
start_form_fields {
label
id
}
labels {
name
id
}
phases {
name
fields {
label
id } }
}

}

 

 

 

Reply