Class DataCatalogAsyncClient (3.8.1)

DataCatalogAsyncClient(*, credentials: Optional[google.auth.credentials.Credentials] = None, transport: Union[str, google.cloud.datacatalog_v1beta1.services.data_catalog.transports.base.DataCatalogTransport] = 'grpc_asyncio', client_options: Optional[google.api_core.client_options.ClientOptions] = None, client_info: google.api_core.gapic_v1.client_info.ClientInfo = <google.api_core.gapic_v1.client_info.ClientInfo object>)

Data Catalog API service allows clients to discover, understand, and manage their data.

Inheritance

builtins.object > DataCatalogAsyncClient

Properties

transport

Returns the transport used by the client instance.

Returns
TypeDescription
DataCatalogTransportThe transport used by the client instance.

Methods

DataCatalogAsyncClient

DataCatalogAsyncClient(*, credentials: Optional[google.auth.credentials.Credentials] = None, transport: Union[str, google.cloud.datacatalog_v1beta1.services.data_catalog.transports.base.DataCatalogTransport] = 'grpc_asyncio', client_options: Optional[google.api_core.client_options.ClientOptions] = None, client_info: google.api_core.gapic_v1.client_info.ClientInfo = <google.api_core.gapic_v1.client_info.ClientInfo object>)

Instantiates the data catalog client.

Parameters
NameDescription
credentials Optional[google.auth.credentials.Credentials]

The authorization credentials to attach to requests. These credentials identify the application to the service; if none are specified, the client will attempt to ascertain the credentials from the environment.

transport Union[str, `.DataCatalogTransport`]

The transport to use. If set to None, a transport is chosen automatically.

client_options ClientOptions

Custom options for the client. It won't take effect if a transport instance is provided. (1) The api_endpoint property can be used to override the default endpoint provided by the client. GOOGLE_API_USE_MTLS_ENDPOINT environment variable can also be used to override the endpoint: "always" (always use the default mTLS endpoint), "never" (always use the default regular endpoint) and "auto" (auto switch to the default mTLS endpoint if client certificate is present, this is the default value). However, the api_endpoint property takes precedence if provided. (2) If GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is "true", then the client_cert_source property can be used to provide client certificate for mutual TLS transport. If not provided, the default SSL client certificate will be used if present. If GOOGLE_API_USE_CLIENT_CERTIFICATE is "false" or not set, no client certificate will be used.

Exceptions
TypeDescription
google.auth.exceptions.MutualTlsChannelErrorIf mutual TLS transport creation failed for any reason.

common_billing_account_path

common_billing_account_path(billing_account: str)

Returns a fully-qualified billing_account string.

common_folder_path

common_folder_path(folder: str)

Returns a fully-qualified folder string.

common_location_path

common_location_path(project: str, location: str)

Returns a fully-qualified location string.

common_organization_path

common_organization_path(organization: str)

Returns a fully-qualified organization string.

common_project_path

common_project_path(project: str)

Returns a fully-qualified project string.

create_entry

create_entry(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.CreateEntryRequest, dict]] = None, *, parent: Optional[str] = None, entry_id: Optional[str] = None, entry: Optional[google.cloud.datacatalog_v1beta1.types.datacatalog.Entry] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Creates an entry. Only entries of 'FILESET' type or user-specified type can be created.

Users should enable the Data Catalog API in the project identified by the parent parameter (see Data Catalog Resource Project for more information).

A maximum of 100,000 entries may be created per entry group.

from google.cloud import datacatalog_v1beta1

async def sample_create_entry():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    entry = datacatalog_v1beta1.Entry()
    entry.type_ = "FILESET"
    entry.integrated_system = "CLOUD_PUBSUB"
    entry.gcs_fileset_spec.file_patterns = ['file_patterns_value_1', 'file_patterns_value_2']

    request = datacatalog_v1beta1.CreateEntryRequest(
        parent="parent_value",
        entry_id="entry_id_value",
        entry=entry,
    )

    # Make the request
    response = await client.create_entry(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.CreateEntryRequest, dict]

The request object. Request message for CreateEntry.

parent `str`

Required. The name of the entry group this entry is in. Example: - projects/{project_id}/locations/{location}/entryGroups/{entry_group_id} Note that this Entry and its child resources may not actually be stored in the location in this name. This corresponds to the parent field on the request instance; if request is provided, this should not be set.

entry_id `str`

Required. The id of the entry to create. This corresponds to the entry_id field on the request instance; if request is provided, this should not be set.

entry Entry

Required. The entry to create. This corresponds to the entry field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.EntryEntry Metadata. A Data Catalog Entry resource represents another resource in Google Cloud Platform (such as a BigQuery dataset or a Pub/Sub topic), or outside of Google Cloud Platform. Clients 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, such as its schema. An Entry can also be used to attach flexible metadata, such as a Tag.

create_entry_group

create_entry_group(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.CreateEntryGroupRequest, dict]] = None, *, parent: Optional[str] = None, entry_group_id: Optional[str] = None, entry_group: Optional[google.cloud.datacatalog_v1beta1.types.datacatalog.EntryGroup] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

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

Users should enable the Data Catalog API in the project identified by the parent parameter (see Data Catalog Resource Project for more information).

from google.cloud import datacatalog_v1beta1

