Skip to main content

Batch export: guia de uso

  • September 30, 2026
  • 0 replies
  • 25 views
vinicius.pereira
Community Manager

👤 Para usuários intermediários e avançados que configuram integrações com o conector Pipefy Piece.
🔐 Requer uma Service Account com acesso ao pipe ou à database de origem.
🎯 Para quem precisa exportar cards ou registros de databases para um arquivo CSV ou JSON.

 

Quando outro sistema precisa dos dados dos seus processos, selecionar os registros e as colunas certos é tão importante quanto gerar o arquivo. Com o conector Pipefy, você pode incluir essa exportação na sua integração.

Ao terminar este artigo, você vai saber configurar Batch export, selecionar um relatório salvo ou um filtro avançado, escolher as colunas de saída e obter o arquivo após a conclusão do processamento.

 

 

📖 O que você vai entender aqui:

 

O que a ação Batch export faz

A ação Batch export exporta cards de um pipe ou registros de uma database para um arquivo CSV ou JSON armazenado pelo Pipefy. Você recebe uma URL temporária de download (resultFile) quando o processamento termina.

Não há arquivo de entrada. Diferentemente de Batch upsert, você define apenas o que exportar (relatório ou filtro), as colunas e o formato.

Comportamentos importantes:

  • A submissão da etapa aceita a solicitação; o arquivo é gerado de forma assíncrona.
  • A exportação termina apenas como completed ou failed; não existe completed_with_errors.
  • Reprocess batch operation não se aplica a exportações.
  • Exportações com falha não retornam um motivo detalhado no callback (planeje cuidadosamente a validação e a conferência das colunas).

 

Antes de adicionar a etapa do Pipefy

  • Conexão do conector Pipefy (Service Account) com acesso ao pipe ou à database de origem
  • Para exportações de relatórios salvos: um pipe com um relatório que já mostre as linhas esperadas na interface do Pipefy
  • Para exportações com filtro avançado: JSON do filtro preparado
  • Estratégia para aguardar a conclusão

 

Passo 1: adicione a ação Batch export

  1. Na integração, adicione uma etapa → conector Pipefy → Batch export.
  2. Selecione a conexão do conector Pipefy e a organização.

 

Batch export na lista de ações do conector Pipefy

 

Passo 2: escolha o pipe ou a database e o formato

Campo

Orientação

Target

Pipe (cards) → exporta cards. Database (records) → exporta registros da tabela.

Pipe / Database

Repositório de origem

File format

CSV ou JSON (XLSX não é suportado)

 

A etapa Batch export envia automaticamente ao Pipefy o tipo de entidade CARDS ou TABLE_RECORDS a partir de Target.

 

Lista suspensa Target com Card ou Database

 

Lista suspensa do repositório de origem com a seleção do pipe

 

File format com CSV ou JSON

 

Passo 3: escolha a origem da exportação (relatório ou filtro)

Pipes: duas opções

Quando Target é Pipe (cards), o campo Export source é exibido:

Export source

Quando usar

Advanced filter

Filtro personalizado na etapa; seleção opcional de colunas

Saved report

Reutiliza um relatório já salvo no pipe (as mesmas linhas exibidas ao abrir esse relatório no Pipefy)

 

Lista suspensa Export source com Advanced filter e Saved report

 

Databases: somente filtro

Databases não têm relatórios salvos. A interface mostra apenas Advanced filter em Selection. Se você tiver escolhido uma configuração baseada em relatório, altere para Advanced filter.

Passo 4: JSON do filtro avançado para pipes e databases

Quando Export source for Advanced filter, configure Selection → Advanced filter.

O valor é um único objeto JSON, com a mesma estrutura que o Pipefy usa nos filtros de relatórios salvos. A etapa Batch export inclui um exemplo padrão que você pode editar:

 

{
"operator": "and",
"queries": [
{
"field": "title",
"operator": "contains",
"value": "text to match"
}
]
}

 

Objeto do grupo

Chave

Obrigatório

Descrição

operator

