diff --git a/google/privacy/dlp/v2beta1/dlp.proto b/google/privacy/dlp/v2beta1/dlp.proto
index fd45e046..9f0e82c5 100644
--- a/google/privacy/dlp/v2beta1/dlp.proto
+++ b/google/privacy/dlp/v2beta1/dlp.proto
@@ -84,7 +84,7 @@ message InspectConfig {
// Only returns findings equal or above this threshold.
Likelihood min_likelihood = 2;
- // Limits the number of findings per content item.
+ // Limits the number of findings per content item or long running operation.
int32 max_findings = 3;
// When true, a contextual quote from the data that triggered a finding is
@@ -206,12 +206,12 @@ message RedactContentRequest {
// Type of information to redact from images.
oneof target {
// Only one per info_type should be provided per request. If not
- // specified, and redact_all_text is false, the DLP API will redacts all
+ // specified, and redact_all_text is false, the DLP API will redact all
// text that it matches against all info_types that are found, but not
// specified in another ImageRedactionConfig.
InfoType info_type = 1;
- // If true, all text found in the image, regardless if it matches an
+ // If true, all text found in the image, regardless whether it matches an
// info_type, is redacted.
bool redact_all_text = 2;
}
@@ -289,17 +289,22 @@ message CreateInspectOperationRequest {
// identifier for the Operation, and the `count` is a counter used for
// tracking the number of files written.
The CSV file(s) contain the
// following columns regardless of storage type scanned:
id info_type
- // likelihood byte size of finding quote time_stamp
+ // likelihood byte size of finding quote timestamp
// For Cloud Storage the next columns are:
file_path
// start_offset
// For Cloud Datastore the next columns are:
project_id
- // namespace_id path column_name offset
+ // namespace_id path column_name offset
+ // For BigQuery the next columns are:
row_number project_id
+ // dataset_id table_id
OutputStorageConfig output_config = 3;
}
// Cloud repository for storing output.
message OutputStorageConfig {
oneof type {
+ // Store findings in a new table in the dataset.
+ BigQueryTable table = 1;
+
// The path to a Google Cloud Storage location to store output.
CloudStoragePath storage_path = 2;
}
@@ -349,7 +354,7 @@ message InspectOperationResult {
message ListInspectFindingsRequest {
// Identifier of the results set returned as metadata of
// the longrunning operation created by a call to CreateInspectOperation.
- // Should be in the format of `inspect/results/{id}.
+ // Should be in the format of `inspect/results/{id}`.
string name = 1;
// Maximum number of results to return.
diff --git a/google/privacy/dlp/v2beta1/storage.proto b/google/privacy/dlp/v2beta1/storage.proto
index a407aeae..5079e960 100644
--- a/google/privacy/dlp/v2beta1/storage.proto
+++ b/google/privacy/dlp/v2beta1/storage.proto
@@ -17,6 +17,7 @@ syntax = "proto3";
package google.privacy.dlp.v2beta1;
import "google/api/annotations.proto";
+import "google/protobuf/timestamp.proto";
option csharp_namespace = "Google.Cloud.Dlp.V2Beta1";
option go_package = "google.golang.org/genproto/googleapis/privacy/dlp/v2beta1;dlp";
@@ -27,16 +28,13 @@ option java_package = "com.google.privacy.dlp.v2beta1";
// Type of information detected by the API.
message InfoType {
- // Name of the information type. For built-in info types, this is provided by
- // the API call ListInfoTypes. For user-defined info types, this is
- // provided by the user. All user-defined info types must have unique names,
- // and cannot conflict with built-in info type names.
+ // Name of the information type.
string name = 1;
}
// General identifier of a data field in a storage service.
message FieldId {
- // Column name describing the field.
+ // Name describing the field.
string column_name = 1;
}
@@ -106,6 +104,16 @@ message CloudStoragePath {
string path = 1;
}
+// Options defining BigQuery table and row identifiers.
+message BigQueryOptions {
+ // Complete BigQuery table reference.
+ BigQueryTable table_reference = 1;
+
+ // References to fields uniquely identifying rows within the table.
+ // Nested fields in the format, like `person.birthdate.year`, are allowed.
+ repeated FieldId identifying_fields = 2;
+}
+
// Shared message indicating Cloud storage type.
message StorageConfig {
oneof type {
@@ -114,6 +122,9 @@ message StorageConfig {
// Google Cloud Storage options specification.
CloudStorageOptions cloud_storage_options = 3;
+
+ // BigQuery options specification.
+ BigQueryOptions big_query_options = 4;
}
}
@@ -188,3 +199,20 @@ message RecordKey {
DatastoreKey datastore_key = 2;
}
}
+
+// Message defining the location of a BigQuery table. A table is uniquely
+// identified by its project_id, dataset_id, and table_name. Within a query
+// a table is often referenced with a string in the format of:
+// `:.` or
+// `..`.
+message BigQueryTable {
+ // The Google Cloud Platform project ID of the project containing the table.
+ // If omitted, project ID is inferred from the API call.
+ string project_id = 1;
+
+ // Dataset ID of the table.
+ string dataset_id = 2;
+
+ // Name of the table.
+ string table_id = 3;
+}