Package google.cloud.datacatalog.v1

Stay organized with collections Save and categorize content based on your preferences.

Index

DataCatalog

Data Catalog API service allows you to discover, understand, and manage your data.

CreateEntry

rpc CreateEntry(CreateEntryRequest) returns (Entry)

Creates an entry.

You can create entries only with 'FILESET', 'CLUSTER', 'DATA_STREAM', or custom types. Data Catalog automatically creates entries with other types during metadata ingestion from integrated systems.

You must enable the Data Catalog API in the project identified by the parent parameter. For more information, see Data Catalog resource project.

An entry group can have a maximum of 100,000 entries.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

CreateEntryGroup

rpc CreateEntryGroup(CreateEntryGroupRequest) returns (EntryGroup)

Creates an entry group.

An entry group contains logically related entries together with Cloud Identity and Access Management policies. These policies specify users who can create, edit, and view entries within entry groups.

Data Catalog automatically creates entry groups with names that start with the @ symbol for the following resources:

  • BigQuery entries (@bigquery)
  • Pub/Sub topics (@pubsub)
  • Dataproc Metastore services (@dataproc_metastore_{SERVICE_NAME_HASH})

You can create your own entry groups for Cloud Storage fileset entries and custom entries together with the corresponding IAM policies. User-created entry groups can't contain the @ symbol, it is reserved for automatically created groups.

Entry groups, like entries, can be searched.

A maximum of 10,000 entry groups may be created per organization across all locations.

You must enable the Data Catalog API in the project identified by the parent parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

CreateTag

rpc CreateTag(CreateTagRequest) returns (Tag)

Creates a tag and assigns it to:

  • An Entry if the method name is projects.locations.entryGroups.entries.tags.create.
  • Or EntryGroupif the method name is projects.locations.entryGroups.tags.create.

Note: The project identified by the parent parameter for the tag and the tag template used to create the tag must be in the same organization.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

CreateTagTemplate

rpc CreateTagTemplate(CreateTagTemplateRequest) returns (TagTemplate)

Creates a tag template.

You must enable the Data Catalog API in the project identified by the parent parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

CreateTagTemplateField

rpc CreateTagTemplateField(CreateTagTemplateFieldRequest) returns (TagTemplateField)

Creates a field in a tag template.

You must enable the Data Catalog API in the project identified by the parent parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

DeleteEntry

rpc DeleteEntry(DeleteEntryRequest) returns (Empty)

Deletes an existing entry.

You can delete only the entries created by the CreateEntry method.

You must enable the Data Catalog API in the project identified by the name parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

DeleteEntryGroup

rpc DeleteEntryGroup(DeleteEntryGroupRequest) returns (Empty)

Deletes an entry group.

You must enable the Data Catalog API in the project identified by the name parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

DeleteTag

rpc DeleteTag(DeleteTagRequest) returns (Empty)

Deletes a tag.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

DeleteTagTemplate

rpc DeleteTagTemplate(DeleteTagTemplateRequest) returns (Empty)

Deletes a tag template and all tags that use it.

You must enable the Data Catalog API in the project identified by the name parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

DeleteTagTemplateField

rpc DeleteTagTemplateField(DeleteTagTemplateFieldRequest) returns (Empty)

Deletes a field in a tag template and all uses of this field from the tags based on this template.

You must enable the Data Catalog API in the project identified by the name parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

GetEntry

rpc GetEntry(GetEntryRequest) returns (Entry)

Gets an entry.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

GetEntryGroup

rpc GetEntryGroup(GetEntryGroupRequest) returns (EntryGroup)

Gets an entry group.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

GetIamPolicy

rpc GetIamPolicy(GetIamPolicyRequest) returns (Policy)

Gets the access control policy for a resource.

May return:

  • ANOT_FOUND error if the resource doesn't exist or you don't have the permission to view it.
  • An empty policy if the resource exists but doesn't have a set policy.

Supported resources are:

  • Tag templates
  • Entry groups

Note: This method doesn't get policies from Google Cloud Platform resources ingested into Data Catalog.

To call this method, you must have the following Google IAM permissions:

  • datacatalog.tagTemplates.getIamPolicy to get policies on tag templates.
  • datacatalog.entryGroups.getIamPolicy to get policies on entry groups.
Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

GetTagTemplate

rpc GetTagTemplate(GetTagTemplateRequest) returns (TagTemplate)

Gets a tag template.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

ListEntries

