Cloud Asset API . feeds

Instance Methods

create(parent, body=None, x__xgafv=None)

Creates a feed in a parent project/folder/organization to listen to its

delete(name, x__xgafv=None)

Deletes an asset feed.

get(name, x__xgafv=None)

Gets details about an asset feed.

list(parent, x__xgafv=None)

Lists all asset feeds in a parent project/folder/organization.

patch(name, body=None, x__xgafv=None)

Updates an asset feed configuration.

Method Details

create(parent, body=None, x__xgafv=None)
Creates a feed in a parent project/folder/organization to listen to its
asset updates.

Args:
  parent: string, Required. The name of the project/folder/organization where this feed
should be created in. It can only be an organization number (such as
"organizations/123"), a folder number (such as "folders/123"), a project ID
(such as "projects/my-project-id")", or a project number (such as
"projects/12345"). (required)
  body: object, The request body.
    The object takes the form of:

{ # Create asset feed request.
    "feedId": "A String", # Required. This is the client-assigned asset feed identifier and it needs to
        # be unique under a specific parent project/folder/organization.
    "feed": { # An asset feed used to export asset updates to a destinations. # Required. The feed details. The field `name` must be empty and it will be generated
        # in the format of:
        # projects/project_number/feeds/feed_id
        # folders/folder_number/feeds/feed_id
        # organizations/organization_number/feeds/feed_id
        # An asset feed filter controls what updates are exported.
        # The asset feed must be created within a project, organization, or
        # folder. Supported destinations are:
        # Pub/Sub topics.
      "name": "A String", # Required. The format will be
          # projects/{project_number}/feeds/{client-assigned_feed_identifier} or
          # folders/{folder_number}/feeds/{client-assigned_feed_identifier} or
          # organizations/{organization_number}/feeds/{client-assigned_feed_identifier}
          #
          # The client-assigned feed identifier must be unique within the parent
          # project/folder/organization.
      "contentType": "A String", # Asset content type. If not specified, no content but the asset name and
          # type will be returned.
      "assetTypes": [ # A list of types of the assets to receive updates. You must specify either
          # or both of asset_names and asset_types. Only asset updates matching
          # specified asset_names or asset_types are exported to the feed.
          # Example: `"compute.googleapis.com/Disk"`
          #
          # See [this
          # topic](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
          # for a list of all supported asset types.
        "A String",
      ],
      "assetNames": [ # A list of the full names of the assets to receive updates. You must specify
          # either or both of asset_names and asset_types. Only asset updates matching
          # specified asset_names or asset_types are exported to the feed.
          # Example:
          # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.
          # See [Resource
          # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
          # for more info.
        "A String",
      ],
      "feedOutputConfig": { # Output configuration for asset feed destination. # Required. Feed output configuration defining where the asset updates are
          # published to.
        "pubsubDestination": { # A Pub/Sub destination. # Destination on Pub/Sub.
          "topic": "A String", # The name of the Pub/Sub topic to publish to.
              # Example: `projects/PROJECT_ID/topics/TOPIC_ID`.
        },
      },
      "condition": { # Represents a textual expression in the Common Expression Language (CEL) # A condition which determines whether an asset update should be published.
          # If specified, an asset will be returned only when the expression evaluates
          # to true.
          # When set, `expression` field in the `Expr` must be a valid [CEL expression]
          # (https://github.com/google/cel-spec) on a TemporalAsset with name
          # `temporal_asset`. Example: a Feed with expression ("temporal_asset.deleted
          # == true") will only publish Asset deletions. Other fields of `Expr` are
          # optional.
          # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
          # are documented at https://github.com/google/cel-spec.
          #
          # Example (Comparison):
          #
          #     title: "Summary size limit"
          #     description: "Determines if a summary is less than 100 chars"
          #     expression: "document.summary.size() < 100"
          #
          # Example (Equality):
          #
          #     title: "Requestor is owner"
          #     description: "Determines if requestor is the document owner"
          #     expression: "document.owner == request.auth.claims.email"
          #
          # Example (Logic):
          #
          #     title: "Public documents"
          #     description: "Determine whether the document should be publicly visible"
          #     expression: "document.type != 'private' && document.type != 'internal'"
          #
          # Example (Data Manipulation):
          #
          #     title: "Notification string"
          #     description: "Create a notification string with a timestamp."
          #     expression: "'New message received at ' + string(document.create_time)"
          #
          # The exact variables and functions that may be referenced within an expression
          # are determined by the service that evaluates it. See the service
          # documentation for additional information.
        "description": "A String", # Optional. Description of the expression. This is a longer text which
            # describes the expression, e.g. when hovered over it in a UI.
        "location": "A String", # Optional. String indicating the location of the expression for error
            # reporting, e.g. a file name and a position in the file.
        "expression": "A String", # Textual representation of an expression in Common Expression Language
            # syntax.
        "title": "A String", # Optional. Title for the expression, i.e. a short string describing
            # its purpose. This can be used e.g. in UIs which allow to enter the
            # expression.
      },
    },
  }

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # An asset feed used to export asset updates to a destinations.
      # An asset feed filter controls what updates are exported.
      # The asset feed must be created within a project, organization, or
      # folder. Supported destinations are:
      # Pub/Sub topics.
    "name": "A String", # Required. The format will be
        # projects/{project_number}/feeds/{client-assigned_feed_identifier} or
        # folders/{folder_number}/feeds/{client-assigned_feed_identifier} or
        # organizations/{organization_number}/feeds/{client-assigned_feed_identifier}
        #
        # The client-assigned feed identifier must be unique within the parent
        # project/folder/organization.
    "contentType": "A String", # Asset content type. If not specified, no content but the asset name and
        # type will be returned.
    "assetTypes": [ # A list of types of the assets to receive updates. You must specify either
        # or both of asset_names and asset_types. Only asset updates matching
        # specified asset_names or asset_types are exported to the feed.
        # Example: `"compute.googleapis.com/Disk"`
        #
        # See [this
        # topic](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
        # for a list of all supported asset types.
      "A String",
    ],
    "assetNames": [ # A list of the full names of the assets to receive updates. You must specify
        # either or both of asset_names and asset_types. Only asset updates matching
        # specified asset_names or asset_types are exported to the feed.
        # Example:
        # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.
        # See [Resource
        # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
        # for more info.
      "A String",
    ],
    "feedOutputConfig": { # Output configuration for asset feed destination. # Required. Feed output configuration defining where the asset updates are
        # published to.
      "pubsubDestination": { # A Pub/Sub destination. # Destination on Pub/Sub.
        "topic": "A String", # The name of the Pub/Sub topic to publish to.
            # Example: `projects/PROJECT_ID/topics/TOPIC_ID`.
      },
    },
    "condition": { # Represents a textual expression in the Common Expression Language (CEL) # A condition which determines whether an asset update should be published.
        # If specified, an asset will be returned only when the expression evaluates
        # to true.
        # When set, `expression` field in the `Expr` must be a valid [CEL expression]
        # (https://github.com/google/cel-spec) on a TemporalAsset with name
        # `temporal_asset`. Example: a Feed with expression ("temporal_asset.deleted
        # == true") will only publish Asset deletions. Other fields of `Expr` are
        # optional.
        # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
        # are documented at https://github.com/google/cel-spec.
        #
        # Example (Comparison):
        #
        #     title: "Summary size limit"
        #     description: "Determines if a summary is less than 100 chars"
        #     expression: "document.summary.size() < 100"
        #
        # Example (Equality):
        #
        #     title: "Requestor is owner"
        #     description: "Determines if requestor is the document owner"
        #     expression: "document.owner == request.auth.claims.email"
        #
        # Example (Logic):
        #
        #     title: "Public documents"
        #     description: "Determine whether the document should be publicly visible"
        #     expression: "document.type != 'private' && document.type != 'internal'"
        #
        # Example (Data Manipulation):
        #
        #     title: "Notification string"
        #     description: "Create a notification string with a timestamp."
        #     expression: "'New message received at ' + string(document.create_time)"
        #
        # The exact variables and functions that may be referenced within an expression
        # are determined by the service that evaluates it. See the service
        # documentation for additional information.
      "description": "A String", # Optional. Description of the expression. This is a longer text which
          # describes the expression, e.g. when hovered over it in a UI.
      "location": "A String", # Optional. String indicating the location of the expression for error
          # reporting, e.g. a file name and a position in the file.
      "expression": "A String", # Textual representation of an expression in Common Expression Language
          # syntax.
      "title": "A String", # Optional. Title for the expression, i.e. a short string describing
          # its purpose. This can be used e.g. in UIs which allow to enter the
          # expression.
    },
  }
