Referência do código de erro do fluxo da nuvem

Use este artigo para diagnosticar os erros mais comuns nos fluxos cloud do Power Automate. Cada entrada explica o que significa o erro, porque acontece e como o corrigir.

Observação

Esta referência aplica-se a todos os níveis de licença cloud flow do Power Automate. Aprenda sobre erros específicos dos fluxos do ambiente de trabalho em Solucionar erros do fluxo do ambiente de trabalho.

Erros em tempo de conceção

Estes erros ocorrem quando guarda, valida ou publica um fluxo.

ModeloInválido

O que significa: A definição de fluxo contém um erro de sintaxe numa configuração de expressão ou ação.

Causas comuns:

  • Parênteses ou citações não combinadas numa expressão
  • Referenciar uma saída de ação que não existe (erro de digitação no nome da ação)
  • Usar uma função com o número errado de argumentos (por exemplo, createArray() sem argumentos)
  • Incompatibilidade de tipo numa expressão constante (por exemplo, int('abc') ou div(100, 0)) — o motor valida estes em tempo de poupança
  • Copiar e colar expressões de documentação que inclui caracteres Unicode invisíveis

Como resolver:

  1. Abra a ação destacada a vermelho no designer.
  2. Verifique a expressão na barra de fórmulas. Procura unmatched () ou ' personagens.
  3. Verificar se os nomes das ações nas expressões correspondem exatamente (diferença de maiúsculas e minúsculas): outputs('Get_item') não outputs('Get Item').
  4. Se a expressão parecer correta, apague-a e reescreva-a manualmente para remover caracteres ocultos.

Tip

Os nomes das ações nas expressões usam sublinhados em vez de espaços. Se a sua ação se chama "Obter item", a referência de expressão é outputs('Get_item').

Informação relacionada: ExpressionEvaluationFailed, FlowCheckerError

FlowCheckerError

O que significa: O verificador de fluxo encontrou um ou mais problemas de validação que impedem a gravação.

Causas comuns:

  • Um campo obrigatório fica vazio numa ou mais ações
  • Uma ligação não é selecionada para uma ação de ligação
  • Uma expressão faz referência a um valor dinâmico de conteúdo de um ramo paralelo (não garantido que exista)
  • Os comandos do gatilho estão incompletos

Como resolver:

  1. Selecione o banner de erro no topo do designer para mostrar a lista completa de problemas.
  2. Selecione cada erro para navegar até à ação afetada.
  3. Preenche os campos obrigatórios, corrige expressões quebradas e seleciona ligações.
  4. Guarda outra vez. A verificadora corre automaticamente ao gravar.

Informação relacionada: MoldeInválido, Propriedade NecessáriaEm Falta.

DuplicateActionName

O que significa: Duas ou mais ações no fluxo têm o mesmo nome interno.

Causas comuns:

  • Copiar e colar uma ação sem a renomear
  • Importação de uma definição de fluxo que foi editada manualmente com chaves duplicadas
  • Renomear uma ação para um nome já usado por outra ação no mesmo âmbito

Como resolver:

  1. Procura no fluxo ações com nomes idênticos (verifica também dentro Apply to Each e Scope contentores).
  2. Renomeia um dos duplicados. Seleciona o ... menu na ação, depois seleciona Renomear.
  3. Atualize quaisquer expressões que refiram à ação renomeada: outputs('Old_Name') para outputs('New_Name').

Informação relacionada: InvalidTemplate

Propriedade Necessária em Desaparecimento

O que significa: Um campo de entrada obrigatório numa ação ou gatilho está vazio.

Causas comuns:

  • Adicionar uma ação de conector mas não completar a configuração
  • O token de conteúdo dinâmico que resolvia para vazio era usado num campo obrigatório
  • Fluxo importado de uma solução onde as variáveis de ambiente não estão definidas