async def sample_create_entry_group():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.CreateEntryGroupRequest(
        parent="parent_value",
        entry_group_id="entry_group_id_value",
    )

    # Make the request
    response = await client.create_entry_group(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.CreateEntryGroupRequest, dict]

The request object. Request message for CreateEntryGroup.

parent `str`

Required. The name of the project this entry group is in. Example: - projects/{project_id}/locations/{location} Note that this EntryGroup and its child resources may not actually be stored in the location in this name. This corresponds to the parent field on the request instance; if request is provided, this should not be set.

entry_group_id `str`

Required. The id of the entry group to create. The id must begin with a letter or underscore, contain only English letters, numbers and underscores, and be at most 64 characters. This corresponds to the entry_group_id field on the request instance; if request is provided, this should not be set.

entry_group EntryGroup

The entry group to create. Defaults to an empty entry group. This corresponds to the entry_group field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.EntryGroupEntryGroup Metadata. An EntryGroup resource represents a logical grouping of zero or more Data Catalog Entry resources.

create_tag

create_tag(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.CreateTagRequest, dict]] = None, *, parent: Optional[str] = None, tag: Optional[google.cloud.datacatalog_v1beta1.types.tags.Tag] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Creates a tag on an xref_Entry. Note: The project identified by the parent parameter for the tag <https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.entryGroups.entries.tags/create#path-parameters> and the tag template <https://cloud.google.com/data-catalog/docs/reference/rest/v1beta1/projects.locations.tagTemplates/create#path-parameters> used to create the tag must be from the same organization.

from google.cloud import datacatalog_v1beta1

async def sample_create_tag():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    tag = datacatalog_v1beta1.Tag()
    tag.column = "column_value"
    tag.template = "template_value"

    request = datacatalog_v1beta1.CreateTagRequest(
        parent="parent_value",
        tag=tag,
    )

    # Make the request
    response = await client.create_tag(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.CreateTagRequest, dict]

The request object. Request message for CreateTag.

parent `str`

Required. The name of the resource to attach this tag to. Tags can be attached to Entries. Example: - projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id} Note that this Tag and its child resources may not actually be stored in the location in this name. This corresponds to the parent field on the request instance; if request is provided, this should not be set.

tag Tag

Required. The tag to create. This corresponds to the tag field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.TagTags are used to attach custom metadata to Data Catalog resources. Tags conform to the specifications within their tag template. See [Data Catalog IAM](\ https://cloud.google.com/data-catalog/docs/concepts/iam) for information on the permissions needed to create or view tags.

create_tag_template

create_tag_template(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.CreateTagTemplateRequest, dict]] = None, *, parent: Optional[str] = None, tag_template_id: Optional[str] = None, tag_template: Optional[google.cloud.datacatalog_v1beta1.types.tags.TagTemplate] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Creates a tag template. The user should enable the Data Catalog API in the project identified by the parent parameter (see Data Catalog Resource Project <https://cloud.google.com/data-catalog/docs/concepts/resource-project>__ for more information).

from google.cloud import datacatalog_v1beta1

async def sample_create_tag_template():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.CreateTagTemplateRequest(
        parent="parent_value",
        tag_template_id="tag_template_id_value",
    )

    # Make the request
    response = await client.create_tag_template(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.CreateTagTemplateRequest, dict]

The request object. Request message for CreateTagTemplate.

parent `str`

Required. The name of the project and the template location [region](https://cloud.google.com/data-catalog/docs/concepts/regions. Example: - projects/{project_id}/locations/us-central1 This corresponds to the parent field on the request instance; if request is provided, this should not be set.

tag_template_id `str`

Required. The id of the tag template to create. This corresponds to the tag_template_id field on the request instance; if request is provided, this should not be set.

tag_template TagTemplate

Required. The tag template to create. This corresponds to the tag_template field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.TagTemplateA tag template defines a tag, which can have one or more typed fields. The template is used to create and attach the tag to GCP resources. [Tag template roles](\ https://cloud.google.com/iam/docs/understanding-roles#data-catalog-roles) provide permissions to create, edit, and use the template. See, for example, the [TagTemplate User](\ https://cloud.google.com/data-catalog/docs/how-to/template-user) role, which includes permission to use the tag template to tag resources.

create_tag_template_field

create_tag_template_field(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.CreateTagTemplateFieldRequest, dict]] = None, *, parent: Optional[str] = None, tag_template_field_id: Optional[str] = None, tag_template_field: Optional[google.cloud.datacatalog_v1beta1.types.tags.TagTemplateField] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Creates a field in a tag template. The user should enable the Data Catalog API in the project identified by the parent parameter (see Data Catalog Resource Project <https://cloud.google.com/data-catalog/docs/concepts/resource-project>__ for more information).

from google.cloud import datacatalog_v1beta1

async def sample_create_tag_template_field():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    tag_template_field = datacatalog_v1beta1.TagTemplateField()
    tag_template_field.type_.primitive_type = "TIMESTAMP"

    request = datacatalog_v1beta1.CreateTagTemplateFieldRequest(
        parent="parent_value",
        tag_template_field_id="tag_template_field_id_value",
        tag_template_field=tag_template_field,
    )

    # Make the request
    response = await client.create_tag_template_field(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.CreateTagTemplateFieldRequest, dict]

The request object. Request message for CreateTagTemplateField.

parent `str`

Required. The name of the project and the template location region <https://cloud.google.com/data-catalog/docs/concepts/regions>__. Example: - projects/{project_id}/locations/us-central1/tagTemplates/{tag_template_id} This corresponds to the parent field on the request instance; if request is provided, this should not be set.

tag_template_field_id `str`

Required. The ID of the tag template field to create. 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. This corresponds to the tag_template_field_id field on the request instance; if request is provided, this should not be set.

tag_template_field TagTemplateField

Required. The tag template field to create. This corresponds to the tag_template_field field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.TagTemplateFieldThe template for an individual field within a tag template.

delete_entry

delete_entry(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.DeleteEntryRequest, dict]] = None, *, name: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Deletes an existing entry. Only entries created through xref_CreateEntry method can be deleted. Users should enable the Data Catalog API in the project identified by the name parameter (see Data Catalog Resource Project for more information).

from google.cloud import datacatalog_v1beta1

async def sample_delete_entry():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.DeleteEntryRequest(
        name="name_value",
    )

    # Make the request
    await client.delete_entry(request=request)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.DeleteEntryRequest, dict]

The request object. Request message for DeleteEntry.

name `str`

Required. The name of the entry. Example: - projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id} This corresponds to the name field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

