From 4006e93f63961e26e3d4e801d042b552e6bf7174 Mon Sep 17 00:00:00 2001 From: Google APIs Date: Tue, 20 Mar 2018 00:36:06 +0000 Subject: [PATCH] Autogenerated update (2018-03-20) Update: - androiddeviceprovisioning_v1 - androidpublisher_v2 - dns_v1 - serviceconsumermanagement_v1 - serviceusage_v1beta1 --- api_names_out.yaml | 966 +++ .../apis/androiddeviceprovisioning_v1.rb | 2 +- .../androiddeviceprovisioning_v1/classes.rb | 87 +- .../androiddeviceprovisioning_v1/service.rb | 53 +- generated/google/apis/androidpublisher_v2.rb | 2 +- .../apis/androidpublisher_v2/classes.rb | 3 +- .../apis/androidpublisher_v2/service.rb | 12 +- generated/google/apis/dlp_v2.rb | 36 + generated/google/apis/dlp_v2/classes.rb | 6424 +++++++++++++++++ .../google/apis/dlp_v2/representations.rb | 3115 ++++++++ generated/google/apis/dlp_v2/service.rb | 1298 ++++ generated/google/apis/dns_v1.rb | 2 +- generated/google/apis/dns_v1/classes.rb | 490 ++ .../google/apis/dns_v1/representations.rb | 187 + generated/google/apis/dns_v1/service.rb | 325 +- .../apis/serviceconsumermanagement_v1.rb | 2 +- .../serviceconsumermanagement_v1/classes.rb | 103 +- .../representations.rb | 30 - .../serviceconsumermanagement_v1/service.rb | 2 +- generated/google/apis/serviceusage_v1beta1.rb | 2 +- .../apis/serviceusage_v1beta1/classes.rb | 104 - .../serviceusage_v1beta1/representations.rb | 30 - .../apis/serviceusage_v1beta1/service.rb | 15 +- 23 files changed, 12945 insertions(+), 345 deletions(-) create mode 100644 generated/google/apis/dlp_v2.rb create mode 100644 generated/google/apis/dlp_v2/classes.rb create mode 100644 generated/google/apis/dlp_v2/representations.rb create mode 100644 generated/google/apis/dlp_v2/service.rb diff --git a/api_names_out.yaml b/api_names_out.yaml index 1a6a6c6a3..161a19af1 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -45571,6 +45571,869 @@ "/discovery:v1/key": key "/discovery:v1/quotaUser": quota_user "/discovery:v1/userIp": user_ip +"/dlp:v2/GooglePrivacyDlpV2Action": google_privacy_dlp_v2_action +"/dlp:v2/GooglePrivacyDlpV2Action/pubSub": pub_sub +"/dlp:v2/GooglePrivacyDlpV2Action/saveFindings": save_findings +"/dlp:v2/GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails": google_privacy_dlp_v2_analyze_data_source_risk_details +"/dlp:v2/GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails/categoricalStatsResult": categorical_stats_result +"/dlp:v2/GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails/kAnonymityResult": k_anonymity_result +"/dlp:v2/GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails/kMapEstimationResult": k_map_estimation_result +"/dlp:v2/GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails/lDiversityResult": l_diversity_result +"/dlp:v2/GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails/numericalStatsResult": numerical_stats_result +"/dlp:v2/GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails/requestedPrivacyMetric": requested_privacy_metric +"/dlp:v2/GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails/requestedSourceTable": requested_source_table +"/dlp:v2/GooglePrivacyDlpV2AuxiliaryTable": google_privacy_dlp_v2_auxiliary_table +"/dlp:v2/GooglePrivacyDlpV2AuxiliaryTable/quasiIds": quasi_ids +"/dlp:v2/GooglePrivacyDlpV2AuxiliaryTable/quasiIds/quasi_id": quasi_id +"/dlp:v2/GooglePrivacyDlpV2AuxiliaryTable/relativeFrequency": relative_frequency +"/dlp:v2/GooglePrivacyDlpV2AuxiliaryTable/table": table +"/dlp:v2/GooglePrivacyDlpV2BigQueryKey": google_privacy_dlp_v2_big_query_key +"/dlp:v2/GooglePrivacyDlpV2BigQueryKey/rowNumber": row_number +"/dlp:v2/GooglePrivacyDlpV2BigQueryKey/tableReference": table_reference +"/dlp:v2/GooglePrivacyDlpV2BigQueryOptions": google_privacy_dlp_v2_big_query_options +"/dlp:v2/GooglePrivacyDlpV2BigQueryOptions/identifyingFields": identifying_fields +"/dlp:v2/GooglePrivacyDlpV2BigQueryOptions/identifyingFields/identifying_field": identifying_field +"/dlp:v2/GooglePrivacyDlpV2BigQueryOptions/tableReference": table_reference +"/dlp:v2/GooglePrivacyDlpV2BigQueryTable": google_privacy_dlp_v2_big_query_table +"/dlp:v2/GooglePrivacyDlpV2BigQueryTable/datasetId": dataset_id +"/dlp:v2/GooglePrivacyDlpV2BigQueryTable/projectId": project_id +"/dlp:v2/GooglePrivacyDlpV2BigQueryTable/tableId": table_id +"/dlp:v2/GooglePrivacyDlpV2BoundingBox": google_privacy_dlp_v2_bounding_box +"/dlp:v2/GooglePrivacyDlpV2BoundingBox/height": height +"/dlp:v2/GooglePrivacyDlpV2BoundingBox/left": left +"/dlp:v2/GooglePrivacyDlpV2BoundingBox/top": top +"/dlp:v2/GooglePrivacyDlpV2BoundingBox/width": width +"/dlp:v2/GooglePrivacyDlpV2Bucket": google_privacy_dlp_v2_bucket +"/dlp:v2/GooglePrivacyDlpV2Bucket/max": max +"/dlp:v2/GooglePrivacyDlpV2Bucket/min": min +"/dlp:v2/GooglePrivacyDlpV2Bucket/replacementValue": replacement_value +"/dlp:v2/GooglePrivacyDlpV2BucketingConfig": google_privacy_dlp_v2_bucketing_config +"/dlp:v2/GooglePrivacyDlpV2BucketingConfig/buckets": buckets +"/dlp:v2/GooglePrivacyDlpV2BucketingConfig/buckets/bucket": bucket +"/dlp:v2/GooglePrivacyDlpV2ByteContentItem": google_privacy_dlp_v2_byte_content_item +"/dlp:v2/GooglePrivacyDlpV2ByteContentItem/data": data +"/dlp:v2/GooglePrivacyDlpV2ByteContentItem/type": type +"/dlp:v2/GooglePrivacyDlpV2CancelDlpJobRequest": google_privacy_dlp_v2_cancel_dlp_job_request +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsConfig": google_privacy_dlp_v2_categorical_stats_config +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsConfig/field": field +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsHistogramBucket": google_privacy_dlp_v2_categorical_stats_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsHistogramBucket/bucketSize": bucket_size +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsHistogramBucket/bucketValueCount": bucket_value_count +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsHistogramBucket/bucketValues": bucket_values +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsHistogramBucket/bucketValues/bucket_value": bucket_value +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsHistogramBucket/valueFrequencyLowerBound": value_frequency_lower_bound +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsHistogramBucket/valueFrequencyUpperBound": value_frequency_upper_bound +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsResult": google_privacy_dlp_v2_categorical_stats_result +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsResult/valueFrequencyHistogramBuckets": value_frequency_histogram_buckets +"/dlp:v2/GooglePrivacyDlpV2CategoricalStatsResult/valueFrequencyHistogramBuckets/value_frequency_histogram_bucket": value_frequency_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2CharacterMaskConfig": google_privacy_dlp_v2_character_mask_config +"/dlp:v2/GooglePrivacyDlpV2CharacterMaskConfig/charactersToIgnore": characters_to_ignore +"/dlp:v2/GooglePrivacyDlpV2CharacterMaskConfig/charactersToIgnore/characters_to_ignore": characters_to_ignore +"/dlp:v2/GooglePrivacyDlpV2CharacterMaskConfig/maskingCharacter": masking_character +"/dlp:v2/GooglePrivacyDlpV2CharacterMaskConfig/numberToMask": number_to_mask +"/dlp:v2/GooglePrivacyDlpV2CharacterMaskConfig/reverseOrder": reverse_order +"/dlp:v2/GooglePrivacyDlpV2CharsToIgnore": google_privacy_dlp_v2_chars_to_ignore +"/dlp:v2/GooglePrivacyDlpV2CharsToIgnore/charactersToSkip": characters_to_skip +"/dlp:v2/GooglePrivacyDlpV2CharsToIgnore/commonCharactersToIgnore": common_characters_to_ignore +"/dlp:v2/GooglePrivacyDlpV2CloudStorageOptions": google_privacy_dlp_v2_cloud_storage_options +"/dlp:v2/GooglePrivacyDlpV2CloudStorageOptions/bytesLimitPerFile": bytes_limit_per_file +"/dlp:v2/GooglePrivacyDlpV2CloudStorageOptions/fileSet": file_set +"/dlp:v2/GooglePrivacyDlpV2Color": google_privacy_dlp_v2_color +"/dlp:v2/GooglePrivacyDlpV2Color/blue": blue +"/dlp:v2/GooglePrivacyDlpV2Color/green": green +"/dlp:v2/GooglePrivacyDlpV2Color/red": red +"/dlp:v2/GooglePrivacyDlpV2Condition": google_privacy_dlp_v2_condition +"/dlp:v2/GooglePrivacyDlpV2Condition/field": field +"/dlp:v2/GooglePrivacyDlpV2Condition/operator": operator +"/dlp:v2/GooglePrivacyDlpV2Condition/value": value +"/dlp:v2/GooglePrivacyDlpV2Conditions": google_privacy_dlp_v2_conditions +"/dlp:v2/GooglePrivacyDlpV2Conditions/conditions": conditions +"/dlp:v2/GooglePrivacyDlpV2Conditions/conditions/condition": condition +"/dlp:v2/GooglePrivacyDlpV2ContentItem": google_privacy_dlp_v2_content_item +"/dlp:v2/GooglePrivacyDlpV2ContentItem/byteItem": byte_item +"/dlp:v2/GooglePrivacyDlpV2ContentItem/table": table +"/dlp:v2/GooglePrivacyDlpV2ContentItem/value": value +"/dlp:v2/GooglePrivacyDlpV2ContentLocation": google_privacy_dlp_v2_content_location +"/dlp:v2/GooglePrivacyDlpV2ContentLocation/containerName": container_name +"/dlp:v2/GooglePrivacyDlpV2ContentLocation/containerTimestamp": container_timestamp +"/dlp:v2/GooglePrivacyDlpV2ContentLocation/containerVersion": container_version +"/dlp:v2/GooglePrivacyDlpV2ContentLocation/documentLocation": document_location +"/dlp:v2/GooglePrivacyDlpV2ContentLocation/imageLocation": image_location +"/dlp:v2/GooglePrivacyDlpV2ContentLocation/recordLocation": record_location +"/dlp:v2/GooglePrivacyDlpV2CreateDeidentifyTemplateRequest": google_privacy_dlp_v2_create_deidentify_template_request +"/dlp:v2/GooglePrivacyDlpV2CreateDeidentifyTemplateRequest/deidentifyTemplate": deidentify_template +"/dlp:v2/GooglePrivacyDlpV2CreateDeidentifyTemplateRequest/templateId": template_id +"/dlp:v2/GooglePrivacyDlpV2CreateDlpJobRequest": google_privacy_dlp_v2_create_dlp_job_request +"/dlp:v2/GooglePrivacyDlpV2CreateDlpJobRequest/inspectJob": inspect_job +"/dlp:v2/GooglePrivacyDlpV2CreateDlpJobRequest/jobId": job_id +"/dlp:v2/GooglePrivacyDlpV2CreateDlpJobRequest/riskJob": risk_job +"/dlp:v2/GooglePrivacyDlpV2CreateInspectTemplateRequest": google_privacy_dlp_v2_create_inspect_template_request +"/dlp:v2/GooglePrivacyDlpV2CreateInspectTemplateRequest/inspectTemplate": inspect_template +"/dlp:v2/GooglePrivacyDlpV2CreateInspectTemplateRequest/templateId": template_id +"/dlp:v2/GooglePrivacyDlpV2CreateJobTriggerRequest": google_privacy_dlp_v2_create_job_trigger_request +"/dlp:v2/GooglePrivacyDlpV2CreateJobTriggerRequest/jobTrigger": job_trigger +"/dlp:v2/GooglePrivacyDlpV2CreateJobTriggerRequest/triggerId": trigger_id +"/dlp:v2/GooglePrivacyDlpV2CryptoHashConfig": google_privacy_dlp_v2_crypto_hash_config +"/dlp:v2/GooglePrivacyDlpV2CryptoHashConfig/cryptoKey": crypto_key +"/dlp:v2/GooglePrivacyDlpV2CryptoKey": google_privacy_dlp_v2_crypto_key +"/dlp:v2/GooglePrivacyDlpV2CryptoKey/kmsWrapped": kms_wrapped +"/dlp:v2/GooglePrivacyDlpV2CryptoKey/transient": transient +"/dlp:v2/GooglePrivacyDlpV2CryptoKey/unwrapped": unwrapped +"/dlp:v2/GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig": google_privacy_dlp_v2_crypto_replace_ffx_fpe_config +"/dlp:v2/GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig/commonAlphabet": common_alphabet +"/dlp:v2/GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig/context": context +"/dlp:v2/GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig/cryptoKey": crypto_key +"/dlp:v2/GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig/customAlphabet": custom_alphabet +"/dlp:v2/GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig/radix": radix +"/dlp:v2/GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig/surrogateInfoType": surrogate_info_type +"/dlp:v2/GooglePrivacyDlpV2CustomInfoType": google_privacy_dlp_v2_custom_info_type +"/dlp:v2/GooglePrivacyDlpV2CustomInfoType/detectionRules": detection_rules +"/dlp:v2/GooglePrivacyDlpV2CustomInfoType/detectionRules/detection_rule": detection_rule +"/dlp:v2/GooglePrivacyDlpV2CustomInfoType/dictionary": dictionary +"/dlp:v2/GooglePrivacyDlpV2CustomInfoType/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2CustomInfoType/likelihood": likelihood +"/dlp:v2/GooglePrivacyDlpV2CustomInfoType/regex": regex +"/dlp:v2/GooglePrivacyDlpV2CustomInfoType/surrogateType": surrogate_type +"/dlp:v2/GooglePrivacyDlpV2DatastoreKey": google_privacy_dlp_v2_datastore_key +"/dlp:v2/GooglePrivacyDlpV2DatastoreKey/entityKey": entity_key +"/dlp:v2/GooglePrivacyDlpV2DatastoreOptions": google_privacy_dlp_v2_datastore_options +"/dlp:v2/GooglePrivacyDlpV2DatastoreOptions/kind": kind +"/dlp:v2/GooglePrivacyDlpV2DatastoreOptions/partitionId": partition_id +"/dlp:v2/GooglePrivacyDlpV2DateShiftConfig": google_privacy_dlp_v2_date_shift_config +"/dlp:v2/GooglePrivacyDlpV2DateShiftConfig/context": context +"/dlp:v2/GooglePrivacyDlpV2DateShiftConfig/cryptoKey": crypto_key +"/dlp:v2/GooglePrivacyDlpV2DateShiftConfig/lowerBoundDays": lower_bound_days +"/dlp:v2/GooglePrivacyDlpV2DateShiftConfig/upperBoundDays": upper_bound_days +"/dlp:v2/GooglePrivacyDlpV2DateTime": google_privacy_dlp_v2_date_time +"/dlp:v2/GooglePrivacyDlpV2DateTime/date": date +"/dlp:v2/GooglePrivacyDlpV2DateTime/dayOfWeek": day_of_week +"/dlp:v2/GooglePrivacyDlpV2DateTime/time": time +"/dlp:v2/GooglePrivacyDlpV2DateTime/timeZone": time_zone +"/dlp:v2/GooglePrivacyDlpV2DeidentifyConfig": google_privacy_dlp_v2_deidentify_config +"/dlp:v2/GooglePrivacyDlpV2DeidentifyConfig/infoTypeTransformations": info_type_transformations +"/dlp:v2/GooglePrivacyDlpV2DeidentifyConfig/recordTransformations": record_transformations +"/dlp:v2/GooglePrivacyDlpV2DeidentifyContentRequest": google_privacy_dlp_v2_deidentify_content_request +"/dlp:v2/GooglePrivacyDlpV2DeidentifyContentRequest/deidentifyConfig": deidentify_config +"/dlp:v2/GooglePrivacyDlpV2DeidentifyContentRequest/deidentifyTemplateName": deidentify_template_name +"/dlp:v2/GooglePrivacyDlpV2DeidentifyContentRequest/inspectConfig": inspect_config +"/dlp:v2/GooglePrivacyDlpV2DeidentifyContentRequest/inspectTemplateName": inspect_template_name +"/dlp:v2/GooglePrivacyDlpV2DeidentifyContentRequest/item": item +"/dlp:v2/GooglePrivacyDlpV2DeidentifyContentResponse": google_privacy_dlp_v2_deidentify_content_response +"/dlp:v2/GooglePrivacyDlpV2DeidentifyContentResponse/item": item +"/dlp:v2/GooglePrivacyDlpV2DeidentifyContentResponse/overview": overview +"/dlp:v2/GooglePrivacyDlpV2DeidentifyTemplate": google_privacy_dlp_v2_deidentify_template +"/dlp:v2/GooglePrivacyDlpV2DeidentifyTemplate/createTime": create_time +"/dlp:v2/GooglePrivacyDlpV2DeidentifyTemplate/deidentifyConfig": deidentify_config +"/dlp:v2/GooglePrivacyDlpV2DeidentifyTemplate/description": description +"/dlp:v2/GooglePrivacyDlpV2DeidentifyTemplate/displayName": display_name +"/dlp:v2/GooglePrivacyDlpV2DeidentifyTemplate/name": name +"/dlp:v2/GooglePrivacyDlpV2DeidentifyTemplate/updateTime": update_time +"/dlp:v2/GooglePrivacyDlpV2DetectionRule": google_privacy_dlp_v2_detection_rule +"/dlp:v2/GooglePrivacyDlpV2DetectionRule/hotwordRule": hotword_rule +"/dlp:v2/GooglePrivacyDlpV2Dictionary": google_privacy_dlp_v2_dictionary +"/dlp:v2/GooglePrivacyDlpV2Dictionary/wordList": word_list +"/dlp:v2/GooglePrivacyDlpV2DlpJob": google_privacy_dlp_v2_dlp_job +"/dlp:v2/GooglePrivacyDlpV2DlpJob/createTime": create_time +"/dlp:v2/GooglePrivacyDlpV2DlpJob/endTime": end_time +"/dlp:v2/GooglePrivacyDlpV2DlpJob/errors": errors +"/dlp:v2/GooglePrivacyDlpV2DlpJob/errors/error": error +"/dlp:v2/GooglePrivacyDlpV2DlpJob/inspectDetails": inspect_details +"/dlp:v2/GooglePrivacyDlpV2DlpJob/jobTriggerName": job_trigger_name +"/dlp:v2/GooglePrivacyDlpV2DlpJob/name": name +"/dlp:v2/GooglePrivacyDlpV2DlpJob/riskDetails": risk_details +"/dlp:v2/GooglePrivacyDlpV2DlpJob/startTime": start_time +"/dlp:v2/GooglePrivacyDlpV2DlpJob/state": state +"/dlp:v2/GooglePrivacyDlpV2DlpJob/type": type +"/dlp:v2/GooglePrivacyDlpV2DocumentLocation": google_privacy_dlp_v2_document_location +"/dlp:v2/GooglePrivacyDlpV2DocumentLocation/fileOffset": file_offset +"/dlp:v2/GooglePrivacyDlpV2Error": google_privacy_dlp_v2_error +"/dlp:v2/GooglePrivacyDlpV2Error/details": details +"/dlp:v2/GooglePrivacyDlpV2Error/timestamps": timestamps +"/dlp:v2/GooglePrivacyDlpV2Error/timestamps/timestamp": timestamp +"/dlp:v2/GooglePrivacyDlpV2Expressions": google_privacy_dlp_v2_expressions +"/dlp:v2/GooglePrivacyDlpV2Expressions/conditions": conditions +"/dlp:v2/GooglePrivacyDlpV2Expressions/logicalOperator": logical_operator +"/dlp:v2/GooglePrivacyDlpV2FieldId": google_privacy_dlp_v2_field_id +"/dlp:v2/GooglePrivacyDlpV2FieldId/name": name +"/dlp:v2/GooglePrivacyDlpV2FieldTransformation": google_privacy_dlp_v2_field_transformation +"/dlp:v2/GooglePrivacyDlpV2FieldTransformation/condition": condition +"/dlp:v2/GooglePrivacyDlpV2FieldTransformation/fields": fields +"/dlp:v2/GooglePrivacyDlpV2FieldTransformation/fields/field": field +"/dlp:v2/GooglePrivacyDlpV2FieldTransformation/infoTypeTransformations": info_type_transformations +"/dlp:v2/GooglePrivacyDlpV2FieldTransformation/primitiveTransformation": primitive_transformation +"/dlp:v2/GooglePrivacyDlpV2FileSet": google_privacy_dlp_v2_file_set +"/dlp:v2/GooglePrivacyDlpV2FileSet/url": url +"/dlp:v2/GooglePrivacyDlpV2Finding": google_privacy_dlp_v2_finding +"/dlp:v2/GooglePrivacyDlpV2Finding/createTime": create_time +"/dlp:v2/GooglePrivacyDlpV2Finding/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2Finding/likelihood": likelihood +"/dlp:v2/GooglePrivacyDlpV2Finding/location": location +"/dlp:v2/GooglePrivacyDlpV2Finding/quote": quote +"/dlp:v2/GooglePrivacyDlpV2Finding/quoteInfo": quote_info +"/dlp:v2/GooglePrivacyDlpV2FindingLimits": google_privacy_dlp_v2_finding_limits +"/dlp:v2/GooglePrivacyDlpV2FindingLimits/maxFindingsPerInfoType": max_findings_per_info_type +"/dlp:v2/GooglePrivacyDlpV2FindingLimits/maxFindingsPerInfoType/max_findings_per_info_type": max_findings_per_info_type +"/dlp:v2/GooglePrivacyDlpV2FindingLimits/maxFindingsPerItem": max_findings_per_item +"/dlp:v2/GooglePrivacyDlpV2FindingLimits/maxFindingsPerRequest": max_findings_per_request +"/dlp:v2/GooglePrivacyDlpV2FixedSizeBucketingConfig": google_privacy_dlp_v2_fixed_size_bucketing_config +"/dlp:v2/GooglePrivacyDlpV2FixedSizeBucketingConfig/bucketSize": bucket_size +"/dlp:v2/GooglePrivacyDlpV2FixedSizeBucketingConfig/lowerBound": lower_bound +"/dlp:v2/GooglePrivacyDlpV2FixedSizeBucketingConfig/upperBound": upper_bound +"/dlp:v2/GooglePrivacyDlpV2HotwordRule": google_privacy_dlp_v2_hotword_rule +"/dlp:v2/GooglePrivacyDlpV2HotwordRule/hotwordRegex": hotword_regex +"/dlp:v2/GooglePrivacyDlpV2HotwordRule/likelihoodAdjustment": likelihood_adjustment +"/dlp:v2/GooglePrivacyDlpV2HotwordRule/proximity": proximity +"/dlp:v2/GooglePrivacyDlpV2ImageLocation": google_privacy_dlp_v2_image_location +"/dlp:v2/GooglePrivacyDlpV2ImageLocation/boundingBoxes": bounding_boxes +"/dlp:v2/GooglePrivacyDlpV2ImageLocation/boundingBoxes/bounding_box": bounding_box +"/dlp:v2/GooglePrivacyDlpV2ImageRedactionConfig": google_privacy_dlp_v2_image_redaction_config +"/dlp:v2/GooglePrivacyDlpV2ImageRedactionConfig/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2ImageRedactionConfig/redactAllText": redact_all_text +"/dlp:v2/GooglePrivacyDlpV2ImageRedactionConfig/redactionColor": redaction_color +"/dlp:v2/GooglePrivacyDlpV2InfoType": google_privacy_dlp_v2_info_type +"/dlp:v2/GooglePrivacyDlpV2InfoType/name": name +"/dlp:v2/GooglePrivacyDlpV2InfoTypeDescription": google_privacy_dlp_v2_info_type_description +"/dlp:v2/GooglePrivacyDlpV2InfoTypeDescription/displayName": display_name +"/dlp:v2/GooglePrivacyDlpV2InfoTypeDescription/name": name +"/dlp:v2/GooglePrivacyDlpV2InfoTypeDescription/supportedBy": supported_by +"/dlp:v2/GooglePrivacyDlpV2InfoTypeDescription/supportedBy/supported_by": supported_by +"/dlp:v2/GooglePrivacyDlpV2InfoTypeLimit": google_privacy_dlp_v2_info_type_limit +"/dlp:v2/GooglePrivacyDlpV2InfoTypeLimit/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2InfoTypeLimit/maxFindings": max_findings +"/dlp:v2/GooglePrivacyDlpV2InfoTypeStats": google_privacy_dlp_v2_info_type_stats +"/dlp:v2/GooglePrivacyDlpV2InfoTypeStats/count": count +"/dlp:v2/GooglePrivacyDlpV2InfoTypeStats/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2InfoTypeTransformation": google_privacy_dlp_v2_info_type_transformation +"/dlp:v2/GooglePrivacyDlpV2InfoTypeTransformation/infoTypes": info_types +"/dlp:v2/GooglePrivacyDlpV2InfoTypeTransformation/infoTypes/info_type": info_type +"/dlp:v2/GooglePrivacyDlpV2InfoTypeTransformation/primitiveTransformation": primitive_transformation +"/dlp:v2/GooglePrivacyDlpV2InfoTypeTransformations": google_privacy_dlp_v2_info_type_transformations +"/dlp:v2/GooglePrivacyDlpV2InfoTypeTransformations/transformations": transformations +"/dlp:v2/GooglePrivacyDlpV2InfoTypeTransformations/transformations/transformation": transformation +"/dlp:v2/GooglePrivacyDlpV2InspectConfig": google_privacy_dlp_v2_inspect_config +"/dlp:v2/GooglePrivacyDlpV2InspectConfig/contentOptions": content_options +"/dlp:v2/GooglePrivacyDlpV2InspectConfig/contentOptions/content_option": content_option +"/dlp:v2/GooglePrivacyDlpV2InspectConfig/customInfoTypes": custom_info_types +"/dlp:v2/GooglePrivacyDlpV2InspectConfig/customInfoTypes/custom_info_type": custom_info_type +"/dlp:v2/GooglePrivacyDlpV2InspectConfig/excludeInfoTypes": exclude_info_types +"/dlp:v2/GooglePrivacyDlpV2InspectConfig/includeQuote": include_quote +"/dlp:v2/GooglePrivacyDlpV2InspectConfig/infoTypes": info_types +"/dlp:v2/GooglePrivacyDlpV2InspectConfig/infoTypes/info_type": info_type +"/dlp:v2/GooglePrivacyDlpV2InspectConfig/limits": limits +"/dlp:v2/GooglePrivacyDlpV2InspectConfig/minLikelihood": min_likelihood +"/dlp:v2/GooglePrivacyDlpV2InspectContentRequest": google_privacy_dlp_v2_inspect_content_request +"/dlp:v2/GooglePrivacyDlpV2InspectContentRequest/inspectConfig": inspect_config +"/dlp:v2/GooglePrivacyDlpV2InspectContentRequest/inspectTemplateName": inspect_template_name +"/dlp:v2/GooglePrivacyDlpV2InspectContentRequest/item": item +"/dlp:v2/GooglePrivacyDlpV2InspectContentResponse": google_privacy_dlp_v2_inspect_content_response +"/dlp:v2/GooglePrivacyDlpV2InspectContentResponse/result": result +"/dlp:v2/GooglePrivacyDlpV2InspectDataSourceDetails": google_privacy_dlp_v2_inspect_data_source_details +"/dlp:v2/GooglePrivacyDlpV2InspectDataSourceDetails/requestedOptions": requested_options +"/dlp:v2/GooglePrivacyDlpV2InspectDataSourceDetails/result": result +"/dlp:v2/GooglePrivacyDlpV2InspectJobConfig": google_privacy_dlp_v2_inspect_job_config +"/dlp:v2/GooglePrivacyDlpV2InspectJobConfig/actions": actions +"/dlp:v2/GooglePrivacyDlpV2InspectJobConfig/actions/action": action +"/dlp:v2/GooglePrivacyDlpV2InspectJobConfig/inspectConfig": inspect_config +"/dlp:v2/GooglePrivacyDlpV2InspectJobConfig/inspectTemplateName": inspect_template_name +"/dlp:v2/GooglePrivacyDlpV2InspectJobConfig/storageConfig": storage_config +"/dlp:v2/GooglePrivacyDlpV2InspectResult": google_privacy_dlp_v2_inspect_result +"/dlp:v2/GooglePrivacyDlpV2InspectResult/findings": findings +"/dlp:v2/GooglePrivacyDlpV2InspectResult/findings/finding": finding +"/dlp:v2/GooglePrivacyDlpV2InspectResult/findingsTruncated": findings_truncated +"/dlp:v2/GooglePrivacyDlpV2InspectTemplate": google_privacy_dlp_v2_inspect_template +"/dlp:v2/GooglePrivacyDlpV2InspectTemplate/createTime": create_time +"/dlp:v2/GooglePrivacyDlpV2InspectTemplate/description": description +"/dlp:v2/GooglePrivacyDlpV2InspectTemplate/displayName": display_name +"/dlp:v2/GooglePrivacyDlpV2InspectTemplate/inspectConfig": inspect_config +"/dlp:v2/GooglePrivacyDlpV2InspectTemplate/name": name +"/dlp:v2/GooglePrivacyDlpV2InspectTemplate/updateTime": update_time +"/dlp:v2/GooglePrivacyDlpV2JobTrigger": google_privacy_dlp_v2_job_trigger +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/createTime": create_time +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/description": description +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/displayName": display_name +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/errors": errors +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/errors/error": error +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/inspectJob": inspect_job +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/lastRunTime": last_run_time +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/name": name +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/status": status +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/triggers": triggers +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/triggers/trigger": trigger +"/dlp:v2/GooglePrivacyDlpV2JobTrigger/updateTime": update_time +"/dlp:v2/GooglePrivacyDlpV2KAnonymityConfig": google_privacy_dlp_v2_k_anonymity_config +"/dlp:v2/GooglePrivacyDlpV2KAnonymityConfig/quasiIds": quasi_ids +"/dlp:v2/GooglePrivacyDlpV2KAnonymityConfig/quasiIds/quasi_id": quasi_id +"/dlp:v2/GooglePrivacyDlpV2KAnonymityEquivalenceClass": google_privacy_dlp_v2_k_anonymity_equivalence_class +"/dlp:v2/GooglePrivacyDlpV2KAnonymityEquivalenceClass/equivalenceClassSize": equivalence_class_size +"/dlp:v2/GooglePrivacyDlpV2KAnonymityEquivalenceClass/quasiIdsValues": quasi_ids_values +"/dlp:v2/GooglePrivacyDlpV2KAnonymityEquivalenceClass/quasiIdsValues/quasi_ids_value": quasi_ids_value +"/dlp:v2/GooglePrivacyDlpV2KAnonymityHistogramBucket": google_privacy_dlp_v2_k_anonymity_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2KAnonymityHistogramBucket/bucketSize": bucket_size +"/dlp:v2/GooglePrivacyDlpV2KAnonymityHistogramBucket/bucketValueCount": bucket_value_count +"/dlp:v2/GooglePrivacyDlpV2KAnonymityHistogramBucket/bucketValues": bucket_values +"/dlp:v2/GooglePrivacyDlpV2KAnonymityHistogramBucket/bucketValues/bucket_value": bucket_value +"/dlp:v2/GooglePrivacyDlpV2KAnonymityHistogramBucket/equivalenceClassSizeLowerBound": equivalence_class_size_lower_bound +"/dlp:v2/GooglePrivacyDlpV2KAnonymityHistogramBucket/equivalenceClassSizeUpperBound": equivalence_class_size_upper_bound +"/dlp:v2/GooglePrivacyDlpV2KAnonymityResult": google_privacy_dlp_v2_k_anonymity_result +"/dlp:v2/GooglePrivacyDlpV2KAnonymityResult/equivalenceClassHistogramBuckets": equivalence_class_histogram_buckets +"/dlp:v2/GooglePrivacyDlpV2KAnonymityResult/equivalenceClassHistogramBuckets/equivalence_class_histogram_bucket": equivalence_class_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationConfig": google_privacy_dlp_v2_k_map_estimation_config +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationConfig/auxiliaryTables": auxiliary_tables +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationConfig/auxiliaryTables/auxiliary_table": auxiliary_table +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationConfig/quasiIds": quasi_ids +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationConfig/quasiIds/quasi_id": quasi_id +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationConfig/regionCode": region_code +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationHistogramBucket": google_privacy_dlp_v2_k_map_estimation_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationHistogramBucket/bucketSize": bucket_size +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationHistogramBucket/bucketValueCount": bucket_value_count +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationHistogramBucket/bucketValues": bucket_values +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationHistogramBucket/bucketValues/bucket_value": bucket_value +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationHistogramBucket/maxAnonymity": max_anonymity +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationHistogramBucket/minAnonymity": min_anonymity +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationQuasiIdValues": google_privacy_dlp_v2_k_map_estimation_quasi_id_values +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationQuasiIdValues/estimatedAnonymity": estimated_anonymity +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationQuasiIdValues/quasiIdsValues": quasi_ids_values +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationQuasiIdValues/quasiIdsValues/quasi_ids_value": quasi_ids_value +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationResult": google_privacy_dlp_v2_k_map_estimation_result +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationResult/kMapEstimationHistogram": k_map_estimation_histogram +"/dlp:v2/GooglePrivacyDlpV2KMapEstimationResult/kMapEstimationHistogram/k_map_estimation_histogram": k_map_estimation_histogram +"/dlp:v2/GooglePrivacyDlpV2Key": google_privacy_dlp_v2_key +"/dlp:v2/GooglePrivacyDlpV2Key/partitionId": partition_id +"/dlp:v2/GooglePrivacyDlpV2Key/path": path +"/dlp:v2/GooglePrivacyDlpV2Key/path/path": path +"/dlp:v2/GooglePrivacyDlpV2KindExpression": google_privacy_dlp_v2_kind_expression +"/dlp:v2/GooglePrivacyDlpV2KindExpression/name": name +"/dlp:v2/GooglePrivacyDlpV2KmsWrappedCryptoKey": google_privacy_dlp_v2_kms_wrapped_crypto_key +"/dlp:v2/GooglePrivacyDlpV2KmsWrappedCryptoKey/cryptoKeyName": crypto_key_name +"/dlp:v2/GooglePrivacyDlpV2KmsWrappedCryptoKey/wrappedKey": wrapped_key +"/dlp:v2/GooglePrivacyDlpV2LDiversityConfig": google_privacy_dlp_v2_l_diversity_config +"/dlp:v2/GooglePrivacyDlpV2LDiversityConfig/quasiIds": quasi_ids +"/dlp:v2/GooglePrivacyDlpV2LDiversityConfig/quasiIds/quasi_id": quasi_id +"/dlp:v2/GooglePrivacyDlpV2LDiversityConfig/sensitiveAttribute": sensitive_attribute +"/dlp:v2/GooglePrivacyDlpV2LDiversityEquivalenceClass": google_privacy_dlp_v2_l_diversity_equivalence_class +"/dlp:v2/GooglePrivacyDlpV2LDiversityEquivalenceClass/equivalenceClassSize": equivalence_class_size +"/dlp:v2/GooglePrivacyDlpV2LDiversityEquivalenceClass/numDistinctSensitiveValues": num_distinct_sensitive_values +"/dlp:v2/GooglePrivacyDlpV2LDiversityEquivalenceClass/quasiIdsValues": quasi_ids_values +"/dlp:v2/GooglePrivacyDlpV2LDiversityEquivalenceClass/quasiIdsValues/quasi_ids_value": quasi_ids_value +"/dlp:v2/GooglePrivacyDlpV2LDiversityEquivalenceClass/topSensitiveValues": top_sensitive_values +"/dlp:v2/GooglePrivacyDlpV2LDiversityEquivalenceClass/topSensitiveValues/top_sensitive_value": top_sensitive_value +"/dlp:v2/GooglePrivacyDlpV2LDiversityHistogramBucket": google_privacy_dlp_v2_l_diversity_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2LDiversityHistogramBucket/bucketSize": bucket_size +"/dlp:v2/GooglePrivacyDlpV2LDiversityHistogramBucket/bucketValueCount": bucket_value_count +"/dlp:v2/GooglePrivacyDlpV2LDiversityHistogramBucket/bucketValues": bucket_values +"/dlp:v2/GooglePrivacyDlpV2LDiversityHistogramBucket/bucketValues/bucket_value": bucket_value +"/dlp:v2/GooglePrivacyDlpV2LDiversityHistogramBucket/sensitiveValueFrequencyLowerBound": sensitive_value_frequency_lower_bound +"/dlp:v2/GooglePrivacyDlpV2LDiversityHistogramBucket/sensitiveValueFrequencyUpperBound": sensitive_value_frequency_upper_bound +"/dlp:v2/GooglePrivacyDlpV2LDiversityResult": google_privacy_dlp_v2_l_diversity_result +"/dlp:v2/GooglePrivacyDlpV2LDiversityResult/sensitiveValueFrequencyHistogramBuckets": sensitive_value_frequency_histogram_buckets +"/dlp:v2/GooglePrivacyDlpV2LDiversityResult/sensitiveValueFrequencyHistogramBuckets/sensitive_value_frequency_histogram_bucket": sensitive_value_frequency_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2LikelihoodAdjustment": google_privacy_dlp_v2_likelihood_adjustment +"/dlp:v2/GooglePrivacyDlpV2LikelihoodAdjustment/fixedLikelihood": fixed_likelihood +"/dlp:v2/GooglePrivacyDlpV2LikelihoodAdjustment/relativeLikelihood": relative_likelihood +"/dlp:v2/GooglePrivacyDlpV2ListDeidentifyTemplatesResponse": google_privacy_dlp_v2_list_deidentify_templates_response +"/dlp:v2/GooglePrivacyDlpV2ListDeidentifyTemplatesResponse/deidentifyTemplates": deidentify_templates +"/dlp:v2/GooglePrivacyDlpV2ListDeidentifyTemplatesResponse/deidentifyTemplates/deidentify_template": deidentify_template +"/dlp:v2/GooglePrivacyDlpV2ListDeidentifyTemplatesResponse/nextPageToken": next_page_token +"/dlp:v2/GooglePrivacyDlpV2ListDlpJobsResponse": google_privacy_dlp_v2_list_dlp_jobs_response +"/dlp:v2/GooglePrivacyDlpV2ListDlpJobsResponse/jobs": jobs +"/dlp:v2/GooglePrivacyDlpV2ListDlpJobsResponse/jobs/job": job +"/dlp:v2/GooglePrivacyDlpV2ListDlpJobsResponse/nextPageToken": next_page_token +"/dlp:v2/GooglePrivacyDlpV2ListInfoTypesResponse": google_privacy_dlp_v2_list_info_types_response +"/dlp:v2/GooglePrivacyDlpV2ListInfoTypesResponse/infoTypes": info_types +"/dlp:v2/GooglePrivacyDlpV2ListInfoTypesResponse/infoTypes/info_type": info_type +"/dlp:v2/GooglePrivacyDlpV2ListInspectTemplatesResponse": google_privacy_dlp_v2_list_inspect_templates_response +"/dlp:v2/GooglePrivacyDlpV2ListInspectTemplatesResponse/inspectTemplates": inspect_templates +"/dlp:v2/GooglePrivacyDlpV2ListInspectTemplatesResponse/inspectTemplates/inspect_template": inspect_template +"/dlp:v2/GooglePrivacyDlpV2ListInspectTemplatesResponse/nextPageToken": next_page_token +"/dlp:v2/GooglePrivacyDlpV2ListJobTriggersResponse": google_privacy_dlp_v2_list_job_triggers_response +"/dlp:v2/GooglePrivacyDlpV2ListJobTriggersResponse/jobTriggers": job_triggers +"/dlp:v2/GooglePrivacyDlpV2ListJobTriggersResponse/jobTriggers/job_trigger": job_trigger +"/dlp:v2/GooglePrivacyDlpV2ListJobTriggersResponse/nextPageToken": next_page_token +"/dlp:v2/GooglePrivacyDlpV2Location": google_privacy_dlp_v2_location +"/dlp:v2/GooglePrivacyDlpV2Location/byteRange": byte_range +"/dlp:v2/GooglePrivacyDlpV2Location/codepointRange": codepoint_range +"/dlp:v2/GooglePrivacyDlpV2Location/contentLocations": content_locations +"/dlp:v2/GooglePrivacyDlpV2Location/contentLocations/content_location": content_location +"/dlp:v2/GooglePrivacyDlpV2NumericalStatsConfig": google_privacy_dlp_v2_numerical_stats_config +"/dlp:v2/GooglePrivacyDlpV2NumericalStatsConfig/field": field +"/dlp:v2/GooglePrivacyDlpV2NumericalStatsResult": google_privacy_dlp_v2_numerical_stats_result +"/dlp:v2/GooglePrivacyDlpV2NumericalStatsResult/maxValue": max_value +"/dlp:v2/GooglePrivacyDlpV2NumericalStatsResult/minValue": min_value +"/dlp:v2/GooglePrivacyDlpV2NumericalStatsResult/quantileValues": quantile_values +"/dlp:v2/GooglePrivacyDlpV2NumericalStatsResult/quantileValues/quantile_value": quantile_value +"/dlp:v2/GooglePrivacyDlpV2OutputStorageConfig": google_privacy_dlp_v2_output_storage_config +"/dlp:v2/GooglePrivacyDlpV2OutputStorageConfig/outputSchema": output_schema +"/dlp:v2/GooglePrivacyDlpV2OutputStorageConfig/table": table +"/dlp:v2/GooglePrivacyDlpV2PartitionId": google_privacy_dlp_v2_partition_id +"/dlp:v2/GooglePrivacyDlpV2PartitionId/namespaceId": namespace_id +"/dlp:v2/GooglePrivacyDlpV2PartitionId/projectId": project_id +"/dlp:v2/GooglePrivacyDlpV2PathElement": google_privacy_dlp_v2_path_element +"/dlp:v2/GooglePrivacyDlpV2PathElement/id": id +"/dlp:v2/GooglePrivacyDlpV2PathElement/kind": kind +"/dlp:v2/GooglePrivacyDlpV2PathElement/name": name +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation": google_privacy_dlp_v2_primitive_transformation +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation/bucketingConfig": bucketing_config +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation/characterMaskConfig": character_mask_config +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation/cryptoHashConfig": crypto_hash_config +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation/cryptoReplaceFfxFpeConfig": crypto_replace_ffx_fpe_config +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation/dateShiftConfig": date_shift_config +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation/fixedSizeBucketingConfig": fixed_size_bucketing_config +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation/redactConfig": redact_config +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation/replaceConfig": replace_config +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation/replaceWithInfoTypeConfig": replace_with_info_type_config +"/dlp:v2/GooglePrivacyDlpV2PrimitiveTransformation/timePartConfig": time_part_config +"/dlp:v2/GooglePrivacyDlpV2PrivacyMetric": google_privacy_dlp_v2_privacy_metric +"/dlp:v2/GooglePrivacyDlpV2PrivacyMetric/categoricalStatsConfig": categorical_stats_config +"/dlp:v2/GooglePrivacyDlpV2PrivacyMetric/kAnonymityConfig": k_anonymity_config +"/dlp:v2/GooglePrivacyDlpV2PrivacyMetric/kMapEstimationConfig": k_map_estimation_config +"/dlp:v2/GooglePrivacyDlpV2PrivacyMetric/lDiversityConfig": l_diversity_config +"/dlp:v2/GooglePrivacyDlpV2PrivacyMetric/numericalStatsConfig": numerical_stats_config +"/dlp:v2/GooglePrivacyDlpV2Proximity": google_privacy_dlp_v2_proximity +"/dlp:v2/GooglePrivacyDlpV2Proximity/windowAfter": window_after +"/dlp:v2/GooglePrivacyDlpV2Proximity/windowBefore": window_before +"/dlp:v2/GooglePrivacyDlpV2PublishToPubSub": google_privacy_dlp_v2_publish_to_pub_sub +"/dlp:v2/GooglePrivacyDlpV2PublishToPubSub/topic": topic +"/dlp:v2/GooglePrivacyDlpV2QuasiIdField": google_privacy_dlp_v2_quasi_id_field +"/dlp:v2/GooglePrivacyDlpV2QuasiIdField/customTag": custom_tag +"/dlp:v2/GooglePrivacyDlpV2QuasiIdField/field": field +"/dlp:v2/GooglePrivacyDlpV2QuoteInfo": google_privacy_dlp_v2_quote_info +"/dlp:v2/GooglePrivacyDlpV2QuoteInfo/dateTime": date_time +"/dlp:v2/GooglePrivacyDlpV2Range": google_privacy_dlp_v2_range +"/dlp:v2/GooglePrivacyDlpV2Range/end": end +"/dlp:v2/GooglePrivacyDlpV2Range/start": start +"/dlp:v2/GooglePrivacyDlpV2RecordCondition": google_privacy_dlp_v2_record_condition +"/dlp:v2/GooglePrivacyDlpV2RecordCondition/expressions": expressions +"/dlp:v2/GooglePrivacyDlpV2RecordKey": google_privacy_dlp_v2_record_key +"/dlp:v2/GooglePrivacyDlpV2RecordKey/bigQueryKey": big_query_key +"/dlp:v2/GooglePrivacyDlpV2RecordKey/datastoreKey": datastore_key +"/dlp:v2/GooglePrivacyDlpV2RecordLocation": google_privacy_dlp_v2_record_location +"/dlp:v2/GooglePrivacyDlpV2RecordLocation/fieldId": field_id +"/dlp:v2/GooglePrivacyDlpV2RecordLocation/recordKey": record_key +"/dlp:v2/GooglePrivacyDlpV2RecordLocation/tableLocation": table_location +"/dlp:v2/GooglePrivacyDlpV2RecordSuppression": google_privacy_dlp_v2_record_suppression +"/dlp:v2/GooglePrivacyDlpV2RecordSuppression/condition": condition +"/dlp:v2/GooglePrivacyDlpV2RecordTransformations": google_privacy_dlp_v2_record_transformations +"/dlp:v2/GooglePrivacyDlpV2RecordTransformations/fieldTransformations": field_transformations +"/dlp:v2/GooglePrivacyDlpV2RecordTransformations/fieldTransformations/field_transformation": field_transformation +"/dlp:v2/GooglePrivacyDlpV2RecordTransformations/recordSuppressions": record_suppressions +"/dlp:v2/GooglePrivacyDlpV2RecordTransformations/recordSuppressions/record_suppression": record_suppression +"/dlp:v2/GooglePrivacyDlpV2RedactConfig": google_privacy_dlp_v2_redact_config +"/dlp:v2/GooglePrivacyDlpV2RedactImageRequest": google_privacy_dlp_v2_redact_image_request +"/dlp:v2/GooglePrivacyDlpV2RedactImageRequest/byteItem": byte_item +"/dlp:v2/GooglePrivacyDlpV2RedactImageRequest/imageRedactionConfigs": image_redaction_configs +"/dlp:v2/GooglePrivacyDlpV2RedactImageRequest/imageRedactionConfigs/image_redaction_config": image_redaction_config +"/dlp:v2/GooglePrivacyDlpV2RedactImageRequest/inspectConfig": inspect_config +"/dlp:v2/GooglePrivacyDlpV2RedactImageResponse": google_privacy_dlp_v2_redact_image_response +"/dlp:v2/GooglePrivacyDlpV2RedactImageResponse/extractedText": extracted_text +"/dlp:v2/GooglePrivacyDlpV2RedactImageResponse/redactedImage": redacted_image +"/dlp:v2/GooglePrivacyDlpV2Regex": google_privacy_dlp_v2_regex +"/dlp:v2/GooglePrivacyDlpV2Regex/pattern": pattern +"/dlp:v2/GooglePrivacyDlpV2ReidentifyContentRequest": google_privacy_dlp_v2_reidentify_content_request +"/dlp:v2/GooglePrivacyDlpV2ReidentifyContentRequest/inspectConfig": inspect_config +"/dlp:v2/GooglePrivacyDlpV2ReidentifyContentRequest/inspectTemplateName": inspect_template_name +"/dlp:v2/GooglePrivacyDlpV2ReidentifyContentRequest/item": item +"/dlp:v2/GooglePrivacyDlpV2ReidentifyContentRequest/reidentifyConfig": reidentify_config +"/dlp:v2/GooglePrivacyDlpV2ReidentifyContentRequest/reidentifyTemplateName": reidentify_template_name +"/dlp:v2/GooglePrivacyDlpV2ReidentifyContentResponse": google_privacy_dlp_v2_reidentify_content_response +"/dlp:v2/GooglePrivacyDlpV2ReidentifyContentResponse/item": item +"/dlp:v2/GooglePrivacyDlpV2ReidentifyContentResponse/overview": overview +"/dlp:v2/GooglePrivacyDlpV2ReplaceValueConfig": google_privacy_dlp_v2_replace_value_config +"/dlp:v2/GooglePrivacyDlpV2ReplaceValueConfig/newValue": new_value +"/dlp:v2/GooglePrivacyDlpV2ReplaceWithInfoTypeConfig": google_privacy_dlp_v2_replace_with_info_type_config +"/dlp:v2/GooglePrivacyDlpV2RequestedOptions": google_privacy_dlp_v2_requested_options +"/dlp:v2/GooglePrivacyDlpV2RequestedOptions/jobConfig": job_config +"/dlp:v2/GooglePrivacyDlpV2RequestedOptions/snapshotInspectTemplate": snapshot_inspect_template +"/dlp:v2/GooglePrivacyDlpV2Result": google_privacy_dlp_v2_result +"/dlp:v2/GooglePrivacyDlpV2Result/infoTypeStats": info_type_stats +"/dlp:v2/GooglePrivacyDlpV2Result/infoTypeStats/info_type_stat": info_type_stat +"/dlp:v2/GooglePrivacyDlpV2Result/processedBytes": processed_bytes +"/dlp:v2/GooglePrivacyDlpV2Result/totalEstimatedBytes": total_estimated_bytes +"/dlp:v2/GooglePrivacyDlpV2RiskAnalysisJobConfig": google_privacy_dlp_v2_risk_analysis_job_config +"/dlp:v2/GooglePrivacyDlpV2RiskAnalysisJobConfig/actions": actions +"/dlp:v2/GooglePrivacyDlpV2RiskAnalysisJobConfig/actions/action": action +"/dlp:v2/GooglePrivacyDlpV2RiskAnalysisJobConfig/privacyMetric": privacy_metric +"/dlp:v2/GooglePrivacyDlpV2RiskAnalysisJobConfig/sourceTable": source_table +"/dlp:v2/GooglePrivacyDlpV2Row": google_privacy_dlp_v2_row +"/dlp:v2/GooglePrivacyDlpV2Row/values": values +"/dlp:v2/GooglePrivacyDlpV2Row/values/value": value +"/dlp:v2/GooglePrivacyDlpV2SaveFindings": google_privacy_dlp_v2_save_findings +"/dlp:v2/GooglePrivacyDlpV2SaveFindings/outputConfig": output_config +"/dlp:v2/GooglePrivacyDlpV2Schedule": google_privacy_dlp_v2_schedule +"/dlp:v2/GooglePrivacyDlpV2Schedule/recurrencePeriodDuration": recurrence_period_duration +"/dlp:v2/GooglePrivacyDlpV2StorageConfig": google_privacy_dlp_v2_storage_config +"/dlp:v2/GooglePrivacyDlpV2StorageConfig/bigQueryOptions": big_query_options +"/dlp:v2/GooglePrivacyDlpV2StorageConfig/cloudStorageOptions": cloud_storage_options +"/dlp:v2/GooglePrivacyDlpV2StorageConfig/datastoreOptions": datastore_options +"/dlp:v2/GooglePrivacyDlpV2StorageConfig/timespanConfig": timespan_config +"/dlp:v2/GooglePrivacyDlpV2SummaryResult": google_privacy_dlp_v2_summary_result +"/dlp:v2/GooglePrivacyDlpV2SummaryResult/code": code +"/dlp:v2/GooglePrivacyDlpV2SummaryResult/count": count +"/dlp:v2/GooglePrivacyDlpV2SummaryResult/details": details +"/dlp:v2/GooglePrivacyDlpV2SurrogateType": google_privacy_dlp_v2_surrogate_type +"/dlp:v2/GooglePrivacyDlpV2Table": google_privacy_dlp_v2_table +"/dlp:v2/GooglePrivacyDlpV2Table/headers": headers +"/dlp:v2/GooglePrivacyDlpV2Table/headers/header": header +"/dlp:v2/GooglePrivacyDlpV2Table/rows": rows +"/dlp:v2/GooglePrivacyDlpV2Table/rows/row": row +"/dlp:v2/GooglePrivacyDlpV2TableLocation": google_privacy_dlp_v2_table_location +"/dlp:v2/GooglePrivacyDlpV2TableLocation/rowIndex": row_index +"/dlp:v2/GooglePrivacyDlpV2TaggedField": google_privacy_dlp_v2_tagged_field +"/dlp:v2/GooglePrivacyDlpV2TaggedField/customTag": custom_tag +"/dlp:v2/GooglePrivacyDlpV2TaggedField/field": field +"/dlp:v2/GooglePrivacyDlpV2TaggedField/inferred": inferred +"/dlp:v2/GooglePrivacyDlpV2TaggedField/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2TimePartConfig": google_privacy_dlp_v2_time_part_config +"/dlp:v2/GooglePrivacyDlpV2TimePartConfig/partToExtract": part_to_extract +"/dlp:v2/GooglePrivacyDlpV2TimeZone": google_privacy_dlp_v2_time_zone +"/dlp:v2/GooglePrivacyDlpV2TimeZone/offsetMinutes": offset_minutes +"/dlp:v2/GooglePrivacyDlpV2TimespanConfig": google_privacy_dlp_v2_timespan_config +"/dlp:v2/GooglePrivacyDlpV2TimespanConfig/enableAutoPopulationOfTimespanConfig": enable_auto_population_of_timespan_config +"/dlp:v2/GooglePrivacyDlpV2TimespanConfig/endTime": end_time +"/dlp:v2/GooglePrivacyDlpV2TimespanConfig/startTime": start_time +"/dlp:v2/GooglePrivacyDlpV2TimespanConfig/timestampField": timestamp_field +"/dlp:v2/GooglePrivacyDlpV2TransformationOverview": google_privacy_dlp_v2_transformation_overview +"/dlp:v2/GooglePrivacyDlpV2TransformationOverview/transformationSummaries": transformation_summaries +"/dlp:v2/GooglePrivacyDlpV2TransformationOverview/transformationSummaries/transformation_summary": transformation_summary +"/dlp:v2/GooglePrivacyDlpV2TransformationOverview/transformedBytes": transformed_bytes +"/dlp:v2/GooglePrivacyDlpV2TransformationSummary": google_privacy_dlp_v2_transformation_summary +"/dlp:v2/GooglePrivacyDlpV2TransformationSummary/field": field +"/dlp:v2/GooglePrivacyDlpV2TransformationSummary/fieldTransformations": field_transformations +"/dlp:v2/GooglePrivacyDlpV2TransformationSummary/fieldTransformations/field_transformation": field_transformation +"/dlp:v2/GooglePrivacyDlpV2TransformationSummary/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2TransformationSummary/recordSuppress": record_suppress +"/dlp:v2/GooglePrivacyDlpV2TransformationSummary/results": results +"/dlp:v2/GooglePrivacyDlpV2TransformationSummary/results/result": result +"/dlp:v2/GooglePrivacyDlpV2TransformationSummary/transformation": transformation +"/dlp:v2/GooglePrivacyDlpV2TransformationSummary/transformedBytes": transformed_bytes +"/dlp:v2/GooglePrivacyDlpV2TransientCryptoKey": google_privacy_dlp_v2_transient_crypto_key +"/dlp:v2/GooglePrivacyDlpV2TransientCryptoKey/name": name +"/dlp:v2/GooglePrivacyDlpV2Trigger": google_privacy_dlp_v2_trigger +"/dlp:v2/GooglePrivacyDlpV2Trigger/schedule": schedule +"/dlp:v2/GooglePrivacyDlpV2UnwrappedCryptoKey": google_privacy_dlp_v2_unwrapped_crypto_key +"/dlp:v2/GooglePrivacyDlpV2UnwrappedCryptoKey/key": key +"/dlp:v2/GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest": google_privacy_dlp_v2_update_deidentify_template_request +"/dlp:v2/GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest/deidentifyTemplate": deidentify_template +"/dlp:v2/GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest/updateMask": update_mask +"/dlp:v2/GooglePrivacyDlpV2UpdateInspectTemplateRequest": google_privacy_dlp_v2_update_inspect_template_request +"/dlp:v2/GooglePrivacyDlpV2UpdateInspectTemplateRequest/inspectTemplate": inspect_template +"/dlp:v2/GooglePrivacyDlpV2UpdateInspectTemplateRequest/updateMask": update_mask +"/dlp:v2/GooglePrivacyDlpV2UpdateJobTriggerRequest": google_privacy_dlp_v2_update_job_trigger_request +"/dlp:v2/GooglePrivacyDlpV2UpdateJobTriggerRequest/jobTrigger": job_trigger +"/dlp:v2/GooglePrivacyDlpV2UpdateJobTriggerRequest/updateMask": update_mask +"/dlp:v2/GooglePrivacyDlpV2Value": google_privacy_dlp_v2_value +"/dlp:v2/GooglePrivacyDlpV2Value/booleanValue": boolean_value +"/dlp:v2/GooglePrivacyDlpV2Value/dateValue": date_value +"/dlp:v2/GooglePrivacyDlpV2Value/dayOfWeekValue": day_of_week_value +"/dlp:v2/GooglePrivacyDlpV2Value/floatValue": float_value +"/dlp:v2/GooglePrivacyDlpV2Value/integerValue": integer_value +"/dlp:v2/GooglePrivacyDlpV2Value/stringValue": string_value +"/dlp:v2/GooglePrivacyDlpV2Value/timeValue": time_value +"/dlp:v2/GooglePrivacyDlpV2Value/timestampValue": timestamp_value +"/dlp:v2/GooglePrivacyDlpV2ValueFrequency": google_privacy_dlp_v2_value_frequency +"/dlp:v2/GooglePrivacyDlpV2ValueFrequency/count": count +"/dlp:v2/GooglePrivacyDlpV2ValueFrequency/value": value +"/dlp:v2/GooglePrivacyDlpV2WordList": google_privacy_dlp_v2_word_list +"/dlp:v2/GooglePrivacyDlpV2WordList/words": words +"/dlp:v2/GooglePrivacyDlpV2WordList/words/word": word +"/dlp:v2/GooglePrivacyDlpV2beta1AuxiliaryTable": google_privacy_dlp_v2beta1_auxiliary_table +"/dlp:v2/GooglePrivacyDlpV2beta1AuxiliaryTable/quasiIds": quasi_ids +"/dlp:v2/GooglePrivacyDlpV2beta1AuxiliaryTable/quasiIds/quasi_id": quasi_id +"/dlp:v2/GooglePrivacyDlpV2beta1AuxiliaryTable/relativeFrequency": relative_frequency +"/dlp:v2/GooglePrivacyDlpV2beta1AuxiliaryTable/table": table +"/dlp:v2/GooglePrivacyDlpV2beta1BigQueryOptions": google_privacy_dlp_v2beta1_big_query_options +"/dlp:v2/GooglePrivacyDlpV2beta1BigQueryOptions/identifyingFields": identifying_fields +"/dlp:v2/GooglePrivacyDlpV2beta1BigQueryOptions/identifyingFields/identifying_field": identifying_field +"/dlp:v2/GooglePrivacyDlpV2beta1BigQueryOptions/tableReference": table_reference +"/dlp:v2/GooglePrivacyDlpV2beta1BigQueryTable": google_privacy_dlp_v2beta1_big_query_table +"/dlp:v2/GooglePrivacyDlpV2beta1BigQueryTable/datasetId": dataset_id +"/dlp:v2/GooglePrivacyDlpV2beta1BigQueryTable/projectId": project_id +"/dlp:v2/GooglePrivacyDlpV2beta1BigQueryTable/tableId": table_id +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsConfig": google_privacy_dlp_v2beta1_categorical_stats_config +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsConfig/field": field +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket": google_privacy_dlp_v2beta1_categorical_stats_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket/bucketSize": bucket_size +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket/bucketValues": bucket_values +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket/bucketValues/bucket_value": bucket_value +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket/valueFrequencyLowerBound": value_frequency_lower_bound +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket/valueFrequencyUpperBound": value_frequency_upper_bound +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsResult": google_privacy_dlp_v2beta1_categorical_stats_result +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsResult/valueFrequencyHistogramBuckets": value_frequency_histogram_buckets +"/dlp:v2/GooglePrivacyDlpV2beta1CategoricalStatsResult/valueFrequencyHistogramBuckets/value_frequency_histogram_bucket": value_frequency_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2beta1CloudStorageOptions": google_privacy_dlp_v2beta1_cloud_storage_options +"/dlp:v2/GooglePrivacyDlpV2beta1CloudStorageOptions/fileSet": file_set +"/dlp:v2/GooglePrivacyDlpV2beta1CloudStoragePath": google_privacy_dlp_v2beta1_cloud_storage_path +"/dlp:v2/GooglePrivacyDlpV2beta1CloudStoragePath/path": path +"/dlp:v2/GooglePrivacyDlpV2beta1CustomInfoType": google_privacy_dlp_v2beta1_custom_info_type +"/dlp:v2/GooglePrivacyDlpV2beta1CustomInfoType/dictionary": dictionary +"/dlp:v2/GooglePrivacyDlpV2beta1CustomInfoType/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2beta1CustomInfoType/surrogateType": surrogate_type +"/dlp:v2/GooglePrivacyDlpV2beta1DatastoreOptions": google_privacy_dlp_v2beta1_datastore_options +"/dlp:v2/GooglePrivacyDlpV2beta1DatastoreOptions/kind": kind +"/dlp:v2/GooglePrivacyDlpV2beta1DatastoreOptions/partitionId": partition_id +"/dlp:v2/GooglePrivacyDlpV2beta1DatastoreOptions/projection": projection +"/dlp:v2/GooglePrivacyDlpV2beta1DatastoreOptions/projection/projection": projection +"/dlp:v2/GooglePrivacyDlpV2beta1Dictionary": google_privacy_dlp_v2beta1_dictionary +"/dlp:v2/GooglePrivacyDlpV2beta1Dictionary/wordList": word_list +"/dlp:v2/GooglePrivacyDlpV2beta1EntityId": google_privacy_dlp_v2beta1_entity_id +"/dlp:v2/GooglePrivacyDlpV2beta1EntityId/field": field +"/dlp:v2/GooglePrivacyDlpV2beta1FieldId": google_privacy_dlp_v2beta1_field_id +"/dlp:v2/GooglePrivacyDlpV2beta1FieldId/columnName": column_name +"/dlp:v2/GooglePrivacyDlpV2beta1FileSet": google_privacy_dlp_v2beta1_file_set +"/dlp:v2/GooglePrivacyDlpV2beta1FileSet/url": url +"/dlp:v2/GooglePrivacyDlpV2beta1InfoType": google_privacy_dlp_v2beta1_info_type +"/dlp:v2/GooglePrivacyDlpV2beta1InfoType/name": name +"/dlp:v2/GooglePrivacyDlpV2beta1InfoTypeLimit": google_privacy_dlp_v2beta1_info_type_limit +"/dlp:v2/GooglePrivacyDlpV2beta1InfoTypeLimit/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2beta1InfoTypeLimit/maxFindings": max_findings +"/dlp:v2/GooglePrivacyDlpV2beta1InfoTypeStatistics": google_privacy_dlp_v2beta1_info_type_statistics +"/dlp:v2/GooglePrivacyDlpV2beta1InfoTypeStatistics/count": count +"/dlp:v2/GooglePrivacyDlpV2beta1InfoTypeStatistics/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig": google_privacy_dlp_v2beta1_inspect_config +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig/customInfoTypes": custom_info_types +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig/customInfoTypes/custom_info_type": custom_info_type +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig/excludeTypes": exclude_types +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig/includeQuote": include_quote +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig/infoTypeLimits": info_type_limits +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig/infoTypeLimits/info_type_limit": info_type_limit +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig/infoTypes": info_types +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig/infoTypes/info_type": info_type +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig/maxFindings": max_findings +"/dlp:v2/GooglePrivacyDlpV2beta1InspectConfig/minLikelihood": min_likelihood +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationMetadata": google_privacy_dlp_v2beta1_inspect_operation_metadata +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationMetadata/createTime": create_time +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationMetadata/infoTypeStats": info_type_stats +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationMetadata/infoTypeStats/info_type_stat": info_type_stat +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationMetadata/processedBytes": processed_bytes +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationMetadata/requestInspectConfig": request_inspect_config +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationMetadata/requestOutputConfig": request_output_config +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationMetadata/requestStorageConfig": request_storage_config +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationMetadata/totalEstimatedBytes": total_estimated_bytes +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationResult": google_privacy_dlp_v2beta1_inspect_operation_result +"/dlp:v2/GooglePrivacyDlpV2beta1InspectOperationResult/name": name +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityConfig": google_privacy_dlp_v2beta1_k_anonymity_config +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityConfig/entityId": entity_id +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityConfig/quasiIds": quasi_ids +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityConfig/quasiIds/quasi_id": quasi_id +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass": google_privacy_dlp_v2beta1_k_anonymity_equivalence_class +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass/equivalenceClassSize": equivalence_class_size +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass/quasiIdsValues": quasi_ids_values +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass/quasiIdsValues/quasi_ids_value": quasi_ids_value +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityHistogramBucket": google_privacy_dlp_v2beta1_k_anonymity_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityHistogramBucket/bucketSize": bucket_size +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityHistogramBucket/bucketValues": bucket_values +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityHistogramBucket/bucketValues/bucket_value": bucket_value +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityHistogramBucket/equivalenceClassSizeLowerBound": equivalence_class_size_lower_bound +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityHistogramBucket/equivalenceClassSizeUpperBound": equivalence_class_size_upper_bound +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityResult": google_privacy_dlp_v2beta1_k_anonymity_result +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityResult/equivalenceClassHistogramBuckets": equivalence_class_histogram_buckets +"/dlp:v2/GooglePrivacyDlpV2beta1KAnonymityResult/equivalenceClassHistogramBuckets/equivalence_class_histogram_bucket": equivalence_class_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationConfig": google_privacy_dlp_v2beta1_k_map_estimation_config +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationConfig/auxiliaryTables": auxiliary_tables +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationConfig/auxiliaryTables/auxiliary_table": auxiliary_table +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationConfig/quasiIds": quasi_ids +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationConfig/quasiIds/quasi_id": quasi_id +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationConfig/regionCode": region_code +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket": google_privacy_dlp_v2beta1_k_map_estimation_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket/bucketSize": bucket_size +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket/bucketValues": bucket_values +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket/bucketValues/bucket_value": bucket_value +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket/maxAnonymity": max_anonymity +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket/minAnonymity": min_anonymity +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues": google_privacy_dlp_v2beta1_k_map_estimation_quasi_id_values +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues/estimatedAnonymity": estimated_anonymity +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues/quasiIdsValues": quasi_ids_values +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues/quasiIdsValues/quasi_ids_value": quasi_ids_value +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationResult": google_privacy_dlp_v2beta1_k_map_estimation_result +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationResult/kMapEstimationHistogram": k_map_estimation_histogram +"/dlp:v2/GooglePrivacyDlpV2beta1KMapEstimationResult/kMapEstimationHistogram/k_map_estimation_histogram": k_map_estimation_histogram +"/dlp:v2/GooglePrivacyDlpV2beta1KindExpression": google_privacy_dlp_v2beta1_kind_expression +"/dlp:v2/GooglePrivacyDlpV2beta1KindExpression/name": name +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityConfig": google_privacy_dlp_v2beta1_l_diversity_config +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityConfig/quasiIds": quasi_ids +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityConfig/quasiIds/quasi_id": quasi_id +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityConfig/sensitiveAttribute": sensitive_attribute +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityEquivalenceClass": google_privacy_dlp_v2beta1_l_diversity_equivalence_class +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityEquivalenceClass/equivalenceClassSize": equivalence_class_size +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityEquivalenceClass/numDistinctSensitiveValues": num_distinct_sensitive_values +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityEquivalenceClass/quasiIdsValues": quasi_ids_values +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityEquivalenceClass/quasiIdsValues/quasi_ids_value": quasi_ids_value +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityEquivalenceClass/topSensitiveValues": top_sensitive_values +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityEquivalenceClass/topSensitiveValues/top_sensitive_value": top_sensitive_value +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityHistogramBucket": google_privacy_dlp_v2beta1_l_diversity_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityHistogramBucket/bucketSize": bucket_size +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityHistogramBucket/bucketValues": bucket_values +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityHistogramBucket/bucketValues/bucket_value": bucket_value +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityHistogramBucket/sensitiveValueFrequencyLowerBound": sensitive_value_frequency_lower_bound +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityHistogramBucket/sensitiveValueFrequencyUpperBound": sensitive_value_frequency_upper_bound +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityResult": google_privacy_dlp_v2beta1_l_diversity_result +"/dlp:v2/GooglePrivacyDlpV2beta1LDiversityResult/sensitiveValueFrequencyHistogramBuckets": sensitive_value_frequency_histogram_buckets +? "/dlp:v2/GooglePrivacyDlpV2beta1LDiversityResult/sensitiveValueFrequencyHistogramBuckets/sensitive_value_frequency_histogram_bucket" +: sensitive_value_frequency_histogram_bucket +"/dlp:v2/GooglePrivacyDlpV2beta1NumericalStatsConfig": google_privacy_dlp_v2beta1_numerical_stats_config +"/dlp:v2/GooglePrivacyDlpV2beta1NumericalStatsConfig/field": field +"/dlp:v2/GooglePrivacyDlpV2beta1NumericalStatsResult": google_privacy_dlp_v2beta1_numerical_stats_result +"/dlp:v2/GooglePrivacyDlpV2beta1NumericalStatsResult/maxValue": max_value +"/dlp:v2/GooglePrivacyDlpV2beta1NumericalStatsResult/minValue": min_value +"/dlp:v2/GooglePrivacyDlpV2beta1NumericalStatsResult/quantileValues": quantile_values +"/dlp:v2/GooglePrivacyDlpV2beta1NumericalStatsResult/quantileValues/quantile_value": quantile_value +"/dlp:v2/GooglePrivacyDlpV2beta1OutputStorageConfig": google_privacy_dlp_v2beta1_output_storage_config +"/dlp:v2/GooglePrivacyDlpV2beta1OutputStorageConfig/storagePath": storage_path +"/dlp:v2/GooglePrivacyDlpV2beta1OutputStorageConfig/table": table +"/dlp:v2/GooglePrivacyDlpV2beta1PartitionId": google_privacy_dlp_v2beta1_partition_id +"/dlp:v2/GooglePrivacyDlpV2beta1PartitionId/namespaceId": namespace_id +"/dlp:v2/GooglePrivacyDlpV2beta1PartitionId/projectId": project_id +"/dlp:v2/GooglePrivacyDlpV2beta1PrivacyMetric": google_privacy_dlp_v2beta1_privacy_metric +"/dlp:v2/GooglePrivacyDlpV2beta1PrivacyMetric/categoricalStatsConfig": categorical_stats_config +"/dlp:v2/GooglePrivacyDlpV2beta1PrivacyMetric/kAnonymityConfig": k_anonymity_config +"/dlp:v2/GooglePrivacyDlpV2beta1PrivacyMetric/kMapEstimationConfig": k_map_estimation_config +"/dlp:v2/GooglePrivacyDlpV2beta1PrivacyMetric/lDiversityConfig": l_diversity_config +"/dlp:v2/GooglePrivacyDlpV2beta1PrivacyMetric/numericalStatsConfig": numerical_stats_config +"/dlp:v2/GooglePrivacyDlpV2beta1Projection": google_privacy_dlp_v2beta1_projection +"/dlp:v2/GooglePrivacyDlpV2beta1Projection/property": property +"/dlp:v2/GooglePrivacyDlpV2beta1PropertyReference": google_privacy_dlp_v2beta1_property_reference +"/dlp:v2/GooglePrivacyDlpV2beta1PropertyReference/name": name +"/dlp:v2/GooglePrivacyDlpV2beta1QuasiIdField": google_privacy_dlp_v2beta1_quasi_id_field +"/dlp:v2/GooglePrivacyDlpV2beta1QuasiIdField/customTag": custom_tag +"/dlp:v2/GooglePrivacyDlpV2beta1QuasiIdField/field": field +"/dlp:v2/GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata": google_privacy_dlp_v2beta1_risk_analysis_operation_metadata +"/dlp:v2/GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata/createTime": create_time +"/dlp:v2/GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata/requestedPrivacyMetric": requested_privacy_metric +"/dlp:v2/GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata/requestedSourceTable": requested_source_table +"/dlp:v2/GooglePrivacyDlpV2beta1RiskAnalysisOperationResult": google_privacy_dlp_v2beta1_risk_analysis_operation_result +"/dlp:v2/GooglePrivacyDlpV2beta1RiskAnalysisOperationResult/categoricalStatsResult": categorical_stats_result +"/dlp:v2/GooglePrivacyDlpV2beta1RiskAnalysisOperationResult/kAnonymityResult": k_anonymity_result +"/dlp:v2/GooglePrivacyDlpV2beta1RiskAnalysisOperationResult/kMapEstimationResult": k_map_estimation_result +"/dlp:v2/GooglePrivacyDlpV2beta1RiskAnalysisOperationResult/lDiversityResult": l_diversity_result +"/dlp:v2/GooglePrivacyDlpV2beta1RiskAnalysisOperationResult/numericalStatsResult": numerical_stats_result +"/dlp:v2/GooglePrivacyDlpV2beta1StorageConfig": google_privacy_dlp_v2beta1_storage_config +"/dlp:v2/GooglePrivacyDlpV2beta1StorageConfig/bigQueryOptions": big_query_options +"/dlp:v2/GooglePrivacyDlpV2beta1StorageConfig/cloudStorageOptions": cloud_storage_options +"/dlp:v2/GooglePrivacyDlpV2beta1StorageConfig/datastoreOptions": datastore_options +"/dlp:v2/GooglePrivacyDlpV2beta1SurrogateType": google_privacy_dlp_v2beta1_surrogate_type +"/dlp:v2/GooglePrivacyDlpV2beta1TaggedField": google_privacy_dlp_v2beta1_tagged_field +"/dlp:v2/GooglePrivacyDlpV2beta1TaggedField/customTag": custom_tag +"/dlp:v2/GooglePrivacyDlpV2beta1TaggedField/field": field +"/dlp:v2/GooglePrivacyDlpV2beta1TaggedField/inferred": inferred +"/dlp:v2/GooglePrivacyDlpV2beta1TaggedField/infoType": info_type +"/dlp:v2/GooglePrivacyDlpV2beta1Value": google_privacy_dlp_v2beta1_value +"/dlp:v2/GooglePrivacyDlpV2beta1Value/booleanValue": boolean_value +"/dlp:v2/GooglePrivacyDlpV2beta1Value/dateValue": date_value +"/dlp:v2/GooglePrivacyDlpV2beta1Value/floatValue": float_value +"/dlp:v2/GooglePrivacyDlpV2beta1Value/integerValue": integer_value +"/dlp:v2/GooglePrivacyDlpV2beta1Value/stringValue": string_value +"/dlp:v2/GooglePrivacyDlpV2beta1Value/timeValue": time_value +"/dlp:v2/GooglePrivacyDlpV2beta1Value/timestampValue": timestamp_value +"/dlp:v2/GooglePrivacyDlpV2beta1ValueFrequency": google_privacy_dlp_v2beta1_value_frequency +"/dlp:v2/GooglePrivacyDlpV2beta1ValueFrequency/count": count +"/dlp:v2/GooglePrivacyDlpV2beta1ValueFrequency/value": value +"/dlp:v2/GooglePrivacyDlpV2beta1WordList": google_privacy_dlp_v2beta1_word_list +"/dlp:v2/GooglePrivacyDlpV2beta1WordList/words": words +"/dlp:v2/GooglePrivacyDlpV2beta1WordList/words/word": word +"/dlp:v2/GoogleProtobufEmpty": google_protobuf_empty +"/dlp:v2/GoogleRpcStatus": google_rpc_status +"/dlp:v2/GoogleRpcStatus/code": code +"/dlp:v2/GoogleRpcStatus/details": details +"/dlp:v2/GoogleRpcStatus/details/detail": detail +"/dlp:v2/GoogleRpcStatus/details/detail/detail": detail +"/dlp:v2/GoogleRpcStatus/message": message +"/dlp:v2/GoogleTypeDate": google_type_date +"/dlp:v2/GoogleTypeDate/day": day +"/dlp:v2/GoogleTypeDate/month": month +"/dlp:v2/GoogleTypeDate/year": year +"/dlp:v2/GoogleTypeTimeOfDay": google_type_time_of_day +"/dlp:v2/GoogleTypeTimeOfDay/hours": hours +"/dlp:v2/GoogleTypeTimeOfDay/minutes": minutes +"/dlp:v2/GoogleTypeTimeOfDay/nanos": nanos +"/dlp:v2/GoogleTypeTimeOfDay/seconds": seconds +"/dlp:v2/dlp.infoTypes.list": list_info_types +"/dlp:v2/dlp.infoTypes.list/filter": filter +"/dlp:v2/dlp.infoTypes.list/languageCode": language_code +"/dlp:v2/dlp.organizations.deidentifyTemplates.create": create_organization_deidentify_template +"/dlp:v2/dlp.organizations.deidentifyTemplates.create/parent": parent +"/dlp:v2/dlp.organizations.deidentifyTemplates.delete": delete_organization_deidentify_template +"/dlp:v2/dlp.organizations.deidentifyTemplates.delete/name": name +"/dlp:v2/dlp.organizations.deidentifyTemplates.get": get_organization_deidentify_template +"/dlp:v2/dlp.organizations.deidentifyTemplates.get/name": name +"/dlp:v2/dlp.organizations.deidentifyTemplates.list": list_organization_deidentify_templates +"/dlp:v2/dlp.organizations.deidentifyTemplates.list/pageSize": page_size +"/dlp:v2/dlp.organizations.deidentifyTemplates.list/pageToken": page_token +"/dlp:v2/dlp.organizations.deidentifyTemplates.list/parent": parent +"/dlp:v2/dlp.organizations.deidentifyTemplates.patch": patch_organization_deidentify_template +"/dlp:v2/dlp.organizations.deidentifyTemplates.patch/name": name +"/dlp:v2/dlp.organizations.inspectTemplates.create": create_organization_inspect_template +"/dlp:v2/dlp.organizations.inspectTemplates.create/parent": parent +"/dlp:v2/dlp.organizations.inspectTemplates.delete": delete_organization_inspect_template +"/dlp:v2/dlp.organizations.inspectTemplates.delete/name": name +"/dlp:v2/dlp.organizations.inspectTemplates.get": get_organization_inspect_template +"/dlp:v2/dlp.organizations.inspectTemplates.get/name": name +"/dlp:v2/dlp.organizations.inspectTemplates.list": list_organization_inspect_templates +"/dlp:v2/dlp.organizations.inspectTemplates.list/pageSize": page_size +"/dlp:v2/dlp.organizations.inspectTemplates.list/pageToken": page_token +"/dlp:v2/dlp.organizations.inspectTemplates.list/parent": parent +"/dlp:v2/dlp.organizations.inspectTemplates.patch": patch_organization_inspect_template +"/dlp:v2/dlp.organizations.inspectTemplates.patch/name": name +"/dlp:v2/dlp.projects.content.deidentify": deidentify_project_content +"/dlp:v2/dlp.projects.content.deidentify/parent": parent +"/dlp:v2/dlp.projects.content.inspect": inspect_project_content +"/dlp:v2/dlp.projects.content.inspect/parent": parent +"/dlp:v2/dlp.projects.content.reidentify": reidentify_project_content +"/dlp:v2/dlp.projects.content.reidentify/parent": parent +"/dlp:v2/dlp.projects.deidentifyTemplates.create": create_project_deidentify_template +"/dlp:v2/dlp.projects.deidentifyTemplates.create/parent": parent +"/dlp:v2/dlp.projects.deidentifyTemplates.delete": delete_project_deidentify_template +"/dlp:v2/dlp.projects.deidentifyTemplates.delete/name": name +"/dlp:v2/dlp.projects.deidentifyTemplates.get": get_project_deidentify_template +"/dlp:v2/dlp.projects.deidentifyTemplates.get/name": name +"/dlp:v2/dlp.projects.deidentifyTemplates.list": list_project_deidentify_templates +"/dlp:v2/dlp.projects.deidentifyTemplates.list/pageSize": page_size +"/dlp:v2/dlp.projects.deidentifyTemplates.list/pageToken": page_token +"/dlp:v2/dlp.projects.deidentifyTemplates.list/parent": parent +"/dlp:v2/dlp.projects.deidentifyTemplates.patch": patch_project_deidentify_template +"/dlp:v2/dlp.projects.deidentifyTemplates.patch/name": name +"/dlp:v2/dlp.projects.dlpJobs.cancel": cancel_project_dlp_job +"/dlp:v2/dlp.projects.dlpJobs.cancel/name": name +"/dlp:v2/dlp.projects.dlpJobs.create": create_project_dlp_job +"/dlp:v2/dlp.projects.dlpJobs.create/parent": parent +"/dlp:v2/dlp.projects.dlpJobs.delete": delete_project_dlp_job +"/dlp:v2/dlp.projects.dlpJobs.delete/name": name +"/dlp:v2/dlp.projects.dlpJobs.get": get_project_dlp_job +"/dlp:v2/dlp.projects.dlpJobs.get/name": name +"/dlp:v2/dlp.projects.dlpJobs.list": list_project_dlp_jobs +"/dlp:v2/dlp.projects.dlpJobs.list/filter": filter +"/dlp:v2/dlp.projects.dlpJobs.list/pageSize": page_size +"/dlp:v2/dlp.projects.dlpJobs.list/pageToken": page_token +"/dlp:v2/dlp.projects.dlpJobs.list/parent": parent +"/dlp:v2/dlp.projects.dlpJobs.list/type": type +"/dlp:v2/dlp.projects.image.redact": redact_project_image +"/dlp:v2/dlp.projects.image.redact/parent": parent +"/dlp:v2/dlp.projects.inspectTemplates.create": create_project_inspect_template +"/dlp:v2/dlp.projects.inspectTemplates.create/parent": parent +"/dlp:v2/dlp.projects.inspectTemplates.delete": delete_project_inspect_template +"/dlp:v2/dlp.projects.inspectTemplates.delete/name": name +"/dlp:v2/dlp.projects.inspectTemplates.get": get_project_inspect_template +"/dlp:v2/dlp.projects.inspectTemplates.get/name": name +"/dlp:v2/dlp.projects.inspectTemplates.list": list_project_inspect_templates +"/dlp:v2/dlp.projects.inspectTemplates.list/pageSize": page_size +"/dlp:v2/dlp.projects.inspectTemplates.list/pageToken": page_token +"/dlp:v2/dlp.projects.inspectTemplates.list/parent": parent +"/dlp:v2/dlp.projects.inspectTemplates.patch": patch_project_inspect_template +"/dlp:v2/dlp.projects.inspectTemplates.patch/name": name +"/dlp:v2/dlp.projects.jobTriggers.create": create_project_job_trigger +"/dlp:v2/dlp.projects.jobTriggers.create/parent": parent +"/dlp:v2/dlp.projects.jobTriggers.delete": delete_project_job_trigger +"/dlp:v2/dlp.projects.jobTriggers.delete/name": name +"/dlp:v2/dlp.projects.jobTriggers.get": get_project_job_trigger +"/dlp:v2/dlp.projects.jobTriggers.get/name": name +"/dlp:v2/dlp.projects.jobTriggers.list": list_project_job_triggers +"/dlp:v2/dlp.projects.jobTriggers.list/orderBy": order_by +"/dlp:v2/dlp.projects.jobTriggers.list/pageSize": page_size +"/dlp:v2/dlp.projects.jobTriggers.list/pageToken": page_token +"/dlp:v2/dlp.projects.jobTriggers.list/parent": parent +"/dlp:v2/dlp.projects.jobTriggers.patch": patch_project_job_trigger +"/dlp:v2/dlp.projects.jobTriggers.patch/name": name +"/dlp:v2/fields": fields +"/dlp:v2/key": key +"/dlp:v2/quotaUser": quota_user "/dlp:v2beta1/GoogleLongrunningCancelOperationRequest": google_longrunning_cancel_operation_request "/dlp:v2beta1/GoogleLongrunningListOperationsResponse": google_longrunning_list_operations_response "/dlp:v2beta1/GoogleLongrunningListOperationsResponse/nextPageToken": next_page_token @@ -46940,18 +47803,48 @@ "/dns:v1/Change/deletions": deletions "/dns:v1/Change/deletions/deletion": deletion "/dns:v1/Change/id": id +"/dns:v1/Change/isServing": is_serving "/dns:v1/Change/kind": kind "/dns:v1/Change/startTime": start_time "/dns:v1/Change/status": status "/dns:v1/ChangesListResponse": list_changes_response "/dns:v1/ChangesListResponse/changes": changes "/dns:v1/ChangesListResponse/changes/change": change +"/dns:v1/ChangesListResponse/header": header "/dns:v1/ChangesListResponse/kind": kind "/dns:v1/ChangesListResponse/nextPageToken": next_page_token +"/dns:v1/DnsKey": dns_key +"/dns:v1/DnsKey/algorithm": algorithm +"/dns:v1/DnsKey/creationTime": creation_time +"/dns:v1/DnsKey/description": description +"/dns:v1/DnsKey/digests": digests +"/dns:v1/DnsKey/digests/digest": digest +"/dns:v1/DnsKey/id": id +"/dns:v1/DnsKey/isActive": is_active +"/dns:v1/DnsKey/keyLength": key_length +"/dns:v1/DnsKey/keyTag": key_tag +"/dns:v1/DnsKey/kind": kind +"/dns:v1/DnsKey/publicKey": public_key +"/dns:v1/DnsKey/type": type +"/dns:v1/DnsKeyDigest": dns_key_digest +"/dns:v1/DnsKeyDigest/digest": digest +"/dns:v1/DnsKeyDigest/type": type +"/dns:v1/DnsKeySpec": dns_key_spec +"/dns:v1/DnsKeySpec/algorithm": algorithm +"/dns:v1/DnsKeySpec/keyLength": key_length +"/dns:v1/DnsKeySpec/keyType": key_type +"/dns:v1/DnsKeySpec/kind": kind +"/dns:v1/DnsKeysListResponse": dns_keys_list_response +"/dns:v1/DnsKeysListResponse/dnsKeys": dns_keys +"/dns:v1/DnsKeysListResponse/dnsKeys/dns_key": dns_key +"/dns:v1/DnsKeysListResponse/header": header +"/dns:v1/DnsKeysListResponse/kind": kind +"/dns:v1/DnsKeysListResponse/nextPageToken": next_page_token "/dns:v1/ManagedZone": managed_zone "/dns:v1/ManagedZone/creationTime": creation_time "/dns:v1/ManagedZone/description": description "/dns:v1/ManagedZone/dnsName": dns_name +"/dns:v1/ManagedZone/dnssecConfig": dnssec_config "/dns:v1/ManagedZone/id": id "/dns:v1/ManagedZone/kind": kind "/dns:v1/ManagedZone/labels": labels @@ -46960,17 +47853,46 @@ "/dns:v1/ManagedZone/nameServerSet": name_server_set "/dns:v1/ManagedZone/nameServers": name_servers "/dns:v1/ManagedZone/nameServers/name_server": name_server +"/dns:v1/ManagedZoneDnsSecConfig": managed_zone_dns_sec_config +"/dns:v1/ManagedZoneDnsSecConfig/defaultKeySpecs": default_key_specs +"/dns:v1/ManagedZoneDnsSecConfig/defaultKeySpecs/default_key_spec": default_key_spec +"/dns:v1/ManagedZoneDnsSecConfig/kind": kind +"/dns:v1/ManagedZoneDnsSecConfig/nonExistence": non_existence +"/dns:v1/ManagedZoneDnsSecConfig/state": state +"/dns:v1/ManagedZoneOperationsListResponse": managed_zone_operations_list_response +"/dns:v1/ManagedZoneOperationsListResponse/header": header +"/dns:v1/ManagedZoneOperationsListResponse/kind": kind +"/dns:v1/ManagedZoneOperationsListResponse/nextPageToken": next_page_token +"/dns:v1/ManagedZoneOperationsListResponse/operations": operations +"/dns:v1/ManagedZoneOperationsListResponse/operations/operation": operation "/dns:v1/ManagedZonesListResponse": list_managed_zones_response +"/dns:v1/ManagedZonesListResponse/header": header "/dns:v1/ManagedZonesListResponse/kind": kind "/dns:v1/ManagedZonesListResponse/managedZones": managed_zones "/dns:v1/ManagedZonesListResponse/managedZones/managed_zone": managed_zone "/dns:v1/ManagedZonesListResponse/nextPageToken": next_page_token +"/dns:v1/Operation": operation +"/dns:v1/Operation/dnsKeyContext": dns_key_context +"/dns:v1/Operation/id": id +"/dns:v1/Operation/kind": kind +"/dns:v1/Operation/startTime": start_time +"/dns:v1/Operation/status": status +"/dns:v1/Operation/type": type +"/dns:v1/Operation/user": user +"/dns:v1/Operation/zoneContext": zone_context +"/dns:v1/OperationDnsKeyContext": operation_dns_key_context +"/dns:v1/OperationDnsKeyContext/newValue": new_value +"/dns:v1/OperationDnsKeyContext/oldValue": old_value +"/dns:v1/OperationManagedZoneContext": operation_managed_zone_context +"/dns:v1/OperationManagedZoneContext/newValue": new_value +"/dns:v1/OperationManagedZoneContext/oldValue": old_value "/dns:v1/Project": project "/dns:v1/Project/id": id "/dns:v1/Project/kind": kind "/dns:v1/Project/number": number "/dns:v1/Project/quota": quota "/dns:v1/Quota": quota +"/dns:v1/Quota/dnsKeysPerManagedZone": dns_keys_per_managed_zone "/dns:v1/Quota/kind": kind "/dns:v1/Quota/managedZones": managed_zones "/dns:v1/Quota/resourceRecordsPerRrset": resource_records_per_rrset @@ -46978,23 +47900,32 @@ "/dns:v1/Quota/rrsetDeletionsPerChange": rrset_deletions_per_change "/dns:v1/Quota/rrsetsPerManagedZone": rrsets_per_managed_zone "/dns:v1/Quota/totalRrdataSizePerChange": total_rrdata_size_per_change +"/dns:v1/Quota/whitelistedKeySpecs": whitelisted_key_specs +"/dns:v1/Quota/whitelistedKeySpecs/whitelisted_key_spec": whitelisted_key_spec "/dns:v1/ResourceRecordSet": resource_record_set "/dns:v1/ResourceRecordSet/kind": kind "/dns:v1/ResourceRecordSet/name": name "/dns:v1/ResourceRecordSet/rrdatas": rrdatas "/dns:v1/ResourceRecordSet/rrdatas/rrdata": rrdata +"/dns:v1/ResourceRecordSet/signatureRrdatas": signature_rrdatas +"/dns:v1/ResourceRecordSet/signatureRrdatas/signature_rrdata": signature_rrdata "/dns:v1/ResourceRecordSet/ttl": ttl "/dns:v1/ResourceRecordSet/type": type "/dns:v1/ResourceRecordSetsListResponse": list_resource_record_sets_response +"/dns:v1/ResourceRecordSetsListResponse/header": header "/dns:v1/ResourceRecordSetsListResponse/kind": kind "/dns:v1/ResourceRecordSetsListResponse/nextPageToken": next_page_token "/dns:v1/ResourceRecordSetsListResponse/rrsets": rrsets "/dns:v1/ResourceRecordSetsListResponse/rrsets/rrset": rrset +"/dns:v1/ResponseHeader": response_header +"/dns:v1/ResponseHeader/operationId": operation_id "/dns:v1/dns.changes.create": create_change +"/dns:v1/dns.changes.create/clientOperationId": client_operation_id "/dns:v1/dns.changes.create/managedZone": managed_zone "/dns:v1/dns.changes.create/project": project "/dns:v1/dns.changes.get": get_change "/dns:v1/dns.changes.get/changeId": change_id +"/dns:v1/dns.changes.get/clientOperationId": client_operation_id "/dns:v1/dns.changes.get/managedZone": managed_zone "/dns:v1/dns.changes.get/project": project "/dns:v1/dns.changes.list": list_changes @@ -47004,12 +47935,38 @@ "/dns:v1/dns.changes.list/project": project "/dns:v1/dns.changes.list/sortBy": sort_by "/dns:v1/dns.changes.list/sortOrder": sort_order +"/dns:v1/dns.dnsKeys.get": get_dns_key +"/dns:v1/dns.dnsKeys.get/clientOperationId": client_operation_id +"/dns:v1/dns.dnsKeys.get/digestType": digest_type +"/dns:v1/dns.dnsKeys.get/dnsKeyId": dns_key_id +"/dns:v1/dns.dnsKeys.get/managedZone": managed_zone +"/dns:v1/dns.dnsKeys.get/project": project +"/dns:v1/dns.dnsKeys.list": list_dns_keys +"/dns:v1/dns.dnsKeys.list/digestType": digest_type +"/dns:v1/dns.dnsKeys.list/managedZone": managed_zone +"/dns:v1/dns.dnsKeys.list/maxResults": max_results +"/dns:v1/dns.dnsKeys.list/pageToken": page_token +"/dns:v1/dns.dnsKeys.list/project": project +"/dns:v1/dns.managedZoneOperations.get": get_managed_zone_operation +"/dns:v1/dns.managedZoneOperations.get/clientOperationId": client_operation_id +"/dns:v1/dns.managedZoneOperations.get/managedZone": managed_zone +"/dns:v1/dns.managedZoneOperations.get/operation": operation +"/dns:v1/dns.managedZoneOperations.get/project": project +"/dns:v1/dns.managedZoneOperations.list": list_managed_zone_operations +"/dns:v1/dns.managedZoneOperations.list/managedZone": managed_zone +"/dns:v1/dns.managedZoneOperations.list/maxResults": max_results +"/dns:v1/dns.managedZoneOperations.list/pageToken": page_token +"/dns:v1/dns.managedZoneOperations.list/project": project +"/dns:v1/dns.managedZoneOperations.list/sortBy": sort_by "/dns:v1/dns.managedZones.create": create_managed_zone +"/dns:v1/dns.managedZones.create/clientOperationId": client_operation_id "/dns:v1/dns.managedZones.create/project": project "/dns:v1/dns.managedZones.delete": delete_managed_zone +"/dns:v1/dns.managedZones.delete/clientOperationId": client_operation_id "/dns:v1/dns.managedZones.delete/managedZone": managed_zone "/dns:v1/dns.managedZones.delete/project": project "/dns:v1/dns.managedZones.get": get_managed_zone +"/dns:v1/dns.managedZones.get/clientOperationId": client_operation_id "/dns:v1/dns.managedZones.get/managedZone": managed_zone "/dns:v1/dns.managedZones.get/project": project "/dns:v1/dns.managedZones.list": list_managed_zones @@ -47017,7 +47974,16 @@ "/dns:v1/dns.managedZones.list/maxResults": max_results "/dns:v1/dns.managedZones.list/pageToken": page_token "/dns:v1/dns.managedZones.list/project": project +"/dns:v1/dns.managedZones.patch": patch_managed_zone +"/dns:v1/dns.managedZones.patch/clientOperationId": client_operation_id +"/dns:v1/dns.managedZones.patch/managedZone": managed_zone +"/dns:v1/dns.managedZones.patch/project": project +"/dns:v1/dns.managedZones.update": update_managed_zone +"/dns:v1/dns.managedZones.update/clientOperationId": client_operation_id +"/dns:v1/dns.managedZones.update/managedZone": managed_zone +"/dns:v1/dns.managedZones.update/project": project "/dns:v1/dns.projects.get": get_project +"/dns:v1/dns.projects.get/clientOperationId": client_operation_id "/dns:v1/dns.projects.get/project": project "/dns:v1/dns.resourceRecordSets.list": list_resource_record_sets "/dns:v1/dns.resourceRecordSets.list/managedZone": managed_zone diff --git a/generated/google/apis/androiddeviceprovisioning_v1.rb b/generated/google/apis/androiddeviceprovisioning_v1.rb index 5e4bc9aeb..c76fb44bb 100644 --- a/generated/google/apis/androiddeviceprovisioning_v1.rb +++ b/generated/google/apis/androiddeviceprovisioning_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/zero-touch/ module AndroiddeviceprovisioningV1 VERSION = 'V1' - REVISION = '20180203' + REVISION = '20180317' end end end diff --git a/generated/google/apis/androiddeviceprovisioning_v1/classes.rb b/generated/google/apis/androiddeviceprovisioning_v1/classes.rb index 2130301e3..b9c8b00b9 100644 --- a/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +++ b/generated/google/apis/androiddeviceprovisioning_v1/classes.rb @@ -26,7 +26,7 @@ module Google class ClaimDeviceRequest include Google::Apis::Core::Hashable - # The customer to claim for. + # Required. The ID of the customer for whom the device is being claimed. # Corresponds to the JSON property `customerId` # @return [Fixnum] attr_accessor :customer_id @@ -37,7 +37,7 @@ module Google # @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier] attr_accessor :device_identifier - # The section to claim. + # Required. The section type of the device's provisioning record. # Corresponds to the JSON property `sectionType` # @return [String] attr_accessor :section_type @@ -80,11 +80,13 @@ module Google end end - # Request to claim devices asynchronously in batch. + # Request to claim devices asynchronously in batch. Claiming a device adds the + # device to zero-touch enrollment and shows the device in the customer's view + # of the portal. class ClaimDevicesRequest include Google::Apis::Core::Hashable - # List of claims. + # Required. A list of device claims. # Corresponds to the JSON property `claims` # @return [Array] attr_accessor :claims @@ -624,21 +626,27 @@ module Google end end - # Long running operation metadata. + # Tracks the status of a long-running operation to asynchronously update a + # batch of reseller metadata attached to devices. To learn more, read + # [Long‑running batch operations](/zero-touch/guides/how-it-works#operations). class DevicesLongRunningOperationMetadata include Google::Apis::Core::Hashable - # Number of devices parsed in your requests. + # The number of metadata updates in the operation. This might be different + # from the number of updates in the request if the API can't parse some of + # the updates. # Corresponds to the JSON property `devicesCount` # @return [Fixnum] attr_accessor :devices_count - # The overall processing status. + # The processing status of the operation. # Corresponds to the JSON property `processingStatus` # @return [String] attr_accessor :processing_status - # Processing progress from 0 to 100. + # The processing progress of the operation. Measured as a number from 0 to + # 100. A value of 10O doesnt always mean the operation completed—check for + # the inclusion of a `done` field. # Corresponds to the JSON property `progress` # @return [Fixnum] attr_accessor :progress @@ -655,17 +663,21 @@ module Google end end - # Long running operation response. + # Tracks the status of a long-running operation to claim, unclaim, or attach + # metadata to devices. To learn more, read + # [Long‑running batch operations](/zero-touch/guides/how-it-works#operations). class DevicesLongRunningOperationResponse include Google::Apis::Core::Hashable - # Processing status for each device. - # One `PerDeviceStatus` per device. The order is the same as in your requests. + # The processing status for each device in the operation. + # One `PerDeviceStatus` per device. The list order matches the items in the + # original request. # Corresponds to the JSON property `perDeviceStatus` # @return [Array] attr_accessor :per_device_status - # Number of succeesfully processed ones. + # A summary of how many items in the operation the server processed + # successfully. Updated as the operation progresses. # Corresponds to the JSON property `successCount` # @return [Fixnum] attr_accessor :success_count @@ -750,12 +762,13 @@ module Google # @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier] attr_accessor :device_identifier - # Number of devices to show. + # Required. The maximum number of devices to show in a page of results. Must + # be between 1 and 100 inclusive. # Corresponds to the JSON property `limit` # @return [Fixnum] attr_accessor :limit - # Page token. + # A token specifying which result page to return. # Corresponds to the JSON property `pageToken` # @return [String] attr_accessor :page_token @@ -781,7 +794,8 @@ module Google # @return [Array] attr_accessor :devices - # Page token of the next page. + # A token used to access the next page of results. Omitted if no further + # results are available. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token @@ -801,22 +815,23 @@ module Google class FindDevicesByOwnerRequest include Google::Apis::Core::Hashable - # List of customer IDs to search for. + # Required. The list of customer IDs to search for. # Corresponds to the JSON property `customerId` # @return [Array] attr_accessor :customer_id - # The number of devices to show in the result. + # Required. The maximum number of devices to show in a page of results. Must + # be between 1 and 100 inclusive. # Corresponds to the JSON property `limit` # @return [Fixnum] attr_accessor :limit - # Page token. + # A token specifying which result page to return. # Corresponds to the JSON property `pageToken` # @return [String] attr_accessor :page_token - # The section type. + # Required. The section type of the device's provisioning record. # Corresponds to the JSON property `sectionType` # @return [String] attr_accessor :section_type @@ -838,12 +853,13 @@ module Google class FindDevicesByOwnerResponse include Google::Apis::Core::Hashable - # Devices found. + # The customer's devices. # Corresponds to the JSON property `devices` # @return [Array] attr_accessor :devices - # Page token of the next page. + # A token used to access the next page of results. + # Omitted if no further results are available. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token @@ -863,7 +879,7 @@ module Google class ListCustomersResponse include Google::Apis::Core::Hashable - # List of customers related to this partner. + # List of customers related to this reseller partner. # Corresponds to the JSON property `customers` # @return [Array] attr_accessor :customers @@ -967,7 +983,8 @@ module Google end end - # Operation the server received for every device. + # A task for each device in the operation. Corresponds to each device + # change in the request. class OperationPerDevice include Google::Apis::Core::Hashable @@ -976,7 +993,7 @@ module Google # @return [Google::Apis::AndroiddeviceprovisioningV1::PartnerClaim] attr_accessor :claim - # Stores the processing result for each device. + # Captures the processing status for each device in the operation. # Corresponds to the JSON property `result` # @return [Google::Apis::AndroiddeviceprovisioningV1::PerDeviceStatusInBatch] attr_accessor :result @@ -1008,7 +1025,7 @@ module Google class PartnerClaim include Google::Apis::Core::Hashable - # Customer ID to claim for. + # Required. The ID of the customer for whom the device is being claimed. # Corresponds to the JSON property `customerId` # @return [Fixnum] attr_accessor :customer_id @@ -1025,7 +1042,7 @@ module Google # @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceMetadata] attr_accessor :device_metadata - # Section type to claim. + # Required. The section type of the device's provisioning record. # Corresponds to the JSON property `sectionType` # @return [String] attr_accessor :section_type @@ -1058,7 +1075,7 @@ module Google # @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier] attr_accessor :device_identifier - # Section type to unclaim. + # Required. The section type of the device's provisioning record. # Corresponds to the JSON property `sectionType` # @return [String] attr_accessor :section_type @@ -1075,26 +1092,26 @@ module Google end end - # Stores the processing result for each device. + # Captures the processing status for each device in the operation. class PerDeviceStatusInBatch include Google::Apis::Core::Hashable - # Device ID of the device if process succeeds. + # If processing succeeds, the device ID of the device. # Corresponds to the JSON property `deviceId` # @return [Fixnum] attr_accessor :device_id - # Error identifier. + # If processing fails, the error type. # Corresponds to the JSON property `errorIdentifier` # @return [String] attr_accessor :error_identifier - # Error message. + # If processing fails, a developer message explaining what went wrong. # Corresponds to the JSON property `errorMessage` # @return [String] attr_accessor :error_message - # Process result. + # The result status of the device after processing. # Corresponds to the JSON property `status` # @return [String] attr_accessor :status @@ -1199,7 +1216,7 @@ module Google # @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier] attr_accessor :device_identifier - # The section type to unclaim for. + # Required. The section type of the device's provisioning record. # Corresponds to the JSON property `sectionType` # @return [String] attr_accessor :section_type @@ -1220,7 +1237,7 @@ module Google class UnclaimDevicesRequest include Google::Apis::Core::Hashable - # List of devices to unclaim. + # Required. The list of devices to unclaim. # Corresponds to the JSON property `unclaims` # @return [Array] attr_accessor :unclaims @@ -1239,7 +1256,7 @@ module Google class UpdateDeviceMetadataInBatchRequest include Google::Apis::Core::Hashable - # List of metadata updates. + # Required. The list of metadata updates. # Corresponds to the JSON property `updates` # @return [Array] attr_accessor :updates diff --git a/generated/google/apis/androiddeviceprovisioning_v1/service.rb b/generated/google/apis/androiddeviceprovisioning_v1/service.rb index e11c5ac39..dd284d960 100644 --- a/generated/google/apis/androiddeviceprovisioning_v1/service.rb +++ b/generated/google/apis/androiddeviceprovisioning_v1/service.rb @@ -534,7 +534,7 @@ module Google # `partnerId` argument. This list includes customers that the reseller # created and customers that enrolled themselves using the portal. # @param [Fixnum] partner_id - # The ID of the partner. + # Required. The ID of the reseller partner. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -562,9 +562,10 @@ module Google execute_or_queue_command(command, &block) end - # Claim the device identified by device identifier. + # Claims a device for a customer and adds it to zero-touch enrollment. If the + # device is already claimed by another customer, the call returns an error. # @param [Fixnum] partner_id - # ID of the partner. + # Required. The ID of the reseller partner. # @param [Google::Apis::AndroiddeviceprovisioningV1::ClaimDeviceRequest] claim_device_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -595,9 +596,11 @@ module Google execute_or_queue_command(command, &block) end - # Claim devices asynchronously. + # Claims a batch of devices for a customer asynchronously. Adds the devices + # to zero-touch enrollment. To learn more, read [Long‑running batch + # operations](/zero-touch/guides/how-it-works#operations). # @param [Fixnum] partner_id - # Partner ID. + # Required. The ID of the reseller partner. # @param [Google::Apis::AndroiddeviceprovisioningV1::ClaimDevicesRequest] claim_devices_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -628,9 +631,9 @@ module Google execute_or_queue_command(command, &block) end - # Find devices by device identifier. + # Finds devices by hardware identifiers, such as IMEI. # @param [Fixnum] partner_id - # ID of the partner. + # Required. The ID of the reseller partner. # @param [Google::Apis::AndroiddeviceprovisioningV1::FindDevicesByDeviceIdentifierRequest] find_devices_by_device_identifier_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -661,9 +664,12 @@ module Google execute_or_queue_command(command, &block) end - # Find devices by ownership. + # Finds devices claimed for customers. The results only contain devices + # registered to the reseller that's identified by the `partnerId` argument. + # The customer's devices purchased from other resellers don't appear in the + # results. # @param [Fixnum] partner_id - # ID of the partner. + # Required. The ID of the reseller partner. # @param [Google::Apis::AndroiddeviceprovisioningV1::FindDevicesByOwnerRequest] find_devices_by_owner_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -694,9 +700,10 @@ module Google execute_or_queue_command(command, &block) end - # Get a device. + # Gets a device. # @param [String] name - # Resource name in `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. + # Required. The device API resource name in the format + # `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -724,11 +731,11 @@ module Google execute_or_queue_command(command, &block) end - # Update the metadata. + # Updates reseller metadata associated with the device. # @param [Fixnum] metadata_owner_id - # The owner of the newly set metadata. Set this to the partner ID. + # Required. The owner of the newly set metadata. Set this to the partner ID. # @param [Fixnum] device_id - # ID of the partner. + # Required. The ID of the reseller partner. # @param [Google::Apis::AndroiddeviceprovisioningV1::UpdateDeviceMetadataRequest] update_device_metadata_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -760,9 +767,10 @@ module Google execute_or_queue_command(command, &block) end - # Unclaim the device identified by the `device_id` or the `deviceIdentifier`. + # Unclaims a device from a customer and removes it from zero-touch + # enrollment. # @param [Fixnum] partner_id - # ID of the partner. + # Required. The ID of the reseller partner. # @param [Google::Apis::AndroiddeviceprovisioningV1::UnclaimDeviceRequest] unclaim_device_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -793,9 +801,11 @@ module Google execute_or_queue_command(command, &block) end - # Unclaim devices asynchronously. + # Unclaims a batch of devices for a customer asynchronously. Removes the + # devices from zero-touch enrollment. To learn more, read [Long‑running batch + # operations](/zero-touch/guides/how-it-works#operations). # @param [Fixnum] partner_id - # Partner ID. + # Required. The reseller partner ID. # @param [Google::Apis::AndroiddeviceprovisioningV1::UnclaimDevicesRequest] unclaim_devices_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -826,9 +836,12 @@ module Google execute_or_queue_command(command, &block) end - # Set metadata in batch asynchronously. + # Updates the reseller metadata attached to a batch of devices. This method + # updates devices asynchronously and returns an `Operation` that can be used + # to track progress. Read [Long‑running batch + # operations](/zero-touch/guides/how-it-works#operations). # @param [Fixnum] partner_id - # Partner ID. + # Required. The reseller partner ID. # @param [Google::Apis::AndroiddeviceprovisioningV1::UpdateDeviceMetadataInBatchRequest] update_device_metadata_in_batch_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. diff --git a/generated/google/apis/androidpublisher_v2.rb b/generated/google/apis/androidpublisher_v2.rb index 107c83e69..2711d0480 100644 --- a/generated/google/apis/androidpublisher_v2.rb +++ b/generated/google/apis/androidpublisher_v2.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/android-publisher module AndroidpublisherV2 VERSION = 'V2' - REVISION = '20180211' + REVISION = '20180318' # View and manage your Google Play Developer account AUTH_ANDROIDPUBLISHER = 'https://www.googleapis.com/auth/androidpublisher' diff --git a/generated/google/apis/androidpublisher_v2/classes.rb b/generated/google/apis/androidpublisher_v2/classes.rb index 7ca84f0c5..8161ce136 100644 --- a/generated/google/apis/androidpublisher_v2/classes.rb +++ b/generated/google/apis/androidpublisher_v2/classes.rb @@ -1596,7 +1596,8 @@ module Google class Track include Google::Apis::Core::Hashable - # Identifier for this track. One of "alpha", "beta", "production" or "rollout". + # Identifier for this track. One of "alpha", "beta", "production", "rollout" or " + # internal". # Corresponds to the JSON property `track` # @return [String] attr_accessor :track diff --git a/generated/google/apis/androidpublisher_v2/service.rb b/generated/google/apis/androidpublisher_v2/service.rb index e7193a74e..061c2307f 100644 --- a/generated/google/apis/androidpublisher_v2/service.rb +++ b/generated/google/apis/androidpublisher_v2/service.rb @@ -1496,7 +1496,7 @@ module Google # Unique identifier for this edit. # @param [String] track # The track to read or modify. Acceptable values are: "alpha", "beta", " - # production" or "rollout". + # production", "rollout" or "internal". # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -1539,7 +1539,7 @@ module Google # Unique identifier for this edit. # @param [String] track # The track to read or modify. Acceptable values are: "alpha", "beta", " - # production" or "rollout". + # production", "rollout" or "internal". # @param [Google::Apis::AndroidpublisherV2::Testers] testers_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -1585,7 +1585,7 @@ module Google # Unique identifier for this edit. # @param [String] track # The track to read or modify. Acceptable values are: "alpha", "beta", " - # production" or "rollout". + # production", "rollout" or "internal". # @param [Google::Apis::AndroidpublisherV2::Testers] testers_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -1632,7 +1632,7 @@ module Google # Unique identifier for this edit. # @param [String] track # The track to read or modify. Acceptable values are: "alpha", "beta", " - # production" or "rollout". + # production", "rollout" or "internal". # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -1716,7 +1716,7 @@ module Google # Unique identifier for this edit. # @param [String] track # The track to read or modify. Acceptable values are: "alpha", "beta", " - # production" or "rollout". + # production", "rollout" or "internal". # @param [Google::Apis::AndroidpublisherV2::Track] track_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -1764,7 +1764,7 @@ module Google # Unique identifier for this edit. # @param [String] track # The track to read or modify. Acceptable values are: "alpha", "beta", " - # production" or "rollout". + # production", "rollout" or "internal". # @param [Google::Apis::AndroidpublisherV2::Track] track_object # @param [String] fields # Selector specifying which fields to include in a partial response. diff --git a/generated/google/apis/dlp_v2.rb b/generated/google/apis/dlp_v2.rb new file mode 100644 index 000000000..d68e31679 --- /dev/null +++ b/generated/google/apis/dlp_v2.rb @@ -0,0 +1,36 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/dlp_v2/service.rb' +require 'google/apis/dlp_v2/classes.rb' +require 'google/apis/dlp_v2/representations.rb' + +module Google + module Apis + # Cloud DLP API + # + # The Google Data Loss Prevention API provides methods for detection of privacy- + # sensitive fragments in text, images, and Google Cloud Platform storage + # repositories. + # + # @see https://cloud.google.com/dlp/docs/ + module DlpV2 + VERSION = 'V2' + REVISION = '20180317' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + end + end +end diff --git a/generated/google/apis/dlp_v2/classes.rb b/generated/google/apis/dlp_v2/classes.rb new file mode 100644 index 000000000..09e89332f --- /dev/null +++ b/generated/google/apis/dlp_v2/classes.rb @@ -0,0 +1,6424 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DlpV2 + + # A task to execute on the completion of a job. + class GooglePrivacyDlpV2Action + include Google::Apis::Core::Hashable + + # Publish the results of a DlpJob to a pub sub channel. + # Compatible with: Inpect, Risk + # Corresponds to the JSON property `pubSub` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2PublishToPubSub] + attr_accessor :pub_sub + + # If set, the detailed findings will be persisted to the specified + # OutputStorageConfig. Compatible with: Inspect + # Corresponds to the JSON property `saveFindings` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2SaveFindings] + attr_accessor :save_findings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @pub_sub = args[:pub_sub] if args.key?(:pub_sub) + @save_findings = args[:save_findings] if args.key?(:save_findings) + end + end + + # Result of a risk analysis operation request. + class GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails + include Google::Apis::Core::Hashable + + # Result of the categorical stats computation. + # Corresponds to the JSON property `categoricalStatsResult` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2CategoricalStatsResult] + attr_accessor :categorical_stats_result + + # Result of the k-anonymity computation. + # Corresponds to the JSON property `kAnonymityResult` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2KAnonymityResult] + attr_accessor :k_anonymity_result + + # Result of the reidentifiability analysis. Note that these results are an + # estimation, not exact values. + # Corresponds to the JSON property `kMapEstimationResult` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2KMapEstimationResult] + attr_accessor :k_map_estimation_result + + # Result of the l-diversity computation. + # Corresponds to the JSON property `lDiversityResult` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2LDiversityResult] + attr_accessor :l_diversity_result + + # Result of the numerical stats computation. + # Corresponds to the JSON property `numericalStatsResult` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2NumericalStatsResult] + attr_accessor :numerical_stats_result + + # Privacy metric to compute for reidentification risk analysis. + # Corresponds to the JSON property `requestedPrivacyMetric` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2PrivacyMetric] + attr_accessor :requested_privacy_metric + + # 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 + # `..`. + # Corresponds to the JSON property `requestedSourceTable` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable] + attr_accessor :requested_source_table + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @categorical_stats_result = args[:categorical_stats_result] if args.key?(:categorical_stats_result) + @k_anonymity_result = args[:k_anonymity_result] if args.key?(:k_anonymity_result) + @k_map_estimation_result = args[:k_map_estimation_result] if args.key?(:k_map_estimation_result) + @l_diversity_result = args[:l_diversity_result] if args.key?(:l_diversity_result) + @numerical_stats_result = args[:numerical_stats_result] if args.key?(:numerical_stats_result) + @requested_privacy_metric = args[:requested_privacy_metric] if args.key?(:requested_privacy_metric) + @requested_source_table = args[:requested_source_table] if args.key?(:requested_source_table) + end + end + + # An auxiliary table contains statistical information on the relative + # frequency of different quasi-identifiers values. It has one or several + # quasi-identifiers columns, and one column that indicates the relative + # frequency of each quasi-identifier tuple. + # If a tuple is present in the data but not in the auxiliary table, the + # corresponding relative frequency is assumed to be zero (and thus, the + # tuple is highly reidentifiable). + class GooglePrivacyDlpV2AuxiliaryTable + include Google::Apis::Core::Hashable + + # Quasi-identifier columns. [required] + # Corresponds to the JSON property `quasiIds` + # @return [Array] + attr_accessor :quasi_ids + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `relativeFrequency` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :relative_frequency + + # 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 + # `..`. + # Corresponds to the JSON property `table` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable] + attr_accessor :table + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @quasi_ids = args[:quasi_ids] if args.key?(:quasi_ids) + @relative_frequency = args[:relative_frequency] if args.key?(:relative_frequency) + @table = args[:table] if args.key?(:table) + end + end + + # Row key for identifying a record in BigQuery table. + class GooglePrivacyDlpV2BigQueryKey + include Google::Apis::Core::Hashable + + # Absolute number of the row from the beginning of the table at the time + # of scanning. + # Corresponds to the JSON property `rowNumber` + # @return [Fixnum] + attr_accessor :row_number + + # 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 + # `..`. + # Corresponds to the JSON property `tableReference` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable] + attr_accessor :table_reference + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @row_number = args[:row_number] if args.key?(:row_number) + @table_reference = args[:table_reference] if args.key?(:table_reference) + end + end + + # Options defining BigQuery table and row identifiers. + class GooglePrivacyDlpV2BigQueryOptions + include Google::Apis::Core::Hashable + + # References to fields uniquely identifying rows within the table. + # Nested fields in the format, like `person.birthdate.year`, are allowed. + # Corresponds to the JSON property `identifyingFields` + # @return [Array] + attr_accessor :identifying_fields + + # 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 + # `..`. + # Corresponds to the JSON property `tableReference` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable] + attr_accessor :table_reference + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @identifying_fields = args[:identifying_fields] if args.key?(:identifying_fields) + @table_reference = args[:table_reference] if args.key?(:table_reference) + end + end + + # 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 + # `..`. + class GooglePrivacyDlpV2BigQueryTable + include Google::Apis::Core::Hashable + + # Dataset ID of the table. + # Corresponds to the JSON property `datasetId` + # @return [String] + attr_accessor :dataset_id + + # The Google Cloud Platform project ID of the project containing the table. + # If omitted, project ID is inferred from the API call. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # Name of the table. + # Corresponds to the JSON property `tableId` + # @return [String] + attr_accessor :table_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dataset_id = args[:dataset_id] if args.key?(:dataset_id) + @project_id = args[:project_id] if args.key?(:project_id) + @table_id = args[:table_id] if args.key?(:table_id) + end + end + + # Bounding box encompassing detected text within an image. + class GooglePrivacyDlpV2BoundingBox + include Google::Apis::Core::Hashable + + # Height of the bounding box in pixels. + # Corresponds to the JSON property `height` + # @return [Fixnum] + attr_accessor :height + + # Left coordinate of the bounding box. (0,0) is upper left. + # Corresponds to the JSON property `left` + # @return [Fixnum] + attr_accessor :left + + # Top coordinate of the bounding box. (0,0) is upper left. + # Corresponds to the JSON property `top` + # @return [Fixnum] + attr_accessor :top + + # Width of the bounding box in pixels. + # Corresponds to the JSON property `width` + # @return [Fixnum] + attr_accessor :width + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @height = args[:height] if args.key?(:height) + @left = args[:left] if args.key?(:left) + @top = args[:top] if args.key?(:top) + @width = args[:width] if args.key?(:width) + end + end + + # Bucket is represented as a range, along with replacement values. + class GooglePrivacyDlpV2Bucket + include Google::Apis::Core::Hashable + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `max` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Value] + attr_accessor :max + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `min` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Value] + attr_accessor :min + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `replacementValue` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Value] + attr_accessor :replacement_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max = args[:max] if args.key?(:max) + @min = args[:min] if args.key?(:min) + @replacement_value = args[:replacement_value] if args.key?(:replacement_value) + end + end + + # Generalization function that buckets values based on ranges. The ranges and + # replacement values are dynamically provided by the user for custom behavior, + # such as 1-30 -> LOW 31-65 -> MEDIUM 66-100 -> HIGH + # This can be used on + # data of type: number, long, string, timestamp. + # If the bound `Value` type differs from the type of data being transformed, we + # will first attempt converting the type of the data to be transformed to match + # the type of the bound before comparing. + class GooglePrivacyDlpV2BucketingConfig + include Google::Apis::Core::Hashable + + # Set of buckets. Ranges must be non-overlapping. + # Corresponds to the JSON property `buckets` + # @return [Array] + attr_accessor :buckets + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @buckets = args[:buckets] if args.key?(:buckets) + end + end + + # Container for bytes to inspect or redact. + class GooglePrivacyDlpV2ByteContentItem + include Google::Apis::Core::Hashable + + # Content data to inspect or redact. + # Corresponds to the JSON property `data` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :data + + # The type of data stored in the bytes string. Default will be TEXT_UTF8. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @data = args[:data] if args.key?(:data) + @type = args[:type] if args.key?(:type) + end + end + + # The request message for canceling a DLP job. + class GooglePrivacyDlpV2CancelDlpJobRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Compute numerical stats over an individual column, including + # number of distinct values and value count distribution. + class GooglePrivacyDlpV2CategoricalStatsConfig + include Google::Apis::Core::Hashable + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :field + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + end + end + + # + class GooglePrivacyDlpV2CategoricalStatsHistogramBucket + include Google::Apis::Core::Hashable + + # Total number of values in this bucket. + # Corresponds to the JSON property `bucketSize` + # @return [Fixnum] + attr_accessor :bucket_size + + # Total number of distinct values in this bucket. + # Corresponds to the JSON property `bucketValueCount` + # @return [Fixnum] + attr_accessor :bucket_value_count + + # Sample of value frequencies in this bucket. The total number of + # values returned per bucket is capped at 20. + # Corresponds to the JSON property `bucketValues` + # @return [Array] + attr_accessor :bucket_values + + # Lower bound on the value frequency of the values in this bucket. + # Corresponds to the JSON property `valueFrequencyLowerBound` + # @return [Fixnum] + attr_accessor :value_frequency_lower_bound + + # Upper bound on the value frequency of the values in this bucket. + # Corresponds to the JSON property `valueFrequencyUpperBound` + # @return [Fixnum] + attr_accessor :value_frequency_upper_bound + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_size = args[:bucket_size] if args.key?(:bucket_size) + @bucket_value_count = args[:bucket_value_count] if args.key?(:bucket_value_count) + @bucket_values = args[:bucket_values] if args.key?(:bucket_values) + @value_frequency_lower_bound = args[:value_frequency_lower_bound] if args.key?(:value_frequency_lower_bound) + @value_frequency_upper_bound = args[:value_frequency_upper_bound] if args.key?(:value_frequency_upper_bound) + end + end + + # Result of the categorical stats computation. + class GooglePrivacyDlpV2CategoricalStatsResult + include Google::Apis::Core::Hashable + + # Histogram of value frequencies in the column. + # Corresponds to the JSON property `valueFrequencyHistogramBuckets` + # @return [Array] + attr_accessor :value_frequency_histogram_buckets + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @value_frequency_histogram_buckets = args[:value_frequency_histogram_buckets] if args.key?(:value_frequency_histogram_buckets) + end + end + + # Partially mask a string by replacing a given number of characters with a + # fixed character. Masking can start from the beginning or end of the string. + # This can be used on data of any type (numbers, longs, and so on) and when + # de-identifying structured data we'll attempt to preserve the original data's + # type. (This allows you to take a long like 123 and modify it to a string like + # **3. + class GooglePrivacyDlpV2CharacterMaskConfig + include Google::Apis::Core::Hashable + + # When masking a string, items in this list will be skipped when replacing. + # For example, if your string is 555-555-5555 and you ask us to skip `-` and + # mask 5 chars with * we would produce ***-*55-5555. + # Corresponds to the JSON property `charactersToIgnore` + # @return [Array] + attr_accessor :characters_to_ignore + + # Character to mask the sensitive values—for example, "*" for an + # alphabetic string such as name, or "0" for a numeric string such as ZIP + # code or credit card number. String must have length 1. If not supplied, we + # will default to "*" for strings, 0 for digits. + # Corresponds to the JSON property `maskingCharacter` + # @return [String] + attr_accessor :masking_character + + # Number of characters to mask. If not set, all matching chars will be + # masked. Skipped characters do not count towards this tally. + # Corresponds to the JSON property `numberToMask` + # @return [Fixnum] + attr_accessor :number_to_mask + + # Mask characters in reverse order. For example, if `masking_character` is + # '0', number_to_mask is 14, and `reverse_order` is false, then + # 1234-5678-9012-3456 -> 00000000000000-3456 + # If `masking_character` is '*', `number_to_mask` is 3, and `reverse_order` + # is true, then 12345 -> 12*** + # Corresponds to the JSON property `reverseOrder` + # @return [Boolean] + attr_accessor :reverse_order + alias_method :reverse_order?, :reverse_order + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @characters_to_ignore = args[:characters_to_ignore] if args.key?(:characters_to_ignore) + @masking_character = args[:masking_character] if args.key?(:masking_character) + @number_to_mask = args[:number_to_mask] if args.key?(:number_to_mask) + @reverse_order = args[:reverse_order] if args.key?(:reverse_order) + end + end + + # Characters to skip when doing deidentification of a value. These will be left + # alone and skipped. + class GooglePrivacyDlpV2CharsToIgnore + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `charactersToSkip` + # @return [String] + attr_accessor :characters_to_skip + + # + # Corresponds to the JSON property `commonCharactersToIgnore` + # @return [String] + attr_accessor :common_characters_to_ignore + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @characters_to_skip = args[:characters_to_skip] if args.key?(:characters_to_skip) + @common_characters_to_ignore = args[:common_characters_to_ignore] if args.key?(:common_characters_to_ignore) + end + end + + # Options defining a file or a set of files (path ending with *) within + # a Google Cloud Storage bucket. + class GooglePrivacyDlpV2CloudStorageOptions + include Google::Apis::Core::Hashable + + # Max number of bytes to scan from a file. If a scanned file's size is bigger + # than this value then the rest of the bytes are omitted. + # Corresponds to the JSON property `bytesLimitPerFile` + # @return [Fixnum] + attr_accessor :bytes_limit_per_file + + # Set of files to scan. + # Corresponds to the JSON property `fileSet` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FileSet] + attr_accessor :file_set + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bytes_limit_per_file = args[:bytes_limit_per_file] if args.key?(:bytes_limit_per_file) + @file_set = args[:file_set] if args.key?(:file_set) + end + end + + # Represents a color in the RGB color space. + class GooglePrivacyDlpV2Color + include Google::Apis::Core::Hashable + + # The amount of blue in the color as a value in the interval [0, 1]. + # Corresponds to the JSON property `blue` + # @return [Float] + attr_accessor :blue + + # The amount of green in the color as a value in the interval [0, 1]. + # Corresponds to the JSON property `green` + # @return [Float] + attr_accessor :green + + # The amount of red in the color as a value in the interval [0, 1]. + # Corresponds to the JSON property `red` + # @return [Float] + attr_accessor :red + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @blue = args[:blue] if args.key?(:blue) + @green = args[:green] if args.key?(:green) + @red = args[:red] if args.key?(:red) + end + end + + # The field type of `value` and `field` do not need to match to be + # considered equal, but not all comparisons are possible. + # A `value` of type: + # - `string` can be compared against all other types + # - `boolean` can only be compared against other booleans + # - `integer` can be compared against doubles or a string if the string value + # can be parsed as an integer. + # - `double` can be compared against integers or a string if the string can + # be parsed as a double. + # - `Timestamp` can be compared against strings in RFC 3339 date string + # format. + # - `TimeOfDay` can be compared against timestamps and strings in the format + # of 'HH:mm:ss'. + # If we fail to compare do to type mismatch, a warning will be given and + # the condition will evaluate to false. + class GooglePrivacyDlpV2Condition + include Google::Apis::Core::Hashable + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :field + + # Operator used to compare the field or infoType to the value. [required] + # Corresponds to the JSON property `operator` + # @return [String] + attr_accessor :operator + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `value` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Value] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + @operator = args[:operator] if args.key?(:operator) + @value = args[:value] if args.key?(:value) + end + end + + # A collection of conditions. + class GooglePrivacyDlpV2Conditions + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `conditions` + # @return [Array] + attr_accessor :conditions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @conditions = args[:conditions] if args.key?(:conditions) + end + end + + # Container structure for the content to inspect. + class GooglePrivacyDlpV2ContentItem + include Google::Apis::Core::Hashable + + # Container for bytes to inspect or redact. + # Corresponds to the JSON property `byteItem` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ByteContentItem] + attr_accessor :byte_item + + # Structured content to inspect. Up to 50,000 `Value`s per request allowed. + # Corresponds to the JSON property `table` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Table] + attr_accessor :table + + # String data to inspect or redact. + # Corresponds to the JSON property `value` + # @return [String] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @byte_item = args[:byte_item] if args.key?(:byte_item) + @table = args[:table] if args.key?(:table) + @value = args[:value] if args.key?(:value) + end + end + + # Findings container location data. + class GooglePrivacyDlpV2ContentLocation + include Google::Apis::Core::Hashable + + # Name of the container where the finding is located. + # The top level name is the source file name or table name. Nested names + # could be absent if the embedded object has no string identifier + # (for an example an image contained within a document). + # Corresponds to the JSON property `containerName` + # @return [String] + attr_accessor :container_name + + # Findings container modification timestamp, if applicable. + # For Google Cloud Storage contains last file modification timestamp. + # For BigQuery table contains last_modified_time property. + # For Datastore - not populated. + # Corresponds to the JSON property `containerTimestamp` + # @return [String] + attr_accessor :container_timestamp + + # Findings container version, if available + # ("generation" for Google Cloud Storage). + # Corresponds to the JSON property `containerVersion` + # @return [String] + attr_accessor :container_version + + # Location of a finding within a document. + # Corresponds to the JSON property `documentLocation` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DocumentLocation] + attr_accessor :document_location + + # Location of the finding within an image. + # Corresponds to the JSON property `imageLocation` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ImageLocation] + attr_accessor :image_location + + # Location of a finding within a row or record. + # Corresponds to the JSON property `recordLocation` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2RecordLocation] + attr_accessor :record_location + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @container_name = args[:container_name] if args.key?(:container_name) + @container_timestamp = args[:container_timestamp] if args.key?(:container_timestamp) + @container_version = args[:container_version] if args.key?(:container_version) + @document_location = args[:document_location] if args.key?(:document_location) + @image_location = args[:image_location] if args.key?(:image_location) + @record_location = args[:record_location] if args.key?(:record_location) + end + end + + # Request message for CreateDeidentifyTemplate. + class GooglePrivacyDlpV2CreateDeidentifyTemplateRequest + include Google::Apis::Core::Hashable + + # The DeidentifyTemplates contains instructions on how to deidentify content. + # Corresponds to the JSON property `deidentifyTemplate` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] + attr_accessor :deidentify_template + + # The template id can contain uppercase and lowercase letters, + # numbers, and hyphens; that is, it must match the regular + # expression: `[a-zA-Z\\d-]+`. The maximum length is 100 + # characters. Can be empty to allow the system to generate one. + # Corresponds to the JSON property `templateId` + # @return [String] + attr_accessor :template_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deidentify_template = args[:deidentify_template] if args.key?(:deidentify_template) + @template_id = args[:template_id] if args.key?(:template_id) + end + end + + # Request message for CreateDlpJobRequest. Used to initiate long running + # jobs such as calculating risk metrics or inspecting Google Cloud + # Storage. + class GooglePrivacyDlpV2CreateDlpJobRequest + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `inspectJob` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectJobConfig] + attr_accessor :inspect_job + + # The job id can contain uppercase and lowercase letters, + # numbers, and hyphens; that is, it must match the regular + # expression: `[a-zA-Z\\d-]+`. The maximum length is 100 + # characters. Can be empty to allow the system to generate one. + # Corresponds to the JSON property `jobId` + # @return [String] + attr_accessor :job_id + + # Configuration for a risk analysis job. + # Corresponds to the JSON property `riskJob` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2RiskAnalysisJobConfig] + attr_accessor :risk_job + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @inspect_job = args[:inspect_job] if args.key?(:inspect_job) + @job_id = args[:job_id] if args.key?(:job_id) + @risk_job = args[:risk_job] if args.key?(:risk_job) + end + end + + # Request message for CreateInspectTemplate. + class GooglePrivacyDlpV2CreateInspectTemplateRequest + include Google::Apis::Core::Hashable + + # The inspectTemplate contains a configuration (set of types of sensitive data + # to be detected) to be used anywhere you otherwise would normally specify + # InspectConfig. + # Corresponds to the JSON property `inspectTemplate` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] + attr_accessor :inspect_template + + # The template id can contain uppercase and lowercase letters, + # numbers, and hyphens; that is, it must match the regular + # expression: `[a-zA-Z\\d-]+`. The maximum length is 100 + # characters. Can be empty to allow the system to generate one. + # Corresponds to the JSON property `templateId` + # @return [String] + attr_accessor :template_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @inspect_template = args[:inspect_template] if args.key?(:inspect_template) + @template_id = args[:template_id] if args.key?(:template_id) + end + end + + # Request message for CreateJobTrigger. + class GooglePrivacyDlpV2CreateJobTriggerRequest + include Google::Apis::Core::Hashable + + # Contains a configuration to make dlp api calls on a repeating basis. + # Corresponds to the JSON property `jobTrigger` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger] + attr_accessor :job_trigger + + # The trigger id can contain uppercase and lowercase letters, + # numbers, and hyphens; that is, it must match the regular + # expression: `[a-zA-Z\\d-]+`. The maximum length is 100 + # characters. Can be empty to allow the system to generate one. + # Corresponds to the JSON property `triggerId` + # @return [String] + attr_accessor :trigger_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @job_trigger = args[:job_trigger] if args.key?(:job_trigger) + @trigger_id = args[:trigger_id] if args.key?(:trigger_id) + end + end + + # Pseudonymization method that generates surrogates via cryptographic hashing. + # Uses SHA-256. + # The key size must be either 32 or 64 bytes. + # Outputs a 32 byte digest as an uppercase hex string + # (for example, 41D1567F7F99F1DC2A5FAB886DEE5BEE). + # Currently, only string and integer values can be hashed. + class GooglePrivacyDlpV2CryptoHashConfig + include Google::Apis::Core::Hashable + + # This is a data encryption key (DEK) (as opposed to + # a key encryption key (KEK) stored by KMS). + # When using KMS to wrap/unwrap DEKs, be sure to set an appropriate + # IAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot + # unwrap the data crypto key. + # Corresponds to the JSON property `cryptoKey` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey] + attr_accessor :crypto_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @crypto_key = args[:crypto_key] if args.key?(:crypto_key) + end + end + + # This is a data encryption key (DEK) (as opposed to + # a key encryption key (KEK) stored by KMS). + # When using KMS to wrap/unwrap DEKs, be sure to set an appropriate + # IAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot + # unwrap the data crypto key. + class GooglePrivacyDlpV2CryptoKey + include Google::Apis::Core::Hashable + + # Include to use an existing data crypto key wrapped by KMS. + # Authorization requires the following IAM permissions when sending a request + # to perform a crypto transformation using a kms-wrapped crypto key: + # dlp.kms.encrypt + # Corresponds to the JSON property `kmsWrapped` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2KmsWrappedCryptoKey] + attr_accessor :kms_wrapped + + # Use this to have a random data crypto key generated. + # It will be discarded after the request finishes. + # Corresponds to the JSON property `transient` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2TransientCryptoKey] + attr_accessor :transient + + # Using raw keys is prone to security risks due to accidentally + # leaking the key. Choose another type of key if possible. + # Corresponds to the JSON property `unwrapped` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2UnwrappedCryptoKey] + attr_accessor :unwrapped + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kms_wrapped = args[:kms_wrapped] if args.key?(:kms_wrapped) + @transient = args[:transient] if args.key?(:transient) + @unwrapped = args[:unwrapped] if args.key?(:unwrapped) + end + end + + # Replaces an identifier with a surrogate using FPE with the FFX + # mode of operation; however when used in the `ReidentifyContent` API method, + # it serves the opposite function by reversing the surrogate back into + # the original identifier. + # The identifier must be encoded as ASCII. + # For a given crypto key and context, the same identifier will be + # replaced with the same surrogate. + # Identifiers must be at least two characters long. + # In the case that the identifier is the empty string, it will be skipped. + # See [Pseudonymization](/dlp/docs/pseudonymization) for example usage. + class GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `commonAlphabet` + # @return [String] + attr_accessor :common_alphabet + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `context` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :context + + # This is a data encryption key (DEK) (as opposed to + # a key encryption key (KEK) stored by KMS). + # When using KMS to wrap/unwrap DEKs, be sure to set an appropriate + # IAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot + # unwrap the data crypto key. + # Corresponds to the JSON property `cryptoKey` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey] + attr_accessor :crypto_key + + # This is supported by mapping these to the alphanumeric characters + # that the FFX mode natively supports. This happens before/after + # encryption/decryption. + # Each character listed must appear only once. + # Number of characters must be in the range [2, 62]. + # This must be encoded as ASCII. + # The order of characters does not matter. + # Corresponds to the JSON property `customAlphabet` + # @return [String] + attr_accessor :custom_alphabet + + # The native way to select the alphabet. Must be in the range [2, 62]. + # Corresponds to the JSON property `radix` + # @return [Fixnum] + attr_accessor :radix + + # Type of information detected by the API. + # Corresponds to the JSON property `surrogateInfoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType] + attr_accessor :surrogate_info_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @common_alphabet = args[:common_alphabet] if args.key?(:common_alphabet) + @context = args[:context] if args.key?(:context) + @crypto_key = args[:crypto_key] if args.key?(:crypto_key) + @custom_alphabet = args[:custom_alphabet] if args.key?(:custom_alphabet) + @radix = args[:radix] if args.key?(:radix) + @surrogate_info_type = args[:surrogate_info_type] if args.key?(:surrogate_info_type) + end + end + + # Custom information type provided by the user. Used to find domain-specific + # sensitive information configurable to the data in question. + class GooglePrivacyDlpV2CustomInfoType + include Google::Apis::Core::Hashable + + # Set of detection rules to apply to all findings of this custom info type. + # Rules are applied in order that they are specified. Not supported for the + # `surrogate_type` custom info type. + # Corresponds to the JSON property `detectionRules` + # @return [Array] + attr_accessor :detection_rules + + # Custom information type based on a dictionary of words or phrases. This can + # be used to match sensitive information specific to the data, such as a list + # of employee IDs or job titles. + # Dictionary words are case-insensitive and all characters other than letters + # and digits in the unicode [Basic Multilingual + # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29# + # Basic_Multilingual_Plane) + # will be replaced with whitespace when scanning for matches, so the + # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson", + # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters + # surrounding any match must be of a different type than the adjacent + # characters within the word, so letters must be next to non-letters and + # digits next to non-digits. For example, the dictionary word "jen" will + # match the first three letters of the text "jen123" but will return no + # matches for "jennifer". + # Dictionary words containing a large number of characters that are not + # letters or digits may result in unexpected findings because such characters + # are treated as whitespace. + # Corresponds to the JSON property `dictionary` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Dictionary] + attr_accessor :dictionary + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType] + attr_accessor :info_type + + # Likelihood to return for this custom info type. This base value can be + # altered by a detection rule if the finding meets the criteria specified by + # the rule. Defaults to `VERY_LIKELY` if not specified. + # Corresponds to the JSON property `likelihood` + # @return [String] + attr_accessor :likelihood + + # Message defining a custom regular expression. + # Corresponds to the JSON property `regex` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Regex] + attr_accessor :regex + + # Message for detecting output from deidentification transformations + # such as + # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/content/deidentify# + # CryptoReplaceFfxFpeConfig). + # These types of transformations are + # those that perform pseudonymization, thereby producing a "surrogate" as + # output. This should be used in conjunction with a field on the + # transformation such as `surrogate_info_type`. This custom info type does + # not support the use of `detection_rules`. + # Corresponds to the JSON property `surrogateType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2SurrogateType] + attr_accessor :surrogate_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @detection_rules = args[:detection_rules] if args.key?(:detection_rules) + @dictionary = args[:dictionary] if args.key?(:dictionary) + @info_type = args[:info_type] if args.key?(:info_type) + @likelihood = args[:likelihood] if args.key?(:likelihood) + @regex = args[:regex] if args.key?(:regex) + @surrogate_type = args[:surrogate_type] if args.key?(:surrogate_type) + end + end + + # Record key for a finding in Cloud Datastore. + class GooglePrivacyDlpV2DatastoreKey + include Google::Apis::Core::Hashable + + # A unique identifier for a Datastore entity. + # If a key's partition ID or any of its path kinds or names are + # reserved/read-only, the key is reserved/read-only. + # A reserved/read-only key is forbidden in certain documented contexts. + # Corresponds to the JSON property `entityKey` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Key] + attr_accessor :entity_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entity_key = args[:entity_key] if args.key?(:entity_key) + end + end + + # Options defining a data set within Google Cloud Datastore. + class GooglePrivacyDlpV2DatastoreOptions + include Google::Apis::Core::Hashable + + # A representation of a Datastore kind. + # Corresponds to the JSON property `kind` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2KindExpression] + attr_accessor :kind + + # Datastore partition ID. + # A partition ID identifies a grouping of entities. The grouping is always + # by project and namespace, however the namespace ID may be empty. + # A partition ID contains several dimensions: + # project ID and namespace ID. + # Corresponds to the JSON property `partitionId` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2PartitionId] + attr_accessor :partition_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @partition_id = args[:partition_id] if args.key?(:partition_id) + end + end + + # Shifts dates by random number of days, with option to be consistent for the + # same context. + class GooglePrivacyDlpV2DateShiftConfig + include Google::Apis::Core::Hashable + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `context` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :context + + # This is a data encryption key (DEK) (as opposed to + # a key encryption key (KEK) stored by KMS). + # When using KMS to wrap/unwrap DEKs, be sure to set an appropriate + # IAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot + # unwrap the data crypto key. + # Corresponds to the JSON property `cryptoKey` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey] + attr_accessor :crypto_key + + # For example, -5 means shift date to at most 5 days back in the past. + # [Required] + # Corresponds to the JSON property `lowerBoundDays` + # @return [Fixnum] + attr_accessor :lower_bound_days + + # Range of shift in days. Actual shift will be selected at random within this + # range (inclusive ends). Negative means shift to earlier in time. Must not + # be more than 365250 days (1000 years) each direction. + # For example, 3 means shift date to at most 3 days into the future. + # [Required] + # Corresponds to the JSON property `upperBoundDays` + # @return [Fixnum] + attr_accessor :upper_bound_days + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @context = args[:context] if args.key?(:context) + @crypto_key = args[:crypto_key] if args.key?(:crypto_key) + @lower_bound_days = args[:lower_bound_days] if args.key?(:lower_bound_days) + @upper_bound_days = args[:upper_bound_days] if args.key?(:upper_bound_days) + end + end + + # Message for a date time object. + class GooglePrivacyDlpV2DateTime + include Google::Apis::Core::Hashable + + # Represents a whole calendar date, e.g. date of birth. The time of day and + # time zone are either specified elsewhere or are not significant. The date + # is relative to the Proleptic Gregorian Calendar. The day may be 0 to + # represent a year and month where the day is not significant, e.g. credit card + # expiration date. The year may be 0 to represent a month and day independent + # of year, e.g. anniversary date. Related types are google.type.TimeOfDay + # and `google.protobuf.Timestamp`. + # Corresponds to the JSON property `date` + # @return [Google::Apis::DlpV2::GoogleTypeDate] + attr_accessor :date + + # + # Corresponds to the JSON property `dayOfWeek` + # @return [String] + attr_accessor :day_of_week + + # Represents a time of day. The date and time zone are either not significant + # or are specified elsewhere. An API may choose to allow leap seconds. Related + # types are google.type.Date and `google.protobuf.Timestamp`. + # Corresponds to the JSON property `time` + # @return [Google::Apis::DlpV2::GoogleTypeTimeOfDay] + attr_accessor :time + + # + # Corresponds to the JSON property `timeZone` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2TimeZone] + attr_accessor :time_zone + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @date = args[:date] if args.key?(:date) + @day_of_week = args[:day_of_week] if args.key?(:day_of_week) + @time = args[:time] if args.key?(:time) + @time_zone = args[:time_zone] if args.key?(:time_zone) + end + end + + # The configuration that controls how the data will change. + class GooglePrivacyDlpV2DeidentifyConfig + include Google::Apis::Core::Hashable + + # A type of transformation that will scan unstructured text and + # apply various `PrimitiveTransformation`s to each finding, where the + # transformation is applied to only values that were identified as a specific + # info_type. + # Corresponds to the JSON property `infoTypeTransformations` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeTransformations] + attr_accessor :info_type_transformations + + # A type of transformation that is applied over structured data such as a + # table. + # Corresponds to the JSON property `recordTransformations` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2RecordTransformations] + attr_accessor :record_transformations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @info_type_transformations = args[:info_type_transformations] if args.key?(:info_type_transformations) + @record_transformations = args[:record_transformations] if args.key?(:record_transformations) + end + end + + # Request to de-identify a list of items. + class GooglePrivacyDlpV2DeidentifyContentRequest + include Google::Apis::Core::Hashable + + # The configuration that controls how the data will change. + # Corresponds to the JSON property `deidentifyConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyConfig] + attr_accessor :deidentify_config + + # Optional template to use. Any configuration directly specified in + # deidentify_config will override those set in the template. Singular fields + # that are set in this request will replace their corresponding fields in the + # template. Repeated fields are appended. Singular sub-messages and groups + # are recursively merged. + # Corresponds to the JSON property `deidentifyTemplateName` + # @return [String] + attr_accessor :deidentify_template_name + + # Configuration description of the scanning process. + # When used with redactContent only info_types and min_likelihood are currently + # used. + # Corresponds to the JSON property `inspectConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig] + attr_accessor :inspect_config + + # Optional template to use. Any configuration directly specified in + # inspect_config will override those set in the template. Singular fields + # that are set in this request will replace their corresponding fields in the + # template. Repeated fields are appended. Singular sub-messages and groups + # are recursively merged. + # Corresponds to the JSON property `inspectTemplateName` + # @return [String] + attr_accessor :inspect_template_name + + # Container structure for the content to inspect. + # Corresponds to the JSON property `item` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem] + attr_accessor :item + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deidentify_config = args[:deidentify_config] if args.key?(:deidentify_config) + @deidentify_template_name = args[:deidentify_template_name] if args.key?(:deidentify_template_name) + @inspect_config = args[:inspect_config] if args.key?(:inspect_config) + @inspect_template_name = args[:inspect_template_name] if args.key?(:inspect_template_name) + @item = args[:item] if args.key?(:item) + end + end + + # Results of de-identifying a ContentItem. + class GooglePrivacyDlpV2DeidentifyContentResponse + include Google::Apis::Core::Hashable + + # Container structure for the content to inspect. + # Corresponds to the JSON property `item` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem] + attr_accessor :item + + # Overview of the modifications that occurred. + # Corresponds to the JSON property `overview` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2TransformationOverview] + attr_accessor :overview + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @item = args[:item] if args.key?(:item) + @overview = args[:overview] if args.key?(:overview) + end + end + + # The DeidentifyTemplates contains instructions on how to deidentify content. + class GooglePrivacyDlpV2DeidentifyTemplate + include Google::Apis::Core::Hashable + + # The creation timestamp of a inspectTemplate, output only field. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The configuration that controls how the data will change. + # Corresponds to the JSON property `deidentifyConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyConfig] + attr_accessor :deidentify_config + + # Short description (max 256 chars). + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Display name (max 256 chars). + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The template name. Output only. + # The template will have one of the following formats: + # `projects/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID` OR + # `organizations/ORGANIZATION_ID/deidentifyTemplates/TEMPLATE_ID` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The last update timestamp of a inspectTemplate, output only field. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @deidentify_config = args[:deidentify_config] if args.key?(:deidentify_config) + @description = args[:description] if args.key?(:description) + @display_name = args[:display_name] if args.key?(:display_name) + @name = args[:name] if args.key?(:name) + @update_time = args[:update_time] if args.key?(:update_time) + end + end + + # Rule for modifying a custom info type to alter behavior under certain + # circumstances, depending on the specific details of the rule. Not supported + # for the `surrogate_type` custom info type. + class GooglePrivacyDlpV2DetectionRule + include Google::Apis::Core::Hashable + + # Detection rule that adjusts the likelihood of findings within a certain + # proximity of hotwords. + # Corresponds to the JSON property `hotwordRule` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2HotwordRule] + attr_accessor :hotword_rule + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @hotword_rule = args[:hotword_rule] if args.key?(:hotword_rule) + end + end + + # Custom information type based on a dictionary of words or phrases. This can + # be used to match sensitive information specific to the data, such as a list + # of employee IDs or job titles. + # Dictionary words are case-insensitive and all characters other than letters + # and digits in the unicode [Basic Multilingual + # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29# + # Basic_Multilingual_Plane) + # will be replaced with whitespace when scanning for matches, so the + # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson", + # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters + # surrounding any match must be of a different type than the adjacent + # characters within the word, so letters must be next to non-letters and + # digits next to non-digits. For example, the dictionary word "jen" will + # match the first three letters of the text "jen123" but will return no + # matches for "jennifer". + # Dictionary words containing a large number of characters that are not + # letters or digits may result in unexpected findings because such characters + # are treated as whitespace. + class GooglePrivacyDlpV2Dictionary + include Google::Apis::Core::Hashable + + # Message defining a list of words or phrases to search for in the data. + # Corresponds to the JSON property `wordList` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2WordList] + attr_accessor :word_list + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @word_list = args[:word_list] if args.key?(:word_list) + end + end + + # Combines all of the information about a DLP job. + class GooglePrivacyDlpV2DlpJob + include Google::Apis::Core::Hashable + + # Time when the job was created. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # Time when the job finished. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # A stream of errors encountered running the job. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + # The results of an inspect DataSource job. + # Corresponds to the JSON property `inspectDetails` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectDataSourceDetails] + attr_accessor :inspect_details + + # If created by a job trigger, the resource name of the trigger that + # instantiated the job. + # Corresponds to the JSON property `jobTriggerName` + # @return [String] + attr_accessor :job_trigger_name + + # The server-assigned name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Result of a risk analysis operation request. + # Corresponds to the JSON property `riskDetails` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails] + attr_accessor :risk_details + + # Time when the job started. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # State of a job. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + # The type of job. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @end_time = args[:end_time] if args.key?(:end_time) + @errors = args[:errors] if args.key?(:errors) + @inspect_details = args[:inspect_details] if args.key?(:inspect_details) + @job_trigger_name = args[:job_trigger_name] if args.key?(:job_trigger_name) + @name = args[:name] if args.key?(:name) + @risk_details = args[:risk_details] if args.key?(:risk_details) + @start_time = args[:start_time] if args.key?(:start_time) + @state = args[:state] if args.key?(:state) + @type = args[:type] if args.key?(:type) + end + end + + # Location of a finding within a document. + class GooglePrivacyDlpV2DocumentLocation + include Google::Apis::Core::Hashable + + # Offset of the line, from the beginning of the file, where the finding + # is located. + # Corresponds to the JSON property `fileOffset` + # @return [Fixnum] + attr_accessor :file_offset + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @file_offset = args[:file_offset] if args.key?(:file_offset) + end + end + + # Details information about an error encountered during job execution or + # the results of an unsuccessful activation of the JobTrigger. + # Output only field. + class GooglePrivacyDlpV2Error + include Google::Apis::Core::Hashable + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `details` + # @return [Google::Apis::DlpV2::GoogleRpcStatus] + attr_accessor :details + + # The times the error occurred. + # Corresponds to the JSON property `timestamps` + # @return [Array] + attr_accessor :timestamps + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @details = args[:details] if args.key?(:details) + @timestamps = args[:timestamps] if args.key?(:timestamps) + end + end + + # An expression, consisting or an operator and conditions. + class GooglePrivacyDlpV2Expressions + include Google::Apis::Core::Hashable + + # A collection of conditions. + # Corresponds to the JSON property `conditions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Conditions] + attr_accessor :conditions + + # The operator to apply to the result of conditions. Default and currently + # only supported value is `AND`. + # Corresponds to the JSON property `logicalOperator` + # @return [String] + attr_accessor :logical_operator + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @conditions = args[:conditions] if args.key?(:conditions) + @logical_operator = args[:logical_operator] if args.key?(:logical_operator) + end + end + + # General identifier of a data field in a storage service. + class GooglePrivacyDlpV2FieldId + include Google::Apis::Core::Hashable + + # Name describing the field. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # The transformation to apply to the field. + class GooglePrivacyDlpV2FieldTransformation + include Google::Apis::Core::Hashable + + # A condition for determining whether a transformation should be applied to + # a field. + # Corresponds to the JSON property `condition` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2RecordCondition] + attr_accessor :condition + + # Input field(s) to apply the transformation to. [required] + # Corresponds to the JSON property `fields` + # @return [Array] + attr_accessor :fields + + # A type of transformation that will scan unstructured text and + # apply various `PrimitiveTransformation`s to each finding, where the + # transformation is applied to only values that were identified as a specific + # info_type. + # Corresponds to the JSON property `infoTypeTransformations` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeTransformations] + attr_accessor :info_type_transformations + + # A rule for transforming a value. + # Corresponds to the JSON property `primitiveTransformation` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2PrimitiveTransformation] + attr_accessor :primitive_transformation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @condition = args[:condition] if args.key?(:condition) + @fields = args[:fields] if args.key?(:fields) + @info_type_transformations = args[:info_type_transformations] if args.key?(:info_type_transformations) + @primitive_transformation = args[:primitive_transformation] if args.key?(:primitive_transformation) + end + end + + # Set of files to scan. + class GooglePrivacyDlpV2FileSet + include Google::Apis::Core::Hashable + + # The url, in the format `gs:///`. Trailing wildcard in the + # path is allowed. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @url = args[:url] if args.key?(:url) + end + end + + # Represents a piece of potentially sensitive content. + class GooglePrivacyDlpV2Finding + include Google::Apis::Core::Hashable + + # Timestamp when finding was detected. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType] + attr_accessor :info_type + + # Estimate of how likely it is that the `info_type` is correct. + # Corresponds to the JSON property `likelihood` + # @return [String] + attr_accessor :likelihood + + # Specifies the location of the finding. + # Corresponds to the JSON property `location` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Location] + attr_accessor :location + + # The content that was found. Even if the content is not textual, it + # may be converted to a textual representation here. + # Provided if requested by the `InspectConfig` and the finding is + # less than or equal to 4096 bytes long. If the finding exceeds 4096 bytes + # in length, the quote may be omitted. + # Corresponds to the JSON property `quote` + # @return [String] + attr_accessor :quote + + # Message for infoType-dependent details parsed from quote. + # Corresponds to the JSON property `quoteInfo` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2QuoteInfo] + attr_accessor :quote_info + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @info_type = args[:info_type] if args.key?(:info_type) + @likelihood = args[:likelihood] if args.key?(:likelihood) + @location = args[:location] if args.key?(:location) + @quote = args[:quote] if args.key?(:quote) + @quote_info = args[:quote_info] if args.key?(:quote_info) + end + end + + # + class GooglePrivacyDlpV2FindingLimits + include Google::Apis::Core::Hashable + + # Configuration of findings limit given for specified infoTypes. + # Corresponds to the JSON property `maxFindingsPerInfoType` + # @return [Array] + attr_accessor :max_findings_per_info_type + + # Max number of findings that will be returned for each item scanned. + # When set within `InspectDataSourceRequest`, + # the maximum returned is 1000 regardless if this is set higher. + # When set within `InspectContentRequest`, this field is ignored. + # Corresponds to the JSON property `maxFindingsPerItem` + # @return [Fixnum] + attr_accessor :max_findings_per_item + + # Max number of findings that will be returned per request/job. + # When set within `InspectContentRequest`, the maximum returned is 1000 + # regardless if this is set higher. + # Corresponds to the JSON property `maxFindingsPerRequest` + # @return [Fixnum] + attr_accessor :max_findings_per_request + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max_findings_per_info_type = args[:max_findings_per_info_type] if args.key?(:max_findings_per_info_type) + @max_findings_per_item = args[:max_findings_per_item] if args.key?(:max_findings_per_item) + @max_findings_per_request = args[:max_findings_per_request] if args.key?(:max_findings_per_request) + end + end + + # Buckets values based on fixed size ranges. The + # Bucketing transformation can provide all of this functionality, + # but requires more configuration. This message is provided as a convenience to + # the user for simple bucketing strategies. + # The transformed value will be a hyphenated string of + # -, i.e if lower_bound = 10 and upper_bound = 20 + # all values that are within this bucket will be replaced with "10-20". + # This can be used on data of type: double, long. + # If the bound Value type differs from the type of data + # being transformed, we will first attempt converting the type of the data to + # be transformed to match the type of the bound before comparing. + class GooglePrivacyDlpV2FixedSizeBucketingConfig + include Google::Apis::Core::Hashable + + # Size of each bucket (except for minimum and maximum buckets). So if + # `lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the + # following buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, 50-60, + # 60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works. [Required]. + # Corresponds to the JSON property `bucketSize` + # @return [Float] + attr_accessor :bucket_size + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `lowerBound` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Value] + attr_accessor :lower_bound + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `upperBound` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Value] + attr_accessor :upper_bound + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_size = args[:bucket_size] if args.key?(:bucket_size) + @lower_bound = args[:lower_bound] if args.key?(:lower_bound) + @upper_bound = args[:upper_bound] if args.key?(:upper_bound) + end + end + + # Detection rule that adjusts the likelihood of findings within a certain + # proximity of hotwords. + class GooglePrivacyDlpV2HotwordRule + include Google::Apis::Core::Hashable + + # Message defining a custom regular expression. + # Corresponds to the JSON property `hotwordRegex` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Regex] + attr_accessor :hotword_regex + + # Message for specifying an adjustment to the likelihood of a finding as + # part of a detection rule. + # Corresponds to the JSON property `likelihoodAdjustment` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2LikelihoodAdjustment] + attr_accessor :likelihood_adjustment + + # Message for specifying a window around a finding to apply a detection + # rule. + # Corresponds to the JSON property `proximity` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Proximity] + attr_accessor :proximity + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @hotword_regex = args[:hotword_regex] if args.key?(:hotword_regex) + @likelihood_adjustment = args[:likelihood_adjustment] if args.key?(:likelihood_adjustment) + @proximity = args[:proximity] if args.key?(:proximity) + end + end + + # Location of the finding within an image. + class GooglePrivacyDlpV2ImageLocation + include Google::Apis::Core::Hashable + + # Bounding boxes locating the pixels within the image containing the finding. + # Corresponds to the JSON property `boundingBoxes` + # @return [Array] + attr_accessor :bounding_boxes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bounding_boxes = args[:bounding_boxes] if args.key?(:bounding_boxes) + end + end + + # Configuration for determining how redaction of images should occur. + class GooglePrivacyDlpV2ImageRedactionConfig + include Google::Apis::Core::Hashable + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType] + attr_accessor :info_type + + # If true, all text found in the image, regardless whether it matches an + # info_type, is redacted. + # Corresponds to the JSON property `redactAllText` + # @return [Boolean] + attr_accessor :redact_all_text + alias_method :redact_all_text?, :redact_all_text + + # Represents a color in the RGB color space. + # Corresponds to the JSON property `redactionColor` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Color] + attr_accessor :redaction_color + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @info_type = args[:info_type] if args.key?(:info_type) + @redact_all_text = args[:redact_all_text] if args.key?(:redact_all_text) + @redaction_color = args[:redaction_color] if args.key?(:redaction_color) + end + end + + # Type of information detected by the API. + class GooglePrivacyDlpV2InfoType + include Google::Apis::Core::Hashable + + # Name of the information type. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # InfoType description. + class GooglePrivacyDlpV2InfoTypeDescription + include Google::Apis::Core::Hashable + + # Human readable form of the infoType name. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Internal name of the infoType. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Which parts of the API supports this InfoType. + # Corresponds to the JSON property `supportedBy` + # @return [Array] + attr_accessor :supported_by + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @name = args[:name] if args.key?(:name) + @supported_by = args[:supported_by] if args.key?(:supported_by) + end + end + + # Max findings configuration per infoType, per content item or long + # running DlpJob. + class GooglePrivacyDlpV2InfoTypeLimit + include Google::Apis::Core::Hashable + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType] + attr_accessor :info_type + + # Max findings limit for the given infoType. + # Corresponds to the JSON property `maxFindings` + # @return [Fixnum] + attr_accessor :max_findings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @info_type = args[:info_type] if args.key?(:info_type) + @max_findings = args[:max_findings] if args.key?(:max_findings) + end + end + + # Statistics regarding a specific InfoType. + class GooglePrivacyDlpV2InfoTypeStats + include Google::Apis::Core::Hashable + + # Number of findings for this infoType. + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType] + attr_accessor :info_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @count = args[:count] if args.key?(:count) + @info_type = args[:info_type] if args.key?(:info_type) + end + end + + # A transformation to apply to text that is identified as a specific + # info_type. + class GooglePrivacyDlpV2InfoTypeTransformation + include Google::Apis::Core::Hashable + + # InfoTypes to apply the transformation to. Empty list will match all + # available infoTypes for this transformation. + # Corresponds to the JSON property `infoTypes` + # @return [Array] + attr_accessor :info_types + + # A rule for transforming a value. + # Corresponds to the JSON property `primitiveTransformation` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2PrimitiveTransformation] + attr_accessor :primitive_transformation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @info_types = args[:info_types] if args.key?(:info_types) + @primitive_transformation = args[:primitive_transformation] if args.key?(:primitive_transformation) + end + end + + # A type of transformation that will scan unstructured text and + # apply various `PrimitiveTransformation`s to each finding, where the + # transformation is applied to only values that were identified as a specific + # info_type. + class GooglePrivacyDlpV2InfoTypeTransformations + include Google::Apis::Core::Hashable + + # Transformation for each infoType. Cannot specify more than one + # for a given infoType. [required] + # Corresponds to the JSON property `transformations` + # @return [Array] + attr_accessor :transformations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @transformations = args[:transformations] if args.key?(:transformations) + end + end + + # Configuration description of the scanning process. + # When used with redactContent only info_types and min_likelihood are currently + # used. + class GooglePrivacyDlpV2InspectConfig + include Google::Apis::Core::Hashable + + # List of options defining data content to scan. + # If empty, text, images, and other content will be included. + # Corresponds to the JSON property `contentOptions` + # @return [Array] + attr_accessor :content_options + + # Custom infoTypes provided by the user. + # Corresponds to the JSON property `customInfoTypes` + # @return [Array] + attr_accessor :custom_info_types + + # When true, excludes type information of the findings. + # Corresponds to the JSON property `excludeInfoTypes` + # @return [Boolean] + attr_accessor :exclude_info_types + alias_method :exclude_info_types?, :exclude_info_types + + # When true, a contextual quote from the data that triggered a finding is + # included in the response; see Finding.quote. + # Corresponds to the JSON property `includeQuote` + # @return [Boolean] + attr_accessor :include_quote + alias_method :include_quote?, :include_quote + + # Restricts what info_types to look for. The values must correspond to + # InfoType values returned by ListInfoTypes or found in documentation. + # Empty info_types runs all enabled detectors. + # Corresponds to the JSON property `infoTypes` + # @return [Array] + attr_accessor :info_types + + # + # Corresponds to the JSON property `limits` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FindingLimits] + attr_accessor :limits + + # Only returns findings equal or above this threshold. The default is + # POSSIBLE. + # Corresponds to the JSON property `minLikelihood` + # @return [String] + attr_accessor :min_likelihood + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @content_options = args[:content_options] if args.key?(:content_options) + @custom_info_types = args[:custom_info_types] if args.key?(:custom_info_types) + @exclude_info_types = args[:exclude_info_types] if args.key?(:exclude_info_types) + @include_quote = args[:include_quote] if args.key?(:include_quote) + @info_types = args[:info_types] if args.key?(:info_types) + @limits = args[:limits] if args.key?(:limits) + @min_likelihood = args[:min_likelihood] if args.key?(:min_likelihood) + end + end + + # Request to search for potentially sensitive info in a ContentItem. + class GooglePrivacyDlpV2InspectContentRequest + include Google::Apis::Core::Hashable + + # Configuration description of the scanning process. + # When used with redactContent only info_types and min_likelihood are currently + # used. + # Corresponds to the JSON property `inspectConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig] + attr_accessor :inspect_config + + # Optional template to use. Any configuration directly specified in + # inspect_config will override those set in the template. Singular fields + # that are set in this request will replace their corresponding fields in the + # template. Repeated fields are appended. Singular sub-messages and groups + # are recursively merged. + # Corresponds to the JSON property `inspectTemplateName` + # @return [String] + attr_accessor :inspect_template_name + + # Container structure for the content to inspect. + # Corresponds to the JSON property `item` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem] + attr_accessor :item + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @inspect_config = args[:inspect_config] if args.key?(:inspect_config) + @inspect_template_name = args[:inspect_template_name] if args.key?(:inspect_template_name) + @item = args[:item] if args.key?(:item) + end + end + + # Results of inspecting an item. + class GooglePrivacyDlpV2InspectContentResponse + include Google::Apis::Core::Hashable + + # All the findings for a single scanned item. + # Corresponds to the JSON property `result` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectResult] + attr_accessor :result + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @result = args[:result] if args.key?(:result) + end + end + + # The results of an inspect DataSource job. + class GooglePrivacyDlpV2InspectDataSourceDetails + include Google::Apis::Core::Hashable + + # The configuration used for this job. + # Corresponds to the JSON property `requestedOptions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2RequestedOptions] + attr_accessor :requested_options + + # A summary of the outcome of this inspect job. + # Corresponds to the JSON property `result` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Result] + attr_accessor :result + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @requested_options = args[:requested_options] if args.key?(:requested_options) + @result = args[:result] if args.key?(:result) + end + end + + # + class GooglePrivacyDlpV2InspectJobConfig + include Google::Apis::Core::Hashable + + # Actions to execute at the completion of the job. Are executed in the order + # provided. + # Corresponds to the JSON property `actions` + # @return [Array] + attr_accessor :actions + + # Configuration description of the scanning process. + # When used with redactContent only info_types and min_likelihood are currently + # used. + # Corresponds to the JSON property `inspectConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig] + attr_accessor :inspect_config + + # If provided, will be used as the default for all values in InspectConfig. + # `inspect_config` will be merged into the values persisted as part of the + # template. + # Corresponds to the JSON property `inspectTemplateName` + # @return [String] + attr_accessor :inspect_template_name + + # Shared message indicating Cloud storage type. + # Corresponds to the JSON property `storageConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2StorageConfig] + attr_accessor :storage_config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @actions = args[:actions] if args.key?(:actions) + @inspect_config = args[:inspect_config] if args.key?(:inspect_config) + @inspect_template_name = args[:inspect_template_name] if args.key?(:inspect_template_name) + @storage_config = args[:storage_config] if args.key?(:storage_config) + end + end + + # All the findings for a single scanned item. + class GooglePrivacyDlpV2InspectResult + include Google::Apis::Core::Hashable + + # List of findings for an item. + # Corresponds to the JSON property `findings` + # @return [Array] + attr_accessor :findings + + # If true, then this item might have more findings than were returned, + # and the findings returned are an arbitrary subset of all findings. + # The findings list might be truncated because the input items were too + # large, or because the server reached the maximum amount of resources + # allowed for a single API call. For best results, divide the input into + # smaller batches. + # Corresponds to the JSON property `findingsTruncated` + # @return [Boolean] + attr_accessor :findings_truncated + alias_method :findings_truncated?, :findings_truncated + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @findings = args[:findings] if args.key?(:findings) + @findings_truncated = args[:findings_truncated] if args.key?(:findings_truncated) + end + end + + # The inspectTemplate contains a configuration (set of types of sensitive data + # to be detected) to be used anywhere you otherwise would normally specify + # InspectConfig. + class GooglePrivacyDlpV2InspectTemplate + include Google::Apis::Core::Hashable + + # The creation timestamp of a inspectTemplate, output only field. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # Short description (max 256 chars). + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Display name (max 256 chars). + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Configuration description of the scanning process. + # When used with redactContent only info_types and min_likelihood are currently + # used. + # Corresponds to the JSON property `inspectConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig] + attr_accessor :inspect_config + + # The template name. Output only. + # The template will have one of the following formats: + # `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR + # `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID` + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The last update timestamp of a inspectTemplate, output only field. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @description = args[:description] if args.key?(:description) + @display_name = args[:display_name] if args.key?(:display_name) + @inspect_config = args[:inspect_config] if args.key?(:inspect_config) + @name = args[:name] if args.key?(:name) + @update_time = args[:update_time] if args.key?(:update_time) + end + end + + # Contains a configuration to make dlp api calls on a repeating basis. + class GooglePrivacyDlpV2JobTrigger + include Google::Apis::Core::Hashable + + # The creation timestamp of a triggeredJob, output only field. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # User provided description (max 256 chars) + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Display name (max 100 chars) + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # A stream of errors encountered when the trigger was activated. Repeated + # errors may result in the JobTrigger automaticaly being paused. + # Will return the last 100 errors. Whenever the JobTrigger is modified + # this list will be cleared. Output only field. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + # + # Corresponds to the JSON property `inspectJob` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectJobConfig] + attr_accessor :inspect_job + + # The timestamp of the last time this trigger executed, output only field. + # Corresponds to the JSON property `lastRunTime` + # @return [String] + attr_accessor :last_run_time + + # Unique resource name for the triggeredJob, assigned by the service when the + # triggeredJob is created, for example + # `projects/dlp-test-project/triggeredJobs/53234423`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # A status for this trigger. [required] + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # A list of triggers which will be OR'ed together. Only one in the list + # needs to trigger for a job to be started. The list may contain only + # a single Schedule trigger and must have at least one object. + # Corresponds to the JSON property `triggers` + # @return [Array] + attr_accessor :triggers + + # The last update timestamp of a triggeredJob, output only field. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @description = args[:description] if args.key?(:description) + @display_name = args[:display_name] if args.key?(:display_name) + @errors = args[:errors] if args.key?(:errors) + @inspect_job = args[:inspect_job] if args.key?(:inspect_job) + @last_run_time = args[:last_run_time] if args.key?(:last_run_time) + @name = args[:name] if args.key?(:name) + @status = args[:status] if args.key?(:status) + @triggers = args[:triggers] if args.key?(:triggers) + @update_time = args[:update_time] if args.key?(:update_time) + end + end + + # k-anonymity metric, used for analysis of reidentification risk. + class GooglePrivacyDlpV2KAnonymityConfig + include Google::Apis::Core::Hashable + + # Set of fields to compute k-anonymity over. When multiple fields are + # specified, they are considered a single composite key. Structs and + # repeated data types are not supported; however, nested fields are + # supported so long as they are not structs themselves or nested within + # a repeated field. + # Corresponds to the JSON property `quasiIds` + # @return [Array] + attr_accessor :quasi_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @quasi_ids = args[:quasi_ids] if args.key?(:quasi_ids) + end + end + + # The set of columns' values that share the same ldiversity value + class GooglePrivacyDlpV2KAnonymityEquivalenceClass + include Google::Apis::Core::Hashable + + # Size of the equivalence class, for example number of rows with the + # above set of values. + # Corresponds to the JSON property `equivalenceClassSize` + # @return [Fixnum] + attr_accessor :equivalence_class_size + + # Set of values defining the equivalence class. One value per + # quasi-identifier column in the original KAnonymity metric message. + # The order is always the same as the original request. + # Corresponds to the JSON property `quasiIdsValues` + # @return [Array] + attr_accessor :quasi_ids_values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @equivalence_class_size = args[:equivalence_class_size] if args.key?(:equivalence_class_size) + @quasi_ids_values = args[:quasi_ids_values] if args.key?(:quasi_ids_values) + end + end + + # + class GooglePrivacyDlpV2KAnonymityHistogramBucket + include Google::Apis::Core::Hashable + + # Total number of equivalence classes in this bucket. + # Corresponds to the JSON property `bucketSize` + # @return [Fixnum] + attr_accessor :bucket_size + + # Total number of distinct equivalence classes in this bucket. + # Corresponds to the JSON property `bucketValueCount` + # @return [Fixnum] + attr_accessor :bucket_value_count + + # Sample of equivalence classes in this bucket. The total number of + # classes returned per bucket is capped at 20. + # Corresponds to the JSON property `bucketValues` + # @return [Array] + attr_accessor :bucket_values + + # Lower bound on the size of the equivalence classes in this bucket. + # Corresponds to the JSON property `equivalenceClassSizeLowerBound` + # @return [Fixnum] + attr_accessor :equivalence_class_size_lower_bound + + # Upper bound on the size of the equivalence classes in this bucket. + # Corresponds to the JSON property `equivalenceClassSizeUpperBound` + # @return [Fixnum] + attr_accessor :equivalence_class_size_upper_bound + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_size = args[:bucket_size] if args.key?(:bucket_size) + @bucket_value_count = args[:bucket_value_count] if args.key?(:bucket_value_count) + @bucket_values = args[:bucket_values] if args.key?(:bucket_values) + @equivalence_class_size_lower_bound = args[:equivalence_class_size_lower_bound] if args.key?(:equivalence_class_size_lower_bound) + @equivalence_class_size_upper_bound = args[:equivalence_class_size_upper_bound] if args.key?(:equivalence_class_size_upper_bound) + end + end + + # Result of the k-anonymity computation. + class GooglePrivacyDlpV2KAnonymityResult + include Google::Apis::Core::Hashable + + # Histogram of k-anonymity equivalence classes. + # Corresponds to the JSON property `equivalenceClassHistogramBuckets` + # @return [Array] + attr_accessor :equivalence_class_histogram_buckets + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @equivalence_class_histogram_buckets = args[:equivalence_class_histogram_buckets] if args.key?(:equivalence_class_histogram_buckets) + end + end + + # Reidentifiability metric. This corresponds to a risk model similar to what + # is called "journalist risk" in the literature, except the attack dataset is + # statistically modeled instead of being perfectly known. This can be done + # using publicly available data (like the US Census), or using a custom + # statistical model (indicated as one or several BigQuery tables), or by + # extrapolating from the distribution of values in the input dataset. + class GooglePrivacyDlpV2KMapEstimationConfig + include Google::Apis::Core::Hashable + + # Several auxiliary tables can be used in the analysis. Each custom_tag + # used to tag a quasi-identifiers column must appear in exactly one column + # of one auxiliary table. + # Corresponds to the JSON property `auxiliaryTables` + # @return [Array] + attr_accessor :auxiliary_tables + + # Fields considered to be quasi-identifiers. No two columns can have the + # same tag. [required] + # Corresponds to the JSON property `quasiIds` + # @return [Array] + attr_accessor :quasi_ids + + # ISO 3166-1 alpha-2 region code to use in the statistical modeling. + # Required if no column is tagged with a region-specific InfoType (like + # US_ZIP_5) or a region code. + # Corresponds to the JSON property `regionCode` + # @return [String] + attr_accessor :region_code + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auxiliary_tables = args[:auxiliary_tables] if args.key?(:auxiliary_tables) + @quasi_ids = args[:quasi_ids] if args.key?(:quasi_ids) + @region_code = args[:region_code] if args.key?(:region_code) + end + end + + # A KMapEstimationHistogramBucket message with the following values: + # min_anonymity: 3 + # max_anonymity: 5 + # frequency: 42 + # means that there are 42 records whose quasi-identifier values correspond + # to 3, 4 or 5 people in the overlying population. An important particular + # case is when min_anonymity = max_anonymity = 1: the frequency field then + # corresponds to the number of uniquely identifiable records. + class GooglePrivacyDlpV2KMapEstimationHistogramBucket + include Google::Apis::Core::Hashable + + # Number of records within these anonymity bounds. + # Corresponds to the JSON property `bucketSize` + # @return [Fixnum] + attr_accessor :bucket_size + + # Total number of distinct quasi-identifier tuple values in this bucket. + # Corresponds to the JSON property `bucketValueCount` + # @return [Fixnum] + attr_accessor :bucket_value_count + + # Sample of quasi-identifier tuple values in this bucket. The total + # number of classes returned per bucket is capped at 20. + # Corresponds to the JSON property `bucketValues` + # @return [Array] + attr_accessor :bucket_values + + # Always greater than or equal to min_anonymity. + # Corresponds to the JSON property `maxAnonymity` + # @return [Fixnum] + attr_accessor :max_anonymity + + # Always positive. + # Corresponds to the JSON property `minAnonymity` + # @return [Fixnum] + attr_accessor :min_anonymity + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_size = args[:bucket_size] if args.key?(:bucket_size) + @bucket_value_count = args[:bucket_value_count] if args.key?(:bucket_value_count) + @bucket_values = args[:bucket_values] if args.key?(:bucket_values) + @max_anonymity = args[:max_anonymity] if args.key?(:max_anonymity) + @min_anonymity = args[:min_anonymity] if args.key?(:min_anonymity) + end + end + + # A tuple of values for the quasi-identifier columns. + class GooglePrivacyDlpV2KMapEstimationQuasiIdValues + include Google::Apis::Core::Hashable + + # The estimated anonymity for these quasi-identifier values. + # Corresponds to the JSON property `estimatedAnonymity` + # @return [Fixnum] + attr_accessor :estimated_anonymity + + # The quasi-identifier values. + # Corresponds to the JSON property `quasiIdsValues` + # @return [Array] + attr_accessor :quasi_ids_values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @estimated_anonymity = args[:estimated_anonymity] if args.key?(:estimated_anonymity) + @quasi_ids_values = args[:quasi_ids_values] if args.key?(:quasi_ids_values) + end + end + + # Result of the reidentifiability analysis. Note that these results are an + # estimation, not exact values. + class GooglePrivacyDlpV2KMapEstimationResult + include Google::Apis::Core::Hashable + + # The intervals [min_anonymity, max_anonymity] do not overlap. If a value + # doesn't correspond to any such interval, the associated frequency is + # zero. For example, the following records: + # `min_anonymity: 1, max_anonymity: 1, frequency: 17` + # `min_anonymity: 2, max_anonymity: 3, frequency: 42` + # `min_anonymity: 5, max_anonymity: 10, frequency: 99` + # mean that there are no record with an estimated anonymity of 4, 5, or + # larger than 10. + # Corresponds to the JSON property `kMapEstimationHistogram` + # @return [Array] + attr_accessor :k_map_estimation_histogram + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @k_map_estimation_histogram = args[:k_map_estimation_histogram] if args.key?(:k_map_estimation_histogram) + end + end + + # A unique identifier for a Datastore entity. + # If a key's partition ID or any of its path kinds or names are + # reserved/read-only, the key is reserved/read-only. + # A reserved/read-only key is forbidden in certain documented contexts. + class GooglePrivacyDlpV2Key + include Google::Apis::Core::Hashable + + # Datastore partition ID. + # A partition ID identifies a grouping of entities. The grouping is always + # by project and namespace, however the namespace ID may be empty. + # A partition ID contains several dimensions: + # project ID and namespace ID. + # Corresponds to the JSON property `partitionId` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2PartitionId] + attr_accessor :partition_id + + # The entity path. + # An entity path consists of one or more elements composed of a kind and a + # string or numerical identifier, which identify entities. The first + # element identifies a _root entity_, the second element identifies + # a _child_ of the root entity, the third element identifies a child of the + # second entity, and so forth. The entities identified by all prefixes of + # the path are called the element's _ancestors_. + # A path can never be empty, and a path can have at most 100 elements. + # Corresponds to the JSON property `path` + # @return [Array] + attr_accessor :path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @partition_id = args[:partition_id] if args.key?(:partition_id) + @path = args[:path] if args.key?(:path) + end + end + + # A representation of a Datastore kind. + class GooglePrivacyDlpV2KindExpression + include Google::Apis::Core::Hashable + + # The name of the kind. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # Include to use an existing data crypto key wrapped by KMS. + # Authorization requires the following IAM permissions when sending a request + # to perform a crypto transformation using a kms-wrapped crypto key: + # dlp.kms.encrypt + class GooglePrivacyDlpV2KmsWrappedCryptoKey + include Google::Apis::Core::Hashable + + # The resource name of the KMS CryptoKey to use for unwrapping. [required] + # Corresponds to the JSON property `cryptoKeyName` + # @return [String] + attr_accessor :crypto_key_name + + # The wrapped data crypto key. [required] + # Corresponds to the JSON property `wrappedKey` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :wrapped_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @crypto_key_name = args[:crypto_key_name] if args.key?(:crypto_key_name) + @wrapped_key = args[:wrapped_key] if args.key?(:wrapped_key) + end + end + + # l-diversity metric, used for analysis of reidentification risk. + class GooglePrivacyDlpV2LDiversityConfig + include Google::Apis::Core::Hashable + + # Set of quasi-identifiers indicating how equivalence classes are + # defined for the l-diversity computation. When multiple fields are + # specified, they are considered a single composite key. + # Corresponds to the JSON property `quasiIds` + # @return [Array] + attr_accessor :quasi_ids + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `sensitiveAttribute` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :sensitive_attribute + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @quasi_ids = args[:quasi_ids] if args.key?(:quasi_ids) + @sensitive_attribute = args[:sensitive_attribute] if args.key?(:sensitive_attribute) + end + end + + # The set of columns' values that share the same ldiversity value. + class GooglePrivacyDlpV2LDiversityEquivalenceClass + include Google::Apis::Core::Hashable + + # Size of the k-anonymity equivalence class. + # Corresponds to the JSON property `equivalenceClassSize` + # @return [Fixnum] + attr_accessor :equivalence_class_size + + # Number of distinct sensitive values in this equivalence class. + # Corresponds to the JSON property `numDistinctSensitiveValues` + # @return [Fixnum] + attr_accessor :num_distinct_sensitive_values + + # Quasi-identifier values defining the k-anonymity equivalence + # class. The order is always the same as the original request. + # Corresponds to the JSON property `quasiIdsValues` + # @return [Array] + attr_accessor :quasi_ids_values + + # Estimated frequencies of top sensitive values. + # Corresponds to the JSON property `topSensitiveValues` + # @return [Array] + attr_accessor :top_sensitive_values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @equivalence_class_size = args[:equivalence_class_size] if args.key?(:equivalence_class_size) + @num_distinct_sensitive_values = args[:num_distinct_sensitive_values] if args.key?(:num_distinct_sensitive_values) + @quasi_ids_values = args[:quasi_ids_values] if args.key?(:quasi_ids_values) + @top_sensitive_values = args[:top_sensitive_values] if args.key?(:top_sensitive_values) + end + end + + # + class GooglePrivacyDlpV2LDiversityHistogramBucket + include Google::Apis::Core::Hashable + + # Total number of equivalence classes in this bucket. + # Corresponds to the JSON property `bucketSize` + # @return [Fixnum] + attr_accessor :bucket_size + + # Total number of distinct equivalence classes in this bucket. + # Corresponds to the JSON property `bucketValueCount` + # @return [Fixnum] + attr_accessor :bucket_value_count + + # Sample of equivalence classes in this bucket. The total number of + # classes returned per bucket is capped at 20. + # Corresponds to the JSON property `bucketValues` + # @return [Array] + attr_accessor :bucket_values + + # Lower bound on the sensitive value frequencies of the equivalence + # classes in this bucket. + # Corresponds to the JSON property `sensitiveValueFrequencyLowerBound` + # @return [Fixnum] + attr_accessor :sensitive_value_frequency_lower_bound + + # Upper bound on the sensitive value frequencies of the equivalence + # classes in this bucket. + # Corresponds to the JSON property `sensitiveValueFrequencyUpperBound` + # @return [Fixnum] + attr_accessor :sensitive_value_frequency_upper_bound + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_size = args[:bucket_size] if args.key?(:bucket_size) + @bucket_value_count = args[:bucket_value_count] if args.key?(:bucket_value_count) + @bucket_values = args[:bucket_values] if args.key?(:bucket_values) + @sensitive_value_frequency_lower_bound = args[:sensitive_value_frequency_lower_bound] if args.key?(:sensitive_value_frequency_lower_bound) + @sensitive_value_frequency_upper_bound = args[:sensitive_value_frequency_upper_bound] if args.key?(:sensitive_value_frequency_upper_bound) + end + end + + # Result of the l-diversity computation. + class GooglePrivacyDlpV2LDiversityResult + include Google::Apis::Core::Hashable + + # Histogram of l-diversity equivalence class sensitive value frequencies. + # Corresponds to the JSON property `sensitiveValueFrequencyHistogramBuckets` + # @return [Array] + attr_accessor :sensitive_value_frequency_histogram_buckets + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @sensitive_value_frequency_histogram_buckets = args[:sensitive_value_frequency_histogram_buckets] if args.key?(:sensitive_value_frequency_histogram_buckets) + end + end + + # Message for specifying an adjustment to the likelihood of a finding as + # part of a detection rule. + class GooglePrivacyDlpV2LikelihoodAdjustment + include Google::Apis::Core::Hashable + + # Set the likelihood of a finding to a fixed value. + # Corresponds to the JSON property `fixedLikelihood` + # @return [String] + attr_accessor :fixed_likelihood + + # Increase or decrease the likelihood by the specified number of + # levels. For example, if a finding would be `POSSIBLE` without the + # detection rule and `relative_likelihood` is 1, then it is upgraded to + # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`. + # Likelihood may never drop below `VERY_UNLIKELY` or exceed + # `VERY_LIKELY`, so applying an adjustment of 1 followed by an + # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in + # a final likelihood of `LIKELY`. + # Corresponds to the JSON property `relativeLikelihood` + # @return [Fixnum] + attr_accessor :relative_likelihood + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @fixed_likelihood = args[:fixed_likelihood] if args.key?(:fixed_likelihood) + @relative_likelihood = args[:relative_likelihood] if args.key?(:relative_likelihood) + end + end + + # Response message for ListDeidentifyTemplates. + class GooglePrivacyDlpV2ListDeidentifyTemplatesResponse + include Google::Apis::Core::Hashable + + # List of deidentify templates, up to page_size in + # ListDeidentifyTemplatesRequest. + # Corresponds to the JSON property `deidentifyTemplates` + # @return [Array] + attr_accessor :deidentify_templates + + # If the next page is available then the next page token to be used + # in following ListDeidentifyTemplates request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deidentify_templates = args[:deidentify_templates] if args.key?(:deidentify_templates) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The response message for listing DLP jobs. + class GooglePrivacyDlpV2ListDlpJobsResponse + include Google::Apis::Core::Hashable + + # A list of DlpJobs that matches the specified filter in the request. + # Corresponds to the JSON property `jobs` + # @return [Array] + attr_accessor :jobs + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @jobs = args[:jobs] if args.key?(:jobs) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response to the ListInfoTypes request. + class GooglePrivacyDlpV2ListInfoTypesResponse + include Google::Apis::Core::Hashable + + # Set of sensitive infoTypes. + # Corresponds to the JSON property `infoTypes` + # @return [Array] + attr_accessor :info_types + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @info_types = args[:info_types] if args.key?(:info_types) + end + end + + # Response message for ListInspectTemplates. + class GooglePrivacyDlpV2ListInspectTemplatesResponse + include Google::Apis::Core::Hashable + + # List of inspectTemplates, up to page_size in ListInspectTemplatesRequest. + # Corresponds to the JSON property `inspectTemplates` + # @return [Array] + attr_accessor :inspect_templates + + # If the next page is available then the next page token to be used + # in following ListInspectTemplates request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @inspect_templates = args[:inspect_templates] if args.key?(:inspect_templates) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response message for ListJobTriggers. + class GooglePrivacyDlpV2ListJobTriggersResponse + include Google::Apis::Core::Hashable + + # List of triggeredJobs, up to page_size in ListJobTriggersRequest. + # Corresponds to the JSON property `jobTriggers` + # @return [Array] + attr_accessor :job_triggers + + # If the next page is available then the next page token to be used + # in following ListJobTriggers request. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @job_triggers = args[:job_triggers] if args.key?(:job_triggers) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Specifies the location of the finding. + class GooglePrivacyDlpV2Location + include Google::Apis::Core::Hashable + + # Generic half-open interval [start, end) + # Corresponds to the JSON property `byteRange` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Range] + attr_accessor :byte_range + + # Generic half-open interval [start, end) + # Corresponds to the JSON property `codepointRange` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Range] + attr_accessor :codepoint_range + + # List of nested objects pointing to the precise location of the finding + # within the file or record. + # Corresponds to the JSON property `contentLocations` + # @return [Array] + attr_accessor :content_locations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @byte_range = args[:byte_range] if args.key?(:byte_range) + @codepoint_range = args[:codepoint_range] if args.key?(:codepoint_range) + @content_locations = args[:content_locations] if args.key?(:content_locations) + end + end + + # Compute numerical stats over an individual column, including + # min, max, and quantiles. + class GooglePrivacyDlpV2NumericalStatsConfig + include Google::Apis::Core::Hashable + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :field + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + end + end + + # Result of the numerical stats computation. + class GooglePrivacyDlpV2NumericalStatsResult + include Google::Apis::Core::Hashable + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `maxValue` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Value] + attr_accessor :max_value + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `minValue` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Value] + attr_accessor :min_value + + # List of 99 values that partition the set of field values into 100 equal + # sized buckets. + # Corresponds to the JSON property `quantileValues` + # @return [Array] + attr_accessor :quantile_values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max_value = args[:max_value] if args.key?(:max_value) + @min_value = args[:min_value] if args.key?(:min_value) + @quantile_values = args[:quantile_values] if args.key?(:quantile_values) + end + end + + # Cloud repository for storing output. + class GooglePrivacyDlpV2OutputStorageConfig + include Google::Apis::Core::Hashable + + # Schema used for writing the findings. Columns are derived from the + # `Finding` object. If appending to an existing table, any columns from the + # predefined schema that are missing will be added. No columns in the + # existing table will be deleted. + # If unspecified, then all available columns will be used for a new table, + # and no changes will be made to an existing table. + # Corresponds to the JSON property `outputSchema` + # @return [String] + attr_accessor :output_schema + + # 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 + # `..`. + # Corresponds to the JSON property `table` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable] + attr_accessor :table + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @output_schema = args[:output_schema] if args.key?(:output_schema) + @table = args[:table] if args.key?(:table) + end + end + + # Datastore partition ID. + # A partition ID identifies a grouping of entities. The grouping is always + # by project and namespace, however the namespace ID may be empty. + # A partition ID contains several dimensions: + # project ID and namespace ID. + class GooglePrivacyDlpV2PartitionId + include Google::Apis::Core::Hashable + + # If not empty, the ID of the namespace to which the entities belong. + # Corresponds to the JSON property `namespaceId` + # @return [String] + attr_accessor :namespace_id + + # The ID of the project to which the entities belong. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @namespace_id = args[:namespace_id] if args.key?(:namespace_id) + @project_id = args[:project_id] if args.key?(:project_id) + end + end + + # A (kind, ID/name) pair used to construct a key path. + # If either name or ID is set, the element is complete. + # If neither is set, the element is incomplete. + class GooglePrivacyDlpV2PathElement + include Google::Apis::Core::Hashable + + # The auto-allocated ID of the entity. + # Never equal to zero. Values less than zero are discouraged and may not + # be supported in the future. + # Corresponds to the JSON property `id` + # @return [Fixnum] + attr_accessor :id + + # The kind of the entity. + # A kind matching regex `__.*__` is reserved/read-only. + # A kind must not contain more than 1500 bytes when UTF-8 encoded. + # Cannot be `""`. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The name of the entity. + # A name matching regex `__.*__` is reserved/read-only. + # A name must not be more than 1500 bytes when UTF-8 encoded. + # Cannot be `""`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + end + end + + # A rule for transforming a value. + class GooglePrivacyDlpV2PrimitiveTransformation + include Google::Apis::Core::Hashable + + # Generalization function that buckets values based on ranges. The ranges and + # replacement values are dynamically provided by the user for custom behavior, + # such as 1-30 -> LOW 31-65 -> MEDIUM 66-100 -> HIGH + # This can be used on + # data of type: number, long, string, timestamp. + # If the bound `Value` type differs from the type of data being transformed, we + # will first attempt converting the type of the data to be transformed to match + # the type of the bound before comparing. + # Corresponds to the JSON property `bucketingConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BucketingConfig] + attr_accessor :bucketing_config + + # Partially mask a string by replacing a given number of characters with a + # fixed character. Masking can start from the beginning or end of the string. + # This can be used on data of any type (numbers, longs, and so on) and when + # de-identifying structured data we'll attempt to preserve the original data's + # type. (This allows you to take a long like 123 and modify it to a string like + # **3. + # Corresponds to the JSON property `characterMaskConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2CharacterMaskConfig] + attr_accessor :character_mask_config + + # Pseudonymization method that generates surrogates via cryptographic hashing. + # Uses SHA-256. + # The key size must be either 32 or 64 bytes. + # Outputs a 32 byte digest as an uppercase hex string + # (for example, 41D1567F7F99F1DC2A5FAB886DEE5BEE). + # Currently, only string and integer values can be hashed. + # Corresponds to the JSON property `cryptoHashConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoHashConfig] + attr_accessor :crypto_hash_config + + # Replaces an identifier with a surrogate using FPE with the FFX + # mode of operation; however when used in the `ReidentifyContent` API method, + # it serves the opposite function by reversing the surrogate back into + # the original identifier. + # The identifier must be encoded as ASCII. + # For a given crypto key and context, the same identifier will be + # replaced with the same surrogate. + # Identifiers must be at least two characters long. + # In the case that the identifier is the empty string, it will be skipped. + # See [Pseudonymization](/dlp/docs/pseudonymization) for example usage. + # Corresponds to the JSON property `cryptoReplaceFfxFpeConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig] + attr_accessor :crypto_replace_ffx_fpe_config + + # Shifts dates by random number of days, with option to be consistent for the + # same context. + # Corresponds to the JSON property `dateShiftConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DateShiftConfig] + attr_accessor :date_shift_config + + # Buckets values based on fixed size ranges. The + # Bucketing transformation can provide all of this functionality, + # but requires more configuration. This message is provided as a convenience to + # the user for simple bucketing strategies. + # The transformed value will be a hyphenated string of + # -, i.e if lower_bound = 10 and upper_bound = 20 + # all values that are within this bucket will be replaced with "10-20". + # This can be used on data of type: double, long. + # If the bound Value type differs from the type of data + # being transformed, we will first attempt converting the type of the data to + # be transformed to match the type of the bound before comparing. + # Corresponds to the JSON property `fixedSizeBucketingConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FixedSizeBucketingConfig] + attr_accessor :fixed_size_bucketing_config + + # Redact a given value. For example, if used with an `InfoTypeTransformation` + # transforming PHONE_NUMBER, and input 'My phone number is 206-555-0123', the + # output would be 'My phone number is '. + # Corresponds to the JSON property `redactConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2RedactConfig] + attr_accessor :redact_config + + # Replace each input value with a given `Value`. + # Corresponds to the JSON property `replaceConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ReplaceValueConfig] + attr_accessor :replace_config + + # Replace each matching finding with the name of the info_type. + # Corresponds to the JSON property `replaceWithInfoTypeConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ReplaceWithInfoTypeConfig] + attr_accessor :replace_with_info_type_config + + # For use with `Date`, `Timestamp`, and `TimeOfDay`, extract or preserve a + # portion of the value. + # Corresponds to the JSON property `timePartConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2TimePartConfig] + attr_accessor :time_part_config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucketing_config = args[:bucketing_config] if args.key?(:bucketing_config) + @character_mask_config = args[:character_mask_config] if args.key?(:character_mask_config) + @crypto_hash_config = args[:crypto_hash_config] if args.key?(:crypto_hash_config) + @crypto_replace_ffx_fpe_config = args[:crypto_replace_ffx_fpe_config] if args.key?(:crypto_replace_ffx_fpe_config) + @date_shift_config = args[:date_shift_config] if args.key?(:date_shift_config) + @fixed_size_bucketing_config = args[:fixed_size_bucketing_config] if args.key?(:fixed_size_bucketing_config) + @redact_config = args[:redact_config] if args.key?(:redact_config) + @replace_config = args[:replace_config] if args.key?(:replace_config) + @replace_with_info_type_config = args[:replace_with_info_type_config] if args.key?(:replace_with_info_type_config) + @time_part_config = args[:time_part_config] if args.key?(:time_part_config) + end + end + + # Privacy metric to compute for reidentification risk analysis. + class GooglePrivacyDlpV2PrivacyMetric + include Google::Apis::Core::Hashable + + # Compute numerical stats over an individual column, including + # number of distinct values and value count distribution. + # Corresponds to the JSON property `categoricalStatsConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2CategoricalStatsConfig] + attr_accessor :categorical_stats_config + + # k-anonymity metric, used for analysis of reidentification risk. + # Corresponds to the JSON property `kAnonymityConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2KAnonymityConfig] + attr_accessor :k_anonymity_config + + # Reidentifiability metric. This corresponds to a risk model similar to what + # is called "journalist risk" in the literature, except the attack dataset is + # statistically modeled instead of being perfectly known. This can be done + # using publicly available data (like the US Census), or using a custom + # statistical model (indicated as one or several BigQuery tables), or by + # extrapolating from the distribution of values in the input dataset. + # Corresponds to the JSON property `kMapEstimationConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2KMapEstimationConfig] + attr_accessor :k_map_estimation_config + + # l-diversity metric, used for analysis of reidentification risk. + # Corresponds to the JSON property `lDiversityConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2LDiversityConfig] + attr_accessor :l_diversity_config + + # Compute numerical stats over an individual column, including + # min, max, and quantiles. + # Corresponds to the JSON property `numericalStatsConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2NumericalStatsConfig] + attr_accessor :numerical_stats_config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @categorical_stats_config = args[:categorical_stats_config] if args.key?(:categorical_stats_config) + @k_anonymity_config = args[:k_anonymity_config] if args.key?(:k_anonymity_config) + @k_map_estimation_config = args[:k_map_estimation_config] if args.key?(:k_map_estimation_config) + @l_diversity_config = args[:l_diversity_config] if args.key?(:l_diversity_config) + @numerical_stats_config = args[:numerical_stats_config] if args.key?(:numerical_stats_config) + end + end + + # Message for specifying a window around a finding to apply a detection + # rule. + class GooglePrivacyDlpV2Proximity + include Google::Apis::Core::Hashable + + # Number of characters after the finding to consider. + # Corresponds to the JSON property `windowAfter` + # @return [Fixnum] + attr_accessor :window_after + + # Number of characters before the finding to consider. + # Corresponds to the JSON property `windowBefore` + # @return [Fixnum] + attr_accessor :window_before + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @window_after = args[:window_after] if args.key?(:window_after) + @window_before = args[:window_before] if args.key?(:window_before) + end + end + + # Publish the results of a DlpJob to a pub sub channel. + # Compatible with: Inpect, Risk + class GooglePrivacyDlpV2PublishToPubSub + include Google::Apis::Core::Hashable + + # Cloud Pub/Sub topic to send notifications to. The topic must have given + # publishing access rights to the DLP API service account executing + # the long running DlpJob sending the notifications. + # Format is projects/`project`/topics/`topic`. + # Corresponds to the JSON property `topic` + # @return [String] + attr_accessor :topic + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @topic = args[:topic] if args.key?(:topic) + end + end + + # A quasi-identifier column has a custom_tag, used to know which column + # in the data corresponds to which column in the statistical model. + class GooglePrivacyDlpV2QuasiIdField + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `customTag` + # @return [String] + attr_accessor :custom_tag + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :field + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @custom_tag = args[:custom_tag] if args.key?(:custom_tag) + @field = args[:field] if args.key?(:field) + end + end + + # Message for infoType-dependent details parsed from quote. + class GooglePrivacyDlpV2QuoteInfo + include Google::Apis::Core::Hashable + + # Message for a date time object. + # Corresponds to the JSON property `dateTime` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DateTime] + attr_accessor :date_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @date_time = args[:date_time] if args.key?(:date_time) + end + end + + # Generic half-open interval [start, end) + class GooglePrivacyDlpV2Range + include Google::Apis::Core::Hashable + + # Index of the last character of the range (exclusive). + # Corresponds to the JSON property `end` + # @return [Fixnum] + attr_accessor :end + + # Index of the first character of the range (inclusive). + # Corresponds to the JSON property `start` + # @return [Fixnum] + attr_accessor :start + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end = args[:end] if args.key?(:end) + @start = args[:start] if args.key?(:start) + end + end + + # A condition for determining whether a transformation should be applied to + # a field. + class GooglePrivacyDlpV2RecordCondition + include Google::Apis::Core::Hashable + + # An expression, consisting or an operator and conditions. + # Corresponds to the JSON property `expressions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Expressions] + attr_accessor :expressions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @expressions = args[:expressions] if args.key?(:expressions) + end + end + + # Message for a unique key indicating a record that contains a finding. + class GooglePrivacyDlpV2RecordKey + include Google::Apis::Core::Hashable + + # Row key for identifying a record in BigQuery table. + # Corresponds to the JSON property `bigQueryKey` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryKey] + attr_accessor :big_query_key + + # Record key for a finding in Cloud Datastore. + # Corresponds to the JSON property `datastoreKey` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DatastoreKey] + attr_accessor :datastore_key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @big_query_key = args[:big_query_key] if args.key?(:big_query_key) + @datastore_key = args[:datastore_key] if args.key?(:datastore_key) + end + end + + # Location of a finding within a row or record. + class GooglePrivacyDlpV2RecordLocation + include Google::Apis::Core::Hashable + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `fieldId` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :field_id + + # Message for a unique key indicating a record that contains a finding. + # Corresponds to the JSON property `recordKey` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2RecordKey] + attr_accessor :record_key + + # Location of a finding within a table. + # Corresponds to the JSON property `tableLocation` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2TableLocation] + attr_accessor :table_location + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field_id = args[:field_id] if args.key?(:field_id) + @record_key = args[:record_key] if args.key?(:record_key) + @table_location = args[:table_location] if args.key?(:table_location) + end + end + + # Configuration to suppress records whose suppression conditions evaluate to + # true. + class GooglePrivacyDlpV2RecordSuppression + include Google::Apis::Core::Hashable + + # A condition for determining whether a transformation should be applied to + # a field. + # Corresponds to the JSON property `condition` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2RecordCondition] + attr_accessor :condition + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @condition = args[:condition] if args.key?(:condition) + end + end + + # A type of transformation that is applied over structured data such as a + # table. + class GooglePrivacyDlpV2RecordTransformations + include Google::Apis::Core::Hashable + + # Transform the record by applying various field transformations. + # Corresponds to the JSON property `fieldTransformations` + # @return [Array] + attr_accessor :field_transformations + + # Configuration defining which records get suppressed entirely. Records that + # match any suppression rule are omitted from the output [optional]. + # Corresponds to the JSON property `recordSuppressions` + # @return [Array] + attr_accessor :record_suppressions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field_transformations = args[:field_transformations] if args.key?(:field_transformations) + @record_suppressions = args[:record_suppressions] if args.key?(:record_suppressions) + end + end + + # Redact a given value. For example, if used with an `InfoTypeTransformation` + # transforming PHONE_NUMBER, and input 'My phone number is 206-555-0123', the + # output would be 'My phone number is '. + class GooglePrivacyDlpV2RedactConfig + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Request to search for potentially sensitive info in a list of items + # and replace it with a default or provided content. + class GooglePrivacyDlpV2RedactImageRequest + include Google::Apis::Core::Hashable + + # Container for bytes to inspect or redact. + # Corresponds to the JSON property `byteItem` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ByteContentItem] + attr_accessor :byte_item + + # The configuration for specifying what content to redact from images. + # Corresponds to the JSON property `imageRedactionConfigs` + # @return [Array] + attr_accessor :image_redaction_configs + + # Configuration description of the scanning process. + # When used with redactContent only info_types and min_likelihood are currently + # used. + # Corresponds to the JSON property `inspectConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig] + attr_accessor :inspect_config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @byte_item = args[:byte_item] if args.key?(:byte_item) + @image_redaction_configs = args[:image_redaction_configs] if args.key?(:image_redaction_configs) + @inspect_config = args[:inspect_config] if args.key?(:inspect_config) + end + end + + # Results of redacting an image. + class GooglePrivacyDlpV2RedactImageResponse + include Google::Apis::Core::Hashable + + # If an image was being inspected and the InspectConfig's include_quote was + # set to true, then this field will include all text, if any, that was found + # in the image. + # Corresponds to the JSON property `extractedText` + # @return [String] + attr_accessor :extracted_text + + # The redacted image. The type will be the same as the original image. + # Corresponds to the JSON property `redactedImage` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :redacted_image + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @extracted_text = args[:extracted_text] if args.key?(:extracted_text) + @redacted_image = args[:redacted_image] if args.key?(:redacted_image) + end + end + + # Message defining a custom regular expression. + class GooglePrivacyDlpV2Regex + include Google::Apis::Core::Hashable + + # Pattern defining the regular expression. + # Corresponds to the JSON property `pattern` + # @return [String] + attr_accessor :pattern + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @pattern = args[:pattern] if args.key?(:pattern) + end + end + + # Request to re-identify an item. + class GooglePrivacyDlpV2ReidentifyContentRequest + include Google::Apis::Core::Hashable + + # Configuration description of the scanning process. + # When used with redactContent only info_types and min_likelihood are currently + # used. + # Corresponds to the JSON property `inspectConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig] + attr_accessor :inspect_config + + # Optional template to use. Any configuration directly specified in + # `inspect_config` will override those set in the template. Singular fields + # that are set in this request will replace their corresponding fields in the + # template. Repeated fields are appended. Singular sub-messages and groups + # are recursively merged. + # Corresponds to the JSON property `inspectTemplateName` + # @return [String] + attr_accessor :inspect_template_name + + # Container structure for the content to inspect. + # Corresponds to the JSON property `item` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem] + attr_accessor :item + + # The configuration that controls how the data will change. + # Corresponds to the JSON property `reidentifyConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyConfig] + attr_accessor :reidentify_config + + # Optional template to use. References an instance of `DeidentifyTemplate`. + # Any configuration directly specified in `reidentify_config` or + # `inspect_config` will override those set in the template. Singular fields + # that are set in this request will replace their corresponding fields in the + # template. Repeated fields are appended. Singular sub-messages and groups + # are recursively merged. + # Corresponds to the JSON property `reidentifyTemplateName` + # @return [String] + attr_accessor :reidentify_template_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @inspect_config = args[:inspect_config] if args.key?(:inspect_config) + @inspect_template_name = args[:inspect_template_name] if args.key?(:inspect_template_name) + @item = args[:item] if args.key?(:item) + @reidentify_config = args[:reidentify_config] if args.key?(:reidentify_config) + @reidentify_template_name = args[:reidentify_template_name] if args.key?(:reidentify_template_name) + end + end + + # Results of re-identifying a item. + class GooglePrivacyDlpV2ReidentifyContentResponse + include Google::Apis::Core::Hashable + + # Container structure for the content to inspect. + # Corresponds to the JSON property `item` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem] + attr_accessor :item + + # Overview of the modifications that occurred. + # Corresponds to the JSON property `overview` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2TransformationOverview] + attr_accessor :overview + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @item = args[:item] if args.key?(:item) + @overview = args[:overview] if args.key?(:overview) + end + end + + # Replace each input value with a given `Value`. + class GooglePrivacyDlpV2ReplaceValueConfig + include Google::Apis::Core::Hashable + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `newValue` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Value] + attr_accessor :new_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @new_value = args[:new_value] if args.key?(:new_value) + end + end + + # Replace each matching finding with the name of the info_type. + class GooglePrivacyDlpV2ReplaceWithInfoTypeConfig + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # + class GooglePrivacyDlpV2RequestedOptions + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `jobConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectJobConfig] + attr_accessor :job_config + + # The inspectTemplate contains a configuration (set of types of sensitive data + # to be detected) to be used anywhere you otherwise would normally specify + # InspectConfig. + # Corresponds to the JSON property `snapshotInspectTemplate` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] + attr_accessor :snapshot_inspect_template + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @job_config = args[:job_config] if args.key?(:job_config) + @snapshot_inspect_template = args[:snapshot_inspect_template] if args.key?(:snapshot_inspect_template) + end + end + + # + class GooglePrivacyDlpV2Result + include Google::Apis::Core::Hashable + + # Statistics of how many instances of each info type were found during + # inspect job. + # Corresponds to the JSON property `infoTypeStats` + # @return [Array] + attr_accessor :info_type_stats + + # Total size in bytes that were processed. + # Corresponds to the JSON property `processedBytes` + # @return [Fixnum] + attr_accessor :processed_bytes + + # Estimate of the number of bytes to process. + # Corresponds to the JSON property `totalEstimatedBytes` + # @return [Fixnum] + attr_accessor :total_estimated_bytes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @info_type_stats = args[:info_type_stats] if args.key?(:info_type_stats) + @processed_bytes = args[:processed_bytes] if args.key?(:processed_bytes) + @total_estimated_bytes = args[:total_estimated_bytes] if args.key?(:total_estimated_bytes) + end + end + + # Configuration for a risk analysis job. + class GooglePrivacyDlpV2RiskAnalysisJobConfig + include Google::Apis::Core::Hashable + + # Actions to execute at the completion of the job. Are executed in the order + # provided. + # Corresponds to the JSON property `actions` + # @return [Array] + attr_accessor :actions + + # Privacy metric to compute for reidentification risk analysis. + # Corresponds to the JSON property `privacyMetric` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2PrivacyMetric] + attr_accessor :privacy_metric + + # 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 + # `..`. + # Corresponds to the JSON property `sourceTable` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable] + attr_accessor :source_table + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @actions = args[:actions] if args.key?(:actions) + @privacy_metric = args[:privacy_metric] if args.key?(:privacy_metric) + @source_table = args[:source_table] if args.key?(:source_table) + end + end + + # + class GooglePrivacyDlpV2Row + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `values` + # @return [Array] + attr_accessor :values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @values = args[:values] if args.key?(:values) + end + end + + # If set, the detailed findings will be persisted to the specified + # OutputStorageConfig. Compatible with: Inspect + class GooglePrivacyDlpV2SaveFindings + include Google::Apis::Core::Hashable + + # Cloud repository for storing output. + # Corresponds to the JSON property `outputConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2OutputStorageConfig] + attr_accessor :output_config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @output_config = args[:output_config] if args.key?(:output_config) + end + end + + # Schedule for triggeredJobs. + class GooglePrivacyDlpV2Schedule + include Google::Apis::Core::Hashable + + # With this option a job is started a regular periodic basis. For + # example: every 10 minutes. + # A scheduled start time will be skipped if the previous + # execution has not ended when its scheduled time occurs. + # This value must be set to a time duration greater than or equal + # to 60 minutes and can be no longer than 60 days. + # Corresponds to the JSON property `recurrencePeriodDuration` + # @return [String] + attr_accessor :recurrence_period_duration + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @recurrence_period_duration = args[:recurrence_period_duration] if args.key?(:recurrence_period_duration) + end + end + + # Shared message indicating Cloud storage type. + class GooglePrivacyDlpV2StorageConfig + include Google::Apis::Core::Hashable + + # Options defining BigQuery table and row identifiers. + # Corresponds to the JSON property `bigQueryOptions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryOptions] + attr_accessor :big_query_options + + # Options defining a file or a set of files (path ending with *) within + # a Google Cloud Storage bucket. + # Corresponds to the JSON property `cloudStorageOptions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2CloudStorageOptions] + attr_accessor :cloud_storage_options + + # Options defining a data set within Google Cloud Datastore. + # Corresponds to the JSON property `datastoreOptions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DatastoreOptions] + attr_accessor :datastore_options + + # Configuration of the timespan of the items to include in scanning. + # Currently only supported when inspecting Google Cloud Storage and BigQuery. + # Corresponds to the JSON property `timespanConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2TimespanConfig] + attr_accessor :timespan_config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @big_query_options = args[:big_query_options] if args.key?(:big_query_options) + @cloud_storage_options = args[:cloud_storage_options] if args.key?(:cloud_storage_options) + @datastore_options = args[:datastore_options] if args.key?(:datastore_options) + @timespan_config = args[:timespan_config] if args.key?(:timespan_config) + end + end + + # A collection that informs the user the number of times a particular + # `TransformationResultCode` and error details occurred. + class GooglePrivacyDlpV2SummaryResult + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + # A place for warnings or errors to show up if a transformation didn't + # work as expected. + # Corresponds to the JSON property `details` + # @return [String] + attr_accessor :details + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @count = args[:count] if args.key?(:count) + @details = args[:details] if args.key?(:details) + end + end + + # Message for detecting output from deidentification transformations + # such as + # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/content/deidentify# + # CryptoReplaceFfxFpeConfig). + # These types of transformations are + # those that perform pseudonymization, thereby producing a "surrogate" as + # output. This should be used in conjunction with a field on the + # transformation such as `surrogate_info_type`. This custom info type does + # not support the use of `detection_rules`. + class GooglePrivacyDlpV2SurrogateType + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Structured content to inspect. Up to 50,000 `Value`s per request allowed. + class GooglePrivacyDlpV2Table + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `headers` + # @return [Array] + attr_accessor :headers + + # + # Corresponds to the JSON property `rows` + # @return [Array] + attr_accessor :rows + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @headers = args[:headers] if args.key?(:headers) + @rows = args[:rows] if args.key?(:rows) + end + end + + # Location of a finding within a table. + class GooglePrivacyDlpV2TableLocation + include Google::Apis::Core::Hashable + + # The zero-based index of the row where the finding is located. + # Corresponds to the JSON property `rowIndex` + # @return [Fixnum] + attr_accessor :row_index + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @row_index = args[:row_index] if args.key?(:row_index) + end + end + + # A column with a semantic tag attached. + class GooglePrivacyDlpV2TaggedField + include Google::Apis::Core::Hashable + + # A column can be tagged with a custom tag. In this case, the user must + # indicate an auxiliary table that contains statistical information on + # the possible values of this column (below). + # Corresponds to the JSON property `customTag` + # @return [String] + attr_accessor :custom_tag + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :field + + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + # Corresponds to the JSON property `inferred` + # @return [Google::Apis::DlpV2::GoogleProtobufEmpty] + attr_accessor :inferred + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType] + attr_accessor :info_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @custom_tag = args[:custom_tag] if args.key?(:custom_tag) + @field = args[:field] if args.key?(:field) + @inferred = args[:inferred] if args.key?(:inferred) + @info_type = args[:info_type] if args.key?(:info_type) + end + end + + # For use with `Date`, `Timestamp`, and `TimeOfDay`, extract or preserve a + # portion of the value. + class GooglePrivacyDlpV2TimePartConfig + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `partToExtract` + # @return [String] + attr_accessor :part_to_extract + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @part_to_extract = args[:part_to_extract] if args.key?(:part_to_extract) + end + end + + # + class GooglePrivacyDlpV2TimeZone + include Google::Apis::Core::Hashable + + # Set only if the offset can be determined. Positive for time ahead of UTC. + # E.g. For "UTC-9", this value is -540. + # Corresponds to the JSON property `offsetMinutes` + # @return [Fixnum] + attr_accessor :offset_minutes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @offset_minutes = args[:offset_minutes] if args.key?(:offset_minutes) + end + end + + # Configuration of the timespan of the items to include in scanning. + # Currently only supported when inspecting Google Cloud Storage and BigQuery. + class GooglePrivacyDlpV2TimespanConfig + include Google::Apis::Core::Hashable + + # When the job is started by a JobTrigger we will automatically figure out + # a valid start_time to avoid scanning files that have not been modified + # since the last time the JobTrigger executed. This will be based on the + # time of the execution of the last run of the JobTrigger. + # Corresponds to the JSON property `enableAutoPopulationOfTimespanConfig` + # @return [Boolean] + attr_accessor :enable_auto_population_of_timespan_config + alias_method :enable_auto_population_of_timespan_config?, :enable_auto_population_of_timespan_config + + # Exclude files newer than this value. + # If set to zero, no upper time limit is applied. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # Exclude files older than this value. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `timestampField` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :timestamp_field + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @enable_auto_population_of_timespan_config = args[:enable_auto_population_of_timespan_config] if args.key?(:enable_auto_population_of_timespan_config) + @end_time = args[:end_time] if args.key?(:end_time) + @start_time = args[:start_time] if args.key?(:start_time) + @timestamp_field = args[:timestamp_field] if args.key?(:timestamp_field) + end + end + + # Overview of the modifications that occurred. + class GooglePrivacyDlpV2TransformationOverview + include Google::Apis::Core::Hashable + + # Transformations applied to the dataset. + # Corresponds to the JSON property `transformationSummaries` + # @return [Array] + attr_accessor :transformation_summaries + + # Total size in bytes that were transformed in some way. + # Corresponds to the JSON property `transformedBytes` + # @return [Fixnum] + attr_accessor :transformed_bytes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @transformation_summaries = args[:transformation_summaries] if args.key?(:transformation_summaries) + @transformed_bytes = args[:transformed_bytes] if args.key?(:transformed_bytes) + end + end + + # Summary of a single tranformation. + # Only one of 'transformation', 'field_transformation', or 'record_suppress' + # will be set. + class GooglePrivacyDlpV2TransformationSummary + include Google::Apis::Core::Hashable + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId] + attr_accessor :field + + # The field transformation that was applied. + # If multiple field transformations are requested for a single field, + # this list will contain all of them; otherwise, only one is supplied. + # Corresponds to the JSON property `fieldTransformations` + # @return [Array] + attr_accessor :field_transformations + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType] + attr_accessor :info_type + + # Configuration to suppress records whose suppression conditions evaluate to + # true. + # Corresponds to the JSON property `recordSuppress` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2RecordSuppression] + attr_accessor :record_suppress + + # + # Corresponds to the JSON property `results` + # @return [Array] + attr_accessor :results + + # A rule for transforming a value. + # Corresponds to the JSON property `transformation` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2PrimitiveTransformation] + attr_accessor :transformation + + # Total size in bytes that were transformed in some way. + # Corresponds to the JSON property `transformedBytes` + # @return [Fixnum] + attr_accessor :transformed_bytes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + @field_transformations = args[:field_transformations] if args.key?(:field_transformations) + @info_type = args[:info_type] if args.key?(:info_type) + @record_suppress = args[:record_suppress] if args.key?(:record_suppress) + @results = args[:results] if args.key?(:results) + @transformation = args[:transformation] if args.key?(:transformation) + @transformed_bytes = args[:transformed_bytes] if args.key?(:transformed_bytes) + end + end + + # Use this to have a random data crypto key generated. + # It will be discarded after the request finishes. + class GooglePrivacyDlpV2TransientCryptoKey + include Google::Apis::Core::Hashable + + # Name of the key. [required] + # This is an arbitrary string used to differentiate different keys. + # A unique key is generated per name: two separate `TransientCryptoKey` + # protos share the same generated key if their names are the same. + # When the data crypto key is generated, this name is not used in any way + # (repeating the api call will result in a different key being generated). + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # What event needs to occur for a new job to be started. + class GooglePrivacyDlpV2Trigger + include Google::Apis::Core::Hashable + + # Schedule for triggeredJobs. + # Corresponds to the JSON property `schedule` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Schedule] + attr_accessor :schedule + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @schedule = args[:schedule] if args.key?(:schedule) + end + end + + # Using raw keys is prone to security risks due to accidentally + # leaking the key. Choose another type of key if possible. + class GooglePrivacyDlpV2UnwrappedCryptoKey + include Google::Apis::Core::Hashable + + # The AES 128/192/256 bit key. [required] + # Corresponds to the JSON property `key` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @key = args[:key] if args.key?(:key) + end + end + + # Request message for UpdateDeidentifyTemplate. + class GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest + include Google::Apis::Core::Hashable + + # The DeidentifyTemplates contains instructions on how to deidentify content. + # Corresponds to the JSON property `deidentifyTemplate` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] + attr_accessor :deidentify_template + + # Mask to control which fields get updated. + # Corresponds to the JSON property `updateMask` + # @return [String] + attr_accessor :update_mask + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deidentify_template = args[:deidentify_template] if args.key?(:deidentify_template) + @update_mask = args[:update_mask] if args.key?(:update_mask) + end + end + + # Request message for UpdateInspectTemplate. + class GooglePrivacyDlpV2UpdateInspectTemplateRequest + include Google::Apis::Core::Hashable + + # The inspectTemplate contains a configuration (set of types of sensitive data + # to be detected) to be used anywhere you otherwise would normally specify + # InspectConfig. + # Corresponds to the JSON property `inspectTemplate` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] + attr_accessor :inspect_template + + # Mask to control which fields get updated. + # Corresponds to the JSON property `updateMask` + # @return [String] + attr_accessor :update_mask + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @inspect_template = args[:inspect_template] if args.key?(:inspect_template) + @update_mask = args[:update_mask] if args.key?(:update_mask) + end + end + + # Request message for UpdateJobTrigger. + class GooglePrivacyDlpV2UpdateJobTriggerRequest + include Google::Apis::Core::Hashable + + # Contains a configuration to make dlp api calls on a repeating basis. + # Corresponds to the JSON property `jobTrigger` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger] + attr_accessor :job_trigger + + # Mask to control which fields get updated. + # Corresponds to the JSON property `updateMask` + # @return [String] + attr_accessor :update_mask + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @job_trigger = args[:job_trigger] if args.key?(:job_trigger) + @update_mask = args[:update_mask] if args.key?(:update_mask) + end + end + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + class GooglePrivacyDlpV2Value + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `booleanValue` + # @return [Boolean] + attr_accessor :boolean_value + alias_method :boolean_value?, :boolean_value + + # Represents a whole calendar date, e.g. date of birth. The time of day and + # time zone are either specified elsewhere or are not significant. The date + # is relative to the Proleptic Gregorian Calendar. The day may be 0 to + # represent a year and month where the day is not significant, e.g. credit card + # expiration date. The year may be 0 to represent a month and day independent + # of year, e.g. anniversary date. Related types are google.type.TimeOfDay + # and `google.protobuf.Timestamp`. + # Corresponds to the JSON property `dateValue` + # @return [Google::Apis::DlpV2::GoogleTypeDate] + attr_accessor :date_value + + # + # Corresponds to the JSON property `dayOfWeekValue` + # @return [String] + attr_accessor :day_of_week_value + + # + # Corresponds to the JSON property `floatValue` + # @return [Float] + attr_accessor :float_value + + # + # Corresponds to the JSON property `integerValue` + # @return [Fixnum] + attr_accessor :integer_value + + # + # Corresponds to the JSON property `stringValue` + # @return [String] + attr_accessor :string_value + + # Represents a time of day. The date and time zone are either not significant + # or are specified elsewhere. An API may choose to allow leap seconds. Related + # types are google.type.Date and `google.protobuf.Timestamp`. + # Corresponds to the JSON property `timeValue` + # @return [Google::Apis::DlpV2::GoogleTypeTimeOfDay] + attr_accessor :time_value + + # + # Corresponds to the JSON property `timestampValue` + # @return [String] + attr_accessor :timestamp_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @boolean_value = args[:boolean_value] if args.key?(:boolean_value) + @date_value = args[:date_value] if args.key?(:date_value) + @day_of_week_value = args[:day_of_week_value] if args.key?(:day_of_week_value) + @float_value = args[:float_value] if args.key?(:float_value) + @integer_value = args[:integer_value] if args.key?(:integer_value) + @string_value = args[:string_value] if args.key?(:string_value) + @time_value = args[:time_value] if args.key?(:time_value) + @timestamp_value = args[:timestamp_value] if args.key?(:timestamp_value) + end + end + + # A value of a field, including its frequency. + class GooglePrivacyDlpV2ValueFrequency + include Google::Apis::Core::Hashable + + # How many times the value is contained in the field. + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `value` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2Value] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @count = args[:count] if args.key?(:count) + @value = args[:value] if args.key?(:value) + end + end + + # Message defining a list of words or phrases to search for in the data. + class GooglePrivacyDlpV2WordList + include Google::Apis::Core::Hashable + + # Words or phrases defining the dictionary. The dictionary must contain + # at least one phrase and every phrase must contain at least 2 characters + # that are letters or digits. [required] + # Corresponds to the JSON property `words` + # @return [Array] + attr_accessor :words + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @words = args[:words] if args.key?(:words) + end + end + + # An auxiliary table contains statistical information on the relative + # frequency of different quasi-identifiers values. It has one or several + # quasi-identifiers columns, and one column that indicates the relative + # frequency of each quasi-identifier tuple. + # If a tuple is present in the data but not in the auxiliary table, the + # corresponding relative frequency is assumed to be zero (and thus, the + # tuple is highly reidentifiable). + class GooglePrivacyDlpV2beta1AuxiliaryTable + include Google::Apis::Core::Hashable + + # Quasi-identifier columns. [required] + # Corresponds to the JSON property `quasiIds` + # @return [Array] + attr_accessor :quasi_ids + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `relativeFrequency` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId] + attr_accessor :relative_frequency + + # 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 + # `..`. + # Corresponds to the JSON property `table` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable] + attr_accessor :table + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @quasi_ids = args[:quasi_ids] if args.key?(:quasi_ids) + @relative_frequency = args[:relative_frequency] if args.key?(:relative_frequency) + @table = args[:table] if args.key?(:table) + end + end + + # Options defining BigQuery table and row identifiers. + class GooglePrivacyDlpV2beta1BigQueryOptions + include Google::Apis::Core::Hashable + + # References to fields uniquely identifying rows within the table. + # Nested fields in the format, like `person.birthdate.year`, are allowed. + # Corresponds to the JSON property `identifyingFields` + # @return [Array] + attr_accessor :identifying_fields + + # 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 + # `..`. + # Corresponds to the JSON property `tableReference` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable] + attr_accessor :table_reference + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @identifying_fields = args[:identifying_fields] if args.key?(:identifying_fields) + @table_reference = args[:table_reference] if args.key?(:table_reference) + end + end + + # 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 + # `..`. + class GooglePrivacyDlpV2beta1BigQueryTable + include Google::Apis::Core::Hashable + + # Dataset ID of the table. + # Corresponds to the JSON property `datasetId` + # @return [String] + attr_accessor :dataset_id + + # The Google Cloud Platform project ID of the project containing the table. + # If omitted, project ID is inferred from the API call. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # Name of the table. + # Corresponds to the JSON property `tableId` + # @return [String] + attr_accessor :table_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dataset_id = args[:dataset_id] if args.key?(:dataset_id) + @project_id = args[:project_id] if args.key?(:project_id) + @table_id = args[:table_id] if args.key?(:table_id) + end + end + + # Compute numerical stats over an individual column, including + # number of distinct values and value count distribution. + class GooglePrivacyDlpV2beta1CategoricalStatsConfig + include Google::Apis::Core::Hashable + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId] + attr_accessor :field + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + end + end + + # Histogram bucket of value frequencies in the column. + class GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket + include Google::Apis::Core::Hashable + + # Total number of records in this bucket. + # Corresponds to the JSON property `bucketSize` + # @return [Fixnum] + attr_accessor :bucket_size + + # Sample of value frequencies in this bucket. The total number of + # values returned per bucket is capped at 20. + # Corresponds to the JSON property `bucketValues` + # @return [Array] + attr_accessor :bucket_values + + # Lower bound on the value frequency of the values in this bucket. + # Corresponds to the JSON property `valueFrequencyLowerBound` + # @return [Fixnum] + attr_accessor :value_frequency_lower_bound + + # Upper bound on the value frequency of the values in this bucket. + # Corresponds to the JSON property `valueFrequencyUpperBound` + # @return [Fixnum] + attr_accessor :value_frequency_upper_bound + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_size = args[:bucket_size] if args.key?(:bucket_size) + @bucket_values = args[:bucket_values] if args.key?(:bucket_values) + @value_frequency_lower_bound = args[:value_frequency_lower_bound] if args.key?(:value_frequency_lower_bound) + @value_frequency_upper_bound = args[:value_frequency_upper_bound] if args.key?(:value_frequency_upper_bound) + end + end + + # Result of the categorical stats computation. + class GooglePrivacyDlpV2beta1CategoricalStatsResult + include Google::Apis::Core::Hashable + + # Histogram of value frequencies in the column. + # Corresponds to the JSON property `valueFrequencyHistogramBuckets` + # @return [Array] + attr_accessor :value_frequency_histogram_buckets + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @value_frequency_histogram_buckets = args[:value_frequency_histogram_buckets] if args.key?(:value_frequency_histogram_buckets) + end + end + + # Options defining a file or a set of files (path ending with *) within + # a Google Cloud Storage bucket. + class GooglePrivacyDlpV2beta1CloudStorageOptions + include Google::Apis::Core::Hashable + + # Set of files to scan. + # Corresponds to the JSON property `fileSet` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FileSet] + attr_accessor :file_set + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @file_set = args[:file_set] if args.key?(:file_set) + end + end + + # A location in Cloud Storage. + class GooglePrivacyDlpV2beta1CloudStoragePath + include Google::Apis::Core::Hashable + + # The url, in the format of `gs://bucket/`. + # Corresponds to the JSON property `path` + # @return [String] + attr_accessor :path + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @path = args[:path] if args.key?(:path) + end + end + + # Custom information type provided by the user. Used to find domain-specific + # sensitive information configurable to the data in question. + class GooglePrivacyDlpV2beta1CustomInfoType + include Google::Apis::Core::Hashable + + # Custom information type based on a dictionary of words or phrases. This can + # be used to match sensitive information specific to the data, such as a list + # of employee IDs or job titles. + # Dictionary words are case-insensitive and all characters other than letters + # and digits in the unicode [Basic Multilingual + # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29# + # Basic_Multilingual_Plane) + # will be replaced with whitespace when scanning for matches, so the + # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson", + # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters + # surrounding any match must be of a different type than the adjacent + # characters within the word, so letters must be next to non-letters and + # digits next to non-digits. For example, the dictionary word "jen" will + # match the first three letters of the text "jen123" but will return no + # matches for "jennifer". + # Dictionary words containing a large number of characters that are not + # letters or digits may result in unexpected findings because such characters + # are treated as whitespace. + # Corresponds to the JSON property `dictionary` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Dictionary] + attr_accessor :dictionary + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType] + attr_accessor :info_type + + # Message for detecting output from deidentification transformations + # such as + # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2beta1/content/ + # deidentify#CryptoReplaceFfxFpeConfig). + # These types of transformations are + # those that perform pseudonymization, thereby producing a "surrogate" as + # output. This should be used in conjunction with a field on the + # transformation such as `surrogate_info_type`. This custom info type does + # not support the use of `detection_rules`. + # Corresponds to the JSON property `surrogateType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1SurrogateType] + attr_accessor :surrogate_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dictionary = args[:dictionary] if args.key?(:dictionary) + @info_type = args[:info_type] if args.key?(:info_type) + @surrogate_type = args[:surrogate_type] if args.key?(:surrogate_type) + end + end + + # Options defining a data set within Google Cloud Datastore. + class GooglePrivacyDlpV2beta1DatastoreOptions + include Google::Apis::Core::Hashable + + # A representation of a Datastore kind. + # Corresponds to the JSON property `kind` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KindExpression] + attr_accessor :kind + + # Datastore partition ID. + # A partition ID identifies a grouping of entities. The grouping is always + # by project and namespace, however the namespace ID may be empty. + # A partition ID contains several dimensions: + # project ID and namespace ID. + # Corresponds to the JSON property `partitionId` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1PartitionId] + attr_accessor :partition_id + + # Properties to scan. If none are specified, all properties will be scanned + # by default. + # Corresponds to the JSON property `projection` + # @return [Array] + attr_accessor :projection + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @partition_id = args[:partition_id] if args.key?(:partition_id) + @projection = args[:projection] if args.key?(:projection) + end + end + + # Custom information type based on a dictionary of words or phrases. This can + # be used to match sensitive information specific to the data, such as a list + # of employee IDs or job titles. + # Dictionary words are case-insensitive and all characters other than letters + # and digits in the unicode [Basic Multilingual + # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29# + # Basic_Multilingual_Plane) + # will be replaced with whitespace when scanning for matches, so the + # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson", + # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters + # surrounding any match must be of a different type than the adjacent + # characters within the word, so letters must be next to non-letters and + # digits next to non-digits. For example, the dictionary word "jen" will + # match the first three letters of the text "jen123" but will return no + # matches for "jennifer". + # Dictionary words containing a large number of characters that are not + # letters or digits may result in unexpected findings because such characters + # are treated as whitespace. + class GooglePrivacyDlpV2beta1Dictionary + include Google::Apis::Core::Hashable + + # Message defining a list of words or phrases to search for in the data. + # Corresponds to the JSON property `wordList` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1WordList] + attr_accessor :word_list + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @word_list = args[:word_list] if args.key?(:word_list) + end + end + + # An entity in a dataset is a field or set of fields that correspond to a + # single person. For example, in medical records the `EntityId` might be + # a patient identifier, or for financial records it might be an account + # identifier. This message is used when generalizations or analysis must be + # consistent across multiple rows pertaining to the same entity. + class GooglePrivacyDlpV2beta1EntityId + include Google::Apis::Core::Hashable + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId] + attr_accessor :field + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + end + end + + # General identifier of a data field in a storage service. + class GooglePrivacyDlpV2beta1FieldId + include Google::Apis::Core::Hashable + + # Name describing the field. + # Corresponds to the JSON property `columnName` + # @return [String] + attr_accessor :column_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @column_name = args[:column_name] if args.key?(:column_name) + end + end + + # Set of files to scan. + class GooglePrivacyDlpV2beta1FileSet + include Google::Apis::Core::Hashable + + # The url, in the format `gs:///`. Trailing wildcard in the + # path is allowed. + # Corresponds to the JSON property `url` + # @return [String] + attr_accessor :url + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @url = args[:url] if args.key?(:url) + end + end + + # Type of information detected by the API. + class GooglePrivacyDlpV2beta1InfoType + include Google::Apis::Core::Hashable + + # Name of the information type. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # Max findings configuration per info type, per content item or long running + # operation. + class GooglePrivacyDlpV2beta1InfoTypeLimit + include Google::Apis::Core::Hashable + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType] + attr_accessor :info_type + + # Max findings limit for the given infoType. + # Corresponds to the JSON property `maxFindings` + # @return [Fixnum] + attr_accessor :max_findings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @info_type = args[:info_type] if args.key?(:info_type) + @max_findings = args[:max_findings] if args.key?(:max_findings) + end + end + + # Statistics regarding a specific InfoType. + class GooglePrivacyDlpV2beta1InfoTypeStatistics + include Google::Apis::Core::Hashable + + # Number of findings for this info type. + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType] + attr_accessor :info_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @count = args[:count] if args.key?(:count) + @info_type = args[:info_type] if args.key?(:info_type) + end + end + + # Configuration description of the scanning process. + # When used with redactContent only info_types and min_likelihood are currently + # used. + class GooglePrivacyDlpV2beta1InspectConfig + include Google::Apis::Core::Hashable + + # Custom info types provided by the user. + # Corresponds to the JSON property `customInfoTypes` + # @return [Array] + attr_accessor :custom_info_types + + # When true, excludes type information of the findings. + # Corresponds to the JSON property `excludeTypes` + # @return [Boolean] + attr_accessor :exclude_types + alias_method :exclude_types?, :exclude_types + + # When true, a contextual quote from the data that triggered a finding is + # included in the response; see Finding.quote. + # Corresponds to the JSON property `includeQuote` + # @return [Boolean] + attr_accessor :include_quote + alias_method :include_quote?, :include_quote + + # Configuration of findings limit given for specified info types. + # Corresponds to the JSON property `infoTypeLimits` + # @return [Array] + attr_accessor :info_type_limits + + # Restricts what info_types to look for. The values must correspond to + # InfoType values returned by ListInfoTypes or found in documentation. + # Empty info_types runs all enabled detectors. + # Corresponds to the JSON property `infoTypes` + # @return [Array] + attr_accessor :info_types + + # Limits the number of findings per content item or long running operation. + # Corresponds to the JSON property `maxFindings` + # @return [Fixnum] + attr_accessor :max_findings + + # Only returns findings equal or above this threshold. + # Corresponds to the JSON property `minLikelihood` + # @return [String] + attr_accessor :min_likelihood + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @custom_info_types = args[:custom_info_types] if args.key?(:custom_info_types) + @exclude_types = args[:exclude_types] if args.key?(:exclude_types) + @include_quote = args[:include_quote] if args.key?(:include_quote) + @info_type_limits = args[:info_type_limits] if args.key?(:info_type_limits) + @info_types = args[:info_types] if args.key?(:info_types) + @max_findings = args[:max_findings] if args.key?(:max_findings) + @min_likelihood = args[:min_likelihood] if args.key?(:min_likelihood) + end + end + + # Metadata returned within GetOperation for an inspect request. + class GooglePrivacyDlpV2beta1InspectOperationMetadata + include Google::Apis::Core::Hashable + + # The time which this request was started. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # + # Corresponds to the JSON property `infoTypeStats` + # @return [Array] + attr_accessor :info_type_stats + + # Total size in bytes that were processed. + # Corresponds to the JSON property `processedBytes` + # @return [Fixnum] + attr_accessor :processed_bytes + + # Configuration description of the scanning process. + # When used with redactContent only info_types and min_likelihood are currently + # used. + # Corresponds to the JSON property `requestInspectConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InspectConfig] + attr_accessor :request_inspect_config + + # Cloud repository for storing output. + # Corresponds to the JSON property `requestOutputConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1OutputStorageConfig] + attr_accessor :request_output_config + + # Shared message indicating Cloud storage type. + # Corresponds to the JSON property `requestStorageConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1StorageConfig] + attr_accessor :request_storage_config + + # Estimate of the number of bytes to process. + # Corresponds to the JSON property `totalEstimatedBytes` + # @return [Fixnum] + attr_accessor :total_estimated_bytes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @info_type_stats = args[:info_type_stats] if args.key?(:info_type_stats) + @processed_bytes = args[:processed_bytes] if args.key?(:processed_bytes) + @request_inspect_config = args[:request_inspect_config] if args.key?(:request_inspect_config) + @request_output_config = args[:request_output_config] if args.key?(:request_output_config) + @request_storage_config = args[:request_storage_config] if args.key?(:request_storage_config) + @total_estimated_bytes = args[:total_estimated_bytes] if args.key?(:total_estimated_bytes) + end + end + + # The operational data. + class GooglePrivacyDlpV2beta1InspectOperationResult + include Google::Apis::Core::Hashable + + # The server-assigned name, which is only unique within the same service that + # originally returns it. If you use the default HTTP mapping, the + # `name` should have the format of `inspect/results/`id``. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # k-anonymity metric, used for analysis of reidentification risk. + class GooglePrivacyDlpV2beta1KAnonymityConfig + include Google::Apis::Core::Hashable + + # An entity in a dataset is a field or set of fields that correspond to a + # single person. For example, in medical records the `EntityId` might be + # a patient identifier, or for financial records it might be an account + # identifier. This message is used when generalizations or analysis must be + # consistent across multiple rows pertaining to the same entity. + # Corresponds to the JSON property `entityId` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1EntityId] + attr_accessor :entity_id + + # Set of fields to compute k-anonymity over. When multiple fields are + # specified, they are considered a single composite key. Structs and + # repeated data types are not supported; however, nested fields are + # supported so long as they are not structs themselves or nested within + # a repeated field. + # Corresponds to the JSON property `quasiIds` + # @return [Array] + attr_accessor :quasi_ids + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @entity_id = args[:entity_id] if args.key?(:entity_id) + @quasi_ids = args[:quasi_ids] if args.key?(:quasi_ids) + end + end + + # The set of columns' values that share the same k-anonymity value. + class GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass + include Google::Apis::Core::Hashable + + # Size of the equivalence class, for example number of rows with the + # above set of values. + # Corresponds to the JSON property `equivalenceClassSize` + # @return [Fixnum] + attr_accessor :equivalence_class_size + + # Set of values defining the equivalence class. One value per + # quasi-identifier column in the original KAnonymity metric message. + # The order is always the same as the original request. + # Corresponds to the JSON property `quasiIdsValues` + # @return [Array] + attr_accessor :quasi_ids_values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @equivalence_class_size = args[:equivalence_class_size] if args.key?(:equivalence_class_size) + @quasi_ids_values = args[:quasi_ids_values] if args.key?(:quasi_ids_values) + end + end + + # Histogram bucket of equivalence class sizes in the table. + class GooglePrivacyDlpV2beta1KAnonymityHistogramBucket + include Google::Apis::Core::Hashable + + # Total number of records in this bucket. + # Corresponds to the JSON property `bucketSize` + # @return [Fixnum] + attr_accessor :bucket_size + + # Sample of equivalence classes in this bucket. The total number of + # classes returned per bucket is capped at 20. + # Corresponds to the JSON property `bucketValues` + # @return [Array] + attr_accessor :bucket_values + + # Lower bound on the size of the equivalence classes in this bucket. + # Corresponds to the JSON property `equivalenceClassSizeLowerBound` + # @return [Fixnum] + attr_accessor :equivalence_class_size_lower_bound + + # Upper bound on the size of the equivalence classes in this bucket. + # Corresponds to the JSON property `equivalenceClassSizeUpperBound` + # @return [Fixnum] + attr_accessor :equivalence_class_size_upper_bound + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_size = args[:bucket_size] if args.key?(:bucket_size) + @bucket_values = args[:bucket_values] if args.key?(:bucket_values) + @equivalence_class_size_lower_bound = args[:equivalence_class_size_lower_bound] if args.key?(:equivalence_class_size_lower_bound) + @equivalence_class_size_upper_bound = args[:equivalence_class_size_upper_bound] if args.key?(:equivalence_class_size_upper_bound) + end + end + + # Result of the k-anonymity computation. + class GooglePrivacyDlpV2beta1KAnonymityResult + include Google::Apis::Core::Hashable + + # Histogram of k-anonymity equivalence classes. + # Corresponds to the JSON property `equivalenceClassHistogramBuckets` + # @return [Array] + attr_accessor :equivalence_class_histogram_buckets + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @equivalence_class_histogram_buckets = args[:equivalence_class_histogram_buckets] if args.key?(:equivalence_class_histogram_buckets) + end + end + + # Reidentifiability metric. This corresponds to a risk model similar to what + # is called "journalist risk" in the literature, except the attack dataset is + # statistically modeled instead of being perfectly known. This can be done + # using publicly available data (like the US Census), or using a custom + # statistical model (indicated as one or several BigQuery tables), or by + # extrapolating from the distribution of values in the input dataset. + class GooglePrivacyDlpV2beta1KMapEstimationConfig + include Google::Apis::Core::Hashable + + # Several auxiliary tables can be used in the analysis. Each custom_tag + # used to tag a quasi-identifiers column must appear in exactly one column + # of one auxiliary table. + # Corresponds to the JSON property `auxiliaryTables` + # @return [Array] + attr_accessor :auxiliary_tables + + # Fields considered to be quasi-identifiers. No two columns can have the + # same tag. [required] + # Corresponds to the JSON property `quasiIds` + # @return [Array] + attr_accessor :quasi_ids + + # ISO 3166-1 alpha-2 region code to use in the statistical modeling. + # Required if no column is tagged with a region-specific InfoType (like + # US_ZIP_5) or a region code. + # Corresponds to the JSON property `regionCode` + # @return [String] + attr_accessor :region_code + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @auxiliary_tables = args[:auxiliary_tables] if args.key?(:auxiliary_tables) + @quasi_ids = args[:quasi_ids] if args.key?(:quasi_ids) + @region_code = args[:region_code] if args.key?(:region_code) + end + end + + # A KMapEstimationHistogramBucket message with the following values: + # min_anonymity: 3 + # max_anonymity: 5 + # frequency: 42 + # means that there are 42 records whose quasi-identifier values correspond + # to 3, 4 or 5 people in the overlying population. An important particular + # case is when min_anonymity = max_anonymity = 1: the frequency field then + # corresponds to the number of uniquely identifiable records. + class GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket + include Google::Apis::Core::Hashable + + # Number of records within these anonymity bounds. + # Corresponds to the JSON property `bucketSize` + # @return [Fixnum] + attr_accessor :bucket_size + + # Sample of quasi-identifier tuple values in this bucket. The total + # number of classes returned per bucket is capped at 20. + # Corresponds to the JSON property `bucketValues` + # @return [Array] + attr_accessor :bucket_values + + # Always greater than or equal to min_anonymity. + # Corresponds to the JSON property `maxAnonymity` + # @return [Fixnum] + attr_accessor :max_anonymity + + # Always positive. + # Corresponds to the JSON property `minAnonymity` + # @return [Fixnum] + attr_accessor :min_anonymity + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_size = args[:bucket_size] if args.key?(:bucket_size) + @bucket_values = args[:bucket_values] if args.key?(:bucket_values) + @max_anonymity = args[:max_anonymity] if args.key?(:max_anonymity) + @min_anonymity = args[:min_anonymity] if args.key?(:min_anonymity) + end + end + + # A tuple of values for the quasi-identifier columns. + class GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues + include Google::Apis::Core::Hashable + + # The estimated anonymity for these quasi-identifier values. + # Corresponds to the JSON property `estimatedAnonymity` + # @return [Fixnum] + attr_accessor :estimated_anonymity + + # The quasi-identifier values. + # Corresponds to the JSON property `quasiIdsValues` + # @return [Array] + attr_accessor :quasi_ids_values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @estimated_anonymity = args[:estimated_anonymity] if args.key?(:estimated_anonymity) + @quasi_ids_values = args[:quasi_ids_values] if args.key?(:quasi_ids_values) + end + end + + # Result of the reidentifiability analysis. Note that these results are an + # estimation, not exact values. + class GooglePrivacyDlpV2beta1KMapEstimationResult + include Google::Apis::Core::Hashable + + # The intervals [min_anonymity, max_anonymity] do not overlap. If a value + # doesn't correspond to any such interval, the associated frequency is + # zero. For example, the following records: + # `min_anonymity: 1, max_anonymity: 1, frequency: 17` + # `min_anonymity: 2, max_anonymity: 3, frequency: 42` + # `min_anonymity: 5, max_anonymity: 10, frequency: 99` + # mean that there are no record with an estimated anonymity of 4, 5, or + # larger than 10. + # Corresponds to the JSON property `kMapEstimationHistogram` + # @return [Array] + attr_accessor :k_map_estimation_histogram + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @k_map_estimation_histogram = args[:k_map_estimation_histogram] if args.key?(:k_map_estimation_histogram) + end + end + + # A representation of a Datastore kind. + class GooglePrivacyDlpV2beta1KindExpression + include Google::Apis::Core::Hashable + + # The name of the kind. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # l-diversity metric, used for analysis of reidentification risk. + class GooglePrivacyDlpV2beta1LDiversityConfig + include Google::Apis::Core::Hashable + + # Set of quasi-identifiers indicating how equivalence classes are + # defined for the l-diversity computation. When multiple fields are + # specified, they are considered a single composite key. + # Corresponds to the JSON property `quasiIds` + # @return [Array] + attr_accessor :quasi_ids + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `sensitiveAttribute` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId] + attr_accessor :sensitive_attribute + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @quasi_ids = args[:quasi_ids] if args.key?(:quasi_ids) + @sensitive_attribute = args[:sensitive_attribute] if args.key?(:sensitive_attribute) + end + end + + # The set of columns' values that share the same l-diversity value. + class GooglePrivacyDlpV2beta1LDiversityEquivalenceClass + include Google::Apis::Core::Hashable + + # Size of the k-anonymity equivalence class. + # Corresponds to the JSON property `equivalenceClassSize` + # @return [Fixnum] + attr_accessor :equivalence_class_size + + # Number of distinct sensitive values in this equivalence class. + # Corresponds to the JSON property `numDistinctSensitiveValues` + # @return [Fixnum] + attr_accessor :num_distinct_sensitive_values + + # Quasi-identifier values defining the k-anonymity equivalence + # class. The order is always the same as the original request. + # Corresponds to the JSON property `quasiIdsValues` + # @return [Array] + attr_accessor :quasi_ids_values + + # Estimated frequencies of top sensitive values. + # Corresponds to the JSON property `topSensitiveValues` + # @return [Array] + attr_accessor :top_sensitive_values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @equivalence_class_size = args[:equivalence_class_size] if args.key?(:equivalence_class_size) + @num_distinct_sensitive_values = args[:num_distinct_sensitive_values] if args.key?(:num_distinct_sensitive_values) + @quasi_ids_values = args[:quasi_ids_values] if args.key?(:quasi_ids_values) + @top_sensitive_values = args[:top_sensitive_values] if args.key?(:top_sensitive_values) + end + end + + # Histogram bucket of sensitive value frequencies in the table. + class GooglePrivacyDlpV2beta1LDiversityHistogramBucket + include Google::Apis::Core::Hashable + + # Total number of records in this bucket. + # Corresponds to the JSON property `bucketSize` + # @return [Fixnum] + attr_accessor :bucket_size + + # Sample of equivalence classes in this bucket. The total number of + # classes returned per bucket is capped at 20. + # Corresponds to the JSON property `bucketValues` + # @return [Array] + attr_accessor :bucket_values + + # Lower bound on the sensitive value frequencies of the equivalence + # classes in this bucket. + # Corresponds to the JSON property `sensitiveValueFrequencyLowerBound` + # @return [Fixnum] + attr_accessor :sensitive_value_frequency_lower_bound + + # Upper bound on the sensitive value frequencies of the equivalence + # classes in this bucket. + # Corresponds to the JSON property `sensitiveValueFrequencyUpperBound` + # @return [Fixnum] + attr_accessor :sensitive_value_frequency_upper_bound + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @bucket_size = args[:bucket_size] if args.key?(:bucket_size) + @bucket_values = args[:bucket_values] if args.key?(:bucket_values) + @sensitive_value_frequency_lower_bound = args[:sensitive_value_frequency_lower_bound] if args.key?(:sensitive_value_frequency_lower_bound) + @sensitive_value_frequency_upper_bound = args[:sensitive_value_frequency_upper_bound] if args.key?(:sensitive_value_frequency_upper_bound) + end + end + + # Result of the l-diversity computation. + class GooglePrivacyDlpV2beta1LDiversityResult + include Google::Apis::Core::Hashable + + # Histogram of l-diversity equivalence class sensitive value frequencies. + # Corresponds to the JSON property `sensitiveValueFrequencyHistogramBuckets` + # @return [Array] + attr_accessor :sensitive_value_frequency_histogram_buckets + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @sensitive_value_frequency_histogram_buckets = args[:sensitive_value_frequency_histogram_buckets] if args.key?(:sensitive_value_frequency_histogram_buckets) + end + end + + # Compute numerical stats over an individual column, including + # min, max, and quantiles. + class GooglePrivacyDlpV2beta1NumericalStatsConfig + include Google::Apis::Core::Hashable + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId] + attr_accessor :field + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @field = args[:field] if args.key?(:field) + end + end + + # Result of the numerical stats computation. + class GooglePrivacyDlpV2beta1NumericalStatsResult + include Google::Apis::Core::Hashable + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `maxValue` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value] + attr_accessor :max_value + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `minValue` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value] + attr_accessor :min_value + + # List of 99 values that partition the set of field values into 100 equal + # sized buckets. + # Corresponds to the JSON property `quantileValues` + # @return [Array] + attr_accessor :quantile_values + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max_value = args[:max_value] if args.key?(:max_value) + @min_value = args[:min_value] if args.key?(:min_value) + @quantile_values = args[:quantile_values] if args.key?(:quantile_values) + end + end + + # Cloud repository for storing output. + class GooglePrivacyDlpV2beta1OutputStorageConfig + include Google::Apis::Core::Hashable + + # A location in Cloud Storage. + # Corresponds to the JSON property `storagePath` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CloudStoragePath] + attr_accessor :storage_path + + # 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 + # `..`. + # Corresponds to the JSON property `table` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable] + attr_accessor :table + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @storage_path = args[:storage_path] if args.key?(:storage_path) + @table = args[:table] if args.key?(:table) + end + end + + # Datastore partition ID. + # A partition ID identifies a grouping of entities. The grouping is always + # by project and namespace, however the namespace ID may be empty. + # A partition ID contains several dimensions: + # project ID and namespace ID. + class GooglePrivacyDlpV2beta1PartitionId + include Google::Apis::Core::Hashable + + # If not empty, the ID of the namespace to which the entities belong. + # Corresponds to the JSON property `namespaceId` + # @return [String] + attr_accessor :namespace_id + + # The ID of the project to which the entities belong. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @namespace_id = args[:namespace_id] if args.key?(:namespace_id) + @project_id = args[:project_id] if args.key?(:project_id) + end + end + + # Privacy metric to compute for reidentification risk analysis. + class GooglePrivacyDlpV2beta1PrivacyMetric + include Google::Apis::Core::Hashable + + # Compute numerical stats over an individual column, including + # number of distinct values and value count distribution. + # Corresponds to the JSON property `categoricalStatsConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CategoricalStatsConfig] + attr_accessor :categorical_stats_config + + # k-anonymity metric, used for analysis of reidentification risk. + # Corresponds to the JSON property `kAnonymityConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KAnonymityConfig] + attr_accessor :k_anonymity_config + + # Reidentifiability metric. This corresponds to a risk model similar to what + # is called "journalist risk" in the literature, except the attack dataset is + # statistically modeled instead of being perfectly known. This can be done + # using publicly available data (like the US Census), or using a custom + # statistical model (indicated as one or several BigQuery tables), or by + # extrapolating from the distribution of values in the input dataset. + # Corresponds to the JSON property `kMapEstimationConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KMapEstimationConfig] + attr_accessor :k_map_estimation_config + + # l-diversity metric, used for analysis of reidentification risk. + # Corresponds to the JSON property `lDiversityConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1LDiversityConfig] + attr_accessor :l_diversity_config + + # Compute numerical stats over an individual column, including + # min, max, and quantiles. + # Corresponds to the JSON property `numericalStatsConfig` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1NumericalStatsConfig] + attr_accessor :numerical_stats_config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @categorical_stats_config = args[:categorical_stats_config] if args.key?(:categorical_stats_config) + @k_anonymity_config = args[:k_anonymity_config] if args.key?(:k_anonymity_config) + @k_map_estimation_config = args[:k_map_estimation_config] if args.key?(:k_map_estimation_config) + @l_diversity_config = args[:l_diversity_config] if args.key?(:l_diversity_config) + @numerical_stats_config = args[:numerical_stats_config] if args.key?(:numerical_stats_config) + end + end + + # A representation of a Datastore property in a projection. + class GooglePrivacyDlpV2beta1Projection + include Google::Apis::Core::Hashable + + # A reference to a property relative to the Datastore kind expressions. + # Corresponds to the JSON property `property` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1PropertyReference] + attr_accessor :property + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @property = args[:property] if args.key?(:property) + end + end + + # A reference to a property relative to the Datastore kind expressions. + class GooglePrivacyDlpV2beta1PropertyReference + include Google::Apis::Core::Hashable + + # The name of the property. + # If name includes "."s, it may be interpreted as a property name path. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + end + end + + # A quasi-identifier column has a custom_tag, used to know which column + # in the data corresponds to which column in the statistical model. + class GooglePrivacyDlpV2beta1QuasiIdField + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `customTag` + # @return [String] + attr_accessor :custom_tag + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId] + attr_accessor :field + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @custom_tag = args[:custom_tag] if args.key?(:custom_tag) + @field = args[:field] if args.key?(:field) + end + end + + # Metadata returned within the + # [`riskAnalysis.operations.get`](/dlp/docs/reference/rest/v2beta1/riskAnalysis. + # operations/get) + # for risk analysis. + class GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata + include Google::Apis::Core::Hashable + + # The time which this request was started. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # Privacy metric to compute for reidentification risk analysis. + # Corresponds to the JSON property `requestedPrivacyMetric` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1PrivacyMetric] + attr_accessor :requested_privacy_metric + + # 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 + # `..`. + # Corresponds to the JSON property `requestedSourceTable` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable] + attr_accessor :requested_source_table + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @requested_privacy_metric = args[:requested_privacy_metric] if args.key?(:requested_privacy_metric) + @requested_source_table = args[:requested_source_table] if args.key?(:requested_source_table) + end + end + + # Result of a risk analysis + # [`Operation`](/dlp/docs/reference/rest/v2beta1/inspect.operations) + # request. + class GooglePrivacyDlpV2beta1RiskAnalysisOperationResult + include Google::Apis::Core::Hashable + + # Result of the categorical stats computation. + # Corresponds to the JSON property `categoricalStatsResult` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CategoricalStatsResult] + attr_accessor :categorical_stats_result + + # Result of the k-anonymity computation. + # Corresponds to the JSON property `kAnonymityResult` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KAnonymityResult] + attr_accessor :k_anonymity_result + + # Result of the reidentifiability analysis. Note that these results are an + # estimation, not exact values. + # Corresponds to the JSON property `kMapEstimationResult` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KMapEstimationResult] + attr_accessor :k_map_estimation_result + + # Result of the l-diversity computation. + # Corresponds to the JSON property `lDiversityResult` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1LDiversityResult] + attr_accessor :l_diversity_result + + # Result of the numerical stats computation. + # Corresponds to the JSON property `numericalStatsResult` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1NumericalStatsResult] + attr_accessor :numerical_stats_result + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @categorical_stats_result = args[:categorical_stats_result] if args.key?(:categorical_stats_result) + @k_anonymity_result = args[:k_anonymity_result] if args.key?(:k_anonymity_result) + @k_map_estimation_result = args[:k_map_estimation_result] if args.key?(:k_map_estimation_result) + @l_diversity_result = args[:l_diversity_result] if args.key?(:l_diversity_result) + @numerical_stats_result = args[:numerical_stats_result] if args.key?(:numerical_stats_result) + end + end + + # Shared message indicating Cloud storage type. + class GooglePrivacyDlpV2beta1StorageConfig + include Google::Apis::Core::Hashable + + # Options defining BigQuery table and row identifiers. + # Corresponds to the JSON property `bigQueryOptions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryOptions] + attr_accessor :big_query_options + + # Options defining a file or a set of files (path ending with *) within + # a Google Cloud Storage bucket. + # Corresponds to the JSON property `cloudStorageOptions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CloudStorageOptions] + attr_accessor :cloud_storage_options + + # Options defining a data set within Google Cloud Datastore. + # Corresponds to the JSON property `datastoreOptions` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1DatastoreOptions] + attr_accessor :datastore_options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @big_query_options = args[:big_query_options] if args.key?(:big_query_options) + @cloud_storage_options = args[:cloud_storage_options] if args.key?(:cloud_storage_options) + @datastore_options = args[:datastore_options] if args.key?(:datastore_options) + end + end + + # Message for detecting output from deidentification transformations + # such as + # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2beta1/content/ + # deidentify#CryptoReplaceFfxFpeConfig). + # These types of transformations are + # those that perform pseudonymization, thereby producing a "surrogate" as + # output. This should be used in conjunction with a field on the + # transformation such as `surrogate_info_type`. This custom info type does + # not support the use of `detection_rules`. + class GooglePrivacyDlpV2beta1SurrogateType + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # A column with a semantic tag attached. + class GooglePrivacyDlpV2beta1TaggedField + include Google::Apis::Core::Hashable + + # A column can be tagged with a custom tag. In this case, the user must + # indicate an auxiliary table that contains statistical information on + # the possible values of this column (below). + # Corresponds to the JSON property `customTag` + # @return [String] + attr_accessor :custom_tag + + # General identifier of a data field in a storage service. + # Corresponds to the JSON property `field` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId] + attr_accessor :field + + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + # Corresponds to the JSON property `inferred` + # @return [Google::Apis::DlpV2::GoogleProtobufEmpty] + attr_accessor :inferred + + # Type of information detected by the API. + # Corresponds to the JSON property `infoType` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType] + attr_accessor :info_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @custom_tag = args[:custom_tag] if args.key?(:custom_tag) + @field = args[:field] if args.key?(:field) + @inferred = args[:inferred] if args.key?(:inferred) + @info_type = args[:info_type] if args.key?(:info_type) + end + end + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + class GooglePrivacyDlpV2beta1Value + include Google::Apis::Core::Hashable + + # + # Corresponds to the JSON property `booleanValue` + # @return [Boolean] + attr_accessor :boolean_value + alias_method :boolean_value?, :boolean_value + + # Represents a whole calendar date, e.g. date of birth. The time of day and + # time zone are either specified elsewhere or are not significant. The date + # is relative to the Proleptic Gregorian Calendar. The day may be 0 to + # represent a year and month where the day is not significant, e.g. credit card + # expiration date. The year may be 0 to represent a month and day independent + # of year, e.g. anniversary date. Related types are google.type.TimeOfDay + # and `google.protobuf.Timestamp`. + # Corresponds to the JSON property `dateValue` + # @return [Google::Apis::DlpV2::GoogleTypeDate] + attr_accessor :date_value + + # + # Corresponds to the JSON property `floatValue` + # @return [Float] + attr_accessor :float_value + + # + # Corresponds to the JSON property `integerValue` + # @return [Fixnum] + attr_accessor :integer_value + + # + # Corresponds to the JSON property `stringValue` + # @return [String] + attr_accessor :string_value + + # Represents a time of day. The date and time zone are either not significant + # or are specified elsewhere. An API may choose to allow leap seconds. Related + # types are google.type.Date and `google.protobuf.Timestamp`. + # Corresponds to the JSON property `timeValue` + # @return [Google::Apis::DlpV2::GoogleTypeTimeOfDay] + attr_accessor :time_value + + # + # Corresponds to the JSON property `timestampValue` + # @return [String] + attr_accessor :timestamp_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @boolean_value = args[:boolean_value] if args.key?(:boolean_value) + @date_value = args[:date_value] if args.key?(:date_value) + @float_value = args[:float_value] if args.key?(:float_value) + @integer_value = args[:integer_value] if args.key?(:integer_value) + @string_value = args[:string_value] if args.key?(:string_value) + @time_value = args[:time_value] if args.key?(:time_value) + @timestamp_value = args[:timestamp_value] if args.key?(:timestamp_value) + end + end + + # A value of a field, including its frequency. + class GooglePrivacyDlpV2beta1ValueFrequency + include Google::Apis::Core::Hashable + + # How many times the value is contained in the field. + # Corresponds to the JSON property `count` + # @return [Fixnum] + attr_accessor :count + + # Set of primitive values supported by the system. + # Note that for the purposes of inspection or transformation, the number + # of bytes considered to comprise a 'Value' is based on its representation + # as a UTF-8 encoded string. For example, if 'integer_value' is set to + # 123456789, the number of bytes would be counted as 9, even though an + # int64 only holds up to 8 bytes of data. + # Corresponds to the JSON property `value` + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @count = args[:count] if args.key?(:count) + @value = args[:value] if args.key?(:value) + end + end + + # Message defining a list of words or phrases to search for in the data. + class GooglePrivacyDlpV2beta1WordList + include Google::Apis::Core::Hashable + + # Words or phrases defining the dictionary. The dictionary must contain + # at least one phrase and every phrase must contain at least 2 characters + # that are letters or digits. [required] + # Corresponds to the JSON property `words` + # @return [Array] + attr_accessor :words + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @words = args[:words] if args.key?(:words) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + class GoogleProtobufEmpty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + class GoogleRpcStatus + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # A developer-facing error message, which should be in English. Any + # user-facing error message should be localized and sent in the + # google.rpc.Status.details field, or localized by the client. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # Represents a whole calendar date, e.g. date of birth. The time of day and + # time zone are either specified elsewhere or are not significant. The date + # is relative to the Proleptic Gregorian Calendar. The day may be 0 to + # represent a year and month where the day is not significant, e.g. credit card + # expiration date. The year may be 0 to represent a month and day independent + # of year, e.g. anniversary date. Related types are google.type.TimeOfDay + # and `google.protobuf.Timestamp`. + class GoogleTypeDate + include Google::Apis::Core::Hashable + + # Day of month. Must be from 1 to 31 and valid for the year and month, or 0 + # if specifying a year/month where the day is not significant. + # Corresponds to the JSON property `day` + # @return [Fixnum] + attr_accessor :day + + # Month of year. Must be from 1 to 12. + # Corresponds to the JSON property `month` + # @return [Fixnum] + attr_accessor :month + + # Year of date. Must be from 1 to 9999, or 0 if specifying a date without + # a year. + # Corresponds to the JSON property `year` + # @return [Fixnum] + attr_accessor :year + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @day = args[:day] if args.key?(:day) + @month = args[:month] if args.key?(:month) + @year = args[:year] if args.key?(:year) + end + end + + # Represents a time of day. The date and time zone are either not significant + # or are specified elsewhere. An API may choose to allow leap seconds. Related + # types are google.type.Date and `google.protobuf.Timestamp`. + class GoogleTypeTimeOfDay + include Google::Apis::Core::Hashable + + # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose + # to allow the value "24:00:00" for scenarios like business closing time. + # Corresponds to the JSON property `hours` + # @return [Fixnum] + attr_accessor :hours + + # Minutes of hour of day. Must be from 0 to 59. + # Corresponds to the JSON property `minutes` + # @return [Fixnum] + attr_accessor :minutes + + # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. + # Corresponds to the JSON property `nanos` + # @return [Fixnum] + attr_accessor :nanos + + # Seconds of minutes of the time. Must normally be from 0 to 59. An API may + # allow the value 60 if it allows leap-seconds. + # Corresponds to the JSON property `seconds` + # @return [Fixnum] + attr_accessor :seconds + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @hours = args[:hours] if args.key?(:hours) + @minutes = args[:minutes] if args.key?(:minutes) + @nanos = args[:nanos] if args.key?(:nanos) + @seconds = args[:seconds] if args.key?(:seconds) + end + end + end + end +end diff --git a/generated/google/apis/dlp_v2/representations.rb b/generated/google/apis/dlp_v2/representations.rb new file mode 100644 index 000000000..e3b35db5a --- /dev/null +++ b/generated/google/apis/dlp_v2/representations.rb @@ -0,0 +1,3115 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DlpV2 + + class GooglePrivacyDlpV2Action + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2AuxiliaryTable + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2BigQueryKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2BigQueryOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2BigQueryTable + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2BoundingBox + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Bucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2BucketingConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ByteContentItem + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CancelDlpJobRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CategoricalStatsConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CategoricalStatsHistogramBucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CategoricalStatsResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CharacterMaskConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CharsToIgnore + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CloudStorageOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Color + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Condition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Conditions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ContentItem + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ContentLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CreateDeidentifyTemplateRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CreateDlpJobRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CreateInspectTemplateRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CreateJobTriggerRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CryptoHashConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CryptoKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2CustomInfoType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DatastoreKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DatastoreOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DateShiftConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DateTime + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DeidentifyConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DeidentifyContentRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DeidentifyContentResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DeidentifyTemplate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DetectionRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Dictionary + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DlpJob + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2DocumentLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Error + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Expressions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2FieldId + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2FieldTransformation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2FileSet + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Finding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2FindingLimits + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2FixedSizeBucketingConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2HotwordRule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ImageLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ImageRedactionConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InfoType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InfoTypeDescription + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InfoTypeLimit + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InfoTypeStats + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InfoTypeTransformation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InfoTypeTransformations + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InspectConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InspectContentRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InspectContentResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InspectDataSourceDetails + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InspectJobConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InspectResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2InspectTemplate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2JobTrigger + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2KAnonymityConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2KAnonymityEquivalenceClass + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2KAnonymityHistogramBucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2KAnonymityResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2KMapEstimationConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2KMapEstimationHistogramBucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2KMapEstimationQuasiIdValues + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2KMapEstimationResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Key + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2KindExpression + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2KmsWrappedCryptoKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2LDiversityConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2LDiversityEquivalenceClass + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2LDiversityHistogramBucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2LDiversityResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2LikelihoodAdjustment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ListDeidentifyTemplatesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ListDlpJobsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ListInfoTypesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ListInspectTemplatesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ListJobTriggersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Location + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2NumericalStatsConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2NumericalStatsResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2OutputStorageConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2PartitionId + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2PathElement + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2PrimitiveTransformation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2PrivacyMetric + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Proximity + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2PublishToPubSub + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2QuasiIdField + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2QuoteInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Range + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2RecordCondition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2RecordKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2RecordLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2RecordSuppression + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2RecordTransformations + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2RedactConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2RedactImageRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2RedactImageResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Regex + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ReidentifyContentRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ReidentifyContentResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ReplaceValueConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ReplaceWithInfoTypeConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2RequestedOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Result + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2RiskAnalysisJobConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Row + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2SaveFindings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Schedule + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2StorageConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2SummaryResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2SurrogateType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Table + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2TableLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2TaggedField + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2TimePartConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2TimeZone + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2TimespanConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2TransformationOverview + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2TransformationSummary + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2TransientCryptoKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Trigger + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2UnwrappedCryptoKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2UpdateInspectTemplateRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2UpdateJobTriggerRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Value + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2ValueFrequency + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2WordList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1AuxiliaryTable + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1BigQueryOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1BigQueryTable + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1CategoricalStatsConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1CategoricalStatsResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1CloudStorageOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1CloudStoragePath + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1CustomInfoType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1DatastoreOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1Dictionary + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1EntityId + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1FieldId + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1FileSet + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1InfoType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1InfoTypeLimit + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1InfoTypeStatistics + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1InspectConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1InspectOperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1InspectOperationResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1KAnonymityConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1KAnonymityHistogramBucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1KAnonymityResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1KMapEstimationConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1KMapEstimationResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1KindExpression + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1LDiversityConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1LDiversityEquivalenceClass + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1LDiversityHistogramBucket + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1LDiversityResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1NumericalStatsConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1NumericalStatsResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1OutputStorageConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1PartitionId + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1PrivacyMetric + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1Projection + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1PropertyReference + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1QuasiIdField + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1RiskAnalysisOperationResult + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1StorageConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1SurrogateType + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1TaggedField + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1Value + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1ValueFrequency + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2beta1WordList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleProtobufEmpty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleRpcStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleTypeDate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleTypeTimeOfDay + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GooglePrivacyDlpV2Action + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :pub_sub, as: 'pubSub', class: Google::Apis::DlpV2::GooglePrivacyDlpV2PublishToPubSub, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2PublishToPubSub::Representation + + property :save_findings, as: 'saveFindings', class: Google::Apis::DlpV2::GooglePrivacyDlpV2SaveFindings, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2SaveFindings::Representation + + end + end + + class GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :categorical_stats_result, as: 'categoricalStatsResult', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CategoricalStatsResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CategoricalStatsResult::Representation + + property :k_anonymity_result, as: 'kAnonymityResult', class: Google::Apis::DlpV2::GooglePrivacyDlpV2KAnonymityResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2KAnonymityResult::Representation + + property :k_map_estimation_result, as: 'kMapEstimationResult', class: Google::Apis::DlpV2::GooglePrivacyDlpV2KMapEstimationResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2KMapEstimationResult::Representation + + property :l_diversity_result, as: 'lDiversityResult', class: Google::Apis::DlpV2::GooglePrivacyDlpV2LDiversityResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2LDiversityResult::Representation + + property :numerical_stats_result, as: 'numericalStatsResult', class: Google::Apis::DlpV2::GooglePrivacyDlpV2NumericalStatsResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2NumericalStatsResult::Representation + + property :requested_privacy_metric, as: 'requestedPrivacyMetric', class: Google::Apis::DlpV2::GooglePrivacyDlpV2PrivacyMetric, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2PrivacyMetric::Representation + + property :requested_source_table, as: 'requestedSourceTable', class: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable::Representation + + end + end + + class GooglePrivacyDlpV2AuxiliaryTable + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :quasi_ids, as: 'quasiIds', class: Google::Apis::DlpV2::GooglePrivacyDlpV2QuasiIdField, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2QuasiIdField::Representation + + property :relative_frequency, as: 'relativeFrequency', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + property :table, as: 'table', class: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable::Representation + + end + end + + class GooglePrivacyDlpV2BigQueryKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :row_number, :numeric_string => true, as: 'rowNumber' + property :table_reference, as: 'tableReference', class: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable::Representation + + end + end + + class GooglePrivacyDlpV2BigQueryOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :identifying_fields, as: 'identifyingFields', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + property :table_reference, as: 'tableReference', class: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable::Representation + + end + end + + class GooglePrivacyDlpV2BigQueryTable + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dataset_id, as: 'datasetId' + property :project_id, as: 'projectId' + property :table_id, as: 'tableId' + end + end + + class GooglePrivacyDlpV2BoundingBox + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :height, as: 'height' + property :left, as: 'left' + property :top, as: 'top' + property :width, as: 'width' + end + end + + class GooglePrivacyDlpV2Bucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :max, as: 'max', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + property :min, as: 'min', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + property :replacement_value, as: 'replacementValue', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + end + end + + class GooglePrivacyDlpV2BucketingConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :buckets, as: 'buckets', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Bucket, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Bucket::Representation + + end + end + + class GooglePrivacyDlpV2ByteContentItem + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :data, :base64 => true, as: 'data' + property :type, as: 'type' + end + end + + class GooglePrivacyDlpV2CancelDlpJobRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GooglePrivacyDlpV2CategoricalStatsConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + end + end + + class GooglePrivacyDlpV2CategoricalStatsHistogramBucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_size, :numeric_string => true, as: 'bucketSize' + property :bucket_value_count, :numeric_string => true, as: 'bucketValueCount' + collection :bucket_values, as: 'bucketValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ValueFrequency, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ValueFrequency::Representation + + property :value_frequency_lower_bound, :numeric_string => true, as: 'valueFrequencyLowerBound' + property :value_frequency_upper_bound, :numeric_string => true, as: 'valueFrequencyUpperBound' + end + end + + class GooglePrivacyDlpV2CategoricalStatsResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :value_frequency_histogram_buckets, as: 'valueFrequencyHistogramBuckets', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CategoricalStatsHistogramBucket, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CategoricalStatsHistogramBucket::Representation + + end + end + + class GooglePrivacyDlpV2CharacterMaskConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :characters_to_ignore, as: 'charactersToIgnore', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CharsToIgnore, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CharsToIgnore::Representation + + property :masking_character, as: 'maskingCharacter' + property :number_to_mask, as: 'numberToMask' + property :reverse_order, as: 'reverseOrder' + end + end + + class GooglePrivacyDlpV2CharsToIgnore + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :characters_to_skip, as: 'charactersToSkip' + property :common_characters_to_ignore, as: 'commonCharactersToIgnore' + end + end + + class GooglePrivacyDlpV2CloudStorageOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bytes_limit_per_file, :numeric_string => true, as: 'bytesLimitPerFile' + property :file_set, as: 'fileSet', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FileSet, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FileSet::Representation + + end + end + + class GooglePrivacyDlpV2Color + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :blue, as: 'blue' + property :green, as: 'green' + property :red, as: 'red' + end + end + + class GooglePrivacyDlpV2Condition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + property :operator, as: 'operator' + property :value, as: 'value', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + end + end + + class GooglePrivacyDlpV2Conditions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :conditions, as: 'conditions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Condition, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Condition::Representation + + end + end + + class GooglePrivacyDlpV2ContentItem + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :byte_item, as: 'byteItem', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ByteContentItem, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ByteContentItem::Representation + + property :table, as: 'table', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Table, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Table::Representation + + property :value, as: 'value' + end + end + + class GooglePrivacyDlpV2ContentLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :container_name, as: 'containerName' + property :container_timestamp, as: 'containerTimestamp' + property :container_version, as: 'containerVersion' + property :document_location, as: 'documentLocation', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DocumentLocation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DocumentLocation::Representation + + property :image_location, as: 'imageLocation', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ImageLocation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ImageLocation::Representation + + property :record_location, as: 'recordLocation', class: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordLocation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordLocation::Representation + + end + end + + class GooglePrivacyDlpV2CreateDeidentifyTemplateRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :deidentify_template, as: 'deidentifyTemplate', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate::Representation + + property :template_id, as: 'templateId' + end + end + + class GooglePrivacyDlpV2CreateDlpJobRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :inspect_job, as: 'inspectJob', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectJobConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectJobConfig::Representation + + property :job_id, as: 'jobId' + property :risk_job, as: 'riskJob', class: Google::Apis::DlpV2::GooglePrivacyDlpV2RiskAnalysisJobConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2RiskAnalysisJobConfig::Representation + + end + end + + class GooglePrivacyDlpV2CreateInspectTemplateRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :inspect_template, as: 'inspectTemplate', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate::Representation + + property :template_id, as: 'templateId' + end + end + + class GooglePrivacyDlpV2CreateJobTriggerRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :job_trigger, as: 'jobTrigger', class: Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger::Representation + + property :trigger_id, as: 'triggerId' + end + end + + class GooglePrivacyDlpV2CryptoHashConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :crypto_key, as: 'cryptoKey', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey::Representation + + end + end + + class GooglePrivacyDlpV2CryptoKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kms_wrapped, as: 'kmsWrapped', class: Google::Apis::DlpV2::GooglePrivacyDlpV2KmsWrappedCryptoKey, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2KmsWrappedCryptoKey::Representation + + property :transient, as: 'transient', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TransientCryptoKey, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TransientCryptoKey::Representation + + property :unwrapped, as: 'unwrapped', class: Google::Apis::DlpV2::GooglePrivacyDlpV2UnwrappedCryptoKey, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2UnwrappedCryptoKey::Representation + + end + end + + class GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :common_alphabet, as: 'commonAlphabet' + property :context, as: 'context', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + property :crypto_key, as: 'cryptoKey', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey::Representation + + property :custom_alphabet, as: 'customAlphabet' + property :radix, as: 'radix' + property :surrogate_info_type, as: 'surrogateInfoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType::Representation + + end + end + + class GooglePrivacyDlpV2CustomInfoType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :detection_rules, as: 'detectionRules', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DetectionRule, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DetectionRule::Representation + + property :dictionary, as: 'dictionary', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Dictionary, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Dictionary::Representation + + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType::Representation + + property :likelihood, as: 'likelihood' + property :regex, as: 'regex', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Regex, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Regex::Representation + + property :surrogate_type, as: 'surrogateType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2SurrogateType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2SurrogateType::Representation + + end + end + + class GooglePrivacyDlpV2DatastoreKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :entity_key, as: 'entityKey', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Key, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Key::Representation + + end + end + + class GooglePrivacyDlpV2DatastoreOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind', class: Google::Apis::DlpV2::GooglePrivacyDlpV2KindExpression, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2KindExpression::Representation + + property :partition_id, as: 'partitionId', class: Google::Apis::DlpV2::GooglePrivacyDlpV2PartitionId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2PartitionId::Representation + + end + end + + class GooglePrivacyDlpV2DateShiftConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :context, as: 'context', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + property :crypto_key, as: 'cryptoKey', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoKey::Representation + + property :lower_bound_days, as: 'lowerBoundDays' + property :upper_bound_days, as: 'upperBoundDays' + end + end + + class GooglePrivacyDlpV2DateTime + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :date, as: 'date', class: Google::Apis::DlpV2::GoogleTypeDate, decorator: Google::Apis::DlpV2::GoogleTypeDate::Representation + + property :day_of_week, as: 'dayOfWeek' + property :time, as: 'time', class: Google::Apis::DlpV2::GoogleTypeTimeOfDay, decorator: Google::Apis::DlpV2::GoogleTypeTimeOfDay::Representation + + property :time_zone, as: 'timeZone', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TimeZone, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TimeZone::Representation + + end + end + + class GooglePrivacyDlpV2DeidentifyConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :info_type_transformations, as: 'infoTypeTransformations', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeTransformations, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeTransformations::Representation + + property :record_transformations, as: 'recordTransformations', class: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordTransformations, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordTransformations::Representation + + end + end + + class GooglePrivacyDlpV2DeidentifyContentRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :deidentify_config, as: 'deidentifyConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyConfig::Representation + + property :deidentify_template_name, as: 'deidentifyTemplateName' + property :inspect_config, as: 'inspectConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig::Representation + + property :inspect_template_name, as: 'inspectTemplateName' + property :item, as: 'item', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem::Representation + + end + end + + class GooglePrivacyDlpV2DeidentifyContentResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :item, as: 'item', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem::Representation + + property :overview, as: 'overview', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TransformationOverview, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TransformationOverview::Representation + + end + end + + class GooglePrivacyDlpV2DeidentifyTemplate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :deidentify_config, as: 'deidentifyConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyConfig::Representation + + property :description, as: 'description' + property :display_name, as: 'displayName' + property :name, as: 'name' + property :update_time, as: 'updateTime' + end + end + + class GooglePrivacyDlpV2DetectionRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :hotword_rule, as: 'hotwordRule', class: Google::Apis::DlpV2::GooglePrivacyDlpV2HotwordRule, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2HotwordRule::Representation + + end + end + + class GooglePrivacyDlpV2Dictionary + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :word_list, as: 'wordList', class: Google::Apis::DlpV2::GooglePrivacyDlpV2WordList, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2WordList::Representation + + end + end + + class GooglePrivacyDlpV2DlpJob + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :end_time, as: 'endTime' + collection :errors, as: 'errors', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Error, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Error::Representation + + property :inspect_details, as: 'inspectDetails', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectDataSourceDetails, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectDataSourceDetails::Representation + + property :job_trigger_name, as: 'jobTriggerName' + property :name, as: 'name' + property :risk_details, as: 'riskDetails', class: Google::Apis::DlpV2::GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails::Representation + + property :start_time, as: 'startTime' + property :state, as: 'state' + property :type, as: 'type' + end + end + + class GooglePrivacyDlpV2DocumentLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :file_offset, :numeric_string => true, as: 'fileOffset' + end + end + + class GooglePrivacyDlpV2Error + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :details, as: 'details', class: Google::Apis::DlpV2::GoogleRpcStatus, decorator: Google::Apis::DlpV2::GoogleRpcStatus::Representation + + collection :timestamps, as: 'timestamps' + end + end + + class GooglePrivacyDlpV2Expressions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :conditions, as: 'conditions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Conditions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Conditions::Representation + + property :logical_operator, as: 'logicalOperator' + end + end + + class GooglePrivacyDlpV2FieldId + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class GooglePrivacyDlpV2FieldTransformation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :condition, as: 'condition', class: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordCondition, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordCondition::Representation + + collection :fields, as: 'fields', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + property :info_type_transformations, as: 'infoTypeTransformations', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeTransformations, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeTransformations::Representation + + property :primitive_transformation, as: 'primitiveTransformation', class: Google::Apis::DlpV2::GooglePrivacyDlpV2PrimitiveTransformation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2PrimitiveTransformation::Representation + + end + end + + class GooglePrivacyDlpV2FileSet + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :url, as: 'url' + end + end + + class GooglePrivacyDlpV2Finding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType::Representation + + property :likelihood, as: 'likelihood' + property :location, as: 'location', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Location, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Location::Representation + + property :quote, as: 'quote' + property :quote_info, as: 'quoteInfo', class: Google::Apis::DlpV2::GooglePrivacyDlpV2QuoteInfo, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2QuoteInfo::Representation + + end + end + + class GooglePrivacyDlpV2FindingLimits + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :max_findings_per_info_type, as: 'maxFindingsPerInfoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeLimit, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeLimit::Representation + + property :max_findings_per_item, as: 'maxFindingsPerItem' + property :max_findings_per_request, as: 'maxFindingsPerRequest' + end + end + + class GooglePrivacyDlpV2FixedSizeBucketingConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_size, as: 'bucketSize' + property :lower_bound, as: 'lowerBound', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + property :upper_bound, as: 'upperBound', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + end + end + + class GooglePrivacyDlpV2HotwordRule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :hotword_regex, as: 'hotwordRegex', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Regex, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Regex::Representation + + property :likelihood_adjustment, as: 'likelihoodAdjustment', class: Google::Apis::DlpV2::GooglePrivacyDlpV2LikelihoodAdjustment, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2LikelihoodAdjustment::Representation + + property :proximity, as: 'proximity', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Proximity, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Proximity::Representation + + end + end + + class GooglePrivacyDlpV2ImageLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :bounding_boxes, as: 'boundingBoxes', class: Google::Apis::DlpV2::GooglePrivacyDlpV2BoundingBox, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2BoundingBox::Representation + + end + end + + class GooglePrivacyDlpV2ImageRedactionConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType::Representation + + property :redact_all_text, as: 'redactAllText' + property :redaction_color, as: 'redactionColor', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Color, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Color::Representation + + end + end + + class GooglePrivacyDlpV2InfoType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class GooglePrivacyDlpV2InfoTypeDescription + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :name, as: 'name' + collection :supported_by, as: 'supportedBy' + end + end + + class GooglePrivacyDlpV2InfoTypeLimit + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType::Representation + + property :max_findings, as: 'maxFindings' + end + end + + class GooglePrivacyDlpV2InfoTypeStats + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :count, :numeric_string => true, as: 'count' + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType::Representation + + end + end + + class GooglePrivacyDlpV2InfoTypeTransformation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :info_types, as: 'infoTypes', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType::Representation + + property :primitive_transformation, as: 'primitiveTransformation', class: Google::Apis::DlpV2::GooglePrivacyDlpV2PrimitiveTransformation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2PrimitiveTransformation::Representation + + end + end + + class GooglePrivacyDlpV2InfoTypeTransformations + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :transformations, as: 'transformations', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeTransformation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeTransformation::Representation + + end + end + + class GooglePrivacyDlpV2InspectConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :content_options, as: 'contentOptions' + collection :custom_info_types, as: 'customInfoTypes', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CustomInfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CustomInfoType::Representation + + property :exclude_info_types, as: 'excludeInfoTypes' + property :include_quote, as: 'includeQuote' + collection :info_types, as: 'infoTypes', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType::Representation + + property :limits, as: 'limits', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FindingLimits, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FindingLimits::Representation + + property :min_likelihood, as: 'minLikelihood' + end + end + + class GooglePrivacyDlpV2InspectContentRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :inspect_config, as: 'inspectConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig::Representation + + property :inspect_template_name, as: 'inspectTemplateName' + property :item, as: 'item', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem::Representation + + end + end + + class GooglePrivacyDlpV2InspectContentResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :result, as: 'result', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectResult::Representation + + end + end + + class GooglePrivacyDlpV2InspectDataSourceDetails + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :requested_options, as: 'requestedOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2RequestedOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2RequestedOptions::Representation + + property :result, as: 'result', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Result, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Result::Representation + + end + end + + class GooglePrivacyDlpV2InspectJobConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :actions, as: 'actions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Action, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Action::Representation + + property :inspect_config, as: 'inspectConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig::Representation + + property :inspect_template_name, as: 'inspectTemplateName' + property :storage_config, as: 'storageConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2StorageConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2StorageConfig::Representation + + end + end + + class GooglePrivacyDlpV2InspectResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :findings, as: 'findings', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Finding, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Finding::Representation + + property :findings_truncated, as: 'findingsTruncated' + end + end + + class GooglePrivacyDlpV2InspectTemplate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :description, as: 'description' + property :display_name, as: 'displayName' + property :inspect_config, as: 'inspectConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig::Representation + + property :name, as: 'name' + property :update_time, as: 'updateTime' + end + end + + class GooglePrivacyDlpV2JobTrigger + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :description, as: 'description' + property :display_name, as: 'displayName' + collection :errors, as: 'errors', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Error, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Error::Representation + + property :inspect_job, as: 'inspectJob', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectJobConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectJobConfig::Representation + + property :last_run_time, as: 'lastRunTime' + property :name, as: 'name' + property :status, as: 'status' + collection :triggers, as: 'triggers', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Trigger, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Trigger::Representation + + property :update_time, as: 'updateTime' + end + end + + class GooglePrivacyDlpV2KAnonymityConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :quasi_ids, as: 'quasiIds', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + end + end + + class GooglePrivacyDlpV2KAnonymityEquivalenceClass + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :equivalence_class_size, :numeric_string => true, as: 'equivalenceClassSize' + collection :quasi_ids_values, as: 'quasiIdsValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + end + end + + class GooglePrivacyDlpV2KAnonymityHistogramBucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_size, :numeric_string => true, as: 'bucketSize' + property :bucket_value_count, :numeric_string => true, as: 'bucketValueCount' + collection :bucket_values, as: 'bucketValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2KAnonymityEquivalenceClass, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2KAnonymityEquivalenceClass::Representation + + property :equivalence_class_size_lower_bound, :numeric_string => true, as: 'equivalenceClassSizeLowerBound' + property :equivalence_class_size_upper_bound, :numeric_string => true, as: 'equivalenceClassSizeUpperBound' + end + end + + class GooglePrivacyDlpV2KAnonymityResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :equivalence_class_histogram_buckets, as: 'equivalenceClassHistogramBuckets', class: Google::Apis::DlpV2::GooglePrivacyDlpV2KAnonymityHistogramBucket, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2KAnonymityHistogramBucket::Representation + + end + end + + class GooglePrivacyDlpV2KMapEstimationConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :auxiliary_tables, as: 'auxiliaryTables', class: Google::Apis::DlpV2::GooglePrivacyDlpV2AuxiliaryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2AuxiliaryTable::Representation + + collection :quasi_ids, as: 'quasiIds', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TaggedField, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TaggedField::Representation + + property :region_code, as: 'regionCode' + end + end + + class GooglePrivacyDlpV2KMapEstimationHistogramBucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_size, :numeric_string => true, as: 'bucketSize' + property :bucket_value_count, :numeric_string => true, as: 'bucketValueCount' + collection :bucket_values, as: 'bucketValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2KMapEstimationQuasiIdValues, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2KMapEstimationQuasiIdValues::Representation + + property :max_anonymity, :numeric_string => true, as: 'maxAnonymity' + property :min_anonymity, :numeric_string => true, as: 'minAnonymity' + end + end + + class GooglePrivacyDlpV2KMapEstimationQuasiIdValues + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :estimated_anonymity, :numeric_string => true, as: 'estimatedAnonymity' + collection :quasi_ids_values, as: 'quasiIdsValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + end + end + + class GooglePrivacyDlpV2KMapEstimationResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :k_map_estimation_histogram, as: 'kMapEstimationHistogram', class: Google::Apis::DlpV2::GooglePrivacyDlpV2KMapEstimationHistogramBucket, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2KMapEstimationHistogramBucket::Representation + + end + end + + class GooglePrivacyDlpV2Key + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :partition_id, as: 'partitionId', class: Google::Apis::DlpV2::GooglePrivacyDlpV2PartitionId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2PartitionId::Representation + + collection :path, as: 'path', class: Google::Apis::DlpV2::GooglePrivacyDlpV2PathElement, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2PathElement::Representation + + end + end + + class GooglePrivacyDlpV2KindExpression + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class GooglePrivacyDlpV2KmsWrappedCryptoKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :crypto_key_name, as: 'cryptoKeyName' + property :wrapped_key, :base64 => true, as: 'wrappedKey' + end + end + + class GooglePrivacyDlpV2LDiversityConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :quasi_ids, as: 'quasiIds', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + property :sensitive_attribute, as: 'sensitiveAttribute', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + end + end + + class GooglePrivacyDlpV2LDiversityEquivalenceClass + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :equivalence_class_size, :numeric_string => true, as: 'equivalenceClassSize' + property :num_distinct_sensitive_values, :numeric_string => true, as: 'numDistinctSensitiveValues' + collection :quasi_ids_values, as: 'quasiIdsValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + collection :top_sensitive_values, as: 'topSensitiveValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ValueFrequency, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ValueFrequency::Representation + + end + end + + class GooglePrivacyDlpV2LDiversityHistogramBucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_size, :numeric_string => true, as: 'bucketSize' + property :bucket_value_count, :numeric_string => true, as: 'bucketValueCount' + collection :bucket_values, as: 'bucketValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2LDiversityEquivalenceClass, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2LDiversityEquivalenceClass::Representation + + property :sensitive_value_frequency_lower_bound, :numeric_string => true, as: 'sensitiveValueFrequencyLowerBound' + property :sensitive_value_frequency_upper_bound, :numeric_string => true, as: 'sensitiveValueFrequencyUpperBound' + end + end + + class GooglePrivacyDlpV2LDiversityResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :sensitive_value_frequency_histogram_buckets, as: 'sensitiveValueFrequencyHistogramBuckets', class: Google::Apis::DlpV2::GooglePrivacyDlpV2LDiversityHistogramBucket, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2LDiversityHistogramBucket::Representation + + end + end + + class GooglePrivacyDlpV2LikelihoodAdjustment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :fixed_likelihood, as: 'fixedLikelihood' + property :relative_likelihood, as: 'relativeLikelihood' + end + end + + class GooglePrivacyDlpV2ListDeidentifyTemplatesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :deidentify_templates, as: 'deidentifyTemplates', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class GooglePrivacyDlpV2ListDlpJobsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :jobs, as: 'jobs', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DlpJob, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DlpJob::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class GooglePrivacyDlpV2ListInfoTypesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :info_types, as: 'infoTypes', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeDescription, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeDescription::Representation + + end + end + + class GooglePrivacyDlpV2ListInspectTemplatesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :inspect_templates, as: 'inspectTemplates', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class GooglePrivacyDlpV2ListJobTriggersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :job_triggers, as: 'jobTriggers', class: Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class GooglePrivacyDlpV2Location + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :byte_range, as: 'byteRange', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Range, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Range::Representation + + property :codepoint_range, as: 'codepointRange', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Range, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Range::Representation + + collection :content_locations, as: 'contentLocations', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentLocation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentLocation::Representation + + end + end + + class GooglePrivacyDlpV2NumericalStatsConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + end + end + + class GooglePrivacyDlpV2NumericalStatsResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :max_value, as: 'maxValue', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + property :min_value, as: 'minValue', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + collection :quantile_values, as: 'quantileValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + end + end + + class GooglePrivacyDlpV2OutputStorageConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :output_schema, as: 'outputSchema' + property :table, as: 'table', class: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable::Representation + + end + end + + class GooglePrivacyDlpV2PartitionId + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :namespace_id, as: 'namespaceId' + property :project_id, as: 'projectId' + end + end + + class GooglePrivacyDlpV2PathElement + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, :numeric_string => true, as: 'id' + property :kind, as: 'kind' + property :name, as: 'name' + end + end + + class GooglePrivacyDlpV2PrimitiveTransformation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucketing_config, as: 'bucketingConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2BucketingConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2BucketingConfig::Representation + + property :character_mask_config, as: 'characterMaskConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CharacterMaskConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CharacterMaskConfig::Representation + + property :crypto_hash_config, as: 'cryptoHashConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoHashConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoHashConfig::Representation + + property :crypto_replace_ffx_fpe_config, as: 'cryptoReplaceFfxFpeConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig::Representation + + property :date_shift_config, as: 'dateShiftConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DateShiftConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DateShiftConfig::Representation + + property :fixed_size_bucketing_config, as: 'fixedSizeBucketingConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FixedSizeBucketingConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FixedSizeBucketingConfig::Representation + + property :redact_config, as: 'redactConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2RedactConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2RedactConfig::Representation + + property :replace_config, as: 'replaceConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ReplaceValueConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ReplaceValueConfig::Representation + + property :replace_with_info_type_config, as: 'replaceWithInfoTypeConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ReplaceWithInfoTypeConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ReplaceWithInfoTypeConfig::Representation + + property :time_part_config, as: 'timePartConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TimePartConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TimePartConfig::Representation + + end + end + + class GooglePrivacyDlpV2PrivacyMetric + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :categorical_stats_config, as: 'categoricalStatsConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CategoricalStatsConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CategoricalStatsConfig::Representation + + property :k_anonymity_config, as: 'kAnonymityConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2KAnonymityConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2KAnonymityConfig::Representation + + property :k_map_estimation_config, as: 'kMapEstimationConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2KMapEstimationConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2KMapEstimationConfig::Representation + + property :l_diversity_config, as: 'lDiversityConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2LDiversityConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2LDiversityConfig::Representation + + property :numerical_stats_config, as: 'numericalStatsConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2NumericalStatsConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2NumericalStatsConfig::Representation + + end + end + + class GooglePrivacyDlpV2Proximity + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :window_after, as: 'windowAfter' + property :window_before, as: 'windowBefore' + end + end + + class GooglePrivacyDlpV2PublishToPubSub + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :topic, as: 'topic' + end + end + + class GooglePrivacyDlpV2QuasiIdField + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :custom_tag, as: 'customTag' + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + end + end + + class GooglePrivacyDlpV2QuoteInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :date_time, as: 'dateTime', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DateTime, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DateTime::Representation + + end + end + + class GooglePrivacyDlpV2Range + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end, :numeric_string => true, as: 'end' + property :start, :numeric_string => true, as: 'start' + end + end + + class GooglePrivacyDlpV2RecordCondition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :expressions, as: 'expressions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Expressions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Expressions::Representation + + end + end + + class GooglePrivacyDlpV2RecordKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :big_query_key, as: 'bigQueryKey', class: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryKey, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryKey::Representation + + property :datastore_key, as: 'datastoreKey', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DatastoreKey, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DatastoreKey::Representation + + end + end + + class GooglePrivacyDlpV2RecordLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field_id, as: 'fieldId', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + property :record_key, as: 'recordKey', class: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordKey, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordKey::Representation + + property :table_location, as: 'tableLocation', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TableLocation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TableLocation::Representation + + end + end + + class GooglePrivacyDlpV2RecordSuppression + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :condition, as: 'condition', class: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordCondition, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordCondition::Representation + + end + end + + class GooglePrivacyDlpV2RecordTransformations + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :field_transformations, as: 'fieldTransformations', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldTransformation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldTransformation::Representation + + collection :record_suppressions, as: 'recordSuppressions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordSuppression, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordSuppression::Representation + + end + end + + class GooglePrivacyDlpV2RedactConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GooglePrivacyDlpV2RedactImageRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :byte_item, as: 'byteItem', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ByteContentItem, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ByteContentItem::Representation + + collection :image_redaction_configs, as: 'imageRedactionConfigs', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ImageRedactionConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ImageRedactionConfig::Representation + + property :inspect_config, as: 'inspectConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig::Representation + + end + end + + class GooglePrivacyDlpV2RedactImageResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :extracted_text, as: 'extractedText' + property :redacted_image, :base64 => true, as: 'redactedImage' + end + end + + class GooglePrivacyDlpV2Regex + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :pattern, as: 'pattern' + end + end + + class GooglePrivacyDlpV2ReidentifyContentRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :inspect_config, as: 'inspectConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectConfig::Representation + + property :inspect_template_name, as: 'inspectTemplateName' + property :item, as: 'item', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem::Representation + + property :reidentify_config, as: 'reidentifyConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyConfig::Representation + + property :reidentify_template_name, as: 'reidentifyTemplateName' + end + end + + class GooglePrivacyDlpV2ReidentifyContentResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :item, as: 'item', class: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2ContentItem::Representation + + property :overview, as: 'overview', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TransformationOverview, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TransformationOverview::Representation + + end + end + + class GooglePrivacyDlpV2ReplaceValueConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :new_value, as: 'newValue', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + end + end + + class GooglePrivacyDlpV2ReplaceWithInfoTypeConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GooglePrivacyDlpV2RequestedOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :job_config, as: 'jobConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectJobConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectJobConfig::Representation + + property :snapshot_inspect_template, as: 'snapshotInspectTemplate', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate::Representation + + end + end + + class GooglePrivacyDlpV2Result + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :info_type_stats, as: 'infoTypeStats', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeStats, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoTypeStats::Representation + + property :processed_bytes, :numeric_string => true, as: 'processedBytes' + property :total_estimated_bytes, :numeric_string => true, as: 'totalEstimatedBytes' + end + end + + class GooglePrivacyDlpV2RiskAnalysisJobConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :actions, as: 'actions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Action, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Action::Representation + + property :privacy_metric, as: 'privacyMetric', class: Google::Apis::DlpV2::GooglePrivacyDlpV2PrivacyMetric, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2PrivacyMetric::Representation + + property :source_table, as: 'sourceTable', class: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryTable::Representation + + end + end + + class GooglePrivacyDlpV2Row + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :values, as: 'values', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + end + end + + class GooglePrivacyDlpV2SaveFindings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :output_config, as: 'outputConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2OutputStorageConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2OutputStorageConfig::Representation + + end + end + + class GooglePrivacyDlpV2Schedule + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :recurrence_period_duration, as: 'recurrencePeriodDuration' + end + end + + class GooglePrivacyDlpV2StorageConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :big_query_options, as: 'bigQueryOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2BigQueryOptions::Representation + + property :cloud_storage_options, as: 'cloudStorageOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2CloudStorageOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2CloudStorageOptions::Representation + + property :datastore_options, as: 'datastoreOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DatastoreOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DatastoreOptions::Representation + + property :timespan_config, as: 'timespanConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TimespanConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TimespanConfig::Representation + + end + end + + class GooglePrivacyDlpV2SummaryResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :count, :numeric_string => true, as: 'count' + property :details, as: 'details' + end + end + + class GooglePrivacyDlpV2SurrogateType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GooglePrivacyDlpV2Table + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :headers, as: 'headers', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + collection :rows, as: 'rows', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Row, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Row::Representation + + end + end + + class GooglePrivacyDlpV2TableLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :row_index, :numeric_string => true, as: 'rowIndex' + end + end + + class GooglePrivacyDlpV2TaggedField + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :custom_tag, as: 'customTag' + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + property :inferred, as: 'inferred', class: Google::Apis::DlpV2::GoogleProtobufEmpty, decorator: Google::Apis::DlpV2::GoogleProtobufEmpty::Representation + + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType::Representation + + end + end + + class GooglePrivacyDlpV2TimePartConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :part_to_extract, as: 'partToExtract' + end + end + + class GooglePrivacyDlpV2TimeZone + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :offset_minutes, as: 'offsetMinutes' + end + end + + class GooglePrivacyDlpV2TimespanConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :enable_auto_population_of_timespan_config, as: 'enableAutoPopulationOfTimespanConfig' + property :end_time, as: 'endTime' + property :start_time, as: 'startTime' + property :timestamp_field, as: 'timestampField', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + end + end + + class GooglePrivacyDlpV2TransformationOverview + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :transformation_summaries, as: 'transformationSummaries', class: Google::Apis::DlpV2::GooglePrivacyDlpV2TransformationSummary, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2TransformationSummary::Representation + + property :transformed_bytes, :numeric_string => true, as: 'transformedBytes' + end + end + + class GooglePrivacyDlpV2TransformationSummary + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldId::Representation + + collection :field_transformations, as: 'fieldTransformations', class: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldTransformation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2FieldTransformation::Representation + + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InfoType::Representation + + property :record_suppress, as: 'recordSuppress', class: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordSuppression, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2RecordSuppression::Representation + + collection :results, as: 'results', class: Google::Apis::DlpV2::GooglePrivacyDlpV2SummaryResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2SummaryResult::Representation + + property :transformation, as: 'transformation', class: Google::Apis::DlpV2::GooglePrivacyDlpV2PrimitiveTransformation, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2PrimitiveTransformation::Representation + + property :transformed_bytes, :numeric_string => true, as: 'transformedBytes' + end + end + + class GooglePrivacyDlpV2TransientCryptoKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class GooglePrivacyDlpV2Trigger + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :schedule, as: 'schedule', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Schedule, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Schedule::Representation + + end + end + + class GooglePrivacyDlpV2UnwrappedCryptoKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :key, :base64 => true, as: 'key' + end + end + + class GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :deidentify_template, as: 'deidentifyTemplate', class: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate::Representation + + property :update_mask, as: 'updateMask' + end + end + + class GooglePrivacyDlpV2UpdateInspectTemplateRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :inspect_template, as: 'inspectTemplate', class: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate::Representation + + property :update_mask, as: 'updateMask' + end + end + + class GooglePrivacyDlpV2UpdateJobTriggerRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :job_trigger, as: 'jobTrigger', class: Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger::Representation + + property :update_mask, as: 'updateMask' + end + end + + class GooglePrivacyDlpV2Value + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :boolean_value, as: 'booleanValue' + property :date_value, as: 'dateValue', class: Google::Apis::DlpV2::GoogleTypeDate, decorator: Google::Apis::DlpV2::GoogleTypeDate::Representation + + property :day_of_week_value, as: 'dayOfWeekValue' + property :float_value, as: 'floatValue' + property :integer_value, :numeric_string => true, as: 'integerValue' + property :string_value, as: 'stringValue' + property :time_value, as: 'timeValue', class: Google::Apis::DlpV2::GoogleTypeTimeOfDay, decorator: Google::Apis::DlpV2::GoogleTypeTimeOfDay::Representation + + property :timestamp_value, as: 'timestampValue' + end + end + + class GooglePrivacyDlpV2ValueFrequency + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :count, :numeric_string => true, as: 'count' + property :value, as: 'value', class: Google::Apis::DlpV2::GooglePrivacyDlpV2Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2Value::Representation + + end + end + + class GooglePrivacyDlpV2WordList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :words, as: 'words' + end + end + + class GooglePrivacyDlpV2beta1AuxiliaryTable + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :quasi_ids, as: 'quasiIds', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1QuasiIdField, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1QuasiIdField::Representation + + property :relative_frequency, as: 'relativeFrequency', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId::Representation + + property :table, as: 'table', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable::Representation + + end + end + + class GooglePrivacyDlpV2beta1BigQueryOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :identifying_fields, as: 'identifyingFields', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId::Representation + + property :table_reference, as: 'tableReference', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable::Representation + + end + end + + class GooglePrivacyDlpV2beta1BigQueryTable + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dataset_id, as: 'datasetId' + property :project_id, as: 'projectId' + property :table_id, as: 'tableId' + end + end + + class GooglePrivacyDlpV2beta1CategoricalStatsConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId::Representation + + end + end + + class GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_size, :numeric_string => true, as: 'bucketSize' + collection :bucket_values, as: 'bucketValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1ValueFrequency, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1ValueFrequency::Representation + + property :value_frequency_lower_bound, :numeric_string => true, as: 'valueFrequencyLowerBound' + property :value_frequency_upper_bound, :numeric_string => true, as: 'valueFrequencyUpperBound' + end + end + + class GooglePrivacyDlpV2beta1CategoricalStatsResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :value_frequency_histogram_buckets, as: 'valueFrequencyHistogramBuckets', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CategoricalStatsHistogramBucket::Representation + + end + end + + class GooglePrivacyDlpV2beta1CloudStorageOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :file_set, as: 'fileSet', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FileSet, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FileSet::Representation + + end + end + + class GooglePrivacyDlpV2beta1CloudStoragePath + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :path, as: 'path' + end + end + + class GooglePrivacyDlpV2beta1CustomInfoType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dictionary, as: 'dictionary', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Dictionary, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Dictionary::Representation + + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType::Representation + + property :surrogate_type, as: 'surrogateType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1SurrogateType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1SurrogateType::Representation + + end + end + + class GooglePrivacyDlpV2beta1DatastoreOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KindExpression, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KindExpression::Representation + + property :partition_id, as: 'partitionId', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1PartitionId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1PartitionId::Representation + + collection :projection, as: 'projection', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Projection, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Projection::Representation + + end + end + + class GooglePrivacyDlpV2beta1Dictionary + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :word_list, as: 'wordList', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1WordList, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1WordList::Representation + + end + end + + class GooglePrivacyDlpV2beta1EntityId + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId::Representation + + end + end + + class GooglePrivacyDlpV2beta1FieldId + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :column_name, as: 'columnName' + end + end + + class GooglePrivacyDlpV2beta1FileSet + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :url, as: 'url' + end + end + + class GooglePrivacyDlpV2beta1InfoType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class GooglePrivacyDlpV2beta1InfoTypeLimit + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType::Representation + + property :max_findings, as: 'maxFindings' + end + end + + class GooglePrivacyDlpV2beta1InfoTypeStatistics + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :count, :numeric_string => true, as: 'count' + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType::Representation + + end + end + + class GooglePrivacyDlpV2beta1InspectConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :custom_info_types, as: 'customInfoTypes', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CustomInfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CustomInfoType::Representation + + property :exclude_types, as: 'excludeTypes' + property :include_quote, as: 'includeQuote' + collection :info_type_limits, as: 'infoTypeLimits', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoTypeLimit, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoTypeLimit::Representation + + collection :info_types, as: 'infoTypes', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType::Representation + + property :max_findings, as: 'maxFindings' + property :min_likelihood, as: 'minLikelihood' + end + end + + class GooglePrivacyDlpV2beta1InspectOperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + collection :info_type_stats, as: 'infoTypeStats', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoTypeStatistics, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoTypeStatistics::Representation + + property :processed_bytes, :numeric_string => true, as: 'processedBytes' + property :request_inspect_config, as: 'requestInspectConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InspectConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InspectConfig::Representation + + property :request_output_config, as: 'requestOutputConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1OutputStorageConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1OutputStorageConfig::Representation + + property :request_storage_config, as: 'requestStorageConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1StorageConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1StorageConfig::Representation + + property :total_estimated_bytes, :numeric_string => true, as: 'totalEstimatedBytes' + end + end + + class GooglePrivacyDlpV2beta1InspectOperationResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class GooglePrivacyDlpV2beta1KAnonymityConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :entity_id, as: 'entityId', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1EntityId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1EntityId::Representation + + collection :quasi_ids, as: 'quasiIds', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId::Representation + + end + end + + class GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :equivalence_class_size, :numeric_string => true, as: 'equivalenceClassSize' + collection :quasi_ids_values, as: 'quasiIdsValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value::Representation + + end + end + + class GooglePrivacyDlpV2beta1KAnonymityHistogramBucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_size, :numeric_string => true, as: 'bucketSize' + collection :bucket_values, as: 'bucketValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KAnonymityEquivalenceClass::Representation + + property :equivalence_class_size_lower_bound, :numeric_string => true, as: 'equivalenceClassSizeLowerBound' + property :equivalence_class_size_upper_bound, :numeric_string => true, as: 'equivalenceClassSizeUpperBound' + end + end + + class GooglePrivacyDlpV2beta1KAnonymityResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :equivalence_class_histogram_buckets, as: 'equivalenceClassHistogramBuckets', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KAnonymityHistogramBucket, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KAnonymityHistogramBucket::Representation + + end + end + + class GooglePrivacyDlpV2beta1KMapEstimationConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :auxiliary_tables, as: 'auxiliaryTables', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1AuxiliaryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1AuxiliaryTable::Representation + + collection :quasi_ids, as: 'quasiIds', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1TaggedField, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1TaggedField::Representation + + property :region_code, as: 'regionCode' + end + end + + class GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_size, :numeric_string => true, as: 'bucketSize' + collection :bucket_values, as: 'bucketValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues::Representation + + property :max_anonymity, :numeric_string => true, as: 'maxAnonymity' + property :min_anonymity, :numeric_string => true, as: 'minAnonymity' + end + end + + class GooglePrivacyDlpV2beta1KMapEstimationQuasiIdValues + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :estimated_anonymity, :numeric_string => true, as: 'estimatedAnonymity' + collection :quasi_ids_values, as: 'quasiIdsValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value::Representation + + end + end + + class GooglePrivacyDlpV2beta1KMapEstimationResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :k_map_estimation_histogram, as: 'kMapEstimationHistogram', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KMapEstimationHistogramBucket::Representation + + end + end + + class GooglePrivacyDlpV2beta1KindExpression + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class GooglePrivacyDlpV2beta1LDiversityConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :quasi_ids, as: 'quasiIds', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId::Representation + + property :sensitive_attribute, as: 'sensitiveAttribute', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId::Representation + + end + end + + class GooglePrivacyDlpV2beta1LDiversityEquivalenceClass + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :equivalence_class_size, :numeric_string => true, as: 'equivalenceClassSize' + property :num_distinct_sensitive_values, :numeric_string => true, as: 'numDistinctSensitiveValues' + collection :quasi_ids_values, as: 'quasiIdsValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value::Representation + + collection :top_sensitive_values, as: 'topSensitiveValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1ValueFrequency, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1ValueFrequency::Representation + + end + end + + class GooglePrivacyDlpV2beta1LDiversityHistogramBucket + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :bucket_size, :numeric_string => true, as: 'bucketSize' + collection :bucket_values, as: 'bucketValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1LDiversityEquivalenceClass, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1LDiversityEquivalenceClass::Representation + + property :sensitive_value_frequency_lower_bound, :numeric_string => true, as: 'sensitiveValueFrequencyLowerBound' + property :sensitive_value_frequency_upper_bound, :numeric_string => true, as: 'sensitiveValueFrequencyUpperBound' + end + end + + class GooglePrivacyDlpV2beta1LDiversityResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :sensitive_value_frequency_histogram_buckets, as: 'sensitiveValueFrequencyHistogramBuckets', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1LDiversityHistogramBucket, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1LDiversityHistogramBucket::Representation + + end + end + + class GooglePrivacyDlpV2beta1NumericalStatsConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId::Representation + + end + end + + class GooglePrivacyDlpV2beta1NumericalStatsResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :max_value, as: 'maxValue', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value::Representation + + property :min_value, as: 'minValue', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value::Representation + + collection :quantile_values, as: 'quantileValues', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value::Representation + + end + end + + class GooglePrivacyDlpV2beta1OutputStorageConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :storage_path, as: 'storagePath', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CloudStoragePath, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CloudStoragePath::Representation + + property :table, as: 'table', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable::Representation + + end + end + + class GooglePrivacyDlpV2beta1PartitionId + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :namespace_id, as: 'namespaceId' + property :project_id, as: 'projectId' + end + end + + class GooglePrivacyDlpV2beta1PrivacyMetric + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :categorical_stats_config, as: 'categoricalStatsConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CategoricalStatsConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CategoricalStatsConfig::Representation + + property :k_anonymity_config, as: 'kAnonymityConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KAnonymityConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KAnonymityConfig::Representation + + property :k_map_estimation_config, as: 'kMapEstimationConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KMapEstimationConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KMapEstimationConfig::Representation + + property :l_diversity_config, as: 'lDiversityConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1LDiversityConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1LDiversityConfig::Representation + + property :numerical_stats_config, as: 'numericalStatsConfig', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1NumericalStatsConfig, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1NumericalStatsConfig::Representation + + end + end + + class GooglePrivacyDlpV2beta1Projection + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :property, as: 'property', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1PropertyReference, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1PropertyReference::Representation + + end + end + + class GooglePrivacyDlpV2beta1PropertyReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + end + end + + class GooglePrivacyDlpV2beta1QuasiIdField + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :custom_tag, as: 'customTag' + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId::Representation + + end + end + + class GooglePrivacyDlpV2beta1RiskAnalysisOperationMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :requested_privacy_metric, as: 'requestedPrivacyMetric', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1PrivacyMetric, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1PrivacyMetric::Representation + + property :requested_source_table, as: 'requestedSourceTable', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryTable::Representation + + end + end + + class GooglePrivacyDlpV2beta1RiskAnalysisOperationResult + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :categorical_stats_result, as: 'categoricalStatsResult', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CategoricalStatsResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CategoricalStatsResult::Representation + + property :k_anonymity_result, as: 'kAnonymityResult', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KAnonymityResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KAnonymityResult::Representation + + property :k_map_estimation_result, as: 'kMapEstimationResult', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KMapEstimationResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1KMapEstimationResult::Representation + + property :l_diversity_result, as: 'lDiversityResult', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1LDiversityResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1LDiversityResult::Representation + + property :numerical_stats_result, as: 'numericalStatsResult', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1NumericalStatsResult, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1NumericalStatsResult::Representation + + end + end + + class GooglePrivacyDlpV2beta1StorageConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :big_query_options, as: 'bigQueryOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1BigQueryOptions::Representation + + property :cloud_storage_options, as: 'cloudStorageOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CloudStorageOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1CloudStorageOptions::Representation + + property :datastore_options, as: 'datastoreOptions', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1DatastoreOptions, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1DatastoreOptions::Representation + + end + end + + class GooglePrivacyDlpV2beta1SurrogateType + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GooglePrivacyDlpV2beta1TaggedField + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :custom_tag, as: 'customTag' + property :field, as: 'field', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1FieldId::Representation + + property :inferred, as: 'inferred', class: Google::Apis::DlpV2::GoogleProtobufEmpty, decorator: Google::Apis::DlpV2::GoogleProtobufEmpty::Representation + + property :info_type, as: 'infoType', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1InfoType::Representation + + end + end + + class GooglePrivacyDlpV2beta1Value + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :boolean_value, as: 'booleanValue' + property :date_value, as: 'dateValue', class: Google::Apis::DlpV2::GoogleTypeDate, decorator: Google::Apis::DlpV2::GoogleTypeDate::Representation + + property :float_value, as: 'floatValue' + property :integer_value, :numeric_string => true, as: 'integerValue' + property :string_value, as: 'stringValue' + property :time_value, as: 'timeValue', class: Google::Apis::DlpV2::GoogleTypeTimeOfDay, decorator: Google::Apis::DlpV2::GoogleTypeTimeOfDay::Representation + + property :timestamp_value, as: 'timestampValue' + end + end + + class GooglePrivacyDlpV2beta1ValueFrequency + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :count, :numeric_string => true, as: 'count' + property :value, as: 'value', class: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value, decorator: Google::Apis::DlpV2::GooglePrivacyDlpV2beta1Value::Representation + + end + end + + class GooglePrivacyDlpV2beta1WordList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :words, as: 'words' + end + end + + class GoogleProtobufEmpty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class GoogleRpcStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class GoogleTypeDate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :day, as: 'day' + property :month, as: 'month' + property :year, as: 'year' + end + end + + class GoogleTypeTimeOfDay + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :hours, as: 'hours' + property :minutes, as: 'minutes' + property :nanos, as: 'nanos' + property :seconds, as: 'seconds' + end + end + end + end +end diff --git a/generated/google/apis/dlp_v2/service.rb b/generated/google/apis/dlp_v2/service.rb new file mode 100644 index 000000000..07f13d120 --- /dev/null +++ b/generated/google/apis/dlp_v2/service.rb @@ -0,0 +1,1298 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module DlpV2 + # Cloud DLP API + # + # The Google Data Loss Prevention API provides methods for detection of privacy- + # sensitive fragments in text, images, and Google Cloud Platform storage + # repositories. + # + # @example + # require 'google/apis/dlp_v2' + # + # Dlp = Google::Apis::DlpV2 # Alias the module + # service = Dlp::DLPService.new + # + # @see https://cloud.google.com/dlp/docs/ + class DLPService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + attr_accessor :quota_user + + def initialize + super('https://dlp.googleapis.com/', '') + @batch_path = 'batch' + end + + # Returns sensitive information types DLP supports. + # @param [String] filter + # Optional filter to only return infoTypes supported by certain parts of the + # API. Defaults to supported_by=INSPECT. + # @param [String] language_code + # Optional BCP-47 language code for localized infoType friendly + # names. If omitted, or if localized strings are not available, + # en-US strings will be returned. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2ListInfoTypesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ListInfoTypesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_info_types(filter: nil, language_code: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/infoTypes', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2ListInfoTypesResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2ListInfoTypesResponse + command.query['filter'] = filter unless filter.nil? + command.query['languageCode'] = language_code unless language_code.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a de-identify template for re-using frequently used configuration + # for Deidentifying content, images, and storage. + # @param [String] parent + # The parent resource name, for example projects/my-project-id or + # organizations/my-org-id. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2CreateDeidentifyTemplateRequest] google_privacy_dlp_v2_create_deidentify_template_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_organization_deidentify_template(parent, google_privacy_dlp_v2_create_deidentify_template_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+parent}/deidentifyTemplates', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2CreateDeidentifyTemplateRequest::Representation + command.request_object = google_privacy_dlp_v2_create_deidentify_template_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a de-identify template. + # @param [String] name + # Resource name of the organization and deidentify template to be deleted, + # for example `organizations/433245324/deidentifyTemplates/432452342` or + # projects/project-id/deidentifyTemplates/432452342. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_organization_deidentify_template(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::DlpV2::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets a de-identify template. + # @param [String] name + # Resource name of the organization and deidentify template to be read, for + # example `organizations/433245324/deidentifyTemplates/432452342` or + # projects/project-id/deidentifyTemplates/432452342. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_organization_deidentify_template(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists de-identify templates. + # @param [String] parent + # The parent resource name, for example projects/my-project-id or + # organizations/my-org-id. + # @param [Fixnum] page_size + # Optional size of the page, can be limited by server. If zero server returns + # a page of max size 100. + # @param [String] page_token + # Optional page token to continue retrieval. Comes from previous call + # to `ListDeidentifyTemplates`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2ListDeidentifyTemplatesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ListDeidentifyTemplatesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_organization_deidentify_templates(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+parent}/deidentifyTemplates', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2ListDeidentifyTemplatesResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2ListDeidentifyTemplatesResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the de-identify template. + # @param [String] name + # Resource name of organization and deidentify template to be updated, for + # example `organizations/433245324/deidentifyTemplates/432452342` or + # projects/project-id/deidentifyTemplates/432452342. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest] google_privacy_dlp_v2_update_deidentify_template_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_organization_deidentify_template(name, google_privacy_dlp_v2_update_deidentify_template_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v2/{+name}', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest::Representation + command.request_object = google_privacy_dlp_v2_update_deidentify_template_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates an inspect template for re-using frequently used configuration + # for inspecting content, images, and storage. + # @param [String] parent + # The parent resource name, for example projects/my-project-id or + # organizations/my-org-id. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2CreateInspectTemplateRequest] google_privacy_dlp_v2_create_inspect_template_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_organization_inspect_template(parent, google_privacy_dlp_v2_create_inspect_template_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+parent}/inspectTemplates', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2CreateInspectTemplateRequest::Representation + command.request_object = google_privacy_dlp_v2_create_inspect_template_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an inspect template. + # @param [String] name + # Resource name of the organization and inspectTemplate to be deleted, for + # example `organizations/433245324/inspectTemplates/432452342` or + # projects/project-id/inspectTemplates/432452342. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_organization_inspect_template(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::DlpV2::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets an inspect template. + # @param [String] name + # Resource name of the organization and inspectTemplate to be read, for + # example `organizations/433245324/inspectTemplates/432452342` or + # projects/project-id/inspectTemplates/432452342. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_organization_inspect_template(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists inspect templates. + # @param [String] parent + # The parent resource name, for example projects/my-project-id or + # organizations/my-org-id. + # @param [Fixnum] page_size + # Optional size of the page, can be limited by server. If zero server returns + # a page of max size 100. + # @param [String] page_token + # Optional page token to continue retrieval. Comes from previous call + # to `ListInspectTemplates`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2ListInspectTemplatesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ListInspectTemplatesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_organization_inspect_templates(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+parent}/inspectTemplates', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2ListInspectTemplatesResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2ListInspectTemplatesResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the inspect template. + # @param [String] name + # Resource name of organization and inspectTemplate to be updated, for + # example `organizations/433245324/inspectTemplates/432452342` or + # projects/project-id/inspectTemplates/432452342. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2UpdateInspectTemplateRequest] google_privacy_dlp_v2_update_inspect_template_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_organization_inspect_template(name, google_privacy_dlp_v2_update_inspect_template_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v2/{+name}', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2UpdateInspectTemplateRequest::Representation + command.request_object = google_privacy_dlp_v2_update_inspect_template_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # De-identifies potentially sensitive info from a ContentItem. + # This method has limits on input size and output size. + # [How-to guide](/dlp/docs/deidentify-sensitive-data) + # @param [String] parent + # The parent resource name, for example projects/my-project-id. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyContentRequest] google_privacy_dlp_v2_deidentify_content_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyContentResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyContentResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def deidentify_project_content(parent, google_privacy_dlp_v2_deidentify_content_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+parent}/content:deidentify', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyContentRequest::Representation + command.request_object = google_privacy_dlp_v2_deidentify_content_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyContentResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyContentResponse + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Finds potentially sensitive info in content. + # This method has limits on input size, processing time, and output size. + # [How-to guide for text](/dlp/docs/inspecting-text), [How-to guide for + # images](/dlp/docs/inspecting-images) + # @param [String] parent + # The parent resource name, for example projects/my-project-id. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectContentRequest] google_privacy_dlp_v2_inspect_content_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectContentResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectContentResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def inspect_project_content(parent, google_privacy_dlp_v2_inspect_content_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+parent}/content:inspect', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectContentRequest::Representation + command.request_object = google_privacy_dlp_v2_inspect_content_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectContentResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectContentResponse + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Re-identifies content that has been de-identified. + # @param [String] parent + # The parent resource name. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2ReidentifyContentRequest] google_privacy_dlp_v2_reidentify_content_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2ReidentifyContentResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ReidentifyContentResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def reidentify_project_content(parent, google_privacy_dlp_v2_reidentify_content_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+parent}/content:reidentify', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2ReidentifyContentRequest::Representation + command.request_object = google_privacy_dlp_v2_reidentify_content_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2ReidentifyContentResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2ReidentifyContentResponse + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a de-identify template for re-using frequently used configuration + # for Deidentifying content, images, and storage. + # @param [String] parent + # The parent resource name, for example projects/my-project-id or + # organizations/my-org-id. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2CreateDeidentifyTemplateRequest] google_privacy_dlp_v2_create_deidentify_template_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_deidentify_template(parent, google_privacy_dlp_v2_create_deidentify_template_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+parent}/deidentifyTemplates', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2CreateDeidentifyTemplateRequest::Representation + command.request_object = google_privacy_dlp_v2_create_deidentify_template_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a de-identify template. + # @param [String] name + # Resource name of the organization and deidentify template to be deleted, + # for example `organizations/433245324/deidentifyTemplates/432452342` or + # projects/project-id/deidentifyTemplates/432452342. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_deidentify_template(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::DlpV2::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets a de-identify template. + # @param [String] name + # Resource name of the organization and deidentify template to be read, for + # example `organizations/433245324/deidentifyTemplates/432452342` or + # projects/project-id/deidentifyTemplates/432452342. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_deidentify_template(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists de-identify templates. + # @param [String] parent + # The parent resource name, for example projects/my-project-id or + # organizations/my-org-id. + # @param [Fixnum] page_size + # Optional size of the page, can be limited by server. If zero server returns + # a page of max size 100. + # @param [String] page_token + # Optional page token to continue retrieval. Comes from previous call + # to `ListDeidentifyTemplates`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2ListDeidentifyTemplatesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ListDeidentifyTemplatesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_deidentify_templates(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+parent}/deidentifyTemplates', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2ListDeidentifyTemplatesResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2ListDeidentifyTemplatesResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the de-identify template. + # @param [String] name + # Resource name of organization and deidentify template to be updated, for + # example `organizations/433245324/deidentifyTemplates/432452342` or + # projects/project-id/deidentifyTemplates/432452342. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest] google_privacy_dlp_v2_update_deidentify_template_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_project_deidentify_template(name, google_privacy_dlp_v2_update_deidentify_template_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v2/{+name}', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest::Representation + command.request_object = google_privacy_dlp_v2_update_deidentify_template_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2DeidentifyTemplate + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Starts asynchronous cancellation on a long-running DlpJob. The server + # makes a best effort to cancel the DlpJob, but success is not + # guaranteed. + # @param [String] name + # The name of the DlpJob resource to be cancelled. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2CancelDlpJobRequest] google_privacy_dlp_v2_cancel_dlp_job_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def cancel_project_dlp_job(name, google_privacy_dlp_v2_cancel_dlp_job_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+name}:cancel', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2CancelDlpJobRequest::Representation + command.request_object = google_privacy_dlp_v2_cancel_dlp_job_request_object + command.response_representation = Google::Apis::DlpV2::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::DlpV2::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a new job to inspect storage or calculate risk metrics [How-to + # guide](/dlp/docs/compute-risk-analysis). + # @param [String] parent + # The parent resource name, for example projects/my-project-id. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2CreateDlpJobRequest] google_privacy_dlp_v2_create_dlp_job_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2DlpJob] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DlpJob] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_dlp_job(parent, google_privacy_dlp_v2_create_dlp_job_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+parent}/dlpJobs', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2CreateDlpJobRequest::Representation + command.request_object = google_privacy_dlp_v2_create_dlp_job_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2DlpJob::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2DlpJob + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a long-running DlpJob. This method indicates that the client is + # no longer interested in the DlpJob result. The job will be cancelled if + # possible. + # @param [String] name + # The name of the DlpJob resource to be deleted. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_dlp_job(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::DlpV2::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the latest state of a long-running DlpJob. + # @param [String] name + # The name of the DlpJob resource. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2DlpJob] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2DlpJob] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_dlp_job(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2DlpJob::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2DlpJob + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists DlpJobs that match the specified filter in the request. + # @param [String] parent + # The parent resource name, for example projects/my-project-id. + # @param [String] filter + # Optional. Allows filtering. + # Supported syntax: + # * Filter expressions are made up of one or more restrictions. + # * Restrictions can be combined by `AND` or `OR` logical operators. A + # sequence of restrictions implicitly uses `AND`. + # * A restriction has the form of ` `. + # * Supported fields/values for inspect jobs: + # - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED + # - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY + # - `trigger_name` - The resource name of the trigger that created job. + # * Supported fields for risk analysis jobs: + # - `state` - RUNNING|CANCELED|FINISHED|FAILED + # * The operator must be `=` or `!=`. + # Examples: + # * inspected_storage = cloud_storage AND state = done + # * inspected_storage = cloud_storage OR inspected_storage = bigquery + # * inspected_storage = cloud_storage AND (state = done OR state = canceled) + # The length of this field should be no more than 500 characters. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] type + # The type of job. Defaults to `DlpJobType.INSPECT` + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2ListDlpJobsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ListDlpJobsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_dlp_jobs(parent, filter: nil, page_size: nil, page_token: nil, type: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+parent}/dlpJobs', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2ListDlpJobsResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2ListDlpJobsResponse + command.params['parent'] = parent unless parent.nil? + command.query['filter'] = filter unless filter.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['type'] = type unless type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Redacts potentially sensitive info from an image. + # This method has limits on input size, processing time, and output size. + # [How-to guide](/dlp/docs/redacting-sensitive-data-images) + # @param [String] parent + # The parent resource name, for example projects/my-project-id. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2RedactImageRequest] google_privacy_dlp_v2_redact_image_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2RedactImageResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2RedactImageResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def redact_project_image(parent, google_privacy_dlp_v2_redact_image_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+parent}/image:redact', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2RedactImageRequest::Representation + command.request_object = google_privacy_dlp_v2_redact_image_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2RedactImageResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2RedactImageResponse + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates an inspect template for re-using frequently used configuration + # for inspecting content, images, and storage. + # @param [String] parent + # The parent resource name, for example projects/my-project-id or + # organizations/my-org-id. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2CreateInspectTemplateRequest] google_privacy_dlp_v2_create_inspect_template_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_inspect_template(parent, google_privacy_dlp_v2_create_inspect_template_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+parent}/inspectTemplates', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2CreateInspectTemplateRequest::Representation + command.request_object = google_privacy_dlp_v2_create_inspect_template_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes an inspect template. + # @param [String] name + # Resource name of the organization and inspectTemplate to be deleted, for + # example `organizations/433245324/inspectTemplates/432452342` or + # projects/project-id/inspectTemplates/432452342. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_inspect_template(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::DlpV2::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets an inspect template. + # @param [String] name + # Resource name of the organization and inspectTemplate to be read, for + # example `organizations/433245324/inspectTemplates/432452342` or + # projects/project-id/inspectTemplates/432452342. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_inspect_template(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists inspect templates. + # @param [String] parent + # The parent resource name, for example projects/my-project-id or + # organizations/my-org-id. + # @param [Fixnum] page_size + # Optional size of the page, can be limited by server. If zero server returns + # a page of max size 100. + # @param [String] page_token + # Optional page token to continue retrieval. Comes from previous call + # to `ListInspectTemplates`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2ListInspectTemplatesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ListInspectTemplatesResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_inspect_templates(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+parent}/inspectTemplates', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2ListInspectTemplatesResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2ListInspectTemplatesResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates the inspect template. + # @param [String] name + # Resource name of organization and inspectTemplate to be updated, for + # example `organizations/433245324/inspectTemplates/432452342` or + # projects/project-id/inspectTemplates/432452342. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2UpdateInspectTemplateRequest] google_privacy_dlp_v2_update_inspect_template_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_project_inspect_template(name, google_privacy_dlp_v2_update_inspect_template_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v2/{+name}', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2UpdateInspectTemplateRequest::Representation + command.request_object = google_privacy_dlp_v2_update_inspect_template_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2InspectTemplate + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a job trigger to run DLP actions such as scanning storage for + # sensitive information on a set schedule. + # @param [String] parent + # The parent resource name, for example projects/my-project-id. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2CreateJobTriggerRequest] google_privacy_dlp_v2_create_job_trigger_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def create_project_job_trigger(parent, google_privacy_dlp_v2_create_job_trigger_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+parent}/jobTriggers', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2CreateJobTriggerRequest::Representation + command.request_object = google_privacy_dlp_v2_create_job_trigger_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger + command.params['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a job trigger. + # @param [String] name + # Resource name of the project and the triggeredJob, for example + # `projects/dlp-test-project/jobTriggers/53234423`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GoogleProtobufEmpty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GoogleProtobufEmpty] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def delete_project_job_trigger(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GoogleProtobufEmpty::Representation + command.response_class = Google::Apis::DlpV2::GoogleProtobufEmpty + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets a job trigger. + # @param [String] name + # Resource name of the project and the triggeredJob, for example + # `projects/dlp-test-project/jobTriggers/53234423`. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_project_job_trigger(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+name}', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists job triggers. + # @param [String] parent + # The parent resource name, for example projects/my-project-id. + # @param [String] order_by + # Optional comma separated list of triggeredJob fields to order by, + # followed by 'asc/desc' postfix, i.e. + # `"create_time asc,name desc,schedule_mode asc"`. This list is + # case-insensitive. + # Example: `"name asc,schedule_mode desc, status desc"` + # Supported filters keys and values are: + # - `create_time`: corresponds to time the triggeredJob was created. + # - `update_time`: corresponds to time the triggeredJob was last updated. + # - `name`: corresponds to JobTrigger's display name. + # - `status`: corresponds to the triggeredJob status. + # @param [Fixnum] page_size + # Optional size of the page, can be limited by a server. + # @param [String] page_token + # Optional page token to continue retrieval. Comes from previous call + # to ListJobTriggers. `order_by` and `filter` should not change for + # subsequent calls, but can be omitted if token is specified. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2ListJobTriggersResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2ListJobTriggersResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_project_job_triggers(parent, order_by: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+parent}/jobTriggers', options) + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2ListJobTriggersResponse::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2ListJobTriggersResponse + command.params['parent'] = parent unless parent.nil? + command.query['orderBy'] = order_by unless order_by.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates a job trigger. + # @param [String] name + # Resource name of the project and the triggeredJob, for example + # `projects/dlp-test-project/jobTriggers/53234423`. + # @param [Google::Apis::DlpV2::GooglePrivacyDlpV2UpdateJobTriggerRequest] google_privacy_dlp_v2_update_job_trigger_request_object + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_project_job_trigger(name, google_privacy_dlp_v2_update_job_trigger_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v2/{+name}', options) + command.request_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2UpdateJobTriggerRequest::Representation + command.request_object = google_privacy_dlp_v2_update_job_trigger_request_object + command.response_representation = Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger::Representation + command.response_class = Google::Apis::DlpV2::GooglePrivacyDlpV2JobTrigger + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/dns_v1.rb b/generated/google/apis/dns_v1.rb index 37a4ff7d6..15e9fa730 100644 --- a/generated/google/apis/dns_v1.rb +++ b/generated/google/apis/dns_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/cloud-dns module DnsV1 VERSION = 'V1' - REVISION = '20180309' + REVISION = '20180314' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/dns_v1/classes.rb b/generated/google/apis/dns_v1/classes.rb index d09312f3f..c6b0d0049 100644 --- a/generated/google/apis/dns_v1/classes.rb +++ b/generated/google/apis/dns_v1/classes.rb @@ -41,6 +41,12 @@ module Google # @return [String] attr_accessor :id + # If the DNS queries for the zone will be served. + # Corresponds to the JSON property `isServing` + # @return [Boolean] + attr_accessor :is_serving + alias_method :is_serving?, :is_serving + # Identifies what kind of resource this is. Value: the fixed string "dns#change". # Corresponds to the JSON property `kind` # @return [String] @@ -66,6 +72,7 @@ module Google @additions = args[:additions] if args.key?(:additions) @deletions = args[:deletions] if args.key?(:deletions) @id = args[:id] if args.key?(:id) + @is_serving = args[:is_serving] if args.key?(:is_serving) @kind = args[:kind] if args.key?(:kind) @start_time = args[:start_time] if args.key?(:start_time) @status = args[:status] if args.key?(:status) @@ -82,6 +89,11 @@ module Google # @return [Array] attr_accessor :changes + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + # Type of resource. # Corresponds to the JSON property `kind` # @return [String] @@ -106,6 +118,216 @@ module Google # Update properties of this object def update!(**args) @changes = args[:changes] if args.key?(:changes) + @header = args[:header] if args.key?(:header) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # A DNSSEC key pair. + class DnsKey + include Google::Apis::Core::Hashable + + # String mnemonic specifying the DNSSEC algorithm of this key. Immutable after + # creation time. + # Corresponds to the JSON property `algorithm` + # @return [String] + attr_accessor :algorithm + + # The time that this resource was created in the control plane. This is in + # RFC3339 text format. Output only. + # Corresponds to the JSON property `creationTime` + # @return [String] + attr_accessor :creation_time + + # A mutable string of at most 1024 characters associated with this resource for + # the user's convenience. Has no effect on the resource's function. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. + # These digests are needed to construct a DS record that points at this DNS key. + # Output only. + # Corresponds to the JSON property `digests` + # @return [Array] + attr_accessor :digests + + # Unique identifier for the resource; defined by the server (output only). + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Active keys will be used to sign subsequent changes to the ManagedZone. + # Inactive keys will still be present as DNSKEY Resource Records for the use of + # resolvers validating existing signatures. + # Corresponds to the JSON property `isActive` + # @return [Boolean] + attr_accessor :is_active + alias_method :is_active?, :is_active + + # Length of the key in bits. Specified at creation time then immutable. + # Corresponds to the JSON property `keyLength` + # @return [Fixnum] + attr_accessor :key_length + + # The key tag is a non-cryptographic hash of the a DNSKEY resource record + # associated with this DnsKey. The key tag can be used to identify a DNSKEY more + # quickly (but it is not a unique identifier). In particular, the key tag is + # used in a parent zone's DS record to point at the DNSKEY in this child + # ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm + # to calculate it is specified in RFC4034 Appendix B. Output only. + # Corresponds to the JSON property `keyTag` + # @return [Fixnum] + attr_accessor :key_tag + + # Identifies what kind of resource this is. Value: the fixed string "dns#dnsKey". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Base64 encoded public half of this key. Output only. + # Corresponds to the JSON property `publicKey` + # @return [String] + attr_accessor :public_key + + # One of "KEY_SIGNING" or "ZONE_SIGNING". Keys of type KEY_SIGNING have the + # Secure Entry Point flag set and, when active, will be used to sign only + # resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag + # will be cleared and this key will be used to sign only resource record sets of + # other types. Immutable after creation time. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @algorithm = args[:algorithm] if args.key?(:algorithm) + @creation_time = args[:creation_time] if args.key?(:creation_time) + @description = args[:description] if args.key?(:description) + @digests = args[:digests] if args.key?(:digests) + @id = args[:id] if args.key?(:id) + @is_active = args[:is_active] if args.key?(:is_active) + @key_length = args[:key_length] if args.key?(:key_length) + @key_tag = args[:key_tag] if args.key?(:key_tag) + @kind = args[:kind] if args.key?(:kind) + @public_key = args[:public_key] if args.key?(:public_key) + @type = args[:type] if args.key?(:type) + end + end + + # + class DnsKeyDigest + include Google::Apis::Core::Hashable + + # The base-16 encoded bytes of this digest. Suitable for use in a DS resource + # record. + # Corresponds to the JSON property `digest` + # @return [String] + attr_accessor :digest + + # Specifies the algorithm used to calculate this digest. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @digest = args[:digest] if args.key?(:digest) + @type = args[:type] if args.key?(:type) + end + end + + # Parameters for DnsKey key generation. Used for generating initial keys for a + # new ManagedZone and as default when adding a new DnsKey. + class DnsKeySpec + include Google::Apis::Core::Hashable + + # String mnemonic specifying the DNSSEC algorithm of this key. + # Corresponds to the JSON property `algorithm` + # @return [String] + attr_accessor :algorithm + + # Length of the keys in bits. + # Corresponds to the JSON property `keyLength` + # @return [Fixnum] + attr_accessor :key_length + + # One of "KEY_SIGNING" or "ZONE_SIGNING". Keys of type KEY_SIGNING have the + # Secure Entry Point flag set and, when active, will be used to sign only + # resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag + # will be cleared and this key will be used to sign only resource record sets of + # other types. + # Corresponds to the JSON property `keyType` + # @return [String] + attr_accessor :key_type + + # Identifies what kind of resource this is. Value: the fixed string "dns# + # dnsKeySpec". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @algorithm = args[:algorithm] if args.key?(:algorithm) + @key_length = args[:key_length] if args.key?(:key_length) + @key_type = args[:key_type] if args.key?(:key_type) + @kind = args[:kind] if args.key?(:kind) + end + end + + # The response to a request to enumerate DnsKeys in a ManagedZone. + class DnsKeysListResponse + include Google::Apis::Core::Hashable + + # The requested resources. + # Corresponds to the JSON property `dnsKeys` + # @return [Array] + attr_accessor :dns_keys + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results following + # your last page of results in pagination order. To fetch them, make another + # list request using this value as your pagination token. + # In this way you can retrieve the complete contents of even very large + # collections one page at a time. However, if the contents of the collection + # change between the first and last paginated list request, the set of all + # elements returned will be an inconsistent view of the collection. There is no + # way to retrieve a "snapshot" of collections larger than the maximum page size. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dns_keys = args[:dns_keys] if args.key?(:dns_keys) + @header = args[:header] if args.key?(:header) @kind = args[:kind] if args.key?(:kind) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) end @@ -134,6 +356,11 @@ module Google # @return [String] attr_accessor :dns_name + # DNSSEC configuration. + # Corresponds to the JSON property `dnssecConfig` + # @return [Google::Apis::DnsV1::ManagedZoneDnsSecConfig] + attr_accessor :dnssec_config + # Unique identifier for the resource; defined by the server (output only) # Corresponds to the JSON property `id` # @return [Fixnum] @@ -179,6 +406,7 @@ module Google @creation_time = args[:creation_time] if args.key?(:creation_time) @description = args[:description] if args.key?(:description) @dns_name = args[:dns_name] if args.key?(:dns_name) + @dnssec_config = args[:dnssec_config] if args.key?(:dnssec_config) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @labels = args[:labels] if args.key?(:labels) @@ -188,10 +416,100 @@ module Google end end + # + class ManagedZoneDnsSecConfig + include Google::Apis::Core::Hashable + + # Specifies parameters that will be used for generating initial DnsKeys for this + # ManagedZone. Output only while state is not OFF. + # Corresponds to the JSON property `defaultKeySpecs` + # @return [Array] + attr_accessor :default_key_specs + + # Identifies what kind of resource this is. Value: the fixed string "dns# + # managedZoneDnsSecConfig". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Specifies the mechanism used to provide authenticated denial-of-existence + # responses. Output only while state is not OFF. + # Corresponds to the JSON property `nonExistence` + # @return [String] + attr_accessor :non_existence + + # Specifies whether DNSSEC is enabled, and what mode it is in. + # Corresponds to the JSON property `state` + # @return [String] + attr_accessor :state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @default_key_specs = args[:default_key_specs] if args.key?(:default_key_specs) + @kind = args[:kind] if args.key?(:kind) + @non_existence = args[:non_existence] if args.key?(:non_existence) + @state = args[:state] if args.key?(:state) + end + end + + # + class ManagedZoneOperationsListResponse + include Google::Apis::Core::Hashable + + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + + # Type of resource. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The presence of this field indicates that there exist more results following + # your last page of results in pagination order. To fetch them, make another + # list request using this value as your page token. + # In this way you can retrieve the complete contents of even very large + # collections one page at a time. However, if the contents of the collection + # change between the first and last paginated list request, the set of all + # elements returned will be an inconsistent view of the collection. There is no + # way to retrieve a consistent snapshot of a collection larger than the maximum + # page size. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The operation resources. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @header = args[:header] if args.key?(:header) + @kind = args[:kind] if args.key?(:kind) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + # class ListManagedZonesResponse include Google::Apis::Core::Hashable + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + # Type of resource. # Corresponds to the JSON property `kind` # @return [String] @@ -221,12 +539,139 @@ module Google # Update properties of this object def update!(**args) + @header = args[:header] if args.key?(:header) @kind = args[:kind] if args.key?(:kind) @managed_zones = args[:managed_zones] if args.key?(:managed_zones) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) end end + # An operation represents a successful mutation performed on a Cloud DNS + # resource. Operations provide: - An audit log of server resource mutations. - A + # way to recover/retry API calls in the case where the response is never + # received by the caller. Use the caller specified client_operation_id. + class Operation + include Google::Apis::Core::Hashable + + # Only populated if the operation targeted a DnsKey (output only). + # Corresponds to the JSON property `dnsKeyContext` + # @return [Google::Apis::DnsV1::OperationDnsKeyContext] + attr_accessor :dns_key_context + + # Unique identifier for the resource. This is the client_operation_id if the + # client specified it when the mutation was initiated, otherwise, it is + # generated by the server. The name must be 1-63 characters long and match the + # regular expression [-a-z0-9]? (output only) + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Identifies what kind of resource this is. Value: the fixed string "dns# + # operation". + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # The time that this operation was started by the server. This is in RFC3339 + # text format (output only). + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # Status of the operation. Can be one of the following: "PENDING" or "DONE" ( + # output only). + # Corresponds to the JSON property `status` + # @return [String] + attr_accessor :status + + # Type of the operation. Operations include insert, update, and delete (output + # only). + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # User who requested the operation, for example: user@example.com. cloud-dns- + # system for operations automatically done by the system. (output only) + # Corresponds to the JSON property `user` + # @return [String] + attr_accessor :user + + # Only populated if the operation targeted a ManagedZone (output only). + # Corresponds to the JSON property `zoneContext` + # @return [Google::Apis::DnsV1::OperationManagedZoneContext] + attr_accessor :zone_context + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @dns_key_context = args[:dns_key_context] if args.key?(:dns_key_context) + @id = args[:id] if args.key?(:id) + @kind = args[:kind] if args.key?(:kind) + @start_time = args[:start_time] if args.key?(:start_time) + @status = args[:status] if args.key?(:status) + @type = args[:type] if args.key?(:type) + @user = args[:user] if args.key?(:user) + @zone_context = args[:zone_context] if args.key?(:zone_context) + end + end + + # + class OperationDnsKeyContext + include Google::Apis::Core::Hashable + + # A DNSSEC key pair. + # Corresponds to the JSON property `newValue` + # @return [Google::Apis::DnsV1::DnsKey] + attr_accessor :new_value + + # A DNSSEC key pair. + # Corresponds to the JSON property `oldValue` + # @return [Google::Apis::DnsV1::DnsKey] + attr_accessor :old_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @new_value = args[:new_value] if args.key?(:new_value) + @old_value = args[:old_value] if args.key?(:old_value) + end + end + + # + class OperationManagedZoneContext + include Google::Apis::Core::Hashable + + # A zone is a subtree of the DNS namespace under one administrative + # responsibility. A ManagedZone is a resource that represents a DNS zone hosted + # by the Cloud DNS service. + # Corresponds to the JSON property `newValue` + # @return [Google::Apis::DnsV1::ManagedZone] + attr_accessor :new_value + + # A zone is a subtree of the DNS namespace under one administrative + # responsibility. A ManagedZone is a resource that represents a DNS zone hosted + # by the Cloud DNS service. + # Corresponds to the JSON property `oldValue` + # @return [Google::Apis::DnsV1::ManagedZone] + attr_accessor :old_value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @new_value = args[:new_value] if args.key?(:new_value) + @old_value = args[:old_value] if args.key?(:old_value) + end + end + # A project resource. The project is a top level container for resources # including Cloud DNS ManagedZones. Projects can be created only in the APIs # console. @@ -272,6 +717,11 @@ module Google class Quota include Google::Apis::Core::Hashable + # Maximum allowed number of DnsKeys per ManagedZone. + # Corresponds to the JSON property `dnsKeysPerManagedZone` + # @return [Fixnum] + attr_accessor :dns_keys_per_managed_zone + # Identifies what kind of resource this is. Value: the fixed string "dns#quota". # Corresponds to the JSON property `kind` # @return [String] @@ -308,12 +758,18 @@ module Google # @return [Fixnum] attr_accessor :total_rrdata_size_per_change + # DNSSEC algorithm and key length types that can be used for DnsKeys. + # Corresponds to the JSON property `whitelistedKeySpecs` + # @return [Array] + attr_accessor :whitelisted_key_specs + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @dns_keys_per_managed_zone = args[:dns_keys_per_managed_zone] if args.key?(:dns_keys_per_managed_zone) @kind = args[:kind] if args.key?(:kind) @managed_zones = args[:managed_zones] if args.key?(:managed_zones) @resource_records_per_rrset = args[:resource_records_per_rrset] if args.key?(:resource_records_per_rrset) @@ -321,6 +777,7 @@ module Google @rrset_deletions_per_change = args[:rrset_deletions_per_change] if args.key?(:rrset_deletions_per_change) @rrsets_per_managed_zone = args[:rrsets_per_managed_zone] if args.key?(:rrsets_per_managed_zone) @total_rrdata_size_per_change = args[:total_rrdata_size_per_change] if args.key?(:total_rrdata_size_per_change) + @whitelisted_key_specs = args[:whitelisted_key_specs] if args.key?(:whitelisted_key_specs) end end @@ -344,6 +801,11 @@ module Google # @return [Array] attr_accessor :rrdatas + # As defined in RFC 4034 (section 3.2). + # Corresponds to the JSON property `signatureRrdatas` + # @return [Array] + attr_accessor :signature_rrdatas + # Number of seconds that this ResourceRecordSet can be cached by resolvers. # Corresponds to the JSON property `ttl` # @return [Fixnum] @@ -364,6 +826,7 @@ module Google @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @rrdatas = args[:rrdatas] if args.key?(:rrdatas) + @signature_rrdatas = args[:signature_rrdatas] if args.key?(:signature_rrdatas) @ttl = args[:ttl] if args.key?(:ttl) @type = args[:type] if args.key?(:type) end @@ -373,6 +836,11 @@ module Google class ListResourceRecordSetsResponse include Google::Apis::Core::Hashable + # Elements common to every response. + # Corresponds to the JSON property `header` + # @return [Google::Apis::DnsV1::ResponseHeader] + attr_accessor :header + # Type of resource. # Corresponds to the JSON property `kind` # @return [String] @@ -402,11 +870,33 @@ module Google # Update properties of this object def update!(**args) + @header = args[:header] if args.key?(:header) @kind = args[:kind] if args.key?(:kind) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) @rrsets = args[:rrsets] if args.key?(:rrsets) end end + + # Elements common to every response. + class ResponseHeader + include Google::Apis::Core::Hashable + + # For mutating operation requests that completed successfully. This is the + # client_operation_id if the client specified it, otherwise it is generated by + # the server (output only). + # Corresponds to the JSON property `operationId` + # @return [String] + attr_accessor :operation_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @operation_id = args[:operation_id] if args.key?(:operation_id) + end + end end end end diff --git a/generated/google/apis/dns_v1/representations.rb b/generated/google/apis/dns_v1/representations.rb index 7154f0887..d3c062f76 100644 --- a/generated/google/apis/dns_v1/representations.rb +++ b/generated/google/apis/dns_v1/representations.rb @@ -34,18 +34,72 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class DnsKey + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DnsKeyDigest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DnsKeySpec + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DnsKeysListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ManagedZone class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class ManagedZoneDnsSecConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ManagedZoneOperationsListResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ListManagedZonesResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationDnsKeyContext + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OperationManagedZoneContext + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Project class Representation < Google::Apis::Core::JsonRepresentation; end @@ -70,6 +124,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class ResponseHeader + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Change # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -78,6 +138,7 @@ module Google collection :deletions, as: 'deletions', class: Google::Apis::DnsV1::ResourceRecordSet, decorator: Google::Apis::DnsV1::ResourceRecordSet::Representation property :id, as: 'id' + property :is_serving, as: 'isServing' property :kind, as: 'kind' property :start_time, as: 'startTime' property :status, as: 'status' @@ -89,6 +150,56 @@ module Google class Representation < Google::Apis::Core::JsonRepresentation collection :changes, as: 'changes', class: Google::Apis::DnsV1::Change, decorator: Google::Apis::DnsV1::Change::Representation + property :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + end + end + + class DnsKey + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :algorithm, as: 'algorithm' + property :creation_time, as: 'creationTime' + property :description, as: 'description' + collection :digests, as: 'digests', class: Google::Apis::DnsV1::DnsKeyDigest, decorator: Google::Apis::DnsV1::DnsKeyDigest::Representation + + property :id, as: 'id' + property :is_active, as: 'isActive' + property :key_length, as: 'keyLength' + property :key_tag, as: 'keyTag' + property :kind, as: 'kind' + property :public_key, as: 'publicKey' + property :type, as: 'type' + end + end + + class DnsKeyDigest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :digest, as: 'digest' + property :type, as: 'type' + end + end + + class DnsKeySpec + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :algorithm, as: 'algorithm' + property :key_length, as: 'keyLength' + property :key_type, as: 'keyType' + property :kind, as: 'kind' + end + end + + class DnsKeysListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :dns_keys, as: 'dnsKeys', class: Google::Apis::DnsV1::DnsKey, decorator: Google::Apis::DnsV1::DnsKey::Representation + + property :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + property :kind, as: 'kind' property :next_page_token, as: 'nextPageToken' end @@ -100,6 +211,8 @@ module Google property :creation_time, as: 'creationTime' property :description, as: 'description' property :dns_name, as: 'dnsName' + property :dnssec_config, as: 'dnssecConfig', class: Google::Apis::DnsV1::ManagedZoneDnsSecConfig, decorator: Google::Apis::DnsV1::ManagedZoneDnsSecConfig::Representation + property :id, :numeric_string => true, as: 'id' property :kind, as: 'kind' hash :labels, as: 'labels' @@ -109,9 +222,34 @@ module Google end end + class ManagedZoneDnsSecConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :default_key_specs, as: 'defaultKeySpecs', class: Google::Apis::DnsV1::DnsKeySpec, decorator: Google::Apis::DnsV1::DnsKeySpec::Representation + + property :kind, as: 'kind' + property :non_existence, as: 'nonExistence' + property :state, as: 'state' + end + end + + class ManagedZoneOperationsListResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + + property :kind, as: 'kind' + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::DnsV1::Operation, decorator: Google::Apis::DnsV1::Operation::Representation + + end + end + class ListManagedZonesResponse # @private class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + property :kind, as: 'kind' collection :managed_zones, as: 'managedZones', class: Google::Apis::DnsV1::ManagedZone, decorator: Google::Apis::DnsV1::ManagedZone::Representation @@ -119,6 +257,42 @@ module Google end end + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :dns_key_context, as: 'dnsKeyContext', class: Google::Apis::DnsV1::OperationDnsKeyContext, decorator: Google::Apis::DnsV1::OperationDnsKeyContext::Representation + + property :id, as: 'id' + property :kind, as: 'kind' + property :start_time, as: 'startTime' + property :status, as: 'status' + property :type, as: 'type' + property :user, as: 'user' + property :zone_context, as: 'zoneContext', class: Google::Apis::DnsV1::OperationManagedZoneContext, decorator: Google::Apis::DnsV1::OperationManagedZoneContext::Representation + + end + end + + class OperationDnsKeyContext + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :new_value, as: 'newValue', class: Google::Apis::DnsV1::DnsKey, decorator: Google::Apis::DnsV1::DnsKey::Representation + + property :old_value, as: 'oldValue', class: Google::Apis::DnsV1::DnsKey, decorator: Google::Apis::DnsV1::DnsKey::Representation + + end + end + + class OperationManagedZoneContext + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :new_value, as: 'newValue', class: Google::Apis::DnsV1::ManagedZone, decorator: Google::Apis::DnsV1::ManagedZone::Representation + + property :old_value, as: 'oldValue', class: Google::Apis::DnsV1::ManagedZone, decorator: Google::Apis::DnsV1::ManagedZone::Representation + + end + end + class Project # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -133,6 +307,7 @@ module Google class Quota # @private class Representation < Google::Apis::Core::JsonRepresentation + property :dns_keys_per_managed_zone, as: 'dnsKeysPerManagedZone' property :kind, as: 'kind' property :managed_zones, as: 'managedZones' property :resource_records_per_rrset, as: 'resourceRecordsPerRrset' @@ -140,6 +315,8 @@ module Google property :rrset_deletions_per_change, as: 'rrsetDeletionsPerChange' property :rrsets_per_managed_zone, as: 'rrsetsPerManagedZone' property :total_rrdata_size_per_change, as: 'totalRrdataSizePerChange' + collection :whitelisted_key_specs, as: 'whitelistedKeySpecs', class: Google::Apis::DnsV1::DnsKeySpec, decorator: Google::Apis::DnsV1::DnsKeySpec::Representation + end end @@ -149,6 +326,7 @@ module Google property :kind, as: 'kind' property :name, as: 'name' collection :rrdatas, as: 'rrdatas' + collection :signature_rrdatas, as: 'signatureRrdatas' property :ttl, as: 'ttl' property :type, as: 'type' end @@ -157,12 +335,21 @@ module Google class ListResourceRecordSetsResponse # @private class Representation < Google::Apis::Core::JsonRepresentation + property :header, as: 'header', class: Google::Apis::DnsV1::ResponseHeader, decorator: Google::Apis::DnsV1::ResponseHeader::Representation + property :kind, as: 'kind' property :next_page_token, as: 'nextPageToken' collection :rrsets, as: 'rrsets', class: Google::Apis::DnsV1::ResourceRecordSet, decorator: Google::Apis::DnsV1::ResourceRecordSet::Representation end end + + class ResponseHeader + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :operation_id, as: 'operationId' + end + end end end end diff --git a/generated/google/apis/dns_v1/service.rb b/generated/google/apis/dns_v1/service.rb index 5ebb5f4d0..90eceb26c 100644 --- a/generated/google/apis/dns_v1/service.rb +++ b/generated/google/apis/dns_v1/service.rb @@ -60,6 +60,9 @@ module Google # Identifies the managed zone addressed by this request. Can be the managed zone # name or id. # @param [Google::Apis::DnsV1::Change] change_object + # @param [String] client_operation_id + # For mutating operation requests only. An optional identifier specified by the + # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -81,7 +84,7 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def create_change(project, managed_zone, change_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + def create_change(project, managed_zone, change_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, '{project}/managedZones/{managedZone}/changes', options) command.request_representation = Google::Apis::DnsV1::Change::Representation command.request_object = change_object @@ -89,6 +92,7 @@ module Google command.response_class = Google::Apis::DnsV1::Change command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? + command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? @@ -104,6 +108,9 @@ module Google # @param [String] change_id # The identifier of the requested change, from a previous # ResourceRecordSetsChangeResponse. + # @param [String] client_operation_id + # For mutating operation requests only. An optional identifier specified by the + # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -125,13 +132,14 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def get_change(project, managed_zone, change_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + def get_change(project, managed_zone, change_id, client_operation_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, '{project}/managedZones/{managedZone}/changes/{changeId}', options) command.response_representation = Google::Apis::DnsV1::Change::Representation command.response_class = Google::Apis::DnsV1::Change command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? command.params['changeId'] = change_id unless change_id.nil? + command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? @@ -191,10 +199,210 @@ module Google execute_or_queue_command(command, &block) end + # Fetch the representation of an existing DnsKey. + # @param [String] project + # Identifies the project addressed by this request. + # @param [String] managed_zone + # Identifies the managed zone addressed by this request. Can be the managed zone + # name or id. + # @param [String] dns_key_id + # The identifier of the requested DnsKey. + # @param [String] client_operation_id + # For mutating operation requests only. An optional identifier specified by the + # client. Must be unique for operation resources in the Operations collection. + # @param [String] digest_type + # An optional comma-separated list of digest types to compute and display for + # key signing keys. If omitted, the recommended digest type will be computed and + # displayed. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DnsV1::DnsKey] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1::DnsKey] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_dns_key(project, managed_zone, dns_key_id, client_operation_id: nil, digest_type: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}', options) + command.response_representation = Google::Apis::DnsV1::DnsKey::Representation + command.response_class = Google::Apis::DnsV1::DnsKey + command.params['project'] = project unless project.nil? + command.params['managedZone'] = managed_zone unless managed_zone.nil? + command.params['dnsKeyId'] = dns_key_id unless dns_key_id.nil? + command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? + command.query['digestType'] = digest_type unless digest_type.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Enumerate DnsKeys to a ResourceRecordSet collection. + # @param [String] project + # Identifies the project addressed by this request. + # @param [String] managed_zone + # Identifies the managed zone addressed by this request. Can be the managed zone + # name or id. + # @param [String] digest_type + # An optional comma-separated list of digest types to compute and display for + # key signing keys. If omitted, the recommended digest type will be computed and + # displayed. + # @param [Fixnum] max_results + # Optional. Maximum number of results to be returned. If unspecified, the server + # will decide how many results to return. + # @param [String] page_token + # Optional. A tag returned by a previous list request that was truncated. Use + # this parameter to continue a previous list request. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DnsV1::DnsKeysListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1::DnsKeysListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_dns_keys(project, managed_zone, digest_type: nil, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/managedZones/{managedZone}/dnsKeys', options) + command.response_representation = Google::Apis::DnsV1::DnsKeysListResponse::Representation + command.response_class = Google::Apis::DnsV1::DnsKeysListResponse + command.params['project'] = project unless project.nil? + command.params['managedZone'] = managed_zone unless managed_zone.nil? + command.query['digestType'] = digest_type unless digest_type.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Fetch the representation of an existing Operation. + # @param [String] project + # Identifies the project addressed by this request. + # @param [String] managed_zone + # Identifies the managed zone addressed by this request. + # @param [String] operation + # Identifies the operation addressed by this request. + # @param [String] client_operation_id + # For mutating operation requests only. An optional identifier specified by the + # client. Must be unique for operation resources in the Operations collection. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DnsV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def get_managed_zone_operation(project, managed_zone, operation, client_operation_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/managedZones/{managedZone}/operations/{operation}', options) + command.response_representation = Google::Apis::DnsV1::Operation::Representation + command.response_class = Google::Apis::DnsV1::Operation + command.params['project'] = project unless project.nil? + command.params['managedZone'] = managed_zone unless managed_zone.nil? + command.params['operation'] = operation unless operation.nil? + command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Enumerate Operations for the given ManagedZone. + # @param [String] project + # Identifies the project addressed by this request. + # @param [String] managed_zone + # Identifies the managed zone addressed by this request. + # @param [Fixnum] max_results + # Optional. Maximum number of results to be returned. If unspecified, the server + # will decide how many results to return. + # @param [String] page_token + # Optional. A tag returned by a previous list request that was truncated. Use + # this parameter to continue a previous list request. + # @param [String] sort_by + # Sorting criterion. The only supported values are START_TIME and ID. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DnsV1::ManagedZoneOperationsListResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1::ManagedZoneOperationsListResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_managed_zone_operations(project, managed_zone, max_results: nil, page_token: nil, sort_by: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, '{project}/managedZones/{managedZone}/operations', options) + command.response_representation = Google::Apis::DnsV1::ManagedZoneOperationsListResponse::Representation + command.response_class = Google::Apis::DnsV1::ManagedZoneOperationsListResponse + command.params['project'] = project unless project.nil? + command.params['managedZone'] = managed_zone unless managed_zone.nil? + command.query['maxResults'] = max_results unless max_results.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['sortBy'] = sort_by unless sort_by.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Create a new ManagedZone. # @param [String] project # Identifies the project addressed by this request. # @param [Google::Apis::DnsV1::ManagedZone] managed_zone_object + # @param [String] client_operation_id + # For mutating operation requests only. An optional identifier specified by the + # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -216,13 +424,14 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def create_managed_zone(project, managed_zone_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + def create_managed_zone(project, managed_zone_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:post, '{project}/managedZones', options) command.request_representation = Google::Apis::DnsV1::ManagedZone::Representation command.request_object = managed_zone_object command.response_representation = Google::Apis::DnsV1::ManagedZone::Representation command.response_class = Google::Apis::DnsV1::ManagedZone command.params['project'] = project unless project.nil? + command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? @@ -235,6 +444,9 @@ module Google # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or id. + # @param [String] client_operation_id + # For mutating operation requests only. An optional identifier specified by the + # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -256,10 +468,11 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def delete_managed_zone(project, managed_zone, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + def delete_managed_zone(project, managed_zone, client_operation_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:delete, '{project}/managedZones/{managedZone}', options) command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? + command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? @@ -272,6 +485,9 @@ module Google # @param [String] managed_zone # Identifies the managed zone addressed by this request. Can be the managed zone # name or id. + # @param [String] client_operation_id + # For mutating operation requests only. An optional identifier specified by the + # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -293,12 +509,13 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def get_managed_zone(project, managed_zone, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + def get_managed_zone(project, managed_zone, client_operation_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, '{project}/managedZones/{managedZone}', options) command.response_representation = Google::Apis::DnsV1::ManagedZone::Representation command.response_class = Google::Apis::DnsV1::ManagedZone command.params['project'] = project unless project.nil? command.params['managedZone'] = managed_zone unless managed_zone.nil? + command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? @@ -351,9 +568,104 @@ module Google execute_or_queue_command(command, &block) end + # Update an existing ManagedZone. This method supports patch semantics. + # @param [String] project + # Identifies the project addressed by this request. + # @param [String] managed_zone + # Identifies the managed zone addressed by this request. Can be the managed zone + # name or id. + # @param [Google::Apis::DnsV1::ManagedZone] managed_zone_object + # @param [String] client_operation_id + # For mutating operation requests only. An optional identifier specified by the + # client. Must be unique for operation resources in the Operations collection. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DnsV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def patch_managed_zone(project, managed_zone, managed_zone_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/managedZones/{managedZone}', options) + command.request_representation = Google::Apis::DnsV1::ManagedZone::Representation + command.request_object = managed_zone_object + command.response_representation = Google::Apis::DnsV1::Operation::Representation + command.response_class = Google::Apis::DnsV1::Operation + command.params['project'] = project unless project.nil? + command.params['managedZone'] = managed_zone unless managed_zone.nil? + command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + + # Update an existing ManagedZone. + # @param [String] project + # Identifies the project addressed by this request. + # @param [String] managed_zone + # Identifies the managed zone addressed by this request. Can be the managed zone + # name or id. + # @param [Google::Apis::DnsV1::ManagedZone] managed_zone_object + # @param [String] client_operation_id + # For mutating operation requests only. An optional identifier specified by the + # client. Must be unique for operation resources in the Operations collection. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::DnsV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DnsV1::Operation] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def update_managed_zone(project, managed_zone, managed_zone_object = nil, client_operation_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/managedZones/{managedZone}', options) + command.request_representation = Google::Apis::DnsV1::ManagedZone::Representation + command.request_object = managed_zone_object + command.response_representation = Google::Apis::DnsV1::Operation::Representation + command.response_class = Google::Apis::DnsV1::Operation + command.params['project'] = project unless project.nil? + command.params['managedZone'] = managed_zone unless managed_zone.nil? + command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Fetch the representation of an existing Project. # @param [String] project # Identifies the project addressed by this request. + # @param [String] client_operation_id + # For mutating operation requests only. An optional identifier specified by the + # client. Must be unique for operation resources in the Operations collection. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -375,11 +687,12 @@ module Google # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification # @raise [Google::Apis::AuthorizationError] Authorization is required - def get_project(project, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + def get_project(project, client_operation_id: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) command = make_simple_command(:get, '{project}', options) command.response_representation = Google::Apis::DnsV1::Project::Representation command.response_class = Google::Apis::DnsV1::Project command.params['project'] = project unless project.nil? + command.query['clientOperationId'] = client_operation_id unless client_operation_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? diff --git a/generated/google/apis/serviceconsumermanagement_v1.rb b/generated/google/apis/serviceconsumermanagement_v1.rb index 860f092f3..37ac3bc31 100644 --- a/generated/google/apis/serviceconsumermanagement_v1.rb +++ b/generated/google/apis/serviceconsumermanagement_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/service-consumer-management/docs/overview module ServiceconsumermanagementV1 VERSION = 'V1' - REVISION = '20180312' + REVISION = '20180317' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/serviceconsumermanagement_v1/classes.rb b/generated/google/apis/serviceconsumermanagement_v1/classes.rb index 1a31911ce..5edd3c812 100644 --- a/generated/google/apis/serviceconsumermanagement_v1/classes.rb +++ b/generated/google/apis/serviceconsumermanagement_v1/classes.rb @@ -872,9 +872,6 @@ module Google #
[display text][fully.qualified.proto.name]
# Text can be excluded from doc using the following notation: #
(-- internal comment --)
- # Comments can be made conditional using a visibility label. The below - # text will be only rendered if the `BETA` label is available: - #
(--BETA: comment for BETA users --)
# A few directives are available in documentation. Note that # directives must appear on a single line to be properly # identified. The `include` directive includes a markdown file from @@ -3046,9 +3043,6 @@ module Google #
[display text][fully.qualified.proto.name]
# Text can be excluded from doc using the following notation: #
(-- internal comment --)
- # Comments can be made conditional using a visibility label. The below - # text will be only rendered if the `BETA` label is available: - #
(--BETA: comment for BETA users --)
# A few directives are available in documentation. Note that # directives must appear on a single line to be properly # identified. The `include` directive includes a markdown file from @@ -3285,27 +3279,6 @@ module Google # @return [Google::Apis::ServiceconsumermanagementV1::Usage] attr_accessor :usage - # `Visibility` defines restrictions for the visibility of service - # elements. Restrictions are specified using visibility labels - # (e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects. - # Users and projects can have access to more than one visibility label. The - # effective visibility for multiple labels is the union of each label's - # elements, plus any unrestricted elements. - # If an element and its parents have no restrictions, visibility is - # unconditionally granted. - # Example: - # visibility: - # rules: - # - selector: google.calendar.Calendar.EnhancedSearch - # restriction: TRUSTED_TESTER - # - selector: google.calendar.Calendar.Delegate - # restriction: GOOGLE_INTERNAL - # Here, all methods are publicly visible except for the restricted methods - # EnhancedSearch and Delegate. - # Corresponds to the JSON property `visibility` - # @return [Google::Apis::ServiceconsumermanagementV1::Visibility] - attr_accessor :visibility - def initialize(**args) update!(**args) end @@ -3340,7 +3313,6 @@ module Google @title = args[:title] if args.key?(:title) @types = args[:types] if args.key?(:types) @usage = args[:usage] if args.key?(:usage) - @visibility = args[:visibility] if args.key?(:visibility) end end @@ -3677,7 +3649,7 @@ module Google # Google Cloud API names of services that will be activated on this project # during provisioning. If any of these services can not be activated, - # the `addTenantProject` method will fail. + # request will fail. # For example: 'compute.googleapis.com','cloudfunctions.googleapis.com' # Corresponds to the JSON property `services` # @return [Array] @@ -3907,79 +3879,6 @@ module Google @skip_service_control = args[:skip_service_control] if args.key?(:skip_service_control) end end - - # `Visibility` defines restrictions for the visibility of service - # elements. Restrictions are specified using visibility labels - # (e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects. - # Users and projects can have access to more than one visibility label. The - # effective visibility for multiple labels is the union of each label's - # elements, plus any unrestricted elements. - # If an element and its parents have no restrictions, visibility is - # unconditionally granted. - # Example: - # visibility: - # rules: - # - selector: google.calendar.Calendar.EnhancedSearch - # restriction: TRUSTED_TESTER - # - selector: google.calendar.Calendar.Delegate - # restriction: GOOGLE_INTERNAL - # Here, all methods are publicly visible except for the restricted methods - # EnhancedSearch and Delegate. - class Visibility - include Google::Apis::Core::Hashable - - # A list of visibility rules that apply to individual API elements. - # **NOTE:** All service configuration rules follow "last one wins" order. - # Corresponds to the JSON property `rules` - # @return [Array] - attr_accessor :rules - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @rules = args[:rules] if args.key?(:rules) - end - end - - # A visibility rule provides visibility configuration for an individual API - # element. - class VisibilityRule - include Google::Apis::Core::Hashable - - # A comma-separated list of visibility labels that apply to the `selector`. - # Any of the listed labels can be used to grant the visibility. - # If a rule has multiple labels, removing one of the labels but not all of - # them can break clients. - # Example: - # visibility: - # rules: - # - selector: google.calendar.Calendar.EnhancedSearch - # restriction: GOOGLE_INTERNAL, TRUSTED_TESTER - # Removing GOOGLE_INTERNAL from this restriction will break clients that - # rely on this method and only had access to it through GOOGLE_INTERNAL. - # Corresponds to the JSON property `restriction` - # @return [String] - attr_accessor :restriction - - # Selects methods, messages, fields, enums, etc. to which this rule applies. - # Refer to selector for syntax details. - # Corresponds to the JSON property `selector` - # @return [String] - attr_accessor :selector - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @restriction = args[:restriction] if args.key?(:restriction) - @selector = args[:selector] if args.key?(:selector) - end - end end end end diff --git a/generated/google/apis/serviceconsumermanagement_v1/representations.rb b/generated/google/apis/serviceconsumermanagement_v1/representations.rb index 71b98be0c..cb5c3f856 100644 --- a/generated/google/apis/serviceconsumermanagement_v1/representations.rb +++ b/generated/google/apis/serviceconsumermanagement_v1/representations.rb @@ -448,18 +448,6 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class Visibility - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class VisibilityRule - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class AddTenantProjectRequest # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -1076,8 +1064,6 @@ module Google property :usage, as: 'usage', class: Google::Apis::ServiceconsumermanagementV1::Usage, decorator: Google::Apis::ServiceconsumermanagementV1::Usage::Representation - property :visibility, as: 'visibility', class: Google::Apis::ServiceconsumermanagementV1::Visibility, decorator: Google::Apis::ServiceconsumermanagementV1::Visibility::Representation - end end @@ -1215,22 +1201,6 @@ module Google property :skip_service_control, as: 'skipServiceControl' end end - - class Visibility - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :rules, as: 'rules', class: Google::Apis::ServiceconsumermanagementV1::VisibilityRule, decorator: Google::Apis::ServiceconsumermanagementV1::VisibilityRule::Representation - - end - end - - class VisibilityRule - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :restriction, as: 'restriction' - property :selector, as: 'selector' - end - end end end end diff --git a/generated/google/apis/serviceconsumermanagement_v1/service.rb b/generated/google/apis/serviceconsumermanagement_v1/service.rb index 0306bdef7..de818b7ec 100644 --- a/generated/google/apis/serviceconsumermanagement_v1/service.rb +++ b/generated/google/apis/serviceconsumermanagement_v1/service.rb @@ -339,7 +339,7 @@ module Google end # Delete a tenancy unit. Before the tenancy unit is deleted, there should be - # no tenant resource in it. + # no tenant resources in it. # Operation. # @param [String] name # Name of the tenancy unit to be deleted. diff --git a/generated/google/apis/serviceusage_v1beta1.rb b/generated/google/apis/serviceusage_v1beta1.rb index aa93ae96f..d61fe90ae 100644 --- a/generated/google/apis/serviceusage_v1beta1.rb +++ b/generated/google/apis/serviceusage_v1beta1.rb @@ -27,7 +27,7 @@ module Google # @see https://cloud.google.com/service-usage/ module ServiceusageV1beta1 VERSION = 'V1beta1' - REVISION = '20180309' + REVISION = '20180317' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/serviceusage_v1beta1/classes.rb b/generated/google/apis/serviceusage_v1beta1/classes.rb index 8bd40495e..ca622e67c 100644 --- a/generated/google/apis/serviceusage_v1beta1/classes.rb +++ b/generated/google/apis/serviceusage_v1beta1/classes.rb @@ -825,9 +825,6 @@ module Google #
[display text][fully.qualified.proto.name]
# Text can be excluded from doc using the following notation: #
(-- internal comment --)
- # Comments can be made conditional using a visibility label. The below - # text will be only rendered if the `BETA` label is available: - #
(--BETA: comment for BETA users --)
# A few directives are available in documentation. Note that # directives must appear on a single line to be properly # identified. The `include` directive includes a markdown file from @@ -1366,9 +1363,6 @@ module Google #
[display text][fully.qualified.proto.name]
# Text can be excluded from doc using the following notation: #
(-- internal comment --)
- # Comments can be made conditional using a visibility label. The below - # text will be only rendered if the `BETA` label is available: - #
(--BETA: comment for BETA users --)
# A few directives are available in documentation. Note that # directives must appear on a single line to be properly # identified. The `include` directive includes a markdown file from @@ -1605,27 +1599,6 @@ module Google # @return [Google::Apis::ServiceusageV1beta1::Usage] attr_accessor :usage - # `Visibility` defines restrictions for the visibility of service - # elements. Restrictions are specified using visibility labels - # (e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects. - # Users and projects can have access to more than one visibility label. The - # effective visibility for multiple labels is the union of each label's - # elements, plus any unrestricted elements. - # If an element and its parents have no restrictions, visibility is - # unconditionally granted. - # Example: - # visibility: - # rules: - # - selector: google.calendar.Calendar.EnhancedSearch - # restriction: TRUSTED_TESTER - # - selector: google.calendar.Calendar.Delegate - # restriction: GOOGLE_INTERNAL - # Here, all methods are publicly visible except for the restricted methods - # EnhancedSearch and Delegate. - # Corresponds to the JSON property `visibility` - # @return [Google::Apis::ServiceusageV1beta1::Visibility] - attr_accessor :visibility - def initialize(**args) update!(**args) end @@ -1660,7 +1633,6 @@ module Google @title = args[:title] if args.key?(:title) @types = args[:types] if args.key?(:types) @usage = args[:usage] if args.key?(:usage) - @visibility = args[:visibility] if args.key?(:visibility) end end @@ -3364,9 +3336,6 @@ module Google #
[display text][fully.qualified.proto.name]
# Text can be excluded from doc using the following notation: #
(-- internal comment --)
- # Comments can be made conditional using a visibility label. The below - # text will be only rendered if the `BETA` label is available: - #
(--BETA: comment for BETA users --)
# A few directives are available in documentation. Note that # directives must appear on a single line to be properly # identified. The `include` directive includes a markdown file from @@ -3858,79 +3827,6 @@ module Google @skip_service_control = args[:skip_service_control] if args.key?(:skip_service_control) end end - - # `Visibility` defines restrictions for the visibility of service - # elements. Restrictions are specified using visibility labels - # (e.g., TRUSTED_TESTER) that are elsewhere linked to users and projects. - # Users and projects can have access to more than one visibility label. The - # effective visibility for multiple labels is the union of each label's - # elements, plus any unrestricted elements. - # If an element and its parents have no restrictions, visibility is - # unconditionally granted. - # Example: - # visibility: - # rules: - # - selector: google.calendar.Calendar.EnhancedSearch - # restriction: TRUSTED_TESTER - # - selector: google.calendar.Calendar.Delegate - # restriction: GOOGLE_INTERNAL - # Here, all methods are publicly visible except for the restricted methods - # EnhancedSearch and Delegate. - class Visibility - include Google::Apis::Core::Hashable - - # A list of visibility rules that apply to individual API elements. - # **NOTE:** All service configuration rules follow "last one wins" order. - # Corresponds to the JSON property `rules` - # @return [Array] - attr_accessor :rules - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @rules = args[:rules] if args.key?(:rules) - end - end - - # A visibility rule provides visibility configuration for an individual API - # element. - class VisibilityRule - include Google::Apis::Core::Hashable - - # A comma-separated list of visibility labels that apply to the `selector`. - # Any of the listed labels can be used to grant the visibility. - # If a rule has multiple labels, removing one of the labels but not all of - # them can break clients. - # Example: - # visibility: - # rules: - # - selector: google.calendar.Calendar.EnhancedSearch - # restriction: GOOGLE_INTERNAL, TRUSTED_TESTER - # Removing GOOGLE_INTERNAL from this restriction will break clients that - # rely on this method and only had access to it through GOOGLE_INTERNAL. - # Corresponds to the JSON property `restriction` - # @return [String] - attr_accessor :restriction - - # Selects methods, messages, fields, enums, etc. to which this rule applies. - # Refer to selector for syntax details. - # Corresponds to the JSON property `selector` - # @return [String] - attr_accessor :selector - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @restriction = args[:restriction] if args.key?(:restriction) - @selector = args[:selector] if args.key?(:selector) - end - end end end end diff --git a/generated/google/apis/serviceusage_v1beta1/representations.rb b/generated/google/apis/serviceusage_v1beta1/representations.rb index 0a4f5b7f1..1fc2d2730 100644 --- a/generated/google/apis/serviceusage_v1beta1/representations.rb +++ b/generated/google/apis/serviceusage_v1beta1/representations.rb @@ -412,18 +412,6 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class Visibility - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class VisibilityRule - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class Api # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -746,8 +734,6 @@ module Google property :usage, as: 'usage', class: Google::Apis::ServiceusageV1beta1::Usage, decorator: Google::Apis::ServiceusageV1beta1::Usage::Representation - property :visibility, as: 'visibility', class: Google::Apis::ServiceusageV1beta1::Visibility, decorator: Google::Apis::ServiceusageV1beta1::Visibility::Representation - end end @@ -1137,22 +1123,6 @@ module Google property :skip_service_control, as: 'skipServiceControl' end end - - class Visibility - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :rules, as: 'rules', class: Google::Apis::ServiceusageV1beta1::VisibilityRule, decorator: Google::Apis::ServiceusageV1beta1::VisibilityRule::Representation - - end - end - - class VisibilityRule - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :restriction, as: 'restriction' - property :selector, as: 'selector' - end - end end end end diff --git a/generated/google/apis/serviceusage_v1beta1/service.rb b/generated/google/apis/serviceusage_v1beta1/service.rb index 626c5b6f0..ede0d2c4d 100644 --- a/generated/google/apis/serviceusage_v1beta1/service.rb +++ b/generated/google/apis/serviceusage_v1beta1/service.rb @@ -134,7 +134,8 @@ module Google # @param [String] parent # Parent to enable services on. # An example name would be: - # projects/123 + # `projects/123` + # where `123` is the project number (not project ID). # The `BatchEnableServices` method currently only supports projects. # @param [Google::Apis::ServiceusageV1beta1::BatchEnableServicesRequest] batch_enable_services_request_object # @param [String] fields @@ -177,7 +178,8 @@ module Google # Name of the consumer and service to disable the service on. # The enable and disable methods currently only support projects. # An example name would be: - # projects/123/services/serviceusage.googleapis.com + # `projects/123/services/serviceusage.googleapis.com` + # where `123` is the project number (not project ID). # @param [Google::Apis::ServiceusageV1beta1::DisableServiceRequest] disable_service_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -217,7 +219,8 @@ module Google # Enabling a service requires that the service is public or is shared with # the user enabling the service. # An example name would be: - # projects/123/services/serviceusage.googleapis.com + # `projects/123/services/serviceusage.googleapis.com` + # where `123` is the project number (not project ID). # @param [Google::Apis::ServiceusageV1beta1::EnableServiceRequest] enable_service_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -252,7 +255,8 @@ module Google # @param [String] name # Name of the consumer and service to get the `ConsumerState` for. # An example name would be: - # projects/123/services/serviceusage.googleapis.com + # `projects/123/services/serviceusage.googleapis.com` + # where `123` is the project number (not project ID). # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -290,7 +294,8 @@ module Google # @param [String] parent # Parent to search for services on. # An example name would be: - # projects/123 + # `projects/123` + # where `123` is the project number (not project ID). # @param [String] filter # Only list services that conform to the given filter. # The allowed filter strings are `state:ENABLED` and `state:DISABLED`.