Como resolver:

  1. Abra a ação sinalizada com o erro.
  2. Procure campos marcados com um asterisco vermelho (*) que estejam em branco.
  3. Preencha o valor necessário, seja com texto estático ou com um token de conteúdo dinâmico.
  4. Para fluxos de solução, verifique se todas as variáveis do ambiente têm valores no ambiente alvo.

Informação relacionada: FlowCheckerError

Erros de expressão em tempo de execução

Estes erros ocorrem quando um fluxo é executado e uma expressão não pode ser avaliada.

ExpressãoAvaliaçãoFalhada

O que significa:

Uma expressão não foi avaliada em tempo de execução porque os dados reais não correspondiam ao que a expressão esperava. Este erro só ocorre quando a expressão utiliza valores dinâmicos (variáveis, corpo de gatilho, saídas de ações) que não podem ser verificados no tempo de gravação.

Observação

Se uma expressão usar apenas valores constantes (como int('abc') ou div(100, 0)), o motor de fluxo apanha o erro no tempo de gravação como InvalidTemplate em vez disso.

Causas comuns:

  • Chamar int() uma variável que contém uma cadeia não numérica em tempo de execução
  • Aceder a uma propriedade num objeto nulo (outputs('Get_item')?['body/title'] quando Get_item não devolveu nada)
  • Incompatibilidade do formato de data em formatDateTime() ou parseDateTime() quando o formato provém de uma variável
  • Divisão por zero quando o divisor é um valor dinâmico que por acaso é 0

Como resolver:

  1. Abra a execução falhada e selecione a ação falhada para mostrar os valores da expressão e da entrada.
  2. Envolva expressões arriscadas com verificações nulas: if(empty(triggerBody()?['value']), 'default', triggerBody()?['value']).
  3. Use coalesce() para fornecer valores de recurso: coalesce(outputs('Get_item')?['body/title'], 'Untitled').
  4. Validar os tipos de dados antes da conversão: if(isInt(variables('input')), int(variables('input')), 0).

Tip

Saiba mais sobre uma biblioteca de padrões de expressão prontos a usar com tratamento seguro contra nulos no livro de receitas Expression para fluxos na nuvem.

Informação relacionada: InvalidTemplate, ContentConversionFailed

Conversão de Conteúdo Falhada

O que significa: O fluxo não conseguia converter dados de um tipo para outro entre ações.

Causas comuns:

  • Passar uma cadeia onde se espera um inteiro ou booleano
  • Enviar um array para uma ação que espera um único objeto
  • Cadeia de datas num formato inesperado (por exemplo, DD/MM/YYYY quando MM/DD/YYYY é esperado)
  • Conteúdo binário (ficheiro) passado para uma entrada de texto

Como resolver:

  1. Verifique as entradas da ação falhada no histórico de execuções. Compare o tipo de valor real com o que a ação espera.
  2. Use funções de conversão explícitas: int(), float(), string(), bool(), json().
  3. Para datas, use parseDateTime() com uma localização explícita ou formatDateTime() para normalizar antes de passar.
  4. Para arrays, use first() para extrair um único item se a ação a jusante esperar um valor.

Informação relacionada: ExpressEvaluationFailed

Erros de ligação e autenticação

Estes erros ocorrem quando o fluxo não consegue autenticar-se a um serviço ligado.

InvalidConnection

O que significa: Uma referência de ligação no fluxo aponta para uma ligação que está quebrada, eliminada ou expirada.

Causas comuns:

  • O utilizador que criou a ligação mudou a palavra-passe ou teve o MFA reiniciado
  • A ligação foi eliminada da página de Ligações
  • Um administrador removeu a ligação através do centro de administração do Power Platform
  • O fluxo foi importado para um ambiente onde a ligação não existe

Como resolver:

  1. Abra o fluxo no modo de edição. Ações com ligações quebradas mostram um ícone de aviso.
  2. Selecione a ação e selecione Alterar ligação ou Adicionar nova ligação.
  3. Inicie sessão com as credenciais adequadas para criar uma ligação nova.
  4. Guardar e testar o fluxo.

Important