delete(name, x__xgafv=None)
Deletes an asset feed.

Args:
  name: string, Required. The name of the feed and it must be in the format of:
projects/project_number/feeds/feed_id
folders/folder_number/feeds/feed_id
organizations/organization_number/feeds/feed_id (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A generic empty message that you can re-use to avoid defining duplicated
      # empty messages in your APIs. A typical example is to use it as the request
      # or the response type of an API method. For instance:
      #
      #     service Foo {
      #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
      #     }
      #
      # The JSON representation for `Empty` is empty JSON object `{}`.
  }
get(name, x__xgafv=None)
Gets details about an asset feed.

Args:
  name: string, Required. The name of the Feed and it must be in the format of:
projects/project_number/feeds/feed_id
folders/folder_number/feeds/feed_id
organizations/organization_number/feeds/feed_id (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # An asset feed used to export asset updates to a destinations.
      # An asset feed filter controls what updates are exported.
      # The asset feed must be created within a project, organization, or
      # folder. Supported destinations are:
      # Pub/Sub topics.
    "name": "A String", # Required. The format will be
        # projects/{project_number}/feeds/{client-assigned_feed_identifier} or
        # folders/{folder_number}/feeds/{client-assigned_feed_identifier} or
        # organizations/{organization_number}/feeds/{client-assigned_feed_identifier}
        #
        # The client-assigned feed identifier must be unique within the parent
        # project/folder/organization.
    "contentType": "A String", # Asset content type. If not specified, no content but the asset name and
        # type will be returned.
    "assetTypes": [ # A list of types of the assets to receive updates. You must specify either
        # or both of asset_names and asset_types. Only asset updates matching
        # specified asset_names or asset_types are exported to the feed.
        # Example: `"compute.googleapis.com/Disk"`
        #
        # See [this
        # topic](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
        # for a list of all supported asset types.
      "A String",
    ],
    "assetNames": [ # A list of the full names of the assets to receive updates. You must specify
        # either or both of asset_names and asset_types. Only asset updates matching
        # specified asset_names or asset_types are exported to the feed.
        # Example:
        # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.
        # See [Resource
        # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
        # for more info.
      "A String",
    ],
    "feedOutputConfig": { # Output configuration for asset feed destination. # Required. Feed output configuration defining where the asset updates are
        # published to.
      "pubsubDestination": { # A Pub/Sub destination. # Destination on Pub/Sub.
        "topic": "A String", # The name of the Pub/Sub topic to publish to.
            # Example: `projects/PROJECT_ID/topics/TOPIC_ID`.
      },
    },
    "condition": { # Represents a textual expression in the Common Expression Language (CEL) # A condition which determines whether an asset update should be published.
        # If specified, an asset will be returned only when the expression evaluates
        # to true.
        # When set, `expression` field in the `Expr` must be a valid [CEL expression]
        # (https://github.com/google/cel-spec) on a TemporalAsset with name
        # `temporal_asset`. Example: a Feed with expression ("temporal_asset.deleted
        # == true") will only publish Asset deletions. Other fields of `Expr` are
        # optional.
        # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
        # are documented at https://github.com/google/cel-spec.
        #
        # Example (Comparison):
        #
        #     title: "Summary size limit"
        #     description: "Determines if a summary is less than 100 chars"
        #     expression: "document.summary.size() < 100"
        #
        # Example (Equality):
        #
        #     title: "Requestor is owner"
        #     description: "Determines if requestor is the document owner"
        #     expression: "document.owner == request.auth.claims.email"
        #
        # Example (Logic):
        #
        #     title: "Public documents"
        #     description: "Determine whether the document should be publicly visible"
        #     expression: "document.type != 'private' && document.type != 'internal'"
        #
        # Example (Data Manipulation):
        #
        #     title: "Notification string"
        #     description: "Create a notification string with a timestamp."
        #     expression: "'New message received at ' + string(document.create_time)"
        #
        # The exact variables and functions that may be referenced within an expression
        # are determined by the service that evaluates it. See the service
        # documentation for additional information.
      "description": "A String", # Optional. Description of the expression. This is a longer text which
          # describes the expression, e.g. when hovered over it in a UI.
      "location": "A String", # Optional. String indicating the location of the expression for error
          # reporting, e.g. a file name and a position in the file.
      "expression": "A String", # Textual representation of an expression in Common Expression Language
          # syntax.
      "title": "A String", # Optional. Title for the expression, i.e. a short string describing
          # its purpose. This can be used e.g. in UIs which allow to enter the
          # expression.
    },
  }