delete_entry_group

delete_entry_group(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.DeleteEntryGroupRequest, dict]] = None, *, name: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Deletes an EntryGroup. Only entry groups that do not contain entries can be deleted. Users should enable the Data Catalog API in the project identified by the name parameter (see Data Catalog Resource Project for more information).

from google.cloud import datacatalog_v1beta1

async def sample_delete_entry_group():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.DeleteEntryGroupRequest(
        name="name_value",
    )

    # Make the request
    await client.delete_entry_group(request=request)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.DeleteEntryGroupRequest, dict]

The request object. Request message for DeleteEntryGroup.

name `str`

Required. The name of the entry group. For example, projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}. This corresponds to the name field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

delete_tag

delete_tag(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.DeleteTagRequest, dict]] = None, *, name: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Deletes a tag.

from google.cloud import datacatalog_v1beta1

async def sample_delete_tag():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.DeleteTagRequest(
        name="name_value",
    )

    # Make the request
    await client.delete_tag(request=request)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.DeleteTagRequest, dict]

The request object. Request message for DeleteTag.

name `str`

Required. The name of the tag to delete. Example: - projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id}/tags/{tag_id} This corresponds to the name field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

delete_tag_template

delete_tag_template(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.DeleteTagTemplateRequest, dict]] = None, *, name: Optional[str] = None, force: Optional[bool] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Deletes a tag template and all tags using the template. Users should enable the Data Catalog API in the project identified by the name parameter (see Data Catalog Resource Project for more information).

from google.cloud import datacatalog_v1beta1

async def sample_delete_tag_template():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.DeleteTagTemplateRequest(
        name="name_value",
        force=True,
    )

    # Make the request
    await client.delete_tag_template(request=request)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.DeleteTagTemplateRequest, dict]

The request object. Request message for DeleteTagTemplate.

name `str`

Required. The name of the tag template to delete. Example: - projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id} This corresponds to the name field on the request instance; if request is provided, this should not be set.

force `bool`

Required. Currently, this field must always be set to true. This confirms the deletion of any possible tags using this template. force = false will be supported in the future. This corresponds to the force field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

delete_tag_template_field

delete_tag_template_field(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.DeleteTagTemplateFieldRequest, dict]] = None, *, name: Optional[str] = None, force: Optional[bool] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Deletes a field in a tag template and all uses of that field. Users should enable the Data Catalog API in the project identified by the name parameter (see Data Catalog Resource Project for more information).

from google.cloud import datacatalog_v1beta1

async def sample_delete_tag_template_field():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.DeleteTagTemplateFieldRequest(
        name="name_value",
        force=True,
    )

    # Make the request
    await client.delete_tag_template_field(request=request)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.DeleteTagTemplateFieldRequest, dict]

The request object. Request message for DeleteTagTemplateField.

name `str`

Required. The name of the tag template field to delete. Example: - projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id} This corresponds to the name field on the request instance; if request is provided, this should not be set.

force `bool`

Required. Currently, this field must always be set to true. This confirms the deletion of this field from any tags using this field. force = false will be supported in the future. This corresponds to the force field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

entry_group_path

entry_group_path(project: str, location: str, entry_group: str)

Returns a fully-qualified entry_group string.

entry_path

entry_path(project: str, location: str, entry_group: str, entry: str)

Returns a fully-qualified entry string.

from_service_account_file

from_service_account_file(filename: str, *args, **kwargs)

Creates an instance of this client using the provided credentials file.

Parameter
NameDescription
filename str

The path to the service account private key json file.

Returns
TypeDescription
DataCatalogAsyncClientThe constructed client.

from_service_account_info

from_service_account_info(info: dict, *args, **kwargs)

Creates an instance of this client using the provided credentials info.

Parameter
NameDescription
info dict

The service account private key info.

Returns
TypeDescription
DataCatalogAsyncClientThe constructed client.

from_service_account_json

from_service_account_json(filename: str, *args, **kwargs)

Creates an instance of this client using the provided credentials file.

Parameter
NameDescription
filename str

The path to the service account private key json file.

Returns
TypeDescription
DataCatalogAsyncClientThe constructed client.

get_entry

get_entry(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.GetEntryRequest, dict]] = None, *, name: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Gets an entry.

from google.cloud import datacatalog_v1beta1