Para fluxos de produção, considere usar ligações principais de serviço em vez de ligações pessoais de utilizador. As ligações ao principal de serviço não expiram quando um utilizador altera a sua palavra-passe ou sai da organização.

Informação relacionada: ConnectionNotConfigured, ConnectionAuthorizationFailed

ConnectionNotConfigured

O que significa: Uma ação requer uma ligação, mas nenhuma foi selecionada.

Causas comuns:

  • O fluxo foi importado de uma solução e as referências de ligação não foram mapeadas
  • Foi adicionada uma nova ação, mas o passo de ligação foi omitido
  • A referência de ligação aponta para uma variável de ambiente sem valor

Como resolver:

  1. Abre o fluxo em modo de edição e encontra a ação com o aviso de ligação.
  2. Selecione uma ligação existente no menu suspenso ou crie uma nova.
  3. Para fluxos de solução , vá a>Soluções Default>Solution Connection References.
  4. Define a ligação para cada referência.

Informação relacionada: InvalidConnection

Não Autorizado (401)

O que significa: A API rejeitou o pedido porque o token de autenticação é inválido ou expirou.

Causas comuns:

  • O token OAuth expirou e a ligação não conseguiu atualizar automaticamente
  • A conta do utilizador foi desativada ou a palavra-passe alterada
  • Segredo ou certificado do principal de serviço expirado
  • A política de Acesso Condicional bloqueou o início de sessão (geo, conformidade do dispositivo)

Como resolver:

  1. Vai a Power Automate>Connections e encontra a ligação usada pela ação falhada.
  2. Se a ligação mostrar um aviso, selecione Corrigir ligação e volte a autenticar.
  3. Para ligações de principal de serviço, rode o segredo no Microsoft Entra ID e atualize a ligação.
  4. Verifique Microsoft Entra ID registos de início de sessão para blocos de Acesso Condicional: Azure portal>Microsoft Entra ID>Log-in, filtre pelo nome da aplicação.

Informação relacionada: Proibido (403),ConexãoAutorizaçãoFalhada

Proibido (403)

O que significa: O utilizador ou aplicação autenticado não tem permissão para realizar a operação solicitada.

Causas comuns:

  • Uma política DLP (Prevenção de Perda de Dados) bloqueia a ação do conector ou do conector neste ambiente
  • O utilizador não tem permissões sobre o recurso alvo (por exemplo, não tem acesso de escrita a uma lista SharePoint list)
  • Um administrador restringiu o conector através das definições ao nível do inquilino
  • O conector requer uma licença premium e o utilizador está num plano seeded

Como resolver:

  1. Verifique as políticas DLP: Políticas de dados do centro> de administração Power Platform. Procure políticas que bloqueiem o conector no grupo do seu ambiente.
  2. Verifique se o utilizador da ligação tem as permissões corretas no serviço alvo (permissões do site SharePoint, funções de segurança do Dataverse e similares).
  3. Se for um problema de conector premium, verifica se o proprietário do fluxo ou o chamador tem uma licença Power Automate Premium.
  4. Contacta o teu administrador se alguma política DLP precisar de ser modificada.

Informação relacionada: Não autorizado (401), DirectApiAuthorizationRequired

ConexãoAutorizaçãoFalhada

O que significa: A ligação existe, mas as credenciais armazenadas já não são válidas.

Causas comuns:

  • A palavra-passe do utilizador foi alterada ou o método MFA foi redefinido
  • Token de atualização OAuth expirado (comum em ligações não utilizadas há 90+ dias)
  • O administrador revogou o consentimento para a aplicação no Microsoft Entra ID
  • A ligação partilhada não era partilhada pelo proprietário

Como resolver:

  1. Abrir Power Automate>Conexões.
  2. Encontre a ligação afetada.
  3. Seleciona a ligação e depois seleciona Corrigir ligação para voltar a autenticar.
  4. Se usares uma ligação partilhada, pede ao dono da ligação para a partilhar novamente.
  5. Para contas de serviço, defina um lembrete no calendário para rodar as credenciais antes de expirarem.