rpc ListEntries(ListEntriesRequest) returns (ListEntriesResponse)

Lists entries.

Note: Currently, this method can list only custom entries. To get a list of both custom and automatically created entries, use SearchCatalog.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

ListEntryGroups

rpc ListEntryGroups(ListEntryGroupsRequest) returns (ListEntryGroupsResponse)

Lists entry groups.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

ListTags

rpc ListTags(ListTagsRequest) returns (ListTagsResponse)

Lists tags assigned to an Entry. The columns in the response are lowercased.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

LookupEntry

rpc LookupEntry(LookupEntryRequest) returns (Entry)

Gets an entry by its target resource name.

The resource name comes from the source Google Cloud Platform service.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

ModifyEntryContacts

rpc ModifyEntryContacts(ModifyEntryContactsRequest) returns (Contacts)

Modifies contacts, part of the business context of an Entry.

To call this method, you must have the datacatalog.entries.updateContacts IAM permission on the corresponding project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

ModifyEntryOverview

rpc ModifyEntryOverview(ModifyEntryOverviewRequest) returns (EntryOverview)

Modifies entry overview, part of the business context of an Entry.

To call this method, you must have the datacatalog.entries.updateOverview IAM permission on the corresponding project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

ReconcileTags

rpc ReconcileTags(ReconcileTagsRequest) returns (Operation)

ReconcileTags creates or updates a list of tags on the entry. If the ReconcileTagsRequest.force_delete_missing parameter is set, the operation deletes tags not included in the input tag list.

ReconcileTags returns a long-running operation resource that can be queried with Operations.GetOperation to return ReconcileTagsMetadata and a ReconcileTagsResponse message.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

RenameTagTemplateField

rpc RenameTagTemplateField(RenameTagTemplateFieldRequest) returns (TagTemplateField)

Renames a field in a tag template.

You must enable the Data Catalog API in the project identified by the name parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

RenameTagTemplateFieldEnumValue

rpc RenameTagTemplateFieldEnumValue(RenameTagTemplateFieldEnumValueRequest) returns (TagTemplateField)

Renames an enum value in a tag template.

Within a single enum field, enum values must be unique.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

SearchCatalog

rpc SearchCatalog(SearchCatalogRequest) returns (SearchCatalogResponse)

Searches Data Catalog for multiple resources like entries and tags that match a query.

This is a Custom Method that doesn't return all information on a resource, only its ID and high level fields. To get more information, you can subsequently call specific get methods.

Note: Data Catalog search queries don't guarantee full recall. Results that match your query might not be returned, even in subsequent result pages. Additionally, returned (and not returned) results can vary if you repeat search queries.

For more information, see Data Catalog search syntax.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

SetIamPolicy

rpc SetIamPolicy(SetIamPolicyRequest) returns (Policy)

Sets an access control policy for a resource. Replaces any existing policy.

Supported resources are:

  • Tag templates
  • Entry groups

Note: This method sets policies only within Data Catalog and can't be used to manage policies in BigQuery, Pub/Sub, Dataproc Metastore, and any external Google Cloud Platform resources synced with the Data Catalog.

To call this method, you must have the following Google IAM permissions:

  • datacatalog.tagTemplates.setIamPolicy to set policies on tag templates.
  • datacatalog.entryGroups.setIamPolicy to set policies on entry groups.
Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

StarEntry

rpc StarEntry(StarEntryRequest) returns (StarEntryResponse)

Marks an Entry as starred by the current user. Starring information is private to each user.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

TestIamPermissions

rpc TestIamPermissions(TestIamPermissionsRequest) returns (TestIamPermissionsResponse)

Gets your permissions on a resource.

Returns an empty set of permissions if the resource doesn't exist.

Supported resources are:

  • Tag templates
  • Entry groups

Note: This method gets policies only within Data Catalog and can't be used to get policies from BigQuery, Pub/Sub, Dataproc Metastore, and any external Google Cloud Platform resources ingested into Data Catalog.

No Google IAM permissions are required to call this method.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

UnstarEntry

rpc UnstarEntry(UnstarEntryRequest) returns (UnstarEntryResponse)

Marks an Entry as NOT starred by the current user. Starring information is private to each user.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

UpdateEntry

rpc UpdateEntry(UpdateEntryRequest) returns (Entry)

Updates an existing entry.

You must enable the Data Catalog API in the project identified by the entry.name parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

UpdateEntryGroup

rpc UpdateEntryGroup(UpdateEntryGroupRequest) returns (EntryGroup)

