Adicionar fluxos do Power Automate a um aplicativo de código (versão prévia)

Este artigo mostra como descobrir, adicionar, invocar e remover fluxos de nuvem do Power Automate de um aplicativo de código do Power Apps usando a CLI do npm.

Importante

Apenas há suporte para fluxos que usam o gatilho do Power Apps. Você não pode adicionar fluxos com outros tipos de gatilho a um aplicativo de código. Esses tipos de gatilho sem suporte incluem fluxos agendados, automatizados ou instantâneos com gatilhos que não são do Power Apps.

Pré-requisitos

Observação

Os comandos de fluxo só estão disponíveis na CLI baseada em npm (npx power-apps). Eles não estão disponíveis nos comandos da CLI (pac code) do Power Platform.

Etapa 1: Listar fluxos disponíveis

Execute o seguinte comando para listar todos os fluxos com reconhecimento de solução em seu ambiente atual:

npx power-apps list-flows

O comando gera uma tabela de fluxos disponíveis:

Name                    Status   Modified On   Flow ID
──────────────────────────────────────────────────────────────────────────────
Approval Workflow       Started  2026-01-15    a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1
Send Notification       Started  2026-02-01    b1b1b1b1-cccc-dddd-eeee-f2f2f2f2f2f2

Total flows: 2

Observação

Somente fluxos com reconhecimento de solução são listados. Se você estiver perdendo um fluxo, confira: Criar um fluxo de nuvem em uma solução

Para filtrar os resultados por nome, use a opção --search :

npx power-apps list-flows --search approval

Copie o valor da ID de Fluxo para o fluxo que você deseja adicionar.

Etapa 2: Adicionar um fluxo ao seu aplicativo de código

Execute o seguinte comando, substituindo <flow-id> pelo valor da etapa anterior:

npx power-apps add-flow --flow-id <flow-id>

Exemplo:

npx power-apps add-flow --flow-id a0a0a0a0-bbbb-cccc-dddd-e1e1e1e1e1e1

Quando o comando for bem-sucedido, a CLI confirmará que o fluxo foi adicionado:

Flow added successfully.

Dica

Executar novamente add-flow com a mesma ID de fluxo é idempotente. Use-o para pegar alterações na definição do fluxo (novos parâmetros, conexões atualizadas e assim por diante) sem limpar manualmente arquivos antigos.

O que add-flow faz

O comando baixa a definição OpenAPI do fluxo, gera arquivos TypeScript com tipos fortemente definidos em seu projeto e atualiza power.config.json com as referências de conexão do fluxo.

Importante

A pessoa em execução add-flow deve ter acesso para ler o fluxo e para as conexões subjacentes do fluxo (por exemplo, uma conexão do Outlook do Office 365). Se o acesso a uma conexão necessária estiver ausente, o comando falhará com um erro de autorização.

Arquivos gerados

Após a execução add-flow, a CLI cria os seguintes arquivos em seu projeto (os nomes de arquivo são derivados do nome de exibição do fluxo):

src/
  services/
    ApprovalWorkflowService.ts   ← generated service class with typed methods
  models/
    ApprovalWorkflowModel.ts     ← generated TypeScript types for inputs/outputs
schemas/
  logicflows/
    ApprovalWorkflow.Schema.json ← flow's OpenAPI schema (do not edit manually)

A seguinte entrada também é adicionada a power.config.json:

"<uuid>": {
  "id": "/providers/microsoft.powerapps/apis/shared_logicflows",
  "displayName": "Logic flows",
  "dataSources": ["ApprovalWorkflow"],
  "workflowDetails": {
    "workflowEntityId": "<dataverse-entity-guid>",
    "workflowDisplayName": "Approval Workflow",
    "workflowName": "<flow-id>",
    "dependencies": {
      "shared_office365": "<dependency-uuid>"
    }
  }
}

Etapa 3: Chamar o fluxo do seu aplicativo

