Activar un flujo de trabajo con eventos o mensajes de Pub/Sub
Organízate con las colecciones
Guarda y clasifica el contenido según tus preferencias.
Puede usar un activador de Eventarc para ejecutar un flujo de trabajo como resultado de un evento o de un conjunto de eventos. Los eventos se enrutan desde un proveedor de eventos a los receptores de eventos interesados.
Cuando se crea un registro de auditoría que coincide con los criterios de filtro del activador.
Por ejemplo, consulta esta guía de inicio rápido en la que se activan flujos de trabajo con eventos de BigQuery mediante Registros de auditoría de Cloud.
En respuesta a eventos directos, como una actualización de un segmento de Cloud Storage o una actualización de una plantilla de Firebase Remote Config. Por ejemplo, consulta esta guía de inicio rápido en la que se activan flujos de trabajo con eventos directos de Cloud Storage.
Por mensajes publicados en un tema de Pub/Sub. Por ejemplo, consulta esta guía de inicio rápido en la que se activan flujos de trabajo con mensajes de Pub/Sub.
Ten en cuenta lo siguiente:
Los eventos se consideran entregados en cuanto se inicia la ejecución del flujo de trabajo, y la ejecución real se lleva a cabo de forma asíncrona en los servicios de Workflows.
Las ejecuciones activadas por eventos no se vuelven a intentar si la ejecución del flujo de trabajo se inicia, pero falla más tarde. Para obtener más información, consulta la política de reintentos de eventos.
La ventana de anulación de duplicados de Workflows para asegurar el procesamiento de eventos exactamente una vez es de 24 horas.
Si usas Workflows como destino de un activador de Eventarc, los eventos que superen el tamaño máximo de argumento de Workflows no activarán las ejecuciones de flujos de trabajo.
Para obtener más información, consulta Cuotas y límites.
En los proyectos protegidos por un perímetro de servicio, cuando se enrutan eventos a destinos de Workflows para los que el endpoint de envío de Pub/Sub se ha definido como una ejecución de Workflows, solo se pueden crear suscripciones de envío de Pub/Sub a través de Eventarc. Ten en cuenta que la cuenta de servicio que se usa para la autenticación push del endpoint de Workflows debe incluirse en el perímetro de servicio. Para obtener más información, consulta el artículo Configurar un perímetro de servicio con Controles de Servicio de VPC.
Crear un activador con la CLI de Google Cloud
Para crear un activador, ejecuta un comando gcloud eventarc triggers create junto con las marcas obligatorias y opcionales.
Selecciona un proyecto y, a continuación, haz clic en Crear cuenta de servicio.
En el campo Nombre de cuenta de servicio, escribe un nombre que tenga entre 6 y 30 caracteres.
Puede contener caracteres alfanuméricos en minúscula y guiones. Una vez que hayas creado una cuenta de servicio, no podrás cambiar su nombre.
Haz clic en Crear y continuar.
Asigna a tu nueva cuenta de servicio el rol workflows.invoker para que tenga permiso para activar tu flujo de trabajo. En la lista Seleccionar un rol, selecciona Workflows > Workflows Invoker.
Selecciona la cuenta de servicio que invoca tu flujo de trabajo.
Especifica la cuenta de servicio de gestión de identidades y accesos a la que le has concedido el rol workflows.invoker para que tenga permiso para activar tu flujo de trabajo.
Haz clic en Guardar activador.
El activador de Eventarc se muestra en la pestaña Activadores de la página Detalles de Workflows.
Si quieres actualizar o eliminar el activador, debes editar el flujo de trabajo:
En la página Detalles del flujo de trabajo, haz clic en
editEditar.
En la sección Activadores, busca el activador que quieras actualizar o eliminar.
Haz clic en editEditar recurso o
deleteEliminar recurso.
La ejecución del flujo de trabajo se activará con los eventos que coincidan con los criterios de filtro del activador.
[[["Es fácil de entender","easyToUnderstand","thumb-up"],["Me ofreció una solución al problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Es difícil de entender","hardToUnderstand","thumb-down"],["La información o el código de muestra no son correctos","incorrectInformationOrSampleCode","thumb-down"],["Me faltan las muestras o la información que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-08-20 (UTC)."],[],[],null,["# Trigger a workflow with events or Pub/Sub messages\n\nYou can use an Eventarc trigger to execute a workflow as a\nresult of an event or a set of events. The events are routed from an event\nprovider to interested event receivers.\n\nEventarc delivers events to the event receiver in the CloudEvents\nformat through an HTTP request. The Workflows service converts the\nevent to a JSON object (following the\n[CloudEvents specification](/eventarc/docs/workflows/cloudevents))\nand passes the event into the workflow execution as a\n[workflow runtime argument](/workflows/docs/passing-runtime-arguments).\n\nAn execution of your workflow is triggered:\n\n- When an **audit log is created** that matches the trigger's filter criteria. For example, see this quickstart in which you trigger Workflows with [events from BigQuery using Cloud Audit Logs](/eventarc/docs/workflows/quickstart-cal).\n- In response to **direct events** such as an update to a Cloud Storage bucket or an update to a Firebase Remote Config template. For example, see this quickstart in which you trigger Workflows with [direct\n events from Cloud Storage](/eventarc/docs/workflows/quickstart-storage).\n- By **messages published to a Pub/Sub topic** . For example, see this quickstart in which you trigger Workflows with [Pub/Sub messages](/eventarc/docs/workflows/quickstart-pubsub).\n\nNote the following:\n\n- Events are considered delivered as soon as the workflow execution starts, and\n the actual execution takes place asynchronously in the Workflows\n services.\n\n- Executions triggered by events are not retried if the workflow execution\n starts, but later fails. For more information, see the\n [Event retry policy](/eventarc/docs/overview#event_retry_policy).\n\n- The Workflows deduplication window to ensure exactly-once\n processing of events is 24 hours.\n\n- When using Workflows as the destination for an\n Eventarc trigger, events larger than the maximum\n Workflows argument size will fail to trigger workflow executions.\n For more information, see [Quotas and limits](/workflows/quotas).\n\n- In projects protected by a service perimeter, when routing events to\n Workflows destinations for which the Pub/Sub\n push endpoint is set to a Workflows execution, you can only\n create new Pub/Sub push subscriptions through\n Eventarc. Note that the service account used for push\n authentication for the Workflows endpoint must be included in\n the service perimeter. For more information, see\n [Set up a service perimeter using VPC Service Controls](/eventarc/docs/using-vpc-service-controls).\n\nCreate a trigger using the Google Cloud CLI\n-------------------------------------------\n\nYou can create a trigger by running a `gcloud eventarc triggers create` command\nalong with required and optional flags.\n\nFor more information, see the **gcloud** instructions in the \"Create a\ntrigger\" section when\n[creating a trigger for a specific provider, event type, and Workflows destination](/eventarc/docs/targets#triggers).\n\nCreate a trigger using the console\n----------------------------------\n\nThe following steps show you how to create a trigger on the\n**Workflows** page in the Google Cloud console.\n\n### Before you begin\n\n1.\n\n\n Enable the Eventarc and Pub/Sub APIs.\n\n\n [Enable the APIs](https://console.cloud.google.com/flows/enableapi?apiid=eventarc.googleapis.com,pubsub.googleapis.com)\n2. Create a [service account](/workflows/docs/authentication)\n so that Eventarc can make requests to the Workflows API:\n\n 1. In the Google Cloud console, go to the **Service Accounts** page.\n\n\n [Go to Service Accounts](https://console.cloud.google.com/projectselector2/iam-admin/serviceaccounts)\n\n \u003cbr /\u003e\n\n 2. Select a project and then click **Create service account**.\n\n 3. In the **Service account name** field, enter a name that is between 6 and\n 30 characters.\n\n It can contain lowercase alphanumeric characters and\n dashes. After you create a service account, you cannot change its name.\n 4. Click **Create and continue**.\n\n 5. Grant your new service account the\n [workflows.invoker](/workflows/docs/access-control#roles) role so that the\n account has permission to trigger your workflow. In the **Select a role**\n list, select **Workflows \\\u003e Workflows Invoker**.\n\n If you are developing a production app, always grant the least permissive roles\n possible. For more information, see\n [Manage access to projects, folders, and organizations](/iam/docs/granting-roles-to-service-accounts).\n 6. Click **Done**.\n\n3. To allow the principal that will run your Eventarc\n commands the ability to act as an Identity and Access Management (IAM) service\n account,\n [grant a role that allows the principal to impersonate the service account](/iam/docs/service-account-permissions#roles).\n\n### Configure the trigger\n\n1. If you don't already have a workflow that you want to trigger,\n [create and deploy one](/workflows/docs/creating-updating-workflow#creating_a_workflow).\n\n2. In the Google Cloud console, go to the **Workflows** page:\n\n\n [Go to Workflows](https://console.cloud.google.com/workflows)\n\n \u003cbr /\u003e\n\n3. On the Workflows page, select a workflow to go to its details\n page.\n\n4. On the **Workflow Details** page, click\n *edit* **Edit**.\n\n5. On the **Edit workflow** page, select **Add new trigger \\\u003e\n Eventarc**.\n\n The **Eventarc trigger** pane opens.\n6. Follow the instructions to\n [create a trigger for a specific provider, event type, and\n Workflows destination](/eventarc/standard/docs/event-providers-targets#triggers)\n and refer to the **Console** instructions in the \"Create a trigger\" section.\n\n7. Select the **Service account** that invokes your workflow.\n\n This specifies the IAM service account to which you\n previously granted the `workflows.invoker` role so that the account has\n permission to trigger your workflow.\n8. Click **Save trigger**.\n\n | **Note:** If you are updating an existing workflow, you do *not* need to redeploy the workflow. However, if you are creating a new workflow, you must also deploy the workflow.\n\n The Eventarc trigger is listed on the **Triggers**\n tab of the **Workflows Details** page.\n9. If you want to update or delete the trigger, you must edit the workflow:\n\n 1. On the **Workflow Details** page, click *edit* **Edit**.\n 2. In the **Triggers** section, find the trigger you want to update or delete.\n 3. Click *edit* **Edit resource** or *delete* **Delete resource**.\n\nYour workflow execution is now triggered by the events that match your trigger's\nfilter criteria.\n\nCreate a trigger using Terraform\n--------------------------------\n\nYou can create a trigger for a workflow using Terraform. For details, see\n[Trigger a workflow using Eventarc and Terraform](/eventarc/docs/creating-triggers-terraform).\n\nWhat's next\n-----------\n\n- [Learn more about Eventarc](/eventarc/docs/overview)"]]