Updates an entry group.

You must enable the Data Catalog API in the project identified by the entry_group.name parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

UpdateTag

rpc UpdateTag(UpdateTagRequest) returns (Tag)

Updates an existing tag.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

UpdateTagTemplate

rpc UpdateTagTemplate(UpdateTagTemplateRequest) returns (TagTemplate)

Updates a tag template.

You can't update template fields with this method. These fields are separate resources with their own create, update, and delete methods.

You must enable the Data Catalog API in the project identified by the tag_template.name parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

UpdateTagTemplateField

rpc UpdateTagTemplateField(UpdateTagTemplateFieldRequest) returns (TagTemplateField)

Updates a field in a tag template.

You can't update the field type with this method.

You must enable the Data Catalog API in the project identified by the name parameter. For more information, see Data Catalog resource project.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

PolicyTagManager

Policy Tag Manager API service allows you to manage your policy tags and taxonomies.

Policy tags are used to tag BigQuery columns and apply additional access control policies. A taxonomy is a hierarchical grouping of policy tags that classify data along a common axis.

CreatePolicyTag

rpc CreatePolicyTag(CreatePolicyTagRequest) returns (PolicyTag)

Creates a policy tag in a taxonomy.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

CreateTaxonomy

rpc CreateTaxonomy(CreateTaxonomyRequest) returns (Taxonomy)

Creates a taxonomy in a specified project.

The taxonomy is initially empty, that is, it doesn't contain policy tags.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

DeletePolicyTag

rpc DeletePolicyTag(DeletePolicyTagRequest) returns (Empty)

Deletes a policy tag together with the following:

  • All of its descendant policy tags, if any
  • Policies associated with the policy tag and its descendants
  • References from BigQuery table schema of the policy tag and its descendants
Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

DeleteTaxonomy

rpc DeleteTaxonomy(DeleteTaxonomyRequest) returns (Empty)

Deletes a taxonomy, including all policy tags in this taxonomy, their associated policies, and the policy tags references from BigQuery columns.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

GetIamPolicy

rpc GetIamPolicy(GetIamPolicyRequest) returns (Policy)

Gets the IAM policy for a policy tag or a taxonomy.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

GetPolicyTag

rpc GetPolicyTag(GetPolicyTagRequest) returns (PolicyTag)

Gets a policy tag.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

GetTaxonomy

rpc GetTaxonomy(GetTaxonomyRequest) returns (Taxonomy)

Gets a taxonomy.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

ListPolicyTags

rpc ListPolicyTags(ListPolicyTagsRequest) returns (ListPolicyTagsResponse)

Lists all policy tags in a taxonomy.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

ListTaxonomies

rpc ListTaxonomies(ListTaxonomiesRequest) returns (ListTaxonomiesResponse)

Lists all taxonomies in a project in a particular location that you have a permission to view.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

SetIamPolicy

rpc SetIamPolicy(SetIamPolicyRequest) returns (Policy)

Sets the IAM policy for a policy tag or a taxonomy.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

TestIamPermissions

rpc TestIamPermissions(TestIamPermissionsRequest) returns (TestIamPermissionsResponse)

Returns your permissions on a specified policy tag or taxonomy.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

UpdatePolicyTag

rpc UpdatePolicyTag(UpdatePolicyTagRequest) returns (PolicyTag)

Updates a policy tag, including its display name, description, and parent policy tag.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

UpdateTaxonomy

rpc UpdateTaxonomy(UpdateTaxonomyRequest) returns (Taxonomy)

Updates a taxonomy, including its display name, description, and activated policy types.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

PolicyTagManagerSerialization

Policy Tag Manager Serialization API service allows you to manipulate your policy tags and taxonomies in a serialized format.

Taxonomy is a hierarchical group of policy tags.

ExportTaxonomies

rpc ExportTaxonomies(ExportTaxonomiesRequest) returns (ExportTaxonomiesResponse)

Exports taxonomies in the requested type and returns them, including their policy tags. The requested taxonomies must belong to the same project.

This method generates SerializedTaxonomy protocol buffers with nested policy tags that can be used as input for ImportTaxonomies calls.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

ImportTaxonomies

rpc ImportTaxonomies(ImportTaxonomiesRequest) returns (ImportTaxonomiesResponse)

Creates new taxonomies (including their policy tags) in a given project by importing from inlined or cross-regional sources.

For a cross-regional source, new taxonomies are created by copying from a source in another region.

