blob: 32ec35359cbb7aa2d4ca90ff6ef671b86b9106ce [file] [log] [blame]
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<h1><a href="dlp_v2.html">Cloud Data Loss Prevention (DLP) API</a> . <a href="dlp_v2.projects.html">projects</a> . <a href="dlp_v2.projects.dlpJobs.html">dlpJobs</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78 <code><a href="#cancel">cancel(name, body=None, x__xgafv=None)</a></code></p>
79<p class="firstline">Starts asynchronous cancellation on a long-running DlpJob. The server</p>
80<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070081 <code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070082<p class="firstline">Creates a new job to inspect storage or calculate risk metrics.</p>
83<p class="toc_element">
84 <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
85<p class="firstline">Deletes a long-running DlpJob. This method indicates that the client is</p>
86<p class="toc_element">
87 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
88<p class="firstline">Gets the latest state of a long-running DlpJob.</p>
89<p class="toc_element">
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -070090 <code><a href="#list">list(parent, orderBy=None, pageToken=None, locationId=None, pageSize=None, filter=None, type=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070091<p class="firstline">Lists DlpJobs that match the specified filter in the request.</p>
92<p class="toc_element">
93 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
94<p class="firstline">Retrieves the next page of results.</p>
95<h3>Method Details</h3>
96<div class="method">
97 <code class="details" id="cancel">cancel(name, body=None, x__xgafv=None)</code>
98 <pre>Starts asynchronous cancellation on a long-running DlpJob. The server
99makes a best effort to cancel the DlpJob, but success is not
100guaranteed.
101See https://cloud.google.com/dlp/docs/inspecting-storage and
102https://cloud.google.com/dlp/docs/compute-risk-analysis to learn more.
103
104Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700105 name: string, Required. The name of the DlpJob resource to be cancelled. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700106 body: object, The request body.
107 The object takes the form of:
108
109{ # The request message for canceling a DLP job.
110 }
111
112 x__xgafv: string, V1 error format.
113 Allowed values
114 1 - v1 error format
115 2 - v2 error format
116
117Returns:
118 An object of the form:
119
120 { # A generic empty message that you can re-use to avoid defining duplicated
121 # empty messages in your APIs. A typical example is to use it as the request
122 # or the response type of an API method. For instance:
123 #
124 # service Foo {
125 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
126 # }
127 #
128 # The JSON representation for `Empty` is empty JSON object `{}`.
129 }</pre>
130</div>
131
132<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700133 <code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700134 <pre>Creates a new job to inspect storage or calculate risk metrics.
135See https://cloud.google.com/dlp/docs/inspecting-storage and
136https://cloud.google.com/dlp/docs/compute-risk-analysis to learn more.
137
138When no InfoTypes or CustomInfoTypes are specified in inspect jobs, the
139system will automatically choose what detectors to run. By default this may
140be all types, but may change over time as detectors are updated.
141
142Args:
Dan O'Mearadd494642020-05-01 07:42:23 -0700143 parent: string, Required. The parent resource name, for example projects/my-project-id. (required)
144 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700145 The object takes the form of:
146
147{ # Request message for CreateDlpJobRequest. Used to initiate long running
148 # jobs such as calculating risk metrics or inspecting Google Cloud
149 # Storage.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700150 &quot;riskJob&quot;: { # Configuration for a risk analysis job. See # Set to choose what metric to calculate.
151 # https://cloud.google.com/dlp/docs/concepts-risk-analysis to learn more.
152 &quot;sourceTable&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Input dataset to compute metrics over.
153 # identified by its project_id, dataset_id, and table_name. Within a query
154 # a table is often referenced with a string in the format of:
155 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
156 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
157 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
158 # If omitted, project ID is inferred from the API call.
159 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
160 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
161 },
162 &quot;privacyMetric&quot;: { # Privacy metric to compute for reidentification risk analysis. # Privacy metric to compute.
163 &quot;deltaPresenceEstimationConfig&quot;: { # δ-presence metric, used to estimate how likely it is for an attacker to # delta-presence
164 # figure out that one given individual appears in a de-identified dataset.
165 # Similarly to the k-map metric, we cannot compute δ-presence exactly without
166 # knowing the attack dataset, so we use a statistical model instead.
167 &quot;regionCode&quot;: &quot;A String&quot;, # ISO 3166-1 alpha-2 region code to use in the statistical modeling.
168 # Set if no column is tagged with a region-specific InfoType (like
169 # US_ZIP_5) or a region code.
170 &quot;auxiliaryTables&quot;: [ # Several auxiliary tables can be used in the analysis. Each custom_tag
171 # used to tag a quasi-identifiers field must appear in exactly one
172 # field of one auxiliary table.
173 { # An auxiliary table containing statistical information on the relative
174 # frequency of different quasi-identifiers values. It has one or several
175 # quasi-identifiers columns, and one column that indicates the relative
176 # frequency of each quasi-identifier tuple.
177 # If a tuple is present in the data but not in the auxiliary table, the
178 # corresponding relative frequency is assumed to be zero (and thus, the
179 # tuple is highly reidentifiable).
180 &quot;quasiIds&quot;: [ # Required. Quasi-identifier columns.
181 { # A quasi-identifier column has a custom_tag, used to know which column
182 # in the data corresponds to which column in the statistical model.
183 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
184 # indicate an auxiliary table that contains statistical information on
185 # the possible values of this column (below).
186 &quot;field&quot;: { # General identifier of a data field in a storage service. # Identifies the column.
187 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
188 },
189 },
190 ],
191 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Required. Auxiliary table location.
192 # identified by its project_id, dataset_id, and table_name. Within a query
193 # a table is often referenced with a string in the format of:
194 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
195 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
196 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
197 # If omitted, project ID is inferred from the API call.
198 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
199 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
200 },
201 &quot;relativeFrequency&quot;: { # General identifier of a data field in a storage service. # Required. The relative frequency column must contain a floating-point number
202 # between 0 and 1 (inclusive). Null values are assumed to be zero.
203 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
204 },
205 },
206 ],
207 &quot;quasiIds&quot;: [ # Required. Fields considered to be quasi-identifiers. No two fields can have the
208 # same tag.
209 { # A column with a semantic tag attached.
210 &quot;field&quot;: { # General identifier of a data field in a storage service. # Required. Identifies the column.
211 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
212 },
213 &quot;infoType&quot;: { # Type of information detected by the API. # A column can be tagged with a InfoType to use the relevant public
214 # dataset as a statistical model of population, if available. We
215 # currently support US ZIP codes, region codes, ages and genders.
216 # To programmatically obtain the list of supported InfoTypes, use
217 # ListInfoTypes with the supported_by=RISK_ANALYSIS filter.
218 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
219 # creating a CustomInfoType, or one of the names listed
220 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
221 # a built-in type. InfoType names should conform to the pattern
222 # `[a-zA-Z0-9_]{1,64}`.
223 },
224 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
225 # indicate an auxiliary table that contains statistical information on
226 # the possible values of this column (below).
227 &quot;inferred&quot;: { # A generic empty message that you can re-use to avoid defining duplicated # If no semantic tag is indicated, we infer the statistical model from
228 # the distribution of values in the input data
229 # empty messages in your APIs. A typical example is to use it as the request
230 # or the response type of an API method. For instance:
231 #
232 # service Foo {
233 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
234 # }
235 #
236 # The JSON representation for `Empty` is empty JSON object `{}`.
237 },
238 },
239 ],
240 },
241 &quot;categoricalStatsConfig&quot;: { # Compute numerical stats over an individual column, including # Categorical stats
242 # number of distinct values and value count distribution.
243 &quot;field&quot;: { # General identifier of a data field in a storage service. # Field to compute categorical stats on. All column types are
244 # supported except for arrays and structs. However, it may be more
245 # informative to use NumericalStats when the field type is supported,
246 # depending on the data.
247 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
248 },
249 },
250 &quot;kAnonymityConfig&quot;: { # k-anonymity metric, used for analysis of reidentification risk. # K-anonymity
251 &quot;entityId&quot;: { # An entity in a dataset is a field or set of fields that correspond to a # Message indicating that multiple rows might be associated to a
252 # single individual. If the same entity_id is associated to multiple
253 # quasi-identifier tuples over distinct rows, we consider the entire
254 # collection of tuples as the composite quasi-identifier. This collection
255 # is a multiset: the order in which the different tuples appear in the
256 # dataset is ignored, but their frequency is taken into account.
257 #
258 # Important note: a maximum of 1000 rows can be associated to a single
259 # entity ID. If more rows are associated with the same entity ID, some
260 # might be ignored.
261 # single person. For example, in medical records the `EntityId` might be a
262 # patient identifier, or for financial records it might be an account
263 # identifier. This message is used when generalizations or analysis must take
264 # into account that multiple rows correspond to the same entity.
265 &quot;field&quot;: { # General identifier of a data field in a storage service. # Composite key indicating which field contains the entity identifier.
266 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
267 },
268 },
269 &quot;quasiIds&quot;: [ # Set of fields to compute k-anonymity over. When multiple fields are
270 # specified, they are considered a single composite key. Structs and
271 # repeated data types are not supported; however, nested fields are
272 # supported so long as they are not structs themselves or nested within
273 # a repeated field.
274 { # General identifier of a data field in a storage service.
275 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
276 },
277 ],
278 },
279 &quot;numericalStatsConfig&quot;: { # Compute numerical stats over an individual column, including # Numerical stats
280 # min, max, and quantiles.
281 &quot;field&quot;: { # General identifier of a data field in a storage service. # Field to compute numerical stats on. Supported types are
282 # integer, float, date, datetime, timestamp, time.
283 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
284 },
285 },
286 &quot;kMapEstimationConfig&quot;: { # Reidentifiability metric. This corresponds to a risk model similar to what # k-map
287 # is called &quot;journalist risk&quot; in the literature, except the attack dataset is
288 # statistically modeled instead of being perfectly known. This can be done
289 # using publicly available data (like the US Census), or using a custom
290 # statistical model (indicated as one or several BigQuery tables), or by
291 # extrapolating from the distribution of values in the input dataset.
292 &quot;regionCode&quot;: &quot;A String&quot;, # ISO 3166-1 alpha-2 region code to use in the statistical modeling.
293 # Set if no column is tagged with a region-specific InfoType (like
294 # US_ZIP_5) or a region code.
295 &quot;auxiliaryTables&quot;: [ # Several auxiliary tables can be used in the analysis. Each custom_tag
296 # used to tag a quasi-identifiers column must appear in exactly one column
297 # of one auxiliary table.
298 { # An auxiliary table contains statistical information on the relative
299 # frequency of different quasi-identifiers values. It has one or several
300 # quasi-identifiers columns, and one column that indicates the relative
301 # frequency of each quasi-identifier tuple.
302 # If a tuple is present in the data but not in the auxiliary table, the
303 # corresponding relative frequency is assumed to be zero (and thus, the
304 # tuple is highly reidentifiable).
305 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Required. Auxiliary table location.
306 # identified by its project_id, dataset_id, and table_name. Within a query
307 # a table is often referenced with a string in the format of:
308 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
309 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
310 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
311 # If omitted, project ID is inferred from the API call.
312 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
313 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
314 },
315 &quot;relativeFrequency&quot;: { # General identifier of a data field in a storage service. # Required. The relative frequency column must contain a floating-point number
316 # between 0 and 1 (inclusive). Null values are assumed to be zero.
317 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
318 },
319 &quot;quasiIds&quot;: [ # Required. Quasi-identifier columns.
320 { # A quasi-identifier column has a custom_tag, used to know which column
321 # in the data corresponds to which column in the statistical model.
322 &quot;customTag&quot;: &quot;A String&quot;, # A auxiliary field.
323 &quot;field&quot;: { # General identifier of a data field in a storage service. # Identifies the column.
324 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
325 },
326 },
327 ],
328 },
329 ],
330 &quot;quasiIds&quot;: [ # Required. Fields considered to be quasi-identifiers. No two columns can have the
331 # same tag.
332 { # A column with a semantic tag attached.
333 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
334 # indicate an auxiliary table that contains statistical information on
335 # the possible values of this column (below).
336 &quot;inferred&quot;: { # A generic empty message that you can re-use to avoid defining duplicated # If no semantic tag is indicated, we infer the statistical model from
337 # the distribution of values in the input data
338 # empty messages in your APIs. A typical example is to use it as the request
339 # or the response type of an API method. For instance:
340 #
341 # service Foo {
342 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
343 # }
344 #
345 # The JSON representation for `Empty` is empty JSON object `{}`.
346 },
347 &quot;field&quot;: { # General identifier of a data field in a storage service. # Required. Identifies the column.
348 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
349 },
350 &quot;infoType&quot;: { # Type of information detected by the API. # A column can be tagged with a InfoType to use the relevant public
351 # dataset as a statistical model of population, if available. We
352 # currently support US ZIP codes, region codes, ages and genders.
353 # To programmatically obtain the list of supported InfoTypes, use
354 # ListInfoTypes with the supported_by=RISK_ANALYSIS filter.
355 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
356 # creating a CustomInfoType, or one of the names listed
357 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
358 # a built-in type. InfoType names should conform to the pattern
359 # `[a-zA-Z0-9_]{1,64}`.
360 },
361 },
362 ],
363 },
364 &quot;lDiversityConfig&quot;: { # l-diversity metric, used for analysis of reidentification risk. # l-diversity
365 &quot;sensitiveAttribute&quot;: { # General identifier of a data field in a storage service. # Sensitive field for computing the l-value.
366 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
367 },
368 &quot;quasiIds&quot;: [ # Set of quasi-identifiers indicating how equivalence classes are
369 # defined for the l-diversity computation. When multiple fields are
370 # specified, they are considered a single composite key.
371 { # General identifier of a data field in a storage service.
372 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
373 },
374 ],
375 },
376 },
377 &quot;actions&quot;: [ # Actions to execute at the completion of the job. Are executed in the order
378 # provided.
379 { # A task to execute on the completion of a job.
380 # See https://cloud.google.com/dlp/docs/concepts-actions to learn more.
381 &quot;publishSummaryToCscc&quot;: { # Publish the result summary of a DlpJob to the Cloud Security # Publish summary to Cloud Security Command Center (Alpha).
382 # Command Center (CSCC Alpha).
383 # This action is only available for projects which are parts of
384 # an organization and whitelisted for the alpha Cloud Security Command
385 # Center.
386 # The action will publish count of finding instances and their info types.
387 # The summary of findings will be persisted in CSCC and are governed by CSCC
388 # service-specific policy, see https://cloud.google.com/terms/service-terms
389 # Only a single instance of this action can be specified.
390 # Compatible with: Inspect
391 },
392 &quot;jobNotificationEmails&quot;: { # Enable email notification to project owners and editors on jobs&#x27;s # Enable email notification for project owners and editors on job&#x27;s
393 # completion/failure.
394 # completion/failure.
395 },
396 &quot;saveFindings&quot;: { # If set, the detailed findings will be persisted to the specified # Save resulting findings in a provided location.
397 # OutputStorageConfig. Only a single instance of this action can be
398 # specified.
399 # Compatible with: Inspect, Risk
400 &quot;outputConfig&quot;: { # Cloud repository for storing output. # Location to store findings outside of DLP.
401 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Store findings in an existing table or a new table in an existing
402 # dataset. If table_id is not set a new one will be generated
403 # for you with the following format:
404 # dlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used for
405 # generating the date details.
406 #
407 # For Inspect, each column in an existing output table must have the same
408 # name, type, and mode of a field in the `Finding` object.
409 #
410 # For Risk, an existing output table should be the output of a previous
411 # Risk analysis job run on the same source table, with the same privacy
412 # metric and quasi-identifiers. Risk jobs that analyze the same table but
413 # compute a different privacy metric, or use different sets of
414 # quasi-identifiers, cannot store their results in the same table.
415 # identified by its project_id, dataset_id, and table_name. Within a query
416 # a table is often referenced with a string in the format of:
417 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
418 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
419 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
420 # If omitted, project ID is inferred from the API call.
421 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
422 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
423 },
424 &quot;outputSchema&quot;: &quot;A String&quot;, # Schema used for writing the findings for Inspect jobs. This field is only
425 # used for Inspect and must be unspecified for Risk jobs. Columns are derived
426 # from the `Finding` object. If appending to an existing table, any columns
427 # from the predefined schema that are missing will be added. No columns in
428 # the existing table will be deleted.
429 #
430 # If unspecified, then all available columns will be used for a new table or
431 # an (existing) table with no schema, and no changes will be made to an
432 # existing table that has a schema.
433 # Only for use with external storage.
434 },
435 },
436 &quot;pubSub&quot;: { # Publish a message into given Pub/Sub topic when DlpJob has completed. The # Publish a notification to a pubsub topic.
437 # message contains a single field, `DlpJobName`, which is equal to the
438 # finished job&#x27;s
439 # [`DlpJob.name`](/dlp/docs/reference/rest/v2/projects.dlpJobs#DlpJob).
440 # Compatible with: Inspect, Risk
441 &quot;topic&quot;: &quot;A String&quot;, # Cloud Pub/Sub topic to send notifications to. The topic must have given
442 # publishing access rights to the DLP API service account executing
443 # the long running DlpJob sending the notifications.
444 # Format is projects/{project}/topics/{topic}.
445 },
446 &quot;publishFindingsToCloudDataCatalog&quot;: { # Publish findings of a DlpJob to Cloud Data Catalog. Labels summarizing the # Publish findings to Cloud Datahub.
447 # results of the DlpJob will be applied to the entry for the resource scanned
448 # in Cloud Data Catalog. Any labels previously written by another DlpJob will
449 # be deleted. InfoType naming patterns are strictly enforced when using this
450 # feature. Note that the findings will be persisted in Cloud Data Catalog
451 # storage and are governed by Data Catalog service-specific policy, see
452 # https://cloud.google.com/terms/service-terms
453 # Only a single instance of this action can be specified and only allowed if
454 # all resources being scanned are BigQuery tables.
455 # Compatible with: Inspect
456 },
457 &quot;publishToStackdriver&quot;: { # Enable Stackdriver metric dlp.googleapis.com/finding_count. This # Enable Stackdriver metric dlp.googleapis.com/finding_count.
458 # will publish a metric to stack driver on each infotype requested and
459 # how many findings were found for it. CustomDetectors will be bucketed
460 # as &#x27;Custom&#x27; under the Stackdriver label &#x27;info_type&#x27;.
461 },
462 },
463 ],
464 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700465 &quot;jobId&quot;: &quot;A String&quot;, # The job id can contain uppercase and lowercase letters,
466 # numbers, and hyphens; that is, it must match the regular
467 # expression: `[a-zA-Z\\d-_]+`. The maximum length is 100
468 # characters. Can be empty to allow the system to generate one.
469 &quot;locationId&quot;: &quot;A String&quot;, # The geographic location to store and process the job. Reserved for
470 # future extensions.
471 &quot;inspectJob&quot;: { # Controls what and how to inspect for findings. # Set to control what and how to inspect.
472 &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # How and what to scan for.
473 # When used with redactContent only info_types and min_likelihood are currently
474 # used.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700475 &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
476 # POSSIBLE.
477 # See https://cloud.google.com/dlp/docs/likelihood to learn more.
478 &quot;contentOptions&quot;: [ # List of options defining data content to scan.
479 # If empty, text, images, and other content will be included.
480 &quot;A String&quot;,
481 ],
482 &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
483 # InfoType values returned by ListInfoTypes or listed at
484 # https://cloud.google.com/dlp/docs/infotypes-reference.
485 #
486 # When no InfoTypes or CustomInfoTypes are specified in a request, the
487 # system may automatically choose what detectors to run. By default this may
488 # be all types, but may change over time as detectors are updated.
489 #
490 # If you need precise control and predictability as to what detectors are
491 # run you should specify specific InfoTypes listed in the reference,
492 # otherwise a default list will be used, which may change over time.
493 { # Type of information detected by the API.
494 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
495 # creating a CustomInfoType, or one of the names listed
496 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
497 # a built-in type. InfoType names should conform to the pattern
498 # `[a-zA-Z0-9_]{1,64}`.
499 },
500 ],
501 &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
502 &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
503 # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
504 { # Custom information type provided by the user. Used to find domain-specific
505 # sensitive information configurable to the data in question.
506 &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
507 # support reversing.
508 # such as
509 # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
510 # These types of transformations are
511 # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
512 # output. This should be used in conjunction with a field on the
513 # transformation such as `surrogate_info_type`. This CustomInfoType does
514 # not support the use of `detection_rules`.
515 },
516 &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
517 # altered by a detection rule if the finding meets the criteria specified by
518 # the rule. Defaults to `VERY_LIKELY` if not specified.
519 &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
520 # infoType, when the name matches one of existing infoTypes and that infoType
521 # is specified in `InspectContent.info_types` field. Specifying the latter
522 # adds findings to the one detected by the system. If built-in info type is
523 # not specified in `InspectContent.info_types` list then the name is treated
524 # as a custom info type.
525 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
526 # creating a CustomInfoType, or one of the names listed
527 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
528 # a built-in type. InfoType names should conform to the pattern
529 # `[a-zA-Z0-9_]{1,64}`.
530 },
531 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
532 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
533 # specified, the entire match is returned. No more than 3 may be included.
534 42,
535 ],
536 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
537 # (https://github.com/google/re2/wiki/Syntax) can be found under the
538 # google/re2 repository on GitHub.
539 },
540 &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
541 # Rules are applied in order that they are specified. Not supported for the
542 # `surrogate_type` CustomInfoType.
543 { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
544 # `CustomInfoType` to alter behavior under certain circumstances, depending
545 # on the specific details of the rule. Not supported for the `surrogate_type`
546 # custom infoType.
547 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
548 # proximity of hotwords.
549 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
550 # part of a detection rule.
551 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
552 # levels. For example, if a finding would be `POSSIBLE` without the
553 # detection rule and `relative_likelihood` is 1, then it is upgraded to
554 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
555 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
556 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
557 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
558 # a final likelihood of `LIKELY`.
559 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
560 },
561 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
562 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
563 # specified, the entire match is returned. No more than 3 may be included.
564 42,
565 ],
566 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
567 # (https://github.com/google/re2/wiki/Syntax) can be found under the
568 # google/re2 repository on GitHub.
569 },
570 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
571 # The total length of the window cannot exceed 1000 characters. Note that
572 # the finding itself will be included in the window, so that hotwords may
573 # be used to match substrings of the finding itself. For example, the
574 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
575 # adjusted upwards if the area code is known to be the local area code of
576 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
577 # is the area code in question.
578 # rule.
579 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
580 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
581 },
582 },
583 },
584 ],
585 &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
586 # to be returned. It still can be used for rules matching.
587 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
588 # be used to match sensitive information specific to the data, such as a list
589 # of employee IDs or job titles.
590 #
591 # Dictionary words are case-insensitive and all characters other than letters
592 # and digits in the unicode [Basic Multilingual
593 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
594 # will be replaced with whitespace when scanning for matches, so the
595 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
596 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
597 # surrounding any match must be of a different type than the adjacent
598 # characters within the word, so letters must be next to non-letters and
599 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
600 # match the first three letters of the text &quot;jen123&quot; but will return no
601 # matches for &quot;jennifer&quot;.
602 #
603 # Dictionary words containing a large number of characters that are not
604 # letters or digits may result in unexpected findings because such characters
605 # are treated as whitespace. The
606 # [limits](https://cloud.google.com/dlp/limits) page contains details about
607 # the size limits of dictionaries. For dictionaries that do not fit within
608 # these constraints, consider using `LargeCustomDictionaryConfig` in the
609 # `StoredInfoType` API.
610 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
611 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
612 # at least one phrase and every phrase must contain at least 2 characters
613 # that are letters or digits. [required]
614 &quot;A String&quot;,
615 ],
616 },
617 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
618 # is accepted.
619 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
620 # Example: gs://[BUCKET_NAME]/dictionary.txt
621 },
622 },
623 &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
624 # `InspectDataSource`. Not currently supported in `InspectContent`.
625 &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
626 # `organizations/433245324/storedInfoTypes/432452342` or
627 # `projects/project-id/storedInfoTypes/432452342`.
628 &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
629 # inspection was created. Output-only field, populated by the system.
630 },
631 },
632 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700633 &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
634 # included in the response; see Finding.quote.
635 &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
636 # Exclusion rules, contained in the set are executed in the end, other
637 # rules are executed in the order they are specified for each info type.
638 { # Rule set for modifying a set of infoTypes to alter behavior under certain
639 # circumstances, depending on the specific details of the rules within the set.
640 &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
641 { # Type of information detected by the API.
642 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700643 # creating a CustomInfoType, or one of the names listed
644 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
645 # a built-in type. InfoType names should conform to the pattern
Dan O'Mearadd494642020-05-01 07:42:23 -0700646 # `[a-zA-Z0-9_]{1,64}`.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700647 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700648 ],
649 &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
650 { # A single inspection rule to be applied to infoTypes, specified in
651 # `InspectionRuleSet`.
652 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
653 # proximity of hotwords.
654 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
655 # part of a detection rule.
656 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
657 # levels. For example, if a finding would be `POSSIBLE` without the
658 # detection rule and `relative_likelihood` is 1, then it is upgraded to
659 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
660 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
661 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
662 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
663 # a final likelihood of `LIKELY`.
664 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
Dan O'Mearadd494642020-05-01 07:42:23 -0700665 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700666 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
667 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
668 # specified, the entire match is returned. No more than 3 may be included.
669 42,
670 ],
671 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
672 # (https://github.com/google/re2/wiki/Syntax) can be found under the
673 # google/re2 repository on GitHub.
674 },
675 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
676 # The total length of the window cannot exceed 1000 characters. Note that
677 # the finding itself will be included in the window, so that hotwords may
678 # be used to match substrings of the finding itself. For example, the
679 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
680 # adjusted upwards if the area code is known to be the local area code of
681 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
682 # is the area code in question.
683 # rule.
684 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
685 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
686 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700687 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700688 &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
689 # `InspectionRuleSet` are removed from results.
690 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
691 # be used to match sensitive information specific to the data, such as a list
692 # of employee IDs or job titles.
693 #
694 # Dictionary words are case-insensitive and all characters other than letters
695 # and digits in the unicode [Basic Multilingual
696 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
697 # will be replaced with whitespace when scanning for matches, so the
698 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
699 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
700 # surrounding any match must be of a different type than the adjacent
701 # characters within the word, so letters must be next to non-letters and
702 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
703 # match the first three letters of the text &quot;jen123&quot; but will return no
704 # matches for &quot;jennifer&quot;.
705 #
706 # Dictionary words containing a large number of characters that are not
707 # letters or digits may result in unexpected findings because such characters
708 # are treated as whitespace. The
709 # [limits](https://cloud.google.com/dlp/limits) page contains details about
710 # the size limits of dictionaries. For dictionaries that do not fit within
711 # these constraints, consider using `LargeCustomDictionaryConfig` in the
712 # `StoredInfoType` API.
713 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
714 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
715 # at least one phrase and every phrase must contain at least 2 characters
716 # that are letters or digits. [required]
717 &quot;A String&quot;,
718 ],
719 },
720 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
721 # is accepted.
722 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
723 # Example: gs://[BUCKET_NAME]/dictionary.txt
724 },
725 },
726 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
727 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
728 # specified, the entire match is returned. No more than 3 may be included.
729 42,
730 ],
731 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
732 # (https://github.com/google/re2/wiki/Syntax) can be found under the
733 # google/re2 repository on GitHub.
734 },
735 &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
736 &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
737 # contained within with a finding of an infoType from this list. For
738 # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
739 # `exclusion_rule` containing `exclude_info_types.info_types` with
740 # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
741 # with EMAIL_ADDRESS finding.
742 # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
743 # finding, namely email address.
744 { # Type of information detected by the API.
745 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
746 # creating a CustomInfoType, or one of the names listed
747 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
748 # a built-in type. InfoType names should conform to the pattern
749 # `[a-zA-Z0-9_]{1,64}`.
750 },
751 ],
752 },
753 &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
754 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700755 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700756 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700757 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700758 ],
759 &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
760 &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
761 # When set within `InspectJobConfig`,
762 # the maximum returned is 2000 regardless if this is set higher.
763 # When set within `InspectContentRequest`, this field is ignored.
764 &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
765 { # Max findings configuration per infoType, per content item or long
766 # running DlpJob.
767 &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
768 &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
769 # info_type should be provided. If InfoTypeLimit does not have an
770 # info_type, the DLP API applies the limit against all info_types that
771 # are found but not specified in another InfoTypeLimit.
772 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
Dan O'Mearadd494642020-05-01 07:42:23 -0700773 # creating a CustomInfoType, or one of the names listed
774 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
775 # a built-in type. InfoType names should conform to the pattern
776 # `[a-zA-Z0-9_]{1,64}`.
777 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700778 },
779 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700780 &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
781 # When set within `InspectContentRequest`, the maximum returned is 2000
782 # regardless if this is set higher.
Dan O'Mearadd494642020-05-01 07:42:23 -0700783 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700784 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700785 &quot;actions&quot;: [ # Actions to execute at the completion of the job.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700786 { # A task to execute on the completion of a job.
787 # See https://cloud.google.com/dlp/docs/concepts-actions to learn more.
Bu Sun Kim65020912020-05-20 12:08:20 -0700788 &quot;publishSummaryToCscc&quot;: { # Publish the result summary of a DlpJob to the Cloud Security # Publish summary to Cloud Security Command Center (Alpha).
789 # Command Center (CSCC Alpha).
790 # This action is only available for projects which are parts of
791 # an organization and whitelisted for the alpha Cloud Security Command
792 # Center.
793 # The action will publish count of finding instances and their info types.
794 # The summary of findings will be persisted in CSCC and are governed by CSCC
795 # service-specific policy, see https://cloud.google.com/terms/service-terms
796 # Only a single instance of this action can be specified.
797 # Compatible with: Inspect
798 },
799 &quot;jobNotificationEmails&quot;: { # Enable email notification to project owners and editors on jobs&#x27;s # Enable email notification for project owners and editors on job&#x27;s
800 # completion/failure.
801 # completion/failure.
802 },
803 &quot;saveFindings&quot;: { # If set, the detailed findings will be persisted to the specified # Save resulting findings in a provided location.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700804 # OutputStorageConfig. Only a single instance of this action can be
805 # specified.
806 # Compatible with: Inspect, Risk
Bu Sun Kim65020912020-05-20 12:08:20 -0700807 &quot;outputConfig&quot;: { # Cloud repository for storing output. # Location to store findings outside of DLP.
Bu Sun Kim65020912020-05-20 12:08:20 -0700808 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Store findings in an existing table or a new table in an existing
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700809 # dataset. If table_id is not set a new one will be generated
810 # for you with the following format:
811 # dlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used for
812 # generating the date details.
813 #
814 # For Inspect, each column in an existing output table must have the same
815 # name, type, and mode of a field in the `Finding` object.
816 #
817 # For Risk, an existing output table should be the output of a previous
818 # Risk analysis job run on the same source table, with the same privacy
819 # metric and quasi-identifiers. Risk jobs that analyze the same table but
820 # compute a different privacy metric, or use different sets of
821 # quasi-identifiers, cannot store their results in the same table.
822 # identified by its project_id, dataset_id, and table_name. Within a query
823 # a table is often referenced with a string in the format of:
Dan O'Mearadd494642020-05-01 07:42:23 -0700824 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
825 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
Bu Sun Kim65020912020-05-20 12:08:20 -0700826 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700827 # If omitted, project ID is inferred from the API call.
Bu Sun Kim65020912020-05-20 12:08:20 -0700828 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
829 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700830 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700831 &quot;outputSchema&quot;: &quot;A String&quot;, # Schema used for writing the findings for Inspect jobs. This field is only
832 # used for Inspect and must be unspecified for Risk jobs. Columns are derived
833 # from the `Finding` object. If appending to an existing table, any columns
834 # from the predefined schema that are missing will be added. No columns in
835 # the existing table will be deleted.
836 #
837 # If unspecified, then all available columns will be used for a new table or
838 # an (existing) table with no schema, and no changes will be made to an
839 # existing table that has a schema.
840 # Only for use with external storage.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700841 },
842 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700843 &quot;pubSub&quot;: { # Publish a message into given Pub/Sub topic when DlpJob has completed. The # Publish a notification to a pubsub topic.
844 # message contains a single field, `DlpJobName`, which is equal to the
845 # finished job&#x27;s
846 # [`DlpJob.name`](/dlp/docs/reference/rest/v2/projects.dlpJobs#DlpJob).
847 # Compatible with: Inspect, Risk
848 &quot;topic&quot;: &quot;A String&quot;, # Cloud Pub/Sub topic to send notifications to. The topic must have given
849 # publishing access rights to the DLP API service account executing
850 # the long running DlpJob sending the notifications.
851 # Format is projects/{project}/topics/{topic}.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700852 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700853 &quot;publishFindingsToCloudDataCatalog&quot;: { # Publish findings of a DlpJob to Cloud Data Catalog. Labels summarizing the # Publish findings to Cloud Datahub.
Dan O'Mearadd494642020-05-01 07:42:23 -0700854 # results of the DlpJob will be applied to the entry for the resource scanned
855 # in Cloud Data Catalog. Any labels previously written by another DlpJob will
856 # be deleted. InfoType naming patterns are strictly enforced when using this
857 # feature. Note that the findings will be persisted in Cloud Data Catalog
858 # storage and are governed by Data Catalog service-specific policy, see
859 # https://cloud.google.com/terms/service-terms
860 # Only a single instance of this action can be specified and only allowed if
861 # all resources being scanned are BigQuery tables.
862 # Compatible with: Inspect
863 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700864 &quot;publishToStackdriver&quot;: { # Enable Stackdriver metric dlp.googleapis.com/finding_count. This # Enable Stackdriver metric dlp.googleapis.com/finding_count.
865 # will publish a metric to stack driver on each infotype requested and
866 # how many findings were found for it. CustomDetectors will be bucketed
867 # as &#x27;Custom&#x27; under the Stackdriver label &#x27;info_type&#x27;.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700868 },
869 },
870 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700871 &quot;storageConfig&quot;: { # Shared message indicating Cloud storage type. # The data to scan.
Bu Sun Kim65020912020-05-20 12:08:20 -0700872 &quot;hybridOptions&quot;: { # Configuration to control jobs where the content being inspected is outside # Hybrid inspection options.
Dan O'Mearadd494642020-05-01 07:42:23 -0700873 # Early access feature is in a pre-release state and might change or have
874 # limited support. For more information, see
875 # https://cloud.google.com/products#product-launch-stages.
876 # of Google Cloud Platform.
Bu Sun Kim65020912020-05-20 12:08:20 -0700877 &quot;labels&quot;: { # To organize findings, these labels will be added to each finding.
Dan O'Mearadd494642020-05-01 07:42:23 -0700878 #
879 # Label keys must be between 1 and 63 characters long and must conform
880 # to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.
881 #
882 # Label values must be between 0 and 63 characters long and must conform
883 # to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.
884 #
885 # No more than 10 labels can be associated with a given finding.
886 #
887 # Examples:
Bu Sun Kim65020912020-05-20 12:08:20 -0700888 # * `&quot;environment&quot; : &quot;production&quot;`
889 # * `&quot;pipeline&quot; : &quot;etl&quot;`
890 &quot;a_key&quot;: &quot;A String&quot;,
Dan O'Mearadd494642020-05-01 07:42:23 -0700891 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700892 &quot;description&quot;: &quot;A String&quot;, # A short description of where the data is coming from. Will be stored once
893 # in the job. 256 max length.
894 &quot;tableOptions&quot;: { # Instructions regarding the table content being inspected. # If the container is a table, additional information to make findings
895 # meaningful such as the columns that are primary keys.
896 &quot;identifyingFields&quot;: [ # The columns that are the primary keys for table objects included in
897 # ContentItem. A copy of this cell&#x27;s value will stored alongside alongside
898 # each finding so that the finding can be traced to the specific row it came
899 # from. No more than 3 may be provided.
900 { # General identifier of a data field in a storage service.
901 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
902 },
903 ],
904 },
905 &quot;requiredFindingLabelKeys&quot;: [ # These are labels that each inspection request must include within their
906 # &#x27;finding_labels&#x27; map. Request may contain others, but any missing one of
Dan O'Mearadd494642020-05-01 07:42:23 -0700907 # these will be rejected.
908 #
909 # Label keys must be between 1 and 63 characters long and must conform
910 # to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.
911 #
912 # No more than 10 keys can be required.
Bu Sun Kim65020912020-05-20 12:08:20 -0700913 &quot;A String&quot;,
Dan O'Mearadd494642020-05-01 07:42:23 -0700914 ],
Dan O'Mearadd494642020-05-01 07:42:23 -0700915 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700916 &quot;datastoreOptions&quot;: { # Options defining a data set within Google Cloud Datastore. # Google Cloud Datastore options.
917 &quot;partitionId&quot;: { # Datastore partition ID. # A partition ID identifies a grouping of entities. The grouping is always
918 # by project and namespace, however the namespace ID may be empty.
919 # A partition ID identifies a grouping of entities. The grouping is always
920 # by project and namespace, however the namespace ID may be empty.
921 #
922 # A partition ID contains several dimensions:
923 # project ID and namespace ID.
924 &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
925 &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
926 },
927 &quot;kind&quot;: { # A representation of a Datastore kind. # The kind to process.
928 &quot;name&quot;: &quot;A String&quot;, # The name of the kind.
929 },
930 },
931 &quot;timespanConfig&quot;: { # Configuration of the timespan of the items to include in scanning.
932 # Currently only supported when inspecting Google Cloud Storage and BigQuery.
933 &quot;timestampField&quot;: { # General identifier of a data field in a storage service. # Specification of the field containing the timestamp of scanned items.
934 # Used for data sources like Datastore and BigQuery.
935 #
936 # For BigQuery:
937 # Required to filter out rows based on the given start and
938 # end times. If not specified and the table was modified between the given
939 # start and end times, the entire table will be scanned.
940 # The valid data types of the timestamp field are: `INTEGER`, `DATE`,
941 # `TIMESTAMP`, or `DATETIME` BigQuery column.
942 #
943 # For Datastore.
944 # Valid data types of the timestamp field are: `TIMESTAMP`.
945 # Datastore entity will be scanned if the timestamp property does not
946 # exist or its value is empty or invalid.
947 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
948 },
949 &quot;enableAutoPopulationOfTimespanConfig&quot;: True or False, # When the job is started by a JobTrigger we will automatically figure out
950 # a valid start_time to avoid scanning files that have not been modified
951 # since the last time the JobTrigger executed. This will be based on the
952 # time of the execution of the last run of the JobTrigger.
953 &quot;endTime&quot;: &quot;A String&quot;, # Exclude files or rows newer than this value.
954 # If set to zero, no upper time limit is applied.
955 &quot;startTime&quot;: &quot;A String&quot;, # Exclude files or rows older than this value.
956 },
957 &quot;cloudStorageOptions&quot;: { # Options defining a file or a set of files within a Google Cloud Storage # Google Cloud Storage options.
958 # bucket.
959 &quot;bytesLimitPerFile&quot;: &quot;A String&quot;, # Max number of bytes to scan from a file. If a scanned file&#x27;s size is bigger
960 # than this value then the rest of the bytes are omitted. Only one
961 # of bytes_limit_per_file and bytes_limit_per_file_percent can be specified.
962 &quot;fileSet&quot;: { # Set of files to scan. # The set of one or more files to scan.
963 &quot;regexFileSet&quot;: { # Message representing a set of files in a Cloud Storage bucket. Regular # The regex-filtered set of files to scan. Exactly one of `url` or
964 # `regex_file_set` must be set.
965 # expressions are used to allow fine-grained control over which files in the
966 # bucket to include.
967 #
968 # Included files are those that match at least one item in `include_regex` and
969 # do not match any items in `exclude_regex`. Note that a file that matches
970 # items from both lists will _not_ be included. For a match to occur, the
971 # entire file path (i.e., everything in the url after the bucket name) must
972 # match the regular expression.
973 #
974 # For example, given the input `{bucket_name: &quot;mybucket&quot;, include_regex:
975 # [&quot;directory1/.*&quot;], exclude_regex:
976 # [&quot;directory1/excluded.*&quot;]}`:
977 #
978 # * `gs://mybucket/directory1/myfile` will be included
979 # * `gs://mybucket/directory1/directory2/myfile` will be included (`.*` matches
980 # across `/`)
981 # * `gs://mybucket/directory0/directory1/myfile` will _not_ be included (the
982 # full path doesn&#x27;t match any items in `include_regex`)
983 # * `gs://mybucket/directory1/excludedfile` will _not_ be included (the path
984 # matches an item in `exclude_regex`)
985 #
986 # If `include_regex` is left empty, it will match all files by default
987 # (this is equivalent to setting `include_regex: [&quot;.*&quot;]`).
988 #
989 # Some other common use cases:
990 #
991 # * `{bucket_name: &quot;mybucket&quot;, exclude_regex: [&quot;.*\.pdf&quot;]}` will include all
992 # files in `mybucket` except for .pdf files
993 # * `{bucket_name: &quot;mybucket&quot;, include_regex: [&quot;directory/[^/]+&quot;]}` will
994 # include all files directly under `gs://mybucket/directory/`, without matching
995 # across `/`
996 &quot;bucketName&quot;: &quot;A String&quot;, # The name of a Cloud Storage bucket. Required.
997 &quot;includeRegex&quot;: [ # A list of regular expressions matching file paths to include. All files in
998 # the bucket that match at least one of these regular expressions will be
999 # included in the set of files, except for those that also match an item in
1000 # `exclude_regex`. Leaving this field empty will match all files by default
1001 # (this is equivalent to including `.*` in the list).
1002 #
1003 # Regular expressions use RE2
1004 # [syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found
1005 # under the google/re2 repository on GitHub.
1006 &quot;A String&quot;,
1007 ],
1008 &quot;excludeRegex&quot;: [ # A list of regular expressions matching file paths to exclude. All files in
1009 # the bucket that match at least one of these regular expressions will be
1010 # excluded from the scan.
1011 #
1012 # Regular expressions use RE2
1013 # [syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found
1014 # under the google/re2 repository on GitHub.
1015 &quot;A String&quot;,
1016 ],
1017 },
1018 &quot;url&quot;: &quot;A String&quot;, # The Cloud Storage url of the file(s) to scan, in the format
1019 # `gs://&lt;bucket&gt;/&lt;path&gt;`. Trailing wildcard in the path is allowed.
1020 #
1021 # If the url ends in a trailing slash, the bucket or directory represented
1022 # by the url will be scanned non-recursively (content in sub-directories
1023 # will not be scanned). This means that `gs://mybucket/` is equivalent to
1024 # `gs://mybucket/*`, and `gs://mybucket/directory/` is equivalent to
1025 # `gs://mybucket/directory/*`.
1026 #
1027 # Exactly one of `url` or `regex_file_set` must be set.
1028 },
1029 &quot;filesLimitPercent&quot;: 42, # Limits the number of files to scan to this percentage of the input FileSet.
1030 # Number of files scanned is rounded down. Must be between 0 and 100,
1031 # inclusively. Both 0 and 100 means no limit. Defaults to 0.
1032 &quot;fileTypes&quot;: [ # List of file type groups to include in the scan.
1033 # If empty, all files are scanned and available data format processors
1034 # are applied. In addition, the binary content of the selected files
1035 # is always scanned as well.
1036 # Images are scanned only as binary if the specified region
1037 # does not support image inspection and no file_types were specified.
1038 # Image inspection is restricted to &#x27;global&#x27;, &#x27;us&#x27;, &#x27;asia&#x27;, and &#x27;europe&#x27;.
1039 &quot;A String&quot;,
1040 ],
1041 &quot;sampleMethod&quot;: &quot;A String&quot;,
1042 &quot;bytesLimitPerFilePercent&quot;: 42, # Max percentage of bytes to scan from a file. The rest are omitted. The
1043 # number of bytes scanned is rounded down. Must be between 0 and 100,
1044 # inclusively. Both 0 and 100 means no limit. Defaults to 0. Only one
1045 # of bytes_limit_per_file and bytes_limit_per_file_percent can be specified.
1046 },
1047 &quot;bigQueryOptions&quot;: { # Options defining BigQuery table and row identifiers. # BigQuery options.
1048 &quot;tableReference&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Complete BigQuery table reference.
1049 # identified by its project_id, dataset_id, and table_name. Within a query
1050 # a table is often referenced with a string in the format of:
1051 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
1052 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
1053 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
1054 # If omitted, project ID is inferred from the API call.
1055 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
1056 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
1057 },
1058 &quot;identifyingFields&quot;: [ # Table fields that may uniquely identify a row within the table. When
1059 # `actions.saveFindings.outputConfig.table` is specified, the values of
1060 # columns specified here are available in the output table under
1061 # `location.content_locations.record_location.record_key.id_values`. Nested
1062 # fields such as `person.birthdate.year` are allowed.
1063 { # General identifier of a data field in a storage service.
1064 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
1065 },
1066 ],
1067 &quot;rowsLimitPercent&quot;: 42, # Max percentage of rows to scan. The rest are omitted. The number of rows
1068 # scanned is rounded down. Must be between 0 and 100, inclusively. Both 0 and
1069 # 100 means no limit. Defaults to 0. Only one of rows_limit and
1070 # rows_limit_percent can be specified. Cannot be used in conjunction with
1071 # TimespanConfig.
1072 &quot;rowsLimit&quot;: &quot;A String&quot;, # Max number of rows to scan. If the table has more rows than this value, the
1073 # rest of the rows are omitted. If not set, or if set to 0, all rows will be
1074 # scanned. Only one of rows_limit and rows_limit_percent can be specified.
1075 # Cannot be used in conjunction with TimespanConfig.
1076 &quot;excludedFields&quot;: [ # References to fields excluded from scanning. This allows you to skip
1077 # inspection of entire columns which you know have no findings.
1078 { # General identifier of a data field in a storage service.
1079 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
1080 },
1081 ],
1082 &quot;sampleMethod&quot;: &quot;A String&quot;,
1083 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001084 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001085 &quot;inspectTemplateName&quot;: &quot;A String&quot;, # If provided, will be used as the default for all values in InspectConfig.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001086 # `inspect_config` will be merged into the values persisted as part of the
1087 # template.
Bu Sun Kim65020912020-05-20 12:08:20 -07001088 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001089 }
1090
1091 x__xgafv: string, V1 error format.
1092 Allowed values
1093 1 - v1 error format
1094 2 - v2 error format
1095
1096Returns:
1097 An object of the form:
1098
1099 { # Combines all of the information about a DLP job.
Bu Sun Kim65020912020-05-20 12:08:20 -07001100 &quot;type&quot;: &quot;A String&quot;, # The type of job.
1101 &quot;endTime&quot;: &quot;A String&quot;, # Time when the job finished.
1102 &quot;startTime&quot;: &quot;A String&quot;, # Time when the job started.
1103 &quot;inspectDetails&quot;: { # The results of an inspect DataSource job. # Results from inspecting a data source.
1104 &quot;requestedOptions&quot;: { # Snapshot of the inspection configuration. # The configuration used for this job.
1105 &quot;snapshotInspectTemplate&quot;: { # The inspectTemplate contains a configuration (set of types of sensitive data # If run with an InspectTemplate, a snapshot of its state at the time of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001106 # this run.
1107 # to be detected) to be used anywhere you otherwise would normally specify
1108 # InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
1109 # to learn more.
Bu Sun Kim65020912020-05-20 12:08:20 -07001110 &quot;name&quot;: &quot;A String&quot;, # Output only. The template name.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001111 #
1112 # The template will have one of the following formats:
1113 # `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR
Dan O'Mearadd494642020-05-01 07:42:23 -07001114 # `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`;
Bu Sun Kim65020912020-05-20 12:08:20 -07001115 &quot;description&quot;: &quot;A String&quot;, # Short description (max 256 chars).
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001116 &quot;displayName&quot;: &quot;A String&quot;, # Display name (max 256 chars).
1117 &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001118 # When used with redactContent only info_types and min_likelihood are currently
1119 # used.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001120 &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
1121 # POSSIBLE.
1122 # See https://cloud.google.com/dlp/docs/likelihood to learn more.
1123 &quot;contentOptions&quot;: [ # List of options defining data content to scan.
1124 # If empty, text, images, and other content will be included.
1125 &quot;A String&quot;,
1126 ],
1127 &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
1128 # InfoType values returned by ListInfoTypes or listed at
1129 # https://cloud.google.com/dlp/docs/infotypes-reference.
1130 #
1131 # When no InfoTypes or CustomInfoTypes are specified in a request, the
1132 # system may automatically choose what detectors to run. By default this may
1133 # be all types, but may change over time as detectors are updated.
1134 #
1135 # If you need precise control and predictability as to what detectors are
1136 # run you should specify specific InfoTypes listed in the reference,
1137 # otherwise a default list will be used, which may change over time.
1138 { # Type of information detected by the API.
1139 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
1140 # creating a CustomInfoType, or one of the names listed
1141 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
1142 # a built-in type. InfoType names should conform to the pattern
1143 # `[a-zA-Z0-9_]{1,64}`.
1144 },
1145 ],
1146 &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
1147 &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
1148 # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
1149 { # Custom information type provided by the user. Used to find domain-specific
1150 # sensitive information configurable to the data in question.
1151 &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
1152 # support reversing.
1153 # such as
1154 # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
1155 # These types of transformations are
1156 # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
1157 # output. This should be used in conjunction with a field on the
1158 # transformation such as `surrogate_info_type`. This CustomInfoType does
1159 # not support the use of `detection_rules`.
1160 },
1161 &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
1162 # altered by a detection rule if the finding meets the criteria specified by
1163 # the rule. Defaults to `VERY_LIKELY` if not specified.
1164 &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
1165 # infoType, when the name matches one of existing infoTypes and that infoType
1166 # is specified in `InspectContent.info_types` field. Specifying the latter
1167 # adds findings to the one detected by the system. If built-in info type is
1168 # not specified in `InspectContent.info_types` list then the name is treated
1169 # as a custom info type.
1170 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
1171 # creating a CustomInfoType, or one of the names listed
1172 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
1173 # a built-in type. InfoType names should conform to the pattern
1174 # `[a-zA-Z0-9_]{1,64}`.
1175 },
1176 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
1177 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
1178 # specified, the entire match is returned. No more than 3 may be included.
1179 42,
1180 ],
1181 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
1182 # (https://github.com/google/re2/wiki/Syntax) can be found under the
1183 # google/re2 repository on GitHub.
1184 },
1185 &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
1186 # Rules are applied in order that they are specified. Not supported for the
1187 # `surrogate_type` CustomInfoType.
1188 { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
1189 # `CustomInfoType` to alter behavior under certain circumstances, depending
1190 # on the specific details of the rule. Not supported for the `surrogate_type`
1191 # custom infoType.
1192 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
1193 # proximity of hotwords.
1194 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
1195 # part of a detection rule.
1196 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
1197 # levels. For example, if a finding would be `POSSIBLE` without the
1198 # detection rule and `relative_likelihood` is 1, then it is upgraded to
1199 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
1200 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
1201 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
1202 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
1203 # a final likelihood of `LIKELY`.
1204 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
1205 },
1206 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
1207 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
1208 # specified, the entire match is returned. No more than 3 may be included.
1209 42,
1210 ],
1211 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
1212 # (https://github.com/google/re2/wiki/Syntax) can be found under the
1213 # google/re2 repository on GitHub.
1214 },
1215 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
1216 # The total length of the window cannot exceed 1000 characters. Note that
1217 # the finding itself will be included in the window, so that hotwords may
1218 # be used to match substrings of the finding itself. For example, the
1219 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
1220 # adjusted upwards if the area code is known to be the local area code of
1221 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
1222 # is the area code in question.
1223 # rule.
1224 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
1225 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
1226 },
1227 },
1228 },
1229 ],
1230 &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
1231 # to be returned. It still can be used for rules matching.
1232 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
1233 # be used to match sensitive information specific to the data, such as a list
1234 # of employee IDs or job titles.
1235 #
1236 # Dictionary words are case-insensitive and all characters other than letters
1237 # and digits in the unicode [Basic Multilingual
1238 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
1239 # will be replaced with whitespace when scanning for matches, so the
1240 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
1241 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
1242 # surrounding any match must be of a different type than the adjacent
1243 # characters within the word, so letters must be next to non-letters and
1244 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
1245 # match the first three letters of the text &quot;jen123&quot; but will return no
1246 # matches for &quot;jennifer&quot;.
1247 #
1248 # Dictionary words containing a large number of characters that are not
1249 # letters or digits may result in unexpected findings because such characters
1250 # are treated as whitespace. The
1251 # [limits](https://cloud.google.com/dlp/limits) page contains details about
1252 # the size limits of dictionaries. For dictionaries that do not fit within
1253 # these constraints, consider using `LargeCustomDictionaryConfig` in the
1254 # `StoredInfoType` API.
1255 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
1256 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
1257 # at least one phrase and every phrase must contain at least 2 characters
1258 # that are letters or digits. [required]
1259 &quot;A String&quot;,
1260 ],
1261 },
1262 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
1263 # is accepted.
1264 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
1265 # Example: gs://[BUCKET_NAME]/dictionary.txt
1266 },
1267 },
1268 &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
1269 # `InspectDataSource`. Not currently supported in `InspectContent`.
1270 &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
1271 # `organizations/433245324/storedInfoTypes/432452342` or
1272 # `projects/project-id/storedInfoTypes/432452342`.
1273 &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
1274 # inspection was created. Output-only field, populated by the system.
1275 },
1276 },
1277 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001278 &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
1279 # included in the response; see Finding.quote.
1280 &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
1281 # Exclusion rules, contained in the set are executed in the end, other
1282 # rules are executed in the order they are specified for each info type.
1283 { # Rule set for modifying a set of infoTypes to alter behavior under certain
1284 # circumstances, depending on the specific details of the rules within the set.
1285 &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
1286 { # Type of information detected by the API.
1287 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001288 # creating a CustomInfoType, or one of the names listed
1289 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
1290 # a built-in type. InfoType names should conform to the pattern
Dan O'Mearadd494642020-05-01 07:42:23 -07001291 # `[a-zA-Z0-9_]{1,64}`.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001292 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001293 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001294 &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001295 { # A single inspection rule to be applied to infoTypes, specified in
1296 # `InspectionRuleSet`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001297 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001298 # proximity of hotwords.
Bu Sun Kim65020912020-05-20 12:08:20 -07001299 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001300 # part of a detection rule.
Bu Sun Kim65020912020-05-20 12:08:20 -07001301 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001302 # levels. For example, if a finding would be `POSSIBLE` without the
1303 # detection rule and `relative_likelihood` is 1, then it is upgraded to
1304 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
1305 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
1306 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
1307 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
1308 # a final likelihood of `LIKELY`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001309 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001310 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001311 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
1312 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001313 # specified, the entire match is returned. No more than 3 may be included.
1314 42,
1315 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001316 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
1317 # (https://github.com/google/re2/wiki/Syntax) can be found under the
1318 # google/re2 repository on GitHub.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001319 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001320 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
1321 # The total length of the window cannot exceed 1000 characters. Note that
1322 # the finding itself will be included in the window, so that hotwords may
1323 # be used to match substrings of the finding itself. For example, the
1324 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
1325 # adjusted upwards if the area code is known to be the local area code of
1326 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
1327 # is the area code in question.
1328 # rule.
1329 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
1330 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001331 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001332 },
1333 &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
1334 # `InspectionRuleSet` are removed from results.
1335 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001336 # be used to match sensitive information specific to the data, such as a list
1337 # of employee IDs or job titles.
1338 #
1339 # Dictionary words are case-insensitive and all characters other than letters
1340 # and digits in the unicode [Basic Multilingual
1341 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
1342 # will be replaced with whitespace when scanning for matches, so the
Bu Sun Kim65020912020-05-20 12:08:20 -07001343 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
1344 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001345 # surrounding any match must be of a different type than the adjacent
1346 # characters within the word, so letters must be next to non-letters and
Bu Sun Kim65020912020-05-20 12:08:20 -07001347 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
1348 # match the first three letters of the text &quot;jen123&quot; but will return no
1349 # matches for &quot;jennifer&quot;.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001350 #
1351 # Dictionary words containing a large number of characters that are not
1352 # letters or digits may result in unexpected findings because such characters
1353 # are treated as whitespace. The
1354 # [limits](https://cloud.google.com/dlp/limits) page contains details about
1355 # the size limits of dictionaries. For dictionaries that do not fit within
1356 # these constraints, consider using `LargeCustomDictionaryConfig` in the
1357 # `StoredInfoType` API.
Bu Sun Kim65020912020-05-20 12:08:20 -07001358 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
1359 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001360 # at least one phrase and every phrase must contain at least 2 characters
1361 # that are letters or digits. [required]
Bu Sun Kim65020912020-05-20 12:08:20 -07001362 &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001363 ],
1364 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001365 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001366 # is accepted.
Bu Sun Kim65020912020-05-20 12:08:20 -07001367 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001368 # Example: gs://[BUCKET_NAME]/dictionary.txt
1369 },
1370 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001371 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
1372 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
1373 # specified, the entire match is returned. No more than 3 may be included.
1374 42,
1375 ],
1376 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
1377 # (https://github.com/google/re2/wiki/Syntax) can be found under the
1378 # google/re2 repository on GitHub.
1379 },
1380 &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
1381 &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
1382 # contained within with a finding of an infoType from this list. For
1383 # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
1384 # `exclusion_rule` containing `exclude_info_types.info_types` with
1385 # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
1386 # with EMAIL_ADDRESS finding.
1387 # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
1388 # finding, namely email address.
1389 { # Type of information detected by the API.
1390 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
1391 # creating a CustomInfoType, or one of the names listed
1392 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
1393 # a built-in type. InfoType names should conform to the pattern
1394 # `[a-zA-Z0-9_]{1,64}`.
1395 },
1396 ],
1397 },
1398 &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001399 },
1400 },
1401 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001402 },
1403 ],
1404 &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
1405 &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
1406 # When set within `InspectJobConfig`,
1407 # the maximum returned is 2000 regardless if this is set higher.
1408 # When set within `InspectContentRequest`, this field is ignored.
1409 &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
1410 { # Max findings configuration per infoType, per content item or long
1411 # running DlpJob.
1412 &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
1413 &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
1414 # info_type should be provided. If InfoTypeLimit does not have an
1415 # info_type, the DLP API applies the limit against all info_types that
1416 # are found but not specified in another InfoTypeLimit.
1417 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001418 # creating a CustomInfoType, or one of the names listed
1419 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
1420 # a built-in type. InfoType names should conform to the pattern
Dan O'Mearadd494642020-05-01 07:42:23 -07001421 # `[a-zA-Z0-9_]{1,64}`.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001422 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001423 },
1424 ],
1425 &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
1426 # When set within `InspectContentRequest`, the maximum returned is 2000
1427 # regardless if this is set higher.
1428 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001429 },
1430 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of an inspectTemplate.
1431 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of an inspectTemplate.
1432 },
1433 &quot;jobConfig&quot;: { # Controls what and how to inspect for findings. # Inspect config.
1434 &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # How and what to scan for.
1435 # When used with redactContent only info_types and min_likelihood are currently
1436 # used.
1437 &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
1438 # POSSIBLE.
1439 # See https://cloud.google.com/dlp/docs/likelihood to learn more.
Bu Sun Kim65020912020-05-20 12:08:20 -07001440 &quot;contentOptions&quot;: [ # List of options defining data content to scan.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001441 # If empty, text, images, and other content will be included.
Bu Sun Kim65020912020-05-20 12:08:20 -07001442 &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001443 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001444 &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001445 # InfoType values returned by ListInfoTypes or listed at
1446 # https://cloud.google.com/dlp/docs/infotypes-reference.
1447 #
1448 # When no InfoTypes or CustomInfoTypes are specified in a request, the
1449 # system may automatically choose what detectors to run. By default this may
1450 # be all types, but may change over time as detectors are updated.
1451 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001452 # If you need precise control and predictability as to what detectors are
1453 # run you should specify specific InfoTypes listed in the reference,
1454 # otherwise a default list will be used, which may change over time.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001455 { # Type of information detected by the API.
Bu Sun Kim65020912020-05-20 12:08:20 -07001456 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001457 # creating a CustomInfoType, or one of the names listed
1458 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
1459 # a built-in type. InfoType names should conform to the pattern
Dan O'Mearadd494642020-05-01 07:42:23 -07001460 # `[a-zA-Z0-9_]{1,64}`.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001461 },
1462 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001463 &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
1464 &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
1465 # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
1466 { # Custom information type provided by the user. Used to find domain-specific
1467 # sensitive information configurable to the data in question.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001468 &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
1469 # support reversing.
1470 # such as
1471 # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
1472 # These types of transformations are
1473 # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
1474 # output. This should be used in conjunction with a field on the
1475 # transformation such as `surrogate_info_type`. This CustomInfoType does
1476 # not support the use of `detection_rules`.
1477 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001478 &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
1479 # altered by a detection rule if the finding meets the criteria specified by
1480 # the rule. Defaults to `VERY_LIKELY` if not specified.
1481 &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
1482 # infoType, when the name matches one of existing infoTypes and that infoType
1483 # is specified in `InspectContent.info_types` field. Specifying the latter
1484 # adds findings to the one detected by the system. If built-in info type is
1485 # not specified in `InspectContent.info_types` list then the name is treated
1486 # as a custom info type.
1487 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
1488 # creating a CustomInfoType, or one of the names listed
1489 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
1490 # a built-in type. InfoType names should conform to the pattern
1491 # `[a-zA-Z0-9_]{1,64}`.
1492 },
1493 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
1494 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
1495 # specified, the entire match is returned. No more than 3 may be included.
1496 42,
1497 ],
1498 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
1499 # (https://github.com/google/re2/wiki/Syntax) can be found under the
1500 # google/re2 repository on GitHub.
1501 },
1502 &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
1503 # Rules are applied in order that they are specified. Not supported for the
1504 # `surrogate_type` CustomInfoType.
1505 { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
1506 # `CustomInfoType` to alter behavior under certain circumstances, depending
1507 # on the specific details of the rule. Not supported for the `surrogate_type`
1508 # custom infoType.
1509 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
1510 # proximity of hotwords.
1511 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
1512 # part of a detection rule.
1513 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
1514 # levels. For example, if a finding would be `POSSIBLE` without the
1515 # detection rule and `relative_likelihood` is 1, then it is upgraded to
1516 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
1517 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
1518 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
1519 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
1520 # a final likelihood of `LIKELY`.
1521 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
1522 },
1523 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
1524 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
1525 # specified, the entire match is returned. No more than 3 may be included.
1526 42,
1527 ],
1528 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
1529 # (https://github.com/google/re2/wiki/Syntax) can be found under the
1530 # google/re2 repository on GitHub.
1531 },
1532 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
1533 # The total length of the window cannot exceed 1000 characters. Note that
1534 # the finding itself will be included in the window, so that hotwords may
1535 # be used to match substrings of the finding itself. For example, the
1536 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
1537 # adjusted upwards if the area code is known to be the local area code of
1538 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
1539 # is the area code in question.
1540 # rule.
1541 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
1542 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
1543 },
1544 },
1545 },
1546 ],
1547 &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
1548 # to be returned. It still can be used for rules matching.
1549 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
1550 # be used to match sensitive information specific to the data, such as a list
1551 # of employee IDs or job titles.
1552 #
1553 # Dictionary words are case-insensitive and all characters other than letters
1554 # and digits in the unicode [Basic Multilingual
1555 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
1556 # will be replaced with whitespace when scanning for matches, so the
1557 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
1558 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
1559 # surrounding any match must be of a different type than the adjacent
1560 # characters within the word, so letters must be next to non-letters and
1561 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
1562 # match the first three letters of the text &quot;jen123&quot; but will return no
1563 # matches for &quot;jennifer&quot;.
1564 #
1565 # Dictionary words containing a large number of characters that are not
1566 # letters or digits may result in unexpected findings because such characters
1567 # are treated as whitespace. The
1568 # [limits](https://cloud.google.com/dlp/limits) page contains details about
1569 # the size limits of dictionaries. For dictionaries that do not fit within
1570 # these constraints, consider using `LargeCustomDictionaryConfig` in the
1571 # `StoredInfoType` API.
1572 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
1573 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
1574 # at least one phrase and every phrase must contain at least 2 characters
1575 # that are letters or digits. [required]
1576 &quot;A String&quot;,
1577 ],
1578 },
1579 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
1580 # is accepted.
1581 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
1582 # Example: gs://[BUCKET_NAME]/dictionary.txt
1583 },
1584 },
1585 &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
1586 # `InspectDataSource`. Not currently supported in `InspectContent`.
1587 &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
1588 # `organizations/433245324/storedInfoTypes/432452342` or
1589 # `projects/project-id/storedInfoTypes/432452342`.
1590 &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
1591 # inspection was created. Output-only field, populated by the system.
1592 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001593 },
1594 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001595 &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
1596 # included in the response; see Finding.quote.
1597 &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
1598 # Exclusion rules, contained in the set are executed in the end, other
1599 # rules are executed in the order they are specified for each info type.
1600 { # Rule set for modifying a set of infoTypes to alter behavior under certain
1601 # circumstances, depending on the specific details of the rules within the set.
1602 &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
1603 { # Type of information detected by the API.
1604 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
1605 # creating a CustomInfoType, or one of the names listed
1606 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
1607 # a built-in type. InfoType names should conform to the pattern
1608 # `[a-zA-Z0-9_]{1,64}`.
1609 },
1610 ],
1611 &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
1612 { # A single inspection rule to be applied to infoTypes, specified in
1613 # `InspectionRuleSet`.
1614 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
1615 # proximity of hotwords.
1616 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
1617 # part of a detection rule.
1618 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
1619 # levels. For example, if a finding would be `POSSIBLE` without the
1620 # detection rule and `relative_likelihood` is 1, then it is upgraded to
1621 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
1622 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
1623 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
1624 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
1625 # a final likelihood of `LIKELY`.
1626 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
1627 },
1628 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
1629 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
1630 # specified, the entire match is returned. No more than 3 may be included.
1631 42,
1632 ],
1633 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
1634 # (https://github.com/google/re2/wiki/Syntax) can be found under the
1635 # google/re2 repository on GitHub.
1636 },
1637 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
1638 # The total length of the window cannot exceed 1000 characters. Note that
1639 # the finding itself will be included in the window, so that hotwords may
1640 # be used to match substrings of the finding itself. For example, the
1641 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
1642 # adjusted upwards if the area code is known to be the local area code of
1643 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
1644 # is the area code in question.
1645 # rule.
1646 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
1647 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
1648 },
1649 },
1650 &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
1651 # `InspectionRuleSet` are removed from results.
1652 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
1653 # be used to match sensitive information specific to the data, such as a list
1654 # of employee IDs or job titles.
1655 #
1656 # Dictionary words are case-insensitive and all characters other than letters
1657 # and digits in the unicode [Basic Multilingual
1658 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
1659 # will be replaced with whitespace when scanning for matches, so the
1660 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
1661 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
1662 # surrounding any match must be of a different type than the adjacent
1663 # characters within the word, so letters must be next to non-letters and
1664 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
1665 # match the first three letters of the text &quot;jen123&quot; but will return no
1666 # matches for &quot;jennifer&quot;.
1667 #
1668 # Dictionary words containing a large number of characters that are not
1669 # letters or digits may result in unexpected findings because such characters
1670 # are treated as whitespace. The
1671 # [limits](https://cloud.google.com/dlp/limits) page contains details about
1672 # the size limits of dictionaries. For dictionaries that do not fit within
1673 # these constraints, consider using `LargeCustomDictionaryConfig` in the
1674 # `StoredInfoType` API.
1675 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
1676 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
1677 # at least one phrase and every phrase must contain at least 2 characters
1678 # that are letters or digits. [required]
1679 &quot;A String&quot;,
1680 ],
1681 },
1682 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
1683 # is accepted.
1684 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
1685 # Example: gs://[BUCKET_NAME]/dictionary.txt
1686 },
1687 },
1688 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
1689 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
1690 # specified, the entire match is returned. No more than 3 may be included.
1691 42,
1692 ],
1693 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
1694 # (https://github.com/google/re2/wiki/Syntax) can be found under the
1695 # google/re2 repository on GitHub.
1696 },
1697 &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
1698 &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
1699 # contained within with a finding of an infoType from this list. For
1700 # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
1701 # `exclusion_rule` containing `exclude_info_types.info_types` with
1702 # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
1703 # with EMAIL_ADDRESS finding.
1704 # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
1705 # finding, namely email address.
1706 { # Type of information detected by the API.
1707 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
1708 # creating a CustomInfoType, or one of the names listed
1709 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
1710 # a built-in type. InfoType names should conform to the pattern
1711 # `[a-zA-Z0-9_]{1,64}`.
1712 },
1713 ],
1714 },
1715 &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
1716 },
1717 },
1718 ],
1719 },
1720 ],
1721 &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
1722 &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
1723 # When set within `InspectJobConfig`,
1724 # the maximum returned is 2000 regardless if this is set higher.
1725 # When set within `InspectContentRequest`, this field is ignored.
1726 &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
1727 { # Max findings configuration per infoType, per content item or long
1728 # running DlpJob.
1729 &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
1730 &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
1731 # info_type should be provided. If InfoTypeLimit does not have an
1732 # info_type, the DLP API applies the limit against all info_types that
1733 # are found but not specified in another InfoTypeLimit.
1734 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
1735 # creating a CustomInfoType, or one of the names listed
1736 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
1737 # a built-in type. InfoType names should conform to the pattern
1738 # `[a-zA-Z0-9_]{1,64}`.
1739 },
1740 },
1741 ],
1742 &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
1743 # When set within `InspectContentRequest`, the maximum returned is 2000
1744 # regardless if this is set higher.
1745 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001746 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001747 &quot;actions&quot;: [ # Actions to execute at the completion of the job.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001748 { # A task to execute on the completion of a job.
1749 # See https://cloud.google.com/dlp/docs/concepts-actions to learn more.
Bu Sun Kim65020912020-05-20 12:08:20 -07001750 &quot;publishSummaryToCscc&quot;: { # Publish the result summary of a DlpJob to the Cloud Security # Publish summary to Cloud Security Command Center (Alpha).
1751 # Command Center (CSCC Alpha).
1752 # This action is only available for projects which are parts of
1753 # an organization and whitelisted for the alpha Cloud Security Command
1754 # Center.
1755 # The action will publish count of finding instances and their info types.
1756 # The summary of findings will be persisted in CSCC and are governed by CSCC
1757 # service-specific policy, see https://cloud.google.com/terms/service-terms
1758 # Only a single instance of this action can be specified.
1759 # Compatible with: Inspect
1760 },
1761 &quot;jobNotificationEmails&quot;: { # Enable email notification to project owners and editors on jobs&#x27;s # Enable email notification for project owners and editors on job&#x27;s
1762 # completion/failure.
1763 # completion/failure.
1764 },
1765 &quot;saveFindings&quot;: { # If set, the detailed findings will be persisted to the specified # Save resulting findings in a provided location.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001766 # OutputStorageConfig. Only a single instance of this action can be
1767 # specified.
1768 # Compatible with: Inspect, Risk
Bu Sun Kim65020912020-05-20 12:08:20 -07001769 &quot;outputConfig&quot;: { # Cloud repository for storing output. # Location to store findings outside of DLP.
Bu Sun Kim65020912020-05-20 12:08:20 -07001770 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Store findings in an existing table or a new table in an existing
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001771 # dataset. If table_id is not set a new one will be generated
1772 # for you with the following format:
1773 # dlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used for
1774 # generating the date details.
1775 #
1776 # For Inspect, each column in an existing output table must have the same
1777 # name, type, and mode of a field in the `Finding` object.
1778 #
1779 # For Risk, an existing output table should be the output of a previous
1780 # Risk analysis job run on the same source table, with the same privacy
1781 # metric and quasi-identifiers. Risk jobs that analyze the same table but
1782 # compute a different privacy metric, or use different sets of
1783 # quasi-identifiers, cannot store their results in the same table.
1784 # identified by its project_id, dataset_id, and table_name. Within a query
1785 # a table is often referenced with a string in the format of:
Dan O'Mearadd494642020-05-01 07:42:23 -07001786 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
1787 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001788 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001789 # If omitted, project ID is inferred from the API call.
Bu Sun Kim65020912020-05-20 12:08:20 -07001790 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
1791 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001792 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001793 &quot;outputSchema&quot;: &quot;A String&quot;, # Schema used for writing the findings for Inspect jobs. This field is only
1794 # used for Inspect and must be unspecified for Risk jobs. Columns are derived
1795 # from the `Finding` object. If appending to an existing table, any columns
1796 # from the predefined schema that are missing will be added. No columns in
1797 # the existing table will be deleted.
1798 #
1799 # If unspecified, then all available columns will be used for a new table or
1800 # an (existing) table with no schema, and no changes will be made to an
1801 # existing table that has a schema.
1802 # Only for use with external storage.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001803 },
1804 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001805 &quot;pubSub&quot;: { # Publish a message into given Pub/Sub topic when DlpJob has completed. The # Publish a notification to a pubsub topic.
1806 # message contains a single field, `DlpJobName`, which is equal to the
1807 # finished job&#x27;s
1808 # [`DlpJob.name`](/dlp/docs/reference/rest/v2/projects.dlpJobs#DlpJob).
1809 # Compatible with: Inspect, Risk
1810 &quot;topic&quot;: &quot;A String&quot;, # Cloud Pub/Sub topic to send notifications to. The topic must have given
1811 # publishing access rights to the DLP API service account executing
1812 # the long running DlpJob sending the notifications.
1813 # Format is projects/{project}/topics/{topic}.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001814 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001815 &quot;publishFindingsToCloudDataCatalog&quot;: { # Publish findings of a DlpJob to Cloud Data Catalog. Labels summarizing the # Publish findings to Cloud Datahub.
Dan O'Mearadd494642020-05-01 07:42:23 -07001816 # results of the DlpJob will be applied to the entry for the resource scanned
1817 # in Cloud Data Catalog. Any labels previously written by another DlpJob will
1818 # be deleted. InfoType naming patterns are strictly enforced when using this
1819 # feature. Note that the findings will be persisted in Cloud Data Catalog
1820 # storage and are governed by Data Catalog service-specific policy, see
1821 # https://cloud.google.com/terms/service-terms
1822 # Only a single instance of this action can be specified and only allowed if
1823 # all resources being scanned are BigQuery tables.
1824 # Compatible with: Inspect
1825 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001826 &quot;publishToStackdriver&quot;: { # Enable Stackdriver metric dlp.googleapis.com/finding_count. This # Enable Stackdriver metric dlp.googleapis.com/finding_count.
1827 # will publish a metric to stack driver on each infotype requested and
1828 # how many findings were found for it. CustomDetectors will be bucketed
1829 # as &#x27;Custom&#x27; under the Stackdriver label &#x27;info_type&#x27;.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001830 },
1831 },
1832 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001833 &quot;storageConfig&quot;: { # Shared message indicating Cloud storage type. # The data to scan.
Bu Sun Kim65020912020-05-20 12:08:20 -07001834 &quot;hybridOptions&quot;: { # Configuration to control jobs where the content being inspected is outside # Hybrid inspection options.
1835 # Early access feature is in a pre-release state and might change or have
1836 # limited support. For more information, see
1837 # https://cloud.google.com/products#product-launch-stages.
1838 # of Google Cloud Platform.
1839 &quot;labels&quot;: { # To organize findings, these labels will be added to each finding.
1840 #
1841 # Label keys must be between 1 and 63 characters long and must conform
1842 # to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.
1843 #
1844 # Label values must be between 0 and 63 characters long and must conform
1845 # to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.
1846 #
1847 # No more than 10 labels can be associated with a given finding.
1848 #
1849 # Examples:
1850 # * `&quot;environment&quot; : &quot;production&quot;`
1851 # * `&quot;pipeline&quot; : &quot;etl&quot;`
1852 &quot;a_key&quot;: &quot;A String&quot;,
1853 },
1854 &quot;description&quot;: &quot;A String&quot;, # A short description of where the data is coming from. Will be stored once
1855 # in the job. 256 max length.
1856 &quot;tableOptions&quot;: { # Instructions regarding the table content being inspected. # If the container is a table, additional information to make findings
1857 # meaningful such as the columns that are primary keys.
1858 &quot;identifyingFields&quot;: [ # The columns that are the primary keys for table objects included in
1859 # ContentItem. A copy of this cell&#x27;s value will stored alongside alongside
1860 # each finding so that the finding can be traced to the specific row it came
1861 # from. No more than 3 may be provided.
1862 { # General identifier of a data field in a storage service.
1863 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
1864 },
1865 ],
1866 },
1867 &quot;requiredFindingLabelKeys&quot;: [ # These are labels that each inspection request must include within their
1868 # &#x27;finding_labels&#x27; map. Request may contain others, but any missing one of
1869 # these will be rejected.
1870 #
1871 # Label keys must be between 1 and 63 characters long and must conform
1872 # to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.
1873 #
1874 # No more than 10 keys can be required.
1875 &quot;A String&quot;,
1876 ],
1877 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001878 &quot;datastoreOptions&quot;: { # Options defining a data set within Google Cloud Datastore. # Google Cloud Datastore options.
1879 &quot;partitionId&quot;: { # Datastore partition ID. # A partition ID identifies a grouping of entities. The grouping is always
1880 # by project and namespace, however the namespace ID may be empty.
1881 # A partition ID identifies a grouping of entities. The grouping is always
1882 # by project and namespace, however the namespace ID may be empty.
1883 #
1884 # A partition ID contains several dimensions:
1885 # project ID and namespace ID.
1886 &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
1887 &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
1888 },
1889 &quot;kind&quot;: { # A representation of a Datastore kind. # The kind to process.
1890 &quot;name&quot;: &quot;A String&quot;, # The name of the kind.
1891 },
1892 },
1893 &quot;timespanConfig&quot;: { # Configuration of the timespan of the items to include in scanning.
1894 # Currently only supported when inspecting Google Cloud Storage and BigQuery.
1895 &quot;timestampField&quot;: { # General identifier of a data field in a storage service. # Specification of the field containing the timestamp of scanned items.
1896 # Used for data sources like Datastore and BigQuery.
1897 #
1898 # For BigQuery:
1899 # Required to filter out rows based on the given start and
1900 # end times. If not specified and the table was modified between the given
1901 # start and end times, the entire table will be scanned.
1902 # The valid data types of the timestamp field are: `INTEGER`, `DATE`,
1903 # `TIMESTAMP`, or `DATETIME` BigQuery column.
1904 #
1905 # For Datastore.
1906 # Valid data types of the timestamp field are: `TIMESTAMP`.
1907 # Datastore entity will be scanned if the timestamp property does not
1908 # exist or its value is empty or invalid.
1909 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
1910 },
1911 &quot;enableAutoPopulationOfTimespanConfig&quot;: True or False, # When the job is started by a JobTrigger we will automatically figure out
1912 # a valid start_time to avoid scanning files that have not been modified
1913 # since the last time the JobTrigger executed. This will be based on the
1914 # time of the execution of the last run of the JobTrigger.
1915 &quot;endTime&quot;: &quot;A String&quot;, # Exclude files or rows newer than this value.
1916 # If set to zero, no upper time limit is applied.
1917 &quot;startTime&quot;: &quot;A String&quot;, # Exclude files or rows older than this value.
1918 },
1919 &quot;cloudStorageOptions&quot;: { # Options defining a file or a set of files within a Google Cloud Storage # Google Cloud Storage options.
1920 # bucket.
1921 &quot;bytesLimitPerFile&quot;: &quot;A String&quot;, # Max number of bytes to scan from a file. If a scanned file&#x27;s size is bigger
1922 # than this value then the rest of the bytes are omitted. Only one
1923 # of bytes_limit_per_file and bytes_limit_per_file_percent can be specified.
1924 &quot;fileSet&quot;: { # Set of files to scan. # The set of one or more files to scan.
1925 &quot;regexFileSet&quot;: { # Message representing a set of files in a Cloud Storage bucket. Regular # The regex-filtered set of files to scan. Exactly one of `url` or
1926 # `regex_file_set` must be set.
1927 # expressions are used to allow fine-grained control over which files in the
1928 # bucket to include.
1929 #
1930 # Included files are those that match at least one item in `include_regex` and
1931 # do not match any items in `exclude_regex`. Note that a file that matches
1932 # items from both lists will _not_ be included. For a match to occur, the
1933 # entire file path (i.e., everything in the url after the bucket name) must
1934 # match the regular expression.
1935 #
1936 # For example, given the input `{bucket_name: &quot;mybucket&quot;, include_regex:
1937 # [&quot;directory1/.*&quot;], exclude_regex:
1938 # [&quot;directory1/excluded.*&quot;]}`:
1939 #
1940 # * `gs://mybucket/directory1/myfile` will be included
1941 # * `gs://mybucket/directory1/directory2/myfile` will be included (`.*` matches
1942 # across `/`)
1943 # * `gs://mybucket/directory0/directory1/myfile` will _not_ be included (the
1944 # full path doesn&#x27;t match any items in `include_regex`)
1945 # * `gs://mybucket/directory1/excludedfile` will _not_ be included (the path
1946 # matches an item in `exclude_regex`)
1947 #
1948 # If `include_regex` is left empty, it will match all files by default
1949 # (this is equivalent to setting `include_regex: [&quot;.*&quot;]`).
1950 #
1951 # Some other common use cases:
1952 #
1953 # * `{bucket_name: &quot;mybucket&quot;, exclude_regex: [&quot;.*\.pdf&quot;]}` will include all
1954 # files in `mybucket` except for .pdf files
1955 # * `{bucket_name: &quot;mybucket&quot;, include_regex: [&quot;directory/[^/]+&quot;]}` will
1956 # include all files directly under `gs://mybucket/directory/`, without matching
1957 # across `/`
1958 &quot;bucketName&quot;: &quot;A String&quot;, # The name of a Cloud Storage bucket. Required.
1959 &quot;includeRegex&quot;: [ # A list of regular expressions matching file paths to include. All files in
1960 # the bucket that match at least one of these regular expressions will be
1961 # included in the set of files, except for those that also match an item in
1962 # `exclude_regex`. Leaving this field empty will match all files by default
1963 # (this is equivalent to including `.*` in the list).
1964 #
1965 # Regular expressions use RE2
1966 # [syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found
1967 # under the google/re2 repository on GitHub.
1968 &quot;A String&quot;,
1969 ],
1970 &quot;excludeRegex&quot;: [ # A list of regular expressions matching file paths to exclude. All files in
1971 # the bucket that match at least one of these regular expressions will be
1972 # excluded from the scan.
1973 #
1974 # Regular expressions use RE2
1975 # [syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found
1976 # under the google/re2 repository on GitHub.
1977 &quot;A String&quot;,
1978 ],
1979 },
1980 &quot;url&quot;: &quot;A String&quot;, # The Cloud Storage url of the file(s) to scan, in the format
1981 # `gs://&lt;bucket&gt;/&lt;path&gt;`. Trailing wildcard in the path is allowed.
1982 #
1983 # If the url ends in a trailing slash, the bucket or directory represented
1984 # by the url will be scanned non-recursively (content in sub-directories
1985 # will not be scanned). This means that `gs://mybucket/` is equivalent to
1986 # `gs://mybucket/*`, and `gs://mybucket/directory/` is equivalent to
1987 # `gs://mybucket/directory/*`.
1988 #
1989 # Exactly one of `url` or `regex_file_set` must be set.
1990 },
1991 &quot;filesLimitPercent&quot;: 42, # Limits the number of files to scan to this percentage of the input FileSet.
1992 # Number of files scanned is rounded down. Must be between 0 and 100,
1993 # inclusively. Both 0 and 100 means no limit. Defaults to 0.
1994 &quot;fileTypes&quot;: [ # List of file type groups to include in the scan.
1995 # If empty, all files are scanned and available data format processors
1996 # are applied. In addition, the binary content of the selected files
1997 # is always scanned as well.
1998 # Images are scanned only as binary if the specified region
1999 # does not support image inspection and no file_types were specified.
2000 # Image inspection is restricted to &#x27;global&#x27;, &#x27;us&#x27;, &#x27;asia&#x27;, and &#x27;europe&#x27;.
2001 &quot;A String&quot;,
2002 ],
2003 &quot;sampleMethod&quot;: &quot;A String&quot;,
2004 &quot;bytesLimitPerFilePercent&quot;: 42, # Max percentage of bytes to scan from a file. The rest are omitted. The
2005 # number of bytes scanned is rounded down. Must be between 0 and 100,
2006 # inclusively. Both 0 and 100 means no limit. Defaults to 0. Only one
2007 # of bytes_limit_per_file and bytes_limit_per_file_percent can be specified.
2008 },
2009 &quot;bigQueryOptions&quot;: { # Options defining BigQuery table and row identifiers. # BigQuery options.
2010 &quot;tableReference&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Complete BigQuery table reference.
2011 # identified by its project_id, dataset_id, and table_name. Within a query
2012 # a table is often referenced with a string in the format of:
2013 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
2014 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
2015 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
2016 # If omitted, project ID is inferred from the API call.
2017 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
2018 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
2019 },
2020 &quot;identifyingFields&quot;: [ # Table fields that may uniquely identify a row within the table. When
2021 # `actions.saveFindings.outputConfig.table` is specified, the values of
2022 # columns specified here are available in the output table under
2023 # `location.content_locations.record_location.record_key.id_values`. Nested
2024 # fields such as `person.birthdate.year` are allowed.
2025 { # General identifier of a data field in a storage service.
2026 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2027 },
2028 ],
2029 &quot;rowsLimitPercent&quot;: 42, # Max percentage of rows to scan. The rest are omitted. The number of rows
2030 # scanned is rounded down. Must be between 0 and 100, inclusively. Both 0 and
2031 # 100 means no limit. Defaults to 0. Only one of rows_limit and
2032 # rows_limit_percent can be specified. Cannot be used in conjunction with
2033 # TimespanConfig.
2034 &quot;rowsLimit&quot;: &quot;A String&quot;, # Max number of rows to scan. If the table has more rows than this value, the
2035 # rest of the rows are omitted. If not set, or if set to 0, all rows will be
2036 # scanned. Only one of rows_limit and rows_limit_percent can be specified.
2037 # Cannot be used in conjunction with TimespanConfig.
2038 &quot;excludedFields&quot;: [ # References to fields excluded from scanning. This allows you to skip
2039 # inspection of entire columns which you know have no findings.
2040 { # General identifier of a data field in a storage service.
2041 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2042 },
2043 ],
2044 &quot;sampleMethod&quot;: &quot;A String&quot;,
2045 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002046 },
2047 &quot;inspectTemplateName&quot;: &quot;A String&quot;, # If provided, will be used as the default for all values in InspectConfig.
2048 # `inspect_config` will be merged into the values persisted as part of the
2049 # template.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002050 },
2051 },
Bu Sun Kim65020912020-05-20 12:08:20 -07002052 &quot;result&quot;: { # All result fields mentioned below are updated while the job is processing. # A summary of the outcome of this inspect job.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002053 &quot;processedBytes&quot;: &quot;A String&quot;, # Total size in bytes that were processed.
Bu Sun Kim65020912020-05-20 12:08:20 -07002054 &quot;hybridStats&quot;: { # Statistics related to processing hybrid inspect requests. # Statistics related to the processing of hybrid inspect.
2055 # Early access feature is in a pre-release state and might change or have
2056 # limited support. For more information, see
2057 # https://cloud.google.com/products#product-launch-stages.
Bu Sun Kim65020912020-05-20 12:08:20 -07002058 &quot;pendingCount&quot;: &quot;A String&quot;, # The number of hybrid requests currently being processed. Only populated
2059 # when called via method `getDlpJob`.
2060 # A burst of traffic may cause hybrid inspect requests to be enqueued.
2061 # Processing will take place as quickly as possible, but resource limitations
2062 # may impact how long a request is enqueued for.
2063 &quot;processedCount&quot;: &quot;A String&quot;, # The number of hybrid inspection requests processed within this job.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002064 &quot;abortedCount&quot;: &quot;A String&quot;, # The number of hybrid inspection requests aborted because the job ran
2065 # out of quota or was ended before they could be processed.
Bu Sun Kim65020912020-05-20 12:08:20 -07002066 },
2067 &quot;infoTypeStats&quot;: [ # Statistics of how many instances of each info type were found during
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002068 # inspect job.
2069 { # Statistics regarding a specific InfoType.
Bu Sun Kim65020912020-05-20 12:08:20 -07002070 &quot;infoType&quot;: { # Type of information detected by the API. # The type of finding this stat is for.
2071 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002072 # creating a CustomInfoType, or one of the names listed
2073 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
2074 # a built-in type. InfoType names should conform to the pattern
Dan O'Mearadd494642020-05-01 07:42:23 -07002075 # `[a-zA-Z0-9_]{1,64}`.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002076 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002077 &quot;count&quot;: &quot;A String&quot;, # Number of findings for this infoType.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002078 },
2079 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07002080 &quot;totalEstimatedBytes&quot;: &quot;A String&quot;, # Estimate of the number of bytes to process.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002081 },
2082 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002083 &quot;createTime&quot;: &quot;A String&quot;, # Time when the job was created.
2084 &quot;state&quot;: &quot;A String&quot;, # State of a job.
2085 &quot;jobTriggerName&quot;: &quot;A String&quot;, # If created by a job trigger, the resource name of the trigger that
2086 # instantiated the job.
2087 &quot;riskDetails&quot;: { # Result of a risk analysis operation request. # Results from analyzing risk of a data source.
2088 &quot;requestedPrivacyMetric&quot;: { # Privacy metric to compute for reidentification risk analysis. # Privacy metric to compute.
2089 &quot;deltaPresenceEstimationConfig&quot;: { # δ-presence metric, used to estimate how likely it is for an attacker to # delta-presence
2090 # figure out that one given individual appears in a de-identified dataset.
2091 # Similarly to the k-map metric, we cannot compute δ-presence exactly without
2092 # knowing the attack dataset, so we use a statistical model instead.
2093 &quot;regionCode&quot;: &quot;A String&quot;, # ISO 3166-1 alpha-2 region code to use in the statistical modeling.
2094 # Set if no column is tagged with a region-specific InfoType (like
2095 # US_ZIP_5) or a region code.
2096 &quot;auxiliaryTables&quot;: [ # Several auxiliary tables can be used in the analysis. Each custom_tag
2097 # used to tag a quasi-identifiers field must appear in exactly one
2098 # field of one auxiliary table.
2099 { # An auxiliary table containing statistical information on the relative
2100 # frequency of different quasi-identifiers values. It has one or several
2101 # quasi-identifiers columns, and one column that indicates the relative
2102 # frequency of each quasi-identifier tuple.
2103 # If a tuple is present in the data but not in the auxiliary table, the
2104 # corresponding relative frequency is assumed to be zero (and thus, the
2105 # tuple is highly reidentifiable).
2106 &quot;quasiIds&quot;: [ # Required. Quasi-identifier columns.
2107 { # A quasi-identifier column has a custom_tag, used to know which column
2108 # in the data corresponds to which column in the statistical model.
2109 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
2110 # indicate an auxiliary table that contains statistical information on
2111 # the possible values of this column (below).
2112 &quot;field&quot;: { # General identifier of a data field in a storage service. # Identifies the column.
2113 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2114 },
2115 },
2116 ],
2117 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Required. Auxiliary table location.
2118 # identified by its project_id, dataset_id, and table_name. Within a query
2119 # a table is often referenced with a string in the format of:
2120 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
2121 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
2122 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
2123 # If omitted, project ID is inferred from the API call.
2124 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
2125 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
2126 },
2127 &quot;relativeFrequency&quot;: { # General identifier of a data field in a storage service. # Required. The relative frequency column must contain a floating-point number
2128 # between 0 and 1 (inclusive). Null values are assumed to be zero.
2129 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2130 },
2131 },
2132 ],
2133 &quot;quasiIds&quot;: [ # Required. Fields considered to be quasi-identifiers. No two fields can have the
2134 # same tag.
2135 { # A column with a semantic tag attached.
2136 &quot;field&quot;: { # General identifier of a data field in a storage service. # Required. Identifies the column.
2137 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2138 },
2139 &quot;infoType&quot;: { # Type of information detected by the API. # A column can be tagged with a InfoType to use the relevant public
2140 # dataset as a statistical model of population, if available. We
2141 # currently support US ZIP codes, region codes, ages and genders.
2142 # To programmatically obtain the list of supported InfoTypes, use
2143 # ListInfoTypes with the supported_by=RISK_ANALYSIS filter.
2144 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
2145 # creating a CustomInfoType, or one of the names listed
2146 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
2147 # a built-in type. InfoType names should conform to the pattern
2148 # `[a-zA-Z0-9_]{1,64}`.
2149 },
2150 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
2151 # indicate an auxiliary table that contains statistical information on
2152 # the possible values of this column (below).
2153 &quot;inferred&quot;: { # A generic empty message that you can re-use to avoid defining duplicated # If no semantic tag is indicated, we infer the statistical model from
2154 # the distribution of values in the input data
2155 # empty messages in your APIs. A typical example is to use it as the request
2156 # or the response type of an API method. For instance:
2157 #
2158 # service Foo {
2159 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
2160 # }
2161 #
2162 # The JSON representation for `Empty` is empty JSON object `{}`.
2163 },
2164 },
2165 ],
2166 },
2167 &quot;categoricalStatsConfig&quot;: { # Compute numerical stats over an individual column, including # Categorical stats
2168 # number of distinct values and value count distribution.
2169 &quot;field&quot;: { # General identifier of a data field in a storage service. # Field to compute categorical stats on. All column types are
2170 # supported except for arrays and structs. However, it may be more
2171 # informative to use NumericalStats when the field type is supported,
2172 # depending on the data.
2173 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2174 },
2175 },
2176 &quot;kAnonymityConfig&quot;: { # k-anonymity metric, used for analysis of reidentification risk. # K-anonymity
2177 &quot;entityId&quot;: { # An entity in a dataset is a field or set of fields that correspond to a # Message indicating that multiple rows might be associated to a
2178 # single individual. If the same entity_id is associated to multiple
2179 # quasi-identifier tuples over distinct rows, we consider the entire
2180 # collection of tuples as the composite quasi-identifier. This collection
2181 # is a multiset: the order in which the different tuples appear in the
2182 # dataset is ignored, but their frequency is taken into account.
2183 #
2184 # Important note: a maximum of 1000 rows can be associated to a single
2185 # entity ID. If more rows are associated with the same entity ID, some
2186 # might be ignored.
2187 # single person. For example, in medical records the `EntityId` might be a
2188 # patient identifier, or for financial records it might be an account
2189 # identifier. This message is used when generalizations or analysis must take
2190 # into account that multiple rows correspond to the same entity.
2191 &quot;field&quot;: { # General identifier of a data field in a storage service. # Composite key indicating which field contains the entity identifier.
2192 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2193 },
2194 },
2195 &quot;quasiIds&quot;: [ # Set of fields to compute k-anonymity over. When multiple fields are
2196 # specified, they are considered a single composite key. Structs and
2197 # repeated data types are not supported; however, nested fields are
2198 # supported so long as they are not structs themselves or nested within
2199 # a repeated field.
2200 { # General identifier of a data field in a storage service.
2201 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2202 },
2203 ],
2204 },
2205 &quot;numericalStatsConfig&quot;: { # Compute numerical stats over an individual column, including # Numerical stats
2206 # min, max, and quantiles.
2207 &quot;field&quot;: { # General identifier of a data field in a storage service. # Field to compute numerical stats on. Supported types are
2208 # integer, float, date, datetime, timestamp, time.
2209 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2210 },
2211 },
2212 &quot;kMapEstimationConfig&quot;: { # Reidentifiability metric. This corresponds to a risk model similar to what # k-map
2213 # is called &quot;journalist risk&quot; in the literature, except the attack dataset is
2214 # statistically modeled instead of being perfectly known. This can be done
2215 # using publicly available data (like the US Census), or using a custom
2216 # statistical model (indicated as one or several BigQuery tables), or by
2217 # extrapolating from the distribution of values in the input dataset.
2218 &quot;regionCode&quot;: &quot;A String&quot;, # ISO 3166-1 alpha-2 region code to use in the statistical modeling.
2219 # Set if no column is tagged with a region-specific InfoType (like
2220 # US_ZIP_5) or a region code.
2221 &quot;auxiliaryTables&quot;: [ # Several auxiliary tables can be used in the analysis. Each custom_tag
2222 # used to tag a quasi-identifiers column must appear in exactly one column
2223 # of one auxiliary table.
2224 { # An auxiliary table contains statistical information on the relative
2225 # frequency of different quasi-identifiers values. It has one or several
2226 # quasi-identifiers columns, and one column that indicates the relative
2227 # frequency of each quasi-identifier tuple.
2228 # If a tuple is present in the data but not in the auxiliary table, the
2229 # corresponding relative frequency is assumed to be zero (and thus, the
2230 # tuple is highly reidentifiable).
2231 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Required. Auxiliary table location.
2232 # identified by its project_id, dataset_id, and table_name. Within a query
2233 # a table is often referenced with a string in the format of:
2234 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
2235 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
2236 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
2237 # If omitted, project ID is inferred from the API call.
2238 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
2239 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
2240 },
2241 &quot;relativeFrequency&quot;: { # General identifier of a data field in a storage service. # Required. The relative frequency column must contain a floating-point number
2242 # between 0 and 1 (inclusive). Null values are assumed to be zero.
2243 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2244 },
2245 &quot;quasiIds&quot;: [ # Required. Quasi-identifier columns.
2246 { # A quasi-identifier column has a custom_tag, used to know which column
2247 # in the data corresponds to which column in the statistical model.
2248 &quot;customTag&quot;: &quot;A String&quot;, # A auxiliary field.
2249 &quot;field&quot;: { # General identifier of a data field in a storage service. # Identifies the column.
2250 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2251 },
2252 },
2253 ],
2254 },
2255 ],
2256 &quot;quasiIds&quot;: [ # Required. Fields considered to be quasi-identifiers. No two columns can have the
2257 # same tag.
2258 { # A column with a semantic tag attached.
2259 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
2260 # indicate an auxiliary table that contains statistical information on
2261 # the possible values of this column (below).
2262 &quot;inferred&quot;: { # A generic empty message that you can re-use to avoid defining duplicated # If no semantic tag is indicated, we infer the statistical model from
2263 # the distribution of values in the input data
2264 # empty messages in your APIs. A typical example is to use it as the request
2265 # or the response type of an API method. For instance:
2266 #
2267 # service Foo {
2268 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
2269 # }
2270 #
2271 # The JSON representation for `Empty` is empty JSON object `{}`.
2272 },
2273 &quot;field&quot;: { # General identifier of a data field in a storage service. # Required. Identifies the column.
2274 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2275 },
2276 &quot;infoType&quot;: { # Type of information detected by the API. # A column can be tagged with a InfoType to use the relevant public
2277 # dataset as a statistical model of population, if available. We
2278 # currently support US ZIP codes, region codes, ages and genders.
2279 # To programmatically obtain the list of supported InfoTypes, use
2280 # ListInfoTypes with the supported_by=RISK_ANALYSIS filter.
2281 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
2282 # creating a CustomInfoType, or one of the names listed
2283 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
2284 # a built-in type. InfoType names should conform to the pattern
2285 # `[a-zA-Z0-9_]{1,64}`.
2286 },
2287 },
2288 ],
2289 },
2290 &quot;lDiversityConfig&quot;: { # l-diversity metric, used for analysis of reidentification risk. # l-diversity
2291 &quot;sensitiveAttribute&quot;: { # General identifier of a data field in a storage service. # Sensitive field for computing the l-value.
2292 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2293 },
2294 &quot;quasiIds&quot;: [ # Set of quasi-identifiers indicating how equivalence classes are
2295 # defined for the l-diversity computation. When multiple fields are
2296 # specified, they are considered a single composite key.
2297 { # General identifier of a data field in a storage service.
2298 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
2299 },
2300 ],
2301 },
2302 },
2303 &quot;categoricalStatsResult&quot;: { # Result of the categorical stats computation. # Categorical stats result
2304 &quot;valueFrequencyHistogramBuckets&quot;: [ # Histogram of value frequencies in the column.
2305 { # Histogram of value frequencies in the column.
2306 &quot;valueFrequencyLowerBound&quot;: &quot;A String&quot;, # Lower bound on the value frequency of the values in this bucket.
2307 &quot;valueFrequencyUpperBound&quot;: &quot;A String&quot;, # Upper bound on the value frequency of the values in this bucket.
2308 &quot;bucketSize&quot;: &quot;A String&quot;, # Total number of values in this bucket.
2309 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct values in this bucket.
2310 &quot;bucketValues&quot;: [ # Sample of value frequencies in this bucket. The total number of
2311 # values returned per bucket is capped at 20.
2312 { # A value of a field, including its frequency.
2313 &quot;count&quot;: &quot;A String&quot;, # How many times the value is contained in the field.
2314 &quot;value&quot;: { # Set of primitive values supported by the system. # A value contained in the field in question.
2315 # Note that for the purposes of inspection or transformation, the number
2316 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
2317 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
2318 # 123456789, the number of bytes would be counted as 9, even though an
2319 # int64 only holds up to 8 bytes of data.
2320 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
2321 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
2322 # and time zone are either specified elsewhere or are not significant. The date
2323 # is relative to the Proleptic Gregorian Calendar. This can represent:
2324 #
2325 # * A full date, with non-zero year, month and day values
2326 # * A month and day value, with a zero year, e.g. an anniversary
2327 # * A year on its own, with zero month and day values
2328 # * A year and month value, with a zero day, e.g. a credit card expiration date
2329 #
2330 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
2331 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
2332 # a year.
2333 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
2334 # month and day.
2335 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
2336 # if specifying a year by itself or a year and month where the day is not
2337 # significant.
2338 },
2339 &quot;stringValue&quot;: &quot;A String&quot;, # string
2340 &quot;integerValue&quot;: &quot;A String&quot;, # integer
2341 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
2342 # or are specified elsewhere. An API may choose to allow leap seconds. Related
2343 # types are google.type.Date and `google.protobuf.Timestamp`.
2344 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
2345 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
2346 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
2347 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
2348 # allow the value 60 if it allows leap-seconds.
2349 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
2350 },
2351 &quot;booleanValue&quot;: True or False, # boolean
2352 &quot;floatValue&quot;: 3.14, # float
2353 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
2354 },
2355 },
2356 ],
2357 },
2358 ],
2359 },
2360 &quot;kMapEstimationResult&quot;: { # Result of the reidentifiability analysis. Note that these results are an # K-map result
2361 # estimation, not exact values.
2362 &quot;kMapEstimationHistogram&quot;: [ # The intervals [min_anonymity, max_anonymity] do not overlap. If a value
2363 # doesn&#x27;t correspond to any such interval, the associated frequency is
2364 # zero. For example, the following records:
2365 # {min_anonymity: 1, max_anonymity: 1, frequency: 17}
2366 # {min_anonymity: 2, max_anonymity: 3, frequency: 42}
2367 # {min_anonymity: 5, max_anonymity: 10, frequency: 99}
2368 # mean that there are no record with an estimated anonymity of 4, 5, or
2369 # larger than 10.
2370 { # A KMapEstimationHistogramBucket message with the following values:
2371 # min_anonymity: 3
2372 # max_anonymity: 5
2373 # frequency: 42
2374 # means that there are 42 records whose quasi-identifier values correspond
2375 # to 3, 4 or 5 people in the overlying population. An important particular
2376 # case is when min_anonymity = max_anonymity = 1: the frequency field then
2377 # corresponds to the number of uniquely identifiable records.
2378 &quot;minAnonymity&quot;: &quot;A String&quot;, # Always positive.
2379 &quot;bucketValues&quot;: [ # Sample of quasi-identifier tuple values in this bucket. The total
2380 # number of classes returned per bucket is capped at 20.
2381 { # A tuple of values for the quasi-identifier columns.
2382 &quot;quasiIdsValues&quot;: [ # The quasi-identifier values.
2383 { # Set of primitive values supported by the system.
2384 # Note that for the purposes of inspection or transformation, the number
2385 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
2386 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
2387 # 123456789, the number of bytes would be counted as 9, even though an
2388 # int64 only holds up to 8 bytes of data.
2389 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
2390 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
2391 # and time zone are either specified elsewhere or are not significant. The date
2392 # is relative to the Proleptic Gregorian Calendar. This can represent:
2393 #
2394 # * A full date, with non-zero year, month and day values
2395 # * A month and day value, with a zero year, e.g. an anniversary
2396 # * A year on its own, with zero month and day values
2397 # * A year and month value, with a zero day, e.g. a credit card expiration date
2398 #
2399 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
2400 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
2401 # a year.
2402 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
2403 # month and day.
2404 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
2405 # if specifying a year by itself or a year and month where the day is not
2406 # significant.
2407 },
2408 &quot;stringValue&quot;: &quot;A String&quot;, # string
2409 &quot;integerValue&quot;: &quot;A String&quot;, # integer
2410 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
2411 # or are specified elsewhere. An API may choose to allow leap seconds. Related
2412 # types are google.type.Date and `google.protobuf.Timestamp`.
2413 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
2414 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
2415 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
2416 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
2417 # allow the value 60 if it allows leap-seconds.
2418 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
2419 },
2420 &quot;booleanValue&quot;: True or False, # boolean
2421 &quot;floatValue&quot;: 3.14, # float
2422 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
2423 },
2424 ],
2425 &quot;estimatedAnonymity&quot;: &quot;A String&quot;, # The estimated anonymity for these quasi-identifier values.
2426 },
2427 ],
2428 &quot;bucketSize&quot;: &quot;A String&quot;, # Number of records within these anonymity bounds.
2429 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct quasi-identifier tuple values in this bucket.
2430 &quot;maxAnonymity&quot;: &quot;A String&quot;, # Always greater than or equal to min_anonymity.
2431 },
2432 ],
2433 },
2434 &quot;kAnonymityResult&quot;: { # Result of the k-anonymity computation. # K-anonymity result
2435 &quot;equivalenceClassHistogramBuckets&quot;: [ # Histogram of k-anonymity equivalence classes.
2436 { # Histogram of k-anonymity equivalence classes.
2437 &quot;equivalenceClassSizeLowerBound&quot;: &quot;A String&quot;, # Lower bound on the size of the equivalence classes in this bucket.
2438 &quot;equivalenceClassSizeUpperBound&quot;: &quot;A String&quot;, # Upper bound on the size of the equivalence classes in this bucket.
2439 &quot;bucketValues&quot;: [ # Sample of equivalence classes in this bucket. The total number of
2440 # classes returned per bucket is capped at 20.
2441 { # The set of columns&#x27; values that share the same ldiversity value
2442 &quot;quasiIdsValues&quot;: [ # Set of values defining the equivalence class. One value per
2443 # quasi-identifier column in the original KAnonymity metric message.
2444 # The order is always the same as the original request.
2445 { # Set of primitive values supported by the system.
2446 # Note that for the purposes of inspection or transformation, the number
2447 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
2448 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
2449 # 123456789, the number of bytes would be counted as 9, even though an
2450 # int64 only holds up to 8 bytes of data.
2451 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
2452 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
2453 # and time zone are either specified elsewhere or are not significant. The date
2454 # is relative to the Proleptic Gregorian Calendar. This can represent:
2455 #
2456 # * A full date, with non-zero year, month and day values
2457 # * A month and day value, with a zero year, e.g. an anniversary
2458 # * A year on its own, with zero month and day values
2459 # * A year and month value, with a zero day, e.g. a credit card expiration date
2460 #
2461 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
2462 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
2463 # a year.
2464 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
2465 # month and day.
2466 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
2467 # if specifying a year by itself or a year and month where the day is not
2468 # significant.
2469 },
2470 &quot;stringValue&quot;: &quot;A String&quot;, # string
2471 &quot;integerValue&quot;: &quot;A String&quot;, # integer
2472 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
2473 # or are specified elsewhere. An API may choose to allow leap seconds. Related
2474 # types are google.type.Date and `google.protobuf.Timestamp`.
2475 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
2476 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
2477 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
2478 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
2479 # allow the value 60 if it allows leap-seconds.
2480 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
2481 },
2482 &quot;booleanValue&quot;: True or False, # boolean
2483 &quot;floatValue&quot;: 3.14, # float
2484 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
2485 },
2486 ],
2487 &quot;equivalenceClassSize&quot;: &quot;A String&quot;, # Size of the equivalence class, for example number of rows with the
2488 # above set of values.
2489 },
2490 ],
2491 &quot;bucketSize&quot;: &quot;A String&quot;, # Total number of equivalence classes in this bucket.
2492 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct equivalence classes in this bucket.
2493 },
2494 ],
2495 },
2496 &quot;deltaPresenceEstimationResult&quot;: { # Result of the δ-presence computation. Note that these results are an # Delta-presence result
2497 # estimation, not exact values.
2498 &quot;deltaPresenceEstimationHistogram&quot;: [ # The intervals [min_probability, max_probability) do not overlap. If a
2499 # value doesn&#x27;t correspond to any such interval, the associated frequency
2500 # is zero. For example, the following records:
2501 # {min_probability: 0, max_probability: 0.1, frequency: 17}
2502 # {min_probability: 0.2, max_probability: 0.3, frequency: 42}
2503 # {min_probability: 0.3, max_probability: 0.4, frequency: 99}
2504 # mean that there are no record with an estimated probability in [0.1, 0.2)
2505 # nor larger or equal to 0.4.
2506 { # A DeltaPresenceEstimationHistogramBucket message with the following
2507 # values:
2508 # min_probability: 0.1
2509 # max_probability: 0.2
2510 # frequency: 42
2511 # means that there are 42 records for which δ is in [0.1, 0.2). An
2512 # important particular case is when min_probability = max_probability = 1:
2513 # then, every individual who shares this quasi-identifier combination is in
2514 # the dataset.
2515 &quot;minProbability&quot;: 3.14, # Between 0 and 1.
2516 &quot;maxProbability&quot;: 3.14, # Always greater than or equal to min_probability.
2517 &quot;bucketSize&quot;: &quot;A String&quot;, # Number of records within these probability bounds.
2518 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct quasi-identifier tuple values in this bucket.
2519 &quot;bucketValues&quot;: [ # Sample of quasi-identifier tuple values in this bucket. The total
2520 # number of classes returned per bucket is capped at 20.
2521 { # A tuple of values for the quasi-identifier columns.
2522 &quot;quasiIdsValues&quot;: [ # The quasi-identifier values.
2523 { # Set of primitive values supported by the system.
2524 # Note that for the purposes of inspection or transformation, the number
2525 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
2526 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
2527 # 123456789, the number of bytes would be counted as 9, even though an
2528 # int64 only holds up to 8 bytes of data.
2529 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
2530 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
2531 # and time zone are either specified elsewhere or are not significant. The date
2532 # is relative to the Proleptic Gregorian Calendar. This can represent:
2533 #
2534 # * A full date, with non-zero year, month and day values
2535 # * A month and day value, with a zero year, e.g. an anniversary
2536 # * A year on its own, with zero month and day values
2537 # * A year and month value, with a zero day, e.g. a credit card expiration date
2538 #
2539 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
2540 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
2541 # a year.
2542 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
2543 # month and day.
2544 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
2545 # if specifying a year by itself or a year and month where the day is not
2546 # significant.
2547 },
2548 &quot;stringValue&quot;: &quot;A String&quot;, # string
2549 &quot;integerValue&quot;: &quot;A String&quot;, # integer
2550 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
2551 # or are specified elsewhere. An API may choose to allow leap seconds. Related
2552 # types are google.type.Date and `google.protobuf.Timestamp`.
2553 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
2554 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
2555 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
2556 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
2557 # allow the value 60 if it allows leap-seconds.
2558 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
2559 },
2560 &quot;booleanValue&quot;: True or False, # boolean
2561 &quot;floatValue&quot;: 3.14, # float
2562 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
2563 },
2564 ],
2565 &quot;estimatedProbability&quot;: 3.14, # The estimated probability that a given individual sharing these
2566 # quasi-identifier values is in the dataset. This value, typically called
2567 # δ, is the ratio between the number of records in the dataset with these
2568 # quasi-identifier values, and the total number of individuals (inside
2569 # *and* outside the dataset) with these quasi-identifier values.
2570 # For example, if there are 15 individuals in the dataset who share the
2571 # same quasi-identifier values, and an estimated 100 people in the entire
2572 # population with these values, then δ is 0.15.
2573 },
2574 ],
2575 },
2576 ],
2577 },
2578 &quot;requestedSourceTable&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Input dataset to compute metrics over.
2579 # identified by its project_id, dataset_id, and table_name. Within a query
2580 # a table is often referenced with a string in the format of:
2581 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
2582 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
2583 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
2584 # If omitted, project ID is inferred from the API call.
2585 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
2586 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
2587 },
2588 &quot;numericalStatsResult&quot;: { # Result of the numerical stats computation. # Numerical stats result
2589 &quot;minValue&quot;: { # Set of primitive values supported by the system. # Minimum value appearing in the column.
2590 # Note that for the purposes of inspection or transformation, the number
2591 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
2592 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
2593 # 123456789, the number of bytes would be counted as 9, even though an
2594 # int64 only holds up to 8 bytes of data.
2595 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
2596 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
2597 # and time zone are either specified elsewhere or are not significant. The date
2598 # is relative to the Proleptic Gregorian Calendar. This can represent:
2599 #
2600 # * A full date, with non-zero year, month and day values
2601 # * A month and day value, with a zero year, e.g. an anniversary
2602 # * A year on its own, with zero month and day values
2603 # * A year and month value, with a zero day, e.g. a credit card expiration date
2604 #
2605 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
2606 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
2607 # a year.
2608 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
2609 # month and day.
2610 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
2611 # if specifying a year by itself or a year and month where the day is not
2612 # significant.
2613 },
2614 &quot;stringValue&quot;: &quot;A String&quot;, # string
2615 &quot;integerValue&quot;: &quot;A String&quot;, # integer
2616 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
2617 # or are specified elsewhere. An API may choose to allow leap seconds. Related
2618 # types are google.type.Date and `google.protobuf.Timestamp`.
2619 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
2620 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
2621 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
2622 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
2623 # allow the value 60 if it allows leap-seconds.
2624 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
2625 },
2626 &quot;booleanValue&quot;: True or False, # boolean
2627 &quot;floatValue&quot;: 3.14, # float
2628 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
2629 },
2630 &quot;maxValue&quot;: { # Set of primitive values supported by the system. # Maximum value appearing in the column.
2631 # Note that for the purposes of inspection or transformation, the number
2632 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
2633 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
2634 # 123456789, the number of bytes would be counted as 9, even though an
2635 # int64 only holds up to 8 bytes of data.
2636 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
2637 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
2638 # and time zone are either specified elsewhere or are not significant. The date
2639 # is relative to the Proleptic Gregorian Calendar. This can represent:
2640 #
2641 # * A full date, with non-zero year, month and day values
2642 # * A month and day value, with a zero year, e.g. an anniversary
2643 # * A year on its own, with zero month and day values
2644 # * A year and month value, with a zero day, e.g. a credit card expiration date
2645 #
2646 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
2647 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
2648 # a year.
2649 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
2650 # month and day.
2651 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
2652 # if specifying a year by itself or a year and month where the day is not
2653 # significant.
2654 },
2655 &quot;stringValue&quot;: &quot;A String&quot;, # string
2656 &quot;integerValue&quot;: &quot;A String&quot;, # integer
2657 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
2658 # or are specified elsewhere. An API may choose to allow leap seconds. Related
2659 # types are google.type.Date and `google.protobuf.Timestamp`.
2660 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
2661 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
2662 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
2663 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
2664 # allow the value 60 if it allows leap-seconds.
2665 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
2666 },
2667 &quot;booleanValue&quot;: True or False, # boolean
2668 &quot;floatValue&quot;: 3.14, # float
2669 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
2670 },
2671 &quot;quantileValues&quot;: [ # List of 99 values that partition the set of field values into 100 equal
2672 # sized buckets.
2673 { # Set of primitive values supported by the system.
2674 # Note that for the purposes of inspection or transformation, the number
2675 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
2676 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
2677 # 123456789, the number of bytes would be counted as 9, even though an
2678 # int64 only holds up to 8 bytes of data.
2679 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
2680 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
2681 # and time zone are either specified elsewhere or are not significant. The date
2682 # is relative to the Proleptic Gregorian Calendar. This can represent:
2683 #
2684 # * A full date, with non-zero year, month and day values
2685 # * A month and day value, with a zero year, e.g. an anniversary
2686 # * A year on its own, with zero month and day values
2687 # * A year and month value, with a zero day, e.g. a credit card expiration date
2688 #
2689 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
2690 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
2691 # a year.
2692 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
2693 # month and day.
2694 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
2695 # if specifying a year by itself or a year and month where the day is not
2696 # significant.
2697 },
2698 &quot;stringValue&quot;: &quot;A String&quot;, # string
2699 &quot;integerValue&quot;: &quot;A String&quot;, # integer
2700 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
2701 # or are specified elsewhere. An API may choose to allow leap seconds. Related
2702 # types are google.type.Date and `google.protobuf.Timestamp`.
2703 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
2704 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
2705 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
2706 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
2707 # allow the value 60 if it allows leap-seconds.
2708 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
2709 },
2710 &quot;booleanValue&quot;: True or False, # boolean
2711 &quot;floatValue&quot;: 3.14, # float
2712 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
2713 },
2714 ],
2715 },
2716 &quot;lDiversityResult&quot;: { # Result of the l-diversity computation. # L-divesity result
2717 &quot;sensitiveValueFrequencyHistogramBuckets&quot;: [ # Histogram of l-diversity equivalence class sensitive value frequencies.
2718 { # Histogram of l-diversity equivalence class sensitive value frequencies.
2719 &quot;bucketValues&quot;: [ # Sample of equivalence classes in this bucket. The total number of
2720 # classes returned per bucket is capped at 20.
2721 { # The set of columns&#x27; values that share the same ldiversity value.
2722 &quot;numDistinctSensitiveValues&quot;: &quot;A String&quot;, # Number of distinct sensitive values in this equivalence class.
2723 &quot;topSensitiveValues&quot;: [ # Estimated frequencies of top sensitive values.
2724 { # A value of a field, including its frequency.
2725 &quot;count&quot;: &quot;A String&quot;, # How many times the value is contained in the field.
2726 &quot;value&quot;: { # Set of primitive values supported by the system. # A value contained in the field in question.
2727 # Note that for the purposes of inspection or transformation, the number
2728 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
2729 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
2730 # 123456789, the number of bytes would be counted as 9, even though an
2731 # int64 only holds up to 8 bytes of data.
2732 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
2733 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
2734 # and time zone are either specified elsewhere or are not significant. The date
2735 # is relative to the Proleptic Gregorian Calendar. This can represent:
2736 #
2737 # * A full date, with non-zero year, month and day values
2738 # * A month and day value, with a zero year, e.g. an anniversary
2739 # * A year on its own, with zero month and day values
2740 # * A year and month value, with a zero day, e.g. a credit card expiration date
2741 #
2742 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
2743 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
2744 # a year.
2745 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
2746 # month and day.
2747 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
2748 # if specifying a year by itself or a year and month where the day is not
2749 # significant.
2750 },
2751 &quot;stringValue&quot;: &quot;A String&quot;, # string
2752 &quot;integerValue&quot;: &quot;A String&quot;, # integer
2753 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
2754 # or are specified elsewhere. An API may choose to allow leap seconds. Related
2755 # types are google.type.Date and `google.protobuf.Timestamp`.
2756 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
2757 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
2758 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
2759 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
2760 # allow the value 60 if it allows leap-seconds.
2761 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
2762 },
2763 &quot;booleanValue&quot;: True or False, # boolean
2764 &quot;floatValue&quot;: 3.14, # float
2765 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
2766 },
2767 },
2768 ],
2769 &quot;quasiIdsValues&quot;: [ # Quasi-identifier values defining the k-anonymity equivalence
2770 # class. The order is always the same as the original request.
2771 { # Set of primitive values supported by the system.
2772 # Note that for the purposes of inspection or transformation, the number
2773 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
2774 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
2775 # 123456789, the number of bytes would be counted as 9, even though an
2776 # int64 only holds up to 8 bytes of data.
2777 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
2778 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
2779 # and time zone are either specified elsewhere or are not significant. The date
2780 # is relative to the Proleptic Gregorian Calendar. This can represent:
2781 #
2782 # * A full date, with non-zero year, month and day values
2783 # * A month and day value, with a zero year, e.g. an anniversary
2784 # * A year on its own, with zero month and day values
2785 # * A year and month value, with a zero day, e.g. a credit card expiration date
2786 #
2787 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
2788 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
2789 # a year.
2790 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
2791 # month and day.
2792 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
2793 # if specifying a year by itself or a year and month where the day is not
2794 # significant.
2795 },
2796 &quot;stringValue&quot;: &quot;A String&quot;, # string
2797 &quot;integerValue&quot;: &quot;A String&quot;, # integer
2798 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
2799 # or are specified elsewhere. An API may choose to allow leap seconds. Related
2800 # types are google.type.Date and `google.protobuf.Timestamp`.
2801 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
2802 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
2803 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
2804 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
2805 # allow the value 60 if it allows leap-seconds.
2806 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
2807 },
2808 &quot;booleanValue&quot;: True or False, # boolean
2809 &quot;floatValue&quot;: 3.14, # float
2810 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
2811 },
2812 ],
2813 &quot;equivalenceClassSize&quot;: &quot;A String&quot;, # Size of the k-anonymity equivalence class.
2814 },
2815 ],
2816 &quot;sensitiveValueFrequencyLowerBound&quot;: &quot;A String&quot;, # Lower bound on the sensitive value frequencies of the equivalence
2817 # classes in this bucket.
2818 &quot;sensitiveValueFrequencyUpperBound&quot;: &quot;A String&quot;, # Upper bound on the sensitive value frequencies of the equivalence
2819 # classes in this bucket.
2820 &quot;bucketSize&quot;: &quot;A String&quot;, # Total number of equivalence classes in this bucket.
2821 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct equivalence classes in this bucket.
2822 },
2823 ],
2824 },
2825 },
2826 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name.
2827 &quot;errors&quot;: [ # A stream of errors encountered running the job.
2828 { # Details information about an error encountered during job execution or
2829 # the results of an unsuccessful activation of the JobTrigger.
2830 &quot;details&quot;: { # The `Status` type defines a logical error model that is suitable for # Detailed error codes and messages.
2831 # different programming environments, including REST APIs and RPC APIs. It is
2832 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
2833 # three pieces of data: error code, error message, and error details.
2834 #
2835 # You can find out more about this error model and how to work with it in the
2836 # [API Design Guide](https://cloud.google.com/apis/design/errors).
2837 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
2838 # user-facing error message should be localized and sent in the
2839 # google.rpc.Status.details field, or localized by the client.
2840 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
2841 # message types for APIs to use.
2842 {
2843 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
2844 },
2845 ],
2846 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
2847 },
2848 &quot;timestamps&quot;: [ # The times the error occurred.
2849 &quot;A String&quot;,
2850 ],
2851 },
2852 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002853 }</pre>
2854</div>
2855
2856<div class="method">
2857 <code class="details" id="delete">delete(name, x__xgafv=None)</code>
2858 <pre>Deletes a long-running DlpJob. This method indicates that the client is
2859no longer interested in the DlpJob result. The job will be cancelled if
2860possible.
2861See https://cloud.google.com/dlp/docs/inspecting-storage and
2862https://cloud.google.com/dlp/docs/compute-risk-analysis to learn more.
2863
2864Args:
Dan O'Mearadd494642020-05-01 07:42:23 -07002865 name: string, Required. The name of the DlpJob resource to be deleted. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002866 x__xgafv: string, V1 error format.
2867 Allowed values
2868 1 - v1 error format
2869 2 - v2 error format
2870
2871Returns:
2872 An object of the form:
2873
2874 { # A generic empty message that you can re-use to avoid defining duplicated
2875 # empty messages in your APIs. A typical example is to use it as the request
2876 # or the response type of an API method. For instance:
2877 #
2878 # service Foo {
2879 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
2880 # }
2881 #
2882 # The JSON representation for `Empty` is empty JSON object `{}`.
2883 }</pre>
2884</div>
2885
2886<div class="method">
2887 <code class="details" id="get">get(name, x__xgafv=None)</code>
2888 <pre>Gets the latest state of a long-running DlpJob.
2889See https://cloud.google.com/dlp/docs/inspecting-storage and
2890https://cloud.google.com/dlp/docs/compute-risk-analysis to learn more.
2891
2892Args:
Dan O'Mearadd494642020-05-01 07:42:23 -07002893 name: string, Required. The name of the DlpJob resource. (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07002894 x__xgafv: string, V1 error format.
2895 Allowed values
2896 1 - v1 error format
2897 2 - v2 error format
2898
2899Returns:
2900 An object of the form:
2901
2902 { # Combines all of the information about a DLP job.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002903 &quot;type&quot;: &quot;A String&quot;, # The type of job.
2904 &quot;endTime&quot;: &quot;A String&quot;, # Time when the job finished.
2905 &quot;startTime&quot;: &quot;A String&quot;, # Time when the job started.
2906 &quot;inspectDetails&quot;: { # The results of an inspect DataSource job. # Results from inspecting a data source.
2907 &quot;requestedOptions&quot;: { # Snapshot of the inspection configuration. # The configuration used for this job.
2908 &quot;snapshotInspectTemplate&quot;: { # The inspectTemplate contains a configuration (set of types of sensitive data # If run with an InspectTemplate, a snapshot of its state at the time of
2909 # this run.
2910 # to be detected) to be used anywhere you otherwise would normally specify
2911 # InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
2912 # to learn more.
2913 &quot;name&quot;: &quot;A String&quot;, # Output only. The template name.
Bu Sun Kim65020912020-05-20 12:08:20 -07002914 #
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002915 # The template will have one of the following formats:
2916 # `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR
2917 # `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`;
2918 &quot;description&quot;: &quot;A String&quot;, # Short description (max 256 chars).
2919 &quot;displayName&quot;: &quot;A String&quot;, # Display name (max 256 chars).
2920 &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
2921 # When used with redactContent only info_types and min_likelihood are currently
2922 # used.
2923 &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
2924 # POSSIBLE.
2925 # See https://cloud.google.com/dlp/docs/likelihood to learn more.
2926 &quot;contentOptions&quot;: [ # List of options defining data content to scan.
2927 # If empty, text, images, and other content will be included.
2928 &quot;A String&quot;,
2929 ],
2930 &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
2931 # InfoType values returned by ListInfoTypes or listed at
2932 # https://cloud.google.com/dlp/docs/infotypes-reference.
Bu Sun Kim65020912020-05-20 12:08:20 -07002933 #
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002934 # When no InfoTypes or CustomInfoTypes are specified in a request, the
2935 # system may automatically choose what detectors to run. By default this may
2936 # be all types, but may change over time as detectors are updated.
Bu Sun Kim65020912020-05-20 12:08:20 -07002937 #
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07002938 # If you need precise control and predictability as to what detectors are
2939 # run you should specify specific InfoTypes listed in the reference,
2940 # otherwise a default list will be used, which may change over time.
2941 { # Type of information detected by the API.
2942 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
2943 # creating a CustomInfoType, or one of the names listed
2944 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
2945 # a built-in type. InfoType names should conform to the pattern
2946 # `[a-zA-Z0-9_]{1,64}`.
2947 },
2948 ],
2949 &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
2950 &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
2951 # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
2952 { # Custom information type provided by the user. Used to find domain-specific
2953 # sensitive information configurable to the data in question.
2954 &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
2955 # support reversing.
2956 # such as
2957 # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
2958 # These types of transformations are
2959 # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
2960 # output. This should be used in conjunction with a field on the
2961 # transformation such as `surrogate_info_type`. This CustomInfoType does
2962 # not support the use of `detection_rules`.
2963 },
2964 &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
2965 # altered by a detection rule if the finding meets the criteria specified by
2966 # the rule. Defaults to `VERY_LIKELY` if not specified.
2967 &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
2968 # infoType, when the name matches one of existing infoTypes and that infoType
2969 # is specified in `InspectContent.info_types` field. Specifying the latter
2970 # adds findings to the one detected by the system. If built-in info type is
2971 # not specified in `InspectContent.info_types` list then the name is treated
2972 # as a custom info type.
2973 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
2974 # creating a CustomInfoType, or one of the names listed
2975 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
2976 # a built-in type. InfoType names should conform to the pattern
2977 # `[a-zA-Z0-9_]{1,64}`.
2978 },
2979 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
2980 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
2981 # specified, the entire match is returned. No more than 3 may be included.
2982 42,
2983 ],
2984 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
2985 # (https://github.com/google/re2/wiki/Syntax) can be found under the
2986 # google/re2 repository on GitHub.
2987 },
2988 &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
2989 # Rules are applied in order that they are specified. Not supported for the
2990 # `surrogate_type` CustomInfoType.
2991 { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
2992 # `CustomInfoType` to alter behavior under certain circumstances, depending
2993 # on the specific details of the rule. Not supported for the `surrogate_type`
2994 # custom infoType.
2995 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
2996 # proximity of hotwords.
2997 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
2998 # part of a detection rule.
2999 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
3000 # levels. For example, if a finding would be `POSSIBLE` without the
3001 # detection rule and `relative_likelihood` is 1, then it is upgraded to
3002 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
3003 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
3004 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
3005 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
3006 # a final likelihood of `LIKELY`.
3007 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
3008 },
3009 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
3010 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
3011 # specified, the entire match is returned. No more than 3 may be included.
3012 42,
3013 ],
3014 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
3015 # (https://github.com/google/re2/wiki/Syntax) can be found under the
3016 # google/re2 repository on GitHub.
3017 },
3018 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
3019 # The total length of the window cannot exceed 1000 characters. Note that
3020 # the finding itself will be included in the window, so that hotwords may
3021 # be used to match substrings of the finding itself. For example, the
3022 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
3023 # adjusted upwards if the area code is known to be the local area code of
3024 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
3025 # is the area code in question.
3026 # rule.
3027 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
3028 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
3029 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003030 },
3031 },
3032 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003033 &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
3034 # to be returned. It still can be used for rules matching.
3035 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
3036 # be used to match sensitive information specific to the data, such as a list
3037 # of employee IDs or job titles.
3038 #
3039 # Dictionary words are case-insensitive and all characters other than letters
3040 # and digits in the unicode [Basic Multilingual
3041 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
3042 # will be replaced with whitespace when scanning for matches, so the
3043 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
3044 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
3045 # surrounding any match must be of a different type than the adjacent
3046 # characters within the word, so letters must be next to non-letters and
3047 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
3048 # match the first three letters of the text &quot;jen123&quot; but will return no
3049 # matches for &quot;jennifer&quot;.
3050 #
3051 # Dictionary words containing a large number of characters that are not
3052 # letters or digits may result in unexpected findings because such characters
3053 # are treated as whitespace. The
3054 # [limits](https://cloud.google.com/dlp/limits) page contains details about
3055 # the size limits of dictionaries. For dictionaries that do not fit within
3056 # these constraints, consider using `LargeCustomDictionaryConfig` in the
3057 # `StoredInfoType` API.
3058 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
3059 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
3060 # at least one phrase and every phrase must contain at least 2 characters
3061 # that are letters or digits. [required]
3062 &quot;A String&quot;,
3063 ],
3064 },
3065 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
3066 # is accepted.
3067 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
3068 # Example: gs://[BUCKET_NAME]/dictionary.txt
3069 },
3070 },
3071 &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
3072 # `InspectDataSource`. Not currently supported in `InspectContent`.
3073 &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
3074 # `organizations/433245324/storedInfoTypes/432452342` or
3075 # `projects/project-id/storedInfoTypes/432452342`.
3076 &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
3077 # inspection was created. Output-only field, populated by the system.
3078 },
3079 },
3080 ],
3081 &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
3082 # included in the response; see Finding.quote.
3083 &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
3084 # Exclusion rules, contained in the set are executed in the end, other
3085 # rules are executed in the order they are specified for each info type.
3086 { # Rule set for modifying a set of infoTypes to alter behavior under certain
3087 # circumstances, depending on the specific details of the rules within the set.
3088 &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
3089 { # Type of information detected by the API.
3090 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
3091 # creating a CustomInfoType, or one of the names listed
3092 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
3093 # a built-in type. InfoType names should conform to the pattern
3094 # `[a-zA-Z0-9_]{1,64}`.
3095 },
3096 ],
3097 &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
3098 { # A single inspection rule to be applied to infoTypes, specified in
3099 # `InspectionRuleSet`.
3100 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
3101 # proximity of hotwords.
3102 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
3103 # part of a detection rule.
3104 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
3105 # levels. For example, if a finding would be `POSSIBLE` without the
3106 # detection rule and `relative_likelihood` is 1, then it is upgraded to
3107 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
3108 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
3109 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
3110 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
3111 # a final likelihood of `LIKELY`.
3112 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
Bu Sun Kim65020912020-05-20 12:08:20 -07003113 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003114 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
3115 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
3116 # specified, the entire match is returned. No more than 3 may be included.
3117 42,
3118 ],
3119 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
3120 # (https://github.com/google/re2/wiki/Syntax) can be found under the
3121 # google/re2 repository on GitHub.
3122 },
3123 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
3124 # The total length of the window cannot exceed 1000 characters. Note that
3125 # the finding itself will be included in the window, so that hotwords may
3126 # be used to match substrings of the finding itself. For example, the
3127 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
3128 # adjusted upwards if the area code is known to be the local area code of
3129 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
3130 # is the area code in question.
3131 # rule.
3132 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
3133 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
Bu Sun Kim65020912020-05-20 12:08:20 -07003134 },
3135 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003136 &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
3137 # `InspectionRuleSet` are removed from results.
3138 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
3139 # be used to match sensitive information specific to the data, such as a list
3140 # of employee IDs or job titles.
3141 #
3142 # Dictionary words are case-insensitive and all characters other than letters
3143 # and digits in the unicode [Basic Multilingual
3144 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
3145 # will be replaced with whitespace when scanning for matches, so the
3146 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
3147 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
3148 # surrounding any match must be of a different type than the adjacent
3149 # characters within the word, so letters must be next to non-letters and
3150 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
3151 # match the first three letters of the text &quot;jen123&quot; but will return no
3152 # matches for &quot;jennifer&quot;.
3153 #
3154 # Dictionary words containing a large number of characters that are not
3155 # letters or digits may result in unexpected findings because such characters
3156 # are treated as whitespace. The
3157 # [limits](https://cloud.google.com/dlp/limits) page contains details about
3158 # the size limits of dictionaries. For dictionaries that do not fit within
3159 # these constraints, consider using `LargeCustomDictionaryConfig` in the
3160 # `StoredInfoType` API.
3161 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
3162 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
3163 # at least one phrase and every phrase must contain at least 2 characters
3164 # that are letters or digits. [required]
3165 &quot;A String&quot;,
3166 ],
3167 },
3168 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
3169 # is accepted.
3170 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
3171 # Example: gs://[BUCKET_NAME]/dictionary.txt
3172 },
3173 },
3174 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
3175 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
3176 # specified, the entire match is returned. No more than 3 may be included.
3177 42,
3178 ],
3179 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
3180 # (https://github.com/google/re2/wiki/Syntax) can be found under the
3181 # google/re2 repository on GitHub.
3182 },
3183 &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
3184 &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
3185 # contained within with a finding of an infoType from this list. For
3186 # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
3187 # `exclusion_rule` containing `exclude_info_types.info_types` with
3188 # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
3189 # with EMAIL_ADDRESS finding.
3190 # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
3191 # finding, namely email address.
3192 { # Type of information detected by the API.
3193 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
3194 # creating a CustomInfoType, or one of the names listed
3195 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
3196 # a built-in type. InfoType names should conform to the pattern
3197 # `[a-zA-Z0-9_]{1,64}`.
3198 },
3199 ],
3200 },
3201 &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
3202 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003203 },
3204 ],
3205 },
3206 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003207 &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
3208 &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
3209 # When set within `InspectJobConfig`,
3210 # the maximum returned is 2000 regardless if this is set higher.
3211 # When set within `InspectContentRequest`, this field is ignored.
3212 &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
3213 { # Max findings configuration per infoType, per content item or long
3214 # running DlpJob.
3215 &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
3216 &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
3217 # info_type should be provided. If InfoTypeLimit does not have an
3218 # info_type, the DLP API applies the limit against all info_types that
3219 # are found but not specified in another InfoTypeLimit.
3220 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
3221 # creating a CustomInfoType, or one of the names listed
3222 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
3223 # a built-in type. InfoType names should conform to the pattern
3224 # `[a-zA-Z0-9_]{1,64}`.
3225 },
3226 },
3227 ],
3228 &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
3229 # When set within `InspectContentRequest`, the maximum returned is 2000
3230 # regardless if this is set higher.
3231 },
3232 },
3233 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of an inspectTemplate.
3234 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of an inspectTemplate.
3235 },
3236 &quot;jobConfig&quot;: { # Controls what and how to inspect for findings. # Inspect config.
3237 &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # How and what to scan for.
3238 # When used with redactContent only info_types and min_likelihood are currently
3239 # used.
3240 &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
3241 # POSSIBLE.
3242 # See https://cloud.google.com/dlp/docs/likelihood to learn more.
3243 &quot;contentOptions&quot;: [ # List of options defining data content to scan.
3244 # If empty, text, images, and other content will be included.
3245 &quot;A String&quot;,
3246 ],
3247 &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
3248 # InfoType values returned by ListInfoTypes or listed at
3249 # https://cloud.google.com/dlp/docs/infotypes-reference.
3250 #
3251 # When no InfoTypes or CustomInfoTypes are specified in a request, the
3252 # system may automatically choose what detectors to run. By default this may
3253 # be all types, but may change over time as detectors are updated.
3254 #
3255 # If you need precise control and predictability as to what detectors are
3256 # run you should specify specific InfoTypes listed in the reference,
3257 # otherwise a default list will be used, which may change over time.
3258 { # Type of information detected by the API.
3259 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
3260 # creating a CustomInfoType, or one of the names listed
3261 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
3262 # a built-in type. InfoType names should conform to the pattern
3263 # `[a-zA-Z0-9_]{1,64}`.
3264 },
3265 ],
3266 &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
3267 &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
3268 # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
3269 { # Custom information type provided by the user. Used to find domain-specific
3270 # sensitive information configurable to the data in question.
3271 &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
3272 # support reversing.
3273 # such as
3274 # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
3275 # These types of transformations are
3276 # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
3277 # output. This should be used in conjunction with a field on the
3278 # transformation such as `surrogate_info_type`. This CustomInfoType does
3279 # not support the use of `detection_rules`.
3280 },
3281 &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
3282 # altered by a detection rule if the finding meets the criteria specified by
3283 # the rule. Defaults to `VERY_LIKELY` if not specified.
3284 &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
3285 # infoType, when the name matches one of existing infoTypes and that infoType
3286 # is specified in `InspectContent.info_types` field. Specifying the latter
3287 # adds findings to the one detected by the system. If built-in info type is
3288 # not specified in `InspectContent.info_types` list then the name is treated
3289 # as a custom info type.
3290 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
3291 # creating a CustomInfoType, or one of the names listed
3292 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
3293 # a built-in type. InfoType names should conform to the pattern
3294 # `[a-zA-Z0-9_]{1,64}`.
3295 },
3296 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
3297 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
3298 # specified, the entire match is returned. No more than 3 may be included.
3299 42,
3300 ],
3301 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
3302 # (https://github.com/google/re2/wiki/Syntax) can be found under the
3303 # google/re2 repository on GitHub.
3304 },
3305 &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
3306 # Rules are applied in order that they are specified. Not supported for the
3307 # `surrogate_type` CustomInfoType.
3308 { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
3309 # `CustomInfoType` to alter behavior under certain circumstances, depending
3310 # on the specific details of the rule. Not supported for the `surrogate_type`
3311 # custom infoType.
3312 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
3313 # proximity of hotwords.
3314 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
3315 # part of a detection rule.
3316 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
3317 # levels. For example, if a finding would be `POSSIBLE` without the
3318 # detection rule and `relative_likelihood` is 1, then it is upgraded to
3319 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
3320 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
3321 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
3322 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
3323 # a final likelihood of `LIKELY`.
3324 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
3325 },
3326 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
3327 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
3328 # specified, the entire match is returned. No more than 3 may be included.
3329 42,
3330 ],
3331 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
3332 # (https://github.com/google/re2/wiki/Syntax) can be found under the
3333 # google/re2 repository on GitHub.
3334 },
3335 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
3336 # The total length of the window cannot exceed 1000 characters. Note that
3337 # the finding itself will be included in the window, so that hotwords may
3338 # be used to match substrings of the finding itself. For example, the
3339 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
3340 # adjusted upwards if the area code is known to be the local area code of
3341 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
3342 # is the area code in question.
3343 # rule.
3344 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
3345 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
3346 },
3347 },
3348 },
3349 ],
3350 &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
3351 # to be returned. It still can be used for rules matching.
3352 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
3353 # be used to match sensitive information specific to the data, such as a list
3354 # of employee IDs or job titles.
3355 #
3356 # Dictionary words are case-insensitive and all characters other than letters
3357 # and digits in the unicode [Basic Multilingual
3358 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
3359 # will be replaced with whitespace when scanning for matches, so the
3360 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
3361 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
3362 # surrounding any match must be of a different type than the adjacent
3363 # characters within the word, so letters must be next to non-letters and
3364 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
3365 # match the first three letters of the text &quot;jen123&quot; but will return no
3366 # matches for &quot;jennifer&quot;.
3367 #
3368 # Dictionary words containing a large number of characters that are not
3369 # letters or digits may result in unexpected findings because such characters
3370 # are treated as whitespace. The
3371 # [limits](https://cloud.google.com/dlp/limits) page contains details about
3372 # the size limits of dictionaries. For dictionaries that do not fit within
3373 # these constraints, consider using `LargeCustomDictionaryConfig` in the
3374 # `StoredInfoType` API.
3375 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
3376 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
3377 # at least one phrase and every phrase must contain at least 2 characters
3378 # that are letters or digits. [required]
3379 &quot;A String&quot;,
3380 ],
3381 },
3382 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
3383 # is accepted.
3384 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
3385 # Example: gs://[BUCKET_NAME]/dictionary.txt
3386 },
3387 },
3388 &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
3389 # `InspectDataSource`. Not currently supported in `InspectContent`.
3390 &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
3391 # `organizations/433245324/storedInfoTypes/432452342` or
3392 # `projects/project-id/storedInfoTypes/432452342`.
3393 &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
3394 # inspection was created. Output-only field, populated by the system.
3395 },
3396 },
3397 ],
3398 &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
3399 # included in the response; see Finding.quote.
3400 &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
3401 # Exclusion rules, contained in the set are executed in the end, other
3402 # rules are executed in the order they are specified for each info type.
3403 { # Rule set for modifying a set of infoTypes to alter behavior under certain
3404 # circumstances, depending on the specific details of the rules within the set.
3405 &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
3406 { # Type of information detected by the API.
3407 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
3408 # creating a CustomInfoType, or one of the names listed
3409 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
3410 # a built-in type. InfoType names should conform to the pattern
3411 # `[a-zA-Z0-9_]{1,64}`.
3412 },
3413 ],
3414 &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
3415 { # A single inspection rule to be applied to infoTypes, specified in
3416 # `InspectionRuleSet`.
3417 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
3418 # proximity of hotwords.
3419 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
3420 # part of a detection rule.
3421 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
3422 # levels. For example, if a finding would be `POSSIBLE` without the
3423 # detection rule and `relative_likelihood` is 1, then it is upgraded to
3424 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
3425 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
3426 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
3427 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
3428 # a final likelihood of `LIKELY`.
3429 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
3430 },
3431 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
3432 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
3433 # specified, the entire match is returned. No more than 3 may be included.
3434 42,
3435 ],
3436 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
3437 # (https://github.com/google/re2/wiki/Syntax) can be found under the
3438 # google/re2 repository on GitHub.
3439 },
3440 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
3441 # The total length of the window cannot exceed 1000 characters. Note that
3442 # the finding itself will be included in the window, so that hotwords may
3443 # be used to match substrings of the finding itself. For example, the
3444 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
3445 # adjusted upwards if the area code is known to be the local area code of
3446 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
3447 # is the area code in question.
3448 # rule.
3449 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
3450 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
3451 },
3452 },
3453 &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
3454 # `InspectionRuleSet` are removed from results.
3455 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
3456 # be used to match sensitive information specific to the data, such as a list
3457 # of employee IDs or job titles.
3458 #
3459 # Dictionary words are case-insensitive and all characters other than letters
3460 # and digits in the unicode [Basic Multilingual
3461 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
3462 # will be replaced with whitespace when scanning for matches, so the
3463 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
3464 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
3465 # surrounding any match must be of a different type than the adjacent
3466 # characters within the word, so letters must be next to non-letters and
3467 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
3468 # match the first three letters of the text &quot;jen123&quot; but will return no
3469 # matches for &quot;jennifer&quot;.
3470 #
3471 # Dictionary words containing a large number of characters that are not
3472 # letters or digits may result in unexpected findings because such characters
3473 # are treated as whitespace. The
3474 # [limits](https://cloud.google.com/dlp/limits) page contains details about
3475 # the size limits of dictionaries. For dictionaries that do not fit within
3476 # these constraints, consider using `LargeCustomDictionaryConfig` in the
3477 # `StoredInfoType` API.
3478 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
3479 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
3480 # at least one phrase and every phrase must contain at least 2 characters
3481 # that are letters or digits. [required]
3482 &quot;A String&quot;,
3483 ],
3484 },
3485 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
3486 # is accepted.
3487 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
3488 # Example: gs://[BUCKET_NAME]/dictionary.txt
3489 },
3490 },
3491 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
3492 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
3493 # specified, the entire match is returned. No more than 3 may be included.
3494 42,
3495 ],
3496 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
3497 # (https://github.com/google/re2/wiki/Syntax) can be found under the
3498 # google/re2 repository on GitHub.
3499 },
3500 &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
3501 &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
3502 # contained within with a finding of an infoType from this list. For
3503 # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
3504 # `exclusion_rule` containing `exclude_info_types.info_types` with
3505 # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
3506 # with EMAIL_ADDRESS finding.
3507 # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
3508 # finding, namely email address.
3509 { # Type of information detected by the API.
3510 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
3511 # creating a CustomInfoType, or one of the names listed
3512 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
3513 # a built-in type. InfoType names should conform to the pattern
3514 # `[a-zA-Z0-9_]{1,64}`.
3515 },
3516 ],
3517 },
3518 &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
3519 },
3520 },
3521 ],
3522 },
3523 ],
3524 &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
3525 &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
3526 # When set within `InspectJobConfig`,
3527 # the maximum returned is 2000 regardless if this is set higher.
3528 # When set within `InspectContentRequest`, this field is ignored.
3529 &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
3530 { # Max findings configuration per infoType, per content item or long
3531 # running DlpJob.
3532 &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
3533 &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
3534 # info_type should be provided. If InfoTypeLimit does not have an
3535 # info_type, the DLP API applies the limit against all info_types that
3536 # are found but not specified in another InfoTypeLimit.
3537 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
3538 # creating a CustomInfoType, or one of the names listed
3539 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
3540 # a built-in type. InfoType names should conform to the pattern
3541 # `[a-zA-Z0-9_]{1,64}`.
3542 },
3543 },
3544 ],
3545 &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
3546 # When set within `InspectContentRequest`, the maximum returned is 2000
3547 # regardless if this is set higher.
3548 },
3549 },
3550 &quot;actions&quot;: [ # Actions to execute at the completion of the job.
3551 { # A task to execute on the completion of a job.
3552 # See https://cloud.google.com/dlp/docs/concepts-actions to learn more.
3553 &quot;publishSummaryToCscc&quot;: { # Publish the result summary of a DlpJob to the Cloud Security # Publish summary to Cloud Security Command Center (Alpha).
3554 # Command Center (CSCC Alpha).
3555 # This action is only available for projects which are parts of
3556 # an organization and whitelisted for the alpha Cloud Security Command
3557 # Center.
3558 # The action will publish count of finding instances and their info types.
3559 # The summary of findings will be persisted in CSCC and are governed by CSCC
3560 # service-specific policy, see https://cloud.google.com/terms/service-terms
3561 # Only a single instance of this action can be specified.
3562 # Compatible with: Inspect
3563 },
3564 &quot;jobNotificationEmails&quot;: { # Enable email notification to project owners and editors on jobs&#x27;s # Enable email notification for project owners and editors on job&#x27;s
3565 # completion/failure.
3566 # completion/failure.
3567 },
3568 &quot;saveFindings&quot;: { # If set, the detailed findings will be persisted to the specified # Save resulting findings in a provided location.
3569 # OutputStorageConfig. Only a single instance of this action can be
3570 # specified.
3571 # Compatible with: Inspect, Risk
3572 &quot;outputConfig&quot;: { # Cloud repository for storing output. # Location to store findings outside of DLP.
3573 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Store findings in an existing table or a new table in an existing
3574 # dataset. If table_id is not set a new one will be generated
3575 # for you with the following format:
3576 # dlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used for
3577 # generating the date details.
3578 #
3579 # For Inspect, each column in an existing output table must have the same
3580 # name, type, and mode of a field in the `Finding` object.
3581 #
3582 # For Risk, an existing output table should be the output of a previous
3583 # Risk analysis job run on the same source table, with the same privacy
3584 # metric and quasi-identifiers. Risk jobs that analyze the same table but
3585 # compute a different privacy metric, or use different sets of
3586 # quasi-identifiers, cannot store their results in the same table.
3587 # identified by its project_id, dataset_id, and table_name. Within a query
3588 # a table is often referenced with a string in the format of:
3589 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
3590 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
3591 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
3592 # If omitted, project ID is inferred from the API call.
3593 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
3594 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
3595 },
3596 &quot;outputSchema&quot;: &quot;A String&quot;, # Schema used for writing the findings for Inspect jobs. This field is only
3597 # used for Inspect and must be unspecified for Risk jobs. Columns are derived
3598 # from the `Finding` object. If appending to an existing table, any columns
3599 # from the predefined schema that are missing will be added. No columns in
3600 # the existing table will be deleted.
3601 #
3602 # If unspecified, then all available columns will be used for a new table or
3603 # an (existing) table with no schema, and no changes will be made to an
3604 # existing table that has a schema.
3605 # Only for use with external storage.
3606 },
3607 },
3608 &quot;pubSub&quot;: { # Publish a message into given Pub/Sub topic when DlpJob has completed. The # Publish a notification to a pubsub topic.
3609 # message contains a single field, `DlpJobName`, which is equal to the
3610 # finished job&#x27;s
3611 # [`DlpJob.name`](/dlp/docs/reference/rest/v2/projects.dlpJobs#DlpJob).
3612 # Compatible with: Inspect, Risk
3613 &quot;topic&quot;: &quot;A String&quot;, # Cloud Pub/Sub topic to send notifications to. The topic must have given
3614 # publishing access rights to the DLP API service account executing
3615 # the long running DlpJob sending the notifications.
3616 # Format is projects/{project}/topics/{topic}.
3617 },
3618 &quot;publishFindingsToCloudDataCatalog&quot;: { # Publish findings of a DlpJob to Cloud Data Catalog. Labels summarizing the # Publish findings to Cloud Datahub.
3619 # results of the DlpJob will be applied to the entry for the resource scanned
3620 # in Cloud Data Catalog. Any labels previously written by another DlpJob will
3621 # be deleted. InfoType naming patterns are strictly enforced when using this
3622 # feature. Note that the findings will be persisted in Cloud Data Catalog
3623 # storage and are governed by Data Catalog service-specific policy, see
3624 # https://cloud.google.com/terms/service-terms
3625 # Only a single instance of this action can be specified and only allowed if
3626 # all resources being scanned are BigQuery tables.
3627 # Compatible with: Inspect
3628 },
3629 &quot;publishToStackdriver&quot;: { # Enable Stackdriver metric dlp.googleapis.com/finding_count. This # Enable Stackdriver metric dlp.googleapis.com/finding_count.
3630 # will publish a metric to stack driver on each infotype requested and
3631 # how many findings were found for it. CustomDetectors will be bucketed
3632 # as &#x27;Custom&#x27; under the Stackdriver label &#x27;info_type&#x27;.
3633 },
3634 },
3635 ],
3636 &quot;storageConfig&quot;: { # Shared message indicating Cloud storage type. # The data to scan.
3637 &quot;hybridOptions&quot;: { # Configuration to control jobs where the content being inspected is outside # Hybrid inspection options.
3638 # Early access feature is in a pre-release state and might change or have
3639 # limited support. For more information, see
3640 # https://cloud.google.com/products#product-launch-stages.
3641 # of Google Cloud Platform.
3642 &quot;labels&quot;: { # To organize findings, these labels will be added to each finding.
3643 #
3644 # Label keys must be between 1 and 63 characters long and must conform
3645 # to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.
3646 #
3647 # Label values must be between 0 and 63 characters long and must conform
3648 # to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.
3649 #
3650 # No more than 10 labels can be associated with a given finding.
3651 #
3652 # Examples:
3653 # * `&quot;environment&quot; : &quot;production&quot;`
3654 # * `&quot;pipeline&quot; : &quot;etl&quot;`
3655 &quot;a_key&quot;: &quot;A String&quot;,
3656 },
3657 &quot;description&quot;: &quot;A String&quot;, # A short description of where the data is coming from. Will be stored once
3658 # in the job. 256 max length.
3659 &quot;tableOptions&quot;: { # Instructions regarding the table content being inspected. # If the container is a table, additional information to make findings
3660 # meaningful such as the columns that are primary keys.
3661 &quot;identifyingFields&quot;: [ # The columns that are the primary keys for table objects included in
3662 # ContentItem. A copy of this cell&#x27;s value will stored alongside alongside
3663 # each finding so that the finding can be traced to the specific row it came
3664 # from. No more than 3 may be provided.
3665 { # General identifier of a data field in a storage service.
3666 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
3667 },
3668 ],
3669 },
3670 &quot;requiredFindingLabelKeys&quot;: [ # These are labels that each inspection request must include within their
3671 # &#x27;finding_labels&#x27; map. Request may contain others, but any missing one of
3672 # these will be rejected.
3673 #
3674 # Label keys must be between 1 and 63 characters long and must conform
3675 # to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.
3676 #
3677 # No more than 10 keys can be required.
3678 &quot;A String&quot;,
3679 ],
3680 },
3681 &quot;datastoreOptions&quot;: { # Options defining a data set within Google Cloud Datastore. # Google Cloud Datastore options.
3682 &quot;partitionId&quot;: { # Datastore partition ID. # A partition ID identifies a grouping of entities. The grouping is always
3683 # by project and namespace, however the namespace ID may be empty.
3684 # A partition ID identifies a grouping of entities. The grouping is always
3685 # by project and namespace, however the namespace ID may be empty.
3686 #
3687 # A partition ID contains several dimensions:
3688 # project ID and namespace ID.
3689 &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
3690 &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
3691 },
3692 &quot;kind&quot;: { # A representation of a Datastore kind. # The kind to process.
3693 &quot;name&quot;: &quot;A String&quot;, # The name of the kind.
3694 },
3695 },
3696 &quot;timespanConfig&quot;: { # Configuration of the timespan of the items to include in scanning.
3697 # Currently only supported when inspecting Google Cloud Storage and BigQuery.
3698 &quot;timestampField&quot;: { # General identifier of a data field in a storage service. # Specification of the field containing the timestamp of scanned items.
3699 # Used for data sources like Datastore and BigQuery.
3700 #
3701 # For BigQuery:
3702 # Required to filter out rows based on the given start and
3703 # end times. If not specified and the table was modified between the given
3704 # start and end times, the entire table will be scanned.
3705 # The valid data types of the timestamp field are: `INTEGER`, `DATE`,
3706 # `TIMESTAMP`, or `DATETIME` BigQuery column.
3707 #
3708 # For Datastore.
3709 # Valid data types of the timestamp field are: `TIMESTAMP`.
3710 # Datastore entity will be scanned if the timestamp property does not
3711 # exist or its value is empty or invalid.
3712 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
3713 },
3714 &quot;enableAutoPopulationOfTimespanConfig&quot;: True or False, # When the job is started by a JobTrigger we will automatically figure out
3715 # a valid start_time to avoid scanning files that have not been modified
3716 # since the last time the JobTrigger executed. This will be based on the
3717 # time of the execution of the last run of the JobTrigger.
3718 &quot;endTime&quot;: &quot;A String&quot;, # Exclude files or rows newer than this value.
3719 # If set to zero, no upper time limit is applied.
3720 &quot;startTime&quot;: &quot;A String&quot;, # Exclude files or rows older than this value.
3721 },
3722 &quot;cloudStorageOptions&quot;: { # Options defining a file or a set of files within a Google Cloud Storage # Google Cloud Storage options.
3723 # bucket.
3724 &quot;bytesLimitPerFile&quot;: &quot;A String&quot;, # Max number of bytes to scan from a file. If a scanned file&#x27;s size is bigger
3725 # than this value then the rest of the bytes are omitted. Only one
3726 # of bytes_limit_per_file and bytes_limit_per_file_percent can be specified.
3727 &quot;fileSet&quot;: { # Set of files to scan. # The set of one or more files to scan.
3728 &quot;regexFileSet&quot;: { # Message representing a set of files in a Cloud Storage bucket. Regular # The regex-filtered set of files to scan. Exactly one of `url` or
3729 # `regex_file_set` must be set.
3730 # expressions are used to allow fine-grained control over which files in the
3731 # bucket to include.
3732 #
3733 # Included files are those that match at least one item in `include_regex` and
3734 # do not match any items in `exclude_regex`. Note that a file that matches
3735 # items from both lists will _not_ be included. For a match to occur, the
3736 # entire file path (i.e., everything in the url after the bucket name) must
3737 # match the regular expression.
3738 #
3739 # For example, given the input `{bucket_name: &quot;mybucket&quot;, include_regex:
3740 # [&quot;directory1/.*&quot;], exclude_regex:
3741 # [&quot;directory1/excluded.*&quot;]}`:
3742 #
3743 # * `gs://mybucket/directory1/myfile` will be included
3744 # * `gs://mybucket/directory1/directory2/myfile` will be included (`.*` matches
3745 # across `/`)
3746 # * `gs://mybucket/directory0/directory1/myfile` will _not_ be included (the
3747 # full path doesn&#x27;t match any items in `include_regex`)
3748 # * `gs://mybucket/directory1/excludedfile` will _not_ be included (the path
3749 # matches an item in `exclude_regex`)
3750 #
3751 # If `include_regex` is left empty, it will match all files by default
3752 # (this is equivalent to setting `include_regex: [&quot;.*&quot;]`).
3753 #
3754 # Some other common use cases:
3755 #
3756 # * `{bucket_name: &quot;mybucket&quot;, exclude_regex: [&quot;.*\.pdf&quot;]}` will include all
3757 # files in `mybucket` except for .pdf files
3758 # * `{bucket_name: &quot;mybucket&quot;, include_regex: [&quot;directory/[^/]+&quot;]}` will
3759 # include all files directly under `gs://mybucket/directory/`, without matching
3760 # across `/`
3761 &quot;bucketName&quot;: &quot;A String&quot;, # The name of a Cloud Storage bucket. Required.
3762 &quot;includeRegex&quot;: [ # A list of regular expressions matching file paths to include. All files in
3763 # the bucket that match at least one of these regular expressions will be
3764 # included in the set of files, except for those that also match an item in
3765 # `exclude_regex`. Leaving this field empty will match all files by default
3766 # (this is equivalent to including `.*` in the list).
3767 #
3768 # Regular expressions use RE2
3769 # [syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found
3770 # under the google/re2 repository on GitHub.
3771 &quot;A String&quot;,
3772 ],
3773 &quot;excludeRegex&quot;: [ # A list of regular expressions matching file paths to exclude. All files in
3774 # the bucket that match at least one of these regular expressions will be
3775 # excluded from the scan.
3776 #
3777 # Regular expressions use RE2
3778 # [syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found
3779 # under the google/re2 repository on GitHub.
3780 &quot;A String&quot;,
3781 ],
3782 },
3783 &quot;url&quot;: &quot;A String&quot;, # The Cloud Storage url of the file(s) to scan, in the format
3784 # `gs://&lt;bucket&gt;/&lt;path&gt;`. Trailing wildcard in the path is allowed.
3785 #
3786 # If the url ends in a trailing slash, the bucket or directory represented
3787 # by the url will be scanned non-recursively (content in sub-directories
3788 # will not be scanned). This means that `gs://mybucket/` is equivalent to
3789 # `gs://mybucket/*`, and `gs://mybucket/directory/` is equivalent to
3790 # `gs://mybucket/directory/*`.
3791 #
3792 # Exactly one of `url` or `regex_file_set` must be set.
3793 },
3794 &quot;filesLimitPercent&quot;: 42, # Limits the number of files to scan to this percentage of the input FileSet.
3795 # Number of files scanned is rounded down. Must be between 0 and 100,
3796 # inclusively. Both 0 and 100 means no limit. Defaults to 0.
3797 &quot;fileTypes&quot;: [ # List of file type groups to include in the scan.
3798 # If empty, all files are scanned and available data format processors
3799 # are applied. In addition, the binary content of the selected files
3800 # is always scanned as well.
3801 # Images are scanned only as binary if the specified region
3802 # does not support image inspection and no file_types were specified.
3803 # Image inspection is restricted to &#x27;global&#x27;, &#x27;us&#x27;, &#x27;asia&#x27;, and &#x27;europe&#x27;.
3804 &quot;A String&quot;,
3805 ],
3806 &quot;sampleMethod&quot;: &quot;A String&quot;,
3807 &quot;bytesLimitPerFilePercent&quot;: 42, # Max percentage of bytes to scan from a file. The rest are omitted. The
3808 # number of bytes scanned is rounded down. Must be between 0 and 100,
3809 # inclusively. Both 0 and 100 means no limit. Defaults to 0. Only one
3810 # of bytes_limit_per_file and bytes_limit_per_file_percent can be specified.
3811 },
3812 &quot;bigQueryOptions&quot;: { # Options defining BigQuery table and row identifiers. # BigQuery options.
3813 &quot;tableReference&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Complete BigQuery table reference.
3814 # identified by its project_id, dataset_id, and table_name. Within a query
3815 # a table is often referenced with a string in the format of:
3816 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
3817 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
3818 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
3819 # If omitted, project ID is inferred from the API call.
3820 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
3821 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
3822 },
3823 &quot;identifyingFields&quot;: [ # Table fields that may uniquely identify a row within the table. When
3824 # `actions.saveFindings.outputConfig.table` is specified, the values of
3825 # columns specified here are available in the output table under
3826 # `location.content_locations.record_location.record_key.id_values`. Nested
3827 # fields such as `person.birthdate.year` are allowed.
3828 { # General identifier of a data field in a storage service.
3829 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
3830 },
3831 ],
3832 &quot;rowsLimitPercent&quot;: 42, # Max percentage of rows to scan. The rest are omitted. The number of rows
3833 # scanned is rounded down. Must be between 0 and 100, inclusively. Both 0 and
3834 # 100 means no limit. Defaults to 0. Only one of rows_limit and
3835 # rows_limit_percent can be specified. Cannot be used in conjunction with
3836 # TimespanConfig.
3837 &quot;rowsLimit&quot;: &quot;A String&quot;, # Max number of rows to scan. If the table has more rows than this value, the
3838 # rest of the rows are omitted. If not set, or if set to 0, all rows will be
3839 # scanned. Only one of rows_limit and rows_limit_percent can be specified.
3840 # Cannot be used in conjunction with TimespanConfig.
3841 &quot;excludedFields&quot;: [ # References to fields excluded from scanning. This allows you to skip
3842 # inspection of entire columns which you know have no findings.
3843 { # General identifier of a data field in a storage service.
3844 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
3845 },
3846 ],
3847 &quot;sampleMethod&quot;: &quot;A String&quot;,
3848 },
3849 },
3850 &quot;inspectTemplateName&quot;: &quot;A String&quot;, # If provided, will be used as the default for all values in InspectConfig.
3851 # `inspect_config` will be merged into the values persisted as part of the
3852 # template.
3853 },
3854 },
3855 &quot;result&quot;: { # All result fields mentioned below are updated while the job is processing. # A summary of the outcome of this inspect job.
3856 &quot;processedBytes&quot;: &quot;A String&quot;, # Total size in bytes that were processed.
3857 &quot;hybridStats&quot;: { # Statistics related to processing hybrid inspect requests. # Statistics related to the processing of hybrid inspect.
3858 # Early access feature is in a pre-release state and might change or have
3859 # limited support. For more information, see
3860 # https://cloud.google.com/products#product-launch-stages.
3861 &quot;pendingCount&quot;: &quot;A String&quot;, # The number of hybrid requests currently being processed. Only populated
3862 # when called via method `getDlpJob`.
3863 # A burst of traffic may cause hybrid inspect requests to be enqueued.
3864 # Processing will take place as quickly as possible, but resource limitations
3865 # may impact how long a request is enqueued for.
3866 &quot;processedCount&quot;: &quot;A String&quot;, # The number of hybrid inspection requests processed within this job.
3867 &quot;abortedCount&quot;: &quot;A String&quot;, # The number of hybrid inspection requests aborted because the job ran
3868 # out of quota or was ended before they could be processed.
3869 },
3870 &quot;infoTypeStats&quot;: [ # Statistics of how many instances of each info type were found during
3871 # inspect job.
3872 { # Statistics regarding a specific InfoType.
3873 &quot;infoType&quot;: { # Type of information detected by the API. # The type of finding this stat is for.
3874 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
3875 # creating a CustomInfoType, or one of the names listed
3876 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
3877 # a built-in type. InfoType names should conform to the pattern
3878 # `[a-zA-Z0-9_]{1,64}`.
3879 },
3880 &quot;count&quot;: &quot;A String&quot;, # Number of findings for this infoType.
Bu Sun Kim65020912020-05-20 12:08:20 -07003881 },
3882 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003883 &quot;totalEstimatedBytes&quot;: &quot;A String&quot;, # Estimate of the number of bytes to process.
Bu Sun Kim65020912020-05-20 12:08:20 -07003884 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003885 },
3886 &quot;createTime&quot;: &quot;A String&quot;, # Time when the job was created.
3887 &quot;state&quot;: &quot;A String&quot;, # State of a job.
3888 &quot;jobTriggerName&quot;: &quot;A String&quot;, # If created by a job trigger, the resource name of the trigger that
3889 # instantiated the job.
3890 &quot;riskDetails&quot;: { # Result of a risk analysis operation request. # Results from analyzing risk of a data source.
Bu Sun Kim65020912020-05-20 12:08:20 -07003891 &quot;requestedPrivacyMetric&quot;: { # Privacy metric to compute for reidentification risk analysis. # Privacy metric to compute.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003892 &quot;deltaPresenceEstimationConfig&quot;: { # δ-presence metric, used to estimate how likely it is for an attacker to # delta-presence
3893 # figure out that one given individual appears in a de-identified dataset.
3894 # Similarly to the k-map metric, we cannot compute δ-presence exactly without
3895 # knowing the attack dataset, so we use a statistical model instead.
3896 &quot;regionCode&quot;: &quot;A String&quot;, # ISO 3166-1 alpha-2 region code to use in the statistical modeling.
3897 # Set if no column is tagged with a region-specific InfoType (like
3898 # US_ZIP_5) or a region code.
3899 &quot;auxiliaryTables&quot;: [ # Several auxiliary tables can be used in the analysis. Each custom_tag
3900 # used to tag a quasi-identifiers field must appear in exactly one
3901 # field of one auxiliary table.
3902 { # An auxiliary table containing statistical information on the relative
3903 # frequency of different quasi-identifiers values. It has one or several
3904 # quasi-identifiers columns, and one column that indicates the relative
3905 # frequency of each quasi-identifier tuple.
3906 # If a tuple is present in the data but not in the auxiliary table, the
3907 # corresponding relative frequency is assumed to be zero (and thus, the
3908 # tuple is highly reidentifiable).
3909 &quot;quasiIds&quot;: [ # Required. Quasi-identifier columns.
3910 { # A quasi-identifier column has a custom_tag, used to know which column
3911 # in the data corresponds to which column in the statistical model.
3912 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
3913 # indicate an auxiliary table that contains statistical information on
3914 # the possible values of this column (below).
3915 &quot;field&quot;: { # General identifier of a data field in a storage service. # Identifies the column.
3916 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
3917 },
3918 },
3919 ],
3920 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Required. Auxiliary table location.
3921 # identified by its project_id, dataset_id, and table_name. Within a query
3922 # a table is often referenced with a string in the format of:
3923 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
3924 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
3925 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
3926 # If omitted, project ID is inferred from the API call.
3927 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
3928 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
3929 },
3930 &quot;relativeFrequency&quot;: { # General identifier of a data field in a storage service. # Required. The relative frequency column must contain a floating-point number
3931 # between 0 and 1 (inclusive). Null values are assumed to be zero.
3932 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
3933 },
3934 },
3935 ],
3936 &quot;quasiIds&quot;: [ # Required. Fields considered to be quasi-identifiers. No two fields can have the
3937 # same tag.
3938 { # A column with a semantic tag attached.
3939 &quot;field&quot;: { # General identifier of a data field in a storage service. # Required. Identifies the column.
3940 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
3941 },
3942 &quot;infoType&quot;: { # Type of information detected by the API. # A column can be tagged with a InfoType to use the relevant public
3943 # dataset as a statistical model of population, if available. We
3944 # currently support US ZIP codes, region codes, ages and genders.
3945 # To programmatically obtain the list of supported InfoTypes, use
3946 # ListInfoTypes with the supported_by=RISK_ANALYSIS filter.
3947 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
3948 # creating a CustomInfoType, or one of the names listed
3949 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
3950 # a built-in type. InfoType names should conform to the pattern
3951 # `[a-zA-Z0-9_]{1,64}`.
3952 },
3953 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
3954 # indicate an auxiliary table that contains statistical information on
3955 # the possible values of this column (below).
3956 &quot;inferred&quot;: { # A generic empty message that you can re-use to avoid defining duplicated # If no semantic tag is indicated, we infer the statistical model from
3957 # the distribution of values in the input data
3958 # empty messages in your APIs. A typical example is to use it as the request
3959 # or the response type of an API method. For instance:
3960 #
3961 # service Foo {
3962 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
3963 # }
3964 #
3965 # The JSON representation for `Empty` is empty JSON object `{}`.
3966 },
3967 },
3968 ],
3969 },
Bu Sun Kim65020912020-05-20 12:08:20 -07003970 &quot;categoricalStatsConfig&quot;: { # Compute numerical stats over an individual column, including # Categorical stats
3971 # number of distinct values and value count distribution.
3972 &quot;field&quot;: { # General identifier of a data field in a storage service. # Field to compute categorical stats on. All column types are
3973 # supported except for arrays and structs. However, it may be more
3974 # informative to use NumericalStats when the field type is supported,
3975 # depending on the data.
3976 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
3977 },
3978 },
3979 &quot;kAnonymityConfig&quot;: { # k-anonymity metric, used for analysis of reidentification risk. # K-anonymity
Bu Sun Kim65020912020-05-20 12:08:20 -07003980 &quot;entityId&quot;: { # An entity in a dataset is a field or set of fields that correspond to a # Message indicating that multiple rows might be associated to a
3981 # single individual. If the same entity_id is associated to multiple
3982 # quasi-identifier tuples over distinct rows, we consider the entire
3983 # collection of tuples as the composite quasi-identifier. This collection
3984 # is a multiset: the order in which the different tuples appear in the
3985 # dataset is ignored, but their frequency is taken into account.
3986 #
3987 # Important note: a maximum of 1000 rows can be associated to a single
3988 # entity ID. If more rows are associated with the same entity ID, some
3989 # might be ignored.
3990 # single person. For example, in medical records the `EntityId` might be a
3991 # patient identifier, or for financial records it might be an account
3992 # identifier. This message is used when generalizations or analysis must take
3993 # into account that multiple rows correspond to the same entity.
3994 &quot;field&quot;: { # General identifier of a data field in a storage service. # Composite key indicating which field contains the entity identifier.
3995 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
3996 },
3997 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07003998 &quot;quasiIds&quot;: [ # Set of fields to compute k-anonymity over. When multiple fields are
3999 # specified, they are considered a single composite key. Structs and
4000 # repeated data types are not supported; however, nested fields are
4001 # supported so long as they are not structs themselves or nested within
4002 # a repeated field.
4003 { # General identifier of a data field in a storage service.
4004 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
4005 },
4006 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07004007 },
4008 &quot;numericalStatsConfig&quot;: { # Compute numerical stats over an individual column, including # Numerical stats
4009 # min, max, and quantiles.
4010 &quot;field&quot;: { # General identifier of a data field in a storage service. # Field to compute numerical stats on. Supported types are
4011 # integer, float, date, datetime, timestamp, time.
4012 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
4013 },
4014 },
4015 &quot;kMapEstimationConfig&quot;: { # Reidentifiability metric. This corresponds to a risk model similar to what # k-map
4016 # is called &quot;journalist risk&quot; in the literature, except the attack dataset is
4017 # statistically modeled instead of being perfectly known. This can be done
4018 # using publicly available data (like the US Census), or using a custom
4019 # statistical model (indicated as one or several BigQuery tables), or by
4020 # extrapolating from the distribution of values in the input dataset.
4021 &quot;regionCode&quot;: &quot;A String&quot;, # ISO 3166-1 alpha-2 region code to use in the statistical modeling.
4022 # Set if no column is tagged with a region-specific InfoType (like
4023 # US_ZIP_5) or a region code.
4024 &quot;auxiliaryTables&quot;: [ # Several auxiliary tables can be used in the analysis. Each custom_tag
4025 # used to tag a quasi-identifiers column must appear in exactly one column
4026 # of one auxiliary table.
4027 { # An auxiliary table contains statistical information on the relative
4028 # frequency of different quasi-identifiers values. It has one or several
4029 # quasi-identifiers columns, and one column that indicates the relative
4030 # frequency of each quasi-identifier tuple.
4031 # If a tuple is present in the data but not in the auxiliary table, the
4032 # corresponding relative frequency is assumed to be zero (and thus, the
4033 # tuple is highly reidentifiable).
4034 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Required. Auxiliary table location.
4035 # identified by its project_id, dataset_id, and table_name. Within a query
4036 # a table is often referenced with a string in the format of:
4037 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
4038 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
4039 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
4040 # If omitted, project ID is inferred from the API call.
4041 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
4042 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
4043 },
4044 &quot;relativeFrequency&quot;: { # General identifier of a data field in a storage service. # Required. The relative frequency column must contain a floating-point number
4045 # between 0 and 1 (inclusive). Null values are assumed to be zero.
4046 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
4047 },
4048 &quot;quasiIds&quot;: [ # Required. Quasi-identifier columns.
4049 { # A quasi-identifier column has a custom_tag, used to know which column
4050 # in the data corresponds to which column in the statistical model.
4051 &quot;customTag&quot;: &quot;A String&quot;, # A auxiliary field.
4052 &quot;field&quot;: { # General identifier of a data field in a storage service. # Identifies the column.
4053 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
4054 },
4055 },
4056 ],
4057 },
4058 ],
4059 &quot;quasiIds&quot;: [ # Required. Fields considered to be quasi-identifiers. No two columns can have the
4060 # same tag.
4061 { # A column with a semantic tag attached.
Bu Sun Kim65020912020-05-20 12:08:20 -07004062 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
4063 # indicate an auxiliary table that contains statistical information on
4064 # the possible values of this column (below).
4065 &quot;inferred&quot;: { # A generic empty message that you can re-use to avoid defining duplicated # If no semantic tag is indicated, we infer the statistical model from
4066 # the distribution of values in the input data
4067 # empty messages in your APIs. A typical example is to use it as the request
4068 # or the response type of an API method. For instance:
4069 #
4070 # service Foo {
4071 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
4072 # }
4073 #
4074 # The JSON representation for `Empty` is empty JSON object `{}`.
4075 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004076 &quot;field&quot;: { # General identifier of a data field in a storage service. # Required. Identifies the column.
4077 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
4078 },
4079 &quot;infoType&quot;: { # Type of information detected by the API. # A column can be tagged with a InfoType to use the relevant public
4080 # dataset as a statistical model of population, if available. We
4081 # currently support US ZIP codes, region codes, ages and genders.
4082 # To programmatically obtain the list of supported InfoTypes, use
4083 # ListInfoTypes with the supported_by=RISK_ANALYSIS filter.
4084 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
4085 # creating a CustomInfoType, or one of the names listed
4086 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
4087 # a built-in type. InfoType names should conform to the pattern
4088 # `[a-zA-Z0-9_]{1,64}`.
4089 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004090 },
4091 ],
4092 },
4093 &quot;lDiversityConfig&quot;: { # l-diversity metric, used for analysis of reidentification risk. # l-diversity
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004094 &quot;sensitiveAttribute&quot;: { # General identifier of a data field in a storage service. # Sensitive field for computing the l-value.
4095 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
4096 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004097 &quot;quasiIds&quot;: [ # Set of quasi-identifiers indicating how equivalence classes are
4098 # defined for the l-diversity computation. When multiple fields are
4099 # specified, they are considered a single composite key.
4100 { # General identifier of a data field in a storage service.
4101 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
4102 },
4103 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07004104 },
4105 },
4106 &quot;categoricalStatsResult&quot;: { # Result of the categorical stats computation. # Categorical stats result
4107 &quot;valueFrequencyHistogramBuckets&quot;: [ # Histogram of value frequencies in the column.
4108 { # Histogram of value frequencies in the column.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004109 &quot;valueFrequencyLowerBound&quot;: &quot;A String&quot;, # Lower bound on the value frequency of the values in this bucket.
4110 &quot;valueFrequencyUpperBound&quot;: &quot;A String&quot;, # Upper bound on the value frequency of the values in this bucket.
4111 &quot;bucketSize&quot;: &quot;A String&quot;, # Total number of values in this bucket.
4112 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct values in this bucket.
Bu Sun Kim65020912020-05-20 12:08:20 -07004113 &quot;bucketValues&quot;: [ # Sample of value frequencies in this bucket. The total number of
4114 # values returned per bucket is capped at 20.
4115 { # A value of a field, including its frequency.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004116 &quot;count&quot;: &quot;A String&quot;, # How many times the value is contained in the field.
Bu Sun Kim65020912020-05-20 12:08:20 -07004117 &quot;value&quot;: { # Set of primitive values supported by the system. # A value contained in the field in question.
4118 # Note that for the purposes of inspection or transformation, the number
4119 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
4120 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
4121 # 123456789, the number of bytes would be counted as 9, even though an
4122 # int64 only holds up to 8 bytes of data.
Bu Sun Kim65020912020-05-20 12:08:20 -07004123 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
4124 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
4125 # and time zone are either specified elsewhere or are not significant. The date
4126 # is relative to the Proleptic Gregorian Calendar. This can represent:
4127 #
4128 # * A full date, with non-zero year, month and day values
4129 # * A month and day value, with a zero year, e.g. an anniversary
4130 # * A year on its own, with zero month and day values
4131 # * A year and month value, with a zero day, e.g. a credit card expiration date
4132 #
4133 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
4134 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
4135 # a year.
4136 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
4137 # month and day.
4138 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
4139 # if specifying a year by itself or a year and month where the day is not
4140 # significant.
4141 },
4142 &quot;stringValue&quot;: &quot;A String&quot;, # string
4143 &quot;integerValue&quot;: &quot;A String&quot;, # integer
4144 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
4145 # or are specified elsewhere. An API may choose to allow leap seconds. Related
4146 # types are google.type.Date and `google.protobuf.Timestamp`.
Bu Sun Kim65020912020-05-20 12:08:20 -07004147 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
4148 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
4149 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004150 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
4151 # allow the value 60 if it allows leap-seconds.
4152 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
Bu Sun Kim65020912020-05-20 12:08:20 -07004153 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004154 &quot;booleanValue&quot;: True or False, # boolean
4155 &quot;floatValue&quot;: 3.14, # float
4156 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
Bu Sun Kim65020912020-05-20 12:08:20 -07004157 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004158 },
4159 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07004160 },
4161 ],
4162 },
4163 &quot;kMapEstimationResult&quot;: { # Result of the reidentifiability analysis. Note that these results are an # K-map result
4164 # estimation, not exact values.
4165 &quot;kMapEstimationHistogram&quot;: [ # The intervals [min_anonymity, max_anonymity] do not overlap. If a value
4166 # doesn&#x27;t correspond to any such interval, the associated frequency is
4167 # zero. For example, the following records:
4168 # {min_anonymity: 1, max_anonymity: 1, frequency: 17}
4169 # {min_anonymity: 2, max_anonymity: 3, frequency: 42}
4170 # {min_anonymity: 5, max_anonymity: 10, frequency: 99}
4171 # mean that there are no record with an estimated anonymity of 4, 5, or
4172 # larger than 10.
4173 { # A KMapEstimationHistogramBucket message with the following values:
4174 # min_anonymity: 3
4175 # max_anonymity: 5
4176 # frequency: 42
4177 # means that there are 42 records whose quasi-identifier values correspond
4178 # to 3, 4 or 5 people in the overlying population. An important particular
4179 # case is when min_anonymity = max_anonymity = 1: the frequency field then
4180 # corresponds to the number of uniquely identifiable records.
Bu Sun Kim65020912020-05-20 12:08:20 -07004181 &quot;minAnonymity&quot;: &quot;A String&quot;, # Always positive.
4182 &quot;bucketValues&quot;: [ # Sample of quasi-identifier tuple values in this bucket. The total
4183 # number of classes returned per bucket is capped at 20.
4184 { # A tuple of values for the quasi-identifier columns.
Bu Sun Kim65020912020-05-20 12:08:20 -07004185 &quot;quasiIdsValues&quot;: [ # The quasi-identifier values.
4186 { # Set of primitive values supported by the system.
4187 # Note that for the purposes of inspection or transformation, the number
4188 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
4189 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
4190 # 123456789, the number of bytes would be counted as 9, even though an
4191 # int64 only holds up to 8 bytes of data.
Bu Sun Kim65020912020-05-20 12:08:20 -07004192 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
4193 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
4194 # and time zone are either specified elsewhere or are not significant. The date
4195 # is relative to the Proleptic Gregorian Calendar. This can represent:
4196 #
4197 # * A full date, with non-zero year, month and day values
4198 # * A month and day value, with a zero year, e.g. an anniversary
4199 # * A year on its own, with zero month and day values
4200 # * A year and month value, with a zero day, e.g. a credit card expiration date
4201 #
4202 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
4203 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
4204 # a year.
4205 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
4206 # month and day.
4207 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
4208 # if specifying a year by itself or a year and month where the day is not
4209 # significant.
4210 },
4211 &quot;stringValue&quot;: &quot;A String&quot;, # string
4212 &quot;integerValue&quot;: &quot;A String&quot;, # integer
4213 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
4214 # or are specified elsewhere. An API may choose to allow leap seconds. Related
4215 # types are google.type.Date and `google.protobuf.Timestamp`.
Bu Sun Kim65020912020-05-20 12:08:20 -07004216 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
4217 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
4218 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004219 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
4220 # allow the value 60 if it allows leap-seconds.
4221 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
Bu Sun Kim65020912020-05-20 12:08:20 -07004222 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004223 &quot;booleanValue&quot;: True or False, # boolean
4224 &quot;floatValue&quot;: 3.14, # float
4225 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
Bu Sun Kim65020912020-05-20 12:08:20 -07004226 },
4227 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004228 &quot;estimatedAnonymity&quot;: &quot;A String&quot;, # The estimated anonymity for these quasi-identifier values.
Bu Sun Kim65020912020-05-20 12:08:20 -07004229 },
4230 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004231 &quot;bucketSize&quot;: &quot;A String&quot;, # Number of records within these anonymity bounds.
4232 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct quasi-identifier tuple values in this bucket.
4233 &quot;maxAnonymity&quot;: &quot;A String&quot;, # Always greater than or equal to min_anonymity.
Bu Sun Kim65020912020-05-20 12:08:20 -07004234 },
4235 ],
4236 },
4237 &quot;kAnonymityResult&quot;: { # Result of the k-anonymity computation. # K-anonymity result
4238 &quot;equivalenceClassHistogramBuckets&quot;: [ # Histogram of k-anonymity equivalence classes.
4239 { # Histogram of k-anonymity equivalence classes.
Bu Sun Kim65020912020-05-20 12:08:20 -07004240 &quot;equivalenceClassSizeLowerBound&quot;: &quot;A String&quot;, # Lower bound on the size of the equivalence classes in this bucket.
4241 &quot;equivalenceClassSizeUpperBound&quot;: &quot;A String&quot;, # Upper bound on the size of the equivalence classes in this bucket.
4242 &quot;bucketValues&quot;: [ # Sample of equivalence classes in this bucket. The total number of
4243 # classes returned per bucket is capped at 20.
4244 { # The set of columns&#x27; values that share the same ldiversity value
4245 &quot;quasiIdsValues&quot;: [ # Set of values defining the equivalence class. One value per
4246 # quasi-identifier column in the original KAnonymity metric message.
4247 # The order is always the same as the original request.
4248 { # Set of primitive values supported by the system.
4249 # Note that for the purposes of inspection or transformation, the number
4250 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
4251 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
4252 # 123456789, the number of bytes would be counted as 9, even though an
4253 # int64 only holds up to 8 bytes of data.
Bu Sun Kim65020912020-05-20 12:08:20 -07004254 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
4255 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
4256 # and time zone are either specified elsewhere or are not significant. The date
4257 # is relative to the Proleptic Gregorian Calendar. This can represent:
4258 #
4259 # * A full date, with non-zero year, month and day values
4260 # * A month and day value, with a zero year, e.g. an anniversary
4261 # * A year on its own, with zero month and day values
4262 # * A year and month value, with a zero day, e.g. a credit card expiration date
4263 #
4264 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
4265 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
4266 # a year.
4267 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
4268 # month and day.
4269 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
4270 # if specifying a year by itself or a year and month where the day is not
4271 # significant.
4272 },
4273 &quot;stringValue&quot;: &quot;A String&quot;, # string
4274 &quot;integerValue&quot;: &quot;A String&quot;, # integer
4275 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
4276 # or are specified elsewhere. An API may choose to allow leap seconds. Related
4277 # types are google.type.Date and `google.protobuf.Timestamp`.
Bu Sun Kim65020912020-05-20 12:08:20 -07004278 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
4279 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
4280 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004281 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
4282 # allow the value 60 if it allows leap-seconds.
4283 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
Bu Sun Kim65020912020-05-20 12:08:20 -07004284 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004285 &quot;booleanValue&quot;: True or False, # boolean
4286 &quot;floatValue&quot;: 3.14, # float
4287 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
Bu Sun Kim65020912020-05-20 12:08:20 -07004288 },
4289 ],
4290 &quot;equivalenceClassSize&quot;: &quot;A String&quot;, # Size of the equivalence class, for example number of rows with the
4291 # above set of values.
4292 },
4293 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004294 &quot;bucketSize&quot;: &quot;A String&quot;, # Total number of equivalence classes in this bucket.
4295 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct equivalence classes in this bucket.
Bu Sun Kim65020912020-05-20 12:08:20 -07004296 },
4297 ],
4298 },
4299 &quot;deltaPresenceEstimationResult&quot;: { # Result of the δ-presence computation. Note that these results are an # Delta-presence result
4300 # estimation, not exact values.
4301 &quot;deltaPresenceEstimationHistogram&quot;: [ # The intervals [min_probability, max_probability) do not overlap. If a
4302 # value doesn&#x27;t correspond to any such interval, the associated frequency
4303 # is zero. For example, the following records:
4304 # {min_probability: 0, max_probability: 0.1, frequency: 17}
4305 # {min_probability: 0.2, max_probability: 0.3, frequency: 42}
4306 # {min_probability: 0.3, max_probability: 0.4, frequency: 99}
4307 # mean that there are no record with an estimated probability in [0.1, 0.2)
4308 # nor larger or equal to 0.4.
4309 { # A DeltaPresenceEstimationHistogramBucket message with the following
4310 # values:
4311 # min_probability: 0.1
4312 # max_probability: 0.2
4313 # frequency: 42
4314 # means that there are 42 records for which δ is in [0.1, 0.2). An
4315 # important particular case is when min_probability = max_probability = 1:
4316 # then, every individual who shares this quasi-identifier combination is in
4317 # the dataset.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004318 &quot;minProbability&quot;: 3.14, # Between 0 and 1.
4319 &quot;maxProbability&quot;: 3.14, # Always greater than or equal to min_probability.
4320 &quot;bucketSize&quot;: &quot;A String&quot;, # Number of records within these probability bounds.
4321 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct quasi-identifier tuple values in this bucket.
Bu Sun Kim65020912020-05-20 12:08:20 -07004322 &quot;bucketValues&quot;: [ # Sample of quasi-identifier tuple values in this bucket. The total
4323 # number of classes returned per bucket is capped at 20.
4324 { # A tuple of values for the quasi-identifier columns.
4325 &quot;quasiIdsValues&quot;: [ # The quasi-identifier values.
4326 { # Set of primitive values supported by the system.
4327 # Note that for the purposes of inspection or transformation, the number
4328 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
4329 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
4330 # 123456789, the number of bytes would be counted as 9, even though an
4331 # int64 only holds up to 8 bytes of data.
Bu Sun Kim65020912020-05-20 12:08:20 -07004332 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
4333 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
4334 # and time zone are either specified elsewhere or are not significant. The date
4335 # is relative to the Proleptic Gregorian Calendar. This can represent:
4336 #
4337 # * A full date, with non-zero year, month and day values
4338 # * A month and day value, with a zero year, e.g. an anniversary
4339 # * A year on its own, with zero month and day values
4340 # * A year and month value, with a zero day, e.g. a credit card expiration date
4341 #
4342 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
4343 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
4344 # a year.
4345 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
4346 # month and day.
4347 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
4348 # if specifying a year by itself or a year and month where the day is not
4349 # significant.
4350 },
4351 &quot;stringValue&quot;: &quot;A String&quot;, # string
4352 &quot;integerValue&quot;: &quot;A String&quot;, # integer
4353 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
4354 # or are specified elsewhere. An API may choose to allow leap seconds. Related
4355 # types are google.type.Date and `google.protobuf.Timestamp`.
Bu Sun Kim65020912020-05-20 12:08:20 -07004356 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
4357 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
4358 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004359 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
4360 # allow the value 60 if it allows leap-seconds.
4361 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
Bu Sun Kim65020912020-05-20 12:08:20 -07004362 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004363 &quot;booleanValue&quot;: True or False, # boolean
4364 &quot;floatValue&quot;: 3.14, # float
4365 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
Bu Sun Kim65020912020-05-20 12:08:20 -07004366 },
4367 ],
4368 &quot;estimatedProbability&quot;: 3.14, # The estimated probability that a given individual sharing these
4369 # quasi-identifier values is in the dataset. This value, typically called
4370 # δ, is the ratio between the number of records in the dataset with these
4371 # quasi-identifier values, and the total number of individuals (inside
4372 # *and* outside the dataset) with these quasi-identifier values.
4373 # For example, if there are 15 individuals in the dataset who share the
4374 # same quasi-identifier values, and an estimated 100 people in the entire
4375 # population with these values, then δ is 0.15.
4376 },
4377 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07004378 },
4379 ],
4380 },
4381 &quot;requestedSourceTable&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Input dataset to compute metrics over.
4382 # identified by its project_id, dataset_id, and table_name. Within a query
4383 # a table is often referenced with a string in the format of:
4384 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
4385 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
4386 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
4387 # If omitted, project ID is inferred from the API call.
4388 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
4389 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
4390 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004391 &quot;numericalStatsResult&quot;: { # Result of the numerical stats computation. # Numerical stats result
4392 &quot;minValue&quot;: { # Set of primitive values supported by the system. # Minimum value appearing in the column.
4393 # Note that for the purposes of inspection or transformation, the number
4394 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
4395 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
4396 # 123456789, the number of bytes would be counted as 9, even though an
4397 # int64 only holds up to 8 bytes of data.
4398 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
4399 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
4400 # and time zone are either specified elsewhere or are not significant. The date
4401 # is relative to the Proleptic Gregorian Calendar. This can represent:
4402 #
4403 # * A full date, with non-zero year, month and day values
4404 # * A month and day value, with a zero year, e.g. an anniversary
4405 # * A year on its own, with zero month and day values
4406 # * A year and month value, with a zero day, e.g. a credit card expiration date
4407 #
4408 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
4409 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
4410 # a year.
4411 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
4412 # month and day.
4413 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
4414 # if specifying a year by itself or a year and month where the day is not
4415 # significant.
4416 },
4417 &quot;stringValue&quot;: &quot;A String&quot;, # string
4418 &quot;integerValue&quot;: &quot;A String&quot;, # integer
4419 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
4420 # or are specified elsewhere. An API may choose to allow leap seconds. Related
4421 # types are google.type.Date and `google.protobuf.Timestamp`.
4422 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
4423 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
4424 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
4425 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
4426 # allow the value 60 if it allows leap-seconds.
4427 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
4428 },
4429 &quot;booleanValue&quot;: True or False, # boolean
4430 &quot;floatValue&quot;: 3.14, # float
4431 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
4432 },
4433 &quot;maxValue&quot;: { # Set of primitive values supported by the system. # Maximum value appearing in the column.
4434 # Note that for the purposes of inspection or transformation, the number
4435 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
4436 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
4437 # 123456789, the number of bytes would be counted as 9, even though an
4438 # int64 only holds up to 8 bytes of data.
4439 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
4440 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
4441 # and time zone are either specified elsewhere or are not significant. The date
4442 # is relative to the Proleptic Gregorian Calendar. This can represent:
4443 #
4444 # * A full date, with non-zero year, month and day values
4445 # * A month and day value, with a zero year, e.g. an anniversary
4446 # * A year on its own, with zero month and day values
4447 # * A year and month value, with a zero day, e.g. a credit card expiration date
4448 #
4449 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
4450 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
4451 # a year.
4452 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
4453 # month and day.
4454 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
4455 # if specifying a year by itself or a year and month where the day is not
4456 # significant.
4457 },
4458 &quot;stringValue&quot;: &quot;A String&quot;, # string
4459 &quot;integerValue&quot;: &quot;A String&quot;, # integer
4460 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
4461 # or are specified elsewhere. An API may choose to allow leap seconds. Related
4462 # types are google.type.Date and `google.protobuf.Timestamp`.
4463 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
4464 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
4465 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
4466 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
4467 # allow the value 60 if it allows leap-seconds.
4468 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
4469 },
4470 &quot;booleanValue&quot;: True or False, # boolean
4471 &quot;floatValue&quot;: 3.14, # float
4472 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
4473 },
4474 &quot;quantileValues&quot;: [ # List of 99 values that partition the set of field values into 100 equal
4475 # sized buckets.
4476 { # Set of primitive values supported by the system.
4477 # Note that for the purposes of inspection or transformation, the number
4478 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
4479 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
4480 # 123456789, the number of bytes would be counted as 9, even though an
4481 # int64 only holds up to 8 bytes of data.
4482 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
4483 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
4484 # and time zone are either specified elsewhere or are not significant. The date
4485 # is relative to the Proleptic Gregorian Calendar. This can represent:
4486 #
4487 # * A full date, with non-zero year, month and day values
4488 # * A month and day value, with a zero year, e.g. an anniversary
4489 # * A year on its own, with zero month and day values
4490 # * A year and month value, with a zero day, e.g. a credit card expiration date
4491 #
4492 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
4493 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
4494 # a year.
4495 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
4496 # month and day.
4497 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
4498 # if specifying a year by itself or a year and month where the day is not
4499 # significant.
4500 },
4501 &quot;stringValue&quot;: &quot;A String&quot;, # string
4502 &quot;integerValue&quot;: &quot;A String&quot;, # integer
4503 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
4504 # or are specified elsewhere. An API may choose to allow leap seconds. Related
4505 # types are google.type.Date and `google.protobuf.Timestamp`.
4506 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
4507 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
4508 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
4509 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
4510 # allow the value 60 if it allows leap-seconds.
4511 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
4512 },
4513 &quot;booleanValue&quot;: True or False, # boolean
4514 &quot;floatValue&quot;: 3.14, # float
4515 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
4516 },
4517 ],
4518 },
4519 &quot;lDiversityResult&quot;: { # Result of the l-diversity computation. # L-divesity result
4520 &quot;sensitiveValueFrequencyHistogramBuckets&quot;: [ # Histogram of l-diversity equivalence class sensitive value frequencies.
4521 { # Histogram of l-diversity equivalence class sensitive value frequencies.
4522 &quot;bucketValues&quot;: [ # Sample of equivalence classes in this bucket. The total number of
4523 # classes returned per bucket is capped at 20.
4524 { # The set of columns&#x27; values that share the same ldiversity value.
4525 &quot;numDistinctSensitiveValues&quot;: &quot;A String&quot;, # Number of distinct sensitive values in this equivalence class.
4526 &quot;topSensitiveValues&quot;: [ # Estimated frequencies of top sensitive values.
4527 { # A value of a field, including its frequency.
4528 &quot;count&quot;: &quot;A String&quot;, # How many times the value is contained in the field.
4529 &quot;value&quot;: { # Set of primitive values supported by the system. # A value contained in the field in question.
4530 # Note that for the purposes of inspection or transformation, the number
4531 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
4532 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
4533 # 123456789, the number of bytes would be counted as 9, even though an
4534 # int64 only holds up to 8 bytes of data.
4535 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
4536 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
4537 # and time zone are either specified elsewhere or are not significant. The date
4538 # is relative to the Proleptic Gregorian Calendar. This can represent:
4539 #
4540 # * A full date, with non-zero year, month and day values
4541 # * A month and day value, with a zero year, e.g. an anniversary
4542 # * A year on its own, with zero month and day values
4543 # * A year and month value, with a zero day, e.g. a credit card expiration date
4544 #
4545 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
4546 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
4547 # a year.
4548 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
4549 # month and day.
4550 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
4551 # if specifying a year by itself or a year and month where the day is not
4552 # significant.
4553 },
4554 &quot;stringValue&quot;: &quot;A String&quot;, # string
4555 &quot;integerValue&quot;: &quot;A String&quot;, # integer
4556 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
4557 # or are specified elsewhere. An API may choose to allow leap seconds. Related
4558 # types are google.type.Date and `google.protobuf.Timestamp`.
4559 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
4560 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
4561 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
4562 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
4563 # allow the value 60 if it allows leap-seconds.
4564 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
4565 },
4566 &quot;booleanValue&quot;: True or False, # boolean
4567 &quot;floatValue&quot;: 3.14, # float
4568 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
4569 },
4570 },
4571 ],
4572 &quot;quasiIdsValues&quot;: [ # Quasi-identifier values defining the k-anonymity equivalence
4573 # class. The order is always the same as the original request.
4574 { # Set of primitive values supported by the system.
4575 # Note that for the purposes of inspection or transformation, the number
4576 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
4577 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
4578 # 123456789, the number of bytes would be counted as 9, even though an
4579 # int64 only holds up to 8 bytes of data.
4580 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
4581 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
4582 # and time zone are either specified elsewhere or are not significant. The date
4583 # is relative to the Proleptic Gregorian Calendar. This can represent:
4584 #
4585 # * A full date, with non-zero year, month and day values
4586 # * A month and day value, with a zero year, e.g. an anniversary
4587 # * A year on its own, with zero month and day values
4588 # * A year and month value, with a zero day, e.g. a credit card expiration date
4589 #
4590 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
4591 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
4592 # a year.
4593 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
4594 # month and day.
4595 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
4596 # if specifying a year by itself or a year and month where the day is not
4597 # significant.
4598 },
4599 &quot;stringValue&quot;: &quot;A String&quot;, # string
4600 &quot;integerValue&quot;: &quot;A String&quot;, # integer
4601 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
4602 # or are specified elsewhere. An API may choose to allow leap seconds. Related
4603 # types are google.type.Date and `google.protobuf.Timestamp`.
4604 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
4605 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
4606 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
4607 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
4608 # allow the value 60 if it allows leap-seconds.
4609 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
4610 },
4611 &quot;booleanValue&quot;: True or False, # boolean
4612 &quot;floatValue&quot;: 3.14, # float
4613 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
4614 },
4615 ],
4616 &quot;equivalenceClassSize&quot;: &quot;A String&quot;, # Size of the k-anonymity equivalence class.
4617 },
4618 ],
4619 &quot;sensitiveValueFrequencyLowerBound&quot;: &quot;A String&quot;, # Lower bound on the sensitive value frequencies of the equivalence
4620 # classes in this bucket.
4621 &quot;sensitiveValueFrequencyUpperBound&quot;: &quot;A String&quot;, # Upper bound on the sensitive value frequencies of the equivalence
4622 # classes in this bucket.
4623 &quot;bucketSize&quot;: &quot;A String&quot;, # Total number of equivalence classes in this bucket.
4624 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct equivalence classes in this bucket.
4625 },
4626 ],
4627 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004628 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004629 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name.
Bu Sun Kim65020912020-05-20 12:08:20 -07004630 &quot;errors&quot;: [ # A stream of errors encountered running the job.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004631 { # Details information about an error encountered during job execution or
4632 # the results of an unsuccessful activation of the JobTrigger.
Bu Sun Kim65020912020-05-20 12:08:20 -07004633 &quot;details&quot;: { # The `Status` type defines a logical error model that is suitable for # Detailed error codes and messages.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004634 # different programming environments, including REST APIs and RPC APIs. It is
4635 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
4636 # three pieces of data: error code, error message, and error details.
4637 #
4638 # You can find out more about this error model and how to work with it in the
4639 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim65020912020-05-20 12:08:20 -07004640 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004641 # user-facing error message should be localized and sent in the
4642 # google.rpc.Status.details field, or localized by the client.
Bu Sun Kim65020912020-05-20 12:08:20 -07004643 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004644 # message types for APIs to use.
4645 {
Bu Sun Kim65020912020-05-20 12:08:20 -07004646 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004647 },
4648 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004649 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004650 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004651 &quot;timestamps&quot;: [ # The times the error occurred.
4652 &quot;A String&quot;,
4653 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004654 },
4655 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004656 }</pre>
4657</div>
4658
4659<div class="method">
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004660 <code class="details" id="list">list(parent, orderBy=None, pageToken=None, locationId=None, pageSize=None, filter=None, type=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004661 <pre>Lists DlpJobs that match the specified filter in the request.
4662See https://cloud.google.com/dlp/docs/inspecting-storage and
4663https://cloud.google.com/dlp/docs/compute-risk-analysis to learn more.
4664
4665Args:
Dan O'Mearadd494642020-05-01 07:42:23 -07004666 parent: string, Required. The parent resource name, for example projects/my-project-id. (required)
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004667 orderBy: string, Comma separated list of fields to order by,
4668followed by `asc` or `desc` postfix. This list is case-insensitive,
4669default sorting order is ascending, redundant space characters are
4670insignificant.
4671
4672Example: `name asc, end_time asc, create_time desc`
4673
4674Supported fields are:
4675
4676- `create_time`: corresponds to time the job was created.
4677- `end_time`: corresponds to time the job ended.
4678- `name`: corresponds to job&#x27;s name.
4679- `state`: corresponds to `state`
4680 pageToken: string, The standard list page token.
4681 locationId: string, The geographic location where jobs will be retrieved from.
4682Use `-` for all locations. Reserved for future extensions.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004683 pageSize: integer, The standard list page size.
Dan O'Mearadd494642020-05-01 07:42:23 -07004684 filter: string, Allows filtering.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004685
4686Supported syntax:
4687
4688* Filter expressions are made up of one or more restrictions.
4689* Restrictions can be combined by `AND` or `OR` logical operators. A
4690sequence of restrictions implicitly uses `AND`.
Dan O'Mearadd494642020-05-01 07:42:23 -07004691* A restriction has the form of `{field} {operator} {value}`.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004692* Supported fields/values for inspect jobs:
4693 - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED
4694 - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY
4695 - `trigger_name` - The resource name of the trigger that created job.
Bu Sun Kim65020912020-05-20 12:08:20 -07004696 - &#x27;end_time` - Corresponds to time the job finished.
4697 - &#x27;start_time` - Corresponds to time the job finished.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004698* Supported fields for risk analysis jobs:
4699 - `state` - RUNNING|CANCELED|FINISHED|FAILED
Bu Sun Kim65020912020-05-20 12:08:20 -07004700 - &#x27;end_time` - Corresponds to time the job finished.
4701 - &#x27;start_time` - Corresponds to time the job finished.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004702* The operator must be `=` or `!=`.
4703
4704Examples:
4705
4706* inspected_storage = cloud_storage AND state = done
4707* inspected_storage = cloud_storage OR inspected_storage = bigquery
4708* inspected_storage = cloud_storage AND (state = done OR state = canceled)
Bu Sun Kim65020912020-05-20 12:08:20 -07004709* end_time &gt; \&quot;2017-12-12T00:00:00+00:00\&quot;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004710
4711The length of this field should be no more than 500 characters.
Bu Sun Kim65020912020-05-20 12:08:20 -07004712 type: string, The type of job. Defaults to `DlpJobType.INSPECT`
Bu Sun Kim65020912020-05-20 12:08:20 -07004713 x__xgafv: string, V1 error format.
4714 Allowed values
4715 1 - v1 error format
4716 2 - v2 error format
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004717
4718Returns:
4719 An object of the form:
4720
4721 { # The response message for listing DLP jobs.
Bu Sun Kim65020912020-05-20 12:08:20 -07004722 &quot;nextPageToken&quot;: &quot;A String&quot;, # The standard List next-page token.
4723 &quot;jobs&quot;: [ # A list of DlpJobs that matches the specified filter in the request.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07004724 { # Combines all of the information about a DLP job.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004725 &quot;type&quot;: &quot;A String&quot;, # The type of job.
4726 &quot;endTime&quot;: &quot;A String&quot;, # Time when the job finished.
4727 &quot;startTime&quot;: &quot;A String&quot;, # Time when the job started.
4728 &quot;inspectDetails&quot;: { # The results of an inspect DataSource job. # Results from inspecting a data source.
4729 &quot;requestedOptions&quot;: { # Snapshot of the inspection configuration. # The configuration used for this job.
4730 &quot;snapshotInspectTemplate&quot;: { # The inspectTemplate contains a configuration (set of types of sensitive data # If run with an InspectTemplate, a snapshot of its state at the time of
4731 # this run.
4732 # to be detected) to be used anywhere you otherwise would normally specify
4733 # InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
4734 # to learn more.
4735 &quot;name&quot;: &quot;A String&quot;, # Output only. The template name.
Bu Sun Kim65020912020-05-20 12:08:20 -07004736 #
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004737 # The template will have one of the following formats:
4738 # `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR
4739 # `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`;
4740 &quot;description&quot;: &quot;A String&quot;, # Short description (max 256 chars).
4741 &quot;displayName&quot;: &quot;A String&quot;, # Display name (max 256 chars).
4742 &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
4743 # When used with redactContent only info_types and min_likelihood are currently
4744 # used.
4745 &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
4746 # POSSIBLE.
4747 # See https://cloud.google.com/dlp/docs/likelihood to learn more.
4748 &quot;contentOptions&quot;: [ # List of options defining data content to scan.
4749 # If empty, text, images, and other content will be included.
4750 &quot;A String&quot;,
4751 ],
4752 &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
4753 # InfoType values returned by ListInfoTypes or listed at
4754 # https://cloud.google.com/dlp/docs/infotypes-reference.
Bu Sun Kim65020912020-05-20 12:08:20 -07004755 #
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004756 # When no InfoTypes or CustomInfoTypes are specified in a request, the
4757 # system may automatically choose what detectors to run. By default this may
4758 # be all types, but may change over time as detectors are updated.
Bu Sun Kim65020912020-05-20 12:08:20 -07004759 #
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004760 # If you need precise control and predictability as to what detectors are
4761 # run you should specify specific InfoTypes listed in the reference,
4762 # otherwise a default list will be used, which may change over time.
4763 { # Type of information detected by the API.
4764 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
4765 # creating a CustomInfoType, or one of the names listed
4766 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
4767 # a built-in type. InfoType names should conform to the pattern
4768 # `[a-zA-Z0-9_]{1,64}`.
4769 },
4770 ],
4771 &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
4772 &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
4773 # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
4774 { # Custom information type provided by the user. Used to find domain-specific
4775 # sensitive information configurable to the data in question.
4776 &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
4777 # support reversing.
4778 # such as
4779 # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
4780 # These types of transformations are
4781 # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
4782 # output. This should be used in conjunction with a field on the
4783 # transformation such as `surrogate_info_type`. This CustomInfoType does
4784 # not support the use of `detection_rules`.
4785 },
4786 &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
4787 # altered by a detection rule if the finding meets the criteria specified by
4788 # the rule. Defaults to `VERY_LIKELY` if not specified.
4789 &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
4790 # infoType, when the name matches one of existing infoTypes and that infoType
4791 # is specified in `InspectContent.info_types` field. Specifying the latter
4792 # adds findings to the one detected by the system. If built-in info type is
4793 # not specified in `InspectContent.info_types` list then the name is treated
4794 # as a custom info type.
4795 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
4796 # creating a CustomInfoType, or one of the names listed
4797 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
4798 # a built-in type. InfoType names should conform to the pattern
4799 # `[a-zA-Z0-9_]{1,64}`.
4800 },
4801 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
4802 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
4803 # specified, the entire match is returned. No more than 3 may be included.
4804 42,
4805 ],
4806 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
4807 # (https://github.com/google/re2/wiki/Syntax) can be found under the
4808 # google/re2 repository on GitHub.
4809 },
4810 &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
4811 # Rules are applied in order that they are specified. Not supported for the
4812 # `surrogate_type` CustomInfoType.
4813 { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
4814 # `CustomInfoType` to alter behavior under certain circumstances, depending
4815 # on the specific details of the rule. Not supported for the `surrogate_type`
4816 # custom infoType.
4817 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
4818 # proximity of hotwords.
4819 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
4820 # part of a detection rule.
4821 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
4822 # levels. For example, if a finding would be `POSSIBLE` without the
4823 # detection rule and `relative_likelihood` is 1, then it is upgraded to
4824 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
4825 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
4826 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
4827 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
4828 # a final likelihood of `LIKELY`.
4829 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
4830 },
4831 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
4832 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
4833 # specified, the entire match is returned. No more than 3 may be included.
4834 42,
4835 ],
4836 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
4837 # (https://github.com/google/re2/wiki/Syntax) can be found under the
4838 # google/re2 repository on GitHub.
4839 },
4840 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
4841 # The total length of the window cannot exceed 1000 characters. Note that
4842 # the finding itself will be included in the window, so that hotwords may
4843 # be used to match substrings of the finding itself. For example, the
4844 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
4845 # adjusted upwards if the area code is known to be the local area code of
4846 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
4847 # is the area code in question.
4848 # rule.
4849 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
4850 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
4851 },
Bu Sun Kim65020912020-05-20 12:08:20 -07004852 },
4853 },
4854 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004855 &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
4856 # to be returned. It still can be used for rules matching.
4857 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
4858 # be used to match sensitive information specific to the data, such as a list
4859 # of employee IDs or job titles.
4860 #
4861 # Dictionary words are case-insensitive and all characters other than letters
4862 # and digits in the unicode [Basic Multilingual
4863 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
4864 # will be replaced with whitespace when scanning for matches, so the
4865 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
4866 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
4867 # surrounding any match must be of a different type than the adjacent
4868 # characters within the word, so letters must be next to non-letters and
4869 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
4870 # match the first three letters of the text &quot;jen123&quot; but will return no
4871 # matches for &quot;jennifer&quot;.
4872 #
4873 # Dictionary words containing a large number of characters that are not
4874 # letters or digits may result in unexpected findings because such characters
4875 # are treated as whitespace. The
4876 # [limits](https://cloud.google.com/dlp/limits) page contains details about
4877 # the size limits of dictionaries. For dictionaries that do not fit within
4878 # these constraints, consider using `LargeCustomDictionaryConfig` in the
4879 # `StoredInfoType` API.
4880 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
4881 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
4882 # at least one phrase and every phrase must contain at least 2 characters
4883 # that are letters or digits. [required]
4884 &quot;A String&quot;,
4885 ],
4886 },
4887 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
4888 # is accepted.
4889 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
4890 # Example: gs://[BUCKET_NAME]/dictionary.txt
4891 },
4892 },
4893 &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
4894 # `InspectDataSource`. Not currently supported in `InspectContent`.
4895 &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
4896 # `organizations/433245324/storedInfoTypes/432452342` or
4897 # `projects/project-id/storedInfoTypes/432452342`.
4898 &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
4899 # inspection was created. Output-only field, populated by the system.
4900 },
4901 },
4902 ],
4903 &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
4904 # included in the response; see Finding.quote.
4905 &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
4906 # Exclusion rules, contained in the set are executed in the end, other
4907 # rules are executed in the order they are specified for each info type.
4908 { # Rule set for modifying a set of infoTypes to alter behavior under certain
4909 # circumstances, depending on the specific details of the rules within the set.
4910 &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
4911 { # Type of information detected by the API.
4912 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
4913 # creating a CustomInfoType, or one of the names listed
4914 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
4915 # a built-in type. InfoType names should conform to the pattern
4916 # `[a-zA-Z0-9_]{1,64}`.
4917 },
4918 ],
4919 &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
4920 { # A single inspection rule to be applied to infoTypes, specified in
4921 # `InspectionRuleSet`.
4922 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
4923 # proximity of hotwords.
4924 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
4925 # part of a detection rule.
4926 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
4927 # levels. For example, if a finding would be `POSSIBLE` without the
4928 # detection rule and `relative_likelihood` is 1, then it is upgraded to
4929 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
4930 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
4931 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
4932 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
4933 # a final likelihood of `LIKELY`.
4934 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
Bu Sun Kim65020912020-05-20 12:08:20 -07004935 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004936 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
4937 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
4938 # specified, the entire match is returned. No more than 3 may be included.
4939 42,
4940 ],
4941 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
4942 # (https://github.com/google/re2/wiki/Syntax) can be found under the
4943 # google/re2 repository on GitHub.
4944 },
4945 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
4946 # The total length of the window cannot exceed 1000 characters. Note that
4947 # the finding itself will be included in the window, so that hotwords may
4948 # be used to match substrings of the finding itself. For example, the
4949 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
4950 # adjusted upwards if the area code is known to be the local area code of
4951 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
4952 # is the area code in question.
4953 # rule.
4954 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
4955 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
Bu Sun Kim65020912020-05-20 12:08:20 -07004956 },
4957 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07004958 &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
4959 # `InspectionRuleSet` are removed from results.
4960 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
4961 # be used to match sensitive information specific to the data, such as a list
4962 # of employee IDs or job titles.
4963 #
4964 # Dictionary words are case-insensitive and all characters other than letters
4965 # and digits in the unicode [Basic Multilingual
4966 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
4967 # will be replaced with whitespace when scanning for matches, so the
4968 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
4969 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
4970 # surrounding any match must be of a different type than the adjacent
4971 # characters within the word, so letters must be next to non-letters and
4972 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
4973 # match the first three letters of the text &quot;jen123&quot; but will return no
4974 # matches for &quot;jennifer&quot;.
4975 #
4976 # Dictionary words containing a large number of characters that are not
4977 # letters or digits may result in unexpected findings because such characters
4978 # are treated as whitespace. The
4979 # [limits](https://cloud.google.com/dlp/limits) page contains details about
4980 # the size limits of dictionaries. For dictionaries that do not fit within
4981 # these constraints, consider using `LargeCustomDictionaryConfig` in the
4982 # `StoredInfoType` API.
4983 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
4984 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
4985 # at least one phrase and every phrase must contain at least 2 characters
4986 # that are letters or digits. [required]
4987 &quot;A String&quot;,
4988 ],
4989 },
4990 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
4991 # is accepted.
4992 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
4993 # Example: gs://[BUCKET_NAME]/dictionary.txt
4994 },
4995 },
4996 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
4997 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
4998 # specified, the entire match is returned. No more than 3 may be included.
4999 42,
5000 ],
5001 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
5002 # (https://github.com/google/re2/wiki/Syntax) can be found under the
5003 # google/re2 repository on GitHub.
5004 },
5005 &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
5006 &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
5007 # contained within with a finding of an infoType from this list. For
5008 # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
5009 # `exclusion_rule` containing `exclude_info_types.info_types` with
5010 # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
5011 # with EMAIL_ADDRESS finding.
5012 # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
5013 # finding, namely email address.
5014 { # Type of information detected by the API.
5015 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
5016 # creating a CustomInfoType, or one of the names listed
5017 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
5018 # a built-in type. InfoType names should conform to the pattern
5019 # `[a-zA-Z0-9_]{1,64}`.
5020 },
5021 ],
5022 },
5023 &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
5024 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005025 },
5026 ],
5027 },
5028 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005029 &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
5030 &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
5031 # When set within `InspectJobConfig`,
5032 # the maximum returned is 2000 regardless if this is set higher.
5033 # When set within `InspectContentRequest`, this field is ignored.
5034 &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
5035 { # Max findings configuration per infoType, per content item or long
5036 # running DlpJob.
5037 &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
5038 &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
5039 # info_type should be provided. If InfoTypeLimit does not have an
5040 # info_type, the DLP API applies the limit against all info_types that
5041 # are found but not specified in another InfoTypeLimit.
5042 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
5043 # creating a CustomInfoType, or one of the names listed
5044 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
5045 # a built-in type. InfoType names should conform to the pattern
5046 # `[a-zA-Z0-9_]{1,64}`.
5047 },
5048 },
5049 ],
5050 &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
5051 # When set within `InspectContentRequest`, the maximum returned is 2000
5052 # regardless if this is set higher.
5053 },
5054 },
5055 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of an inspectTemplate.
5056 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of an inspectTemplate.
5057 },
5058 &quot;jobConfig&quot;: { # Controls what and how to inspect for findings. # Inspect config.
5059 &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # How and what to scan for.
5060 # When used with redactContent only info_types and min_likelihood are currently
5061 # used.
5062 &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
5063 # POSSIBLE.
5064 # See https://cloud.google.com/dlp/docs/likelihood to learn more.
5065 &quot;contentOptions&quot;: [ # List of options defining data content to scan.
5066 # If empty, text, images, and other content will be included.
5067 &quot;A String&quot;,
5068 ],
5069 &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
5070 # InfoType values returned by ListInfoTypes or listed at
5071 # https://cloud.google.com/dlp/docs/infotypes-reference.
5072 #
5073 # When no InfoTypes or CustomInfoTypes are specified in a request, the
5074 # system may automatically choose what detectors to run. By default this may
5075 # be all types, but may change over time as detectors are updated.
5076 #
5077 # If you need precise control and predictability as to what detectors are
5078 # run you should specify specific InfoTypes listed in the reference,
5079 # otherwise a default list will be used, which may change over time.
5080 { # Type of information detected by the API.
5081 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
5082 # creating a CustomInfoType, or one of the names listed
5083 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
5084 # a built-in type. InfoType names should conform to the pattern
5085 # `[a-zA-Z0-9_]{1,64}`.
5086 },
5087 ],
5088 &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
5089 &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
5090 # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
5091 { # Custom information type provided by the user. Used to find domain-specific
5092 # sensitive information configurable to the data in question.
5093 &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
5094 # support reversing.
5095 # such as
5096 # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
5097 # These types of transformations are
5098 # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
5099 # output. This should be used in conjunction with a field on the
5100 # transformation such as `surrogate_info_type`. This CustomInfoType does
5101 # not support the use of `detection_rules`.
5102 },
5103 &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
5104 # altered by a detection rule if the finding meets the criteria specified by
5105 # the rule. Defaults to `VERY_LIKELY` if not specified.
5106 &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
5107 # infoType, when the name matches one of existing infoTypes and that infoType
5108 # is specified in `InspectContent.info_types` field. Specifying the latter
5109 # adds findings to the one detected by the system. If built-in info type is
5110 # not specified in `InspectContent.info_types` list then the name is treated
5111 # as a custom info type.
5112 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
5113 # creating a CustomInfoType, or one of the names listed
5114 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
5115 # a built-in type. InfoType names should conform to the pattern
5116 # `[a-zA-Z0-9_]{1,64}`.
5117 },
5118 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
5119 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
5120 # specified, the entire match is returned. No more than 3 may be included.
5121 42,
5122 ],
5123 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
5124 # (https://github.com/google/re2/wiki/Syntax) can be found under the
5125 # google/re2 repository on GitHub.
5126 },
5127 &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
5128 # Rules are applied in order that they are specified. Not supported for the
5129 # `surrogate_type` CustomInfoType.
5130 { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
5131 # `CustomInfoType` to alter behavior under certain circumstances, depending
5132 # on the specific details of the rule. Not supported for the `surrogate_type`
5133 # custom infoType.
5134 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
5135 # proximity of hotwords.
5136 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
5137 # part of a detection rule.
5138 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
5139 # levels. For example, if a finding would be `POSSIBLE` without the
5140 # detection rule and `relative_likelihood` is 1, then it is upgraded to
5141 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
5142 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
5143 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
5144 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
5145 # a final likelihood of `LIKELY`.
5146 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
5147 },
5148 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
5149 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
5150 # specified, the entire match is returned. No more than 3 may be included.
5151 42,
5152 ],
5153 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
5154 # (https://github.com/google/re2/wiki/Syntax) can be found under the
5155 # google/re2 repository on GitHub.
5156 },
5157 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
5158 # The total length of the window cannot exceed 1000 characters. Note that
5159 # the finding itself will be included in the window, so that hotwords may
5160 # be used to match substrings of the finding itself. For example, the
5161 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
5162 # adjusted upwards if the area code is known to be the local area code of
5163 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
5164 # is the area code in question.
5165 # rule.
5166 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
5167 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
5168 },
5169 },
5170 },
5171 ],
5172 &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
5173 # to be returned. It still can be used for rules matching.
5174 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
5175 # be used to match sensitive information specific to the data, such as a list
5176 # of employee IDs or job titles.
5177 #
5178 # Dictionary words are case-insensitive and all characters other than letters
5179 # and digits in the unicode [Basic Multilingual
5180 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
5181 # will be replaced with whitespace when scanning for matches, so the
5182 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
5183 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
5184 # surrounding any match must be of a different type than the adjacent
5185 # characters within the word, so letters must be next to non-letters and
5186 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
5187 # match the first three letters of the text &quot;jen123&quot; but will return no
5188 # matches for &quot;jennifer&quot;.
5189 #
5190 # Dictionary words containing a large number of characters that are not
5191 # letters or digits may result in unexpected findings because such characters
5192 # are treated as whitespace. The
5193 # [limits](https://cloud.google.com/dlp/limits) page contains details about
5194 # the size limits of dictionaries. For dictionaries that do not fit within
5195 # these constraints, consider using `LargeCustomDictionaryConfig` in the
5196 # `StoredInfoType` API.
5197 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
5198 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
5199 # at least one phrase and every phrase must contain at least 2 characters
5200 # that are letters or digits. [required]
5201 &quot;A String&quot;,
5202 ],
5203 },
5204 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
5205 # is accepted.
5206 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
5207 # Example: gs://[BUCKET_NAME]/dictionary.txt
5208 },
5209 },
5210 &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
5211 # `InspectDataSource`. Not currently supported in `InspectContent`.
5212 &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
5213 # `organizations/433245324/storedInfoTypes/432452342` or
5214 # `projects/project-id/storedInfoTypes/432452342`.
5215 &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
5216 # inspection was created. Output-only field, populated by the system.
5217 },
5218 },
5219 ],
5220 &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
5221 # included in the response; see Finding.quote.
5222 &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
5223 # Exclusion rules, contained in the set are executed in the end, other
5224 # rules are executed in the order they are specified for each info type.
5225 { # Rule set for modifying a set of infoTypes to alter behavior under certain
5226 # circumstances, depending on the specific details of the rules within the set.
5227 &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
5228 { # Type of information detected by the API.
5229 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
5230 # creating a CustomInfoType, or one of the names listed
5231 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
5232 # a built-in type. InfoType names should conform to the pattern
5233 # `[a-zA-Z0-9_]{1,64}`.
5234 },
5235 ],
5236 &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
5237 { # A single inspection rule to be applied to infoTypes, specified in
5238 # `InspectionRuleSet`.
5239 &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
5240 # proximity of hotwords.
5241 &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
5242 # part of a detection rule.
5243 &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
5244 # levels. For example, if a finding would be `POSSIBLE` without the
5245 # detection rule and `relative_likelihood` is 1, then it is upgraded to
5246 # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
5247 # Likelihood may never drop below `VERY_UNLIKELY` or exceed
5248 # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
5249 # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
5250 # a final likelihood of `LIKELY`.
5251 &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
5252 },
5253 &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
5254 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
5255 # specified, the entire match is returned. No more than 3 may be included.
5256 42,
5257 ],
5258 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
5259 # (https://github.com/google/re2/wiki/Syntax) can be found under the
5260 # google/re2 repository on GitHub.
5261 },
5262 &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
5263 # The total length of the window cannot exceed 1000 characters. Note that
5264 # the finding itself will be included in the window, so that hotwords may
5265 # be used to match substrings of the finding itself. For example, the
5266 # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
5267 # adjusted upwards if the area code is known to be the local area code of
5268 # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
5269 # is the area code in question.
5270 # rule.
5271 &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
5272 &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
5273 },
5274 },
5275 &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
5276 # `InspectionRuleSet` are removed from results.
5277 &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
5278 # be used to match sensitive information specific to the data, such as a list
5279 # of employee IDs or job titles.
5280 #
5281 # Dictionary words are case-insensitive and all characters other than letters
5282 # and digits in the unicode [Basic Multilingual
5283 # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
5284 # will be replaced with whitespace when scanning for matches, so the
5285 # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
5286 # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
5287 # surrounding any match must be of a different type than the adjacent
5288 # characters within the word, so letters must be next to non-letters and
5289 # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
5290 # match the first three letters of the text &quot;jen123&quot; but will return no
5291 # matches for &quot;jennifer&quot;.
5292 #
5293 # Dictionary words containing a large number of characters that are not
5294 # letters or digits may result in unexpected findings because such characters
5295 # are treated as whitespace. The
5296 # [limits](https://cloud.google.com/dlp/limits) page contains details about
5297 # the size limits of dictionaries. For dictionaries that do not fit within
5298 # these constraints, consider using `LargeCustomDictionaryConfig` in the
5299 # `StoredInfoType` API.
5300 &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
5301 &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
5302 # at least one phrase and every phrase must contain at least 2 characters
5303 # that are letters or digits. [required]
5304 &quot;A String&quot;,
5305 ],
5306 },
5307 &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
5308 # is accepted.
5309 &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
5310 # Example: gs://[BUCKET_NAME]/dictionary.txt
5311 },
5312 },
5313 &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
5314 &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
5315 # specified, the entire match is returned. No more than 3 may be included.
5316 42,
5317 ],
5318 &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
5319 # (https://github.com/google/re2/wiki/Syntax) can be found under the
5320 # google/re2 repository on GitHub.
5321 },
5322 &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
5323 &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
5324 # contained within with a finding of an infoType from this list. For
5325 # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
5326 # `exclusion_rule` containing `exclude_info_types.info_types` with
5327 # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
5328 # with EMAIL_ADDRESS finding.
5329 # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
5330 # finding, namely email address.
5331 { # Type of information detected by the API.
5332 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
5333 # creating a CustomInfoType, or one of the names listed
5334 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
5335 # a built-in type. InfoType names should conform to the pattern
5336 # `[a-zA-Z0-9_]{1,64}`.
5337 },
5338 ],
5339 },
5340 &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
5341 },
5342 },
5343 ],
5344 },
5345 ],
5346 &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
5347 &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
5348 # When set within `InspectJobConfig`,
5349 # the maximum returned is 2000 regardless if this is set higher.
5350 # When set within `InspectContentRequest`, this field is ignored.
5351 &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
5352 { # Max findings configuration per infoType, per content item or long
5353 # running DlpJob.
5354 &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
5355 &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
5356 # info_type should be provided. If InfoTypeLimit does not have an
5357 # info_type, the DLP API applies the limit against all info_types that
5358 # are found but not specified in another InfoTypeLimit.
5359 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
5360 # creating a CustomInfoType, or one of the names listed
5361 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
5362 # a built-in type. InfoType names should conform to the pattern
5363 # `[a-zA-Z0-9_]{1,64}`.
5364 },
5365 },
5366 ],
5367 &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
5368 # When set within `InspectContentRequest`, the maximum returned is 2000
5369 # regardless if this is set higher.
5370 },
5371 },
5372 &quot;actions&quot;: [ # Actions to execute at the completion of the job.
5373 { # A task to execute on the completion of a job.
5374 # See https://cloud.google.com/dlp/docs/concepts-actions to learn more.
5375 &quot;publishSummaryToCscc&quot;: { # Publish the result summary of a DlpJob to the Cloud Security # Publish summary to Cloud Security Command Center (Alpha).
5376 # Command Center (CSCC Alpha).
5377 # This action is only available for projects which are parts of
5378 # an organization and whitelisted for the alpha Cloud Security Command
5379 # Center.
5380 # The action will publish count of finding instances and their info types.
5381 # The summary of findings will be persisted in CSCC and are governed by CSCC
5382 # service-specific policy, see https://cloud.google.com/terms/service-terms
5383 # Only a single instance of this action can be specified.
5384 # Compatible with: Inspect
5385 },
5386 &quot;jobNotificationEmails&quot;: { # Enable email notification to project owners and editors on jobs&#x27;s # Enable email notification for project owners and editors on job&#x27;s
5387 # completion/failure.
5388 # completion/failure.
5389 },
5390 &quot;saveFindings&quot;: { # If set, the detailed findings will be persisted to the specified # Save resulting findings in a provided location.
5391 # OutputStorageConfig. Only a single instance of this action can be
5392 # specified.
5393 # Compatible with: Inspect, Risk
5394 &quot;outputConfig&quot;: { # Cloud repository for storing output. # Location to store findings outside of DLP.
5395 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Store findings in an existing table or a new table in an existing
5396 # dataset. If table_id is not set a new one will be generated
5397 # for you with the following format:
5398 # dlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used for
5399 # generating the date details.
5400 #
5401 # For Inspect, each column in an existing output table must have the same
5402 # name, type, and mode of a field in the `Finding` object.
5403 #
5404 # For Risk, an existing output table should be the output of a previous
5405 # Risk analysis job run on the same source table, with the same privacy
5406 # metric and quasi-identifiers. Risk jobs that analyze the same table but
5407 # compute a different privacy metric, or use different sets of
5408 # quasi-identifiers, cannot store their results in the same table.
5409 # identified by its project_id, dataset_id, and table_name. Within a query
5410 # a table is often referenced with a string in the format of:
5411 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
5412 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
5413 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
5414 # If omitted, project ID is inferred from the API call.
5415 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
5416 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
5417 },
5418 &quot;outputSchema&quot;: &quot;A String&quot;, # Schema used for writing the findings for Inspect jobs. This field is only
5419 # used for Inspect and must be unspecified for Risk jobs. Columns are derived
5420 # from the `Finding` object. If appending to an existing table, any columns
5421 # from the predefined schema that are missing will be added. No columns in
5422 # the existing table will be deleted.
5423 #
5424 # If unspecified, then all available columns will be used for a new table or
5425 # an (existing) table with no schema, and no changes will be made to an
5426 # existing table that has a schema.
5427 # Only for use with external storage.
5428 },
5429 },
5430 &quot;pubSub&quot;: { # Publish a message into given Pub/Sub topic when DlpJob has completed. The # Publish a notification to a pubsub topic.
5431 # message contains a single field, `DlpJobName`, which is equal to the
5432 # finished job&#x27;s
5433 # [`DlpJob.name`](/dlp/docs/reference/rest/v2/projects.dlpJobs#DlpJob).
5434 # Compatible with: Inspect, Risk
5435 &quot;topic&quot;: &quot;A String&quot;, # Cloud Pub/Sub topic to send notifications to. The topic must have given
5436 # publishing access rights to the DLP API service account executing
5437 # the long running DlpJob sending the notifications.
5438 # Format is projects/{project}/topics/{topic}.
5439 },
5440 &quot;publishFindingsToCloudDataCatalog&quot;: { # Publish findings of a DlpJob to Cloud Data Catalog. Labels summarizing the # Publish findings to Cloud Datahub.
5441 # results of the DlpJob will be applied to the entry for the resource scanned
5442 # in Cloud Data Catalog. Any labels previously written by another DlpJob will
5443 # be deleted. InfoType naming patterns are strictly enforced when using this
5444 # feature. Note that the findings will be persisted in Cloud Data Catalog
5445 # storage and are governed by Data Catalog service-specific policy, see
5446 # https://cloud.google.com/terms/service-terms
5447 # Only a single instance of this action can be specified and only allowed if
5448 # all resources being scanned are BigQuery tables.
5449 # Compatible with: Inspect
5450 },
5451 &quot;publishToStackdriver&quot;: { # Enable Stackdriver metric dlp.googleapis.com/finding_count. This # Enable Stackdriver metric dlp.googleapis.com/finding_count.
5452 # will publish a metric to stack driver on each infotype requested and
5453 # how many findings were found for it. CustomDetectors will be bucketed
5454 # as &#x27;Custom&#x27; under the Stackdriver label &#x27;info_type&#x27;.
5455 },
5456 },
5457 ],
5458 &quot;storageConfig&quot;: { # Shared message indicating Cloud storage type. # The data to scan.
5459 &quot;hybridOptions&quot;: { # Configuration to control jobs where the content being inspected is outside # Hybrid inspection options.
5460 # Early access feature is in a pre-release state and might change or have
5461 # limited support. For more information, see
5462 # https://cloud.google.com/products#product-launch-stages.
5463 # of Google Cloud Platform.
5464 &quot;labels&quot;: { # To organize findings, these labels will be added to each finding.
5465 #
5466 # Label keys must be between 1 and 63 characters long and must conform
5467 # to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.
5468 #
5469 # Label values must be between 0 and 63 characters long and must conform
5470 # to the regular expression `([a-z]([-a-z0-9]*[a-z0-9])?)?`.
5471 #
5472 # No more than 10 labels can be associated with a given finding.
5473 #
5474 # Examples:
5475 # * `&quot;environment&quot; : &quot;production&quot;`
5476 # * `&quot;pipeline&quot; : &quot;etl&quot;`
5477 &quot;a_key&quot;: &quot;A String&quot;,
5478 },
5479 &quot;description&quot;: &quot;A String&quot;, # A short description of where the data is coming from. Will be stored once
5480 # in the job. 256 max length.
5481 &quot;tableOptions&quot;: { # Instructions regarding the table content being inspected. # If the container is a table, additional information to make findings
5482 # meaningful such as the columns that are primary keys.
5483 &quot;identifyingFields&quot;: [ # The columns that are the primary keys for table objects included in
5484 # ContentItem. A copy of this cell&#x27;s value will stored alongside alongside
5485 # each finding so that the finding can be traced to the specific row it came
5486 # from. No more than 3 may be provided.
5487 { # General identifier of a data field in a storage service.
5488 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5489 },
5490 ],
5491 },
5492 &quot;requiredFindingLabelKeys&quot;: [ # These are labels that each inspection request must include within their
5493 # &#x27;finding_labels&#x27; map. Request may contain others, but any missing one of
5494 # these will be rejected.
5495 #
5496 # Label keys must be between 1 and 63 characters long and must conform
5497 # to the following regular expression: `[a-z]([-a-z0-9]*[a-z0-9])?`.
5498 #
5499 # No more than 10 keys can be required.
5500 &quot;A String&quot;,
5501 ],
5502 },
5503 &quot;datastoreOptions&quot;: { # Options defining a data set within Google Cloud Datastore. # Google Cloud Datastore options.
5504 &quot;partitionId&quot;: { # Datastore partition ID. # A partition ID identifies a grouping of entities. The grouping is always
5505 # by project and namespace, however the namespace ID may be empty.
5506 # A partition ID identifies a grouping of entities. The grouping is always
5507 # by project and namespace, however the namespace ID may be empty.
5508 #
5509 # A partition ID contains several dimensions:
5510 # project ID and namespace ID.
5511 &quot;projectId&quot;: &quot;A String&quot;, # The ID of the project to which the entities belong.
5512 &quot;namespaceId&quot;: &quot;A String&quot;, # If not empty, the ID of the namespace to which the entities belong.
5513 },
5514 &quot;kind&quot;: { # A representation of a Datastore kind. # The kind to process.
5515 &quot;name&quot;: &quot;A String&quot;, # The name of the kind.
5516 },
5517 },
5518 &quot;timespanConfig&quot;: { # Configuration of the timespan of the items to include in scanning.
5519 # Currently only supported when inspecting Google Cloud Storage and BigQuery.
5520 &quot;timestampField&quot;: { # General identifier of a data field in a storage service. # Specification of the field containing the timestamp of scanned items.
5521 # Used for data sources like Datastore and BigQuery.
5522 #
5523 # For BigQuery:
5524 # Required to filter out rows based on the given start and
5525 # end times. If not specified and the table was modified between the given
5526 # start and end times, the entire table will be scanned.
5527 # The valid data types of the timestamp field are: `INTEGER`, `DATE`,
5528 # `TIMESTAMP`, or `DATETIME` BigQuery column.
5529 #
5530 # For Datastore.
5531 # Valid data types of the timestamp field are: `TIMESTAMP`.
5532 # Datastore entity will be scanned if the timestamp property does not
5533 # exist or its value is empty or invalid.
5534 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5535 },
5536 &quot;enableAutoPopulationOfTimespanConfig&quot;: True or False, # When the job is started by a JobTrigger we will automatically figure out
5537 # a valid start_time to avoid scanning files that have not been modified
5538 # since the last time the JobTrigger executed. This will be based on the
5539 # time of the execution of the last run of the JobTrigger.
5540 &quot;endTime&quot;: &quot;A String&quot;, # Exclude files or rows newer than this value.
5541 # If set to zero, no upper time limit is applied.
5542 &quot;startTime&quot;: &quot;A String&quot;, # Exclude files or rows older than this value.
5543 },
5544 &quot;cloudStorageOptions&quot;: { # Options defining a file or a set of files within a Google Cloud Storage # Google Cloud Storage options.
5545 # bucket.
5546 &quot;bytesLimitPerFile&quot;: &quot;A String&quot;, # Max number of bytes to scan from a file. If a scanned file&#x27;s size is bigger
5547 # than this value then the rest of the bytes are omitted. Only one
5548 # of bytes_limit_per_file and bytes_limit_per_file_percent can be specified.
5549 &quot;fileSet&quot;: { # Set of files to scan. # The set of one or more files to scan.
5550 &quot;regexFileSet&quot;: { # Message representing a set of files in a Cloud Storage bucket. Regular # The regex-filtered set of files to scan. Exactly one of `url` or
5551 # `regex_file_set` must be set.
5552 # expressions are used to allow fine-grained control over which files in the
5553 # bucket to include.
5554 #
5555 # Included files are those that match at least one item in `include_regex` and
5556 # do not match any items in `exclude_regex`. Note that a file that matches
5557 # items from both lists will _not_ be included. For a match to occur, the
5558 # entire file path (i.e., everything in the url after the bucket name) must
5559 # match the regular expression.
5560 #
5561 # For example, given the input `{bucket_name: &quot;mybucket&quot;, include_regex:
5562 # [&quot;directory1/.*&quot;], exclude_regex:
5563 # [&quot;directory1/excluded.*&quot;]}`:
5564 #
5565 # * `gs://mybucket/directory1/myfile` will be included
5566 # * `gs://mybucket/directory1/directory2/myfile` will be included (`.*` matches
5567 # across `/`)
5568 # * `gs://mybucket/directory0/directory1/myfile` will _not_ be included (the
5569 # full path doesn&#x27;t match any items in `include_regex`)
5570 # * `gs://mybucket/directory1/excludedfile` will _not_ be included (the path
5571 # matches an item in `exclude_regex`)
5572 #
5573 # If `include_regex` is left empty, it will match all files by default
5574 # (this is equivalent to setting `include_regex: [&quot;.*&quot;]`).
5575 #
5576 # Some other common use cases:
5577 #
5578 # * `{bucket_name: &quot;mybucket&quot;, exclude_regex: [&quot;.*\.pdf&quot;]}` will include all
5579 # files in `mybucket` except for .pdf files
5580 # * `{bucket_name: &quot;mybucket&quot;, include_regex: [&quot;directory/[^/]+&quot;]}` will
5581 # include all files directly under `gs://mybucket/directory/`, without matching
5582 # across `/`
5583 &quot;bucketName&quot;: &quot;A String&quot;, # The name of a Cloud Storage bucket. Required.
5584 &quot;includeRegex&quot;: [ # A list of regular expressions matching file paths to include. All files in
5585 # the bucket that match at least one of these regular expressions will be
5586 # included in the set of files, except for those that also match an item in
5587 # `exclude_regex`. Leaving this field empty will match all files by default
5588 # (this is equivalent to including `.*` in the list).
5589 #
5590 # Regular expressions use RE2
5591 # [syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found
5592 # under the google/re2 repository on GitHub.
5593 &quot;A String&quot;,
5594 ],
5595 &quot;excludeRegex&quot;: [ # A list of regular expressions matching file paths to exclude. All files in
5596 # the bucket that match at least one of these regular expressions will be
5597 # excluded from the scan.
5598 #
5599 # Regular expressions use RE2
5600 # [syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found
5601 # under the google/re2 repository on GitHub.
5602 &quot;A String&quot;,
5603 ],
5604 },
5605 &quot;url&quot;: &quot;A String&quot;, # The Cloud Storage url of the file(s) to scan, in the format
5606 # `gs://&lt;bucket&gt;/&lt;path&gt;`. Trailing wildcard in the path is allowed.
5607 #
5608 # If the url ends in a trailing slash, the bucket or directory represented
5609 # by the url will be scanned non-recursively (content in sub-directories
5610 # will not be scanned). This means that `gs://mybucket/` is equivalent to
5611 # `gs://mybucket/*`, and `gs://mybucket/directory/` is equivalent to
5612 # `gs://mybucket/directory/*`.
5613 #
5614 # Exactly one of `url` or `regex_file_set` must be set.
5615 },
5616 &quot;filesLimitPercent&quot;: 42, # Limits the number of files to scan to this percentage of the input FileSet.
5617 # Number of files scanned is rounded down. Must be between 0 and 100,
5618 # inclusively. Both 0 and 100 means no limit. Defaults to 0.
5619 &quot;fileTypes&quot;: [ # List of file type groups to include in the scan.
5620 # If empty, all files are scanned and available data format processors
5621 # are applied. In addition, the binary content of the selected files
5622 # is always scanned as well.
5623 # Images are scanned only as binary if the specified region
5624 # does not support image inspection and no file_types were specified.
5625 # Image inspection is restricted to &#x27;global&#x27;, &#x27;us&#x27;, &#x27;asia&#x27;, and &#x27;europe&#x27;.
5626 &quot;A String&quot;,
5627 ],
5628 &quot;sampleMethod&quot;: &quot;A String&quot;,
5629 &quot;bytesLimitPerFilePercent&quot;: 42, # Max percentage of bytes to scan from a file. The rest are omitted. The
5630 # number of bytes scanned is rounded down. Must be between 0 and 100,
5631 # inclusively. Both 0 and 100 means no limit. Defaults to 0. Only one
5632 # of bytes_limit_per_file and bytes_limit_per_file_percent can be specified.
5633 },
5634 &quot;bigQueryOptions&quot;: { # Options defining BigQuery table and row identifiers. # BigQuery options.
5635 &quot;tableReference&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Complete BigQuery table reference.
5636 # identified by its project_id, dataset_id, and table_name. Within a query
5637 # a table is often referenced with a string in the format of:
5638 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
5639 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
5640 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
5641 # If omitted, project ID is inferred from the API call.
5642 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
5643 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
5644 },
5645 &quot;identifyingFields&quot;: [ # Table fields that may uniquely identify a row within the table. When
5646 # `actions.saveFindings.outputConfig.table` is specified, the values of
5647 # columns specified here are available in the output table under
5648 # `location.content_locations.record_location.record_key.id_values`. Nested
5649 # fields such as `person.birthdate.year` are allowed.
5650 { # General identifier of a data field in a storage service.
5651 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5652 },
5653 ],
5654 &quot;rowsLimitPercent&quot;: 42, # Max percentage of rows to scan. The rest are omitted. The number of rows
5655 # scanned is rounded down. Must be between 0 and 100, inclusively. Both 0 and
5656 # 100 means no limit. Defaults to 0. Only one of rows_limit and
5657 # rows_limit_percent can be specified. Cannot be used in conjunction with
5658 # TimespanConfig.
5659 &quot;rowsLimit&quot;: &quot;A String&quot;, # Max number of rows to scan. If the table has more rows than this value, the
5660 # rest of the rows are omitted. If not set, or if set to 0, all rows will be
5661 # scanned. Only one of rows_limit and rows_limit_percent can be specified.
5662 # Cannot be used in conjunction with TimespanConfig.
5663 &quot;excludedFields&quot;: [ # References to fields excluded from scanning. This allows you to skip
5664 # inspection of entire columns which you know have no findings.
5665 { # General identifier of a data field in a storage service.
5666 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5667 },
5668 ],
5669 &quot;sampleMethod&quot;: &quot;A String&quot;,
5670 },
5671 },
5672 &quot;inspectTemplateName&quot;: &quot;A String&quot;, # If provided, will be used as the default for all values in InspectConfig.
5673 # `inspect_config` will be merged into the values persisted as part of the
5674 # template.
5675 },
5676 },
5677 &quot;result&quot;: { # All result fields mentioned below are updated while the job is processing. # A summary of the outcome of this inspect job.
5678 &quot;processedBytes&quot;: &quot;A String&quot;, # Total size in bytes that were processed.
5679 &quot;hybridStats&quot;: { # Statistics related to processing hybrid inspect requests. # Statistics related to the processing of hybrid inspect.
5680 # Early access feature is in a pre-release state and might change or have
5681 # limited support. For more information, see
5682 # https://cloud.google.com/products#product-launch-stages.
5683 &quot;pendingCount&quot;: &quot;A String&quot;, # The number of hybrid requests currently being processed. Only populated
5684 # when called via method `getDlpJob`.
5685 # A burst of traffic may cause hybrid inspect requests to be enqueued.
5686 # Processing will take place as quickly as possible, but resource limitations
5687 # may impact how long a request is enqueued for.
5688 &quot;processedCount&quot;: &quot;A String&quot;, # The number of hybrid inspection requests processed within this job.
5689 &quot;abortedCount&quot;: &quot;A String&quot;, # The number of hybrid inspection requests aborted because the job ran
5690 # out of quota or was ended before they could be processed.
5691 },
5692 &quot;infoTypeStats&quot;: [ # Statistics of how many instances of each info type were found during
5693 # inspect job.
5694 { # Statistics regarding a specific InfoType.
5695 &quot;infoType&quot;: { # Type of information detected by the API. # The type of finding this stat is for.
5696 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
5697 # creating a CustomInfoType, or one of the names listed
5698 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
5699 # a built-in type. InfoType names should conform to the pattern
5700 # `[a-zA-Z0-9_]{1,64}`.
5701 },
5702 &quot;count&quot;: &quot;A String&quot;, # Number of findings for this infoType.
Bu Sun Kim65020912020-05-20 12:08:20 -07005703 },
5704 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005705 &quot;totalEstimatedBytes&quot;: &quot;A String&quot;, # Estimate of the number of bytes to process.
Bu Sun Kim65020912020-05-20 12:08:20 -07005706 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005707 },
5708 &quot;createTime&quot;: &quot;A String&quot;, # Time when the job was created.
5709 &quot;state&quot;: &quot;A String&quot;, # State of a job.
5710 &quot;jobTriggerName&quot;: &quot;A String&quot;, # If created by a job trigger, the resource name of the trigger that
5711 # instantiated the job.
5712 &quot;riskDetails&quot;: { # Result of a risk analysis operation request. # Results from analyzing risk of a data source.
Bu Sun Kim65020912020-05-20 12:08:20 -07005713 &quot;requestedPrivacyMetric&quot;: { # Privacy metric to compute for reidentification risk analysis. # Privacy metric to compute.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005714 &quot;deltaPresenceEstimationConfig&quot;: { # δ-presence metric, used to estimate how likely it is for an attacker to # delta-presence
5715 # figure out that one given individual appears in a de-identified dataset.
5716 # Similarly to the k-map metric, we cannot compute δ-presence exactly without
5717 # knowing the attack dataset, so we use a statistical model instead.
5718 &quot;regionCode&quot;: &quot;A String&quot;, # ISO 3166-1 alpha-2 region code to use in the statistical modeling.
5719 # Set if no column is tagged with a region-specific InfoType (like
5720 # US_ZIP_5) or a region code.
5721 &quot;auxiliaryTables&quot;: [ # Several auxiliary tables can be used in the analysis. Each custom_tag
5722 # used to tag a quasi-identifiers field must appear in exactly one
5723 # field of one auxiliary table.
5724 { # An auxiliary table containing statistical information on the relative
5725 # frequency of different quasi-identifiers values. It has one or several
5726 # quasi-identifiers columns, and one column that indicates the relative
5727 # frequency of each quasi-identifier tuple.
5728 # If a tuple is present in the data but not in the auxiliary table, the
5729 # corresponding relative frequency is assumed to be zero (and thus, the
5730 # tuple is highly reidentifiable).
5731 &quot;quasiIds&quot;: [ # Required. Quasi-identifier columns.
5732 { # A quasi-identifier column has a custom_tag, used to know which column
5733 # in the data corresponds to which column in the statistical model.
5734 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
5735 # indicate an auxiliary table that contains statistical information on
5736 # the possible values of this column (below).
5737 &quot;field&quot;: { # General identifier of a data field in a storage service. # Identifies the column.
5738 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5739 },
5740 },
5741 ],
5742 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Required. Auxiliary table location.
5743 # identified by its project_id, dataset_id, and table_name. Within a query
5744 # a table is often referenced with a string in the format of:
5745 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
5746 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
5747 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
5748 # If omitted, project ID is inferred from the API call.
5749 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
5750 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
5751 },
5752 &quot;relativeFrequency&quot;: { # General identifier of a data field in a storage service. # Required. The relative frequency column must contain a floating-point number
5753 # between 0 and 1 (inclusive). Null values are assumed to be zero.
5754 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5755 },
5756 },
5757 ],
5758 &quot;quasiIds&quot;: [ # Required. Fields considered to be quasi-identifiers. No two fields can have the
5759 # same tag.
5760 { # A column with a semantic tag attached.
5761 &quot;field&quot;: { # General identifier of a data field in a storage service. # Required. Identifies the column.
5762 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5763 },
5764 &quot;infoType&quot;: { # Type of information detected by the API. # A column can be tagged with a InfoType to use the relevant public
5765 # dataset as a statistical model of population, if available. We
5766 # currently support US ZIP codes, region codes, ages and genders.
5767 # To programmatically obtain the list of supported InfoTypes, use
5768 # ListInfoTypes with the supported_by=RISK_ANALYSIS filter.
5769 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
5770 # creating a CustomInfoType, or one of the names listed
5771 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
5772 # a built-in type. InfoType names should conform to the pattern
5773 # `[a-zA-Z0-9_]{1,64}`.
5774 },
5775 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
5776 # indicate an auxiliary table that contains statistical information on
5777 # the possible values of this column (below).
5778 &quot;inferred&quot;: { # A generic empty message that you can re-use to avoid defining duplicated # If no semantic tag is indicated, we infer the statistical model from
5779 # the distribution of values in the input data
5780 # empty messages in your APIs. A typical example is to use it as the request
5781 # or the response type of an API method. For instance:
5782 #
5783 # service Foo {
5784 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
5785 # }
5786 #
5787 # The JSON representation for `Empty` is empty JSON object `{}`.
5788 },
5789 },
5790 ],
5791 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005792 &quot;categoricalStatsConfig&quot;: { # Compute numerical stats over an individual column, including # Categorical stats
5793 # number of distinct values and value count distribution.
5794 &quot;field&quot;: { # General identifier of a data field in a storage service. # Field to compute categorical stats on. All column types are
5795 # supported except for arrays and structs. However, it may be more
5796 # informative to use NumericalStats when the field type is supported,
5797 # depending on the data.
5798 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5799 },
5800 },
5801 &quot;kAnonymityConfig&quot;: { # k-anonymity metric, used for analysis of reidentification risk. # K-anonymity
Bu Sun Kim65020912020-05-20 12:08:20 -07005802 &quot;entityId&quot;: { # An entity in a dataset is a field or set of fields that correspond to a # Message indicating that multiple rows might be associated to a
5803 # single individual. If the same entity_id is associated to multiple
5804 # quasi-identifier tuples over distinct rows, we consider the entire
5805 # collection of tuples as the composite quasi-identifier. This collection
5806 # is a multiset: the order in which the different tuples appear in the
5807 # dataset is ignored, but their frequency is taken into account.
5808 #
5809 # Important note: a maximum of 1000 rows can be associated to a single
5810 # entity ID. If more rows are associated with the same entity ID, some
5811 # might be ignored.
5812 # single person. For example, in medical records the `EntityId` might be a
5813 # patient identifier, or for financial records it might be an account
5814 # identifier. This message is used when generalizations or analysis must take
5815 # into account that multiple rows correspond to the same entity.
5816 &quot;field&quot;: { # General identifier of a data field in a storage service. # Composite key indicating which field contains the entity identifier.
5817 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5818 },
5819 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005820 &quot;quasiIds&quot;: [ # Set of fields to compute k-anonymity over. When multiple fields are
5821 # specified, they are considered a single composite key. Structs and
5822 # repeated data types are not supported; however, nested fields are
5823 # supported so long as they are not structs themselves or nested within
5824 # a repeated field.
5825 { # General identifier of a data field in a storage service.
5826 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5827 },
5828 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07005829 },
5830 &quot;numericalStatsConfig&quot;: { # Compute numerical stats over an individual column, including # Numerical stats
5831 # min, max, and quantiles.
5832 &quot;field&quot;: { # General identifier of a data field in a storage service. # Field to compute numerical stats on. Supported types are
5833 # integer, float, date, datetime, timestamp, time.
5834 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5835 },
5836 },
5837 &quot;kMapEstimationConfig&quot;: { # Reidentifiability metric. This corresponds to a risk model similar to what # k-map
5838 # is called &quot;journalist risk&quot; in the literature, except the attack dataset is
5839 # statistically modeled instead of being perfectly known. This can be done
5840 # using publicly available data (like the US Census), or using a custom
5841 # statistical model (indicated as one or several BigQuery tables), or by
5842 # extrapolating from the distribution of values in the input dataset.
5843 &quot;regionCode&quot;: &quot;A String&quot;, # ISO 3166-1 alpha-2 region code to use in the statistical modeling.
5844 # Set if no column is tagged with a region-specific InfoType (like
5845 # US_ZIP_5) or a region code.
5846 &quot;auxiliaryTables&quot;: [ # Several auxiliary tables can be used in the analysis. Each custom_tag
5847 # used to tag a quasi-identifiers column must appear in exactly one column
5848 # of one auxiliary table.
5849 { # An auxiliary table contains statistical information on the relative
5850 # frequency of different quasi-identifiers values. It has one or several
5851 # quasi-identifiers columns, and one column that indicates the relative
5852 # frequency of each quasi-identifier tuple.
5853 # If a tuple is present in the data but not in the auxiliary table, the
5854 # corresponding relative frequency is assumed to be zero (and thus, the
5855 # tuple is highly reidentifiable).
5856 &quot;table&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Required. Auxiliary table location.
5857 # identified by its project_id, dataset_id, and table_name. Within a query
5858 # a table is often referenced with a string in the format of:
5859 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
5860 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
5861 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
5862 # If omitted, project ID is inferred from the API call.
5863 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
5864 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
5865 },
5866 &quot;relativeFrequency&quot;: { # General identifier of a data field in a storage service. # Required. The relative frequency column must contain a floating-point number
5867 # between 0 and 1 (inclusive). Null values are assumed to be zero.
5868 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5869 },
5870 &quot;quasiIds&quot;: [ # Required. Quasi-identifier columns.
5871 { # A quasi-identifier column has a custom_tag, used to know which column
5872 # in the data corresponds to which column in the statistical model.
5873 &quot;customTag&quot;: &quot;A String&quot;, # A auxiliary field.
5874 &quot;field&quot;: { # General identifier of a data field in a storage service. # Identifies the column.
5875 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5876 },
5877 },
5878 ],
5879 },
5880 ],
5881 &quot;quasiIds&quot;: [ # Required. Fields considered to be quasi-identifiers. No two columns can have the
5882 # same tag.
5883 { # A column with a semantic tag attached.
Bu Sun Kim65020912020-05-20 12:08:20 -07005884 &quot;customTag&quot;: &quot;A String&quot;, # A column can be tagged with a custom tag. In this case, the user must
5885 # indicate an auxiliary table that contains statistical information on
5886 # the possible values of this column (below).
5887 &quot;inferred&quot;: { # A generic empty message that you can re-use to avoid defining duplicated # If no semantic tag is indicated, we infer the statistical model from
5888 # the distribution of values in the input data
5889 # empty messages in your APIs. A typical example is to use it as the request
5890 # or the response type of an API method. For instance:
5891 #
5892 # service Foo {
5893 # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
5894 # }
5895 #
5896 # The JSON representation for `Empty` is empty JSON object `{}`.
5897 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005898 &quot;field&quot;: { # General identifier of a data field in a storage service. # Required. Identifies the column.
5899 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5900 },
5901 &quot;infoType&quot;: { # Type of information detected by the API. # A column can be tagged with a InfoType to use the relevant public
5902 # dataset as a statistical model of population, if available. We
5903 # currently support US ZIP codes, region codes, ages and genders.
5904 # To programmatically obtain the list of supported InfoTypes, use
5905 # ListInfoTypes with the supported_by=RISK_ANALYSIS filter.
5906 &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
5907 # creating a CustomInfoType, or one of the names listed
5908 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
5909 # a built-in type. InfoType names should conform to the pattern
5910 # `[a-zA-Z0-9_]{1,64}`.
5911 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005912 },
5913 ],
5914 },
5915 &quot;lDiversityConfig&quot;: { # l-diversity metric, used for analysis of reidentification risk. # l-diversity
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005916 &quot;sensitiveAttribute&quot;: { # General identifier of a data field in a storage service. # Sensitive field for computing the l-value.
5917 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5918 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005919 &quot;quasiIds&quot;: [ # Set of quasi-identifiers indicating how equivalence classes are
5920 # defined for the l-diversity computation. When multiple fields are
5921 # specified, they are considered a single composite key.
5922 { # General identifier of a data field in a storage service.
5923 &quot;name&quot;: &quot;A String&quot;, # Name describing the field.
5924 },
5925 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07005926 },
5927 },
5928 &quot;categoricalStatsResult&quot;: { # Result of the categorical stats computation. # Categorical stats result
5929 &quot;valueFrequencyHistogramBuckets&quot;: [ # Histogram of value frequencies in the column.
5930 { # Histogram of value frequencies in the column.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005931 &quot;valueFrequencyLowerBound&quot;: &quot;A String&quot;, # Lower bound on the value frequency of the values in this bucket.
5932 &quot;valueFrequencyUpperBound&quot;: &quot;A String&quot;, # Upper bound on the value frequency of the values in this bucket.
5933 &quot;bucketSize&quot;: &quot;A String&quot;, # Total number of values in this bucket.
5934 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct values in this bucket.
Bu Sun Kim65020912020-05-20 12:08:20 -07005935 &quot;bucketValues&quot;: [ # Sample of value frequencies in this bucket. The total number of
5936 # values returned per bucket is capped at 20.
5937 { # A value of a field, including its frequency.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005938 &quot;count&quot;: &quot;A String&quot;, # How many times the value is contained in the field.
Bu Sun Kim65020912020-05-20 12:08:20 -07005939 &quot;value&quot;: { # Set of primitive values supported by the system. # A value contained in the field in question.
5940 # Note that for the purposes of inspection or transformation, the number
5941 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
5942 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
5943 # 123456789, the number of bytes would be counted as 9, even though an
5944 # int64 only holds up to 8 bytes of data.
Bu Sun Kim65020912020-05-20 12:08:20 -07005945 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
5946 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
5947 # and time zone are either specified elsewhere or are not significant. The date
5948 # is relative to the Proleptic Gregorian Calendar. This can represent:
5949 #
5950 # * A full date, with non-zero year, month and day values
5951 # * A month and day value, with a zero year, e.g. an anniversary
5952 # * A year on its own, with zero month and day values
5953 # * A year and month value, with a zero day, e.g. a credit card expiration date
5954 #
5955 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
5956 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
5957 # a year.
5958 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
5959 # month and day.
5960 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
5961 # if specifying a year by itself or a year and month where the day is not
5962 # significant.
5963 },
5964 &quot;stringValue&quot;: &quot;A String&quot;, # string
5965 &quot;integerValue&quot;: &quot;A String&quot;, # integer
5966 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
5967 # or are specified elsewhere. An API may choose to allow leap seconds. Related
5968 # types are google.type.Date and `google.protobuf.Timestamp`.
Bu Sun Kim65020912020-05-20 12:08:20 -07005969 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
5970 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
5971 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005972 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
5973 # allow the value 60 if it allows leap-seconds.
5974 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
Bu Sun Kim65020912020-05-20 12:08:20 -07005975 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07005976 &quot;booleanValue&quot;: True or False, # boolean
5977 &quot;floatValue&quot;: 3.14, # float
5978 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
Bu Sun Kim65020912020-05-20 12:08:20 -07005979 },
Bu Sun Kim65020912020-05-20 12:08:20 -07005980 },
5981 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07005982 },
5983 ],
5984 },
5985 &quot;kMapEstimationResult&quot;: { # Result of the reidentifiability analysis. Note that these results are an # K-map result
5986 # estimation, not exact values.
5987 &quot;kMapEstimationHistogram&quot;: [ # The intervals [min_anonymity, max_anonymity] do not overlap. If a value
5988 # doesn&#x27;t correspond to any such interval, the associated frequency is
5989 # zero. For example, the following records:
5990 # {min_anonymity: 1, max_anonymity: 1, frequency: 17}
5991 # {min_anonymity: 2, max_anonymity: 3, frequency: 42}
5992 # {min_anonymity: 5, max_anonymity: 10, frequency: 99}
5993 # mean that there are no record with an estimated anonymity of 4, 5, or
5994 # larger than 10.
5995 { # A KMapEstimationHistogramBucket message with the following values:
5996 # min_anonymity: 3
5997 # max_anonymity: 5
5998 # frequency: 42
5999 # means that there are 42 records whose quasi-identifier values correspond
6000 # to 3, 4 or 5 people in the overlying population. An important particular
6001 # case is when min_anonymity = max_anonymity = 1: the frequency field then
6002 # corresponds to the number of uniquely identifiable records.
Bu Sun Kim65020912020-05-20 12:08:20 -07006003 &quot;minAnonymity&quot;: &quot;A String&quot;, # Always positive.
6004 &quot;bucketValues&quot;: [ # Sample of quasi-identifier tuple values in this bucket. The total
6005 # number of classes returned per bucket is capped at 20.
6006 { # A tuple of values for the quasi-identifier columns.
Bu Sun Kim65020912020-05-20 12:08:20 -07006007 &quot;quasiIdsValues&quot;: [ # The quasi-identifier values.
6008 { # Set of primitive values supported by the system.
6009 # Note that for the purposes of inspection or transformation, the number
6010 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
6011 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
6012 # 123456789, the number of bytes would be counted as 9, even though an
6013 # int64 only holds up to 8 bytes of data.
Bu Sun Kim65020912020-05-20 12:08:20 -07006014 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
6015 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
6016 # and time zone are either specified elsewhere or are not significant. The date
6017 # is relative to the Proleptic Gregorian Calendar. This can represent:
6018 #
6019 # * A full date, with non-zero year, month and day values
6020 # * A month and day value, with a zero year, e.g. an anniversary
6021 # * A year on its own, with zero month and day values
6022 # * A year and month value, with a zero day, e.g. a credit card expiration date
6023 #
6024 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
6025 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
6026 # a year.
6027 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
6028 # month and day.
6029 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
6030 # if specifying a year by itself or a year and month where the day is not
6031 # significant.
6032 },
6033 &quot;stringValue&quot;: &quot;A String&quot;, # string
6034 &quot;integerValue&quot;: &quot;A String&quot;, # integer
6035 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
6036 # or are specified elsewhere. An API may choose to allow leap seconds. Related
6037 # types are google.type.Date and `google.protobuf.Timestamp`.
Bu Sun Kim65020912020-05-20 12:08:20 -07006038 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
6039 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
6040 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006041 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
6042 # allow the value 60 if it allows leap-seconds.
6043 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
Bu Sun Kim65020912020-05-20 12:08:20 -07006044 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006045 &quot;booleanValue&quot;: True or False, # boolean
6046 &quot;floatValue&quot;: 3.14, # float
6047 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
Bu Sun Kim65020912020-05-20 12:08:20 -07006048 },
6049 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006050 &quot;estimatedAnonymity&quot;: &quot;A String&quot;, # The estimated anonymity for these quasi-identifier values.
Bu Sun Kim65020912020-05-20 12:08:20 -07006051 },
6052 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006053 &quot;bucketSize&quot;: &quot;A String&quot;, # Number of records within these anonymity bounds.
6054 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct quasi-identifier tuple values in this bucket.
6055 &quot;maxAnonymity&quot;: &quot;A String&quot;, # Always greater than or equal to min_anonymity.
Bu Sun Kim65020912020-05-20 12:08:20 -07006056 },
6057 ],
6058 },
6059 &quot;kAnonymityResult&quot;: { # Result of the k-anonymity computation. # K-anonymity result
6060 &quot;equivalenceClassHistogramBuckets&quot;: [ # Histogram of k-anonymity equivalence classes.
6061 { # Histogram of k-anonymity equivalence classes.
Bu Sun Kim65020912020-05-20 12:08:20 -07006062 &quot;equivalenceClassSizeLowerBound&quot;: &quot;A String&quot;, # Lower bound on the size of the equivalence classes in this bucket.
6063 &quot;equivalenceClassSizeUpperBound&quot;: &quot;A String&quot;, # Upper bound on the size of the equivalence classes in this bucket.
6064 &quot;bucketValues&quot;: [ # Sample of equivalence classes in this bucket. The total number of
6065 # classes returned per bucket is capped at 20.
6066 { # The set of columns&#x27; values that share the same ldiversity value
6067 &quot;quasiIdsValues&quot;: [ # Set of values defining the equivalence class. One value per
6068 # quasi-identifier column in the original KAnonymity metric message.
6069 # The order is always the same as the original request.
6070 { # Set of primitive values supported by the system.
6071 # Note that for the purposes of inspection or transformation, the number
6072 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
6073 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
6074 # 123456789, the number of bytes would be counted as 9, even though an
6075 # int64 only holds up to 8 bytes of data.
Bu Sun Kim65020912020-05-20 12:08:20 -07006076 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
6077 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
6078 # and time zone are either specified elsewhere or are not significant. The date
6079 # is relative to the Proleptic Gregorian Calendar. This can represent:
6080 #
6081 # * A full date, with non-zero year, month and day values
6082 # * A month and day value, with a zero year, e.g. an anniversary
6083 # * A year on its own, with zero month and day values
6084 # * A year and month value, with a zero day, e.g. a credit card expiration date
6085 #
6086 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
6087 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
6088 # a year.
6089 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
6090 # month and day.
6091 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
6092 # if specifying a year by itself or a year and month where the day is not
6093 # significant.
6094 },
6095 &quot;stringValue&quot;: &quot;A String&quot;, # string
6096 &quot;integerValue&quot;: &quot;A String&quot;, # integer
6097 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
6098 # or are specified elsewhere. An API may choose to allow leap seconds. Related
6099 # types are google.type.Date and `google.protobuf.Timestamp`.
Bu Sun Kim65020912020-05-20 12:08:20 -07006100 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
6101 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
6102 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006103 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
6104 # allow the value 60 if it allows leap-seconds.
6105 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
Bu Sun Kim65020912020-05-20 12:08:20 -07006106 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006107 &quot;booleanValue&quot;: True or False, # boolean
6108 &quot;floatValue&quot;: 3.14, # float
6109 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
Bu Sun Kim65020912020-05-20 12:08:20 -07006110 },
6111 ],
6112 &quot;equivalenceClassSize&quot;: &quot;A String&quot;, # Size of the equivalence class, for example number of rows with the
6113 # above set of values.
6114 },
6115 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006116 &quot;bucketSize&quot;: &quot;A String&quot;, # Total number of equivalence classes in this bucket.
6117 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct equivalence classes in this bucket.
Bu Sun Kim65020912020-05-20 12:08:20 -07006118 },
6119 ],
6120 },
6121 &quot;deltaPresenceEstimationResult&quot;: { # Result of the δ-presence computation. Note that these results are an # Delta-presence result
6122 # estimation, not exact values.
6123 &quot;deltaPresenceEstimationHistogram&quot;: [ # The intervals [min_probability, max_probability) do not overlap. If a
6124 # value doesn&#x27;t correspond to any such interval, the associated frequency
6125 # is zero. For example, the following records:
6126 # {min_probability: 0, max_probability: 0.1, frequency: 17}
6127 # {min_probability: 0.2, max_probability: 0.3, frequency: 42}
6128 # {min_probability: 0.3, max_probability: 0.4, frequency: 99}
6129 # mean that there are no record with an estimated probability in [0.1, 0.2)
6130 # nor larger or equal to 0.4.
6131 { # A DeltaPresenceEstimationHistogramBucket message with the following
6132 # values:
6133 # min_probability: 0.1
6134 # max_probability: 0.2
6135 # frequency: 42
6136 # means that there are 42 records for which δ is in [0.1, 0.2). An
6137 # important particular case is when min_probability = max_probability = 1:
6138 # then, every individual who shares this quasi-identifier combination is in
6139 # the dataset.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006140 &quot;minProbability&quot;: 3.14, # Between 0 and 1.
6141 &quot;maxProbability&quot;: 3.14, # Always greater than or equal to min_probability.
6142 &quot;bucketSize&quot;: &quot;A String&quot;, # Number of records within these probability bounds.
6143 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct quasi-identifier tuple values in this bucket.
Bu Sun Kim65020912020-05-20 12:08:20 -07006144 &quot;bucketValues&quot;: [ # Sample of quasi-identifier tuple values in this bucket. The total
6145 # number of classes returned per bucket is capped at 20.
6146 { # A tuple of values for the quasi-identifier columns.
6147 &quot;quasiIdsValues&quot;: [ # The quasi-identifier values.
6148 { # Set of primitive values supported by the system.
6149 # Note that for the purposes of inspection or transformation, the number
6150 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
6151 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
6152 # 123456789, the number of bytes would be counted as 9, even though an
6153 # int64 only holds up to 8 bytes of data.
Bu Sun Kim65020912020-05-20 12:08:20 -07006154 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
6155 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
6156 # and time zone are either specified elsewhere or are not significant. The date
6157 # is relative to the Proleptic Gregorian Calendar. This can represent:
6158 #
6159 # * A full date, with non-zero year, month and day values
6160 # * A month and day value, with a zero year, e.g. an anniversary
6161 # * A year on its own, with zero month and day values
6162 # * A year and month value, with a zero day, e.g. a credit card expiration date
6163 #
6164 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
6165 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
6166 # a year.
6167 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
6168 # month and day.
6169 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
6170 # if specifying a year by itself or a year and month where the day is not
6171 # significant.
6172 },
6173 &quot;stringValue&quot;: &quot;A String&quot;, # string
6174 &quot;integerValue&quot;: &quot;A String&quot;, # integer
6175 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
6176 # or are specified elsewhere. An API may choose to allow leap seconds. Related
6177 # types are google.type.Date and `google.protobuf.Timestamp`.
Bu Sun Kim65020912020-05-20 12:08:20 -07006178 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
6179 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
6180 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006181 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
6182 # allow the value 60 if it allows leap-seconds.
6183 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
Bu Sun Kim65020912020-05-20 12:08:20 -07006184 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006185 &quot;booleanValue&quot;: True or False, # boolean
6186 &quot;floatValue&quot;: 3.14, # float
6187 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
Bu Sun Kim65020912020-05-20 12:08:20 -07006188 },
6189 ],
6190 &quot;estimatedProbability&quot;: 3.14, # The estimated probability that a given individual sharing these
6191 # quasi-identifier values is in the dataset. This value, typically called
6192 # δ, is the ratio between the number of records in the dataset with these
6193 # quasi-identifier values, and the total number of individuals (inside
6194 # *and* outside the dataset) with these quasi-identifier values.
6195 # For example, if there are 15 individuals in the dataset who share the
6196 # same quasi-identifier values, and an estimated 100 people in the entire
6197 # population with these values, then δ is 0.15.
6198 },
6199 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07006200 },
6201 ],
6202 },
6203 &quot;requestedSourceTable&quot;: { # Message defining the location of a BigQuery table. A table is uniquely # Input dataset to compute metrics over.
6204 # identified by its project_id, dataset_id, and table_name. Within a query
6205 # a table is often referenced with a string in the format of:
6206 # `&lt;project_id&gt;:&lt;dataset_id&gt;.&lt;table_id&gt;` or
6207 # `&lt;project_id&gt;.&lt;dataset_id&gt;.&lt;table_id&gt;`.
6208 &quot;projectId&quot;: &quot;A String&quot;, # The Google Cloud Platform project ID of the project containing the table.
6209 # If omitted, project ID is inferred from the API call.
6210 &quot;datasetId&quot;: &quot;A String&quot;, # Dataset ID of the table.
6211 &quot;tableId&quot;: &quot;A String&quot;, # Name of the table.
6212 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006213 &quot;numericalStatsResult&quot;: { # Result of the numerical stats computation. # Numerical stats result
6214 &quot;minValue&quot;: { # Set of primitive values supported by the system. # Minimum value appearing in the column.
6215 # Note that for the purposes of inspection or transformation, the number
6216 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
6217 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
6218 # 123456789, the number of bytes would be counted as 9, even though an
6219 # int64 only holds up to 8 bytes of data.
6220 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
6221 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
6222 # and time zone are either specified elsewhere or are not significant. The date
6223 # is relative to the Proleptic Gregorian Calendar. This can represent:
6224 #
6225 # * A full date, with non-zero year, month and day values
6226 # * A month and day value, with a zero year, e.g. an anniversary
6227 # * A year on its own, with zero month and day values
6228 # * A year and month value, with a zero day, e.g. a credit card expiration date
6229 #
6230 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
6231 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
6232 # a year.
6233 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
6234 # month and day.
6235 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
6236 # if specifying a year by itself or a year and month where the day is not
6237 # significant.
6238 },
6239 &quot;stringValue&quot;: &quot;A String&quot;, # string
6240 &quot;integerValue&quot;: &quot;A String&quot;, # integer
6241 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
6242 # or are specified elsewhere. An API may choose to allow leap seconds. Related
6243 # types are google.type.Date and `google.protobuf.Timestamp`.
6244 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
6245 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
6246 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
6247 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
6248 # allow the value 60 if it allows leap-seconds.
6249 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
6250 },
6251 &quot;booleanValue&quot;: True or False, # boolean
6252 &quot;floatValue&quot;: 3.14, # float
6253 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
6254 },
6255 &quot;maxValue&quot;: { # Set of primitive values supported by the system. # Maximum value appearing in the column.
6256 # Note that for the purposes of inspection or transformation, the number
6257 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
6258 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
6259 # 123456789, the number of bytes would be counted as 9, even though an
6260 # int64 only holds up to 8 bytes of data.
6261 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
6262 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
6263 # and time zone are either specified elsewhere or are not significant. The date
6264 # is relative to the Proleptic Gregorian Calendar. This can represent:
6265 #
6266 # * A full date, with non-zero year, month and day values
6267 # * A month and day value, with a zero year, e.g. an anniversary
6268 # * A year on its own, with zero month and day values
6269 # * A year and month value, with a zero day, e.g. a credit card expiration date
6270 #
6271 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
6272 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
6273 # a year.
6274 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
6275 # month and day.
6276 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
6277 # if specifying a year by itself or a year and month where the day is not
6278 # significant.
6279 },
6280 &quot;stringValue&quot;: &quot;A String&quot;, # string
6281 &quot;integerValue&quot;: &quot;A String&quot;, # integer
6282 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
6283 # or are specified elsewhere. An API may choose to allow leap seconds. Related
6284 # types are google.type.Date and `google.protobuf.Timestamp`.
6285 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
6286 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
6287 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
6288 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
6289 # allow the value 60 if it allows leap-seconds.
6290 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
6291 },
6292 &quot;booleanValue&quot;: True or False, # boolean
6293 &quot;floatValue&quot;: 3.14, # float
6294 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
6295 },
6296 &quot;quantileValues&quot;: [ # List of 99 values that partition the set of field values into 100 equal
6297 # sized buckets.
6298 { # Set of primitive values supported by the system.
6299 # Note that for the purposes of inspection or transformation, the number
6300 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
6301 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
6302 # 123456789, the number of bytes would be counted as 9, even though an
6303 # int64 only holds up to 8 bytes of data.
6304 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
6305 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
6306 # and time zone are either specified elsewhere or are not significant. The date
6307 # is relative to the Proleptic Gregorian Calendar. This can represent:
6308 #
6309 # * A full date, with non-zero year, month and day values
6310 # * A month and day value, with a zero year, e.g. an anniversary
6311 # * A year on its own, with zero month and day values
6312 # * A year and month value, with a zero day, e.g. a credit card expiration date
6313 #
6314 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
6315 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
6316 # a year.
6317 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
6318 # month and day.
6319 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
6320 # if specifying a year by itself or a year and month where the day is not
6321 # significant.
6322 },
6323 &quot;stringValue&quot;: &quot;A String&quot;, # string
6324 &quot;integerValue&quot;: &quot;A String&quot;, # integer
6325 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
6326 # or are specified elsewhere. An API may choose to allow leap seconds. Related
6327 # types are google.type.Date and `google.protobuf.Timestamp`.
6328 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
6329 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
6330 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
6331 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
6332 # allow the value 60 if it allows leap-seconds.
6333 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
6334 },
6335 &quot;booleanValue&quot;: True or False, # boolean
6336 &quot;floatValue&quot;: 3.14, # float
6337 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
6338 },
6339 ],
6340 },
6341 &quot;lDiversityResult&quot;: { # Result of the l-diversity computation. # L-divesity result
6342 &quot;sensitiveValueFrequencyHistogramBuckets&quot;: [ # Histogram of l-diversity equivalence class sensitive value frequencies.
6343 { # Histogram of l-diversity equivalence class sensitive value frequencies.
6344 &quot;bucketValues&quot;: [ # Sample of equivalence classes in this bucket. The total number of
6345 # classes returned per bucket is capped at 20.
6346 { # The set of columns&#x27; values that share the same ldiversity value.
6347 &quot;numDistinctSensitiveValues&quot;: &quot;A String&quot;, # Number of distinct sensitive values in this equivalence class.
6348 &quot;topSensitiveValues&quot;: [ # Estimated frequencies of top sensitive values.
6349 { # A value of a field, including its frequency.
6350 &quot;count&quot;: &quot;A String&quot;, # How many times the value is contained in the field.
6351 &quot;value&quot;: { # Set of primitive values supported by the system. # A value contained in the field in question.
6352 # Note that for the purposes of inspection or transformation, the number
6353 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
6354 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
6355 # 123456789, the number of bytes would be counted as 9, even though an
6356 # int64 only holds up to 8 bytes of data.
6357 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
6358 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
6359 # and time zone are either specified elsewhere or are not significant. The date
6360 # is relative to the Proleptic Gregorian Calendar. This can represent:
6361 #
6362 # * A full date, with non-zero year, month and day values
6363 # * A month and day value, with a zero year, e.g. an anniversary
6364 # * A year on its own, with zero month and day values
6365 # * A year and month value, with a zero day, e.g. a credit card expiration date
6366 #
6367 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
6368 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
6369 # a year.
6370 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
6371 # month and day.
6372 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
6373 # if specifying a year by itself or a year and month where the day is not
6374 # significant.
6375 },
6376 &quot;stringValue&quot;: &quot;A String&quot;, # string
6377 &quot;integerValue&quot;: &quot;A String&quot;, # integer
6378 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
6379 # or are specified elsewhere. An API may choose to allow leap seconds. Related
6380 # types are google.type.Date and `google.protobuf.Timestamp`.
6381 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
6382 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
6383 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
6384 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
6385 # allow the value 60 if it allows leap-seconds.
6386 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
6387 },
6388 &quot;booleanValue&quot;: True or False, # boolean
6389 &quot;floatValue&quot;: 3.14, # float
6390 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
6391 },
6392 },
6393 ],
6394 &quot;quasiIdsValues&quot;: [ # Quasi-identifier values defining the k-anonymity equivalence
6395 # class. The order is always the same as the original request.
6396 { # Set of primitive values supported by the system.
6397 # Note that for the purposes of inspection or transformation, the number
6398 # of bytes considered to comprise a &#x27;Value&#x27; is based on its representation
6399 # as a UTF-8 encoded string. For example, if &#x27;integer_value&#x27; is set to
6400 # 123456789, the number of bytes would be counted as 9, even though an
6401 # int64 only holds up to 8 bytes of data.
6402 &quot;timestampValue&quot;: &quot;A String&quot;, # timestamp
6403 &quot;dateValue&quot;: { # Represents a whole or partial calendar date, e.g. a birthday. The time of day # date
6404 # and time zone are either specified elsewhere or are not significant. The date
6405 # is relative to the Proleptic Gregorian Calendar. This can represent:
6406 #
6407 # * A full date, with non-zero year, month and day values
6408 # * A month and day value, with a zero year, e.g. an anniversary
6409 # * A year on its own, with zero month and day values
6410 # * A year and month value, with a zero day, e.g. a credit card expiration date
6411 #
6412 # Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.
6413 &quot;year&quot;: 42, # Year of date. Must be from 1 to 9999, or 0 if specifying a date without
6414 # a year.
6415 &quot;month&quot;: 42, # Month of year. Must be from 1 to 12, or 0 if specifying a year without a
6416 # month and day.
6417 &quot;day&quot;: 42, # Day of month. Must be from 1 to 31 and valid for the year and month, or 0
6418 # if specifying a year by itself or a year and month where the day is not
6419 # significant.
6420 },
6421 &quot;stringValue&quot;: &quot;A String&quot;, # string
6422 &quot;integerValue&quot;: &quot;A String&quot;, # integer
6423 &quot;timeValue&quot;: { # Represents a time of day. The date and time zone are either not significant # time of day
6424 # or are specified elsewhere. An API may choose to allow leap seconds. Related
6425 # types are google.type.Date and `google.protobuf.Timestamp`.
6426 &quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
6427 # to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
6428 &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
6429 &quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
6430 # allow the value 60 if it allows leap-seconds.
6431 &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
6432 },
6433 &quot;booleanValue&quot;: True or False, # boolean
6434 &quot;floatValue&quot;: 3.14, # float
6435 &quot;dayOfWeekValue&quot;: &quot;A String&quot;, # day of week
6436 },
6437 ],
6438 &quot;equivalenceClassSize&quot;: &quot;A String&quot;, # Size of the k-anonymity equivalence class.
6439 },
6440 ],
6441 &quot;sensitiveValueFrequencyLowerBound&quot;: &quot;A String&quot;, # Lower bound on the sensitive value frequencies of the equivalence
6442 # classes in this bucket.
6443 &quot;sensitiveValueFrequencyUpperBound&quot;: &quot;A String&quot;, # Upper bound on the sensitive value frequencies of the equivalence
6444 # classes in this bucket.
6445 &quot;bucketSize&quot;: &quot;A String&quot;, # Total number of equivalence classes in this bucket.
6446 &quot;bucketValueCount&quot;: &quot;A String&quot;, # Total number of distinct equivalence classes in this bucket.
6447 },
6448 ],
6449 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006450 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006451 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name.
Bu Sun Kim65020912020-05-20 12:08:20 -07006452 &quot;errors&quot;: [ # A stream of errors encountered running the job.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006453 { # Details information about an error encountered during job execution or
6454 # the results of an unsuccessful activation of the JobTrigger.
Bu Sun Kim65020912020-05-20 12:08:20 -07006455 &quot;details&quot;: { # The `Status` type defines a logical error model that is suitable for # Detailed error codes and messages.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006456 # different programming environments, including REST APIs and RPC APIs. It is
6457 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
6458 # three pieces of data: error code, error message, and error details.
6459 #
6460 # You can find out more about this error model and how to work with it in the
6461 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim65020912020-05-20 12:08:20 -07006462 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006463 # user-facing error message should be localized and sent in the
6464 # google.rpc.Status.details field, or localized by the client.
Bu Sun Kim65020912020-05-20 12:08:20 -07006465 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006466 # message types for APIs to use.
6467 {
Bu Sun Kim65020912020-05-20 12:08:20 -07006468 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006469 },
6470 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07006471 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006472 },
Bu Sun Kim65020912020-05-20 12:08:20 -07006473 &quot;timestamps&quot;: [ # The times the error occurred.
6474 &quot;A String&quot;,
6475 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006476 },
6477 ],
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006478 },
6479 ],
6480 }</pre>
6481</div>
6482
6483<div class="method">
6484 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
6485 <pre>Retrieves the next page of results.
6486
6487Args:
6488 previous_request: The request for the previous page. (required)
6489 previous_response: The response from the request for the previous page. (required)
6490
6491Returns:
Bu Sun Kim65020912020-05-20 12:08:20 -07006492 A request object that you can call &#x27;execute()&#x27; on to request the next
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07006493 page. Returns None if there are no more items in the collection.
6494 </pre>
6495</div>
6496
6497</body></html>