Package google.cloud.asset.v1beta1

Index

AssetService

Asset service definition.

BatchGetAssetsHistory

rpc BatchGetAssetsHistory(BatchGetAssetsHistoryRequest) returns (BatchGetAssetsHistoryResponse)

Batch gets the update history of assets that overlap a time window. For IAM_POLICY content, this API outputs history when the asset and its attached IAM POLICY both exist. This can create gaps in the output history. Otherwise, this API outputs history with asset in both non-delete or deleted status. If a specified asset does not exist, this API returns an INVALID_ARGUMENT error.

Authorization Scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/cloud-platform

For more information, see the Authentication Overview.

ExportAssets

rpc ExportAssets(ExportAssetsRequest) returns (Operation)

Exports assets with time and resource types to a given Cloud Storage location. The output format is newline-delimited JSON. This API implements the google.longrunning.Operation API allowing you to keep track of the export. We recommend intervals of at least 2 seconds with exponential retry to poll the export operation result. For regular-size resource parent, the export operation usually finishes within 5 minutes.

Authorization Scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/cloud-platform

For more information, see the Authentication Overview.

Asset

An asset in Google Cloud. An asset can be any resource in the Google Cloud resource hierarchy, a resource outside the Google Cloud resource hierarchy (such as Google Kubernetes Engine clusters and objects), or a policy (e.g. Cloud IAM policy). See Supported asset types for more information.

Fields
name

string

The full name of the asset. Example: //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1

See Resource names for more information.

asset_type

string

The type of the asset. Example: compute.googleapis.com/Disk

See Supported asset types for more information.

resource

Resource

A representation of the resource.

iam_policy

Policy

A representation of the Cloud IAM policy set on a Google Cloud resource. There can be a maximum of one Cloud IAM policy set on any given resource. In addition, Cloud IAM policies inherit their granted access scope from any policies set on parent resources in the resource hierarchy. Therefore, the effectively policy is the union of both the policy set on this resource and each policy set on all of the resource's ancestry resource levels in the hierarchy. See this topic for more information.

org_policy[]

Policy

A representation of an organization policy. There can be more than one organization policy with different constraints set on a given resource.

Union field access_context_policy. A representation of an access policy. access_context_policy can be only one of the following:
access_policy

AccessPolicy

Please also refer to the access policy user guide.

access_level

AccessLevel

Please also refer to the access level user guide.

service_perimeter

ServicePerimeter

Please also refer to the service perimeter user guide.

BatchGetAssetsHistoryRequest

Batch get assets history request.

Fields
parent

string

Required. The relative name of the root asset. It can only be an organization number (such as "organizations/123"), a project ID (such as "projects/my-project-id")", or a project number (such as "projects/12345").

Authorization requires one or more of the following IAM permissions on the specified resource parent:

  • cloudasset.assets.exportResource
  • cloudasset.assets.exportIamPolicy
asset_names[]

string

A list of the full names of the assets. For example: //compute.googleapis.com/projects/my_project_123/zones/zone1/instances/instance1. See Resource Names for more info.

The request becomes a no-op if the asset name list is empty, and the max size of the asset name list is 100 in one request.

content_type

ContentType

Optional. The content type.

read_time_window

TimeWindow

Optional. The time window for the asset history. Both start_time and end_time are optional and if set, it must be after 2018-10-02 UTC. If end_time is not set, it is default to current timestamp. If start_time is not set, the snapshot of the assets at end_time will be returned. The returned results contain all temporal assets whose time window overlap with read_time_window.

BatchGetAssetsHistoryResponse

Batch get assets history response.

Fields
assets[]

TemporalAsset

A list of assets with valid time windows.

ContentType

Asset content type.

Enums
CONTENT_TYPE_UNSPECIFIED Unspecified content type.
RESOURCE Resource metadata.
IAM_POLICY The actual IAM policy set on a resource.

ExportAssetsRequest