For an inlined source, taxonomies and policy tags are created in bulk using nested protocol buffer structures.

Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

ReplaceTaxonomy

rpc ReplaceTaxonomy(ReplaceTaxonomyRequest) returns (Taxonomy)

Replaces (updates) a taxonomy and all its policy tags.

The taxonomy and its entire hierarchy of policy tags must be represented literally by SerializedTaxonomy and the nested SerializedPolicyTag messages.

This operation automatically does the following:

  • Deletes the existing policy tags that are missing from the SerializedPolicyTag.
  • Creates policy tags that don't have resource names. They are considered new.
  • Updates policy tags with valid resources names accordingly.
Authorization Scopes

Requires the following OAuth scope:

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

For more information, see the Authentication Overview.

BigQueryConnectionSpec

Specification for the BigQuery connection.

Fields
connection_type

ConnectionType

The type of the BigQuery connection.

has_credential

bool

True if there are credentials attached to the BigQuery connection; false otherwise.

Union field connection_spec.

connection_spec can be only one of the following:

cloud_sql

CloudSqlBigQueryConnectionSpec

Specification for the BigQuery connection to a Cloud SQL instance.

ConnectionType

The type of the BigQuery connection.

Enums
CONNECTION_TYPE_UNSPECIFIED Unspecified type.
CLOUD_SQL Cloud SQL connection.

BigQueryDateShardedSpec

Specification for a group of BigQuery tables with the [prefix]YYYYMMDD name pattern.

For more information, see Introduction to partitioned tables.

Fields
dataset

string

Output only. The Data Catalog resource name of the dataset entry the current table belongs to. For example:

projects/{PROJECT_ID}/locations/{LOCATION}/entrygroups/{ENTRY_GROUP_ID}/entries/{ENTRY_ID}.

table_prefix

string

Output only. The table name prefix of the shards.

The name of any given shard is [table_prefix]YYYYMMDD. For example, for the MyTable20180101 shard, the table_prefix is MyTable.

shard_count

int64

Output only. Total number of shards.

latest_shard_resource

string

Output only. BigQuery resource name of the latest shard.

BigQueryRoutineSpec

Fields specific for BigQuery routines.

Fields
imported_libraries[]

string

Paths of the imported libraries.

BigQueryTableSpec

Describes a BigQuery table.

Fields
table_source_type

TableSourceType

Output only. The table source type.

Union field type_spec. Output only. type_spec can be only one of the following:
view_spec

ViewSpec

Table view specification. Populated only if the table_source_type is BIGQUERY_VIEW.

table_spec

TableSpec

Specification of a BigQuery table. Populated only if the table_source_type is BIGQUERY_TABLE.

BusinessContext

Business Context of the entry.

Fields
entry_overview

EntryOverview

Entry overview fields for rich text descriptions of entries.

contacts

Contacts

Contact people for the entry.

CloudSqlBigQueryConnectionSpec

Specification for the BigQuery connection to a Cloud SQL instance.

Fields
instance_id

string

Cloud SQL instance ID in the format of project:location:instance.

database

string

Database name.

type

DatabaseType

Type of the Cloud SQL database.

DatabaseType

Supported Cloud SQL database types.

Enums
DATABASE_TYPE_UNSPECIFIED Unspecified database type.
POSTGRES Cloud SQL for PostgreSQL.
MYSQL Cloud SQL for MySQL.

ColumnSchema

A column within a schema. Columns can be nested inside other columns.

Fields
column

string

Required. Name of the column.

Must be a UTF-8 string without dots (.). The maximum size is 64 bytes.

type

string

Required. Type of the column.

Must be a UTF-8 string with the maximum size of 128 bytes.

description

string

Optional. Description of the column. Default value is an empty string.

The description must be a UTF-8 string with the maximum size of 2000 bytes.

mode

string

Optional. A column's mode indicates whether values in this column are required, nullable, or repeated.

Only NULLABLE, REQUIRED, and REPEATED values are supported. Default mode is NULLABLE.

default_value

string

Optional. Default value for the column.

ordinal_position

int32

Optional. Ordinal position

highest_indexing_type

IndexingType

Optional. Most important inclusion of this column.

subcolumns[]

ColumnSchema

Optional. Schema of sub-columns. A column can have zero or more sub-columns.

gc_rule

string

Optional. Garbage collection policy for the column or column family. Applies to systems like Cloud Bigtable.

Union field system_spec. Information only applying for columns in Entries from a specific system. system_spec can be only one of the following:
looker_column_spec