async def sample_get_entry():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.GetEntryRequest(
        name="name_value",
    )

    # Make the request
    response = await client.get_entry(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.GetEntryRequest, dict]

The request object. Request message for GetEntry.

name `str`

Required. The name of the entry. Example: - projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id} This corresponds to the name field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.EntryEntry Metadata. A Data Catalog Entry resource represents another resource in Google Cloud Platform (such as a BigQuery dataset or a Pub/Sub topic), or outside of Google Cloud Platform. Clients 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, such as its schema. An Entry can also be used to attach flexible metadata, such as a Tag.

get_entry_group

get_entry_group(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.GetEntryGroupRequest, dict]] = None, *, name: Optional[str] = None, read_mask: Optional[google.protobuf.field_mask_pb2.FieldMask] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Gets an EntryGroup.

from google.cloud import datacatalog_v1beta1

async def sample_get_entry_group():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.GetEntryGroupRequest(
        name="name_value",
    )

    # Make the request
    response = await client.get_entry_group(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.GetEntryGroupRequest, dict]

The request object. Request message for GetEntryGroup.

name `str`

Required. The name of the entry group. For example, projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}. This corresponds to the name field on the request instance; if request is provided, this should not be set.

read_mask `google.protobuf.field_mask_pb2.FieldMask`

The fields to return. If not set or empty, all fields are returned. This corresponds to the read_mask field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.EntryGroupEntryGroup Metadata. An EntryGroup resource represents a logical grouping of zero or more Data Catalog Entry resources.

get_iam_policy

get_iam_policy(request: Optional[Union[google.iam.v1.iam_policy_pb2.GetIamPolicyRequest, dict]] = None, *, resource: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Gets the access control policy for a resource. A NOT_FOUND error is returned if the resource does not exist. An empty policy is returned if the resource exists but does not have a policy set on it.

Supported resources are:

  • Tag templates.
  • Entries.
  • Entry groups. Note, this method cannot be used to manage policies for BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to Data Catalog.

Callers must have following Google IAM permission

  • datacatalog.tagTemplates.getIamPolicy to get policies on tag templates.
  • datacatalog.entries.getIamPolicy to get policies on entries.
  • datacatalog.entryGroups.getIamPolicy to get policies on entry groups.
from google.cloud import datacatalog_v1beta1
from google.iam.v1 import iam_policy_pb2  # type: ignore

async def sample_get_iam_policy():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = iam_policy_pb2.GetIamPolicyRequest(
        resource="resource_value",
    )

    # Make the request
    response = await client.get_iam_policy(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.iam.v1.iam_policy_pb2.GetIamPolicyRequest, dict]

The request object. Request message for GetIamPolicy method.

resource `str`

REQUIRED: The resource for which the policy is being requested. See the operation documentation for the appropriate value for this field. This corresponds to the resource field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.iam.v1.policy_pb2.PolicyAn Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A Policy is a collection of bindings. A binding binds one or more members, or principals, to a single role. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A role is a named list of permissions; each role can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a binding can also specify a condition, which is a logical expression that allows access to a resource only if the expression evaluates to true. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](\ https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01t00:00:00.000z')",="" }="" }="" ],="" "etag":="" "bwwwja0yfja=", " version":="" 3="" }="" **yaml="" example:**="" bindings:="" -="" members:="" -="" user:\="" mike@example.com="" -="" group:\="" admins@example.com="" -="" domain:google.com="" -="" serviceaccount:\="" my-project-id@appspot.gserviceaccount.com="" role:="" roles/resourcemanager.organizationadmin="" -="" members:="" -="" user:\="" eve@example.com="" role:="" roles/resourcemanager.organizationviewer="" condition:="" title:="" expirable="" access="" description:="" does="" not="" grant="" access="" after="" sep="" 2020="" expression:="" request.time="">< timestamp('2020-10-01t00:00:00.000z')="" etag:="" bwwwja0yfja="version:" 3="" for="" a="" description="" of="" iam="" and="" its="" features,="" see="" the="" [iam="" documentation](\="">

get_mtls_endpoint_and_cert_source

get_mtls_endpoint_and_cert_source(
    client_options: Optional[google.api_core.client_options.ClientOptions] = None,
)

Return the API endpoint and client cert source for mutual TLS.

The client cert source is determined in the following order: (1) if GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is not "true", the client cert source is None. (2) if client_options.client_cert_source is provided, use the provided one; if the default client cert source exists, use the default one; otherwise the client cert source is None.

The API endpoint is determined in the following order: (1) if client_options.api_endpoint if provided, use the provided one. (2) if GOOGLE_API_USE_CLIENT_CERTIFICATE environment variable is "always", use the default mTLS endpoint; if the environment variabel is "never", use the default API endpoint; otherwise if client cert source exists, use the default mTLS endpoint, otherwise use the default API endpoint.

More details can be found at https://google.aip.dev/auth/4114.

Parameter
NameDescription
client_options google.api_core.client_options.ClientOptions

Custom options for the client. Only the api_endpoint and client_cert_source properties may be used in this method.

Exceptions
TypeDescription
google.auth.exceptions.MutualTLSChannelErrorIf any errors happen.
Returns
TypeDescription
Tuple[str, Callable[[], Tuple[bytes, bytes]]]returns the API endpoint and the client cert source to use.

get_tag_template

get_tag_template(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.GetTagTemplateRequest, dict]] = None, *, name: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Gets a tag template.

