As of January 1, 2020 this library no longer supports Python 2 on the latest released version. Library versions released prior to that date will continue to be available. For more information please visit Python 2 support on Google Cloud.

Types for Google Cloud Dlp v2 API

class google.cloud.dlp_v2.types.Action(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A task to execute on the completion of a job. See https://cloud.google.com/dlp/docs/concepts-actions to learn more.

save_findings

Save resulting findings in a provided location.

Type

SaveFindings

pub_sub

Publish a notification to a pubsub topic.

Type

PublishToPubSub

publish_summary_to_cscc

Publish summary to Cloud Security Command Center (Alpha).

Type

PublishSummaryToCscc

publish_findings_to_cloud_data_catalog

Publish findings to Cloud Datahub.

Type

PublishFindingsToCloudDataCatalog

job_notification_emails

Enable email notification for project owners and editors on job’s completion/failure.

Type

JobNotificationEmails

publish_to_stackdriver

Enable Stackdriver metric dlp.googleapis.com/finding_count.

Type

PublishToStackdriver

class JobNotificationEmails(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Enable email notification to project owners and editors on jobs’s completion/failure.

class PublishFindingsToCloudDataCatalog(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Publish findings of a DlpJob to Cloud Data Catalog. Labels summarizing the results of the DlpJob will be applied to the entry for the resource scanned in Cloud Data Catalog. Any labels previously written by another DlpJob will be deleted. InfoType naming patterns are strictly enforced when using this feature. Note that the findings will be persisted in Cloud Data Catalog storage and are governed by Data Catalog service-specific policy, see https://cloud.google.com/terms/service-terms Only a single instance of this action can be specified and only allowed if all resources being scanned are BigQuery tables. Compatible with: Inspect

class PublishSummaryToCscc(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Publish the result summary of a DlpJob to the Cloud Security Command Center (CSCC Alpha). This action is only available for projects which are parts of an organization and whitelisted for the alpha Cloud Security Command Center. The action will publish count of finding instances and their info types. The summary of findings will be persisted in CSCC and are governed by CSCC service-specific policy, see https://cloud.google.com/terms/service-terms Only a single instance of this action can be specified. Compatible with: Inspect

class PublishToPubSub(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Publish a message into given Pub/Sub topic when DlpJob has completed. The message contains a single field, DlpJobName, which is equal to the finished job’s `DlpJob.name <https://cloud.google.com/dlp/docs/reference/rest/v2/projects.dlpJobs#DlpJob>`__. Compatible with: Inspect, Risk

topic

Cloud Pub/Sub topic to send notifications to. The topic must have given publishing access rights to the DLP API service account executing the long running DlpJob sending the notifications. Format is projects/{project}/topics/{topic}.

Type

str

class PublishToStackdriver(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Enable Stackdriver metric dlp.googleapis.com/finding_count. This will publish a metric to stack driver on each infotype requested and how many findings were found for it. CustomDetectors will be bucketed as ‘Custom’ under the Stackdriver label ‘info_type’.

class SaveFindings(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

If set, the detailed findings will be persisted to the specified OutputStorageConfig. Only a single instance of this action can be specified. Compatible with: Inspect, Risk

output_config

Location to store findings outside of DLP.

Type

OutputStorageConfig

class google.cloud.dlp_v2.types.ActivateJobTriggerRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for ActivateJobTrigger.

name

Required. Resource name of the trigger to activate, for example projects/dlp-test-project/jobTriggers/53234423.

Type

str

class google.cloud.dlp_v2.types.AnalyzeDataSourceRiskDetails(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Result of a risk analysis operation request.

requested_privacy_metric

Privacy metric to compute.

Type

PrivacyMetric

requested_source_table

Input dataset to compute metrics over.

Type

BigQueryTable

numerical_stats_result

Numerical stats result

Type

NumericalStatsResult

categorical_stats_result

Categorical stats result

Type

CategoricalStatsResult

k_anonymity_result

K-anonymity result

Type

KAnonymityResult

l_diversity_result

L-divesity result

Type

LDiversityResult

k_map_estimation_result

K-map result

Type

KMapEstimationResult

delta_presence_estimation_result

Delta-presence result

Type

DeltaPresenceEstimationResult

requested_options

The configuration used for this job.

Type

RequestedRiskAnalysisOptions

class CategoricalStatsResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Result of the categorical stats computation.

value_frequency_histogram_buckets

Histogram of value frequencies in the column.

Type

Sequence[CategoricalStatsHistogramBucket]

class CategoricalStatsHistogramBucket(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Histogram of value frequencies in the column.

value_frequency_lower_bound

Lower bound on the value frequency of the values in this bucket.

Type

int

value_frequency_upper_bound

Upper bound on the value frequency of the values in this bucket.

Type

int

bucket_size

Total number of values in this bucket.

Type

int

bucket_values

Sample of value frequencies in this bucket. The total number of values returned per bucket is capped at 20.

Type

Sequence[ValueFrequency]

bucket_value_count

Total number of distinct values in this bucket.

Type

int

class DeltaPresenceEstimationResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Result of the δ-presence computation. Note that these results are an estimation, not exact values.

delta_presence_estimation_histogram

The intervals [min_probability, max_probability) do not overlap. If a value doesn’t correspond to any such interval, the associated frequency is zero. For example, the following records: {min_probability: 0, max_probability: 0.1, frequency: 17} {min_probability: 0.2, max_probability: 0.3, frequency: 42} {min_probability: 0.3, max_probability: 0.4, frequency: 99} mean that there are no record with an estimated probability in [0.1, 0.2) nor larger or equal to 0.4.

Type

Sequence[DeltaPresenceEstimationHistogramBucket]

class DeltaPresenceEstimationHistogramBucket(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A DeltaPresenceEstimationHistogramBucket message with the following values: min_probability: 0.1 max_probability: 0.2 frequency: 42 means that there are 42 records for which δ is in [0.1, 0.2). An important particular case is when min_probability = max_probability = 1: then, every individual who shares this quasi-identifier combination is in the dataset.

min_probability

Between 0 and 1.

Type

float

max_probability

Always greater than or equal to min_probability.

Type

float

bucket_size

Number of records within these probability bounds.

Type

int

bucket_values

Sample of quasi-identifier tuple values in this bucket. The total number of classes returned per bucket is capped at 20.

Type

Sequence[DeltaPresenceEstimationQuasiIdValues]

bucket_value_count

Total number of distinct quasi-identifier tuple values in this bucket.

Type

int

class DeltaPresenceEstimationQuasiIdValues(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A tuple of values for the quasi-identifier columns.

quasi_ids_values

The quasi-identifier values.

Type

Sequence[Value]

estimated_probability

The estimated probability that a given individual sharing these quasi-identifier values is in the dataset. This value, typically called δ, is the ratio between the number of records in the dataset with these quasi-identifier values, and the total number of individuals (inside and outside the dataset) with these quasi-identifier values. For example, if there are 15 individuals in the dataset who share the same quasi-identifier values, and an estimated 100 people in the entire population with these values, then δ is 0.15.

Type

float

class KAnonymityResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Result of the k-anonymity computation.

equivalence_class_histogram_buckets

Histogram of k-anonymity equivalence classes.

Type

Sequence[KAnonymityHistogramBucket]

class KAnonymityEquivalenceClass(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The set of columns’ values that share the same ldiversity value

quasi_ids_values

Set of values defining the equivalence class. One value per quasi-identifier column in the original KAnonymity metric message. The order is always the same as the original request.

Type

Sequence[Value]

equivalence_class_size

Size of the equivalence class, for example number of rows with the above set of values.

Type

int

class KAnonymityHistogramBucket(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Histogram of k-anonymity equivalence classes.

equivalence_class_size_lower_bound

Lower bound on the size of the equivalence classes in this bucket.

Type

int

equivalence_class_size_upper_bound

Upper bound on the size of the equivalence classes in this bucket.

Type

int

bucket_size

Total number of equivalence classes in this bucket.

Type

int

bucket_values

Sample of equivalence classes in this bucket. The total number of classes returned per bucket is capped at 20.

Type

Sequence[KAnonymityEquivalenceClass]

bucket_value_count

Total number of distinct equivalence classes in this bucket.

Type

int

class KMapEstimationResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Result of the reidentifiability analysis. Note that these results are an estimation, not exact values.

k_map_estimation_histogram

The intervals [min_anonymity, max_anonymity] do not overlap. If a value doesn’t correspond to any such interval, the associated frequency is zero. For example, the following records: {min_anonymity: 1, max_anonymity: 1, frequency: 17} {min_anonymity: 2, max_anonymity: 3, frequency: 42} {min_anonymity: 5, max_anonymity: 10, frequency: 99} mean that there are no record with an estimated anonymity of 4, 5, or larger than 10.

Type

Sequence[KMapEstimationHistogramBucket]

class KMapEstimationHistogramBucket(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A KMapEstimationHistogramBucket message with the following values: min_anonymity: 3 max_anonymity: 5 frequency: 42 means that there are 42 records whose quasi-identifier values correspond to 3, 4 or 5 people in the overlying population. An important particular case is when min_anonymity = max_anonymity = 1: the frequency field then corresponds to the number of uniquely identifiable records.

min_anonymity

Always positive.

Type

int

max_anonymity

Always greater than or equal to min_anonymity.

Type

int

bucket_size

Number of records within these anonymity bounds.

Type

int

bucket_values

Sample of quasi-identifier tuple values in this bucket. The total number of classes returned per bucket is capped at 20.

Type

Sequence[KMapEstimationQuasiIdValues]

bucket_value_count

Total number of distinct quasi-identifier tuple values in this bucket.

Type

int

class KMapEstimationQuasiIdValues(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A tuple of values for the quasi-identifier columns.

quasi_ids_values

The quasi-identifier values.

Type

Sequence[Value]

estimated_anonymity

The estimated anonymity for these quasi- dentifier values.

Type

int

class LDiversityResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Result of the l-diversity computation.

sensitive_value_frequency_histogram_buckets

Histogram of l-diversity equivalence class sensitive value frequencies.

Type

Sequence[LDiversityHistogramBucket]

class LDiversityEquivalenceClass(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The set of columns’ values that share the same ldiversity value.

quasi_ids_values

Quasi-identifier values defining the k-anonymity equivalence class. The order is always the same as the original request.

Type

Sequence[Value]

equivalence_class_size

Size of the k-anonymity equivalence class.

Type

int

num_distinct_sensitive_values

Number of distinct sensitive values in this equivalence class.

Type

int

top_sensitive_values

Estimated frequencies of top sensitive values.

Type

Sequence[ValueFrequency]

class LDiversityHistogramBucket(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Histogram of l-diversity equivalence class sensitive value frequencies.

sensitive_value_frequency_lower_bound

Lower bound on the sensitive value frequencies of the equivalence classes in this bucket.

Type

int

sensitive_value_frequency_upper_bound

Upper bound on the sensitive value frequencies of the equivalence classes in this bucket.

Type

int

bucket_size

Total number of equivalence classes in this bucket.

Type

int

bucket_values

Sample of equivalence classes in this bucket. The total number of classes returned per bucket is capped at 20.

Type

Sequence[LDiversityEquivalenceClass]

bucket_value_count

Total number of distinct equivalence classes in this bucket.

Type

int

class NumericalStatsResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Result of the numerical stats computation.

min_value

Minimum value appearing in the column.

Type

Value

max_value

Maximum value appearing in the column.

Type

Value

quantile_values

List of 99 values that partition the set of field values into 100 equal sized buckets.

Type

Sequence[Value]

class RequestedRiskAnalysisOptions(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Risk analysis options.

job_config

The job config for the risk job.

Type

RiskAnalysisJobConfig

class google.cloud.dlp_v2.types.BigQueryField(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message defining a field of a BigQuery table.

table

Source table of the field.

Type

BigQueryTable

field

Designated field in the BigQuery table.

Type

FieldId

class google.cloud.dlp_v2.types.BigQueryKey(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Row key for identifying a record in BigQuery table.

table_reference

Complete BigQuery table reference.

Type

BigQueryTable

row_number

Row number inferred at the time the table was scanned. This value is nondeterministic, cannot be queried, and may be null for inspection jobs. To locate findings within a table, specify inspect_job.storage_config.big_query_options.identifying_fields in CreateDlpJobRequest.

Type

int

class google.cloud.dlp_v2.types.BigQueryOptions(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Options defining BigQuery table and row identifiers.

table_reference

Complete BigQuery table reference.

Type

BigQueryTable

identifying_fields

Table fields that may uniquely identify a row within the table. When actions.saveFindings.outputConfig.table is specified, the values of columns specified here are available in the output table under location.content_locations.record_location.record_key.id_values. Nested fields such as person.birthdate.year are allowed.

Type

Sequence[FieldId]

rows_limit

Max number of rows to scan. If the table has more rows than this value, the rest of the rows are omitted. If not set, or if set to 0, all rows will be scanned. Only one of rows_limit and rows_limit_percent can be specified. Cannot be used in conjunction with TimespanConfig.

Type

int

rows_limit_percent

Max percentage of rows to scan. The rest are omitted. The number of rows scanned is rounded down. Must be between 0 and 100, inclusively. Both 0 and 100 means no limit. Defaults to 0. Only one of rows_limit and rows_limit_percent can be specified. Cannot be used in conjunction with TimespanConfig.

Type

int

sample_method
Type

SampleMethod

excluded_fields

References to fields excluded from scanning. This allows you to skip inspection of entire columns which you know have no findings.

Type

Sequence[FieldId]

class SampleMethod(value)[source]

Bases: proto.enums.Enum

How to sample rows if not all rows are scanned. Meaningful only when used in conjunction with either rows_limit or rows_limit_percent. If not specified, rows are scanned in the order BigQuery reads them.

class google.cloud.dlp_v2.types.BigQueryTable(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message defining the location of a BigQuery table. A table is uniquely identified by its project_id, dataset_id, and table_name. Within a query a table is often referenced with a string in the format of: <project_id>:<dataset_id>.<table_id> or <project_id>.<dataset_id>.<table_id>.

project_id

The Google Cloud Platform project ID of the project containing the table. If omitted, project ID is inferred from the API call.

Type

str

dataset_id

Dataset ID of the table.

Type

str

table_id

Name of the table.

Type

str

class google.cloud.dlp_v2.types.BoundingBox(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Bounding box encompassing detected text within an image.

top

Top coordinate of the bounding box. (0,0) is upper left.

Type

int

left

Left coordinate of the bounding box. (0,0) is upper left.

Type

int

width

Width of the bounding box in pixels.

Type

int

height

Height of the bounding box in pixels.

Type

int

class google.cloud.dlp_v2.types.BucketingConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Generalization function that buckets values based on ranges. The ranges and replacement values are dynamically provided by the user for custom behavior, such as 1-30 -> LOW 31-65 -> MEDIUM 66-100 -> HIGH This can be used on data of type: number, long, string, timestamp. If the bound Value type differs from the type of data being transformed, we will first attempt converting the type of the data to be transformed to match the type of the bound before comparing. See https://cloud.google.com/dlp/docs/concepts-bucketing to learn more.

buckets

Set of buckets. Ranges must be non- verlapping.

Type

Sequence[Bucket]

class Bucket(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Bucket is represented as a range, along with replacement values.

min_

Lower bound of the range, inclusive. Type should be the same as max if used.

Type

Value

max_

Upper bound of the range, exclusive; type must match min.

Type

Value

replacement_value

Required. Replacement value for this bucket.

Type

Value

class google.cloud.dlp_v2.types.ByteContentItem(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Container for bytes to inspect or redact.

type_

The type of data stored in the bytes string. Default will be TEXT_UTF8.

Type

BytesType

data

Content data to inspect or redact.

Type

bytes

class BytesType(value)[source]

Bases: proto.enums.Enum

The type of data being sent for inspection.

class google.cloud.dlp_v2.types.CancelDlpJobRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The request message for canceling a DLP job.

name

Required. The name of the DlpJob resource to be cancelled.

Type

str

class google.cloud.dlp_v2.types.CharacterMaskConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Partially mask a string by replacing a given number of characters with a fixed character. Masking can start from the beginning or end of the string. This can be used on data of any type (numbers, longs, and so on) and when de-identifying structured data we’ll attempt to preserve the original data’s type. (This allows you to take a long like 123 and modify it to a string like **3.

masking_character

Character to use to mask the sensitive values—for example, * for an alphabetic string such as a name, or 0 for a numeric string such as ZIP code or credit card number. This string must have a length of 1. If not supplied, this value defaults to * for strings, and 0 for digits.

Type

str

number_to_mask

Number of characters to mask. If not set, all matching chars will be masked. Skipped characters do not count towards this tally.

Type

int

reverse_order

Mask characters in reverse order. For example, if masking_character is 0, number_to_mask is 14, and reverse_order is false, then the input string 1234-5678-9012-3456 is masked as 00000000000000-3456. If masking_character is *, number_to_mask is 3, and reverse_order is true, then the string 12345 is masked as 12***.

Type

bool

characters_to_ignore

When masking a string, items in this list will be skipped when replacing characters. For example, if the input string is 555-555-5555 and you instruct Cloud DLP to skip - and mask 5 characters with *, Cloud DLP returns ***-**5-5555.

Type

Sequence[CharsToIgnore]

class google.cloud.dlp_v2.types.CharsToIgnore(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Characters to skip when doing deidentification of a value. These will be left alone and skipped.

characters_to_skip

Characters to not transform when masking.

Type

str

common_characters_to_ignore

Common characters to not transform when masking. Useful to avoid removing punctuation.

Type

CommonCharsToIgnore

class CommonCharsToIgnore(value)[source]

Bases: proto.enums.Enum

Convenience enum for indication common characters to not transform.

class google.cloud.dlp_v2.types.CloudStorageFileSet(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message representing a set of files in Cloud Storage.

url

The url, in the format gs://<bucket>/<path>. Trailing wildcard in the path is allowed.

Type

str

class google.cloud.dlp_v2.types.CloudStorageOptions(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Options defining a file or a set of files within a Google Cloud Storage bucket.

file_set

The set of one or more files to scan.

Type

FileSet

bytes_limit_per_file

Max number of bytes to scan from a file. If a scanned file’s size is bigger than this value then the rest of the bytes are omitted. Only one of bytes_limit_per_file and bytes_limit_per_file_percent can be specified.

Type

int

bytes_limit_per_file_percent

Max percentage of bytes to scan from a file. The rest are omitted. The number of bytes scanned is rounded down. Must be between 0 and 100, inclusively. Both 0 and 100 means no limit. Defaults to 0. Only one of bytes_limit_per_file and bytes_limit_per_file_percent can be specified.

Type

int

file_types

List of file type groups to include in the scan. If empty, all files are scanned and available data format processors are applied. In addition, the binary content of the selected files is always scanned as well. Images are scanned only as binary if the specified region does not support image inspection and no file_types were specified. Image inspection is restricted to ‘global’, ‘us’, ‘asia’, and ‘europe’.

Type

Sequence[FileType]

sample_method
Type

SampleMethod

files_limit_percent

Limits the number of files to scan to this percentage of the input FileSet. Number of files scanned is rounded down. Must be between 0 and 100, inclusively. Both 0 and 100 means no limit. Defaults to 0.

Type

int

class FileSet(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Set of files to scan.

url

The Cloud Storage url of the file(s) to scan, in the format gs://<bucket>/<path>. Trailing wildcard in the path is allowed.

If the url ends in a trailing slash, the bucket or directory represented by the url will be scanned non-recursively (content in sub-directories will not be scanned). This means that gs://mybucket/ is equivalent to gs://mybucket/*, and gs://mybucket/directory/ is equivalent to gs://mybucket/directory/*.

Exactly one of url or regex_file_set must be set.

Type

str

regex_file_set

The regex-filtered set of files to scan. Exactly one of url or regex_file_set must be set.

Type

CloudStorageRegexFileSet

class SampleMethod(value)[source]

Bases: proto.enums.Enum

How to sample bytes if not all bytes are scanned. Meaningful only when used in conjunction with bytes_limit_per_file. If not specified, scanning would start from the top.

class google.cloud.dlp_v2.types.CloudStoragePath(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message representing a single file or path in Cloud Storage.

path

A url representing a file or path (no wildcards) in Cloud Storage. Example: gs://[BUCKET_NAME]/dictionary.txt

Type

str

class google.cloud.dlp_v2.types.CloudStorageRegexFileSet(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message representing a set of files in a Cloud Storage bucket. Regular expressions are used to allow fine-grained control over which files in the bucket to include.

Included files are those that match at least one item in include_regex and do not match any items in exclude_regex. Note that a file that matches items from both lists will not be included. For a match to occur, the entire file path (i.e., everything in the url after the bucket name) must match the regular expression.

For example, given the input {bucket_name: "mybucket", include_regex: ["directory1/.*"], exclude_regex: ["directory1/excluded.*"]}:

  • gs://mybucket/directory1/myfile will be included

  • gs://mybucket/directory1/directory2/myfile will be included (.* matches across /)

  • gs://mybucket/directory0/directory1/myfile will not be included (the full path doesn’t match any items in include_regex)

  • gs://mybucket/directory1/excludedfile will not be included (the path matches an item in exclude_regex)

If include_regex is left empty, it will match all files by default (this is equivalent to setting include_regex: [".*"]).

Some other common use cases:

  • {bucket_name: "mybucket", exclude_regex: [".*\.pdf"]} will include all files in mybucket except for .pdf files

  • {bucket_name: "mybucket", include_regex: ["directory/[^/]+"]} will include all files directly under gs://mybucket/directory/, without matching across /

bucket_name

The name of a Cloud Storage bucket. Required.

Type

str

include_regex

A list of regular expressions matching file paths to include. All files in the bucket that match at least one of these regular expressions will be included in the set of files, except for those that also match an item in exclude_regex. Leaving this field empty will match all files by default (this is equivalent to including .* in the list).

Regular expressions use RE2 syntax; a guide can be found under the google/re2 repository on GitHub.

Type

Sequence[str]

exclude_regex

A list of regular expressions matching file paths to exclude. All files in the bucket that match at least one of these regular expressions will be excluded from the scan.

Regular expressions use RE2 syntax; a guide can be found under the google/re2 repository on GitHub.

Type

Sequence[str]

class google.cloud.dlp_v2.types.Color(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Represents a color in the RGB color space.

red

The amount of red in the color as a value in the interval [0, 1].

Type

float

green

The amount of green in the color as a value in the interval [0, 1].

Type

float

blue

The amount of blue in the color as a value in the interval [0, 1].

Type

float

class google.cloud.dlp_v2.types.Container(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Represents a container that may contain DLP findings. Examples of a container include a file, table, or database record.

type_

Container type, for example BigQuery or Google Cloud Storage.

Type

str

project_id

Project where the finding was found. Can be different from the project that owns the finding.

Type

str

full_path

A string representation of the full container name. Examples: - BigQuery: ‘Project:DataSetId.TableId’ - Google Cloud Storage: ‘gs://Bucket/folders/filename.txt’

Type

str

root_path

The root of the container. Examples:

  • For BigQuery table project_id:dataset_id.table_id, the root is dataset_id

  • For Google Cloud Storage file gs://bucket/folder/filename.txt, the root is gs://bucket

Type

str

relative_path

The rest of the path after the root. Examples:

  • For BigQuery table project_id:dataset_id.table_id, the relative path is table_id

  • Google Cloud Storage file gs://bucket/folder/filename.txt, the relative path is folder/filename.txt

Type

str

update_time

Findings container modification timestamp, if applicable. For Google Cloud Storage contains last file modification timestamp. For BigQuery table contains last_modified_time property. For Datastore - not populated.

Type

Timestamp

version

Findings container version, if available (“generation” for Google Cloud Storage).

Type

str

class google.cloud.dlp_v2.types.ContentItem(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Container structure for the content to inspect.

value

String data to inspect or redact.

Type

str

table

Structured content for inspection. See https://cloud.google.com/dlp/docs/inspecting-text#inspecting_a_table to learn more.

Type

Table

byte_item

Content data to inspect or redact. Replaces type and data.

Type

ByteContentItem

class google.cloud.dlp_v2.types.ContentLocation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Precise location of the finding within a document, record, image, or metadata container.

container_name

Name of the container where the finding is located. The top level name is the source file name or table name. Names of some common storage containers are formatted as follows:

  • BigQuery tables: {project_id}:{dataset_id}.{table_id}

  • Cloud Storage files: gs://{bucket}/{path}

  • Datastore namespace: {namespace}

Nested names could be absent if the embedded object has no string identifier (for an example an image contained within a document).

Type

str

record_location

Location within a row or record of a database table.

Type

RecordLocation

image_location

Location within an image’s pixels.

Type

ImageLocation

document_location

Location data for document files.

Type

DocumentLocation

metadata_location

Location within the metadata for inspected content.

Type

MetadataLocation

container_timestamp

Findings container modification timestamp, if applicable. For Google Cloud Storage contains last file modification timestamp. For BigQuery table contains last_modified_time property. For Datastore - not populated.

Type

Timestamp

container_version

Findings container version, if available (“generation” for Google Cloud Storage).

Type

str

class google.cloud.dlp_v2.types.ContentOption(value)[source]

Bases: proto.enums.Enum

Options describing which parts of the provided content should be scanned.

class google.cloud.dlp_v2.types.CreateDeidentifyTemplateRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for CreateDeidentifyTemplate.

parent

Required. Parent resource name.

The format of this value varies depending on the scope of the request (project or organization) and whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

  • Organizations scope, location specified: organizations/ORG_ID/locations/LOCATION_ID

  • Organizations scope, no location specified (defaults to global): organizations/ORG_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

deidentify_template

Required. The DeidentifyTemplate to create.

Type

DeidentifyTemplate

template_id

The template id can contain uppercase and lowercase letters, numbers, and hyphens; that is, it must match the regular expression: [a-zA-Z\d-_]+. The maximum length is 100 characters. Can be empty to allow the system to generate one.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.CreateDlpJobRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for CreateDlpJobRequest. Used to initiate long running jobs such as calculating risk metrics or inspecting Google Cloud Storage.

parent

Required. Parent resource name.

The format of this value varies depending on whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

inspect_job

Set to control what and how to inspect.

Type

InspectJobConfig

risk_job

Set to choose what metric to calculate.

Type

RiskAnalysisJobConfig

job_id

The job id can contain uppercase and lowercase letters, numbers, and hyphens; that is, it must match the regular expression: [a-zA-Z\d-_]+. The maximum length is 100 characters. Can be empty to allow the system to generate one.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.CreateInspectTemplateRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for CreateInspectTemplate.

parent

Required. Parent resource name.

The format of this value varies depending on the scope of the request (project or organization) and whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

  • Organizations scope, location specified: organizations/ORG_ID/locations/LOCATION_ID

  • Organizations scope, no location specified (defaults to global): organizations/ORG_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

inspect_template

Required. The InspectTemplate to create.

Type

InspectTemplate

template_id

The template id can contain uppercase and lowercase letters, numbers, and hyphens; that is, it must match the regular expression: [a-zA-Z\d-_]+. The maximum length is 100 characters. Can be empty to allow the system to generate one.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.CreateJobTriggerRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for CreateJobTrigger.

parent

Required. Parent resource name.

The format of this value varies depending on whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

job_trigger

Required. The JobTrigger to create.

Type

JobTrigger

trigger_id

The trigger id can contain uppercase and lowercase letters, numbers, and hyphens; that is, it must match the regular expression: [a-zA-Z\d-_]+. The maximum length is 100 characters. Can be empty to allow the system to generate one.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.CreateStoredInfoTypeRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for CreateStoredInfoType.

parent

Required. Parent resource name.

The format of this value varies depending on the scope of the request (project or organization) and whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

  • Organizations scope, location specified: organizations/ORG_ID/locations/LOCATION_ID

  • Organizations scope, no location specified (defaults to global): organizations/ORG_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

config

Required. Configuration of the storedInfoType to create.

Type

StoredInfoTypeConfig

stored_info_type_id

The storedInfoType ID can contain uppercase and lowercase letters, numbers, and hyphens; that is, it must match the regular expression: [a-zA-Z\d-_]+. The maximum length is 100 characters. Can be empty to allow the system to generate one.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.CryptoDeterministicConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Pseudonymization method that generates deterministic encryption for the given input. Outputs a base64 encoded representation of the encrypted output. Uses AES-SIV based on the RFC https://tools.ietf.org/html/rfc5297.

crypto_key

The key used by the encryption function.

Type

CryptoKey

surrogate_info_type

The custom info type to annotate the surrogate with. This annotation will be applied to the surrogate by prefixing it with the name of the custom info type followed by the number of characters comprising the surrogate. The following scheme defines the format: {info type name}({surrogate character count}):{surrogate}

For example, if the name of custom info type is ‘MY_TOKEN_INFO_TYPE’ and the surrogate is ‘abc’, the full replacement value will be: ‘MY_TOKEN_INFO_TYPE(3):abc’

This annotation identifies the surrogate when inspecting content using the custom info type ‘Surrogate’. This facilitates reversal of the surrogate when it occurs in free text.

Note: For record transformations where the entire cell in a table is being transformed, surrogates are not mandatory. Surrogates are used to denote the location of the token and are necessary for re-identification in free form text.

In order for inspection to work properly, the name of this info type must not occur naturally anywhere in your data; otherwise, inspection may either

  • reverse a surrogate that does not correspond to an actual identifier

  • be unable to parse the surrogate and result in an error

Therefore, choose your custom info type name carefully after considering what your data looks like. One way to select a name that has a high chance of yielding reliable detection is to include one or more unicode characters that are highly improbable to exist in your data. For example, assuming your data is entered from a regular ASCII keyboard, the symbol with the hex code point 29DD might be used like so: ⧝MY_TOKEN_TYPE.

Type

InfoType

context

A context may be used for higher security and maintaining referential integrity such that the same identifier in two different contexts will be given a distinct surrogate. The context is appended to plaintext value being encrypted. On decryption the provided context is validated against the value used during encryption. If a context was provided during encryption, same context must be provided during decryption as well.

If the context is not set, plaintext would be used as is for encryption. If the context is set but:

  1. there is no record present when transforming a given value or

  2. the field is not present when transforming a given value,

plaintext would be used as is for encryption.

Note that case (1) is expected when an InfoTypeTransformation is applied to both structured and non-structured ContentItems.

Type

FieldId

class google.cloud.dlp_v2.types.CryptoHashConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Pseudonymization method that generates surrogates via cryptographic hashing. Uses SHA-256. The key size must be either 32 or 64 bytes. Outputs a base64 encoded representation of the hashed output (for example, L7k0BHmF1ha5U3NfGykjro4xWi1MPVQPjhMAZbSV9mM=). Currently, only string and integer values can be hashed. See https://cloud.google.com/dlp/docs/pseudonymization to learn more.

crypto_key

The key used by the hash function.

Type

CryptoKey

class google.cloud.dlp_v2.types.CryptoKey(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

This is a data encryption key (DEK) (as opposed to a key encryption key (KEK) stored by KMS). When using KMS to wrap/unwrap DEKs, be sure to set an appropriate IAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot unwrap the data crypto key.

transient

Transient crypto key

Type

TransientCryptoKey

unwrapped

Unwrapped crypto key

Type

UnwrappedCryptoKey

kms_wrapped

Kms wrapped key

Type

KmsWrappedCryptoKey

class google.cloud.dlp_v2.types.CryptoReplaceFfxFpeConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Replaces an identifier with a surrogate using Format Preserving Encryption (FPE) with the FFX mode of operation; however when used in the ReidentifyContent API method, it serves the opposite function by reversing the surrogate back into the original identifier. The identifier must be encoded as ASCII. For a given crypto key and context, the same identifier will be replaced with the same surrogate. Identifiers must be at least two characters long. In the case that the identifier is the empty string, it will be skipped. See https://cloud.google.com/dlp/docs/pseudonymization to learn more.

Note: We recommend using CryptoDeterministicConfig for all use cases which do not require preserving the input alphabet space and size, plus warrant referential integrity.

crypto_key

Required. The key used by the encryption algorithm.

Type

CryptoKey

context

The ‘tweak’, a context may be used for higher security since the same identifier in two different contexts won’t be given the same surrogate. If the context is not set, a default tweak will be used.

If the context is set but:

  1. there is no record present when transforming a given value or

  2. the field is not present when transforming a given value,

a default tweak will be used.

Note that case (1) is expected when an InfoTypeTransformation is applied to both structured and non-structured ContentItems. Currently, the referenced field may be of value type integer or string.

The tweak is constructed as a sequence of bytes in big endian byte order such that:

  • a 64 bit integer is encoded followed by a single byte of value 1

  • a string is encoded in UTF-8 format followed by a single byte of value 2

Type

FieldId

common_alphabet

Common alphabets.

Type

FfxCommonNativeAlphabet

custom_alphabet

This is supported by mapping these to the alphanumeric characters that the FFX mode natively supports. This happens before/after encryption/decryption. Each character listed must appear only once. Number of characters must be in the range [2, 95]. This must be encoded as ASCII. The order of characters does not matter. The full list of allowed characters is: 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ~`!@#$%^&*()_-+={[}]|:;”’<,>.?/

Type

str

radix

The native way to select the alphabet. Must be in the range [2, 95].

Type

int

surrogate_info_type

The custom infoType to annotate the surrogate with. This annotation will be applied to the surrogate by prefixing it with the name of the custom infoType followed by the number of characters comprising the surrogate. The following scheme defines the format: info_type_name(surrogate_character_count):surrogate

For example, if the name of custom infoType is ‘MY_TOKEN_INFO_TYPE’ and the surrogate is ‘abc’, the full replacement value will be: ‘MY_TOKEN_INFO_TYPE(3):abc’

This annotation identifies the surrogate when inspecting content using the custom infoType `SurrogateType <https://cloud.google.com/dlp/docs/reference/rest/v2/InspectConfig#surrogatetype>`__. This facilitates reversal of the surrogate when it occurs in free text.

In order for inspection to work properly, the name of this infoType must not occur naturally anywhere in your data; otherwise, inspection may find a surrogate that does not correspond to an actual identifier. Therefore, choose your custom infoType name carefully after considering what your data looks like. One way to select a name that has a high chance of yielding reliable detection is to include one or more unicode characters that are highly improbable to exist in your data. For example, assuming your data is entered from a regular ASCII keyboard, the symbol with the hex code point 29DD might be used like so: ⧝MY_TOKEN_TYPE

Type

InfoType

class FfxCommonNativeAlphabet(value)[source]

Bases: proto.enums.Enum

These are commonly used subsets of the alphabet that the FFX mode natively supports. In the algorithm, the alphabet is selected using the “radix”. Therefore each corresponds to particular radix.

class google.cloud.dlp_v2.types.CustomInfoType(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Custom information type provided by the user. Used to find domain-specific sensitive information configurable to the data in question.

info_type

CustomInfoType can either be a new infoType, or an extension of built-in infoType, when the name matches one of existing infoTypes and that infoType is specified in InspectContent.info_types field. Specifying the latter adds findings to the one detected by the system. If built-in info type is not specified in InspectContent.info_types list then the name is treated as a custom info type.

Type

InfoType

likelihood

Likelihood to return for this CustomInfoType. This base value can be altered by a detection rule if the finding meets the criteria specified by the rule. Defaults to VERY_LIKELY if not specified.

Type

Likelihood

dictionary

A list of phrases to detect as a CustomInfoType.

Type

Dictionary

regex

Regular expression based CustomInfoType.

Type

Regex

surrogate_type

Message for detecting output from deidentification transformations that support reversing.

Type

SurrogateType

stored_type

Load an existing StoredInfoType resource for use in InspectDataSource. Not currently supported in InspectContent.

Type

StoredType

detection_rules

Set of detection rules to apply to all findings of this CustomInfoType. Rules are applied in order that they are specified. Not supported for the surrogate_type CustomInfoType.

Type

Sequence[DetectionRule]

exclusion_type

If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding to be returned. It still can be used for rules matching.

Type

ExclusionType

class DetectionRule(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Deprecated; use InspectionRuleSet instead. Rule for modifying a CustomInfoType to alter behavior under certain circumstances, depending on the specific details of the rule. Not supported for the surrogate_type custom infoType.

hotword_rule

Hotword-based detection rule.

Type

HotwordRule

class HotwordRule(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The rule that adjusts the likelihood of findings within a certain proximity of hotwords.

hotword_regex

Regular expression pattern defining what qualifies as a hotword.

Type

Regex

proximity

Proximity of the finding within which the entire hotword must reside. The total length of the window cannot exceed 1000 characters. Note that the finding itself will be included in the window, so that hotwords may be used to match substrings of the finding itself. For example, the certainty of a phone number regex “(d{3}) d{3}-d{4}” could be adjusted upwards if the area code is known to be the local area code of a company office using the hotword regex “(xxx)”, where “xxx” is the area code in question.

Type

Proximity

likelihood_adjustment

Likelihood adjustment to apply to all matching findings.

Type

LikelihoodAdjustment

class LikelihoodAdjustment(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message for specifying an adjustment to the likelihood of a finding as part of a detection rule.

fixed_likelihood

Set the likelihood of a finding to a fixed value.

Type

Likelihood

relative_likelihood

Increase or decrease the likelihood by the specified number of levels. For example, if a finding would be POSSIBLE without the detection rule and relative_likelihood is 1, then it is upgraded to LIKELY, while a value of -1 would downgrade it to UNLIKELY. Likelihood may never drop below VERY_UNLIKELY or exceed VERY_LIKELY, so applying an adjustment of 1 followed by an adjustment of -1 when base likelihood is VERY_LIKELY will result in a final likelihood of LIKELY.

Type

int

class Proximity(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message for specifying a window around a finding to apply a detection rule.

window_before

Number of characters before the finding to consider.

Type

int

window_after

Number of characters after the finding to consider.

Type

int

class Dictionary(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Custom information type based on a dictionary of words or phrases. This can be used to match sensitive information specific to the data, such as a list of employee IDs or job titles.

Dictionary words are case-insensitive and all characters other than letters and digits in the unicode Basic Multilingual Plane will be replaced with whitespace when scanning for matches, so the dictionary phrase “Sam Johnson” will match all three phrases “sam johnson”, “Sam, Johnson”, and “Sam (Johnson)”. Additionally, the characters surrounding any match must be of a different type than the adjacent characters within the word, so letters must be next to non-letters and digits next to non-digits. For example, the dictionary word “jen” will match the first three letters of the text “jen123” but will return no matches for “jennifer”.

Dictionary words containing a large number of characters that are not letters or digits may result in unexpected findings because such characters are treated as whitespace. The limits page contains details about the size limits of dictionaries. For dictionaries that do not fit within these constraints, consider using LargeCustomDictionaryConfig in the StoredInfoType API.

word_list

List of words or phrases to search for.

Type

WordList

cloud_storage_path

Newline-delimited file of words in Cloud Storage. Only a single file is accepted.

Type

CloudStoragePath

class WordList(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message defining a list of words or phrases to search for in the data.

words

Words or phrases defining the dictionary. The dictionary must contain at least one phrase and every phrase must contain at least 2 characters that are letters or digits. [required]

Type

Sequence[str]

class Regex(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message defining a custom regular expression.

pattern

Pattern defining the regular expression. Its syntax (https://github.com/google/re2/wiki/Syntax) can be found under the google/re2 repository on GitHub.

Type

str

group_indexes

The index of the submatch to extract as findings. When not specified, the entire match is returned. No more than 3 may be included.

Type

Sequence[int]

class SurrogateType(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message for detecting output from deidentification transformations such as `CryptoReplaceFfxFpeConfig <https://cloud.google.com/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig>`__. These types of transformations are those that perform pseudonymization, thereby producing a “surrogate” as output. This should be used in conjunction with a field on the transformation such as surrogate_info_type. This CustomInfoType does not support the use of detection_rules.

class google.cloud.dlp_v2.types.DatastoreKey(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Record key for a finding in Cloud Datastore.

entity_key

Datastore entity key.

Type

Key

class google.cloud.dlp_v2.types.DatastoreOptions(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Options defining a data set within Google Cloud Datastore.

partition_id

A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty.

Type

PartitionId

kind

The kind to process.

Type

KindExpression

class google.cloud.dlp_v2.types.DateShiftConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Shifts dates by random number of days, with option to be consistent for the same context. See https://cloud.google.com/dlp/docs/concepts-date-shifting to learn more.

upper_bound_days

Required. Range of shift in days. Actual shift will be selected at random within this range (inclusive ends). Negative means shift to earlier in time. Must not be more than 365250 days (1000 years) each direction. For example, 3 means shift date to at most 3 days into the future.

Type

int

lower_bound_days

Required. For example, -5 means shift date to at most 5 days back in the past.

Type

int

context

Points to the field that contains the context, for example, an entity id. If set, must also set cryptoKey. If set, shift will be consistent for the given context.

Type

FieldId

crypto_key

Causes the shift to be computed based on this key and the context. This results in the same shift for the same context and crypto_key. If set, must also set context. Can only be applied to table items.

Type

CryptoKey

class google.cloud.dlp_v2.types.DateTime(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message for a date time object. e.g. 2018-01-01, 5th August.

date

One or more of the following must be set. Must be a valid date or time value.

Type

Date

day_of_week

Day of week

Type

DayOfWeek

time

Time of day

Type

TimeOfDay

time_zone

Time zone

Type

TimeZone

class TimeZone(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Time zone of the date time object.

offset_minutes

Set only if the offset can be determined. Positive for time ahead of UTC. E.g. For “UTC-9”, this value is -540.

Type

int

class google.cloud.dlp_v2.types.DeidentifyConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The configuration that controls how the data will change.

info_type_transformations

Treat the dataset as free-form text and apply the same free text transformation everywhere.

Type

InfoTypeTransformations

record_transformations

Treat the dataset as structured. Transformations can be applied to specific locations within structured datasets, such as transforming a column within a table.

Type

RecordTransformations

transformation_error_handling

Mode for handling transformation errors. If left unspecified, the default mode is TransformationErrorHandling.ThrowError.

Type

TransformationErrorHandling

class google.cloud.dlp_v2.types.DeidentifyContentRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request to de-identify a list of items.

parent

Parent resource name.

The format of this value varies depending on whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

deidentify_config

Configuration for the de-identification of the content item. Items specified here will override the template referenced by the deidentify_template_name argument.

Type

DeidentifyConfig

inspect_config

Configuration for the inspector. Items specified here will override the template referenced by the inspect_template_name argument.

Type

InspectConfig

item

The item to de-identify. Will be treated as text.

Type

ContentItem

inspect_template_name

Template to use. Any configuration directly specified in inspect_config will override those set in the template. Singular fields that are set in this request will replace their corresponding fields in the template. Repeated fields are appended. Singular sub-messages and groups are recursively merged.

Type

str

deidentify_template_name

Template to use. Any configuration directly specified in deidentify_config will override those set in the template. Singular fields that are set in this request will replace their corresponding fields in the template. Repeated fields are appended. Singular sub-messages and groups are recursively merged.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.DeidentifyContentResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Results of de-identifying a ContentItem.

item

The de-identified item.

Type

ContentItem

overview

An overview of the changes that were made on the item.

Type

TransformationOverview

class google.cloud.dlp_v2.types.DeidentifyTemplate(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

DeidentifyTemplates contains instructions on how to de- dentify content. See https://cloud.google.com/dlp/docs/concepts- templates to learn more.

name

Output only. The template name.

The template will have one of the following formats: projects/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID OR organizations/ORGANIZATION_ID/deidentifyTemplates/TEMPLATE_ID

Type

str

display_name

Display name (max 256 chars).

Type

str

description

Short description (max 256 chars).

Type

str

create_time

Output only. The creation timestamp of an inspectTemplate.

Type

Timestamp

update_time

Output only. The last update timestamp of an inspectTemplate.

Type

Timestamp

deidentify_config

///////////// // The core content of the template // ///////////////

Type

DeidentifyConfig

class google.cloud.dlp_v2.types.DeleteDeidentifyTemplateRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for DeleteDeidentifyTemplate.

name

Required. Resource name of the organization and deidentify template to be deleted, for example organizations/433245324/deidentifyTemplates/432452342 or projects/project-id/deidentifyTemplates/432452342.

Type

str

class google.cloud.dlp_v2.types.DeleteDlpJobRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The request message for deleting a DLP job.

name

Required. The name of the DlpJob resource to be deleted.

Type

str

class google.cloud.dlp_v2.types.DeleteInspectTemplateRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for DeleteInspectTemplate.

name

Required. Resource name of the organization and inspectTemplate to be deleted, for example organizations/433245324/inspectTemplates/432452342 or projects/project-id/inspectTemplates/432452342.

Type

str

class google.cloud.dlp_v2.types.DeleteJobTriggerRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for DeleteJobTrigger.

name

Required. Resource name of the project and the triggeredJob, for example projects/dlp-test-project/jobTriggers/53234423.

Type

str

class google.cloud.dlp_v2.types.DeleteStoredInfoTypeRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for DeleteStoredInfoType.

name

Required. Resource name of the organization and storedInfoType to be deleted, for example organizations/433245324/storedInfoTypes/432452342 or projects/project-id/storedInfoTypes/432452342.

Type

str

class google.cloud.dlp_v2.types.DlpJob(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Combines all of the information about a DLP job.

name

The server-assigned name.

Type

str

type_

The type of job.

Type

DlpJobType

state

State of a job.

Type

JobState

risk_details

Results from analyzing risk of a data source.

Type

AnalyzeDataSourceRiskDetails

inspect_details

Results from inspecting a data source.

Type

InspectDataSourceDetails

create_time

Time when the job was created.

Type

Timestamp

start_time

Time when the job started.

Type

Timestamp

end_time

Time when the job finished.

Type

Timestamp

job_trigger_name

If created by a job trigger, the resource name of the trigger that instantiated the job.

Type

str

errors

A stream of errors encountered running the job.

Type

Sequence[Error]

class JobState(value)[source]

Bases: proto.enums.Enum

Possible states of a job. New items may be added.

class google.cloud.dlp_v2.types.DlpJobType(value)[source]

Bases: proto.enums.Enum

An enum to represent the various types of DLP jobs.

class google.cloud.dlp_v2.types.DocumentLocation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Location of a finding within a document.

file_offset

Offset of the line, from the beginning of the file, where the finding is located.

Type

int

class google.cloud.dlp_v2.types.EntityId(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

An entity in a dataset is a field or set of fields that correspond to a single person. For example, in medical records the EntityId might be a patient identifier, or for financial records it might be an account identifier. This message is used when generalizations or analysis must take into account that multiple rows correspond to the same entity.

field

Composite key indicating which field contains the entity identifier.

Type

FieldId

class google.cloud.dlp_v2.types.Error(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Details information about an error encountered during job execution or the results of an unsuccessful activation of the JobTrigger.

details

Detailed error codes and messages.

Type

Status

timestamps

The times the error occurred.

Type

Sequence[Timestamp]

class google.cloud.dlp_v2.types.ExcludeInfoTypes(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

List of exclude infoTypes.

info_types

InfoType list in ExclusionRule rule drops a finding when it overlaps or contained within with a finding of an infoType from this list. For example, for InspectionRuleSet.info_types containing “PHONE_NUMBER”andexclusion_rulecontainingexclude_info_types.info_types` with “EMAIL_ADDRESS” the phone number findings are dropped if they overlap with EMAIL_ADDRESS finding. That leads to “555-222-2222@example.org” to generate only a single finding, namely email address.

Type

Sequence[InfoType]

class google.cloud.dlp_v2.types.ExclusionRule(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The rule that specifies conditions when findings of infoTypes specified in InspectionRuleSet are removed from results.

dictionary

Dictionary which defines the rule.

Type

Dictionary

regex

Regular expression which defines the rule.

Type

Regex

exclude_info_types

Set of infoTypes for which findings would affect this rule.

Type

ExcludeInfoTypes

matching_type

How the rule is applied, see MatchingType documentation for details.

Type

MatchingType

class google.cloud.dlp_v2.types.FieldId(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

General identifier of a data field in a storage service.

name

Name describing the field.

Type

str

class google.cloud.dlp_v2.types.FieldTransformation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The transformation to apply to the field.

fields

Required. Input field(s) to apply the transformation to.

Type

Sequence[FieldId]

condition

Only apply the transformation if the condition evaluates to true for the given RecordCondition. The conditions are allowed to reference fields that are not used in the actual transformation.

Example Use Cases:

  • Apply a different bucket transformation to an age column if the zip code column for the same record is within a specific range.

  • Redact a field if the date of birth field is greater than 85.

Type

RecordCondition

primitive_transformation

Apply the transformation to the entire field.

Type

PrimitiveTransformation

info_type_transformations

Treat the contents of the field as free text, and selectively transform content that matches an InfoType.

Type

InfoTypeTransformations

class google.cloud.dlp_v2.types.FileType(value)[source]

Bases: proto.enums.Enum

Definitions of file type groups to scan. New types will be added to this list.

class google.cloud.dlp_v2.types.Finding(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Represents a piece of potentially sensitive content.

name

Resource name in format projects/{project}/locations/{location}/findings/{finding} Populated only when viewing persisted findings.

Type

str

quote

The content that was found. Even if the content is not textual, it may be converted to a textual representation here. Provided if include_quote is true and the finding is less than or equal to 4096 bytes long. If the finding exceeds 4096 bytes in length, the quote may be omitted.

Type

str

info_type

The type of content that might have been found. Provided if excluded_types is false.

Type

InfoType

likelihood

Confidence of how likely it is that the info_type is correct.

Type

Likelihood

location

Where the content was found.

Type

Location

create_time

Timestamp when finding was detected.

Type

Timestamp

quote_info

Contains data parsed from quotes. Only populated if include_quote was set to true and a supported infoType was requested. Currently supported infoTypes: DATE, DATE_OF_BIRTH and TIME.

Type

QuoteInfo

resource_name

The job that stored the finding.

Type

str

trigger_name

Job trigger name, if applicable, for this finding.

Type

str

labels

The labels associated with this Finding.

Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])?.

Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?.

No more than 10 labels can be associated with a given finding.

Examples:

  • "environment" : "production"

  • "pipeline" : "etl"

Type

Sequence[LabelsEntry]

job_create_time

Time the job started that produced this finding.

Type

Timestamp

job_name

The job that stored the finding.

Type

str

class LabelsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Bases: proto.message.Message

class google.cloud.dlp_v2.types.FinishDlpJobRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The request message for finishing a DLP hybrid job.

name

Required. The name of the DlpJob resource to be cancelled.

Type

str

class google.cloud.dlp_v2.types.FixedSizeBucketingConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Buckets values based on fixed size ranges. The Bucketing transformation can provide all of this functionality, but requires more configuration. This message is provided as a convenience to the user for simple bucketing strategies.

The transformed value will be a hyphenated string of {lower_bound}-{upper_bound}, i.e if lower_bound = 10 and upper_bound = 20 all values that are within this bucket will be replaced with “10-20”.

This can be used on data of type: double, long.

If the bound Value type differs from the type of data being transformed, we will first attempt converting the type of the data to be transformed to match the type of the bound before comparing.

See https://cloud.google.com/dlp/docs/concepts-bucketing to learn more.

lower_bound

Required. Lower bound value of buckets. All values less than lower_bound are grouped together into a single bucket; for example if lower_bound = 10, then all values less than 10 are replaced with the value “-10”.

Type

Value

upper_bound

Required. Upper bound value of buckets. All values greater than upper_bound are grouped together into a single bucket; for example if upper_bound = 89, then all values greater than 89 are replaced with the value “89+”.

Type

Value

bucket_size

Required. Size of each bucket (except for minimum and maximum buckets). So if lower_bound = 10, upper_bound = 89, and bucket_size = 10, then the following buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, 50-60, 60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works.

Type

float

class google.cloud.dlp_v2.types.GetDeidentifyTemplateRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for GetDeidentifyTemplate.

name

Required. Resource name of the organization and deidentify template to be read, for example organizations/433245324/deidentifyTemplates/432452342 or projects/project-id/deidentifyTemplates/432452342.

Type

str

class google.cloud.dlp_v2.types.GetDlpJobRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The request message for [DlpJobs.GetDlpJob][].

name

Required. The name of the DlpJob resource.

Type

str

class google.cloud.dlp_v2.types.GetInspectTemplateRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for GetInspectTemplate.

name

Required. Resource name of the organization and inspectTemplate to be read, for example organizations/433245324/inspectTemplates/432452342 or projects/project-id/inspectTemplates/432452342.

Type

str

class google.cloud.dlp_v2.types.GetJobTriggerRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for GetJobTrigger.

name

Required. Resource name of the project and the triggeredJob, for example projects/dlp-test-project/jobTriggers/53234423.

Type

str

class google.cloud.dlp_v2.types.GetStoredInfoTypeRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for GetStoredInfoType.

name

Required. Resource name of the organization and storedInfoType to be read, for example organizations/433245324/storedInfoTypes/432452342 or projects/project-id/storedInfoTypes/432452342.

Type

str

class google.cloud.dlp_v2.types.HybridContentItem(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

An individual hybrid item to inspect. Will be stored temporarily during processing.

item

The item to inspect.

Type

ContentItem

finding_details

Supplementary information that will be added to each finding.

Type

HybridFindingDetails

class google.cloud.dlp_v2.types.HybridFindingDetails(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Populate to associate additional data with each finding.

container_details

Details about the container where the content being inspected is from.

Type

Container

file_offset

Offset in bytes of the line, from the beginning of the file, where the finding is located. Populate if the item being scanned is only part of a bigger item, such as a shard of a file and you want to track the absolute position of the finding.

Type

int

row_offset

Offset of the row for tables. Populate if the row(s) being scanned are part of a bigger dataset and you want to keep track of their absolute position.

Type

int

table_options

If the container is a table, additional information to make findings meaningful such as the columns that are primary keys. If not known ahead of time, can also be set within each inspect hybrid call and the two will be merged. Note that identifying_fields will only be stored to BigQuery, and only if the BigQuery action has been included.

Type

TableOptions

labels

Labels to represent user provided metadata about the data being inspected. If configured by the job, some key values may be required. The labels associated with Finding’s produced by hybrid inspection.

Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])?.

Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?.

No more than 10 labels can be associated with a given finding.

Examples:

  • "environment" : "production"

  • "pipeline" : "etl"

Type

Sequence[LabelsEntry]

class LabelsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Bases: proto.message.Message

class google.cloud.dlp_v2.types.HybridInspectDlpJobRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request to search for potentially sensitive info in a custom location.

name

Required. Resource name of the job to execute a hybrid inspect on, for example projects/dlp-test-project/dlpJob/53234423.

Type

str

hybrid_item

The item to inspect.

Type

HybridContentItem

class google.cloud.dlp_v2.types.HybridInspectJobTriggerRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request to search for potentially sensitive info in a custom location.

name

Required. Resource name of the trigger to execute a hybrid inspect on, for example projects/dlp-test-project/jobTriggers/53234423.

Type

str

hybrid_item

The item to inspect.

Type

HybridContentItem

class google.cloud.dlp_v2.types.HybridInspectResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Quota exceeded errors will be thrown once quota has been met.

class google.cloud.dlp_v2.types.HybridInspectStatistics(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Statistics related to processing hybrid inspect requests.

processed_count

The number of hybrid inspection requests processed within this job.

Type

int

aborted_count

The number of hybrid inspection requests aborted because the job ran out of quota or was ended before they could be processed.

Type

int

pending_count

The number of hybrid requests currently being processed. Only populated when called via method getDlpJob. A burst of traffic may cause hybrid inspect requests to be enqueued. Processing will take place as quickly as possible, but resource limitations may impact how long a request is enqueued for.

Type

int

class google.cloud.dlp_v2.types.HybridOptions(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Configuration to control jobs where the content being inspected is outside of Google Cloud Platform.

description

A short description of where the data is coming from. Will be stored once in the job. 256 max length.

Type

str

required_finding_label_keys

These are labels that each inspection request must include within their ‘finding_labels’ map. Request may contain others, but any missing one of these will be rejected.

Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])?.

No more than 10 keys can be required.

Type

Sequence[str]

labels

To organize findings, these labels will be added to each finding.

Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])?.

Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?.

No more than 10 labels can be associated with a given finding.

Examples:

  • "environment" : "production"

  • "pipeline" : "etl"

Type

Sequence[LabelsEntry]

table_options

If the container is a table, additional information to make findings meaningful such as the columns that are primary keys.

Type

TableOptions

class LabelsEntry(mapping=None, *, ignore_unknown_fields=False, **kwargs)

Bases: proto.message.Message

class google.cloud.dlp_v2.types.ImageLocation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Location of the finding within an image.

bounding_boxes

Bounding boxes locating the pixels within the image containing the finding.

Type

Sequence[BoundingBox]

class google.cloud.dlp_v2.types.InfoType(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Type of information detected by the API.

name

Name of the information type. Either a name of your choosing when creating a CustomInfoType, or one of the names listed at https://cloud.google.com/dlp/docs/infotypes-reference when specifying a built-in type. When sending Cloud DLP results to Data Catalog, infoType names should conform to the pattern [A-Za-z0-9$-_]{1,64}.

Type

str

class google.cloud.dlp_v2.types.InfoTypeDescription(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

InfoType description.

name

Internal name of the infoType.

Type

str

display_name

Human readable form of the infoType name.

Type

str

supported_by

Which parts of the API supports this InfoType.

Type

Sequence[InfoTypeSupportedBy]

description

Description of the infotype. Translated when language is provided in the request.

Type

str

class google.cloud.dlp_v2.types.InfoTypeStats(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Statistics regarding a specific InfoType.

info_type

The type of finding this stat is for.

Type

InfoType

count

Number of findings for this infoType.

Type

int

class google.cloud.dlp_v2.types.InfoTypeSupportedBy(value)[source]

Bases: proto.enums.Enum

Parts of the APIs which use certain infoTypes.

class google.cloud.dlp_v2.types.InfoTypeTransformations(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A type of transformation that will scan unstructured text and apply various PrimitiveTransformations to each finding, where the transformation is applied to only values that were identified as a specific info_type.

transformations

Required. Transformation for each infoType. Cannot specify more than one for a given infoType.

Type

Sequence[InfoTypeTransformation]

class InfoTypeTransformation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A transformation to apply to text that is identified as a specific info_type.

info_types

InfoTypes to apply the transformation to. An empty list will cause this transformation to apply to all findings that correspond to infoTypes that were requested in InspectConfig.

Type

Sequence[InfoType]

primitive_transformation

Required. Primitive transformation to apply to the infoType.

Type

PrimitiveTransformation

class google.cloud.dlp_v2.types.InspectConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Configuration description of the scanning process. When used with redactContent only info_types and min_likelihood are currently used.

info_types

Restricts what info_types to look for. The values must correspond to InfoType values returned by ListInfoTypes or listed at https://cloud.google.com/dlp/docs/infotypes-reference.

When no InfoTypes or CustomInfoTypes are specified in a request, the system may automatically choose what detectors to run. By default this may be all types, but may change over time as detectors are updated.

If you need precise control and predictability as to what detectors are run you should specify specific InfoTypes listed in the reference, otherwise a default list will be used, which may change over time.

Type

Sequence[InfoType]

min_likelihood

Only returns findings equal or above this threshold. The default is POSSIBLE. See https://cloud.google.com/dlp/docs/likelihood to learn more.

Type

Likelihood

limits

Configuration to control the number of findings returned.

Type

FindingLimits

include_quote

When true, a contextual quote from the data that triggered a finding is included in the response; see Finding.quote.

Type

bool

exclude_info_types

When true, excludes type information of the findings.

Type

bool

custom_info_types

CustomInfoTypes provided by the user. See https://cloud.google.com/dlp/docs/creating- custom-infotypes to learn more.

Type

Sequence[CustomInfoType]

content_options

List of options defining data content to scan. If empty, text, images, and other content will be included.

Type

Sequence[ContentOption]

rule_set

Set of rules to apply to the findings for this InspectConfig. Exclusion rules, contained in the set are executed in the end, other rules are executed in the order they are specified for each info type.

Type

Sequence[InspectionRuleSet]

class FindingLimits(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Configuration to control the number of findings returned.

max_findings_per_item

Max number of findings that will be returned for each item scanned. When set within InspectJobConfig, the maximum returned is 2000 regardless if this is set higher. When set within InspectContentRequest, this field is ignored.

Type

int

max_findings_per_request

Max number of findings that will be returned per request/job. When set within InspectContentRequest, the maximum returned is 2000 regardless if this is set higher.

Type

int

max_findings_per_info_type

Configuration of findings limit given for specified infoTypes.

Type

Sequence[InfoTypeLimit]

class InfoTypeLimit(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Max findings configuration per infoType, per content item or long running DlpJob.

info_type

Type of information the findings limit applies to. Only one limit per info_type should be provided. If InfoTypeLimit does not have an info_type, the DLP API applies the limit against all info_types that are found but not specified in another InfoTypeLimit.

Type

InfoType

max_findings

Max findings limit for the given infoType.

Type

int

class google.cloud.dlp_v2.types.InspectContentRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request to search for potentially sensitive info in a ContentItem.

parent

Parent resource name.

The format of this value varies depending on whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

inspect_config

Configuration for the inspector. What specified here will override the template referenced by the inspect_template_name argument.

Type

InspectConfig

item

The item to inspect.

Type

ContentItem

inspect_template_name

Template to use. Any configuration directly specified in inspect_config will override those set in the template. Singular fields that are set in this request will replace their corresponding fields in the template. Repeated fields are appended. Singular sub-messages and groups are recursively merged.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.InspectContentResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Results of inspecting an item.

result

The findings.

Type

InspectResult

class google.cloud.dlp_v2.types.InspectDataSourceDetails(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The results of an inspect DataSource job.

requested_options

The configuration used for this job.

Type

RequestedOptions

result

A summary of the outcome of this inspect job.

Type

Result

class RequestedOptions(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Snapshot of the inspection configuration.

snapshot_inspect_template

If run with an InspectTemplate, a snapshot of its state at the time of this run.

Type

InspectTemplate

job_config

Inspect config.

Type

InspectJobConfig

class Result(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

All result fields mentioned below are updated while the job is processing.

processed_bytes

Total size in bytes that were processed.

Type

int

total_estimated_bytes

Estimate of the number of bytes to process.

Type

int

info_type_stats

Statistics of how many instances of each info type were found during inspect job.

Type

Sequence[InfoTypeStats]

hybrid_stats

Statistics related to the processing of hybrid inspect. Early access feature is in a pre-release state and might change or have limited support. For more information, see https://cloud.google.com/products#product- launch-stages.

Type

HybridInspectStatistics

class google.cloud.dlp_v2.types.InspectJobConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Controls what and how to inspect for findings.

storage_config

The data to scan.

Type

StorageConfig

inspect_config

How and what to scan for.

Type

InspectConfig

inspect_template_name

If provided, will be used as the default for all values in InspectConfig. inspect_config will be merged into the values persisted as part of the template.

Type

str

actions

Actions to execute at the completion of the job.

Type

Sequence[Action]

class google.cloud.dlp_v2.types.InspectResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

All the findings for a single scanned item.

findings

List of findings for an item.

Type

Sequence[Finding]

findings_truncated

If true, then this item might have more findings than were returned, and the findings returned are an arbitrary subset of all findings. The findings list might be truncated because the input items were too large, or because the server reached the maximum amount of resources allowed for a single API call. For best results, divide the input into smaller batches.

Type

bool

class google.cloud.dlp_v2.types.InspectTemplate(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The inspectTemplate contains a configuration (set of types of sensitive data to be detected) to be used anywhere you otherwise would normally specify InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates to learn more.

name

Output only. The template name.

The template will have one of the following formats: projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID OR organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID;

Type

str

display_name

Display name (max 256 chars).

Type

str

description

Short description (max 256 chars).

Type

str

create_time

Output only. The creation timestamp of an inspectTemplate.

Type

Timestamp

update_time

Output only. The last update timestamp of an inspectTemplate.

Type

Timestamp

inspect_config

The core content of the template. Configuration of the scanning process.

Type

InspectConfig

class google.cloud.dlp_v2.types.InspectionRule(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A single inspection rule to be applied to infoTypes, specified in InspectionRuleSet.

hotword_rule

Hotword-based detection rule.

Type

HotwordRule

exclusion_rule

Exclusion rule.

Type

ExclusionRule

class google.cloud.dlp_v2.types.InspectionRuleSet(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Rule set for modifying a set of infoTypes to alter behavior under certain circumstances, depending on the specific details of the rules within the set.

info_types

List of infoTypes this rule set is applied to.

Type

Sequence[InfoType]

rules

Set of rules to be applied to infoTypes. The rules are applied in order.

Type

Sequence[InspectionRule]

class google.cloud.dlp_v2.types.JobTrigger(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Contains a configuration to make dlp api calls on a repeating basis. See https://cloud.google.com/dlp/docs/concepts-job- triggers to learn more.

name

Unique resource name for the triggeredJob, assigned by the service when the triggeredJob is created, for example projects/dlp-test-project/jobTriggers/53234423.

Type

str

display_name

Display name (max 100 chars)

Type

str

description

User provided description (max 256 chars)

Type

str

inspect_job

For inspect jobs, a snapshot of the configuration.

Type

InspectJobConfig

triggers

A list of triggers which will be OR’ed together. Only one in the list needs to trigger for a job to be started. The list may contain only a single Schedule trigger and must have at least one object.

Type

Sequence[Trigger]

errors

Output only. A stream of errors encountered when the trigger was activated. Repeated errors may result in the JobTrigger automatically being paused. Will return the last 100 errors. Whenever the JobTrigger is modified this list will be cleared.

Type

Sequence[Error]

create_time

Output only. The creation timestamp of a triggeredJob.

Type

Timestamp

update_time

Output only. The last update timestamp of a triggeredJob.

Type

Timestamp

last_run_time

Output only. The timestamp of the last time this trigger executed.

Type

Timestamp

status

Required. A status for this trigger.

Type

Status

class Status(value)[source]

Bases: proto.enums.Enum

Whether the trigger is currently active. If PAUSED or CANCELLED, no jobs will be created with this configuration. The service may automatically pause triggers experiencing frequent errors. To restart a job, set the status to HEALTHY after correcting user errors.

class Trigger(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

What event needs to occur for a new job to be started.

schedule

Create a job on a repeating basis based on the elapse of time.

Type

Schedule

manual

For use with hybrid jobs. Jobs must be manually created and finished. Early access feature is in a pre-release state and might change or have limited support. For more information, see https://cloud.google.com/products#product- launch-stages.

Type

Manual

class google.cloud.dlp_v2.types.Key(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A unique identifier for a Datastore entity. If a key’s partition ID or any of its path kinds or names are reserved/read-only, the key is reserved/read-only. A reserved/read-only key is forbidden in certain documented contexts.

partition_id

Entities are partitioned into subsets, currently identified by a project ID and namespace ID. Queries are scoped to a single partition.

Type

PartitionId

path

The entity path. An entity path consists of one or more elements composed of a kind and a string or numerical identifier, which identify entities. The first element identifies a root entity, the second element identifies a child of the root entity, the third element identifies a child of the second entity, and so forth. The entities identified by all prefixes of the path are called the element’s ancestors.

A path can never be empty, and a path can have at most 100 elements.

Type

Sequence[PathElement]

class PathElement(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A (kind, ID/name) pair used to construct a key path. If either name or ID is set, the element is complete. If neither is set, the element is incomplete.

kind

The kind of the entity. A kind matching regex __.*__ is reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 encoded. Cannot be "".

Type

str

id

The auto-allocated ID of the entity. Never equal to zero. Values less than zero are discouraged and may not be supported in the future.

Type

int

name

The name of the entity. A name matching regex __.*__ is reserved/read-only. A name must not be more than 1500 bytes when UTF-8 encoded. Cannot be "".

Type

str

class google.cloud.dlp_v2.types.KindExpression(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A representation of a Datastore kind.

name

The name of the kind.

Type

str

class google.cloud.dlp_v2.types.KmsWrappedCryptoKey(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Include to use an existing data crypto key wrapped by KMS. The wrapped key must be a 128/192/256 bit key. Authorization requires the following IAM permissions when sending a request to perform a crypto transformation using a kms-wrapped crypto key: dlp.kms.encrypt

wrapped_key

Required. The wrapped data crypto key.

Type

bytes

crypto_key_name

Required. The resource name of the KMS CryptoKey to use for unwrapping.

Type

str

class google.cloud.dlp_v2.types.LargeCustomDictionaryConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Configuration for a custom dictionary created from a data source of any size up to the maximum size defined in the limits page. The artifacts of dictionary creation are stored in the specified Google Cloud Storage location. Consider using CustomInfoType.Dictionary for smaller dictionaries that satisfy the size requirements.

output_path

Location to store dictionary artifacts in Google Cloud Storage. These files will only be accessible by project owners and the DLP API. If any of these artifacts are modified, the dictionary is considered invalid and can no longer be used.

Type

CloudStoragePath

cloud_storage_file_set

Set of files containing newline-delimited lists of dictionary phrases.

Type

CloudStorageFileSet

big_query_field

Field in a BigQuery table where each cell represents a dictionary phrase.

Type

BigQueryField

class google.cloud.dlp_v2.types.LargeCustomDictionaryStats(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Summary statistics of a custom dictionary.

approx_num_phrases

Approximate number of distinct phrases in the dictionary.

Type

int

class google.cloud.dlp_v2.types.Likelihood(value)[source]

Bases: proto.enums.Enum

Categorization of results based on how likely they are to represent a match, based on the number of elements they contain which imply a match.

class google.cloud.dlp_v2.types.ListDeidentifyTemplatesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for ListDeidentifyTemplates.

parent

Required. Parent resource name.

The format of this value varies depending on the scope of the request (project or organization) and whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

  • Organizations scope, location specified: organizations/ORG_ID/locations/LOCATION_ID

  • Organizations scope, no location specified (defaults to global): organizations/ORG_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

page_token

Page token to continue retrieval. Comes from previous call to ListDeidentifyTemplates.

Type

str

page_size

Size of the page, can be limited by server. If zero server returns a page of max size 100.

Type

int

order_by

Comma separated list of fields to order by, followed by asc or desc postfix. This list is case-insensitive, default sorting order is ascending, redundant space characters are insignificant.

Example: name asc,update_time, create_time desc

Supported fields are:

  • create_time: corresponds to time the template was created.

  • update_time: corresponds to time the template was last updated.

  • name: corresponds to template’s name.

  • display_name: corresponds to template’s display name.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.ListDeidentifyTemplatesResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Response message for ListDeidentifyTemplates.

deidentify_templates

List of deidentify templates, up to page_size in ListDeidentifyTemplatesRequest.

Type

Sequence[DeidentifyTemplate]

next_page_token

If the next page is available then the next page token to be used in following ListDeidentifyTemplates request.

Type

str

class google.cloud.dlp_v2.types.ListDlpJobsRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The request message for listing DLP jobs.

parent

Required. Parent resource name.

The format of this value varies depending on whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

filter

Allows filtering.

Supported syntax:

  • Filter expressions are made up of one or more restrictions.

  • Restrictions can be combined by AND or OR logical operators. A sequence of restrictions implicitly uses AND.

  • A restriction has the form of {field} {operator} {value}.

  • Supported fields/values for inspect jobs:

    • state - PENDING|RUNNING|CANCELED|FINISHED|FAILED

    • inspected_storage - DATASTORE|CLOUD_STORAGE|BIGQUERY

    • trigger_name - The resource name of the trigger that created job.

    • ‘end_time` - Corresponds to time the job finished.

    • ‘start_time` - Corresponds to time the job finished.

  • Supported fields for risk analysis jobs:

    • state - RUNNING|CANCELED|FINISHED|FAILED

    • ‘end_time` - Corresponds to time the job finished.

    • ‘start_time` - Corresponds to time the job finished.

  • The operator must be = or !=.

Examples:

  • inspected_storage = cloud_storage AND state = done

  • inspected_storage = cloud_storage OR inspected_storage = bigquery

  • inspected_storage = cloud_storage AND (state = done OR state = canceled)

  • end_time > “2017-12-12T00:00:00+00:00”

The length of this field should be no more than 500 characters.

Type

str

page_size

The standard list page size.

Type

int

page_token

The standard list page token.

Type

str

type_

The type of job. Defaults to DlpJobType.INSPECT

Type

DlpJobType

order_by

Comma separated list of fields to order by, followed by asc or desc postfix. This list is case-insensitive, default sorting order is ascending, redundant space characters are insignificant.

Example: name asc, end_time asc, create_time desc

Supported fields are:

  • create_time: corresponds to time the job was created.

  • end_time: corresponds to time the job ended.

  • name: corresponds to job’s name.

  • state: corresponds to state

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.ListDlpJobsResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The response message for listing DLP jobs.

jobs

A list of DlpJobs that matches the specified filter in the request.

Type

Sequence[DlpJob]

next_page_token

The standard List next-page token.

Type

str

class google.cloud.dlp_v2.types.ListInfoTypesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request for the list of infoTypes.

parent

The parent resource name.

The format of this value is as follows:

locations/<var>LOCATION_ID</var>
Type

str

language_code

BCP-47 language code for localized infoType friendly names. If omitted, or if localized strings are not available, en-US strings will be returned.

Type

str

filter

filter to only return infoTypes supported by certain parts of the API. Defaults to supported_by=INSPECT.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.ListInfoTypesResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Response to the ListInfoTypes request.

info_types

Set of sensitive infoTypes.

Type

Sequence[InfoTypeDescription]

class google.cloud.dlp_v2.types.ListInspectTemplatesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for ListInspectTemplates.

parent

Required. Parent resource name.

The format of this value varies depending on the scope of the request (project or organization) and whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

  • Organizations scope, location specified: organizations/ORG_ID/locations/LOCATION_ID

  • Organizations scope, no location specified (defaults to global): organizations/ORG_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

page_token

Page token to continue retrieval. Comes from previous call to ListInspectTemplates.

Type

str

page_size

Size of the page, can be limited by server. If zero server returns a page of max size 100.

Type

int

order_by

Comma separated list of fields to order by, followed by asc or desc postfix. This list is case-insensitive, default sorting order is ascending, redundant space characters are insignificant.

Example: name asc,update_time, create_time desc

Supported fields are:

  • create_time: corresponds to time the template was created.

  • update_time: corresponds to time the template was last updated.

  • name: corresponds to template’s name.

  • display_name: corresponds to template’s display name.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.ListInspectTemplatesResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Response message for ListInspectTemplates.

inspect_templates

List of inspectTemplates, up to page_size in ListInspectTemplatesRequest.

Type

Sequence[InspectTemplate]

next_page_token

If the next page is available then the next page token to be used in following ListInspectTemplates request.

Type

str

class google.cloud.dlp_v2.types.ListJobTriggersRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for ListJobTriggers.

parent

Required. Parent resource name.

The format of this value varies depending on whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

page_token

Page token to continue retrieval. Comes from previous call to ListJobTriggers. order_by field must not change for subsequent calls.

Type

str

page_size

Size of the page, can be limited by a server.

Type

int

order_by

Comma separated list of triggeredJob fields to order by, followed by asc or desc postfix. This list is case-insensitive, default sorting order is ascending, redundant space characters are insignificant.

Example: name asc,update_time, create_time desc

Supported fields are:

  • create_time: corresponds to time the JobTrigger was created.

  • update_time: corresponds to time the JobTrigger was last updated.

  • last_run_time: corresponds to the last time the JobTrigger ran.

  • name: corresponds to JobTrigger’s name.

  • display_name: corresponds to JobTrigger’s display name.

  • status: corresponds to JobTrigger’s status.

Type

str

filter

Allows filtering.

Supported syntax:

  • Filter expressions are made up of one or more restrictions.

  • Restrictions can be combined by AND or OR logical operators. A sequence of restrictions implicitly uses AND.

  • A restriction has the form of {field} {operator} {value}.

  • Supported fields/values for inspect jobs:

    • status - HEALTHY|PAUSED|CANCELLED

    • inspected_storage - DATASTORE|CLOUD_STORAGE|BIGQUERY

    • ‘last_run_time` - RFC 3339 formatted timestamp, surrounded by quotation marks. Nanoseconds are ignored.

    • ‘error_count’ - Number of errors that have occurred while running.

  • The operator must be = or != for status and inspected_storage.

Examples:

  • inspected_storage = cloud_storage AND status = HEALTHY

  • inspected_storage = cloud_storage OR inspected_storage = bigquery

  • inspected_storage = cloud_storage AND (state = PAUSED OR state = HEALTHY)

  • last_run_time > “2017-12-12T00:00:00+00:00”

The length of this field should be no more than 500 characters.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.ListJobTriggersResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Response message for ListJobTriggers.

job_triggers

List of triggeredJobs, up to page_size in ListJobTriggersRequest.

Type

Sequence[JobTrigger]

next_page_token

If the next page is available then the next page token to be used in following ListJobTriggers request.

Type

str

class google.cloud.dlp_v2.types.ListStoredInfoTypesRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for ListStoredInfoTypes.

parent

Required. Parent resource name.

The format of this value varies depending on the scope of the request (project or organization) and whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

  • Organizations scope, location specified: organizations/ORG_ID/locations/LOCATION_ID

  • Organizations scope, no location specified (defaults to global): organizations/ORG_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

page_token

Page token to continue retrieval. Comes from previous call to ListStoredInfoTypes.

Type

str

page_size

Size of the page, can be limited by server. If zero server returns a page of max size 100.

Type

int

order_by

Comma separated list of fields to order by, followed by asc or desc postfix. This list is case-insensitive, default sorting order is ascending, redundant space characters are insignificant.

Example: name asc, display_name, create_time desc

Supported fields are:

  • create_time: corresponds to time the most recent version of the resource was created.

  • state: corresponds to the state of the resource.

  • name: corresponds to resource name.

  • display_name: corresponds to info type’s display name.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.ListStoredInfoTypesResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Response message for ListStoredInfoTypes.

stored_info_types

List of storedInfoTypes, up to page_size in ListStoredInfoTypesRequest.

Type

Sequence[StoredInfoType]

next_page_token

If the next page is available then the next page token to be used in following ListStoredInfoTypes request.

Type

str

class google.cloud.dlp_v2.types.Location(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Specifies the location of the finding.

byte_range

Zero-based byte offsets delimiting the finding. These are relative to the finding’s containing element. Note that when the content is not textual, this references the UTF-8 encoded textual representation of the content. Omitted if content is an image.

Type

Range

codepoint_range

Unicode character offsets delimiting the finding. These are relative to the finding’s containing element. Provided when the content is text.

Type

Range

content_locations

List of nested objects pointing to the precise location of the finding within the file or record.

Type

Sequence[ContentLocation]

container

Information about the container where this finding occurred, if available.

Type

Container

class google.cloud.dlp_v2.types.Manual(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Job trigger option for hybrid jobs. Jobs must be manually created and finished.

class google.cloud.dlp_v2.types.MatchingType(value)[source]

Bases: proto.enums.Enum

Type of the match which can be applied to different ways of matching, like Dictionary, regular expression and intersecting with findings of another info type.

class google.cloud.dlp_v2.types.MetadataLocation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Metadata Location

type_

Type of metadata containing the finding.

Type

MetadataType

storage_label

Storage metadata.

Type

StorageMetadataLabel

class google.cloud.dlp_v2.types.MetadataType(value)[source]

Bases: proto.enums.Enum

Type of metadata containing the finding.

class google.cloud.dlp_v2.types.OutputStorageConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Cloud repository for storing output.

table

Store findings in an existing table or a new table in an existing dataset. If table_id is not set a new one will be generated for you with the following format: dlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used for generating the date details.

For Inspect, each column in an existing output table must have the same name, type, and mode of a field in the Finding object.

For Risk, an existing output table should be the output of a previous Risk analysis job run on the same source table, with the same privacy metric and quasi-identifiers. Risk jobs that analyze the same table but compute a different privacy metric, or use different sets of quasi-identifiers, cannot store their results in the same table.

Type

BigQueryTable

output_schema

Schema used for writing the findings for Inspect jobs. This field is only used for Inspect and must be unspecified for Risk jobs. Columns are derived from the Finding object. If appending to an existing table, any columns from the predefined schema that are missing will be added. No columns in the existing table will be deleted.

If unspecified, then all available columns will be used for a new table or an (existing) table with no schema, and no changes will be made to an existing table that has a schema. Only for use with external storage.

Type

OutputSchema

class OutputSchema(value)[source]

Bases: proto.enums.Enum

Predefined schemas for storing findings. Only for use with external storage.

class google.cloud.dlp_v2.types.PartitionId(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Datastore partition ID. A partition ID identifies a grouping of entities. The grouping is always by project and namespace, however the namespace ID may be empty. A partition ID contains several dimensions: project ID and namespace ID.

project_id

The ID of the project to which the entities belong.

Type

str

namespace_id

If not empty, the ID of the namespace to which the entities belong.

Type

str

class google.cloud.dlp_v2.types.PrimitiveTransformation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A rule for transforming a value.

replace_config

Replace

Type

ReplaceValueConfig

redact_config

Redact

Type

RedactConfig

character_mask_config

Mask

Type

CharacterMaskConfig

crypto_replace_ffx_fpe_config

Ffx-Fpe

Type

CryptoReplaceFfxFpeConfig

fixed_size_bucketing_config

Fixed size bucketing

Type

FixedSizeBucketingConfig

bucketing_config

Bucketing

Type

BucketingConfig

replace_with_info_type_config

Replace with infotype

Type

ReplaceWithInfoTypeConfig

time_part_config

Time extraction

Type

TimePartConfig

crypto_hash_config

Crypto

Type

CryptoHashConfig

date_shift_config

Date Shift

Type

DateShiftConfig

crypto_deterministic_config

Deterministic Crypto

Type

CryptoDeterministicConfig

class google.cloud.dlp_v2.types.PrivacyMetric(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Privacy metric to compute for reidentification risk analysis.

numerical_stats_config

Numerical stats

Type

NumericalStatsConfig

categorical_stats_config

Categorical stats

Type

CategoricalStatsConfig

k_anonymity_config

K-anonymity

Type

KAnonymityConfig

l_diversity_config

l-diversity

Type

LDiversityConfig

k_map_estimation_config

k-map

Type

KMapEstimationConfig

delta_presence_estimation_config

delta-presence

Type

DeltaPresenceEstimationConfig

class CategoricalStatsConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Compute numerical stats over an individual column, including number of distinct values and value count distribution.

field

Field to compute categorical stats on. All column types are supported except for arrays and structs. However, it may be more informative to use NumericalStats when the field type is supported, depending on the data.

Type

FieldId

class DeltaPresenceEstimationConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

δ-presence metric, used to estimate how likely it is for an attacker to figure out that one given individual appears in a de-identified dataset. Similarly to the k-map metric, we cannot compute δ-presence exactly without knowing the attack dataset, so we use a statistical model instead.

quasi_ids

Required. Fields considered to be quasi- dentifiers. No two fields can have the same tag.

Type

Sequence[QuasiId]

region_code

ISO 3166-1 alpha-2 region code to use in the statistical modeling. Set if no column is tagged with a region-specific InfoType (like US_ZIP_5) or a region code.

Type

str

auxiliary_tables

Several auxiliary tables can be used in the analysis. Each custom_tag used to tag a quasi-identifiers field must appear in exactly one field of one auxiliary table.

Type

Sequence[StatisticalTable]

class KAnonymityConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

k-anonymity metric, used for analysis of reidentification risk.

quasi_ids

Set of fields to compute k-anonymity over. When multiple fields are specified, they are considered a single composite key. Structs and repeated data types are not supported; however, nested fields are supported so long as they are not structs themselves or nested within a repeated field.

Type

Sequence[FieldId]

entity_id

Message indicating that multiple rows might be associated to a single individual. If the same entity_id is associated to multiple quasi-identifier tuples over distinct rows, we consider the entire collection of tuples as the composite quasi-identifier. This collection is a multiset: the order in which the different tuples appear in the dataset is ignored, but their frequency is taken into account.

Important note: a maximum of 1000 rows can be associated to a single entity ID. If more rows are associated with the same entity ID, some might be ignored.

Type

EntityId

class KMapEstimationConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Reidentifiability metric. This corresponds to a risk model similar to what is called “journalist risk” in the literature, except the attack dataset is statistically modeled instead of being perfectly known. This can be done using publicly available data (like the US Census), or using a custom statistical model (indicated as one or several BigQuery tables), or by extrapolating from the distribution of values in the input dataset.

quasi_ids

Required. Fields considered to be quasi- dentifiers. No two columns can have the same tag.

Type

Sequence[TaggedField]

region_code

ISO 3166-1 alpha-2 region code to use in the statistical modeling. Set if no column is tagged with a region-specific InfoType (like US_ZIP_5) or a region code.

Type

str

auxiliary_tables

Several auxiliary tables can be used in the analysis. Each custom_tag used to tag a quasi-identifiers column must appear in exactly one column of one auxiliary table.

Type

Sequence[AuxiliaryTable]

class AuxiliaryTable(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

An auxiliary table contains statistical information on the relative frequency of different quasi-identifiers values. It has one or several quasi-identifiers columns, and one column that indicates the relative frequency of each quasi-identifier tuple. If a tuple is present in the data but not in the auxiliary table, the corresponding relative frequency is assumed to be zero (and thus, the tuple is highly reidentifiable).

table

Required. Auxiliary table location.

Type

BigQueryTable

quasi_ids

Required. Quasi-identifier columns.

Type

Sequence[QuasiIdField]

relative_frequency

Required. The relative frequency column must contain a floating-point number between 0 and 1 (inclusive). Null values are assumed to be zero.

Type

FieldId

class QuasiIdField(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A quasi-identifier column has a custom_tag, used to know which column in the data corresponds to which column in the statistical model.

field

Identifies the column.

Type

FieldId

custom_tag

A auxiliary field.

Type

str

class TaggedField(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A column with a semantic tag attached.

field

Required. Identifies the column.

Type

FieldId

info_type

A column can be tagged with a InfoType to use the relevant public dataset as a statistical model of population, if available. We currently support US ZIP codes, region codes, ages and genders. To programmatically obtain the list of supported InfoTypes, use ListInfoTypes with the supported_by=RISK_ANALYSIS filter.

Type

InfoType

custom_tag

A column can be tagged with a custom tag. In this case, the user must indicate an auxiliary table that contains statistical information on the possible values of this column (below).

Type

str

inferred

If no semantic tag is indicated, we infer the statistical model from the distribution of values in the input data

Type

Empty

class LDiversityConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

l-diversity metric, used for analysis of reidentification risk.

quasi_ids

Set of quasi-identifiers indicating how equivalence classes are defined for the l-diversity computation. When multiple fields are specified, they are considered a single composite key.

Type

Sequence[FieldId]

sensitive_attribute

Sensitive field for computing the l-value.

Type

FieldId

class NumericalStatsConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Compute numerical stats over an individual column, including min, max, and quantiles.

field

Field to compute numerical stats on. Supported types are integer, float, date, datetime, timestamp, time.

Type

FieldId

class google.cloud.dlp_v2.types.QuasiId(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A column with a semantic tag attached.

field

Required. Identifies the column.

Type

FieldId

info_type

A column can be tagged with a InfoType to use the relevant public dataset as a statistical model of population, if available. We currently support US ZIP codes, region codes, ages and genders. To programmatically obtain the list of supported InfoTypes, use ListInfoTypes with the supported_by=RISK_ANALYSIS filter.

Type

InfoType

custom_tag

A column can be tagged with a custom tag. In this case, the user must indicate an auxiliary table that contains statistical information on the possible values of this column (below).

Type

str

inferred

If no semantic tag is indicated, we infer the statistical model from the distribution of values in the input data

Type

Empty

class google.cloud.dlp_v2.types.QuoteInfo(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message for infoType-dependent details parsed from quote.

date_time

The date time indicated by the quote.

Type

DateTime

class google.cloud.dlp_v2.types.Range(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Generic half-open interval [start, end)

start

Index of the first character of the range (inclusive).

Type

int

end

Index of the last character of the range (exclusive).

Type

int

class google.cloud.dlp_v2.types.RecordCondition(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A condition for determining whether a transformation should be applied to a field.

expressions

An expression.

Type

Expressions

class Condition(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

The field type of value and field do not need to match to be considered equal, but not all comparisons are possible. EQUAL_TO and NOT_EQUAL_TO attempt to compare even with incompatible types, but all other comparisons are invalid with incompatible types. A value of type:

  • string can be compared against all other types

  • boolean can only be compared against other booleans

  • integer can be compared against doubles or a string if the string value can be parsed as an integer.

  • double can be compared against integers or a string if the string can be parsed as a double.

  • Timestamp can be compared against strings in RFC 3339 date string format.

  • TimeOfDay can be compared against timestamps and strings in the format of ‘HH:mm:ss’.

If we fail to compare do to type mismatch, a warning will be given and the condition will evaluate to false.

field

Required. Field within the record this condition is evaluated against.

Type

FieldId

operator

Required. Operator used to compare the field or infoType to the value.

Type

RelationalOperator

value

Value to compare against. [Mandatory, except for EXISTS tests.]

Type

Value

class Conditions(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A collection of conditions.

conditions

A collection of conditions.

Type

Sequence[Condition]

class Expressions(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

An expression, consisting or an operator and conditions.

logical_operator

The operator to apply to the result of conditions. Default and currently only supported value is AND.

Type

LogicalOperator

conditions

Conditions to apply to the expression.

Type

Conditions

class LogicalOperator(value)[source]

Bases: proto.enums.Enum

Logical operators for conditional checks.

class google.cloud.dlp_v2.types.RecordKey(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Message for a unique key indicating a record that contains a finding.

datastore_key
Type

DatastoreKey

big_query_key
Type

BigQueryKey

id_values

Values of identifying columns in the given row. Order of values matches the order of identifying_fields specified in the scanning request.

Type

Sequence[str]

class google.cloud.dlp_v2.types.RecordLocation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Location of a finding within a row or record.

record_key

Key of the finding.

Type

RecordKey

field_id

Field id of the field containing the finding.

Type

FieldId

table_location

Location within a ContentItem.Table.

Type

TableLocation

class google.cloud.dlp_v2.types.RecordSuppression(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Configuration to suppress records whose suppression conditions evaluate to true.

condition

A condition that when it evaluates to true will result in the record being evaluated to be suppressed from the transformed content.

Type

RecordCondition

class google.cloud.dlp_v2.types.RecordTransformations(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A type of transformation that is applied over structured data such as a table.

field_transformations

Transform the record by applying various field transformations.

Type

Sequence[FieldTransformation]

record_suppressions

Configuration defining which records get suppressed entirely. Records that match any suppression rule are omitted from the output.

Type

Sequence[RecordSuppression]

class google.cloud.dlp_v2.types.RedactConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Redact a given value. For example, if used with an InfoTypeTransformation transforming PHONE_NUMBER, and input ‘My phone number is 206-555-0123’, the output would be ‘My phone number is ‘.

class google.cloud.dlp_v2.types.RedactImageRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request to search for potentially sensitive info in an image and redact it by covering it with a colored rectangle.

parent

Parent resource name.

The format of this value varies depending on whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

location_id

Deprecated. This field has no effect.

Type

str

inspect_config

Configuration for the inspector.

Type

InspectConfig

image_redaction_configs

The configuration for specifying what content to redact from images.

Type

Sequence[ImageRedactionConfig]

include_findings

Whether the response should include findings along with the redacted image.

Type

bool

byte_item

The content must be PNG, JPEG, SVG or BMP.

Type

ByteContentItem

class ImageRedactionConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Configuration for determining how redaction of images should occur.

info_type

Only one per info_type should be provided per request. If not specified, and redact_all_text is false, the DLP API will redact all text that it matches against all info_types that are found, but not specified in another ImageRedactionConfig.

Type

InfoType

redact_all_text

If true, all text found in the image, regardless whether it matches an info_type, is redacted. Only one should be provided.

Type

bool

redaction_color

The color to use when redacting content from an image. If not specified, the default is black.

Type

Color

class google.cloud.dlp_v2.types.RedactImageResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Results of redacting an image.

redacted_image

The redacted image. The type will be the same as the original image.

Type

bytes

extracted_text

If an image was being inspected and the InspectConfig’s include_quote was set to true, then this field will include all text, if any, that was found in the image.

Type

str

inspect_result

The findings. Populated when include_findings in the request is true.

Type

InspectResult

class google.cloud.dlp_v2.types.ReidentifyContentRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request to re-identify an item.

parent

Required. Parent resource name.

The format of this value varies depending on whether you have specified a processing location:

  • Projects scope, location specified: projects/PROJECT_ID/locations/LOCATION_ID

  • Projects scope, no location specified (defaults to global): projects/PROJECT_ID

The following example parent string specifies a parent project with the identifier example-project, and specifies the europe-west3 location for processing data:

parent=projects/example-project/locations/europe-west3
Type

str

reidentify_config

Configuration for the re-identification of the content item. This field shares the same proto message type that is used for de-identification, however its usage here is for the reversal of the previous de-identification. Re-identification is performed by examining the transformations used to de-identify the items and executing the reverse. This requires that only reversible transformations be provided here. The reversible transformations are:

  • CryptoDeterministicConfig

  • CryptoReplaceFfxFpeConfig

Type

DeidentifyConfig

inspect_config

Configuration for the inspector.

Type

InspectConfig

item

The item to re-identify. Will be treated as text.

Type

ContentItem

inspect_template_name

Template to use. Any configuration directly specified in inspect_config will override those set in the template. Singular fields that are set in this request will replace their corresponding fields in the template. Repeated fields are appended. Singular sub-messages and groups are recursively merged.

Type

str

reidentify_template_name

Template to use. References an instance of DeidentifyTemplate. Any configuration directly specified in reidentify_config or inspect_config will override those set in the template. The DeidentifyTemplate used must include only reversible transformations. Singular fields that are set in this request will replace their corresponding fields in the template. Repeated fields are appended. Singular sub-messages and groups are recursively merged.

Type

str

location_id

Deprecated. This field has no effect.

Type

str

class google.cloud.dlp_v2.types.ReidentifyContentResponse(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Results of re-identifying a item.

item

The re-identified item.

Type

ContentItem

overview

An overview of the changes that were made to the item.

Type

TransformationOverview

class google.cloud.dlp_v2.types.RelationalOperator(value)[source]

Bases: proto.enums.Enum

Operators available for comparing the value of fields.

class google.cloud.dlp_v2.types.ReplaceValueConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Replace each input value with a given Value.

new_value

Value to replace it with.

Type

Value

class google.cloud.dlp_v2.types.ReplaceWithInfoTypeConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Replace each matching finding with the name of the info_type.

class google.cloud.dlp_v2.types.RiskAnalysisJobConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Configuration for a risk analysis job. See https://cloud.google.com/dlp/docs/concepts-risk-analysis to learn more.

privacy_metric

Privacy metric to compute.

Type

PrivacyMetric

source_table

Input dataset to compute metrics over.

Type

BigQueryTable

actions

Actions to execute at the completion of the job. Are executed in the order provided.

Type

Sequence[Action]

class google.cloud.dlp_v2.types.Schedule(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Schedule for triggeredJobs.

recurrence_period_duration

With this option a job is started a regular periodic basis. For example: every day (86400 seconds). A scheduled start time will be skipped if the previous execution has not ended when its scheduled time occurs. This value must be set to a time duration greater than or equal to 1 day and can be no longer than 60 days.

Type

Duration

class google.cloud.dlp_v2.types.StatisticalTable(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

An auxiliary table containing statistical information on the relative frequency of different quasi-identifiers values. It has one or several quasi-identifiers columns, and one column that indicates the relative frequency of each quasi-identifier tuple. If a tuple is present in the data but not in the auxiliary table, the corresponding relative frequency is assumed to be zero (and thus, the tuple is highly reidentifiable).

table

Required. Auxiliary table location.

Type

BigQueryTable

quasi_ids

Required. Quasi-identifier columns.

Type

Sequence[QuasiIdentifierField]

relative_frequency

Required. The relative frequency column must contain a floating-point number between 0 and 1 (inclusive). Null values are assumed to be zero.

Type

FieldId

class QuasiIdentifierField(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A quasi-identifier column has a custom_tag, used to know which column in the data corresponds to which column in the statistical model.

field

Identifies the column.

Type

FieldId

custom_tag

A column can be tagged with a custom tag. In this case, the user must indicate an auxiliary table that contains statistical information on the possible values of this column (below).

Type

str

class google.cloud.dlp_v2.types.StorageConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Shared message indicating Cloud storage type.

datastore_options

Google Cloud Datastore options.

Type

DatastoreOptions

cloud_storage_options

Google Cloud Storage options.

Type

CloudStorageOptions

big_query_options

BigQuery options.

Type

BigQueryOptions

hybrid_options

Hybrid inspection options. Early access feature is in a pre-release state and might change or have limited support. For more information, see https://cloud.google.com/products#product- launch-stages.

Type

HybridOptions

timespan_config
Type

TimespanConfig

class TimespanConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Configuration of the timespan of the items to include in scanning. Currently only supported when inspecting Google Cloud Storage and BigQuery.

start_time

Exclude files, tables, or rows older than this value. If not set, no lower time limit is applied.

Type

Timestamp

end_time

Exclude files, tables, or rows newer than this value. If not set, no upper time limit is applied.

Type

Timestamp

timestamp_field

Specification of the field containing the timestamp of scanned items. Used for data sources like Datastore and BigQuery.

For BigQuery: If this value is not specified and the table was modified between the given start and end times, the entire table will be scanned. If this value is specified, then rows are filtered based on the given start and end times. Rows with a NULL value in the provided BigQuery column are skipped. Valid data types of the provided BigQuery column are: INTEGER, DATE, TIMESTAMP, and DATETIME.

For Datastore: If this value is specified, then entities are filtered based on the given start and end times. If an entity does not contain the provided timestamp property or contains empty or invalid values, then it is included. Valid data types of the provided timestamp property are: TIMESTAMP.

Type

FieldId

enable_auto_population_of_timespan_config

When the job is started by a JobTrigger we will automatically figure out a valid start_time to avoid scanning files that have not been modified since the last time the JobTrigger executed. This will be based on the time of the execution of the last run of the JobTrigger.

Type

bool

class google.cloud.dlp_v2.types.StorageMetadataLabel(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Storage metadata label to indicate which metadata entry contains findings.

key
Type

str

class google.cloud.dlp_v2.types.StoredInfoType(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

StoredInfoType resource message that contains information about the current version and any pending updates.

name

Resource name.

Type

str

current_version

Current version of the stored info type.

Type

StoredInfoTypeVersion

pending_versions

Pending versions of the stored info type. Empty if no versions are pending.

Type

Sequence[StoredInfoTypeVersion]

class google.cloud.dlp_v2.types.StoredInfoTypeConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Configuration for stored infoTypes. All fields and subfield are provided by the user. For more information, see https://cloud.google.com/dlp/docs/creating-custom-infotypes.

display_name

Display name of the StoredInfoType (max 256 characters).

Type

str

description

Description of the StoredInfoType (max 256 characters).

Type

str

large_custom_dictionary

StoredInfoType where findings are defined by a dictionary of phrases.

Type

LargeCustomDictionaryConfig

dictionary

Store dictionary-based CustomInfoType.

Type

Dictionary

regex

Store regular expression-based StoredInfoType.

Type

Regex

class google.cloud.dlp_v2.types.StoredInfoTypeState(value)[source]

Bases: proto.enums.Enum

State of a StoredInfoType version.

class google.cloud.dlp_v2.types.StoredInfoTypeStats(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Statistics for a StoredInfoType.

large_custom_dictionary

StoredInfoType where findings are defined by a dictionary of phrases.

Type

LargeCustomDictionaryStats

class google.cloud.dlp_v2.types.StoredInfoTypeVersion(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Version of a StoredInfoType, including the configuration used to build it, create timestamp, and current state.

config

StoredInfoType configuration.

Type

StoredInfoTypeConfig

create_time

Create timestamp of the version. Read-only, determined by the system when the version is created.

Type

Timestamp

state

Stored info type version state. Read-only, updated by the system during dictionary creation.

Type

StoredInfoTypeState

errors

Errors that occurred when creating this storedInfoType version, or anomalies detected in the storedInfoType data that render it unusable. Only the five most recent errors will be displayed, with the most recent error appearing first.

For example, some of the data for stored custom dictionaries is put in the user’s Google Cloud Storage bucket, and if this data is modified or deleted by the user or another system, the dictionary becomes invalid.

If any errors occur, fix the problem indicated by the error message and use the UpdateStoredInfoType API method to create another version of the storedInfoType to continue using it, reusing the same config if it was not the source of the error.

Type

Sequence[Error]

stats

Statistics about this storedInfoType version.

Type

StoredInfoTypeStats

class google.cloud.dlp_v2.types.StoredType(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A reference to a StoredInfoType to use with scanning.

name

Resource name of the requested StoredInfoType, for example organizations/433245324/storedInfoTypes/432452342 or projects/project-id/storedInfoTypes/432452342.

Type

str

create_time

Timestamp indicating when the version of the StoredInfoType used for inspection was created. Output-only field, populated by the system.

Type

Timestamp

class google.cloud.dlp_v2.types.Table(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Structured content to inspect. Up to 50,000 Values per request allowed. See https://cloud.google.com/dlp/docs/inspecting-text#inspecting_a_table to learn more.

headers

Headers of the table.

Type

Sequence[FieldId]

rows

Rows of the table.

Type

Sequence[Row]

class Row(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Values of the row.

values

Individual cells.

Type

Sequence[Value]

class google.cloud.dlp_v2.types.TableLocation(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Location of a finding within a table.

row_index

The zero-based index of the row where the finding is located. Only populated for resources that have a natural ordering, not BigQuery. In BigQuery, to identify the row a finding came from, populate BigQueryOptions.identifying_fields with your primary key column names and when you store the findings the value of those columns will be stored inside of Finding.

Type

int

class google.cloud.dlp_v2.types.TableOptions(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Instructions regarding the table content being inspected.

identifying_fields

The columns that are the primary keys for table objects included in ContentItem. A copy of this cell’s value will stored alongside alongside each finding so that the finding can be traced to the specific row it came from. No more than 3 may be provided.

Type

Sequence[FieldId]

class google.cloud.dlp_v2.types.TimePartConfig(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

For use with Date, Timestamp, and TimeOfDay, extract or preserve a portion of the value.

part_to_extract

The part of the time to keep.

Type

TimePart

class TimePart(value)[source]

Bases: proto.enums.Enum

Components that make up time.

class google.cloud.dlp_v2.types.TransformationErrorHandling(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

How to handle transformation errors during de-identification. A transformation error occurs when the requested transformation is incompatible with the data. For example, trying to de-identify an IP address using a DateShift transformation would result in a transformation error, since date info cannot be extracted from an IP address. Information about any incompatible transformations, and how they were handled, is returned in the response as part of the TransformationOverviews.

throw_error

Throw an error

Type

ThrowError

leave_untransformed

Ignore errors

Type

LeaveUntransformed

class LeaveUntransformed(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Skips the data without modifying it if the requested transformation would cause an error. For example, if a DateShift transformation were applied an an IP address, this mode would leave the IP address unchanged in the response.

class ThrowError(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Throw an error and fail the request when a transformation error occurs.

class google.cloud.dlp_v2.types.TransformationOverview(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Overview of the modifications that occurred.

transformed_bytes

Total size in bytes that were transformed in some way.

Type

int

transformation_summaries

Transformations applied to the dataset.

Type

Sequence[TransformationSummary]

class google.cloud.dlp_v2.types.TransformationSummary(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Summary of a single transformation. Only one of ‘transformation’, ‘field_transformation’, or ‘record_suppress’ will be set.

info_type

Set if the transformation was limited to a specific InfoType.

Type

InfoType

field

Set if the transformation was limited to a specific FieldId.

Type

FieldId

transformation

The specific transformation these stats apply to.

Type

PrimitiveTransformation

field_transformations

The field transformation that was applied. If multiple field transformations are requested for a single field, this list will contain all of them; otherwise, only one is supplied.

Type

Sequence[FieldTransformation]

record_suppress

The specific suppression option these stats apply to.

Type

RecordSuppression

results

Collection of all transformations that took place or had an error.

Type

Sequence[SummaryResult]

transformed_bytes

Total size in bytes that were transformed in some way.

Type

int

class SummaryResult(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A collection that informs the user the number of times a particular TransformationResultCode and error details occurred.

count

Number of transformations counted by this result.

Type

int

code

Outcome of the transformation.

Type

TransformationResultCode

details

A place for warnings or errors to show up if a transformation didn’t work as expected.

Type

str

class TransformationResultCode(value)[source]

Bases: proto.enums.Enum

Possible outcomes of transformations.

class google.cloud.dlp_v2.types.TransientCryptoKey(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Use this to have a random data crypto key generated. It will be discarded after the request finishes.

name

Required. Name of the key. This is an arbitrary string used to differentiate different keys. A unique key is generated per name: two separate TransientCryptoKey protos share the same generated key if their names are the same. When the data crypto key is generated, this name is not used in any way (repeating the api call will result in a different key being generated).

Type

str

class google.cloud.dlp_v2.types.UnwrappedCryptoKey(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Using raw keys is prone to security risks due to accidentally leaking the key. Choose another type of key if possible.

key

Required. A 128/192/256 bit key.

Type

bytes

class google.cloud.dlp_v2.types.UpdateDeidentifyTemplateRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for UpdateDeidentifyTemplate.

name

Required. Resource name of organization and deidentify template to be updated, for example organizations/433245324/deidentifyTemplates/432452342 or projects/project-id/deidentifyTemplates/432452342.

Type

str

deidentify_template

New DeidentifyTemplate value.

Type

DeidentifyTemplate

update_mask

Mask to control which fields get updated.

Type

FieldMask

class google.cloud.dlp_v2.types.UpdateInspectTemplateRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for UpdateInspectTemplate.

name

Required. Resource name of organization and inspectTemplate to be updated, for example organizations/433245324/inspectTemplates/432452342 or projects/project-id/inspectTemplates/432452342.

Type

str

inspect_template

New InspectTemplate value.

Type

InspectTemplate

update_mask

Mask to control which fields get updated.

Type

FieldMask

class google.cloud.dlp_v2.types.UpdateJobTriggerRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for UpdateJobTrigger.

name

Required. Resource name of the project and the triggeredJob, for example projects/dlp-test-project/jobTriggers/53234423.

Type

str

job_trigger

New JobTrigger value.

Type

JobTrigger

update_mask

Mask to control which fields get updated.

Type

FieldMask

class google.cloud.dlp_v2.types.UpdateStoredInfoTypeRequest(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Request message for UpdateStoredInfoType.

name

Required. Resource name of organization and storedInfoType to be updated, for example organizations/433245324/storedInfoTypes/432452342 or projects/project-id/storedInfoTypes/432452342.

Type

str

config

Updated configuration for the storedInfoType. If not provided, a new version of the storedInfoType will be created with the existing configuration.

Type

StoredInfoTypeConfig

update_mask

Mask to control which fields get updated.

Type

FieldMask

class google.cloud.dlp_v2.types.Value(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

Set of primitive values supported by the system. Note that for the purposes of inspection or transformation, the number of bytes considered to comprise a ‘Value’ is based on its representation as a UTF-8 encoded string. For example, if ‘integer_value’ is set to 123456789, the number of bytes would be counted as 9, even though an int64 only holds up to 8 bytes of data.

integer_value

integer

Type

int

float_value

float

Type

float

string_value

string

Type

str

boolean_value

boolean

Type

bool

timestamp_value

timestamp

Type

Timestamp

time_value

time of day

Type

TimeOfDay

date_value

date

Type

Date

day_of_week_value

day of week

Type

DayOfWeek

class google.cloud.dlp_v2.types.ValueFrequency(mapping=None, *, ignore_unknown_fields=False, **kwargs)[source]

Bases: proto.message.Message

A value of a field, including its frequency.

value

A value contained in the field in question.

Type

Value

count

How many times the value is contained in the field.

Type

int