LookerColumnSpec

Looker specific column info of this column.

IndexingType

Specifies inclusion of the column in an index

Enums
INDEXING_TYPE_UNSPECIFIED Unspecified.
INDEXING_TYPE_NONE Column not a part of an index.
INDEXING_TYPE_NON_UNIQUE Column Part of non unique index.
INDEXING_TYPE_UNIQUE Column part of unique index.
INDEXING_TYPE_PRIMARY_KEY Column part of the primary key.

LookerColumnSpec

Column info specific to Looker System.

Fields
type

LookerColumnType

Looker specific column type of this column.

LookerColumnType

Column type in Looker.

Enums
LOOKER_COLUMN_TYPE_UNSPECIFIED Unspecified.
DIMENSION Dimension.
DIMENSION_GROUP Dimension group - parent for Dimension.
FILTER Filter.
MEASURE Measure.
PAREMETER Parameter.

CommonUsageStats

Common statistics on the entry's usage.

They can be set on any system.

Fields

Union field _view_count.

_view_count can be only one of the following:

view_count

int64

View count in source system.

Contacts

Contact people for the entry.

Fields
people[]

Person

The list of contact people for the entry.

Person

A contact person for the entry.

Fields
designation

string

Designation of the person, for example, Data Steward.

email

string

Email of the person in the format of john.doe@xyz, <john.doe@xyz>, or John Doe<john.doe@xyz>.

CreateEntryGroupRequest

Request message for CreateEntryGroup.

Fields
parent

string

Required. The names of the project and location that the new entry group belongs to.

Note: The entry group itself and its child resources might not be stored in the location specified in its name.

entry_group_id

string

Required. The ID of the entry group to create.

The ID must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), and must start with a letter or underscore. The maximum size is 64 bytes when encoded in UTF-8.

entry_group

EntryGroup

The entry group to create. Defaults to empty.

CreateEntryRequest

Request message for CreateEntry.

Fields
parent

string

Required. The name of the entry group this entry belongs to.

Note: The entry itself and its child resources might not be stored in the location specified in its name.

entry_id

string

Required. The ID of the entry to create.

The ID must contain only letters (a-z, A-Z), numbers (0-9), and underscores (_). The maximum size is 64 bytes when encoded in UTF-8.

entry

Entry

Required. The entry to create.

CreatePolicyTagRequest

Request message for CreatePolicyTag.

Fields
parent

string

Required. Resource name of the taxonomy that the policy tag will belong to.

Authorization requires the following IAM permission on the specified resource parent:

  • datacatalog.taxonomies.update
policy_tag

PolicyTag

The policy tag to create.

CreateTagRequest

Request message for CreateTag.

Fields
parent

string

Required. The name of the resource to attach this tag to.

Tags can be attached to entries or entry groups. An entry can have up to 1000 attached tags.

Note: The tag and its child resources might not be stored in the location specified in its name.

tag

Tag

Required. The tag to create.

CreateTagTemplateFieldRequest

Request message for CreateTagTemplateField.

Fields
parent

string

Required. The name of the project and the template location region.

tag_template_field_id

string

Required. The ID of the tag template field to create.

Note: Adding a required field to an existing template is not allowed.

Field IDs can contain letters (both uppercase and lowercase), numbers (0-9), underscores (_) and dashes (-). Field IDs must be at least 1 character long and at most 128 characters long. Field IDs must also be unique within their template.

tag_template_field

TagTemplateField

Required. The tag template field to create.

CreateTagTemplateRequest

Request message for CreateTagTemplate.

Fields
parent

string

Required. The name of the project and the template location region.

tag_template_id

string

Required. The ID of the tag template to create.

The ID must contain only lowercase letters (a-z), numbers (0-9), or underscores (_), and must start with a letter or underscore. The maximum size is 64 bytes when encoded in UTF-8.

tag_template

TagTemplate

Required. The tag template to create.

CreateTaxonomyRequest

Request message for CreateTaxonomy.

Fields
parent

string

Required. Resource name of the project that the taxonomy will belong to.

Authorization requires the following IAM permission on the specified resource parent:

  • datacatalog.taxonomies.create
taxonomy

Taxonomy

The taxonomy to create.

CrossRegionalSource

Cross-regional source used to import an existing taxonomy into a different region.

Fields
taxonomy

string

Required. The resource name of the source taxonomy to import.

DataSource

Physical location of an entry.

Fields
service

Service