from google.cloud import datacatalog_v1beta1

async def sample_get_tag_template():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.GetTagTemplateRequest(
        name="name_value",
    )

    # Make the request
    response = await client.get_tag_template(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.GetTagTemplateRequest, dict]

The request object. Request message for GetTagTemplate.

name `str`

Required. The name of the tag template. Example: - projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id} This corresponds to the name field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.TagTemplateA tag template defines a tag, which can have one or more typed fields. The template is used to create and attach the tag to GCP resources. [Tag template roles](\ https://cloud.google.com/iam/docs/understanding-roles#data-catalog-roles) provide permissions to create, edit, and use the template. See, for example, the [TagTemplate User](\ https://cloud.google.com/data-catalog/docs/how-to/template-user) role, which includes permission to use the tag template to tag resources.

get_transport_class

get_transport_class()

Returns an appropriate transport class.

list_entries

list_entries(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.ListEntriesRequest, dict]] = None, *, parent: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Lists entries.

from google.cloud import datacatalog_v1beta1

async def sample_list_entries():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.ListEntriesRequest(
        parent="parent_value",
    )

    # Make the request
    page_result = client.list_entries(request=request)

    # Handle the response
    async for response in page_result:
        print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.ListEntriesRequest, dict]

The request object. Request message for ListEntries.

parent `str`

Required. The name of the entry group that contains the entries, which can be provided in URL format. Example: - projects/{project_id}/locations/{location}/entryGroups/{entry_group_id} This corresponds to the parent field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.services.data_catalog.pagers.ListEntriesAsyncPagerResponse message for ListEntries. Iterating over this object will yield results and resolve additional pages automatically.

list_entry_groups

list_entry_groups(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.ListEntryGroupsRequest, dict]] = None, *, parent: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Lists entry groups.

from google.cloud import datacatalog_v1beta1

async def sample_list_entry_groups():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.ListEntryGroupsRequest(
        parent="parent_value",
    )

    # Make the request
    page_result = client.list_entry_groups(request=request)

    # Handle the response
    async for response in page_result:
        print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.ListEntryGroupsRequest, dict]

The request object. Request message for ListEntryGroups.

parent `str`

Required. The name of the location that contains the entry groups, which can be provided in URL format. Example: - projects/{project_id}/locations/{location} This corresponds to the parent field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.services.data_catalog.pagers.ListEntryGroupsAsyncPagerResponse message for ListEntryGroups. Iterating over this object will yield results and resolve additional pages automatically.

list_tags

list_tags(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.ListTagsRequest, dict]] = None, *, parent: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Lists the tags on an xref_Entry.

from google.cloud import datacatalog_v1beta1

async def sample_list_tags():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.ListTagsRequest(
        parent="parent_value",
    )

    # Make the request
    page_result = client.list_tags(request=request)

    # Handle the response
    async for response in page_result:
        print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.ListTagsRequest, dict]

The request object. Request message for ListTags.

parent `str`

Required. The name of the Data Catalog resource to list the tags of. The resource could be an Entry or an EntryGroup. Examples: - projects/{project_id}/locations/{location}/entryGroups/{entry_group_id} - projects/{project_id}/locations/{location}/entryGroups/{entry_group_id}/entries/{entry_id} This corresponds to the parent field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.services.data_catalog.pagers.ListTagsAsyncPagerResponse message for ListTags. Iterating over this object will yield results and resolve additional pages automatically.

lookup_entry

lookup_entry(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.LookupEntryRequest, dict]] = None, *, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Get an entry by target resource name. This method allows clients to use the resource name from the source Google Cloud Platform service to get the Data Catalog Entry.

from google.cloud import datacatalog_v1beta1

async def sample_lookup_entry():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.LookupEntryRequest(
        linked_resource="linked_resource_value",
    )

    # Make the request
    response = await client.lookup_entry(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.LookupEntryRequest, dict]

The request object. Request message for LookupEntry.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.EntryEntry Metadata. A Data Catalog Entry resource represents another resource in Google Cloud Platform (such as a BigQuery dataset or a Pub/Sub topic), or outside of Google Cloud Platform. Clients 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, such as its schema. An Entry can also be used to attach flexible metadata, such as a Tag.

parse_common_billing_account_path

parse_common_billing_account_path(path: str)

Parse a billing_account path into its component segments.

parse_common_folder_path

parse_common_folder_path(path: str)

Parse a folder path into its component segments.

parse_common_location_path

parse_common_location_path(path: str)

Parse a location path into its component segments.

parse_common_organization_path

parse_common_organization_path(path: str)

Parse a organization path into its component segments.

parse_common_project_path

parse_common_project_path(path: str)

Parse a project path into its component segments.

parse_entry_group_path

parse_entry_group_path(path: str)

Parses a entry_group path into its component segments.

parse_entry_path

parse_entry_path(path: str)

Parses a entry path into its component segments.

parse_tag_path

parse_tag_path(path: str)

Parses a tag path into its component segments.

parse_tag_template_field_path

parse_tag_template_field_path(path: str)

Parses a tag_template_field path into its component segments.

parse_tag_template_path

parse_tag_template_path(path: str)

Parses a tag_template path into its component segments.

rename_tag_template_field

