Guia · Power Automate · Começando

Sua primeira expressão no Power Automate

Expressões transformam dados dentro do fluxo: juntam textos, decidem entre dois valores, tratam campos vazios e formatam datas. Este guia explica a estrutura, mostra os exemplos que você mais vai usar e ensina a testar sem medo.

O que é uma expressão

Uma expressão é uma instrução que o Power Automate calcula durante a execução do fluxo. Em vez de usar sempre um valor fixo, você monta o resultado a partir dos dados que chegaram: o nome de quem preencheu um formulário, o status de um item, a data de hoje.

Toda expressão é feita de funções (concat, if, utcNow), de valores (textos entre aspas simples, números) e de referências a dados do fluxo (triggerBody(), body('Nome_da_ação')).

Onde digitar

  1. Clique no campo de uma ação em que você quer usar a expressão.
  2. No painel que abre, escolha a aba Expressão (ícone fx), em vez de Conteúdo dinâmico.
  3. Cole ou digite a expressão sem o @ do começo e confirme com OK.

Antes de colar, você pode conferir a sua expressão no verificador: ele aponta aspas e parênteses errados e sugere o nome certo de uma função.

As quatro regras de sintaxe que evitam 90% dos erros

Exemplo 1: juntar textos

concat('Olá, ', triggerBody()?['nome'])

concat junta textos. triggerBody()?['nome'] lê a propriedade nome do que disparou o fluxo. Se o nome for "Ana", o resultado é Olá, Ana.

Exemplo 2: decidir entre dois valores

if(equals(triggerBody()?['status'], 'Aprovado'), 'Sim', 'Não')

Primeiro o equals compara dois valores e devolve verdadeiro ou falso. Depois o if escolhe o segundo argumento (quando verdadeiro) ou o terceiro (quando falso).

Exemplo 3: lidar com campo vazio

Campos opcionais chegam vazios com frequência. Duas funções resolvem:

coalesce(triggerBody()?['apelido'], triggerBody()?['nome'], 'Cliente')

coalesce devolve o primeiro valor que não for nulo. Aqui: o apelido, se existir; senão o nome; senão a palavra "Cliente".

if(empty(triggerBody()?['observacao']), 'Sem observação', triggerBody()?['observacao'])

empty diz se o texto, a lista ou o objeto está vazio. Um texto vazio e um valor nulo são coisas diferentes para o fluxo.

Cuidado com o coalesce: ele só pula valores nulos. Testado no Power Automate: coalesce('', 'x') devolve o texto vazio, e não o x. Se o apelido puder chegar como texto vazio, trate com empty:
if(empty(triggerBody()?['apelido']), triggerBody()?['nome'], triggerBody()?['apelido'])

Exemplo 4: formatar datas

formatDateTime(utcNow(), 'dd/MM/yyyy HH:mm')

utcNow() devolve a data e a hora atuais em UTC, não no horário de Brasília. Para o horário local:

convertTimeZone(utcNow(), 'UTC', 'E. South America Standard Time', 'dd/MM/yyyy HH:mm')
Atenção às letras: no formato de data, MM maiúsculo é mês e mm minúsculo é minuto. HH é hora em 24 horas. Trocar maiúsculas por minúsculas é um dos erros mais comuns. Veja mais no conversor de datas.
Testado: as expressões acima foram executadas em um fluxo de teste do Power Automate (sem conectores, sem dados reais) em 02/11/2026 e devolveram: Olá, Ana (concat), Sim (if com equals), Ana (coalesce com apelido nulo), Sem observação (empty), 02/11/2026 08:05:09 (formatDateTime) e 02/11/2026 08:30 (convertTimeZone de 11:30 UTC para Brasília). Veja a referência de funções.

Funções que você vai usar toda semana

Para...Use
Juntar textosconcat
Trocar parte de um textoreplace
Pegar um pedaço do textosubstring (a primeira posição é 0)
Dividir texto em listasplit
Juntar lista em textojoin
Contar itens ou caractereslength
Somar dias a uma dataaddDays
Tirar espaços das pontastrim

Como testar com segurança

  1. Crie um fluxo de teste separado do fluxo de produção.
  2. Use dados fictícios que representem os casos reais, inclusive o campo vazio.
  3. Depois de rodar, abra o histórico de execução e veja as Entradas e as Saídas da ação que usa a expressão.
  4. Teste os casos de borda: campo ausente, vazio, com espaços, com acento e com valor muito longo.
  5. Só então aplique no fluxo definitivo.

Erros que todo mundo comete

Para continuar, veja como dividir um valor em parcelas sem perder centavos e como gerar um código sequencial.

Ferramentas para usar com este guia

Fontes oficiais