A tarefa Foreach paralelo permite executar outras
integrações (subintegrações) a partir da integração principal. Como o nome da tarefa
sugere, as sub integrações são executadas em paralelo.
Essa tarefa usa o ID do gatilho da API como uma alça para identificar as integrações a serem executadas.
Por exemplo, se você especificar o ID do gatilho da API
como api_trigger/APITriggerX, a tarefa executará todas as subintegrações com
o ID do gatilho api_trigger/APITriggerX.
Depois de executar uma subintegração, também é possível
ler a resposta da subintegração na integração principal. Use essa tarefa para executar subintegrações como dependências
da integração principal.
Antes de começar
Verifique se você anexou uma conta de serviço gerenciada pelo usuário à integração. Se a integração não tiver uma conta de serviço gerenciada pelo usuário configurada, a conta de serviço padrão (service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com) será usada para autenticação por padrão.
Verifique se a conta de serviço tem o papel do IAM Invocador do Application Integration. Para informações sobre como conceder papéis a uma conta de serviço, consulte Gerenciar o acesso a contas de serviço.
Configurar a tarefa "Para cada paralelo"
Para configurar a tarefa Para cada paralelo, siga estas instruções:
No console Google Cloud , acesse a página Integração de aplicativos.
A página Integrações aparece listando todas as integrações disponíveis no projeto do Google Cloud.
Selecione uma integração ou clique em Criar integração para criar uma nova.
Caso você esteja criando uma nova integração, siga estas etapas:
Insira um nome e uma descrição no painel Criar integração.
Selecione uma região para a integração.
Selecione uma conta de serviço para a integração. É possível mudar ou atualizar os detalhes da conta de serviço de uma integração a qualquer momento no painel infoResumo da integração na barra de ferramentas de integração.
Clique em Criar. A integração recém-criada é aberta no editor de integração.
Na barra de navegação do editor de integração, clique em Tarefas para conferir a lista de tarefas e conectores disponíveis.
Clique e posicione o elemento de tarefa Para cada paralelo no editor de integração.
Clique no elemento da tarefa Para cada paralelo no designer para abrir o painel de configuração da tarefa
Para cada paralelo.
Configure os campos restantes usando as propriedades de configuração para a tarefa, conforme detalhado nas tabelas abaixo.
As alterações nas propriedades são salvas automaticamente.
Propriedades de configuração
Esta seção descreve as propriedades de configuração da tarefa Para cada paralelo.
Propriedades de entrada
Nome da propriedade
Nome do parâmetro
Tipo de dado
Descrição
Seleção de matriz
List to iterate
Matriz do tipo string, inteira, dupla ou JSON.
Lista de valores para os quais as subintegrações são executadas.
Uma linha de execução de subintegração separada é executada para cada valor na lista, e todas
as linhas de execução são executadas em paralelo.
ID do gatilho da subintegração publicada a ser executada.
Esse valor está disponível no campo ID do acionador do gatilho da API
usado na subintegração.
Execution strategy
N/A
SYNC: executa as subintegrações no modo síncrono. Nesse modo, a integração principal
aguarda a conclusão das sub integrações antes de continuar as tarefas downstream.
ASYNC: executa as subintegrações no modo assíncrono. Nesse modo, a integração principal
não aguarda a conclusão das subintegrações. Imediatamente após chamar as subintegrações,
a integração principal executa as tarefas downstream.
Run all integrations with this API Trigger ID
N/A
Executa todas as integrações que têm o mesmo ID de acionador da API.
Por exemplo, se a integração
A e a integração B têm o mesmo
ID do gatilho da API, as integrações A e B
são executadas para cada item na Lista para iteração.
Observação: se você selecionar essa opção, a resposta das subintegrações
não estará disponível na integração principal. Se você quiser usar a resposta das
subintegrações, selecione a opção Executar uma única integração.
Run a single integration
N/A
Executa apenas a integração especificada no campo Nome da integração. É possível usar a resposta das subintegrações
configurando a seção Coletar valores das saídas das subintegrações.
Em cada execução
Where to map individual array elements
String
O nome da variável de entrada da subintegração em que os elementos da matriz devem ser mapeados. Os elementos da matriz podem ser mapeados diretamente para uma variável de entrada de subintegração. Se uma única subintegração for selecionada, você poderá selecionar a variável de entrada de subintegração em uma lista suspensa.
Map to additional sub-integration input(s)
String
Opção adicional de mapeamento de subintegração.
Variável de integração a ser mapeada: o nome da variável na integração atual a ser transmitida para a variável de entrada da subintegração.
Entrada de subintegração a ser mapeada: o nome da variável de entrada de subintegração a ser mapeada.
Esse campo usa
valores na forma de pares de chave-valor, em que a chave é uma variável na integração principal e
o valor é a variável de entrada correspondente na subintegração.
Por exemplo, suponha que a integração principal tenha a variável productID, que você quer mapear para a
variável de subintegração subIntProductID. Para isso,
selecione productID no campo Variável de integração a mapear
e insira subIntProductID no campo Entrada de subintegração
a ser mapeada.
Collect values from sub-integration output(s)
String
Se a estratégia de execução for síncrona (SYNC) e uma única subintegração (Executar uma única integração) estiver selecionada, as saídas da subintegração podem ser coletadas em variáveis de matriz na integração atual.
Saída de subintegração a ser coletada: o nome da variável de saída de subintegração a ser agregada.
Variável de integração a ser coletada: o nome da variável na integração atual para coletar as saídas agregadas.
Configurações de execução
Integrations to execute at a time (parallel)
Número inteiro
Número máximo de execuções paralelas permitidas para subintegrações. O valor padrão é
50 (máximo de 10000).
Todas as subintegrações em uma coorte são executadas completamente antes da execução da próxima coorte de subintegrações.
Ignore failures
Booleano
É possível especificar qualquer um dos seguintes valores:
Verdadeiro: a tarefa ignora as falhas de subintegração e executa todas as execuções.
Falso: a tarefa apresenta erros por falhas de subintegração e encerra todas as execuções.
Práticas recomendadas
Recomendamos as seguintes práticas recomendadas ao usar a tarefa Para cada paralelo:
Defina o tamanho da coorte com base em qualquer limitação de cota imposta pelas subintegrações.
Use uma estratégia de execução de SYNC quando quiser coletar a saída da subintegração para uso posterior.
Use uma estratégia de execução ASYNC quando sua subintegração puder ser executada por mais de 2 minutos.
Para informações sobre os limites de uso aplicáveis à tarefa Para cada paralelo, consulte Limites de uso.
Considerações
Em geral, não use uma estratégia de execução de SYNC se a subintegração levar mais de 2 minutos para ser executada
ou se você planeja usar essa tarefa com tarefas naturalmente assíncronas, como a tarefa de Aprovação.
Estratégia de solução de erros
A estratégia de solução de erros para uma tarefa especifica a ação a ser realizada se a tarefa falhar
devido a um erro temporário. Para mais informações sobre como usar uma estratégia de tratamento de erros e conhecer os diferentes tipos de estratégias de tratamento de erros, consulte Estratégias de tratamento de erros.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-03 UTC."],[[["\u003cp\u003eThe For Each Parallel task enables the execution of multiple sub-integrations in parallel from a main integration, enhancing efficiency.\u003c/p\u003e\n"],["\u003cp\u003eThis task utilizes an API Trigger ID to identify and run the specified sub-integrations, and can run all sub-integrations with the same ID or target one specifically.\u003c/p\u003e\n"],["\u003cp\u003eYou can configure sub-integrations to run synchronously (SYNC), where the main integration waits for completion, or asynchronously (ASYNC), where it doesn't wait.\u003c/p\u003e\n"],["\u003cp\u003eThe task allows for passing data to sub-integrations and optionally collecting their output back into the main integration, but not when running multiple sub-integrations simultaneously.\u003c/p\u003e\n"],["\u003cp\u003eIt's recommended to use the SYNC strategy when the output of the sub-integration is needed, and the ASYNC strategy when sub-integrations might take longer than 2 minutes to run.\u003c/p\u003e\n"]]],[],null,["# For Each Parallel task\n\nSee the [supported connectors](/integration-connectors/docs/connector-reference-overview) for Application Integration.\n\nFor Each Parallel task\n======================\n\nThe **For Each Parallel** task lets you run other\nintegrations (sub-integrations) from your main integration. As the task name\nsuggests, the sub-integrations run in parallel.\n\nThis task uses the API **Trigger ID** as a handle to identify the integrations to run.\nFor example, if you specify the API **Trigger ID**\nas `api_trigger/APITriggerX`, the task runs all the sub-integrations that have\nthe `api_trigger/APITriggerX` trigger ID.\n\nAfter running a sub-integration, you can also\nread the response of the sub-integration in your main integration. Use this task to run sub-integrations as dependencies\nof the main integration.\n\nBefore you begin\n----------------\n\n- Ensure that you have [attached a user-managed service account](/application-integration/docs/access-control#add-service-account) to your integration. If your integration does not have user-managed service account configured, then by default the [default service account](/application-integration/docs/access-control#default-service-account) (`service-`\u003cvar translate=\"no\"\u003ePROJECT_NUMBER\u003c/var\u003e`@gcp-sa-integrations.iam.gserviceaccount.com`) is used for authentication.\n- Ensure that your service account has the **Application Integration Invoker** IAM role. For information about granting roles to a service account, see [Manage access to service accounts](/iam/docs/manage-access-service-accounts).\n\nConfigure the For Each Parallel task\n------------------------------------\n\nTo configure the **For Each Parallel** task:\n\n1. In the Google Cloud console, go to the **Application Integration** page.\n\n [Go to Application Integration](https://console.cloud.google.com/integrations)\n2. In the navigation menu, click **Integrations** .\n\n\n The **Integrations** page appears listing all the integrations available in the Google Cloud project.\n3. Select an existing integration or click **Create integration** to create a new one.\n\n\n If you are creating a new integration:\n 1. Enter a name and description in the **Create Integration** pane.\n 2. Select a region for the integration. **Note:** The **Regions** dropdown only lists the regions provisioned in your Google Cloud project. To provision a new region, click **Enable Region** . See [Enable new region](/application-integration/docs/enable-new-region) for more information.\n 3. Select a service account for the integration. You can change or update the service account details of an integration any time from the info **Integration summary** pane in the integration toolbar. **Note:** The option to select a service account is displayed only if you have enabled integration governance for the selected region.\n 4. Click **Create** . The newly created integration opens in the *integration editor*.\n\n\n4. In the *integration editor* navigation bar, click **Tasks** to view the list of available tasks and connectors.\n5. Click and place the **For Each Parallel** task element in the integration editor.\n6. Click the **For Each Parallel** task element on the designer to open the **For Each Parallel** task configuration pane.\n7. Configure the displayed fields using the [Configuration properties](#params) for the task as detailed in the tables below.\n\n\n All changes to the properties are saved automatically.\n\nConfiguration properties\n------------------------\n\n\nThis section describes the configuration properties of\nthe **For Each Parallel** task.\n\n### Input properties\n\nBest practices\n--------------\n\nWe recommend the following best practices when using the **For Each Parallel** task:\n\n- Set your cohort size based on any quota limitations imposed by your sub-integrations.\n- Use a **SYNC** execution strategy when you want to collect the output of the sub-integration for later use.\n- Use an **ASYNC** execution strategy when your sub-integration might run longer than **2 minutes**.\n\nFor information about the usage limits that apply to the **For Each Parallel** task, see [Usage limits](/application-integration/docs/quotas#usage-limits).\n\nConsiderations\n--------------\n\nIn general, do not use a **SYNC** execution strategy if your sub-integration takes longer than **2 minutes** to run\nor you plan to use this task in conjunction with naturally asynchronous tasks like the Approval task.\n\nError handling strategy\n-----------------------\n\n\nAn error handling strategy for a task specifies the action to take if the task fails due to a [temporary error](/application-integration/docs/error-handling). For information about how to use an error handling strategy, and to know about the different types of error handling strategies, see [Error handling strategies](/application-integration/docs/error-handling-strategy).\n\nQuotas and limits\n-----------------\n\nFor information about quotas and limits, see [Quotas and limits](/application-integration/docs/quotas).\n\nWhat's next\n-----------\n\n- Learn about [all tasks and triggers](/application-integration/docs/all-triggers-tasks).\n- Learn how to [test and publish an integration](/application-integration/docs/test-publish-integrations).\n\n- Learn about [error handling](/application-integration/docs/error-handling-strategy).\n- Learn about [integration execution logs](/application-integration/docs/introduction-logs)."]]