rename_tag_template_field(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.RenameTagTemplateFieldRequest, dict]] = None, *, name: Optional[str] = None, new_tag_template_field_id: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Renames a field in a tag template. The user should enable the Data Catalog API in the project identified by the name parameter (see Data Catalog Resource Project <https://cloud.google.com/data-catalog/docs/concepts/resource-project>__ for more information).

from google.cloud import datacatalog_v1beta1

async def sample_rename_tag_template_field():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.RenameTagTemplateFieldRequest(
        name="name_value",
        new_tag_template_field_id="new_tag_template_field_id_value",
    )

    # Make the request
    response = await client.rename_tag_template_field(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.RenameTagTemplateFieldRequest, dict]

The request object. Request message for RenameTagTemplateField.

name `str`

Required. The name of the tag template. Example: - projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id} This corresponds to the name field on the request instance; if request is provided, this should not be set.

new_tag_template_field_id `str`

Required. The new ID of this tag template field. For example, my_new_field. This corresponds to the new_tag_template_field_id field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.TagTemplateFieldThe template for an individual field within a tag template.

search_catalog

search_catalog(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.SearchCatalogRequest, dict]] = None, *, scope: Optional[google.cloud.datacatalog_v1beta1.types.datacatalog.SearchCatalogRequest.Scope] = None, query: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

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

This is a custom method (https://cloud.google.com/apis/design/custom_methods) and does not return the complete resource, only the resource identifier and high level fields. Clients can subsequentally call Get methods.

Note that Data Catalog search queries do not guarantee full recall. Query results that match your query may not be returned, even in subsequent result pages. Also note that results returned (and not returned) can vary across repeated search queries.

See Data Catalog Search Syntax <https://cloud.google.com/data-catalog/docs/how-to/search-reference>__ for more information.

from google.cloud import datacatalog_v1beta1

async def sample_search_catalog():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.SearchCatalogRequest(
        query="query_value",
    )

    # Make the request
    page_result = client.search_catalog(request=request)

    # Handle the response
    async for response in page_result:
        print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.SearchCatalogRequest, dict]

The request object. Request message for SearchCatalog.

scope Scope

Required. The scope of this search request. A scope that has empty include_org_ids, include_project_ids AND false include_gcp_public_datasets is considered invalid. Data Catalog will return an error in such a case. This corresponds to the scope field on the request instance; if request is provided, this should not be set.

query `str`

Required. The query string in search query syntax. The query must be non-empty. Query strings can be simple as "x" or more qualified as: - name:x - column:x - description:y Note: Query tokens need to have a minimum of 3 characters for substring matching to work correctly. See Data Catalog Search Syntax <https://cloud.google.com/data-catalog/docs/how-to/search-reference>__ for more information. This corresponds to the query field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.services.data_catalog.pagers.SearchCatalogAsyncPagerResponse message for SearchCatalog. Iterating over this object will yield results and resolve additional pages automatically.

set_iam_policy