Service that physically stores the data.

resource

string

Full name of a resource as defined by the service. For example:

//bigquery.googleapis.com/projects/{PROJECT_ID}/locations/{LOCATION}/datasets/{DATASET_ID}/tables/{TABLE_ID}

source_entry

string

Output only. Data Catalog entry name, if applicable.

Union field properties.

properties can be only one of the following:

storage_properties

StorageProperties

Detailed properties of the underlying storage.

Service

Name of a service that stores the data.

Enums
SERVICE_UNSPECIFIED Default unknown service.
CLOUD_STORAGE Google Cloud Storage service.
BIGQUERY BigQuery service.

DataSourceConnectionSpec

Specification that applies to a data source connection. Valid only for entries with the DATA_SOURCE_CONNECTION type. Only one of internal specs can be set at the time, and cannot be changed later.

Fields
bigquery_connection_spec

BigQueryConnectionSpec

Output only. Fields specific to BigQuery connections.

DatabaseTableSpec

Specification that applies to a table resource. Valid only for entries with the TABLE type.

Fields
type

TableType

Type of this table.

dataplex_table

DataplexTableSpec

Output only. Fields specific to a Dataplex table and present only in the Dataplex table entries.

database_view_spec

DatabaseViewSpec

Spec what aplies to tables that are actually views. Not set for "real" tables.

DatabaseViewSpec

Specification that applies to database view.

Fields
view_type

ViewType

Type of this view.

Union field source_definition. Definition of the view. source_definition can be only one of the following:
base_table

string

Name of a singular table this view reflects one to one.

sql_query

string

SQL query used to generate this view.

ViewType

Concrete type of the view.

Enums
VIEW_TYPE_UNSPECIFIED Default unknown view type.
STANDARD_VIEW Standard view.
MATERIALIZED_VIEW Materialized view.

TableType

Type of the table.

Enums
TABLE_TYPE_UNSPECIFIED Default unknown table type.
NATIVE Native table.
EXTERNAL External table.

DataplexExternalTable

External table registered by Dataplex. Dataplex publishes data discovered from an asset into multiple other systems (BigQuery, DPMS) in form of tables. We call them "external tables". External tables are also synced into the Data Catalog. This message contains pointers to those external tables (fully qualified name, resource name et cetera) within the Data Catalog.

Fields
system

IntegratedSystem

Service in which the external table is registered.

fully_qualified_name

string

Fully qualified name (FQN) of the external table.

google_cloud_resource

string

Google Cloud resource name of the external table.

data_catalog_entry

string

Name of the Data Catalog entry representing the external table.

DataplexFilesetSpec

Entry specyfication for a Dataplex fileset.

Fields
dataplex_spec

DataplexSpec

Common Dataplex fields.

DataplexSpec

Common Dataplex fields.

Fields
asset

string

Fully qualified resource name of an asset in Dataplex, to which the underlying data source (Cloud Storage bucket or BigQuery dataset) of the entity is attached.

data_format

PhysicalSchema

Format of the data.

compression_format

string

Compression format of the data, e.g., zip, gzip etc.

project_id

string

Project ID of the underlying Cloud Storage or BigQuery data. Note that this may not be the same project as the correspondingly Dataplex lake / zone / asset.

DataplexTableSpec

Entry specification for a Dataplex table.

Fields
external_tables[]

DataplexExternalTable

List of external tables registered by Dataplex in other systems based on the same underlying data.

External tables allow to query this data in those systems.

dataplex_spec

DataplexSpec

Common Dataplex fields.

user_managed

bool

Indicates if the table schema is managed by the user or not.

DeleteEntryGroupRequest

Request message for DeleteEntryGroup.

Fields
name

string

Required. The name of the entry group to delete.

force

bool

Optional. If true, deletes all entries in the entry group.

DeleteEntryRequest

Request message for DeleteEntry.

Fields
name

string

Required. The name of the entry to delete.

DeletePolicyTagRequest

Request message for DeletePolicyTag.

Fields
name

string

Required. Resource name of the policy tag to delete.

Note: All of its descendant policy tags are also deleted.

Authorization requires the following IAM permission on the specified resource name:

  • datacatalog.taxonomies.update

DeleteTagRequest

Request message for DeleteTag.

Fields
name

string

Required. The name of the tag to delete.

DeleteTagTemplateFieldRequest

Request message for DeleteTagTemplateField.

Fields
name

string

Required. The name of the tag template field to delete.

force

bool

