Erro "the value provided for date time string was not valid. The datetime string must match ISO 8601 format"
As funções de data do Power Automate esperam um texto no padrão ISO 8601, como 2026-11-02 ou 2026-11-02T08:05:09Z. Quando recebem outra coisa, seja um texto qualquer, uma data no formato brasileiro (02/11/2026) ou um valor vazio, elas param com esse erro,...
A mensagem completa
In function 'formatDateTime', the value provided for date time string 'texto' was not valid. The datetime string must match ISO 8601 format.
No histórico de execuções, essa mensagem aparece dentro de uma frase maior: Unable to process template language expressions in action 'NOME_DA_ACAO' inputs at line '0' and column '0': '...'. O nome da ação é o da ação que contém a expressão e muda de fluxo para fluxo. O trecho em destaque acima é o que identifica o problema.
O que significa
As funções de data do Power Automate esperam um texto no padrão ISO 8601, como 2026-11-02 ou 2026-11-02T08:05:09Z. Quando recebem outra coisa, seja um texto qualquer, uma data no formato brasileiro (02/11/2026) ou um valor vazio, elas param com esse erro, citando a função que falhou e o texto recebido.
Causas mais comuns
- A data está em formato brasileiro (dd/MM/yyyy) ou com hora no formato local.
- O campo veio vazio ou com um texto que não é data, por exemplo de uma coluna de texto do Excel ou do SharePoint.
- A data veio de um número de série do Excel, que não é uma data ISO.
- A expressão passa o argumento errado (um nome de campo em vez da data).
Como corrigir
- Descubra o texto que chegou: o erro mostra o valor entre aspas simples.
- Se a data está no formato brasileiro, converta primeiro com parseDateTime informando a cultura: parseDateTime('02/11/2026','pt-BR') devolve 2026-11-02T00:00:00.0000000.
- Depois formate o resultado como quiser, por exemplo com formatDateTime(..., 'yyyy-MM-dd').
- Se o campo pode vir vazio, teste com if(empty(...)) antes de converter.
Exemplo: antes e depois
| Expressão | Resultado no Power Automate |
|---|---|
formatDateTime('texto','dd/MM/yyyy') | Erro. In function 'formatDateTime', the value provided for date time string 'texto' was not valid. The datetime string must match ISO 8601 format. |
formatDateTime(parseDateTime('02/11/2026','pt-BR'),'yyyy-MM-dd') | 2026-11-02 |
Os dois resultados vêm da execução real de 09/11/2026, e um teste automático do Me Ajuda Flow confere que o texto desta página é idêntico ao registrado.
Como evitar que o erro volte
- Veja o valor real: abra a execução e confira a entrada da ação que falhou, não só a expressão.
- Trate vazio e tipo antes de calcular: use
coalescepara vazio eintoufloatpara texto que parece número. - Confira a expressão antes de rodar: o analisador de fluxo e o verificador de expressões apontam parte desses problemas sem executar o fluxo.
Perguntas frequentes
Por que a data 02/11/2026 não é aceita?
Porque não está em ISO 8601. O mesmo texto poderia ser 2 de novembro ou 11 de fevereiro conforme o país. Por isso você precisa indicar a cultura em parseDateTime.
A mesma mensagem aparece para addDays e parseDateTime?
Sim. Só muda o nome da função no começo da frase. A causa é sempre o texto da data fora do padrão.