Export asset request.

Fields
parent

string

Required. The relative name of the root asset. This can only be an organization number (such as "organizations/123"), a project ID (such as "projects/my-project-id"), a project number (such as "projects/12345"), or a folder number (such as "folders/123").

Authorization requires one or more of the following IAM permissions on the specified resource parent:

  • cloudasset.assets.exportResource
  • cloudasset.assets.exportIamPolicy
read_time

Timestamp

Timestamp to take an asset snapshot. This can only be set to a timestamp between 2018-10-02 UTC (inclusive) and the current time. If not specified, the current time will be used. Due to delays in resource data collection and indexing, there is a volatile window during which running the same query may get different results.

asset_types[]

string

A list of asset types of which to take a snapshot for. For example: "google.compute.Disk". If specified, only matching assets will be returned. See Introduction to Cloud Asset Inventory for all supported asset types.

content_type

ContentType

Asset content type. If not specified, no content but the asset name will be returned.

output_config

OutputConfig

Required. Output configuration indicating where the results will be output to. All results will be in newline delimited JSON format.

ExportAssetsResponse

The export asset response. This message is returned by the google.longrunning.Operations.GetOperation method in the returned google.longrunning.Operation.response field.

Fields
read_time

Timestamp

Time the snapshot was taken.

output_config

OutputConfig

Output configuration indicating where the results were output to. All results are in JSON format.

GcsDestination

A Cloud Storage location.

Fields
Union field object_uri. Required. object_uri can be only one of the following:
uri

string

The uri of the Cloud Storage object. It's the same uri that is used by gsutil. For example: "gs://bucket_name/object_name". See Viewing and Editing Object Metadata for more information.

uri_prefix

string

The uri prefix of all generated Cloud Storage objects. For example: "gs://bucket_name/object_name_prefix". Each object uri is in format: "gs://bucket_name/object_name_prefix// and only contains assets for that type. starts from 0. For example: "gs://bucket_name/object_name_prefix/google.compute.disk/0" is the first shard of output objects containing all google.compute.disk assets. An INVALID_ARGUMENT error will be returned if file with the same name "gs://bucket_name/object_name_prefix" already exists.

OutputConfig

Output configuration for export assets destination.

Fields
gcs_destination

GcsDestination

Destination on Cloud Storage.

Resource

A representation of a Google Cloud resource.

Fields
version

string

The API version. Example: v1

discovery_document_uri

string

The URL of the discovery document containing the resource's JSON schema. Example: https://www.googleapis.com/discovery/v1/apis/compute/v1/rest

This value is unspecified for resources that do not have an API based on a discovery document, such as Cloud Bigtable.

discovery_name

string

The JSON schema name listed in the discovery document. Example: Project

This value is unspecified for resources that do not have an API based on a discovery document, such as Cloud Bigtable.

resource_url

string

The REST URL for accessing the resource. An HTTP GET request using this URL returns the resource itself. Example: https://cloudresourcemanager.googleapis.com/v1/projects/my-project-123

This value is unspecified for resources without a REST API.

parent

string

The full name of the immediate parent of this resource. See Resource Names for more information.

For Google Cloud assets, this value is the parent resource defined in the Cloud IAM policy hierarchy. Example: //cloudresourcemanager.googleapis.com/projects/my_project_123

For third-party assets, this field may be set differently.

data

Struct

The content of the resource, in which some sensitive fields are removed and may not be present.

TemporalAsset

An asset in Google Cloud and its temporal metadata, including the time window when it was observed and its status during that window.

Fields
window

TimeWindow

The time window when the asset data and state was observed.

deleted

bool

Whether the asset has been deleted or not.

asset

Asset

An asset in Google Cloud.

TimeWindow

A time window specified by its start_time and end_time.

Fields
start_time

Timestamp

Start time of the time window (exclusive).

end_time

Timestamp

End time of the time window (inclusive). If not specified, the current timestamp is used instead.