Required. If true, deletes this field from any tags that use it.

Currently, true is the only supported value.

DeleteTagTemplateRequest

Request message for DeleteTagTemplate.

Fields
name

string

Required. The name of the tag template to delete.

force

bool

Required. If true, deletes all tags that use this template.

Currently, true is the only supported value.

DeleteTaxonomyRequest

Request message for DeleteTaxonomy.

Fields
name

string

Required. Resource name of the taxonomy to delete.

Note: All policy tags in this taxonomy are also deleted.

Authorization requires the following IAM permission on the specified resource name:

  • datacatalog.taxonomies.delete

Entry

Entry metadata. A Data Catalog entry represents another resource in Google Cloud Platform (such as a BigQuery dataset or a Pub/Sub topic) or outside of it. You can use the linked_resource field in the entry resource to refer to the original resource ID of the source system.

An entry resource contains resource details, for example, its schema. Additionally, you can attach flexible metadata to an entry in the form of a Tag.

Fields
name

string

Output only. The resource name of an entry in URL format.

Note: The entry itself and its child resources might not be stored in the location specified in its name.

linked_resource

string

The resource this metadata entry refers to.

For Google Cloud Platform resources, linked_resource is the Full Resource Name. For example, the linked_resource for a table resource from BigQuery is:

//bigquery.googleapis.com/projects/{PROJECT_ID}/datasets/{DATASET_ID}/tables/{TABLE_ID}

Output only when the entry is one of the types in the EntryType enum.

For entries with a user_specified_type, this field is optional and defaults to an empty string.

The resource string must contain only letters (a-z, A-Z), numbers (0-9), underscores (_), periods (.), colons (:), slashes (/), dashes (-), and hashes (#). The maximum size is 200 bytes when encoded in UTF-8.

fully_qualified_name

string

Fully qualified name (FQN) of the resource. Set automatically for entries representing resources from synced systems. Settable only during creation and read-only afterwards. Can be used for search and lookup of the entries.

FQNs take two forms:

  • For non-regionalized resources:

{SYSTEM}:{PROJECT}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}

  • For regionalized resources:

{SYSTEM}:{PROJECT}.{LOCATION_ID}.{PATH_TO_RESOURCE_SEPARATED_WITH_DOTS}

Example for a DPMS table:

dataproc_metastore:{PROJECT_ID}.{LOCATION_ID}.{INSTANCE_ID}.{DATABASE_ID}.{TABLE_ID}

display_name

string

Display name of an entry.

The maximum size is 500 bytes when encoded in UTF-8. Default value is an empty string.

description

string

Entry description that can consist of several sentences or paragraphs that describe entry contents.

The description must not contain Unicode non-characters as well as C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF). The maximum size is 2000 bytes when encoded in UTF-8. Default value is an empty string.

business_context

BusinessContext

Business Context of the entry. Not supported for BigQuery datasets

schema

Schema

Schema of the entry. An entry might not have any schema attached to it.

source_system_timestamps

SystemTimestamps

Timestamps from the underlying resource, not from the Data Catalog entry.

Output only when the entry has a system listed in the IntegratedSystem enum. For entries with user_specified_system, this field is optional and defaults to an empty timestamp.

usage_signal

UsageSignal

Resource usage statistics.

labels

map<string, string>

Cloud labels attached to the entry.

In Data Catalog, you can create and modify labels attached only to custom entries. Synced entries have unmodifiable labels that come from the source system.

data_source

DataSource

Output only. Physical location of the entry.

personal_details

PersonalDetails

Output only. Additional information related to the entry. Private to the current user.

Union field entry_type. Required. Entry type. entry_type can be only one of the following:
type

EntryType

The type of the entry. Only used for entries with types listed in the EntryType enum.

Currently, only FILESET enum value is allowed. All other entries created in Data Catalog must use the user_specified_type.

user_specified_type

string

Custom entry type that doesn't match any of the values allowed for input and listed in the EntryType enum.

When creating an entry, first check the type values in the enum. If there are no appropriate types for the new entry, provide a custom value, for example, my_special_type.

The user_specified_type string has the following limitations:

  • Is case insensitive.
  • Must begin with a letter or underscore.
  • Can only contain letters, numbers, and underscores.
  • Must be at least 1 character and at most 64 characters long.
Union field system. The source system of the entry. system can be only one of the following:
integrated_system

IntegratedSystem

Output only. Indicates the entry's source system that Data Catalog integrates with, such as BigQuery, Pub/Sub, or Dataproc Metastore.