Tip

Encontre um tutorial detalhado sobre problemas de ligação por conector (SharePoint, Outlook, SQL Server, Dataverse, HTTP) em Corrigir falhas de ligação em fluxos cloud.

Informação relacionada: InvalidConnection, Não Autorizado (401)

Erros de conector e API

Estes erros vêm do serviço a jusante que o fluxo está a chamar.

AçãoFalhada

O que significa: Uma ação devolveu o estado de falha. Isto é uma embalagem genérica. Os detalhes reais do erro encontram-se no corpo de saída da ação.

Causas comuns:

  • A API downstream devolveu um erro 4xx ou 5xx
  • Um fluxo filho (chamado via "Run a Child Flow") falhou
  • Um conector personalizado devolveu um formato de resposta inesperado
  • As definições de configure-run-after da ação faziam com que fosse executada após uma falha anterior

Como resolver:

  1. Abre a execução falhada e seleciona a ação falhada.
  2. Expanda as Saídas para mostrar a mensagem de erro real e o código de estado da API.
  3. Corrigir o problema subjacente com base no erro específico da API (revise as entradas 400, 401, 403 e 404 nesta referência).
  4. Se a ação deve correr mesmo quando as ações anteriores falham, verifica as definições de Configurar Execução Depois .

Informação relacionada: MissRequest (400),NotFound (404)

MauPedido (400)

O que significa: A API do conector rejeitou o pedido porque os dados de entrada estão mal formados ou são inválidos.

Causas comuns:

  • Enviar um campo com o tipo de dado errado (string em vez de número, ou vice-versa)
  • Campos obrigatórios em falta no corpo do pedido
  • Caracteres inválidos em nomes de ficheiros ou títulos de itens de lista
  • Exceder um limite de comprimento de campo (por exemplo, texto de linha única do SharePoint = 255 caracteres)

Como resolver:

  1. Abra a ação falhada no histórico de execução e veja a secção Inputs para mostrar exatamente o que foi enviado.
  2. Compare as entradas com o esquema esperado da API (consulte a documentação do conector).
  3. Sanitizar a entrada do utilizador para replace() remover caracteres inválidos antes de passar para a ação.
  4. Use substring() ou take() trunque valores longos até ao comprimento máximo do campo.

Informação relacionada: AçãoFalhada, Conversão de ConteúdoFalhada

NotFound (404)

O que significa: O recurso que a ação está a tentar aceder não existe.

Causas comuns:

  • Uma lista, biblioteca ou site do SharePoint list foi renomeado ou eliminado
  • Uma pasta do Outlook ou canal do Teams foi removido
  • O fluxo faz referência a um ID codificado fixamente para um recurso que já não existe
  • A tabela ou linha do Dataverse foi eliminada por outro processo

Como resolver:

  1. Verifique se o recurso ainda existe no serviço alvo.
  2. Se foi renomeado, atualize a ação para usar o novo nome ou ID.
  3. Substitua IDs codificados fixamente por consultas dinâmicas sempre que possível (por exemplo, "Obter itens" com um filtro em vez de "Obter item" com um ID estático).
  4. Adicionar gestão de erros: configurar a próxima ação para Executar depois>de falhar e tratar do 404 com elegância.

Informação relacionada: AçãoFalhada

Erros de gatilho

Estes erros relacionam-se com gatilhos de fluxo que não disparam ou falham.

TriggerConditionNotMet

O que significa: O gatilho avaliou a sua condição e determinou que o evento não deveria iniciar uma corrida de fluxo.

Causas comuns:

  • Uma expressão de condição de gatilho é sempre avaliada como falsa (erro lógico)
  • A condição de disparo refere-se a um campo que não existe na carga útil de disparo
  • O evento ocorreu, mas os dados não correspondiam ao filtro (por exemplo, "Quando um item é criado" com uma condição no Estado, mas o Estado estava em branco)