A classe de serviço gerada expõe um Run método estático. A assinatura exata depende de se o gatilho do fluxo define parâmetros de entrada.

Fluxo com parâmetros de entrada

import { ApprovalWorkflowService } from './services/ApprovalWorkflowService';

const result = await ApprovalWorkflowService.Run({
  requester: 'Alex',
  amount: 1500,
});

if (result.success) {
  console.log('Flow triggered. Response:', result.data);
} else {
  console.error('Flow failed:', result.error);
}

Fluxo sem parâmetros de entrada

import { SendNotificationService } from './services/SendNotificationService';

const result = await SendNotificationService.Run();

if (result.success) {
  console.log('Flow triggered.');
}

O result objeto tem a seguinte forma:

Propriedade Tipo Descrição
success boolean true se o fluxo foi ativado com êxito.
data (varia) Carga útil de resposta digitada do fluxo, se houver.
error Error (opcional) Detalhes do erro quando success é false.

Observação

Os tipos exatos de entrada e saída são determinados pela definição de OpenAPI do fluxo. Abra o arquivo de serviço gerado para ver os tipos específicos para o fluxo. Os parâmetros marcados x-ms-visibility: internal com um valor padrão são automaticamente embutidos pelo gerador de código e não são expostos na assinatura do método.

Atualizando um fluxo

Se a definição do fluxo mudar - por exemplo, se o autor adicionar um novo parâmetro ou atualizar as referências de conexão - execute novamente add-flow com a mesma ID do fluxo para capturar a definição mais recente e regenerar os arquivos de serviço:

npx power-apps add-flow --flow-id a1b2c3d4-e5f6-7890-abcd-ef1234567890

O comando identifica o fluxo através de seu workflowEntityId e reutiliza a UUID existente em power.config.json, portanto, nenhuma limpeza manual é necessária.

Removendo um fluxo

Para remover um fluxo do seu aplicativo de código, use remove-flow. Você pode identificar o fluxo pelo nome da fonte de dados (como ele aparece) power.config.jsonou pela ID de fluxo original:

Pelo nome da fonte de dados:

npx power-apps remove-flow --flow-name ApprovalWorkflow

Por ID de fluxo:

npx power-apps remove-flow --flow-id a1b2c3d4-e5f6-7890-abcd-ef1234567890

O comando:

  • Remova o fluxo de power.config.json.
  • Regenera todos os serviços de modelo.

Implantando seu aplicativo

Depois de adicionar fluxos e verificar o aplicativo localmente com npm run dev, compile e implante como de costume:

npm run build
npx power-apps push

Limitações e considerações

Tenha em mente as seguintes limitações e considerações ao adicionar fluxos a um aplicativo de código.

Limitation Detalhes
Fluxos manuais somente acionáveis pelo PowerApps Há suporte apenas para fluxos manuais que usam o gatilho do PowerApps . Não há suporte para fluxos com outros tipos de gatilho (fluxos agendados, automatizados ou instantâneos com gatilhos que não são do PowerApps) e não funcionam corretamente em um aplicativo de código.
Somente fluxos com reconhecimento de solução O list-flows comando mostra apenas fluxos que pertencem a uma solução. Para adicionar um fluxo não solução, adicione-o a uma solução primeiro.
Acesso Maker necessário O criador em execução add-flow deve ter acesso ao fluxo e às conexões subjacentes do fluxo. Se o acesso a uma conexão necessária estiver ausente, o comando falhará.
Permissões do Dataverse necessárias no runtime Os usuários finais devem ter permissões suficientes do Dataverse para invocar fluxos. Atribua a função de segurança App Opener (ou equivalente). Consulte Configurar a segurança do usuário em um ambiente.
Atualização manual necessária para alterações de fluxo Se a definição do fluxo for alterada, execute novamente add-flow com a mesma ID de fluxo. O aplicativo não detecta automaticamente alterações de fluxo.
Somente CLI do npm Esses comandos não estão disponíveis em pac code.