UNPKG

googleapis

Version:
1,142 lines 1.28 MB
import { OAuth2Client, JWT, Compute, UserRefreshClient, BaseExternalAccountClient, GaxiosResponseWithHTTP2, GoogleConfigurable, MethodOptions, StreamMethodOptions, GlobalOptions, GoogleAuth, BodyResponseCallback, APIRequestContext } from 'googleapis-common'; import { Readable } from 'stream'; export declare namespace dataplex_v1 { export interface Options extends GlobalOptions { version: 'v1'; } interface StandardParameters { /** * Auth client or API Key for the request */ auth?: string | OAuth2Client | JWT | Compute | UserRefreshClient | BaseExternalAccountClient | GoogleAuth; /** * V1 error format. */ '$.xgafv'?: string; /** * OAuth access token. */ access_token?: string; /** * Data format for response. */ alt?: string; /** * JSONP */ callback?: string; /** * Selector specifying which fields to include in a partial response. */ fields?: string; /** * API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. */ quotaUser?: string; /** * Legacy upload protocol for media (e.g. "media", "multipart"). */ uploadType?: string; /** * Upload protocol for media (e.g. "raw", "multipart"). */ upload_protocol?: string; } /** * Cloud Dataplex API * * A unified, intelligent governance solution for data and AI assets. * * @example * ```js * const {google} = require('googleapis'); * const dataplex = google.dataplex('v1'); * ``` */ export class Dataplex { context: APIRequestContext; organizations: Resource$Organizations; projects: Resource$Projects; constructor(options: GlobalOptions, google?: GoogleConfigurable); } /** * A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); \} */ export interface Schema$Empty { } /** * Action represents an issue requiring administrator action for resolution. */ export interface Schema$GoogleCloudDataplexV1Action { /** * Output only. The relative resource name of the asset, of the form: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}/zones/{zone_id\}/assets/{asset_id\}. */ asset?: string | null; /** * The category of issue associated with the action. */ category?: string | null; /** * The list of data locations associated with this action. Cloud Storage locations are represented as URI paths(E.g. gs://bucket/table1/year=2020/month=Jan/). BigQuery locations refer to resource names(E.g. bigquery.googleapis.com/projects/project-id/datasets/dataset-id). */ dataLocations?: string[] | null; /** * The time that the issue was detected. */ detectTime?: string | null; /** * Details for issues related to applying security policy. */ failedSecurityPolicyApply?: Schema$GoogleCloudDataplexV1ActionFailedSecurityPolicyApply; /** * Details for issues related to incompatible schemas detected within data. */ incompatibleDataSchema?: Schema$GoogleCloudDataplexV1ActionIncompatibleDataSchema; /** * Details for issues related to invalid or unsupported data formats. */ invalidDataFormat?: Schema$GoogleCloudDataplexV1ActionInvalidDataFormat; /** * Details for issues related to invalid data arrangement. */ invalidDataOrganization?: Schema$GoogleCloudDataplexV1ActionInvalidDataOrganization; /** * Details for issues related to invalid or unsupported data partition structure. */ invalidDataPartition?: Schema$GoogleCloudDataplexV1ActionInvalidDataPartition; /** * Detailed description of the issue requiring action. */ issue?: string | null; /** * Output only. The relative resource name of the lake, of the form: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}. */ lake?: string | null; /** * Details for issues related to absence of data within managed resources. */ missingData?: Schema$GoogleCloudDataplexV1ActionMissingData; /** * Details for issues related to absence of a managed resource. */ missingResource?: Schema$GoogleCloudDataplexV1ActionMissingResource; /** * Output only. The relative resource name of the action, of the form: projects/{project\}/locations/{location\}/lakes/{lake\}/actions/{action\} projects/{project\}/locations/{location\}/lakes/{lake\}/zones/{zone\}/actions/{action\} projects/{project\}/locations/{location\}/lakes/{lake\}/zones/{zone\}/assets/{asset\}/actions/{action\}. */ name?: string | null; /** * Details for issues related to lack of permissions to access data resources. */ unauthorizedResource?: Schema$GoogleCloudDataplexV1ActionUnauthorizedResource; /** * Output only. The relative resource name of the zone, of the form: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}/zones/{zone_id\}. */ zone?: string | null; } /** * Failed to apply security policy to the managed resource(s) under a lake, zone or an asset. For a lake or zone resource, one or more underlying assets has a failure applying security policy to the associated managed resource. */ export interface Schema$GoogleCloudDataplexV1ActionFailedSecurityPolicyApply { /** * Resource name of one of the assets with failing security policy application. Populated for a lake or zone resource only. */ asset?: string | null; } /** * Action details for incompatible schemas detected by discovery. */ export interface Schema$GoogleCloudDataplexV1ActionIncompatibleDataSchema { /** * The existing and expected schema of the table. The schema is provided as a JSON formatted structure listing columns and data types. */ existingSchema?: string | null; /** * The new and incompatible schema within the table. The schema is provided as a JSON formatted structured listing columns and data types. */ newSchema?: string | null; /** * The list of data locations sampled and used for format/schema inference. */ sampledDataLocations?: string[] | null; /** * Whether the action relates to a schema that is incompatible or modified. */ schemaChange?: string | null; /** * The name of the table containing invalid data. */ table?: string | null; } /** * Action details for invalid or unsupported data files detected by discovery. */ export interface Schema$GoogleCloudDataplexV1ActionInvalidDataFormat { /** * The expected data format of the entity. */ expectedFormat?: string | null; /** * The new unexpected data format within the entity. */ newFormat?: string | null; /** * The list of data locations sampled and used for format/schema inference. */ sampledDataLocations?: string[] | null; } /** * Action details for invalid data arrangement. */ export interface Schema$GoogleCloudDataplexV1ActionInvalidDataOrganization { } /** * Action details for invalid or unsupported partitions detected by discovery. */ export interface Schema$GoogleCloudDataplexV1ActionInvalidDataPartition { /** * The issue type of InvalidDataPartition. */ expectedStructure?: string | null; } /** * Action details for absence of data detected by discovery. */ export interface Schema$GoogleCloudDataplexV1ActionMissingData { } /** * Action details for resource references in assets that cannot be located. */ export interface Schema$GoogleCloudDataplexV1ActionMissingResource { } /** * Action details for unauthorized resource issues raised to indicate that the service account associated with the lake instance is not authorized to access or manage the resource associated with an asset. */ export interface Schema$GoogleCloudDataplexV1ActionUnauthorizedResource { } /** * An aspect is a single piece of metadata describing an entry. */ export interface Schema$GoogleCloudDataplexV1Aspect { /** * Optional. Information related to the source system of the aspect. */ aspectSource?: Schema$GoogleCloudDataplexV1AspectSource; /** * Output only. The resource name of the type used to create this Aspect. */ aspectType?: string | null; /** * Output only. The time when the Aspect was created. */ createTime?: string | null; /** * Required. The content of the aspect, according to its aspect type schema. The maximum size of the field is 120KB (encoded as UTF-8). */ data?: { [key: string]: any; } | null; /** * Output only. The path in the entry under which the aspect is attached. */ path?: string | null; /** * Output only. The time when the Aspect was last updated. */ updateTime?: string | null; } /** * Information related to the source system of the aspect. */ export interface Schema$GoogleCloudDataplexV1AspectSource { /** * The time the aspect was created in the source system. */ createTime?: string | null; /** * The version of the data format used to produce this data. This field is used to indicated when the underlying data format changes (e.g., schema modifications, changes to the source URL format definition, etc). */ dataVersion?: string | null; /** * The time the aspect was last updated in the source system. */ updateTime?: string | null; } /** * AspectType is a template for creating Aspects, and represents the JSON-schema for a given Entry, for example, BigQuery Table Schema. */ export interface Schema$GoogleCloudDataplexV1AspectType { /** * Immutable. Defines the Authorization for this type. */ authorization?: Schema$GoogleCloudDataplexV1AspectTypeAuthorization; /** * Output only. The time when the AspectType was created. */ createTime?: string | null; /** * Optional. Immutable. Stores data classification of the aspect. */ dataClassification?: string | null; /** * Optional. Description of the AspectType. */ description?: string | null; /** * Optional. User friendly display name. */ displayName?: string | null; /** * The service computes this checksum. The client may send it on update and delete requests to ensure it has an up-to-date value before proceeding. */ etag?: string | null; /** * Optional. User-defined labels for the AspectType. */ labels?: { [key: string]: string; } | null; /** * Required. MetadataTemplate of the aspect. */ metadataTemplate?: Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplate; /** * Output only. The relative resource name of the AspectType, of the form: projects/{project_number\}/locations/{location_id\}/aspectTypes/{aspect_type_id\}. */ name?: string | null; /** * Output only. Denotes the transfer status of the Aspect Type. It is unspecified for Aspect Types created from Dataplex API. */ transferStatus?: string | null; /** * Output only. System generated globally unique ID for the AspectType. If you delete and recreate the AspectType with the same name, then this ID will be different. */ uid?: string | null; /** * Output only. The time when the AspectType was last updated. */ updateTime?: string | null; } /** * Authorization for an AspectType. */ export interface Schema$GoogleCloudDataplexV1AspectTypeAuthorization { /** * Immutable. The IAM permission grantable on the EntryGroup to allow access to instantiate Aspects of Dataplex Universal Catalog owned AspectTypes, only settable for Dataplex Universal Catalog owned Types. */ alternateUsePermission?: string | null; } /** * MetadataTemplate definition for an AspectType. */ export interface Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplate { /** * Optional. Specifies annotations on this field. */ annotations?: Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplateAnnotations; /** * Optional. If the type is array, set array_items. array_items can refer to a primitive field or a complex (record only) field. To specify a primitive field, you only need to set name and type in the nested MetadataTemplate. The recommended value for the name field is item, as this isn't used in the actual payload. */ arrayItems?: Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplate; /** * Optional. Specifies the constraints on this field. */ constraints?: Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplateConstraints; /** * Optional. The list of values for an enum type. You must define it if the type is enum. */ enumValues?: Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplateEnumValue[]; /** * Optional. Index is used to encode Template messages. The value of index can range between 1 and 2,147,483,647. Index must be unique within all fields in a Template. (Nested Templates can reuse indexes). Once a Template is defined, the index cannot be changed, because it identifies the field in the actual storage format. Index is a mandatory field, but it is optional for top level fields, and map/array "values" definitions. */ index?: number | null; /** * Optional. If the type is map, set map_items. map_items can refer to a primitive field or a complex (record only) field. To specify a primitive field, you only need to set name and type in the nested MetadataTemplate. The recommended value for the name field is item, as this isn't used in the actual payload. */ mapItems?: Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplate; /** * Required. The name of the field. */ name?: string | null; /** * Optional. Field definition. You must specify it if the type is record. It defines the nested fields. */ recordFields?: Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplate[]; /** * Required. The datatype of this field. The following values are supported:Primitive types: string int bool double datetime. Must be of the format RFC3339 UTC "Zulu" (Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z").Complex types: enum array map record */ type?: string | null; /** * Optional. You can use type id if this definition of the field needs to be reused later. The type id must be unique across the entire template. You can only specify it if the field type is record. */ typeId?: string | null; /** * Optional. A reference to another field definition (not an inline definition). The value must be equal to the value of an id field defined elsewhere in the MetadataTemplate. Only fields with record type can refer to other fields. */ typeRef?: string | null; } /** * Definition of the annotations of a field. */ export interface Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplateAnnotations { /** * Optional. Marks a field as deprecated. You can include a deprecation message. */ deprecated?: string | null; /** * Optional. Description for a field. */ description?: string | null; /** * Optional. Display name for a field. */ displayName?: string | null; /** * Optional. Display order for a field. You can use this to reorder where a field is rendered. */ displayOrder?: number | null; /** * Optional. You can use String Type annotations to specify special meaning to string fields. The following values are supported: richText: The field must be interpreted as a rich text field. url: A fully qualified URL link. resource: A service qualified resource reference. */ stringType?: string | null; /** * Optional. Suggested hints for string fields. You can use them to suggest values to users through console. */ stringValues?: string[] | null; } /** * Definition of the constraints of a field. */ export interface Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplateConstraints { /** * Optional. Marks this field as optional or required. */ required?: boolean | null; } /** * Definition of Enumvalue, to be used for enum fields. */ export interface Schema$GoogleCloudDataplexV1AspectTypeMetadataTemplateEnumValue { /** * Optional. You can set this message if you need to deprecate an enum value. */ deprecated?: string | null; /** * Required. Index for the enum value. It can't be modified. */ index?: number | null; /** * Required. Name of the enumvalue. This is the actual value that the aspect can contain. */ name?: string | null; } /** * An asset represents a cloud resource that is being managed within a lake as a member of a zone. */ export interface Schema$GoogleCloudDataplexV1Asset { /** * Output only. The time when the asset was created. */ createTime?: string | null; /** * Optional. Description of the asset. */ description?: string | null; /** * Optional. Specification of the discovery feature applied to data referenced by this asset. When this spec is left unset, the asset will use the spec set on the parent zone. */ discoverySpec?: Schema$GoogleCloudDataplexV1AssetDiscoverySpec; /** * Output only. Status of the discovery feature applied to data referenced by this asset. */ discoveryStatus?: Schema$GoogleCloudDataplexV1AssetDiscoveryStatus; /** * Optional. User friendly display name. */ displayName?: string | null; /** * Optional. User defined labels for the asset. */ labels?: { [key: string]: string; } | null; /** * Output only. The relative resource name of the asset, of the form: projects/{project_number\}/locations/{location_id\}/lakes/{lake_id\}/zones/{zone_id\}/assets/{asset_id\}. */ name?: string | null; /** * Required. Specification of the resource that is referenced by this asset. */ resourceSpec?: Schema$GoogleCloudDataplexV1AssetResourceSpec; /** * Output only. Status of the resource referenced by this asset. */ resourceStatus?: Schema$GoogleCloudDataplexV1AssetResourceStatus; /** * Output only. Status of the security policy applied to resource referenced by this asset. */ securityStatus?: Schema$GoogleCloudDataplexV1AssetSecurityStatus; /** * Output only. Current state of the asset. */ state?: string | null; /** * Output only. System generated globally unique ID for the asset. This ID will be different if the asset is deleted and re-created with the same name. */ uid?: string | null; /** * Output only. The time when the asset was last updated. */ updateTime?: string | null; } /** * Settings to manage the metadata discovery and publishing for an asset. */ export interface Schema$GoogleCloudDataplexV1AssetDiscoverySpec { /** * Optional. Configuration for CSV data. */ csvOptions?: Schema$GoogleCloudDataplexV1AssetDiscoverySpecCsvOptions; /** * Optional. Whether discovery is enabled. */ enabled?: boolean | null; /** * Optional. The list of patterns to apply for selecting data to exclude during discovery. For Cloud Storage bucket assets, these are interpreted as glob patterns used to match object names. For BigQuery dataset assets, these are interpreted as patterns to match table names. */ excludePatterns?: string[] | null; /** * Optional. The list of patterns to apply for selecting data to include during discovery if only a subset of the data should considered. For Cloud Storage bucket assets, these are interpreted as glob patterns used to match object names. For BigQuery dataset assets, these are interpreted as patterns to match table names. */ includePatterns?: string[] | null; /** * Optional. Configuration for Json data. */ jsonOptions?: Schema$GoogleCloudDataplexV1AssetDiscoverySpecJsonOptions; /** * Optional. Cron schedule (https://en.wikipedia.org/wiki/Cron) for running discovery periodically. Successive discovery runs must be scheduled at least 60 minutes apart. The default value is to run discovery every 60 minutes.To explicitly set a timezone to the cron tab, apply a prefix in the cron tab: "CRON_TZ=${IANA_TIME_ZONE\}" or TZ=${IANA_TIME_ZONE\}". The ${IANA_TIME_ZONE\} may only be a valid string from IANA time zone database. For example, CRON_TZ=America/New_York 1 * * * *, or TZ=America/New_York 1 * * * *. */ schedule?: string | null; } /** * Describe CSV and similar semi-structured data formats. */ export interface Schema$GoogleCloudDataplexV1AssetDiscoverySpecCsvOptions { /** * Optional. The delimiter being used to separate values. This defaults to ','. */ delimiter?: string | null; /** * Optional. Whether to disable the inference of data type for CSV data. If true, all columns will be registered as strings. */ disableTypeInference?: boolean | null; /** * Optional. The character encoding of the data. The default is UTF-8. */ encoding?: string | null; /** * Optional. The number of rows to interpret as header rows that should be skipped when reading data rows. */ headerRows?: number | null; } /** * Describe JSON data format. */ export interface Schema$GoogleCloudDataplexV1AssetDiscoverySpecJsonOptions { /** * Optional. Whether to disable the inference of data type for Json data. If true, all columns will be registered as their primitive types (strings, number or boolean). */ disableTypeInference?: boolean | null; /** * Optional. The character encoding of the data. The default is UTF-8. */ encoding?: string | null; } /** * Status of discovery for an asset. */ export interface Schema$GoogleCloudDataplexV1AssetDiscoveryStatus { /** * The duration of the last discovery run. */ lastRunDuration?: string | null; /** * The start time of the last discovery run. */ lastRunTime?: string | null; /** * Additional information about the current state. */ message?: string | null; /** * The current status of the discovery feature. */ state?: string | null; /** * Data Stats of the asset reported by discovery. */ stats?: Schema$GoogleCloudDataplexV1AssetDiscoveryStatusStats; /** * Last update time of the status. */ updateTime?: string | null; } /** * The aggregated data statistics for the asset reported by discovery. */ export interface Schema$GoogleCloudDataplexV1AssetDiscoveryStatusStats { /** * The count of data items within the referenced resource. */ dataItems?: string | null; /** * The number of stored data bytes within the referenced resource. */ dataSize?: string | null; /** * The count of fileset entities within the referenced resource. */ filesets?: string | null; /** * The count of table entities within the referenced resource. */ tables?: string | null; } /** * Identifies the cloud resource that is referenced by this asset. */ export interface Schema$GoogleCloudDataplexV1AssetResourceSpec { /** * Immutable. Relative name of the cloud resource that contains the data that is being managed within a lake. For example: projects/{project_number\}/buckets/{bucket_id\} projects/{project_number\}/datasets/{dataset_id\} */ name?: string | null; /** * Optional. Determines how read permissions are handled for each asset and their associated tables. Only available to storage buckets assets. */ readAccessMode?: string | null; /** * Required. Immutable. Type of resource. */ type?: string | null; } /** * Status of the resource referenced by an asset. */ export interface Schema$GoogleCloudDataplexV1AssetResourceStatus { /** * Output only. Service account associated with the BigQuery Connection. */ managedAccessIdentity?: string | null; /** * Additional information about the current state. */ message?: string | null; /** * The current state of the managed resource. */ state?: string | null; /** * Last update time of the status. */ updateTime?: string | null; } /** * Security policy status of the asset. Data security policy, i.e., readers, writers & owners, should be specified in the lake/zone/asset IAM policy. */ export interface Schema$GoogleCloudDataplexV1AssetSecurityStatus { /** * Additional information about the current state. */ message?: string | null; /** * The current state of the security policy applied to the attached resource. */ state?: string | null; /** * Last update time of the status. */ updateTime?: string | null; } /** * Aggregated status of the underlying assets of a lake or zone. */ export interface Schema$GoogleCloudDataplexV1AssetStatus { /** * Number of active assets. */ activeAssets?: number | null; /** * Number of assets that are in process of updating the security policy on attached resources. */ securityPolicyApplyingAssets?: number | null; /** * Last update time of the status. */ updateTime?: string | null; } /** * Payload associated with Business Glossary related log events. */ export interface Schema$GoogleCloudDataplexV1BusinessGlossaryEvent { /** * The type of the event. */ eventType?: string | null; /** * The log message. */ message?: string | null; /** * Name of the resource. */ resource?: string | null; } /** * Cancel task jobs. */ export interface Schema$GoogleCloudDataplexV1CancelJobRequest { } /** * Cancel metadata job request. */ export interface Schema$GoogleCloudDataplexV1CancelMetadataJobRequest { } /** * Content represents a user-visible notebook or a sql script */ export interface Schema$GoogleCloudDataplexV1Content { /** * Output only. Content creation time. */ createTime?: string | null; /** * Required. Content data in string format. */ dataText?: string | null; /** * Optional. Description of the content. */ description?: string | null; /** * Optional. User defined labels for the content. */ labels?: { [key: string]: string; } | null; /** * Output only. The relative resource name of the content, of the form: projects/{project_id\}/locations/{location_id\}/lakes/{lake_id\}/content/{content_id\} */ name?: string | null; /** * Notebook related configurations. */ notebook?: Schema$GoogleCloudDataplexV1ContentNotebook; /** * Required. The path for the Content file, represented as directory structure. Unique within a lake. Limited to alphanumerics, hyphens, underscores, dots and slashes. */ path?: string | null; /** * Sql Script related configurations. */ sqlScript?: Schema$GoogleCloudDataplexV1ContentSqlScript; /** * Output only. System generated globally unique ID for the content. This ID will be different if the content is deleted and re-created with the same name. */ uid?: string | null; /** * Output only. The time when the content was last updated. */ updateTime?: string | null; } /** * Configuration for Notebook content. */ export interface Schema$GoogleCloudDataplexV1ContentNotebook { /** * Required. Kernel Type of the notebook. */ kernelType?: string | null; } /** * Configuration for the Sql Script content. */ export interface Schema$GoogleCloudDataplexV1ContentSqlScript { /** * Required. Query Engine to be used for the Sql Query. */ engine?: string | null; } /** * DataAccessSpec holds the access control configuration to be enforced on data stored within resources (eg: rows, columns in BigQuery Tables). When associated with data, the data is only accessible to principals explicitly granted access through the DataAccessSpec. Principals with access to the containing resource are not implicitly granted access. */ export interface Schema$GoogleCloudDataplexV1DataAccessSpec { /** * Optional. The format of strings follows the pattern followed by IAM in the bindings. user:{email\}, serviceAccount:{email\} group:{email\}. The set of principals to be granted reader role on data stored within resources. */ readers?: string[] | null; } /** * Represents a data asset resource that can be packaged and shared via a data product. */ export interface Schema$GoogleCloudDataplexV1DataAsset { /** * Optional. Access groups configurations for this data asset.The key is DataProduct.AccessGroup.id and the value is AccessGroupConfig.Example: { "analyst": { "iamRoles": ["roles/bigquery.dataViewer"] \} \} Currently, at most one IAM role is allowed per access group. For providing multiple predefined IAM roles, wrap them in a custom IAM role as per https://cloud.google.com/iam/docs/creating-custom-roles. */ accessGroupConfigs?: { [key: string]: Schema$GoogleCloudDataplexV1DataAssetAccessGroupConfig; } | null; /** * Output only. The time at which the data asset was created. */ createTime?: string | null; /** * Optional. This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. */ etag?: string | null; /** * Optional. User-defined labels for the data asset.Example: { "environment": "production", "billing": "marketing-department" \} */ labels?: { [key: string]: string; } | null; /** * Identifier. Resource name of the data asset. Format: projects/{project_id_or_number\}/locations/{location_id\}/dataProducts/{data_product_id\}/dataAssets/{data_asset_id\} */ name?: string | null; /** * Required. Immutable. Full resource name of the cloud resource represented by the data asset. This must follow https://cloud.google.com/iam/docs/full-resource-names. Example: //bigquery.googleapis.com/projects/my_project_123/datasets/dataset_456/tables/table_789 Only BigQuery tables and datasets are currently supported. Data asset creator must have getIamPolicy and setIamPolicy permissions on the resource. Data asset creator must also have resource specific get permission, for instance, bigquery.tables.get for BigQuery tables. */ resource?: string | null; /** * Output only. System generated globally unique ID for the data asset. This ID will be different if the data asset is deleted and re-created with the same name. */ uid?: string | null; /** * Output only. The time at which the data asset was last updated. */ updateTime?: string | null; } /** * Configuration for access group inherited from the parent data product. */ export interface Schema$GoogleCloudDataplexV1DataAssetAccessGroupConfig { /** * Optional. IAM roles granted on the resource to this access group. Role name follows https://cloud.google.com/iam/docs/reference/rest/v1/roles.Example: [ "roles/bigquery.dataViewer" ] */ iamRoles?: string[] | null; } /** * Denotes one dataAttribute in a dataTaxonomy, for example, PII. DataAttribute resources can be defined in a hierarchy. A single dataAttribute resource can contain specs of multiple types PII - ResourceAccessSpec : - readers :foo@bar.com - DataAccessSpec : - readers :bar@foo.com */ export interface Schema$GoogleCloudDataplexV1DataAttribute { /** * Output only. The number of child attributes present for this attribute. */ attributeCount?: number | null; /** * Output only. The time when the DataAttribute was created. */ createTime?: string | null; /** * Optional. Specified when applied to data stored on the resource (eg: rows, columns in BigQuery Tables). */ dataAccessSpec?: Schema$GoogleCloudDataplexV1DataAccessSpec; /** * Optional. Description of the DataAttribute. */ description?: string | null; /** * Optional. User friendly display name. */ displayName?: string | null; /** * This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. */ etag?: string | null; /** * Optional. User-defined labels for the DataAttribute. */ labels?: { [key: string]: string; } | null; /** * Output only. The relative resource name of the dataAttribute, of the form: projects/{project_number\}/locations/{location_id\}/dataTaxonomies/{dataTaxonomy\}/attributes/{data_attribute_id\}. */ name?: string | null; /** * Optional. The ID of the parent DataAttribute resource, should belong to the same data taxonomy. Circular dependency in parent chain is not valid. Maximum depth of the hierarchy allowed is 4. a -\> b -\> c -\> d -\> e, depth = 4 */ parentId?: string | null; /** * Optional. Specified when applied to a resource (eg: Cloud Storage bucket, BigQuery dataset, BigQuery table). */ resourceAccessSpec?: Schema$GoogleCloudDataplexV1ResourceAccessSpec; /** * Output only. System generated globally unique ID for the DataAttribute. This ID will be different if the DataAttribute is deleted and re-created with the same name. */ uid?: string | null; /** * Output only. The time when the DataAttribute was last updated. */ updateTime?: string | null; } /** * DataAttributeBinding represents binding of attributes to resources. Eg: Bind 'CustomerInfo' entity with 'PII' attribute. */ export interface Schema$GoogleCloudDataplexV1DataAttributeBinding { /** * Optional. List of attributes to be associated with the resource, provided in the form: projects/{project\}/locations/{location\}/dataTaxonomies/{dataTaxonomy\}/attributes/{data_attribute_id\} */ attributes?: string[] | null; /** * Output only. The time when the DataAttributeBinding was created. */ createTime?: string | null; /** * Optional. Description of the DataAttributeBinding. */ description?: string | null; /** * Optional. User friendly display name. */ displayName?: string | null; /** * This checksum is computed by the server based on the value of other fields, and may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding. Etags must be used when calling the DeleteDataAttributeBinding and the UpdateDataAttributeBinding method. */ etag?: string | null; /** * Optional. User-defined labels for the DataAttributeBinding. */ labels?: { [key: string]: string; } | null; /** * Output only. The relative resource name of the Data Attribute Binding, of the form: projects/{project_number\}/locations/{location\}/dataAttributeBindings/{data_attribute_binding_id\} */ name?: string | null; /** * Optional. The list of paths for items within the associated resource (eg. columns and partitions within a table) along with attribute bindings. */ paths?: Schema$GoogleCloudDataplexV1DataAttributeBindingPath[]; /** * Optional. Immutable. The resource name of the resource that is associated to attributes. Presently, only entity resource is supported in the form: projects/{project\}/locations/{location\}/lakes/{lake\}/zones/{zone\}/entities/{entity_id\} Must belong in the same project and region as the attribute binding, and there can only exist one active binding for a resource. */ resource?: string | null; /** * Output only. System generated globally unique ID for the DataAttributeBinding. This ID will be different if the DataAttributeBinding is deleted and re-created with the same name. */ uid?: string | null; /** * Output only. The time when the DataAttributeBinding was last updated. */ updateTime?: string | null; } /** * Represents a subresource of the given resource, and associated bindings with it. Currently supported subresources are column and partition schema fields within a table. */ export interface Schema$GoogleCloudDataplexV1DataAttributeBindingPath { /** * Optional. List of attributes to be associated with the path of the resource, provided in the form: projects/{project\}/locations/{location\}/dataTaxonomies/{dataTaxonomy\}/attributes/{data_attribute_id\} */ attributes?: string[] | null; /** * Required. The name identifier of the path. Nested columns should be of the form: 'address.city'. */ name?: string | null; } /** * The output of a data discovery scan. */ export interface Schema$GoogleCloudDataplexV1DataDiscoveryResult { /** * Output only. Configuration for metadata publishing. */ bigqueryPublishing?: Schema$GoogleCloudDataplexV1DataDiscoveryResultBigQueryPublishing; /** * Output only. Describes result statistics of a data scan discovery job. */ scanStatistics?: Schema$GoogleCloudDataplexV1DataDiscoveryResultScanStatistics; } /** * Describes BigQuery publishing configurations. */ export interface Schema$GoogleCloudDataplexV1DataDiscoveryResultBigQueryPublishing { /** * Output only. The BigQuery dataset the discovered tables are published to. */ dataset?: string | null; /** * Output only. The location of the BigQuery publishing dataset. */ location?: string | null; } /** * Describes result statistics of a data scan discovery job. */ export interface Schema$GoogleCloudDataplexV1DataDiscoveryResultScanStatistics { /** * The data processed in bytes. */ dataProcessedBytes?: string | null; /** * The number of filesets created. */ filesetsCreated?: number | null; /** * The number of filesets deleted. */ filesetsDeleted?: number | null; /** * The number of filesets updated. */ filesetsUpdated?: number | null; /** * The number of files excluded. */ filesExcluded?: number | null; /** * The number of files scanned. */ scannedFileCount?: number | null; /** * The number of tables created. */ tablesCreated?: number | null; /** * The number of tables deleted. */ tablesDeleted?: number | null; /** * The number of tables updated. */ tablesUpdated?: number | null; } /** * Spec for a data discovery scan. */ export interface Schema$GoogleCloudDataplexV1DataDiscoverySpec { /** * Optional. Configuration for metadata publishing. */ bigqueryPublishingConfig?: Schema$GoogleCloudDataplexV1DataDiscoverySpecBigQueryPublishingConfig; /** * Cloud Storage related configurations. */ storageConfig?: Schema$GoogleCloudDataplexV1DataDiscoverySpecStorageConfig; } /** * Describes BigQuery publishing configurations. */ export interface Schema$GoogleCloudDataplexV1DataDiscoverySpecBigQueryPublishingConfig { /** * Optional. The BigQuery connection used to create BigLake tables. Must be in the form projects/{project_id\}/locations/{location_id\}/connections/{connection_id\} */ connection?: string | null; /** * Optional. The location of the BigQuery dataset to publish BigLake external or non-BigLake external tables to. 1. If the Cloud Storage bucket is located in a multi-region bucket, then BigQuery dataset can be in the same multi-region bucket or any single region that is included in the same multi-region bucket. The datascan can be created in any single region that is included in the same multi-region bucket 2. If the Cloud Storage bucket is located in a dual-region bucket, then BigQuery dataset can be located in regions that are included in the dual-region bucket, or in a multi-region that includes the dual-region. The datascan can be created in any single region that is included in the same dual-region bucket. 3. If the Cloud Storage bucket is located in a single region, then BigQuery dataset can be in the same single region or any multi-region bucket that includes the same single region. The datascan will be created in the same single region as the bucket. 4. If the BigQuery dataset is in single region, it must be in the same single region as the datascan.For supported values, refer to https://cloud.google.com/bigquery/docs/locations#supported_locations. */ location?: string | null; /** * Optional. The project of the BigQuery dataset to publish BigLake external or non-BigLake external tables to. If not specified, the project of the Cloud Storage bucket will be used. The format is "projects/{project_id_or_number\}". */ project?: string | null; /** * Optional. Determines whether to publish discovered tables as BigLake external tables or non-BigLake external tables. */ tableType?: string | null; } /** * Configurations related to Cloud Storage as the data source. */ export interface Schema$GoogleCloudDataplexV1DataDiscoverySpecStorageConfig { /** * Optional. Configuration for CSV data. */ csvOptions?: Schema$GoogleCloudDataplexV1DataDiscoverySpecStorageConfigCsvOptions; /** * Optional. Defines the data to exclude during discovery. Provide a list of patterns that identify the data to exclude. For Cloud Storage bucket assets, these patterns are interpreted as glob patterns used to match object names. For BigQuery dataset assets, these patterns are interpreted as patterns to match table names. */ excludePatterns?: string[] | null; /** * Optional. Defines the data to include during discovery when only a subset of the data should be considered. Provide a list of patterns that identify the data to include. For Cloud Storage bucket assets, these patterns are interpreted as glob patterns used to match object names. For BigQuery dataset assets, these patterns are interpreted as patterns to match table names. */ includePatterns?: string[] | null; /** * Optional. Configuration for JSON data. */ jsonOptions?: Schema$GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions; } /** * Describes CSV and similar semi-structured data formats. */ export interface Schema$GoogleCloudDataplexV1DataDiscoverySpecStorageConfigCsvOptions { /** * Optional. The delimiter that is used to separate values. The default is , (comma). */ delimiter?: string | null; /** * Optional. The character encoding of the data. The default is UTF-8. */ encoding?: string | null; /** * Optional. The number of rows to interpret as header rows that should be skipped when reading data rows. */ headerRows?: number | null; /** * Optional. The character used to quote column values. Accepts " (double quotation mark) or ' (single quotation mark). If unspecified, defaults to " (double quotation mark). */ quote?: string | null; /** * Optional. Whether to disable the inference of data types for CSV data. If true, all columns are registered as strings. */ typeInferenceDisabled?: boolean | null; } /** * Describes JSON data format. */ export interface Schema$GoogleCloudDataplexV1DataDiscoverySpecStorageConfigJsonOptions { /** * Optional. The character encoding of the data. The default is UTF-8. */ encoding?: string | null; /** * Optional. Whether to disable the inference of data types for JSON data. If true, all columns are registered as their primitive types (strings, number, or boolean). */ typeInferenceDisabled?: boolean | null; } /** * The output of a DataDocumentation scan. */ export interface Schema$GoogleCloudDataplexV1DataDocumentationResult { /** * Output only. Table result for insights. */ tableResult?: Schema$GoogleCloudDataplexV1DataDocumentationResultTableResult; } /** * Column of a table with generated metadata and nested fields. */ export interface Schema$GoogleCloudDataplexV1DataDocumentationResultField { /** * Output only. Generated description for columns and fields. */ description?: string | null; /** * Output only. Nested fields. */ fields?: Schema$GoogleCloudDataplexV1DataDocumentationResultField[]; /** * Output only. The name of the column. */ name?: strin