Sim

and ou or

queries

Não

Lista de condições neste grupo

groups

Não

Grupos aninhados (mesma estrutura)

 

Cada condição em queries

Chave

Obrigatório

Descrição

field

Sim

Nome do campo usado no filtro (por exemplo, title, created_at)

operator

Sim

Por exemplo, eq, not_eq, contains, not_contains, gt, gte, lt, lte, exists, not_exists, period, unknown

value

Frequentemente

Valor comparado, como string

type

Não

Por exemplo, string, number, date, boolean, select, group_select, email

 

Exemplo com data:

{
"operator": "and",
"queries": [
{ "field": "title", "operator": "eq", "value": "Match me", "type": "string" },
{ "field": "created_at", "operator": "gte", "value": "2026-01-01", "type": "date" }
]
}

 

Filtro vazio: um grupo sem queries (mas com um operator válido) exporta todas as linhas do repositório, conforme as permissões

 

Momento da validação: o GraphQL aceita muitos filtros na submissão; uma estrutura aninhada inválida pode falhar apenas durante a execução, com status failed e poucos detalhes na API.

 

Filtros de data: filtros de período e de data de vencimento usam o fuso horário da Service Account (UTC, se não estiver definido). O mesmo intervalo de datas pode retornar linhas diferentes se o fuso horário da conta for diferente do seu.

 

Editor JSON de Advanced filter em Selection na ação Batch export

 

Filtros dinâmicos: mapeie o filtro de uma etapa anterior passando JSON para Advanced filter (objeto ou string). Um JSON inválido faz a etapa falhar antes da submissão, com uma mensagem clara de erro de interpretação.

 

Passo 5: campos retornados (Returning fields)

Ao usar Advanced filter

Abra Returning fields e selecione várias colunas, ou deixe vazio para exportar todas as colunas padrão do repositório (atributos nativos, campos personalizados e colunas de fases nos pipes).

As colunas nativas disponíveis na lista suspensa incluem:

Identificador

Nome na interface

card_id

Card or record id

title

Title

current_phase

Current phase

labels

Labels

due_date

Due date

created_by

Created by

assignees

Assignees

finished_at

Finished at

created_at

Created at

updated_at

Updated at

last_comment

Last comment

last_comment_at

Last comment at

expired_at

Expired at

overdue

Overdue

 

Campos personalizados aparecem como field_<internal_id> (ID interno numérico), e não como o slug do campo exibido no mapeamento de Batch upsert.

Colunas de fases (somente para pipes) seguem padrões como start_at_phase_<seq>, end_at_phase_<seq> e duration_in_phase_<seq>. Elas não estão disponíveis para exportações de databases.

Cabeçalhos do arquivo: o Pipefy grava os nomes de exibição dos campos personalizados no arquivo (field_105 → Comment). IDs nativos, como card_id, permanecem como estão. Nomes duplicados são diferenciados com (field_xxx) no cabeçalho.

 

ID de coluna inválido: números incorretos em field_ não são rejeitados na submissão. O lote pode permanecer em pending e depois passar para failed sem um motivo acessível. Confira os IDs internos ao selecionar colunas manualmente.

 

Ao usar Saved report

  1. Defina Export source como Saved report.
  2. Escolha Saved report em Selection.
  3. Não configure Returning fields: o relatório define as colunas. A etapa Batch export bloqueia a execução se você selecionar colunas enquanto um relatório estiver selecionado (o Pipefy ignoraria as colunas extras sem aviso).

Para controlar as colunas explicitamente, altere Export source para Advanced filter.

 

Lista suspensa Saved report em um pipe

 

Passo 6: aguarde a conclusão e baixe o arquivo

Wait for batch completion

Desativado (padrão)

Ativado

Retorna batchId, status (geralmente pending) e submittedAt

Pausa até que a exportação termine

Acompanhe com Get batch operations ou Callback URL

A etapa é retomada com resultFile, totalCount etc.

 

Saídas após a conclusão

Campo

Significado na exportação

resultFile