Como resolver:

  1. Vai às Definições do gatilho e revê a expressão da condição do gatilho.
  2. Teste a condição contra uma carga útil de evento conhecida. Usa o código Peek no gatilho para mostrar o esquema bruto.
  3. Remova temporariamente a condição, acione o fluxo manualmente e inspecione a saída do disparador para verificar os nomes e valores dos campos.
  4. Corrigir a expressão e reativar a condição.

Informação relacionada: ExpressEvaluationFailed

Erros de timeout e limitação

Estes erros ocorrem quando o fluxo ou uma ação excede limites de tempo ou taxa.

ActionTimedOut

O que significa: Uma única ação excedeu o tempo limite configurado e foi cancelada.

Causas comuns:

  • Ação HTTP a chamar uma API externa lenta com timeout padrão de 100 segundos
  • "Esperar por uma aprovação" com uma expiração que passou
  • Upload ou download de ficheiros grandes através de uma ligação lenta
  • Consulta Dataverse que retorna demasiadas linhas sem paginação

Como resolver:

  1. Abra as Definições da ação e aumente o valor de Tempo Limite (duração ISO 8601, por exemplo, PT5M durante 5 minutos).
  2. Para ações HTTP, verifique se a API externa tem um padrão de operação de longa duração (poll com retry-after).
  3. Para o Dataverse, adicionar $filter e $top reduzir o conjunto de resultados.
  4. Para aprovações, defina uma expiração razoável e adicione um ramo de timeout para tratar de não respostas.

Informação relacionada: OperationTimedOut

OperationTimedOut

O que significa: Uma operação de longa duração (espera webhook, aprovação, sondagens HTTP) ultrapassou o tempo máximo de espera.

Causas comuns:

  • Ação de webhook HTTP à espera de um callback que nunca chegou
  • Ação de aprovação sem expiração, atingindo o limite de fluxo de 30 dias
  • Ação "Adiar até" definida para uma data para além do limite de duração de 30 dias
  • O serviço externo ficou em baixa e nunca enviou a resposta esperada

Como resolver:

  1. Defina sempre tempos explícitos para as ações de webhook e aprovação.
  2. Para ações de webhook HTTP, implemente um ramo de timeout com o Configure a correr depois>de expirar.
  3. Divida as longas esperas em segmentos mais curtos usando um ciclo com verificações diárias.
  4. Para o limite de execução de 30 dias, redesenhar processos de longa duração para usar um padrão de "relé": terminar a execução atual e iniciar uma nova com o estado passado via Dataverse ou um ficheiro.

Important

Os fluxos de nuvens têm uma duração máxima de 30 dias. Para processos que demoram mais tempo, divida-os em múltiplas execuções de fluxo com estado partilhado.

Informação relacionada: ActionTimedOut

WorkflowRunActionRepetiçãoQuotaExceeded

O que significa: Um ciclo Apply to Each excedeu o número máximo de iterações (padrão: 100.000 para premium, 5.000 para perfis de desempenho).

Causas comuns:

  • Processar uma grande lista SharePoint list ou tabela Dataverse sem filtrar primeiro
  • Laços aninhados Apply to Each multiplicando as contagens de iterações (100 x 100 = 10.000)
  • Uma ação que Get items devolve todas as linhas em vez de um subconjunto filtrado

Como resolver:

  1. Adicione filtros à ação da fonte de dados para reduzir o número de itens antes do ciclo.
  2. Usa OData $filter e $top as ações Obter itens em vez de filtrar dentro do loop.
  3. Para conjuntos de dados grandes, agrupe o trabalho em múltiplas execuções de fluxo usando tokens de paginação ou intervalos de datas.
  4. Considera usar Select as ações de ou Filter array em vez de Apply to Each quando só precisas de transformar ou filtrar dados.

Informação relacionada: FlowRunQuotaExceeded

FlowRunQuotaExceeded

O que isto significa: O fluxo ou inquilino excedeu o seu limite diário de execução de ações.

