Skip to content

Ações ​

Uma ação é uma etapa dentro de um fluxo de trabalho. Uma vez que o gatilho dispara, o GCM percorre as ações conectadas em ordem, executando cada uma. O catálogo completo está agrupado em cinco categorias.

Ações de membro ​

Estas leem ou escrevem na tabela de membros.

AçãoO que faz
find_memberBusca um membro por telefone, e-mail ou critério personalizado. O resultado fica disponível para ações posteriores.
find_members_by_segmentEncontra todos os membros que correspondem a um filtro (retorna uma lista para iterar).
create_memberInsere um novo registro de membro.
update_memberAltera um ou mais campos em um membro.
change_membership_typeConverte visitante → membro, etc.
mark_member_lostDefine lost_at.
recover_memberLimpa lost_at.
delete_memberExclusão lógica.
assign_unit / remove_from_unitAtribuição de unidade organizacional.
assign_group / remove_from_groupAtribuição a pequeno grupo.
assign_ministry / remove_from_ministryAtribuição a ministério.
enroll_school / graduate_school / remove_from_schoolCiclo de vida do programa escolar.
add_noteAcrescenta uma nota ao perfil do membro.

Ações de comunicação ​

Estas enviam mensagens.

AçãoO que faz
send_messageEnvia via WhatsApp / SMS / e-mail para um destinatário.
send_notificationEnvia uma notificação in-app ou web push para a equipe.

Ambas permitem escolher um template ou compor inline. Tokens de mesclagem preenchem dados dinâmicos.

TIP

Sempre prefira templates a mensagens inline para fluxos de trabalho em produção. Editar um template depois atualiza todo fluxo de trabalho que o usa.

Ações de controle de fluxo ​

Estas controlam como o fluxo de trabalho percorre o grafo.

AçãoO que faz
conditionRamifica por um booleano — saídas verdadeiro / falso
splitExecuta várias branches em paralelo
wait_delayPausa por N minutos / horas / dias antes de continuar
wait_untilPausa até uma data/hora específica
wait_eventPausa até que outro evento dispare
go_toSalta para outro nó (loop / pular)
for_eachItera sobre uma lista — a saída da ação anterior

Os operadores de condição são ricos: is, is_not, contains, greater_than, less_than, is_empty, matches_regex, is_exactly_n_days_ago, is_between_days_ago, is_today, is_within_last_n_days, is_in_next_n_days, is_during_business_hours, e vários outros.

Ações de dados ​

Estas manipulam dados sem mudar membros diretamente.

AçãoO que faz
set_variableArmazena um valor para uso em ações posteriores
aggregateConta / soma / média sobre uma lista
math_operationSomar, subtrair, multiplicar, dividir
lookupLê um único campo de uma tabela relacionada

Ações de integração ​

Estas alcançam fora do GCM.

AçãoO que faz
send_webhookPOST para uma URL externa com um payload personalizado
create_taskCria uma tarefa no seu rastreador de tarefas de equipe

A ação de webhook é a saída de emergência. Se você precisa falar com o Zapier, o Slack, sua planilha Google de gestão de igreja ou qualquer outro sistema, esse é o caminho.

Configurar uma ação ​

Clique em qualquer nó de ação para abrir o painel de configuração à direita. Toda ação tem no mínimo:

  • Nome de exibição — o que aparece no canvas.
  • Configuração específica da ação — seletor de destinatário para mensagens, seletor de campo para atualizações, etc.
  • Tratamento de erros — o que fazer se a ação falhar (tentar de novo, pular, abortar a execução).

A maioria dos campos de configuração suporta tokens de mesclagem, então você pode montar ações dinâmicas como "enviar uma mensagem para quem for o pastor do membro do gatilho" sem escrever código.

Tratamento de erros ​

Cada ação pode ser configurada para falhas. Opções:

  • Tentar de novo — tentar até N vezes com backoff.
  • Pular e continuar — registrar o erro, ir para a próxima ação.
  • Abortar a execução — parar o fluxo de trabalho aqui.

Os padrões são sensatos:

  • send_message — tenta 3 vezes depois pula.
  • update_member — aborta em falha (consistência de dados).
  • send_webhook — tenta 3 vezes depois pula.

Idempotência ​

Onde possível, as ações são idempotentes — executá-las duas vezes com a mesma entrada tem o mesmo efeito de executar uma vez. Isso importa para retries e para gatilhos duplos acidentais. send_message em particular usa uma chave de idempotência (ID da execução do fluxo de trabalho + ID da ação + ID do membro) para que o destinatário nunca receba duplicatas se a chamada subjacente for repetida.

Ações personalizadas ​

Tipos de ação personalizados não são configuráveis pelo usuário na v1. Se você precisa de um comportamento que não está no catálogo, use send_webhook para alcançar uma função externa. Escreva para nós se você tem um padrão recorrente que deveria ser integrado.

Perguntas comuns ​

Uma ação pode falar com dados de outra organização? Não. Todas as ações são restritas à organização do fluxo de trabalho via current_org_id(). Mesmo se você montasse um payload de webhook para consultar outra organização, o RLS recusaria.

Posso excluir um nó no meio do grafo? Sim — selecione e aperte excluir. As linhas se reconectam ao que estava upstream.

E se meu fluxo de trabalho ficar preso em um wait_delay? A execução fica no estado aguardando até o atraso passar. Você pode cancelar manualmente pela página de execuções se precisar.

Próximos passos ​