URL HTTPS temporária para baixar o CSV ou JSON

totalCount

Linhas gravadas no arquivo

status

completed ou failed

itemCounts

Sempre zero para exportação (estrutura compartilhada da API)

 

Etapas seguintes comuns:

  • Requisição HTTP: execute GET em resultFile para obter o arquivo em uma etapa posterior da integração.
  • Armazene a URL ou o arquivo no seu sistema antes que a URL assinada expire.

 

Execução concluída de Batch export com resultFile em destaque

 

Callback URL (espera desativada)

O campo opcional Callback URL recebe um POST quando a exportação atinge um estado terminal. O limite é de 500 caracteres, o mesmo de upsert. Não pode ser definido junto com Wait for batch completion ativado.

Idempotency key

Opcional. Atenção às exportações agendadas: reutilizar a mesma chave retorna o lote original e o arquivo com os dados daquele momento; não executa uma nova exportação. Para exportações diárias, use uma nova chave a cada execução (por exemplo, inclua a data) ou deixe o campo vazio.

 

Get batch operations: consulte o status da exportação

A mesma ação do guia de upsert:

  1. Pipefy → Get batch operations
  2. Os mesmos valores de Target e Pipe / Database
  3. Filtro opcional por Status: os status terminais da exportação são completed e failed
  4. Leia resultFile do lote correspondente mais recente quando operationType for export

Use batchId de Batch export para identificar seu processamento entre os lotes recentes.

 

Resultado de Get batch operations mostrando a exportação com resultFile

 

Limites e regras específicas da exportação

Tópico

Regra

Formatos

Somente CSV e JSON

Reprocessamento

Não disponível para exportação

Sucesso parcial

Não existe completed_with_errors

Relatório + colunas

Escolha um: o relatório define as colunas

Database + relatório

Não suportado; use filtro avançado

Seleção

Exatamente um: relatório ou filtro avançado (exigido pelo Pipefy; o conector Pipefy envia um ou outro)

Diagnóstico de falhas de exportação

O callback pode não incluir detalhes do erro; valide o filtro e as colunas antecipadamente

 

Compare a quantidade de linhas com o mesmo relatório salvo na interface do Pipefy ao testar exportações baseadas em relatórios.

 

Problemas comuns

Sintoma

O que verificar

Permissão negada

Participação da Service Account no pipe ou na database; seleção de um repositório incorreto

Database + relatório salvo

Use apenas Advanced filter

Erro na etapa sobre colunas + relatório

Limpe Returning fields ou altere para filtro avançado

A exportação falhou após pending

Erro de digitação na coluna field_<id>; filtro aninhado malformado sem operator

Dados desatualizados na execução agendada

Idempotency key reutilizada; use chaves exclusivas por execução

Arquivo vazio ou linhas incorretas

JSON do filtro; seleção do relatório; fuso horário da Service Account nos filtros de data

Não é possível reprocessar

Comportamento esperado: a exportação não tem reprocessamento; submeta uma nova exportação

 

Referência rápida: campos do conector e API do Pipefy

Campo do conector Pipefy

Conceito na API do Pipefy

Target + Pipe/Database

repoId + entity (CARDS / TABLE_RECORDS)

File format

format (csv / json)

Export source → Saved report

reportId

Selection → Advanced filter

advancedFilter

Returning fields

columns (identificadores como card_id, field_105)

Wait for batch completion

callbackUrl para o ponto de espera da execução (gerenciado pelo conector Pipefy)

Callback URL (espera desativada)

Sua callbackUrl

Idempotency key

idempotencyKey

 

Você não precisa chamar o GraphQL manualmente ao usar estas ações do conector Pipefy. A tabela ajuda na leitura da documentação da API do Pipefy ou na investigação de erros com seu administrador.

 

Antes de avançar, confirme que você entende

☐ Sei quando usar um relatório salvo ou um filtro avançado.

☐ Sei como a origem da exportação determina as colunas do arquivo.

☐ Sei aguardar a conclusão e obter resultFile.