set_iam_policy(request: Optional[Union[google.iam.v1.iam_policy_pb2.SetIamPolicyRequest, dict]] = None, *, resource: Optional[str] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Sets the access control policy for a resource. Replaces any existing policy. Supported resources are:

  • Tag templates.
  • Entries.
  • Entry groups. Note, this method cannot be used to manage policies for BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to Data Catalog.

Callers must have following Google IAM permission

  • datacatalog.tagTemplates.setIamPolicy to set policies on tag templates.
  • datacatalog.entries.setIamPolicy to set policies on entries.
  • datacatalog.entryGroups.setIamPolicy to set policies on entry groups.
from google.cloud import datacatalog_v1beta1
from google.iam.v1 import iam_policy_pb2  # type: ignore

async def sample_set_iam_policy():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = iam_policy_pb2.SetIamPolicyRequest(
        resource="resource_value",
    )

    # Make the request
    response = await client.set_iam_policy(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.iam.v1.iam_policy_pb2.SetIamPolicyRequest, dict]

The request object. Request message for SetIamPolicy method.

resource `str`

REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field. This corresponds to the resource field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.iam.v1.policy_pb2.PolicyAn Identity and Access Management (IAM) policy, which specifies access controls for Google Cloud resources. A Policy is a collection of bindings. A binding binds one or more members, or principals, to a single role. Principals can be user accounts, service accounts, Google groups, and domains (such as G Suite). A role is a named list of permissions; each role can be an IAM predefined role or a user-created custom role. For some types of Google Cloud resources, a binding can also specify a condition, which is a logical expression that allows access to a resource only if the expression evaluates to true. A condition can add constraints based on attributes of the request, the resource, or both. To learn which resources support conditions in their IAM policies, see the [IAM documentation](\ https://cloud.google.com/iam/help/conditions/resource-policies). **JSON example:** { "bindings": [ { "role": "roles/resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": "roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com" ], "condition": { "title": "expirable access", "description": "Does not grant access after Sep 2020", "expression": "request.time < timestamp('2020-10-01t00:00:00.000z')",="" }="" }="" ],="" "etag":="" "bwwwja0yfja=", " version":="" 3="" }="" **yaml="" example:**="" bindings:="" -="" members:="" -="" user:\="" mike@example.com="" -="" group:\="" admins@example.com="" -="" domain:google.com="" -="" serviceaccount:\="" my-project-id@appspot.gserviceaccount.com="" role:="" roles/resourcemanager.organizationadmin="" -="" members:="" -="" user:\="" eve@example.com="" role:="" roles/resourcemanager.organizationviewer="" condition:="" title:="" expirable="" access="" description:="" does="" not="" grant="" access="" after="" sep="" 2020="" expression:="" request.time="">< timestamp('2020-10-01t00:00:00.000z')="" etag:="" bwwwja0yfja="version:" 3="" for="" a="" description="" of="" iam="" and="" its="" features,="" see="" the="" [iam="" documentation](\="">

tag_path

tag_path(project: str, location: str, entry_group: str, entry: str, tag: str)

Returns a fully-qualified tag string.

tag_template_field_path

tag_template_field_path(project: str, location: str, tag_template: str, field: str)

Returns a fully-qualified tag_template_field string.

tag_template_path

tag_template_path(project: str, location: str, tag_template: str)

Returns a fully-qualified tag_template string.

test_iam_permissions

test_iam_permissions(request: Optional[Union[google.iam.v1.iam_policy_pb2.TestIamPermissionsRequest, dict]] = None, *, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Returns the caller's permissions on a resource. If the resource does not exist, an empty set of permissions is returned (We don't return a NOT_FOUND error).

Supported resources are:

  • Tag templates.
  • Entries.
  • Entry groups. Note, this method cannot be used to manage policies for BigQuery, Pub/Sub and any external Google Cloud Platform resources synced to Data Catalog.

A caller is not required to have Google IAM permission to make this request.

from google.cloud import datacatalog_v1beta1
from google.iam.v1 import iam_policy_pb2  # type: ignore

async def sample_test_iam_permissions():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = iam_policy_pb2.TestIamPermissionsRequest(
        resource="resource_value",
        permissions=['permissions_value_1', 'permissions_value_2'],
    )

    # Make the request
    response = await client.test_iam_permissions(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.iam.v1.iam_policy_pb2.TestIamPermissionsRequest, dict]

The request object. Request message for TestIamPermissions method.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.iam.v1.iam_policy_pb2.TestIamPermissionsResponseResponse message for TestIamPermissions method.

update_entry

update_entry(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.UpdateEntryRequest, dict]] = None, *, entry: Optional[google.cloud.datacatalog_v1beta1.types.datacatalog.Entry] = None, update_mask: Optional[google.protobuf.field_mask_pb2.FieldMask] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Updates an existing entry. Users should enable the Data Catalog API in the project identified by the entry.name parameter (see Data Catalog Resource Project for more information).

from google.cloud import datacatalog_v1beta1

async def sample_update_entry():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    entry = datacatalog_v1beta1.Entry()
    entry.type_ = "FILESET"
    entry.integrated_system = "CLOUD_PUBSUB"
    entry.gcs_fileset_spec.file_patterns = ['file_patterns_value_1', 'file_patterns_value_2']

    request = datacatalog_v1beta1.UpdateEntryRequest(
        entry=entry,
    )

    # Make the request
    response = await client.update_entry(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.UpdateEntryRequest, dict]

The request object. Request message for UpdateEntry.

entry Entry

Required. The updated entry. The "name" field must be set. This corresponds to the entry field on the request instance; if request is provided, this should not be set.

update_mask `google.protobuf.field_mask_pb2.FieldMask`

The fields to update on the entry. If absent or empty, all modifiable fields are updated. The following fields are modifiable: - For entries with type DATA_STREAM: - schema - For entries with type FILESET - schema - display_name - description - gcs_fileset_spec - gcs_fileset_spec.file_patterns - For entries with user_specified_type - schema - display_name - description - user_specified_type - user_specified_system - linked_resource - source_system_timestamps This corresponds to the update_mask field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.EntryEntry Metadata. A Data Catalog Entry resource represents another resource in Google Cloud Platform (such as a BigQuery dataset or a Pub/Sub topic), or outside of Google Cloud Platform. Clients 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, such as its schema. An Entry can also be used to attach flexible metadata, such as a Tag.

update_entry_group

update_entry_group(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.UpdateEntryGroupRequest, dict]] = None, *, entry_group: Optional[google.cloud.datacatalog_v1beta1.types.datacatalog.EntryGroup] = None, update_mask: Optional[google.protobuf.field_mask_pb2.FieldMask] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Updates an EntryGroup. The user should enable the Data Catalog API in the project identified by the entry_group.name parameter (see Data Catalog Resource Project for more information).

from google.cloud import datacatalog_v1beta1

async def sample_update_entry_group():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.UpdateEntryGroupRequest(
    )

    # Make the request
    response = await client.update_entry_group(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.UpdateEntryGroupRequest, dict]

The request object. Request message for UpdateEntryGroup.

entry_group EntryGroup

Required. The updated entry group. "name" field must be set. This corresponds to the entry_group field on the request instance; if request is provided, this should not be set.

update_mask `google.protobuf.field_mask_pb2.FieldMask`

The fields to update on the entry group. If absent or empty, all modifiable fields are updated. This corresponds to the update_mask field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.EntryGroupEntryGroup Metadata. An EntryGroup resource represents a logical grouping of zero or more Data Catalog Entry resources.

update_tag

update_tag(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.UpdateTagRequest, dict]] = None, *, tag: Optional[google.cloud.datacatalog_v1beta1.types.tags.Tag] = None, update_mask: Optional[google.protobuf.field_mask_pb2.FieldMask] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Updates an existing tag.

from google.cloud import datacatalog_v1beta1