list(parent, x__xgafv=None)
Lists all asset feeds in a parent project/folder/organization.

Args:
  parent: string, Required. The parent project/folder/organization whose feeds are to be
listed. It can only be using project/folder/organization number (such as
"folders/12345")", or a project ID (such as "projects/my-project-id"). (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    {
    "feeds": [ # A list of feeds.
      { # An asset feed used to export asset updates to a destinations.
          # An asset feed filter controls what updates are exported.
          # The asset feed must be created within a project, organization, or
          # folder. Supported destinations are:
          # Pub/Sub topics.
        "name": "A String", # Required. The format will be
            # projects/{project_number}/feeds/{client-assigned_feed_identifier} or
            # folders/{folder_number}/feeds/{client-assigned_feed_identifier} or
            # organizations/{organization_number}/feeds/{client-assigned_feed_identifier}
            #
            # The client-assigned feed identifier must be unique within the parent
            # project/folder/organization.
        "contentType": "A String", # Asset content type. If not specified, no content but the asset name and
            # type will be returned.
        "assetTypes": [ # A list of types of the assets to receive updates. You must specify either
            # or both of asset_names and asset_types. Only asset updates matching
            # specified asset_names or asset_types are exported to the feed.
            # Example: `"compute.googleapis.com/Disk"`
            #
            # See [this
            # topic](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
            # for a list of all supported asset types.
          "A String",
        ],
        "assetNames": [ # A list of the full names of the assets to receive updates. You must specify
            # either or both of asset_names and asset_types. Only asset updates matching
            # specified asset_names or asset_types are exported to the feed.
            # Example:
            # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.
            # See [Resource
            # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
            # for more info.
          "A String",
        ],
        "feedOutputConfig": { # Output configuration for asset feed destination. # Required. Feed output configuration defining where the asset updates are
            # published to.
          "pubsubDestination": { # A Pub/Sub destination. # Destination on Pub/Sub.
            "topic": "A String", # The name of the Pub/Sub topic to publish to.
                # Example: `projects/PROJECT_ID/topics/TOPIC_ID`.
          },
        },
        "condition": { # Represents a textual expression in the Common Expression Language (CEL) # A condition which determines whether an asset update should be published.
            # If specified, an asset will be returned only when the expression evaluates
            # to true.
            # When set, `expression` field in the `Expr` must be a valid [CEL expression]
            # (https://github.com/google/cel-spec) on a TemporalAsset with name
            # `temporal_asset`. Example: a Feed with expression ("temporal_asset.deleted
            # == true") will only publish Asset deletions. Other fields of `Expr` are
            # optional.
            # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
            # are documented at https://github.com/google/cel-spec.
            #
            # Example (Comparison):
            #
            #     title: "Summary size limit"
            #     description: "Determines if a summary is less than 100 chars"
            #     expression: "document.summary.size() < 100"
            #
            # Example (Equality):
            #
            #     title: "Requestor is owner"
            #     description: "Determines if requestor is the document owner"
            #     expression: "document.owner == request.auth.claims.email"
            #
            # Example (Logic):
            #
            #     title: "Public documents"
            #     description: "Determine whether the document should be publicly visible"
            #     expression: "document.type != 'private' && document.type != 'internal'"
            #
            # Example (Data Manipulation):
            #
            #     title: "Notification string"
            #     description: "Create a notification string with a timestamp."
            #     expression: "'New message received at ' + string(document.create_time)"
            #
            # The exact variables and functions that may be referenced within an expression
            # are determined by the service that evaluates it. See the service
            # documentation for additional information.
          "description": "A String", # Optional. Description of the expression. This is a longer text which
              # describes the expression, e.g. when hovered over it in a UI.
          "location": "A String", # Optional. String indicating the location of the expression for error
              # reporting, e.g. a file name and a position in the file.
          "expression": "A String", # Textual representation of an expression in Common Expression Language
              # syntax.
          "title": "A String", # Optional. Title for the expression, i.e. a short string describing
              # its purpose. This can be used e.g. in UIs which allow to enter the
              # expression.
        },
      },
    ],
  }
