List event providers

An Eventarc provider is a service or entity that can emit events directly to Google Cloud which are then routed to your project.

First-party providers are Google Cloud sources; for example, Cloud Storage. Third-party providers are non-Google Cloud entities that offer an Eventarc source.

You can list all providers and retrieve their details, including supported event types, by running gcloud commands along with required and optional flags.

Prerequisites

Before running the gcloud commands, ensure that you have done the following:

  1. Set your Google Cloud project ID:

    gcloud config set project PROJECT_ID
    

    Replace PROJECT_ID with your Google Cloud project ID.

    You can find your project ID on the Welcome page of the Google Cloud console.

  2. Enable the Eventarc API:

    gcloud services enable eventarc.googleapis.com
    

List all providers in a specific location

To list all providers in a specific location:

gcloud eventarc providers list \
    --location=LOCATION

Replace LOCATION with a supported Eventarc region.

For example: gcloud eventarc providers list --location=us-central1

The output is similar to the following:

NAME                       LOCATION
bigquery.googleapis.com    us-central1
cloudbuild.googleapis.com  us-central1
storage.googleapis.com     us-central1
workflows.googleapis.com   us-central1
[...]

List all providers in any location

To list all providers in any location:

gcloud eventarc providers list

The output is similar to the following:

NAME                       LOCATION
workflows.googleapis.com   asia-northeast3
pubsub.googleapis.com      europe-west3
storage.googleapis.com     nam4
bigquery.googleapis.com    us-central1
cloudbuild.googleapis.com  us-central1
storage.googleapis.com     us-central1
workflows.googleapis.com   us-central1
storage.googleapis.com     us-east1
[...]

List a specific provider in any location

To list a specific provider in any location:

gcloud eventarc providers list \
    --name=PROVIDER

Replace PROVIDER with the name of the provider.

For example: gcloud eventarc providers list --name=storage.googleapis.com

The output is similar to the following:

NAME                    LOCATION
storage.googleapis.com  nam4
storage.googleapis.com  us-central1
storage.googleapis.com  us-east1

List all third-party providers in any location

To list all third-party providers in any location:

gcloud eventarc providers list --filter='eventTypes.type!~^google*'

The output is a list of all third-party providers.

Describe a specific provider and its supported event types

To describe a specific provider and its supported event types:

  gcloud eventarc providers describe PROVIDER \
      --location=LOCATION

Replace the following:

  • PROVIDER: the name of a specific provider.
  • LOCATION: a supported Eventarc region.

For example: gcloud eventarc providers describe storage.googleapis.com --location=us-central1

The output is similar to the following:

displayName: Cloud Storage
eventTypes:
- description: 'The live version of an object has become a noncurrent version, either
    because it was explicitly made noncurrent or because it was replaced by the upload
    of an object of the same name. Only sent when a bucket has enabled object versioning. '
  filteringAttributes:
  - attribute: bucket
    description: The bucket name being watched.
    required: true
  - attribute: type
    required: true
  type: google.cloud.storage.object.v1.archived
[...]

Make note of the event type to use when creating an Eventarc trigger.