async def sample_update_tag():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    tag = datacatalog_v1beta1.Tag()
    tag.column = "column_value"
    tag.template = "template_value"

    request = datacatalog_v1beta1.UpdateTagRequest(
        tag=tag,
    )

    # Make the request
    response = await client.update_tag(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.UpdateTagRequest, dict]

The request object. Request message for UpdateTag.

tag Tag

Required. The updated tag. The "name" field must be set. This corresponds to the tag field on the request instance; if request is provided, this should not be set.

update_mask `google.protobuf.field_mask_pb2.FieldMask`

The fields to update on the Tag. If absent or empty, all modifiable fields are updated. Currently the only modifiable field is the field fields. This corresponds to the update_mask field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.TagTags are used to attach custom metadata to Data Catalog resources. Tags conform to the specifications within their tag template. See [Data Catalog IAM](\ https://cloud.google.com/data-catalog/docs/concepts/iam) for information on the permissions needed to create or view tags.

update_tag_template

update_tag_template(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.UpdateTagTemplateRequest, dict]] = None, *, tag_template: Optional[google.cloud.datacatalog_v1beta1.types.tags.TagTemplate] = None, update_mask: Optional[google.protobuf.field_mask_pb2.FieldMask] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Updates a tag template. This method cannot be used to update the fields of a template. The tag template fields are represented as separate resources and should be updated using their own create/update/delete methods. Users should enable the Data Catalog API in the project identified by the tag_template.name parameter (see Data Catalog Resource Project for more information).

from google.cloud import datacatalog_v1beta1

async def sample_update_tag_template():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    request = datacatalog_v1beta1.UpdateTagTemplateRequest(
    )

    # Make the request
    response = await client.update_tag_template(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.UpdateTagTemplateRequest, dict]

The request object. Request message for UpdateTagTemplate.

tag_template TagTemplate

Required. The template to update. The "name" field must be set. This corresponds to the tag_template field on the request instance; if request is provided, this should not be set.

update_mask `google.protobuf.field_mask_pb2.FieldMask`

The field mask specifies the parts of the template to overwrite. Allowed fields: - display_name If absent or empty, all of the allowed fields above will be updated. This corresponds to the update_mask field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.TagTemplateA tag template defines a tag, which can have one or more typed fields. The template is used to create and attach the tag to GCP resources. [Tag template roles](\ https://cloud.google.com/iam/docs/understanding-roles#data-catalog-roles) provide permissions to create, edit, and use the template. See, for example, the [TagTemplate User](\ https://cloud.google.com/data-catalog/docs/how-to/template-user) role, which includes permission to use the tag template to tag resources.

update_tag_template_field

update_tag_template_field(request: Optional[Union[google.cloud.datacatalog_v1beta1.types.datacatalog.UpdateTagTemplateFieldRequest, dict]] = None, *, name: Optional[str] = None, tag_template_field: Optional[google.cloud.datacatalog_v1beta1.types.tags.TagTemplateField] = None, update_mask: Optional[google.protobuf.field_mask_pb2.FieldMask] = None, retry: Union[google.api_core.retry.Retry, google.api_core.gapic_v1.method._MethodDefault] = <_MethodDefault._DEFAULT_VALUE: <object object>>, timeout: Optional[float] = None, metadata: Sequence[Tuple[str, str]] = ())

Updates a field in a tag template. This method cannot be used to update the field type. Users should enable the Data Catalog API in the project identified by the name parameter (see Data Catalog Resource Project for more information).

from google.cloud import datacatalog_v1beta1

async def sample_update_tag_template_field():
    # Create a client
    client = datacatalog_v1beta1.DataCatalogAsyncClient()

    # Initialize request argument(s)
    tag_template_field = datacatalog_v1beta1.TagTemplateField()
    tag_template_field.type_.primitive_type = "TIMESTAMP"

    request = datacatalog_v1beta1.UpdateTagTemplateFieldRequest(
        name="name_value",
        tag_template_field=tag_template_field,
    )

    # Make the request
    response = await client.update_tag_template_field(request=request)

    # Handle the response
    print(response)
Parameters
NameDescription
request Union[google.cloud.datacatalog_v1beta1.types.UpdateTagTemplateFieldRequest, dict]

The request object. Request message for UpdateTagTemplateField.

name `str`

Required. The name of the tag template field. Example: - projects/{project_id}/locations/{location}/tagTemplates/{tag_template_id}/fields/{tag_template_field_id} This corresponds to the name field on the request instance; if request is provided, this should not be set.

tag_template_field TagTemplateField

Required. The template to update. This corresponds to the tag_template_field field on the request instance; if request is provided, this should not be set.

update_mask `google.protobuf.field_mask_pb2.FieldMask`

Optional. The field mask specifies the parts of the template to be updated. Allowed fields: - display_name - type.enum_type - is_required If update_mask is not set or empty, all of the allowed fields above will be updated. When updating an enum type, the provided values will be merged with the existing values. Therefore, enum values can only be added, existing enum values cannot be deleted nor renamed. Updating a template field from optional to required is NOT allowed. This corresponds to the update_mask field on the request instance; if request is provided, this should not be set.

retry google.api_core.retry.Retry

Designation of what errors, if any, should be retried.

timeout float

The timeout for this request.

metadata Sequence[Tuple[str, str]]

Strings which should be sent along with the request as metadata.

Returns
TypeDescription
google.cloud.datacatalog_v1beta1.types.TagTemplateFieldThe template for an individual field within a tag template.