patch(name, body=None, x__xgafv=None)
Updates an asset feed configuration.

Args:
  name: string, Required. The format will be
projects/{project_number}/feeds/{client-assigned_feed_identifier} or
folders/{folder_number}/feeds/{client-assigned_feed_identifier} or
organizations/{organization_number}/feeds/{client-assigned_feed_identifier}

The client-assigned feed identifier must be unique within the parent
project/folder/organization. (required)
  body: object, The request body.
    The object takes the form of:

{ # Update asset feed request.
    "updateMask": "A String", # Required. Only updates the `feed` fields indicated by this mask.
        # The field mask must not be empty, and it must not contain fields that
        # are immutable or only set by the server.
    "feed": { # An asset feed used to export asset updates to a destinations. # Required. The new values of feed details. It must match an existing feed and the
        # field `name` must be in the format of:
        # projects/project_number/feeds/feed_id or
        # folders/folder_number/feeds/feed_id or
        # organizations/organization_number/feeds/feed_id.
        # An asset feed filter controls what updates are exported.
        # The asset feed must be created within a project, organization, or
        # folder. Supported destinations are:
        # Pub/Sub topics.
      "name": "A String", # Required. The format will be
          # projects/{project_number}/feeds/{client-assigned_feed_identifier} or
          # folders/{folder_number}/feeds/{client-assigned_feed_identifier} or
          # organizations/{organization_number}/feeds/{client-assigned_feed_identifier}
          #
          # The client-assigned feed identifier must be unique within the parent
          # project/folder/organization.
      "contentType": "A String", # Asset content type. If not specified, no content but the asset name and
          # type will be returned.
      "assetTypes": [ # A list of types of the assets to receive updates. You must specify either
          # or both of asset_names and asset_types. Only asset updates matching
          # specified asset_names or asset_types are exported to the feed.
          # Example: `"compute.googleapis.com/Disk"`
          #
          # See [this
          # topic](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
          # for a list of all supported asset types.
        "A String",
      ],
      "assetNames": [ # A list of the full names of the assets to receive updates. You must specify
          # either or both of asset_names and asset_types. Only asset updates matching
          # specified asset_names or asset_types are exported to the feed.
          # Example:
          # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.
          # See [Resource
          # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
          # for more info.
        "A String",
      ],
      "feedOutputConfig": { # Output configuration for asset feed destination. # Required. Feed output configuration defining where the asset updates are
          # published to.
        "pubsubDestination": { # A Pub/Sub destination. # Destination on Pub/Sub.
          "topic": "A String", # The name of the Pub/Sub topic to publish to.
              # Example: `projects/PROJECT_ID/topics/TOPIC_ID`.
        },
      },
      "condition": { # Represents a textual expression in the Common Expression Language (CEL) # A condition which determines whether an asset update should be published.
          # If specified, an asset will be returned only when the expression evaluates
          # to true.
          # When set, `expression` field in the `Expr` must be a valid [CEL expression]
          # (https://github.com/google/cel-spec) on a TemporalAsset with name
          # `temporal_asset`. Example: a Feed with expression ("temporal_asset.deleted
          # == true") will only publish Asset deletions. Other fields of `Expr` are
          # optional.
          # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
          # are documented at https://github.com/google/cel-spec.
          #
          # Example (Comparison):
          #
          #     title: "Summary size limit"
          #     description: "Determines if a summary is less than 100 chars"
          #     expression: "document.summary.size() < 100"
          #
          # Example (Equality):
          #
          #     title: "Requestor is owner"
          #     description: "Determines if requestor is the document owner"
          #     expression: "document.owner == request.auth.claims.email"
          #
          # Example (Logic):
          #
          #     title: "Public documents"
          #     description: "Determine whether the document should be publicly visible"
          #     expression: "document.type != 'private' && document.type != 'internal'"
          #
          # Example (Data Manipulation):
          #
          #     title: "Notification string"
          #     description: "Create a notification string with a timestamp."
          #     expression: "'New message received at ' + string(document.create_time)"
          #
          # The exact variables and functions that may be referenced within an expression
          # are determined by the service that evaluates it. See the service
          # documentation for additional information.
        "description": "A String", # Optional. Description of the expression. This is a longer text which
            # describes the expression, e.g. when hovered over it in a UI.
        "location": "A String", # Optional. String indicating the location of the expression for error
            # reporting, e.g. a file name and a position in the file.
        "expression": "A String", # Textual representation of an expression in Common Expression Language
            # syntax.
        "title": "A String", # Optional. Title for the expression, i.e. a short string describing
            # its purpose. This can be used e.g. in UIs which allow to enter the
            # expression.
      },
    },
  }

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # An asset feed used to export asset updates to a destinations.
      # An asset feed filter controls what updates are exported.
      # The asset feed must be created within a project, organization, or
      # folder. Supported destinations are:
      # Pub/Sub topics.
    "name": "A String", # Required. The format will be
        # projects/{project_number}/feeds/{client-assigned_feed_identifier} or
        # folders/{folder_number}/feeds/{client-assigned_feed_identifier} or
        # organizations/{organization_number}/feeds/{client-assigned_feed_identifier}
        #
        # The client-assigned feed identifier must be unique within the parent
        # project/folder/organization.
    "contentType": "A String", # Asset content type. If not specified, no content but the asset name and
        # type will be returned.
    "assetTypes": [ # A list of types of the assets to receive updates. You must specify either
        # or both of asset_names and asset_types. Only asset updates matching
        # specified asset_names or asset_types are exported to the feed.
        # Example: `"compute.googleapis.com/Disk"`
        #
        # See [this
        # topic](https://cloud.google.com/asset-inventory/docs/supported-asset-types)
        # for a list of all supported asset types.
      "A String",
    ],
    "assetNames": [ # A list of the full names of the assets to receive updates. You must specify
        # either or both of asset_names and asset_types. Only asset updates matching
        # specified asset_names or asset_types are exported to the feed.
        # Example:
        # `//compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`.
        # See [Resource
        # Names](https://cloud.google.com/apis/design/resource_names#full_resource_name)
        # for more info.
      "A String",
    ],
    "feedOutputConfig": { # Output configuration for asset feed destination. # Required. Feed output configuration defining where the asset updates are
        # published to.
      "pubsubDestination": { # A Pub/Sub destination. # Destination on Pub/Sub.
        "topic": "A String", # The name of the Pub/Sub topic to publish to.
            # Example: `projects/PROJECT_ID/topics/TOPIC_ID`.
      },
    },
    "condition": { # Represents a textual expression in the Common Expression Language (CEL) # A condition which determines whether an asset update should be published.
        # If specified, an asset will be returned only when the expression evaluates
        # to true.
        # When set, `expression` field in the `Expr` must be a valid [CEL expression]
        # (https://github.com/google/cel-spec) on a TemporalAsset with name
        # `temporal_asset`. Example: a Feed with expression ("temporal_asset.deleted
        # == true") will only publish Asset deletions. Other fields of `Expr` are
        # optional.
        # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
        # are documented at https://github.com/google/cel-spec.
        #
        # Example (Comparison):
        #
        #     title: "Summary size limit"
        #     description: "Determines if a summary is less than 100 chars"
        #     expression: "document.summary.size() < 100"
        #
        # Example (Equality):
        #
        #     title: "Requestor is owner"
        #     description: "Determines if requestor is the document owner"
        #     expression: "document.owner == request.auth.claims.email"
        #
        # Example (Logic):
        #
        #     title: "Public documents"
        #     description: "Determine whether the document should be publicly visible"
        #     expression: "document.type != 'private' && document.type != 'internal'"
        #
        # Example (Data Manipulation):
        #
        #     title: "Notification string"
        #     description: "Create a notification string with a timestamp."
        #     expression: "'New message received at ' + string(document.create_time)"
        #
        # The exact variables and functions that may be referenced within an expression
        # are determined by the service that evaluates it. See the service
        # documentation for additional information.
      "description": "A String", # Optional. Description of the expression. This is a longer text which
          # describes the expression, e.g. when hovered over it in a UI.
      "location": "A String", # Optional. String indicating the location of the expression for error
          # reporting, e.g. a file name and a position in the file.
      "expression": "A String", # Textual representation of an expression in Common Expression Language
          # syntax.
      "title": "A String", # Optional. Title for the expression, i.e. a short string describing
          # its purpose. This can be used e.g. in UIs which allow to enter the
          # expression.
    },
  }