user_specified_system

string

Indicates the entry's source system that Data Catalog doesn't automatically integrate with.

The user_specified_system string has the following limitations:

  • Is case insensitive.
  • Must begin with a letter or underscore.
  • Can only contain letters, numbers, and underscores.
  • Must be at least 1 character and at most 64 characters long.
Union field system_spec. System specification. Can be used as a complement for spec, when some metadata is relevant for all entries existing within given system system_spec can be only one of the following:
sql_database_system_spec

SqlDatabaseSystemSpec

Specification that applies to a relational database system. Only settable when user_specified_system is equal to SQL_DATABASE

looker_system_spec

LookerSystemSpec

Specification that applies to Looker sysstem. Only settable when user_specified_system is equal to LOOKER

Union field type_spec. Type specification. type_spec can be only one of the following:
gcs_fileset_spec

GcsFilesetSpec

Specification that applies to a Cloud Storage fileset. Valid only for entries with the FILESET type.

bigquery_table_spec

BigQueryTableSpec

Output only. Specification that applies to a BigQuery table. Valid only for entries with the TABLE type.

bigquery_date_sharded_spec

BigQueryDateShardedSpec

Output only. Specification for a group of BigQuery tables with the [prefix]YYYYMMDD name pattern.

For more information, see Introduction to partitioned tables.

Union field spec. Type- and system-specific information. Specifications for types contain fields common to all entries of a given type, and sub-specifications with fields specific to a given source system.

When extending the API with new types and systems, use this field instead of the legacy type_spec. spec can be only one of the following:

database_table_spec

DatabaseTableSpec

Specification that applies to a table resource. Valid only for entries with the TABLE or EXPLORE type.

data_source_connection_spec

DataSourceConnectionSpec

Specification that applies to a data source connection. Valid only for entries with the DATA_SOURCE_CONNECTION type.

routine_spec

RoutineSpec

Specification that applies to a user-defined function or procedure. Valid only for entries with the ROUTINE type.

fileset_spec

FilesetSpec

Specification that applies to a fileset resource. Valid only for entries with the FILESET type.

EntryGroup

Entry group metadata.

An EntryGroup resource represents a logical grouping of zero or more Data Catalog Entry resources.

Fields
name

string

The resource name of the entry group in URL format.

Note: The entry group itself and its child resources might not be stored in the location specified in its name.

display_name

string

A short name to identify the entry group, for example, "analytics data - jan 2011". Default value is an empty string.

description

string

Entry group description. Can consist of several sentences or paragraphs that describe the entry group contents. Default value is an empty string.

data_catalog_timestamps

SystemTimestamps

Output only. Timestamps of the entry group. Default value is empty.

EntryOverview

Entry overview fields for rich text descriptions of entries.

Fields
overview

string

Entry overview with support for rich text.

The overview must only contain Unicode characters, and should be formatted using HTML. The maximum length is 10 MiB as this value holds HTML descriptions including encoded images. The maximum length of the text without images is 100 KiB.

EntryType

The enum field that lists all the types of entry resources in Data Catalog. For example, a BigQuery table entry has the TABLE type.

Enums
ENTRY_TYPE_UNSPECIFIED Default unknown type.
TABLE The entry type that has a GoogleSQL schema, including logical views.
MODEL

Output only. The type of models.

For more information, see Supported models in BigQuery ML.

DATA_STREAM An entry type for streaming entries. For example, a Pub/Sub topic.
FILESET An entry type for a set of files or objects. For example, a Cloud Storage fileset.
CLUSTER A group of servers that work together. For example, a Kafka cluster.
DATABASE A database.
DATA_SOURCE_CONNECTION Output only. Connection to a data source. For example, a BigQuery connection.
ROUTINE Output only. Routine, for example, a BigQuery routine.
LAKE A Dataplex lake.
ZONE A Dataplex zone.
SERVICE A service, for example, a Dataproc Metastore service.
DATABASE_SCHEMA Schema within a relational database.
DASHBOARD A Dashboard, for example from Looker.
EXPLORE

A Looker Explore.

For more information, see Looker Explore API.

LOOK

A Looker Look.

For more information, see Looker Look API.

ExportTaxonomiesRequest

Request message for ExportTaxonomies.

Fields
parent

string

Required. Resource name of the project that the exported taxonomies belong to.

Authorization requires the following IAM permission on the specified resource parent:

  • datacatalog.taxonomies.get