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:
- Set your Google Cloud project ID: - gcloud config set project PROJECT_ID- Replace - PROJECT_IDwith your Google Cloud project ID.- You can find your project ID on the Welcome page of the Google Cloud console. 
- 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.