Causas comuns:

  • Licença seeded/gratuita: 6.000 ações por dia por utilizador
  • Licença premium: 40.000 ações por dia por utilizador
  • Licença de processo: 250.000 ações por dia por fluxo
  • Um fluxo com muitos ciclos que consome milhares de ações por execução

Como resolver:

  1. Verifique a utilização atual no centro de administração Power Platform>Analytics>Power Automate.
  2. Otimizar os fluxos para usar menos ações: substituir Aplicar a Cada por Selecionar/Filtrar, operações em lote, reduzir a frequência de sondagens.
  3. Atualiza o nível da licença se a carga de trabalho realmente precisar de mais capacidade.
  4. Distribua as cargas de trabalho por múltiplos fluxos ou agende operações de alto volume durante as horas de menor afluência.

Observação

Saiba mais sobre limites diários de ação por nível de licença em Power Automate limites e configuração.

Informação relacionada: Fluxo de TrabalhoCorrerAçãoRepetiçãoQuotaExceeded, DiretoTAPIAutorizaçãoNecessária

Erros de licenciamento

AutorizaçãoApi DiretaNecessária

O que significa: O fluxo usa um conector premium, mas o chamador não tem uma licença premium.

Causas comuns:

  • Um fluxo com conectores premium (HTTP, SQL Server, Dataverse, conectores personalizados) é executado por um utilizador com uma licença Microsoft 365 seed
  • O proprietário do fluxo tem o premium, mas o utilizador que o aciona não (a licença do chamador importa, não a do proprietário)
  • O proprietário de um fluxo programado perdeu a licença premium
  • Um fluxo em contexto foi dissociado da sua Power App, tornando-o fora de contexto

Como resolver:

  1. Identifique qual conector requer premium. A mensagem de erro normalmente nomeia-o.
  2. Atribuir uma licença Power Automate Premium ao utilizador que desencadeia ou executa o fluxo.
  3. Para fluxos programados ou automatizados, certifique-se de que o proprietário do fluxo tem uma licença premium.
  4. Considere se uma licença de Processo (por fluxo) é mais rentável para fluxos partilhados de alto volume.

Informação relacionada: Proibido (403),FlowRunQuotaExceeded

Tabela de referência rápida

Erro Categoria A solução mais provável
ModeloInválido Tempo de design Sintaxe de expressão fixa
ExpressãoAvaliaçãoFalhada Runtime Adicionar verificações nulas, validar tipos
AçãoFalhada Runtime Verifique as saídas das ações para erro de API
FlowCheckerError Tempo de design Preencher campos obrigatórios, corrigir ligações
InvalidConnection Ligação Re-autenticar a ligação
ConnectionNotConfigured Ligação Selecionar ou criar uma conexão
Não Autorizado (401) Auth Corrigir a ligação, rodar credenciais
Proibido (403) Auth Verifique as políticas e permissões DLP
MauPedido (400) API Validar o formato dos dados de entrada
NotFound (404) API Verificar a existência do recurso, atualizar referências
TriggerConditionNotMet Acionador Revisão da expressão da condição gatilho
ActionTimedOut Tempo limite excedido Aumentar o timeout nas definições de ação
DuplicateActionName Tempo de design Renomear uma das ações duplicadas
Propriedade Necessária em Desaparecimento Tempo de design Preencher os campos obrigatórios
Conversão de Conteúdo Falhada Runtime Usar conversões explícitas de tipos
WorkflowRunActionRepetiçãoQuotaExceeded Throttling Filtrar dados antes de fazer looping
AutorizaçãoApi DiretaNecessária Licenciamento Atribuir licença premium ao chamador
FlowRunQuotaExceeded Throttling Otimizar a contagem de ações, atualizar a licença
ConexãoAutorizaçãoFalhada Ligação Corrigir a ligação, voltar a autenticar
OperationTimedOut Tempo limite excedido Definir tempos explícitos, usar padrão de retransmissão

Nota: O autor criou este artigo com a ajuda da IA. Mais informações