Files
google-apis-rs/etc/api/dlp/v2/dlp-api.json
2018-10-13 13:49:14 +02:00

5083 lines
233 KiB
JSON

{
"version": "v2",
"baseUrl": "https://dlp.googleapis.com/",
"kind": "discovery#restDescription",
"description": "Provides methods for detection, risk analysis, and de-identification of privacy-sensitive fragments in text, images, and Google Cloud Platform storage repositories.",
"servicePath": "",
"basePath": "",
"id": "dlp:v2",
"documentationLink": "https://cloud.google.com/dlp/docs/",
"revision": "20181009",
"discoveryVersion": "v1",
"version_module": true,
"schemas": {
"GooglePrivacyDlpV2Value": {
"description": "Set of primitive values supported by the system.\nNote that for the purposes of inspection or transformation, the number\nof bytes considered to comprise a 'Value' is based on its representation\nas a UTF-8 encoded string. For example, if 'integer_value' is set to\n123456789, the number of bytes would be counted as 9, even though an\nint64 only holds up to 8 bytes of data.",
"type": "object",
"properties": {
"timestampValue": {
"format": "google-datetime",
"type": "string"
},
"booleanValue": {
"type": "boolean"
},
"floatValue": {
"format": "double",
"type": "number"
},
"integerValue": {
"format": "int64",
"type": "string"
},
"timeValue": {
"$ref": "GoogleTypeTimeOfDay"
},
"stringValue": {
"type": "string"
},
"dateValue": {
"$ref": "GoogleTypeDate"
},
"dayOfWeekValue": {
"type": "string",
"enumDescriptions": [
"The unspecified day-of-week.",
"The day-of-week of Monday.",
"The day-of-week of Tuesday.",
"The day-of-week of Wednesday.",
"The day-of-week of Thursday.",
"The day-of-week of Friday.",
"The day-of-week of Saturday.",
"The day-of-week of Sunday."
],
"enum": [
"DAY_OF_WEEK_UNSPECIFIED",
"MONDAY",
"TUESDAY",
"WEDNESDAY",
"THURSDAY",
"FRIDAY",
"SATURDAY",
"SUNDAY"
]
}
},
"id": "GooglePrivacyDlpV2Value"
},
"GooglePrivacyDlpV2BigQueryField": {
"id": "GooglePrivacyDlpV2BigQueryField",
"description": "Message defining a field of a BigQuery table.",
"type": "object",
"properties": {
"field": {
"description": "Designated field in the BigQuery table.",
"$ref": "GooglePrivacyDlpV2FieldId"
},
"table": {
"$ref": "GooglePrivacyDlpV2BigQueryTable",
"description": "Source table of the field."
}
}
},
"GooglePrivacyDlpV2InfoTypeLimit": {
"description": "Max findings configuration per infoType, per content item or long\nrunning DlpJob.",
"type": "object",
"properties": {
"infoType": {
"$ref": "GooglePrivacyDlpV2InfoType",
"description": "Type of information the findings limit applies to. Only one limit per\ninfo_type should be provided. If InfoTypeLimit does not have an\ninfo_type, the DLP API applies the limit against all info_types that\nare found but not specified in another InfoTypeLimit."
},
"maxFindings": {
"description": "Max findings limit for the given infoType.",
"format": "int32",
"type": "integer"
}
},
"id": "GooglePrivacyDlpV2InfoTypeLimit"
},
"GooglePrivacyDlpV2LDiversityEquivalenceClass": {
"description": "The set of columns' values that share the same ldiversity value.",
"type": "object",
"properties": {
"equivalenceClassSize": {
"description": "Size of the k-anonymity equivalence class.",
"format": "int64",
"type": "string"
},
"quasiIdsValues": {
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Value"
},
"description": "Quasi-identifier values defining the k-anonymity equivalence\nclass. The order is always the same as the original request."
},
"numDistinctSensitiveValues": {
"description": "Number of distinct sensitive values in this equivalence class.",
"format": "int64",
"type": "string"
},
"topSensitiveValues": {
"description": "Estimated frequencies of top sensitive values.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2ValueFrequency"
}
}
},
"id": "GooglePrivacyDlpV2LDiversityEquivalenceClass"
},
"GooglePrivacyDlpV2InspectTemplate": {
"description": "The inspectTemplate contains a configuration (set of types of sensitive data\nto be detected) to be used anywhere you otherwise would normally specify\nInspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates\nto learn more.",
"type": "object",
"properties": {
"displayName": {
"description": "Display name (max 256 chars).",
"type": "string"
},
"description": {
"description": "Short description (max 256 chars).",
"type": "string"
},
"createTime": {
"description": "The creation timestamp of a inspectTemplate, output only field.",
"format": "google-datetime",
"type": "string"
},
"updateTime": {
"description": "The last update timestamp of a inspectTemplate, output only field.",
"format": "google-datetime",
"type": "string"
},
"name": {
"description": "The template name. Output only.\n\nThe template will have one of the following formats:\n`projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR\n`organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`",
"type": "string"
},
"inspectConfig": {
"$ref": "GooglePrivacyDlpV2InspectConfig",
"description": "The core content of the template. Configuration of the scanning process."
}
},
"id": "GooglePrivacyDlpV2InspectTemplate"
},
"GooglePrivacyDlpV2CustomInfoType": {
"description": "Custom information type provided by the user. Used to find domain-specific\nsensitive information configurable to the data in question.",
"type": "object",
"properties": {
"storedType": {
"description": "Load an existing `StoredInfoType` resource for use in\n`InspectDataSource`. Not currently supported in `InspectContent`.",
"$ref": "GooglePrivacyDlpV2StoredType"
},
"infoType": {
"$ref": "GooglePrivacyDlpV2InfoType",
"description": "CustomInfoType can either be a new infoType, or an extension of built-in\ninfoType, when the name matches one of existing infoTypes and that infoType\nis specified in `InspectContent.info_types` field. Specifying the latter\nadds findings to the one detected by the system. If built-in info type is\nnot specified in `InspectContent.info_types` list then the name is treated\nas a custom info type."
},
"dictionary": {
"description": "A list of phrases to detect as a CustomInfoType.",
"$ref": "GooglePrivacyDlpV2Dictionary"
},
"regex": {
"description": "Regular expression based CustomInfoType.",
"$ref": "GooglePrivacyDlpV2Regex"
},
"surrogateType": {
"$ref": "GooglePrivacyDlpV2SurrogateType",
"description": "Message for detecting output from deidentification transformations that\nsupport reversing."
},
"likelihood": {
"type": "string",
"enumDescriptions": [
"Default value; same as POSSIBLE.",
"Few matching elements.",
"",
"Some matching elements.",
"",
"Many matching elements."
],
"enum": [
"LIKELIHOOD_UNSPECIFIED",
"VERY_UNLIKELY",
"UNLIKELY",
"POSSIBLE",
"LIKELY",
"VERY_LIKELY"
],
"description": "Likelihood to return for this CustomInfoType. This base value can be\naltered by a detection rule if the finding meets the criteria specified by\nthe rule. Defaults to `VERY_LIKELY` if not specified."
},
"detectionRules": {
"description": "Set of detection rules to apply to all findings of this CustomInfoType.\nRules are applied in order that they are specified. Not supported for the\n`surrogate_type` CustomInfoType.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2DetectionRule"
}
},
"exclusionType": {
"enumDescriptions": [
"A finding of this custom info type will not be excluded from results.",
"A finding of this custom info type will be excluded from final results,\nbut can still affect rule execution."
],
"enum": [
"EXCLUSION_TYPE_UNSPECIFIED",
"EXCLUSION_TYPE_EXCLUDE"
],
"description": "If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding\nto be returned. It still can be used for rules matching.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2CustomInfoType"
},
"GooglePrivacyDlpV2Location": {
"description": "Specifies the location of the finding.",
"type": "object",
"properties": {
"contentLocations": {
"description": "List of nested objects pointing to the precise location of the finding\nwithin the file or record.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2ContentLocation"
}
},
"codepointRange": {
"$ref": "GooglePrivacyDlpV2Range",
"description": "Unicode character offsets delimiting the finding.\nThese are relative to the finding's containing element.\nProvided when the content is text."
},
"byteRange": {
"$ref": "GooglePrivacyDlpV2Range",
"description": "Zero-based byte offsets delimiting the finding.\nThese are relative to the finding's containing element.\nNote that when the content is not textual, this references\nthe UTF-8 encoded textual representation of the content.\nOmitted if content is an image."
}
},
"id": "GooglePrivacyDlpV2Location"
},
"GooglePrivacyDlpV2NumericalStatsResult": {
"id": "GooglePrivacyDlpV2NumericalStatsResult",
"description": "Result of the numerical stats computation.",
"type": "object",
"properties": {
"maxValue": {
"$ref": "GooglePrivacyDlpV2Value",
"description": "Maximum value appearing in the column."
},
"quantileValues": {
"description": "List of 99 values that partition the set of field values into 100 equal\nsized buckets.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Value"
}
},
"minValue": {
"description": "Minimum value appearing in the column.",
"$ref": "GooglePrivacyDlpV2Value"
}
}
},
"GooglePrivacyDlpV2DeidentifyConfig": {
"description": "The configuration that controls how the data will change.",
"type": "object",
"properties": {
"recordTransformations": {
"description": "Treat the dataset as structured. Transformations can be applied to\nspecific locations within structured datasets, such as transforming\na column within a table.",
"$ref": "GooglePrivacyDlpV2RecordTransformations"
},
"infoTypeTransformations": {
"description": "Treat the dataset as free-form text and apply the same free text\ntransformation everywhere.",
"$ref": "GooglePrivacyDlpV2InfoTypeTransformations"
}
},
"id": "GooglePrivacyDlpV2DeidentifyConfig"
},
"GooglePrivacyDlpV2Trigger": {
"id": "GooglePrivacyDlpV2Trigger",
"description": "What event needs to occur for a new job to be started.",
"type": "object",
"properties": {
"schedule": {
"$ref": "GooglePrivacyDlpV2Schedule",
"description": "Create a job on a repeating basis based on the elapse of time."
}
}
},
"GooglePrivacyDlpV2DeltaPresenceEstimationQuasiIdValues": {
"description": "A tuple of values for the quasi-identifier columns.",
"type": "object",
"properties": {
"quasiIdsValues": {
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Value"
},
"description": "The quasi-identifier values."
},
"estimatedProbability": {
"description": "The estimated probability that a given individual sharing these\nquasi-identifier values is in the dataset. This value, typically called\nδ, is the ratio between the number of records in the dataset with these\nquasi-identifier values, and the total number of individuals (inside\n*and* outside the dataset) with these quasi-identifier values.\nFor example, if there are 15 individuals in the dataset who share the\nsame quasi-identifier values, and an estimated 100 people in the entire\npopulation with these values, then δ is 0.15.",
"format": "double",
"type": "number"
}
},
"id": "GooglePrivacyDlpV2DeltaPresenceEstimationQuasiIdValues"
},
"GooglePrivacyDlpV2Range": {
"description": "Generic half-open interval [start, end)",
"type": "object",
"properties": {
"start": {
"description": "Index of the first character of the range (inclusive).",
"format": "int64",
"type": "string"
},
"end": {
"description": "Index of the last character of the range (exclusive).",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2Range"
},
"GooglePrivacyDlpV2CategoricalStatsConfig": {
"description": "Compute numerical stats over an individual column, including\nnumber of distinct values and value count distribution.",
"type": "object",
"properties": {
"field": {
"description": "Field to compute categorical stats on. All column types are\nsupported except for arrays and structs. However, it may be more\ninformative to use NumericalStats when the field type is supported,\ndepending on the data.",
"$ref": "GooglePrivacyDlpV2FieldId"
}
},
"id": "GooglePrivacyDlpV2CategoricalStatsConfig"
},
"GooglePrivacyDlpV2BigQueryKey": {
"type": "object",
"properties": {
"tableReference": {
"$ref": "GooglePrivacyDlpV2BigQueryTable",
"description": "Complete BigQuery table reference."
},
"rowNumber": {
"type": "string",
"description": "Absolute number of the row from the beginning of the table at the time\nof scanning.",
"format": "int64"
}
},
"id": "GooglePrivacyDlpV2BigQueryKey",
"description": "Row key for identifying a record in BigQuery table."
},
"GooglePrivacyDlpV2PartitionId": {
"description": "Datastore partition ID.\nA partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.\n\nA partition ID contains several dimensions:\nproject ID and namespace ID.",
"type": "object",
"properties": {
"namespaceId": {
"description": "If not empty, the ID of the namespace to which the entities belong.",
"type": "string"
},
"projectId": {
"description": "The ID of the project to which the entities belong.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2PartitionId"
},
"GooglePrivacyDlpV2BucketingConfig": {
"description": "Generalization function that buckets values based on ranges. The ranges and\nreplacement values are dynamically provided by the user for custom behavior,\nsuch as 1-30 -\u003e LOW 31-65 -\u003e MEDIUM 66-100 -\u003e HIGH\nThis can be used on\ndata of type: number, long, string, timestamp.\nIf the bound `Value` type differs from the type of data being transformed, we\nwill first attempt converting the type of the data to be transformed to match\nthe type of the bound before comparing.\nSee https://cloud.google.com/dlp/docs/concepts-bucketing to learn more.",
"type": "object",
"properties": {
"buckets": {
"description": "Set of buckets. Ranges must be non-overlapping.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Bucket"
}
}
},
"id": "GooglePrivacyDlpV2BucketingConfig"
},
"GooglePrivacyDlpV2CharsToIgnore": {
"description": "Characters to skip when doing deidentification of a value. These will be left\nalone and skipped.",
"type": "object",
"properties": {
"charactersToSkip": {
"type": "string"
},
"commonCharactersToIgnore": {
"enum": [
"COMMON_CHARS_TO_IGNORE_UNSPECIFIED",
"NUMERIC",
"ALPHA_UPPER_CASE",
"ALPHA_LOWER_CASE",
"PUNCTUATION",
"WHITESPACE"
],
"type": "string",
"enumDescriptions": [
"",
"0-9",
"A-Z",
"a-z",
"US Punctuation, one of !\"#$%&'()*+,-./:;\u003c=\u003e?@[\\]^_`{|}~",
"Whitespace character, one of [ \\t\\n\\x0B\\f\\r]"
]
}
},
"id": "GooglePrivacyDlpV2CharsToIgnore"
},
"GooglePrivacyDlpV2TransientCryptoKey": {
"type": "object",
"properties": {
"name": {
"description": "Name of the key. [required]\nThis is an arbitrary string used to differentiate different keys.\nA unique key is generated per name: two separate `TransientCryptoKey`\nprotos share the same generated key if their names are the same.\nWhen the data crypto key is generated, this name is not used in any way\n(repeating the api call will result in a different key being generated).",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2TransientCryptoKey",
"description": "Use this to have a random data crypto key generated.\nIt will be discarded after the request finishes."
},
"GooglePrivacyDlpV2CancelDlpJobRequest": {
"description": "The request message for canceling a DLP job.",
"type": "object",
"properties": {},
"id": "GooglePrivacyDlpV2CancelDlpJobRequest"
},
"GooglePrivacyDlpV2KindExpression": {
"description": "A representation of a Datastore kind.",
"type": "object",
"properties": {
"name": {
"description": "The name of the kind.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2KindExpression"
},
"GooglePrivacyDlpV2StoredType": {
"id": "GooglePrivacyDlpV2StoredType",
"description": "A reference to a StoredInfoType to use with scanning.",
"type": "object",
"properties": {
"createTime": {
"description": "Timestamp indicating when the version of the `StoredInfoType` used for\ninspection was created. Output-only field, populated by the system.",
"format": "google-datetime",
"type": "string"
},
"name": {
"description": "Resource name of the requested `StoredInfoType`, for example\n`organizations/433245324/storedInfoTypes/432452342` or\n`projects/project-id/storedInfoTypes/432452342`.",
"type": "string"
}
}
},
"GooglePrivacyDlpV2ListDlpJobsResponse": {
"description": "The response message for listing DLP jobs.",
"type": "object",
"properties": {
"jobs": {
"description": "A list of DlpJobs that matches the specified filter in the request.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2DlpJob"
}
},
"nextPageToken": {
"description": "The standard List next-page token.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2ListDlpJobsResponse"
},
"GooglePrivacyDlpV2ByteContentItem": {
"id": "GooglePrivacyDlpV2ByteContentItem",
"description": "Container for bytes to inspect or redact.",
"type": "object",
"properties": {
"data": {
"description": "Content data to inspect or redact.",
"format": "byte",
"type": "string"
},
"type": {
"description": "The type of data stored in the bytes string. Default will be TEXT_UTF8.",
"type": "string",
"enumDescriptions": [
"",
"",
"",
"",
"",
"",
""
],
"enum": [
"BYTES_TYPE_UNSPECIFIED",
"IMAGE",
"IMAGE_JPEG",
"IMAGE_BMP",
"IMAGE_PNG",
"IMAGE_SVG",
"TEXT_UTF8"
]
}
}
},
"GooglePrivacyDlpV2PrivacyMetric": {
"properties": {
"numericalStatsConfig": {
"$ref": "GooglePrivacyDlpV2NumericalStatsConfig"
},
"kAnonymityConfig": {
"$ref": "GooglePrivacyDlpV2KAnonymityConfig"
},
"categoricalStatsConfig": {
"$ref": "GooglePrivacyDlpV2CategoricalStatsConfig"
},
"kMapEstimationConfig": {
"$ref": "GooglePrivacyDlpV2KMapEstimationConfig"
},
"lDiversityConfig": {
"$ref": "GooglePrivacyDlpV2LDiversityConfig"
},
"deltaPresenceEstimationConfig": {
"$ref": "GooglePrivacyDlpV2DeltaPresenceEstimationConfig"
}
},
"id": "GooglePrivacyDlpV2PrivacyMetric",
"description": "Privacy metric to compute for reidentification risk analysis.",
"type": "object"
},
"GooglePrivacyDlpV2WordList": {
"description": "Message defining a list of words or phrases to search for in the data.",
"type": "object",
"properties": {
"words": {
"description": "Words or phrases defining the dictionary. The dictionary must contain\nat least one phrase and every phrase must contain at least 2 characters\nthat are letters or digits. [required]",
"type": "array",
"items": {
"type": "string"
}
}
},
"id": "GooglePrivacyDlpV2WordList"
},
"GooglePrivacyDlpV2ListStoredInfoTypesResponse": {
"description": "Response message for ListStoredInfoTypes.",
"type": "object",
"properties": {
"nextPageToken": {
"description": "If the next page is available then the next page token to be used\nin following ListStoredInfoTypes request.",
"type": "string"
},
"storedInfoTypes": {
"description": "List of storedInfoTypes, up to page_size in ListStoredInfoTypesRequest.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2StoredInfoType"
}
}
},
"id": "GooglePrivacyDlpV2ListStoredInfoTypesResponse"
},
"GooglePrivacyDlpV2ExclusionRule": {
"description": "The rule that specifies conditions when findings of infoTypes specified in\n`InspectionRuleSet` are removed from results.",
"type": "object",
"properties": {
"dictionary": {
"$ref": "GooglePrivacyDlpV2Dictionary",
"description": "Dictionary which defines the rule."
},
"regex": {
"$ref": "GooglePrivacyDlpV2Regex",
"description": "Regular expression which defines the rule."
},
"excludeInfoTypes": {
"description": "Set of infoTypes for which findings would affect this rule.",
"$ref": "GooglePrivacyDlpV2ExcludeInfoTypes"
},
"matchingType": {
"enumDescriptions": [
"Invalid.",
"Full match.\n\n- Dictionary: join of Dictionary results matched complete finding quote\n- Regex: all regex matches fill a finding quote start to end\n- Exclude info type: completely inside affecting info types findings",
"Partial match.\n\n- Dictionary: at least one of the tokens in the finding matches\n- Regex: substring of the finding matches\n- Exclude info type: intersects with affecting info types findings",
"Inverse match.\n\n- Dictionary: no tokens in the finding match the dictionary\n- Regex: finding doesn't match the regex\n- Exclude info type: no intersection with affecting info types findings"
],
"enum": [
"MATCHING_TYPE_UNSPECIFIED",
"MATCHING_TYPE_FULL_MATCH",
"MATCHING_TYPE_PARTIAL_MATCH",
"MATCHING_TYPE_INVERSE_MATCH"
],
"description": "How the rule is applied, see MatchingType documentation for details.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2ExclusionRule"
},
"GooglePrivacyDlpV2StatisticalTable": {
"description": "An auxiliary table containing statistical information on the relative\nfrequency of different quasi-identifiers values. It has one or several\nquasi-identifiers columns, and one column that indicates the relative\nfrequency of each quasi-identifier tuple.\nIf a tuple is present in the data but not in the auxiliary table, the\ncorresponding relative frequency is assumed to be zero (and thus, the\ntuple is highly reidentifiable).",
"type": "object",
"properties": {
"table": {
"$ref": "GooglePrivacyDlpV2BigQueryTable",
"description": "Auxiliary table location. [required]"
},
"quasiIds": {
"description": "Quasi-identifier columns. [required]",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2QuasiIdentifierField"
}
},
"relativeFrequency": {
"$ref": "GooglePrivacyDlpV2FieldId",
"description": "The relative frequency column must contain a floating-point number\nbetween 0 and 1 (inclusive). Null values are assumed to be zero.\n[required]"
}
},
"id": "GooglePrivacyDlpV2StatisticalTable"
},
"GooglePrivacyDlpV2KMapEstimationResult": {
"id": "GooglePrivacyDlpV2KMapEstimationResult",
"description": "Result of the reidentifiability analysis. Note that these results are an\nestimation, not exact values.",
"type": "object",
"properties": {
"kMapEstimationHistogram": {
"description": "The intervals [min_anonymity, max_anonymity] do not overlap. If a value\ndoesn't correspond to any such interval, the associated frequency is\nzero. For example, the following records:\n {min_anonymity: 1, max_anonymity: 1, frequency: 17}\n {min_anonymity: 2, max_anonymity: 3, frequency: 42}\n {min_anonymity: 5, max_anonymity: 10, frequency: 99}\nmean that there are no record with an estimated anonymity of 4, 5, or\nlarger than 10.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2KMapEstimationHistogramBucket"
}
}
}
},
"GooglePrivacyDlpV2CreateStoredInfoTypeRequest": {
"description": "Request message for CreateStoredInfoType.",
"type": "object",
"properties": {
"storedInfoTypeId": {
"description": "The storedInfoType ID can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.",
"type": "string"
},
"config": {
"description": "Configuration of the storedInfoType to create.",
"$ref": "GooglePrivacyDlpV2StoredInfoTypeConfig"
}
},
"id": "GooglePrivacyDlpV2CreateStoredInfoTypeRequest"
},
"GooglePrivacyDlpV2KAnonymityHistogramBucket": {
"id": "GooglePrivacyDlpV2KAnonymityHistogramBucket",
"type": "object",
"properties": {
"equivalenceClassSizeLowerBound": {
"description": "Lower bound on the size of the equivalence classes in this bucket.",
"format": "int64",
"type": "string"
},
"equivalenceClassSizeUpperBound": {
"description": "Upper bound on the size of the equivalence classes in this bucket.",
"format": "int64",
"type": "string"
},
"bucketSize": {
"description": "Total number of equivalence classes in this bucket.",
"format": "int64",
"type": "string"
},
"bucketValueCount": {
"description": "Total number of distinct equivalence classes in this bucket.",
"format": "int64",
"type": "string"
},
"bucketValues": {
"description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2KAnonymityEquivalenceClass"
}
}
}
},
"GooglePrivacyDlpV2KMapEstimationConfig": {
"description": "Reidentifiability metric. This corresponds to a risk model similar to what\nis called \"journalist risk\" in the literature, except the attack dataset is\nstatistically modeled instead of being perfectly known. This can be done\nusing publicly available data (like the US Census), or using a custom\nstatistical model (indicated as one or several BigQuery tables), or by\nextrapolating from the distribution of values in the input dataset.\nA column with a semantic tag attached.",
"type": "object",
"properties": {
"auxiliaryTables": {
"description": "Several auxiliary tables can be used in the analysis. Each custom_tag\nused to tag a quasi-identifiers column must appear in exactly one column\nof one auxiliary table.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2AuxiliaryTable"
}
},
"quasiIds": {
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2TaggedField"
},
"description": "Fields considered to be quasi-identifiers. No two columns can have the\nsame tag. [required]"
},
"regionCode": {
"description": "ISO 3166-1 alpha-2 region code to use in the statistical modeling.\nRequired if no column is tagged with a region-specific InfoType (like\nUS_ZIP_5) or a region code.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2KMapEstimationConfig"
},
"GooglePrivacyDlpV2JobTrigger": {
"type": "object",
"properties": {
"updateTime": {
"description": "The last update timestamp of a triggeredJob, output only field.",
"format": "google-datetime",
"type": "string"
},
"name": {
"description": "Unique resource name for the triggeredJob, assigned by the service when the\ntriggeredJob is created, for example\n`projects/dlp-test-project/triggeredJobs/53234423`.",
"type": "string"
},
"triggers": {
"description": "A list of triggers which will be OR'ed together. Only one in the list\nneeds to trigger for a job to be started. The list may contain only\na single Schedule trigger and must have at least one object.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Trigger"
}
},
"errors": {
"description": "A stream of errors encountered when the trigger was activated. Repeated\nerrors may result in the JobTrigger automaticaly being paused.\nWill return the last 100 errors. Whenever the JobTrigger is modified\nthis list will be cleared. Output only field.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Error"
}
},
"lastRunTime": {
"description": "The timestamp of the last time this trigger executed, output only field.",
"format": "google-datetime",
"type": "string"
},
"description": {
"description": "User provided description (max 256 chars)",
"type": "string"
},
"displayName": {
"description": "Display name (max 100 chars)",
"type": "string"
},
"createTime": {
"description": "The creation timestamp of a triggeredJob, output only field.",
"format": "google-datetime",
"type": "string"
},
"status": {
"description": "A status for this trigger. [required]",
"type": "string",
"enumDescriptions": [
"",
"Trigger is healthy.",
"Trigger is temporarily paused.",
"Trigger is cancelled and can not be resumed."
],
"enum": [
"STATUS_UNSPECIFIED",
"HEALTHY",
"PAUSED",
"CANCELLED"
]
},
"inspectJob": {
"$ref": "GooglePrivacyDlpV2InspectJobConfig"
}
},
"id": "GooglePrivacyDlpV2JobTrigger",
"description": "Contains a configuration to make dlp api calls on a repeating basis.\nSee https://cloud.google.com/dlp/docs/concepts-job-triggers to learn more."
},
"GooglePrivacyDlpV2PathElement": {
"type": "object",
"properties": {
"name": {
"description": "The name of the entity.\nA name matching regex `__.*__` is reserved/read-only.\nA name must not be more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.",
"type": "string"
},
"kind": {
"description": "The kind of the entity.\nA kind matching regex `__.*__` is reserved/read-only.\nA kind must not contain more than 1500 bytes when UTF-8 encoded.\nCannot be `\"\"`.",
"type": "string"
},
"id": {
"description": "The auto-allocated ID of the entity.\nNever equal to zero. Values less than zero are discouraged and may not\nbe supported in the future.",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2PathElement",
"description": "A (kind, ID/name) pair used to construct a key path.\n\nIf either name or ID is set, the element is complete.\nIf neither is set, the element is incomplete."
},
"GooglePrivacyDlpV2DeidentifyContentRequest": {
"description": "Request to de-identify a list of items.",
"type": "object",
"properties": {
"inspectConfig": {
"$ref": "GooglePrivacyDlpV2InspectConfig",
"description": "Configuration for the inspector.\nItems specified here will override the template referenced by the\ninspect_template_name argument."
},
"inspectTemplateName": {
"description": "Optional template to use. Any configuration directly specified in\ninspect_config will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.",
"type": "string"
},
"item": {
"description": "The item to de-identify. Will be treated as text.",
"$ref": "GooglePrivacyDlpV2ContentItem"
},
"deidentifyTemplateName": {
"description": "Optional template to use. Any configuration directly specified in\ndeidentify_config will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.",
"type": "string"
},
"deidentifyConfig": {
"description": "Configuration for the de-identification of the content item.\nItems specified here will override the template referenced by the\ndeidentify_template_name argument.",
"$ref": "GooglePrivacyDlpV2DeidentifyConfig"
}
},
"id": "GooglePrivacyDlpV2DeidentifyContentRequest"
},
"GooglePrivacyDlpV2ListJobTriggersResponse": {
"description": "Response message for ListJobTriggers.",
"type": "object",
"properties": {
"jobTriggers": {
"description": "List of triggeredJobs, up to page_size in ListJobTriggersRequest.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2JobTrigger"
}
},
"nextPageToken": {
"description": "If the next page is available then the next page token to be used\nin following ListJobTriggers request.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2ListJobTriggersResponse"
},
"GooglePrivacyDlpV2DatastoreKey": {
"type": "object",
"properties": {
"entityKey": {
"$ref": "GooglePrivacyDlpV2Key",
"description": "Datastore entity key."
}
},
"id": "GooglePrivacyDlpV2DatastoreKey",
"description": "Record key for a finding in Cloud Datastore."
},
"GooglePrivacyDlpV2Finding": {
"description": "Represents a piece of potentially sensitive content.",
"type": "object",
"properties": {
"infoType": {
"$ref": "GooglePrivacyDlpV2InfoType",
"description": "The type of content that might have been found.\nProvided if `excluded_types` is false."
},
"createTime": {
"description": "Timestamp when finding was detected.",
"format": "google-datetime",
"type": "string"
},
"likelihood": {
"enum": [
"LIKELIHOOD_UNSPECIFIED",
"VERY_UNLIKELY",
"UNLIKELY",
"POSSIBLE",
"LIKELY",
"VERY_LIKELY"
],
"description": "Confidence of how likely it is that the `info_type` is correct.",
"type": "string",
"enumDescriptions": [
"Default value; same as POSSIBLE.",
"Few matching elements.",
"",
"Some matching elements.",
"",
"Many matching elements."
]
},
"quoteInfo": {
"$ref": "GooglePrivacyDlpV2QuoteInfo",
"description": "Contains data parsed from quotes. Only populated if include_quote was set\nto true and a supported infoType was requested. Currently supported\ninfoTypes: DATE, DATE_OF_BIRTH and TIME."
},
"quote": {
"description": "The content that was found. Even if the content is not textual, it\nmay be converted to a textual representation here.\nProvided if `include_quote` is true and the finding is\nless than or equal to 4096 bytes long. If the finding exceeds 4096 bytes\nin length, the quote may be omitted.",
"type": "string"
},
"location": {
"$ref": "GooglePrivacyDlpV2Location",
"description": "Where the content was found."
}
},
"id": "GooglePrivacyDlpV2Finding"
},
"GooglePrivacyDlpV2CreateDlpJobRequest": {
"description": "Request message for CreateDlpJobRequest. Used to initiate long running\njobs such as calculating risk metrics or inspecting Google Cloud\nStorage.",
"type": "object",
"properties": {
"jobId": {
"description": "The job id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.",
"type": "string"
},
"riskJob": {
"$ref": "GooglePrivacyDlpV2RiskAnalysisJobConfig"
},
"inspectJob": {
"$ref": "GooglePrivacyDlpV2InspectJobConfig"
}
},
"id": "GooglePrivacyDlpV2CreateDlpJobRequest"
},
"GooglePrivacyDlpV2RecordLocation": {
"description": "Location of a finding within a row or record.",
"type": "object",
"properties": {
"tableLocation": {
"description": "Location within a `ContentItem.Table`.",
"$ref": "GooglePrivacyDlpV2TableLocation"
},
"recordKey": {
"$ref": "GooglePrivacyDlpV2RecordKey",
"description": "Key of the finding."
},
"fieldId": {
"$ref": "GooglePrivacyDlpV2FieldId",
"description": "Field id of the field containing the finding."
}
},
"id": "GooglePrivacyDlpV2RecordLocation"
},
"GooglePrivacyDlpV2InspectDataSourceDetails": {
"description": "The results of an inspect DataSource job.",
"type": "object",
"properties": {
"result": {
"description": "A summary of the outcome of this inspect job.",
"$ref": "GooglePrivacyDlpV2Result"
},
"requestedOptions": {
"$ref": "GooglePrivacyDlpV2RequestedOptions",
"description": "The configuration used for this job."
}
},
"id": "GooglePrivacyDlpV2InspectDataSourceDetails"
},
"GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest": {
"description": "Request message for UpdateDeidentifyTemplate.",
"type": "object",
"properties": {
"updateMask": {
"description": "Mask to control which fields get updated.",
"format": "google-fieldmask",
"type": "string"
},
"deidentifyTemplate": {
"description": "New DeidentifyTemplate value.",
"$ref": "GooglePrivacyDlpV2DeidentifyTemplate"
}
},
"id": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest"
},
"GoogleTypeDate": {
"id": "GoogleTypeDate",
"description": "Represents a whole or partial calendar date, e.g. a birthday. The time of day\nand time zone are either specified elsewhere or are not significant. The date\nis relative to the Proleptic Gregorian Calendar. This can represent:\n\n* A full date, with non-zero year, month and day values\n* A month and day value, with a zero year, e.g. an anniversary\n* A year on its own, with zero month and day values\n* A year and month value, with a zero day, e.g. a credit card expiration date\n\nRelated types are google.type.TimeOfDay and `google.protobuf.Timestamp`.",
"type": "object",
"properties": {
"year": {
"type": "integer",
"description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without\na year.",
"format": "int32"
},
"day": {
"description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0\nif specifying a year by itself or a year and month where the day is not\nsignificant.",
"format": "int32",
"type": "integer"
},
"month": {
"description": "Month of year. Must be from 1 to 12, or 0 if specifying a year without a\nmonth and day.",
"format": "int32",
"type": "integer"
}
}
},
"GooglePrivacyDlpV2DatastoreOptions": {
"properties": {
"partitionId": {
"description": "A partition ID identifies a grouping of entities. The grouping is always\nby project and namespace, however the namespace ID may be empty.",
"$ref": "GooglePrivacyDlpV2PartitionId"
},
"kind": {
"description": "The kind to process.",
"$ref": "GooglePrivacyDlpV2KindExpression"
}
},
"id": "GooglePrivacyDlpV2DatastoreOptions",
"description": "Options defining a data set within Google Cloud Datastore.",
"type": "object"
},
"GooglePrivacyDlpV2AuxiliaryTable": {
"id": "GooglePrivacyDlpV2AuxiliaryTable",
"description": "An auxiliary table contains statistical information on the relative\nfrequency of different quasi-identifiers values. It has one or several\nquasi-identifiers columns, and one column that indicates the relative\nfrequency of each quasi-identifier tuple.\nIf a tuple is present in the data but not in the auxiliary table, the\ncorresponding relative frequency is assumed to be zero (and thus, the\ntuple is highly reidentifiable).",
"type": "object",
"properties": {
"table": {
"description": "Auxiliary table location. [required]",
"$ref": "GooglePrivacyDlpV2BigQueryTable"
},
"quasiIds": {
"description": "Quasi-identifier columns. [required]",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2QuasiIdField"
}
},
"relativeFrequency": {
"$ref": "GooglePrivacyDlpV2FieldId",
"description": "The relative frequency column must contain a floating-point number\nbetween 0 and 1 (inclusive). Null values are assumed to be zero.\n[required]"
}
}
},
"GooglePrivacyDlpV2DocumentLocation": {
"properties": {
"fileOffset": {
"description": "Offset of the line, from the beginning of the file, where the finding\nis located.",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2DocumentLocation",
"description": "Location of a finding within a document.",
"type": "object"
},
"GooglePrivacyDlpV2FixedSizeBucketingConfig": {
"description": "Buckets values based on fixed size ranges. The\nBucketing transformation can provide all of this functionality,\nbut requires more configuration. This message is provided as a convenience to\nthe user for simple bucketing strategies.\n\nThe transformed value will be a hyphenated string of\n\u003clower_bound\u003e-\u003cupper_bound\u003e, i.e if lower_bound = 10 and upper_bound = 20\nall values that are within this bucket will be replaced with \"10-20\".\n\nThis can be used on data of type: double, long.\n\nIf the bound Value type differs from the type of data\nbeing transformed, we will first attempt converting the type of the data to\nbe transformed to match the type of the bound before comparing.\n\nSee https://cloud.google.com/dlp/docs/concepts-bucketing to learn more.",
"type": "object",
"properties": {
"upperBound": {
"$ref": "GooglePrivacyDlpV2Value",
"description": "Upper bound value of buckets. All values greater than upper_bound are\ngrouped together into a single bucket; for example if `upper_bound` = 89,\nthen all values greater than 89 are replaced with the value “89+”.\n[Required]."
},
"lowerBound": {
"$ref": "GooglePrivacyDlpV2Value",
"description": "Lower bound value of buckets. All values less than `lower_bound` are\ngrouped together into a single bucket; for example if `lower_bound` = 10,\nthen all values less than 10 are replaced with the value “-10”. [Required]."
},
"bucketSize": {
"description": "Size of each bucket (except for minimum and maximum buckets). So if\n`lower_bound` = 10, `upper_bound` = 89, and `bucket_size` = 10, then the\nfollowing buckets would be used: -10, 10-20, 20-30, 30-40, 40-50, 50-60,\n60-70, 70-80, 80-89, 89+. Precision up to 2 decimals works. [Required].",
"format": "double",
"type": "number"
}
},
"id": "GooglePrivacyDlpV2FixedSizeBucketingConfig"
},
"GooglePrivacyDlpV2CreateDeidentifyTemplateRequest": {
"description": "Request message for CreateDeidentifyTemplate.",
"type": "object",
"properties": {
"deidentifyTemplate": {
"$ref": "GooglePrivacyDlpV2DeidentifyTemplate",
"description": "The DeidentifyTemplate to create."
},
"templateId": {
"description": "The template id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest"
},
"GoogleRpcStatus": {
"description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
"type": "object",
"properties": {
"message": {
"description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.",
"type": "string"
},
"details": {
"description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
"type": "array",
"items": {
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
},
"type": "object"
}
},
"code": {
"description": "The status code, which should be an enum value of google.rpc.Code.",
"format": "int32",
"type": "integer"
}
},
"id": "GoogleRpcStatus"
},
"GooglePrivacyDlpV2Color": {
"id": "GooglePrivacyDlpV2Color",
"description": "Represents a color in the RGB color space.",
"type": "object",
"properties": {
"red": {
"description": "The amount of red in the color as a value in the interval [0, 1].",
"format": "float",
"type": "number"
},
"green": {
"description": "The amount of green in the color as a value in the interval [0, 1].",
"format": "float",
"type": "number"
},
"blue": {
"description": "The amount of blue in the color as a value in the interval [0, 1].",
"format": "float",
"type": "number"
}
}
},
"GooglePrivacyDlpV2KMapEstimationHistogramBucket": {
"description": "A KMapEstimationHistogramBucket message with the following values:\n min_anonymity: 3\n max_anonymity: 5\n frequency: 42\nmeans that there are 42 records whose quasi-identifier values correspond\nto 3, 4 or 5 people in the overlying population. An important particular\ncase is when min_anonymity = max_anonymity = 1: the frequency field then\ncorresponds to the number of uniquely identifiable records.",
"type": "object",
"properties": {
"bucketValues": {
"description": "Sample of quasi-identifier tuple values in this bucket. The total\nnumber of classes returned per bucket is capped at 20.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2KMapEstimationQuasiIdValues"
}
},
"minAnonymity": {
"description": "Always positive.",
"format": "int64",
"type": "string"
},
"maxAnonymity": {
"description": "Always greater than or equal to min_anonymity.",
"format": "int64",
"type": "string"
},
"bucketSize": {
"description": "Number of records within these anonymity bounds.",
"format": "int64",
"type": "string"
},
"bucketValueCount": {
"description": "Total number of distinct quasi-identifier tuple values in this bucket.",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2KMapEstimationHistogramBucket"
},
"GooglePrivacyDlpV2RecordCondition": {
"description": "A condition for determining whether a transformation should be applied to\na field.",
"type": "object",
"properties": {
"expressions": {
"$ref": "GooglePrivacyDlpV2Expressions",
"description": "An expression."
}
},
"id": "GooglePrivacyDlpV2RecordCondition"
},
"GooglePrivacyDlpV2DeltaPresenceEstimationResult": {
"type": "object",
"properties": {
"deltaPresenceEstimationHistogram": {
"description": "The intervals [min_probability, max_probability) do not overlap. If a\nvalue doesn't correspond to any such interval, the associated frequency\nis zero. For example, the following records:\n {min_probability: 0, max_probability: 0.1, frequency: 17}\n {min_probability: 0.2, max_probability: 0.3, frequency: 42}\n {min_probability: 0.3, max_probability: 0.4, frequency: 99}\nmean that there are no record with an estimated probability in [0.1, 0.2)\nnor larger or equal to 0.4.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2DeltaPresenceEstimationHistogramBucket"
}
}
},
"id": "GooglePrivacyDlpV2DeltaPresenceEstimationResult",
"description": "Result of the δ-presence computation. Note that these results are an\nestimation, not exact values."
},
"GooglePrivacyDlpV2TransformationOverview": {
"description": "Overview of the modifications that occurred.",
"type": "object",
"properties": {
"transformedBytes": {
"description": "Total size in bytes that were transformed in some way.",
"format": "int64",
"type": "string"
},
"transformationSummaries": {
"description": "Transformations applied to the dataset.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2TransformationSummary"
}
}
},
"id": "GooglePrivacyDlpV2TransformationOverview"
},
"GooglePrivacyDlpV2InfoType": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name of the information type. Either a name of your choosing when\ncreating a CustomInfoType, or one of the names listed\nat https://cloud.google.com/dlp/docs/infotypes-reference when specifying\na built-in type."
}
},
"id": "GooglePrivacyDlpV2InfoType",
"description": "Type of information detected by the API."
},
"GooglePrivacyDlpV2TaggedField": {
"type": "object",
"properties": {
"field": {
"description": "Identifies the column. [required]",
"$ref": "GooglePrivacyDlpV2FieldId"
},
"customTag": {
"description": "A column can be tagged with a custom tag. In this case, the user must\nindicate an auxiliary table that contains statistical information on\nthe possible values of this column (below).",
"type": "string"
},
"infoType": {
"description": "A column can be tagged with a InfoType to use the relevant public\ndataset as a statistical model of population, if available. We\ncurrently support US ZIP codes, region codes, ages and genders.\nTo programmatically obtain the list of supported InfoTypes, use\nListInfoTypes with the supported_by=RISK_ANALYSIS filter.",
"$ref": "GooglePrivacyDlpV2InfoType"
},
"inferred": {
"description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data",
"$ref": "GoogleProtobufEmpty"
}
},
"id": "GooglePrivacyDlpV2TaggedField"
},
"GooglePrivacyDlpV2RiskAnalysisJobConfig": {
"id": "GooglePrivacyDlpV2RiskAnalysisJobConfig",
"description": "Configuration for a risk analysis job. See\nhttps://cloud.google.com/dlp/docs/concepts-risk-analysis to learn more.",
"type": "object",
"properties": {
"privacyMetric": {
"$ref": "GooglePrivacyDlpV2PrivacyMetric",
"description": "Privacy metric to compute."
},
"actions": {
"description": "Actions to execute at the completion of the job. Are executed in the order\nprovided.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Action"
}
},
"sourceTable": {
"$ref": "GooglePrivacyDlpV2BigQueryTable",
"description": "Input dataset to compute metrics over."
}
}
},
"GooglePrivacyDlpV2FieldId": {
"id": "GooglePrivacyDlpV2FieldId",
"description": "General identifier of a data field in a storage service.",
"type": "object",
"properties": {
"name": {
"description": "Name describing the field.",
"type": "string"
}
}
},
"GooglePrivacyDlpV2ReplaceWithInfoTypeConfig": {
"id": "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig",
"description": "Replace each matching finding with the name of the info_type.",
"type": "object",
"properties": {}
},
"GooglePrivacyDlpV2ReplaceValueConfig": {
"properties": {
"newValue": {
"$ref": "GooglePrivacyDlpV2Value",
"description": "Value to replace it with."
}
},
"id": "GooglePrivacyDlpV2ReplaceValueConfig",
"description": "Replace each input value with a given `Value`.",
"type": "object"
},
"GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig": {
"description": "Replaces an identifier with a surrogate using FPE with the FFX\nmode of operation; however when used in the `ReidentifyContent` API method,\nit serves the opposite function by reversing the surrogate back into\nthe original identifier.\nThe identifier must be encoded as ASCII.\nFor a given crypto key and context, the same identifier will be\nreplaced with the same surrogate.\nIdentifiers must be at least two characters long.\nIn the case that the identifier is the empty string, it will be skipped.\nSee https://cloud.google.com/dlp/docs/pseudonymization to learn more.",
"type": "object",
"properties": {
"surrogateInfoType": {
"description": "The custom infoType to annotate the surrogate with.\nThis annotation will be applied to the surrogate by prefixing it with\nthe name of the custom infoType followed by the number of\ncharacters comprising the surrogate. The following scheme defines the\nformat: info_type_name(surrogate_character_count):surrogate\n\nFor example, if the name of custom infoType is 'MY_TOKEN_INFO_TYPE' and\nthe surrogate is 'abc', the full replacement value\nwill be: 'MY_TOKEN_INFO_TYPE(3):abc'\n\nThis annotation identifies the surrogate when inspecting content using the\ncustom infoType\n[`SurrogateType`](/dlp/docs/reference/rest/v2/InspectConfig#surrogatetype).\nThis facilitates reversal of the surrogate when it occurs in free text.\n\nIn order for inspection to work properly, the name of this infoType must\nnot occur naturally anywhere in your data; otherwise, inspection may\nfind a surrogate that does not correspond to an actual identifier.\nTherefore, choose your custom infoType name carefully after considering\nwhat your data looks like. One way to select a name that has a high chance\nof yielding reliable detection is to include one or more unicode characters\nthat are highly improbable to exist in your data.\nFor example, assuming your data is entered from a regular ASCII keyboard,\nthe symbol with the hex code point 29DD might be used like so:\n⧝MY_TOKEN_TYPE",
"$ref": "GooglePrivacyDlpV2InfoType"
},
"commonAlphabet": {
"enumDescriptions": [
"",
"[0-9] (radix of 10)",
"[0-9A-F] (radix of 16)",
"[0-9A-Z] (radix of 36)",
"[0-9A-Za-z] (radix of 62)"
],
"enum": [
"FFX_COMMON_NATIVE_ALPHABET_UNSPECIFIED",
"NUMERIC",
"HEXADECIMAL",
"UPPER_CASE_ALPHA_NUMERIC",
"ALPHA_NUMERIC"
],
"type": "string"
},
"radix": {
"description": "The native way to select the alphabet. Must be in the range [2, 62].",
"format": "int32",
"type": "integer"
},
"customAlphabet": {
"description": "This is supported by mapping these to the alphanumeric characters\nthat the FFX mode natively supports. This happens before/after\nencryption/decryption.\nEach character listed must appear only once.\nNumber of characters must be in the range [2, 62].\nThis must be encoded as ASCII.\nThe order of characters does not matter.",
"type": "string"
},
"cryptoKey": {
"$ref": "GooglePrivacyDlpV2CryptoKey",
"description": "The key used by the encryption algorithm. [required]"
},
"context": {
"description": "The 'tweak', a context may be used for higher security since the same\nidentifier in two different contexts won't be given the same surrogate. If\nthe context is not set, a default tweak will be used.\n\nIf the context is set but:\n\n1. there is no record present when transforming a given value or\n1. the field is not present when transforming a given value,\n\na default tweak will be used.\n\nNote that case (1) is expected when an `InfoTypeTransformation` is\napplied to both structured and non-structured `ContentItem`s.\nCurrently, the referenced field may be of value type integer or string.\n\nThe tweak is constructed as a sequence of bytes in big endian byte order\nsuch that:\n\n- a 64 bit integer is encoded followed by a single byte of value 1\n- a string is encoded in UTF-8 format followed by a single byte of value 2",
"$ref": "GooglePrivacyDlpV2FieldId"
}
},
"id": "GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig"
},
"GooglePrivacyDlpV2TimeZone": {
"type": "object",
"properties": {
"offsetMinutes": {
"description": "Set only if the offset can be determined. Positive for time ahead of UTC.\nE.g. For \"UTC-9\", this value is -540.",
"format": "int32",
"type": "integer"
}
},
"id": "GooglePrivacyDlpV2TimeZone"
},
"GooglePrivacyDlpV2KAnonymityResult": {
"description": "Result of the k-anonymity computation.",
"type": "object",
"properties": {
"equivalenceClassHistogramBuckets": {
"description": "Histogram of k-anonymity equivalence classes.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2KAnonymityHistogramBucket"
}
}
},
"id": "GooglePrivacyDlpV2KAnonymityResult"
},
"GooglePrivacyDlpV2CryptoKey": {
"description": "This is a data encryption key (DEK) (as opposed to\na key encryption key (KEK) stored by KMS).\nWhen using KMS to wrap/unwrap DEKs, be sure to set an appropriate\nIAM policy on the KMS CryptoKey (KEK) to ensure an attacker cannot\nunwrap the data crypto key.",
"type": "object",
"properties": {
"unwrapped": {
"$ref": "GooglePrivacyDlpV2UnwrappedCryptoKey"
},
"transient": {
"$ref": "GooglePrivacyDlpV2TransientCryptoKey"
},
"kmsWrapped": {
"$ref": "GooglePrivacyDlpV2KmsWrappedCryptoKey"
}
},
"id": "GooglePrivacyDlpV2CryptoKey"
},
"GooglePrivacyDlpV2RequestedOptions": {
"type": "object",
"properties": {
"snapshotInspectTemplate": {
"$ref": "GooglePrivacyDlpV2InspectTemplate",
"description": "If run with an InspectTemplate, a snapshot of its state at the time of\nthis run."
},
"jobConfig": {
"$ref": "GooglePrivacyDlpV2InspectJobConfig"
}
},
"id": "GooglePrivacyDlpV2RequestedOptions"
},
"GooglePrivacyDlpV2TimespanConfig": {
"description": "Configuration of the timespan of the items to include in scanning.\nCurrently only supported when inspecting Google Cloud Storage and BigQuery.",
"type": "object",
"properties": {
"timestampField": {
"description": "Specification of the field containing the timestamp of scanned items.\nUsed for data sources like Datastore or BigQuery.\nIf not specified for BigQuery, table last modification timestamp\nis checked against given time span.\nThe valid data types of the timestamp field are:\nfor BigQuery - timestamp, date, datetime;\nfor Datastore - timestamp.\nDatastore entity will be scanned if the timestamp property does not exist\nor its value is empty or invalid.",
"$ref": "GooglePrivacyDlpV2FieldId"
},
"endTime": {
"description": "Exclude files or rows newer than this value.\nIf set to zero, no upper time limit is applied.",
"format": "google-datetime",
"type": "string"
},
"enableAutoPopulationOfTimespanConfig": {
"description": "When the job is started by a JobTrigger we will automatically figure out\na valid start_time to avoid scanning files that have not been modified\nsince the last time the JobTrigger executed. This will be based on the\ntime of the execution of the last run of the JobTrigger.",
"type": "boolean"
},
"startTime": {
"description": "Exclude files or rows older than this value.",
"format": "google-datetime",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2TimespanConfig"
},
"GooglePrivacyDlpV2EntityId": {
"description": "An entity in a dataset is a field or set of fields that correspond to a\nsingle person. For example, in medical records the `EntityId` might be a\npatient identifier, or for financial records it might be an account\nidentifier. This message is used when generalizations or analysis must take\ninto account that multiple rows correspond to the same entity.",
"type": "object",
"properties": {
"field": {
"$ref": "GooglePrivacyDlpV2FieldId",
"description": "Composite key indicating which field contains the entity identifier."
}
},
"id": "GooglePrivacyDlpV2EntityId"
},
"GooglePrivacyDlpV2InspectContentRequest": {
"description": "Request to search for potentially sensitive info in a ContentItem.",
"type": "object",
"properties": {
"item": {
"description": "The item to inspect.",
"$ref": "GooglePrivacyDlpV2ContentItem"
},
"inspectConfig": {
"description": "Configuration for the inspector. What specified here will override\nthe template referenced by the inspect_template_name argument.",
"$ref": "GooglePrivacyDlpV2InspectConfig"
},
"inspectTemplateName": {
"description": "Optional template to use. Any configuration directly specified in\ninspect_config will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2InspectContentRequest"
},
"GooglePrivacyDlpV2QuasiId": {
"description": "A column with a semantic tag attached.",
"type": "object",
"properties": {
"field": {
"$ref": "GooglePrivacyDlpV2FieldId",
"description": "Identifies the column. [required]"
},
"customTag": {
"description": "A column can be tagged with a custom tag. In this case, the user must\nindicate an auxiliary table that contains statistical information on\nthe possible values of this column (below).",
"type": "string"
},
"infoType": {
"$ref": "GooglePrivacyDlpV2InfoType",
"description": "A column can be tagged with a InfoType to use the relevant public\ndataset as a statistical model of population, if available. We\ncurrently support US ZIP codes, region codes, ages and genders.\nTo programmatically obtain the list of supported InfoTypes, use\nListInfoTypes with the supported_by=RISK_ANALYSIS filter."
},
"inferred": {
"$ref": "GoogleProtobufEmpty",
"description": "If no semantic tag is indicated, we infer the statistical model from\nthe distribution of values in the input data"
}
},
"id": "GooglePrivacyDlpV2QuasiId"
},
"GooglePrivacyDlpV2HotwordRule": {
"type": "object",
"properties": {
"likelihoodAdjustment": {
"description": "Likelihood adjustment to apply to all matching findings.",
"$ref": "GooglePrivacyDlpV2LikelihoodAdjustment"
},
"hotwordRegex": {
"$ref": "GooglePrivacyDlpV2Regex",
"description": "Regular expression pattern defining what qualifies as a hotword."
},
"proximity": {
"description": "Proximity of the finding within which the entire hotword must reside.\nThe total length of the window cannot exceed 1000 characters. Note that\nthe finding itself will be included in the window, so that hotwords may\nbe used to match substrings of the finding itself. For example, the\ncertainty of a phone number regex \"\\(\\d{3}\\) \\d{3}-\\d{4}\" could be\nadjusted upwards if the area code is known to be the local area code of\na company office using the hotword regex \"\\(xxx\\)\", where \"xxx\"\nis the area code in question.",
"$ref": "GooglePrivacyDlpV2Proximity"
}
},
"id": "GooglePrivacyDlpV2HotwordRule",
"description": "The rule that adjusts the likelihood of findings within a certain\nproximity of hotwords."
},
"GooglePrivacyDlpV2Regex": {
"id": "GooglePrivacyDlpV2Regex",
"description": "Message defining a custom regular expression.",
"type": "object",
"properties": {
"pattern": {
"type": "string",
"description": "Pattern defining the regular expression. Its syntax\n(https://github.com/google/re2/wiki/Syntax) can be found under the\ngoogle/re2 repository on GitHub."
}
}
},
"GooglePrivacyDlpV2DeidentifyContentResponse": {
"id": "GooglePrivacyDlpV2DeidentifyContentResponse",
"description": "Results of de-identifying a ContentItem.",
"type": "object",
"properties": {
"overview": {
"description": "An overview of the changes that were made on the `item`.",
"$ref": "GooglePrivacyDlpV2TransformationOverview"
},
"item": {
"description": "The de-identified item.",
"$ref": "GooglePrivacyDlpV2ContentItem"
}
}
},
"GooglePrivacyDlpV2Expressions": {
"description": "An expression, consisting or an operator and conditions.",
"type": "object",
"properties": {
"logicalOperator": {
"enumDescriptions": [
"",
""
],
"enum": [
"LOGICAL_OPERATOR_UNSPECIFIED",
"AND"
],
"description": "The operator to apply to the result of conditions. Default and currently\nonly supported value is `AND`.",
"type": "string"
},
"conditions": {
"$ref": "GooglePrivacyDlpV2Conditions"
}
},
"id": "GooglePrivacyDlpV2Expressions"
},
"GooglePrivacyDlpV2CategoricalStatsResult": {
"description": "Result of the categorical stats computation.",
"type": "object",
"properties": {
"valueFrequencyHistogramBuckets": {
"description": "Histogram of value frequencies in the column.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2CategoricalStatsHistogramBucket"
}
}
},
"id": "GooglePrivacyDlpV2CategoricalStatsResult"
},
"GooglePrivacyDlpV2InfoTypeDescription": {
"description": "InfoType description.",
"type": "object",
"properties": {
"supportedBy": {
"enumDescriptions": [
"",
"Supported by the inspect operations.",
"Supported by the risk analysis operations."
],
"description": "Which parts of the API supports this InfoType.",
"type": "array",
"items": {
"type": "string",
"enum": [
"ENUM_TYPE_UNSPECIFIED",
"INSPECT",
"RISK_ANALYSIS"
]
}
},
"name": {
"description": "Internal name of the infoType.",
"type": "string"
},
"displayName": {
"type": "string",
"description": "Human readable form of the infoType name."
}
},
"id": "GooglePrivacyDlpV2InfoTypeDescription"
},
"GooglePrivacyDlpV2UpdateInspectTemplateRequest": {
"description": "Request message for UpdateInspectTemplate.",
"type": "object",
"properties": {
"updateMask": {
"description": "Mask to control which fields get updated.",
"format": "google-fieldmask",
"type": "string"
},
"inspectTemplate": {
"description": "New InspectTemplate value.",
"$ref": "GooglePrivacyDlpV2InspectTemplate"
}
},
"id": "GooglePrivacyDlpV2UpdateInspectTemplateRequest"
},
"GooglePrivacyDlpV2InspectJobConfig": {
"properties": {
"inspectConfig": {
"$ref": "GooglePrivacyDlpV2InspectConfig",
"description": "How and what to scan for."
},
"inspectTemplateName": {
"description": "If provided, will be used as the default for all values in InspectConfig.\n`inspect_config` will be merged into the values persisted as part of the\ntemplate.",
"type": "string"
},
"storageConfig": {
"description": "The data to scan.",
"$ref": "GooglePrivacyDlpV2StorageConfig"
},
"actions": {
"description": "Actions to execute at the completion of the job. Are executed in the order\nprovided.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Action"
}
}
},
"id": "GooglePrivacyDlpV2InspectJobConfig",
"type": "object"
},
"GooglePrivacyDlpV2LDiversityHistogramBucket": {
"type": "object",
"properties": {
"bucketSize": {
"description": "Total number of equivalence classes in this bucket.",
"format": "int64",
"type": "string"
},
"bucketValueCount": {
"description": "Total number of distinct equivalence classes in this bucket.",
"format": "int64",
"type": "string"
},
"sensitiveValueFrequencyUpperBound": {
"description": "Upper bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.",
"format": "int64",
"type": "string"
},
"sensitiveValueFrequencyLowerBound": {
"description": "Lower bound on the sensitive value frequencies of the equivalence\nclasses in this bucket.",
"format": "int64",
"type": "string"
},
"bucketValues": {
"description": "Sample of equivalence classes in this bucket. The total number of\nclasses returned per bucket is capped at 20.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2LDiversityEquivalenceClass"
}
}
},
"id": "GooglePrivacyDlpV2LDiversityHistogramBucket"
},
"GooglePrivacyDlpV2CreateJobTriggerRequest": {
"description": "Request message for CreateJobTrigger.",
"type": "object",
"properties": {
"triggerId": {
"description": "The trigger id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.",
"type": "string"
},
"jobTrigger": {
"$ref": "GooglePrivacyDlpV2JobTrigger",
"description": "The JobTrigger to create."
}
},
"id": "GooglePrivacyDlpV2CreateJobTriggerRequest"
},
"GooglePrivacyDlpV2InspectConfig": {
"properties": {
"excludeInfoTypes": {
"description": "When true, excludes type information of the findings.",
"type": "boolean"
},
"minLikelihood": {
"enumDescriptions": [
"Default value; same as POSSIBLE.",
"Few matching elements.",
"",
"Some matching elements.",
"",
"Many matching elements."
],
"enum": [
"LIKELIHOOD_UNSPECIFIED",
"VERY_UNLIKELY",
"UNLIKELY",
"POSSIBLE",
"LIKELY",
"VERY_LIKELY"
],
"description": "Only returns findings equal or above this threshold. The default is\nPOSSIBLE.\nSee https://cloud.google.com/dlp/docs/likelihood to learn more.",
"type": "string"
},
"ruleSet": {
"description": "Set of rules to apply to the findings for this InspectConfig.\nExclusion rules, contained in the set are executed in the end, other\nrules are executed in the order they are specified for each info type.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InspectionRuleSet"
}
},
"infoTypes": {
"description": "Restricts what info_types to look for. The values must correspond to\nInfoType values returned by ListInfoTypes or listed at\nhttps://cloud.google.com/dlp/docs/infotypes-reference.\n\nWhen no InfoTypes or CustomInfoTypes are specified in a request, the\nsystem may automatically choose what detectors to run. By default this may\nbe all types, but may change over time as detectors are updated.\n\nThe special InfoType name \"ALL_BASIC\" can be used to trigger all detectors,\nbut may change over time as new InfoTypes are added. If you need precise\ncontrol and predictability as to what detectors are run you should specify\nspecific InfoTypes listed in the reference.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InfoType"
}
},
"includeQuote": {
"description": "When true, a contextual quote from the data that triggered a finding is\nincluded in the response; see Finding.quote.",
"type": "boolean"
},
"customInfoTypes": {
"description": "CustomInfoTypes provided by the user. See\nhttps://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2CustomInfoType"
}
},
"limits": {
"$ref": "GooglePrivacyDlpV2FindingLimits"
},
"contentOptions": {
"enumDescriptions": [
"Includes entire content of a file or a data stream.",
"Text content within the data, excluding any metadata.",
"Images found in the data."
],
"description": "List of options defining data content to scan.\nIf empty, text, images, and other content will be included.",
"type": "array",
"items": {
"enum": [
"CONTENT_UNSPECIFIED",
"CONTENT_TEXT",
"CONTENT_IMAGE"
],
"type": "string"
}
}
},
"id": "GooglePrivacyDlpV2InspectConfig",
"description": "Configuration description of the scanning process.\nWhen used with redactContent only info_types and min_likelihood are currently\nused.",
"type": "object"
},
"GooglePrivacyDlpV2ExcludeInfoTypes": {
"type": "object",
"properties": {
"infoTypes": {
"description": "InfoType list in ExclusionRule rule drops a finding when it overlaps or\ncontained within with a finding of an infoType from this list. For\nexample, for `InspectionRuleSet.info_types` containing \"PHONE_NUMBER\"` and\n`exclusion_rule` containing `exclude_info_types.info_types` with\n\"EMAIL_ADDRESS\" the phone number findings are dropped if they overlap\nwith EMAIL_ADDRESS finding.\nThat leads to \"555-222-2222@example.org\" to generate only a single\nfinding, namely email address.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InfoType"
}
}
},
"id": "GooglePrivacyDlpV2ExcludeInfoTypes",
"description": "List of exclude infoTypes."
},
"GooglePrivacyDlpV2LDiversityConfig": {
"description": "l-diversity metric, used for analysis of reidentification risk.",
"type": "object",
"properties": {
"sensitiveAttribute": {
"$ref": "GooglePrivacyDlpV2FieldId",
"description": "Sensitive field for computing the l-value."
},
"quasiIds": {
"description": "Set of quasi-identifiers indicating how equivalence classes are\ndefined for the l-diversity computation. When multiple fields are\nspecified, they are considered a single composite key.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2FieldId"
}
}
},
"id": "GooglePrivacyDlpV2LDiversityConfig"
},
"GooglePrivacyDlpV2KAnonymityEquivalenceClass": {
"description": "The set of columns' values that share the same ldiversity value",
"type": "object",
"properties": {
"quasiIdsValues": {
"description": "Set of values defining the equivalence class. One value per\nquasi-identifier column in the original KAnonymity metric message.\nThe order is always the same as the original request.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Value"
}
},
"equivalenceClassSize": {
"description": "Size of the equivalence class, for example number of rows with the\nabove set of values.",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2KAnonymityEquivalenceClass"
},
"GooglePrivacyDlpV2UpdateStoredInfoTypeRequest": {
"description": "Request message for UpdateStoredInfoType.",
"type": "object",
"properties": {
"config": {
"description": "Updated configuration for the storedInfoType. If not provided, a new\nversion of the storedInfoType will be created with the existing\nconfiguration.",
"$ref": "GooglePrivacyDlpV2StoredInfoTypeConfig"
},
"updateMask": {
"description": "Mask to control which fields get updated.",
"format": "google-fieldmask",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2UpdateStoredInfoTypeRequest"
},
"GooglePrivacyDlpV2DateShiftConfig": {
"description": "Shifts dates by random number of days, with option to be consistent for the\nsame context. See https://cloud.google.com/dlp/docs/concepts-date-shifting\nto learn more.",
"type": "object",
"properties": {
"upperBoundDays": {
"type": "integer",
"description": "Range of shift in days. Actual shift will be selected at random within this\nrange (inclusive ends). Negative means shift to earlier in time. Must not\nbe more than 365250 days (1000 years) each direction.\n\nFor example, 3 means shift date to at most 3 days into the future.\n[Required]",
"format": "int32"
},
"context": {
"$ref": "GooglePrivacyDlpV2FieldId",
"description": "Points to the field that contains the context, for example, an entity id.\nIf set, must also set method. If set, shift will be consistent for the\ngiven context."
},
"lowerBoundDays": {
"description": "For example, -5 means shift date to at most 5 days back in the past.\n[Required]",
"format": "int32",
"type": "integer"
},
"cryptoKey": {
"$ref": "GooglePrivacyDlpV2CryptoKey",
"description": "Causes the shift to be computed based on this key and the context. This\nresults in the same shift for the same context and crypto_key."
}
},
"id": "GooglePrivacyDlpV2DateShiftConfig"
},
"GooglePrivacyDlpV2CloudStorageOptions": {
"description": "Options defining a file or a set of files within a Google Cloud Storage\nbucket.",
"type": "object",
"properties": {
"bytesLimitPerFile": {
"description": "Max number of bytes to scan from a file. If a scanned file's size is bigger\nthan this value then the rest of the bytes are omitted. Only one\nof bytes_limit_per_file and bytes_limit_per_file_percent can be specified.",
"format": "int64",
"type": "string"
},
"filesLimitPercent": {
"description": "Limits the number of files to scan to this percentage of the input FileSet.\nNumber of files scanned is rounded down. Must be between 0 and 100,\ninclusively. Both 0 and 100 means no limit. Defaults to 0.",
"format": "int32",
"type": "integer"
},
"fileSet": {
"$ref": "GooglePrivacyDlpV2FileSet",
"description": "The set of one or more files to scan."
},
"sampleMethod": {
"type": "string",
"enumDescriptions": [
"",
"Scan from the top (default).",
"For each file larger than bytes_limit_per_file, randomly pick the offset\nto start scanning. The scanned bytes are contiguous."
],
"enum": [
"SAMPLE_METHOD_UNSPECIFIED",
"TOP",
"RANDOM_START"
]
},
"bytesLimitPerFilePercent": {
"description": "Max percentage of bytes to scan from a file. The rest are omitted. The\nnumber of bytes scanned is rounded down. Must be between 0 and 100,\ninclusively. Both 0 and 100 means no limit. Defaults to 0. Only one\nof bytes_limit_per_file and bytes_limit_per_file_percent can be specified.",
"format": "int32",
"type": "integer"
},
"fileTypes": {
"enumDescriptions": [
"Includes all files.",
"Includes all file extensions not covered by text file types.",
"Included file extensions:\n asc, brf, c, cc, cpp, csv, cxx, c++, cs, css, dart, eml, go, h, hh, hpp,\n hxx, h++, hs, html, htm, shtml, shtm, xhtml, lhs, ini, java, js, json,\n ocaml, md, mkd, markdown, m, ml, mli, pl, pm, php, phtml, pht, py, pyw,\n rb, rbw, rs, rc, scala, sh, sql, tex, txt, text, tsv, vcard, vcs, wml,\n xml, xsl, xsd, yml, yaml."
],
"description": "List of file type groups to include in the scan.\nIf empty, all files are scanned and available data format processors\nare applied.",
"type": "array",
"items": {
"type": "string",
"enum": [
"FILE_TYPE_UNSPECIFIED",
"BINARY_FILE",
"TEXT_FILE"
]
}
}
},
"id": "GooglePrivacyDlpV2CloudStorageOptions"
},
"GooglePrivacyDlpV2NumericalStatsConfig": {
"id": "GooglePrivacyDlpV2NumericalStatsConfig",
"description": "Compute numerical stats over an individual column, including\nmin, max, and quantiles.",
"type": "object",
"properties": {
"field": {
"description": "Field to compute numerical stats on. Supported types are\ninteger, float, date, datetime, timestamp, time.",
"$ref": "GooglePrivacyDlpV2FieldId"
}
}
},
"GooglePrivacyDlpV2ReidentifyContentResponse": {
"id": "GooglePrivacyDlpV2ReidentifyContentResponse",
"description": "Results of re-identifying a item.",
"type": "object",
"properties": {
"overview": {
"description": "An overview of the changes that were made to the `item`.",
"$ref": "GooglePrivacyDlpV2TransformationOverview"
},
"item": {
"$ref": "GooglePrivacyDlpV2ContentItem",
"description": "The re-identified item."
}
}
},
"GooglePrivacyDlpV2ValueFrequency": {
"properties": {
"count": {
"description": "How many times the value is contained in the field.",
"format": "int64",
"type": "string"
},
"value": {
"$ref": "GooglePrivacyDlpV2Value",
"description": "A value contained in the field in question."
}
},
"id": "GooglePrivacyDlpV2ValueFrequency",
"description": "A value of a field, including its frequency.",
"type": "object"
},
"GooglePrivacyDlpV2InfoTypeTransformation": {
"type": "object",
"properties": {
"primitiveTransformation": {
"$ref": "GooglePrivacyDlpV2PrimitiveTransformation",
"description": "Primitive transformation to apply to the infoType. [required]"
},
"infoTypes": {
"description": "InfoTypes to apply the transformation to. An empty list will cause\nthis transformation to apply to all findings that correspond to\ninfoTypes that were requested in `InspectConfig`.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InfoType"
}
}
},
"id": "GooglePrivacyDlpV2InfoTypeTransformation",
"description": "A transformation to apply to text that is identified as a specific\ninfo_type."
},
"GooglePrivacyDlpV2KMapEstimationQuasiIdValues": {
"description": "A tuple of values for the quasi-identifier columns.",
"type": "object",
"properties": {
"quasiIdsValues": {
"description": "The quasi-identifier values.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Value"
}
},
"estimatedAnonymity": {
"description": "The estimated anonymity for these quasi-identifier values.",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2KMapEstimationQuasiIdValues"
},
"GooglePrivacyDlpV2ContentItem": {
"properties": {
"value": {
"type": "string",
"description": "String data to inspect or redact."
},
"byteItem": {
"description": "Content data to inspect or redact. Replaces `type` and `data`.",
"$ref": "GooglePrivacyDlpV2ByteContentItem"
},
"table": {
"$ref": "GooglePrivacyDlpV2Table",
"description": "Structured content for inspection. See\nhttps://cloud.google.com/dlp/docs/inspecting-text#inspecting_a_table to\nlearn more."
}
},
"id": "GooglePrivacyDlpV2ContentItem",
"description": "Container structure for the content to inspect.",
"type": "object"
},
"GooglePrivacyDlpV2ImageLocation": {
"description": "Location of the finding within an image.",
"type": "object",
"properties": {
"boundingBoxes": {
"description": "Bounding boxes locating the pixels within the image containing the finding.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2BoundingBox"
}
}
},
"id": "GooglePrivacyDlpV2ImageLocation"
},
"GooglePrivacyDlpV2DeltaPresenceEstimationHistogramBucket": {
"description": "A DeltaPresenceEstimationHistogramBucket message with the following\nvalues:\n min_probability: 0.1\n max_probability: 0.2\n frequency: 42\nmeans that there are 42 records for which δ is in [0.1, 0.2). An\nimportant particular case is when min_probability = max_probability = 1:\nthen, every individual who shares this quasi-identifier combination is in\nthe dataset.",
"type": "object",
"properties": {
"maxProbability": {
"description": "Always greater than or equal to min_probability.",
"format": "double",
"type": "number"
},
"bucketValues": {
"description": "Sample of quasi-identifier tuple values in this bucket. The total\nnumber of classes returned per bucket is capped at 20.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2DeltaPresenceEstimationQuasiIdValues"
}
},
"minProbability": {
"description": "Between 0 and 1.",
"format": "double",
"type": "number"
},
"bucketSize": {
"description": "Number of records within these probability bounds.",
"format": "int64",
"type": "string"
},
"bucketValueCount": {
"description": "Total number of distinct quasi-identifier tuple values in this bucket.",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2DeltaPresenceEstimationHistogramBucket"
},
"GooglePrivacyDlpV2BoundingBox": {
"properties": {
"left": {
"description": "Left coordinate of the bounding box. (0,0) is upper left.",
"format": "int32",
"type": "integer"
},
"width": {
"type": "integer",
"description": "Width of the bounding box in pixels.",
"format": "int32"
},
"height": {
"description": "Height of the bounding box in pixels.",
"format": "int32",
"type": "integer"
},
"top": {
"description": "Top coordinate of the bounding box. (0,0) is upper left.",
"format": "int32",
"type": "integer"
}
},
"id": "GooglePrivacyDlpV2BoundingBox",
"description": "Bounding box encompassing detected text within an image.",
"type": "object"
},
"GooglePrivacyDlpV2CharacterMaskConfig": {
"type": "object",
"properties": {
"numberToMask": {
"description": "Number of characters to mask. If not set, all matching chars will be\nmasked. Skipped characters do not count towards this tally.",
"format": "int32",
"type": "integer"
},
"charactersToIgnore": {
"description": "When masking a string, items in this list will be skipped when replacing.\nFor example, if your string is 555-555-5555 and you ask us to skip `-` and\nmask 5 chars with * we would produce ***-*55-5555.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2CharsToIgnore"
}
},
"maskingCharacter": {
"description": "Character to mask the sensitive values—for example, \"*\" for an\nalphabetic string such as name, or \"0\" for a numeric string such as ZIP\ncode or credit card number. String must have length 1. If not supplied, we\nwill default to \"*\" for strings, 0 for digits.",
"type": "string"
},
"reverseOrder": {
"description": "Mask characters in reverse order. For example, if `masking_character` is\n'0', number_to_mask is 14, and `reverse_order` is false, then\n1234-5678-9012-3456 -\u003e 00000000000000-3456\nIf `masking_character` is '*', `number_to_mask` is 3, and `reverse_order`\nis true, then 12345 -\u003e 12***",
"type": "boolean"
}
},
"id": "GooglePrivacyDlpV2CharacterMaskConfig",
"description": "Partially mask a string by replacing a given number of characters with a\nfixed character. Masking can start from the beginning or end of the string.\nThis can be used on data of any type (numbers, longs, and so on) and when\nde-identifying structured data we'll attempt to preserve the original data's\ntype. (This allows you to take a long like 123 and modify it to a string like\n**3."
},
"GooglePrivacyDlpV2RecordKey": {
"description": "Message for a unique key indicating a record that contains a finding.",
"type": "object",
"properties": {
"bigQueryKey": {
"$ref": "GooglePrivacyDlpV2BigQueryKey"
},
"datastoreKey": {
"$ref": "GooglePrivacyDlpV2DatastoreKey"
}
},
"id": "GooglePrivacyDlpV2RecordKey"
},
"GooglePrivacyDlpV2SummaryResult": {
"description": "A collection that informs the user the number of times a particular\n`TransformationResultCode` and error details occurred.",
"type": "object",
"properties": {
"details": {
"description": "A place for warnings or errors to show up if a transformation didn't\nwork as expected.",
"type": "string"
},
"count": {
"type": "string",
"format": "int64"
},
"code": {
"enumDescriptions": [
"",
"",
""
],
"enum": [
"TRANSFORMATION_RESULT_CODE_UNSPECIFIED",
"SUCCESS",
"ERROR"
],
"type": "string"
}
},
"id": "GooglePrivacyDlpV2SummaryResult"
},
"GooglePrivacyDlpV2Bucket": {
"description": "Bucket is represented as a range, along with replacement values.",
"type": "object",
"properties": {
"min": {
"$ref": "GooglePrivacyDlpV2Value",
"description": "Lower bound of the range, inclusive. Type should be the same as max if\nused."
},
"max": {
"$ref": "GooglePrivacyDlpV2Value",
"description": "Upper bound of the range, exclusive; type must match min."
},
"replacementValue": {
"$ref": "GooglePrivacyDlpV2Value",
"description": "Replacement value for this bucket. If not provided\nthe default behavior will be to hyphenate the min-max range."
}
},
"id": "GooglePrivacyDlpV2Bucket"
},
"GooglePrivacyDlpV2ReidentifyContentRequest": {
"description": "Request to re-identify an item.",
"type": "object",
"properties": {
"reidentifyConfig": {
"description": "Configuration for the re-identification of the content item.\nThis field shares the same proto message type that is used for\nde-identification, however its usage here is for the reversal of the\nprevious de-identification. Re-identification is performed by examining\nthe transformations used to de-identify the items and executing the\nreverse. This requires that only reversible transformations\nbe provided here. The reversible transformations are:\n\n - `CryptoReplaceFfxFpeConfig`",
"$ref": "GooglePrivacyDlpV2DeidentifyConfig"
},
"item": {
"$ref": "GooglePrivacyDlpV2ContentItem",
"description": "The item to re-identify. Will be treated as text."
},
"reidentifyTemplateName": {
"description": "Optional template to use. References an instance of `DeidentifyTemplate`.\nAny configuration directly specified in `reidentify_config` or\n`inspect_config` will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.",
"type": "string"
},
"inspectConfig": {
"$ref": "GooglePrivacyDlpV2InspectConfig",
"description": "Configuration for the inspector."
},
"inspectTemplateName": {
"description": "Optional template to use. Any configuration directly specified in\n`inspect_config` will override those set in the template. Singular fields\nthat are set in this request will replace their corresponding fields in the\ntemplate. Repeated fields are appended. Singular sub-messages and groups\nare recursively merged.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2ReidentifyContentRequest"
},
"GooglePrivacyDlpV2Key": {
"description": "A unique identifier for a Datastore entity.\nIf a key's partition ID or any of its path kinds or names are\nreserved/read-only, the key is reserved/read-only.\nA reserved/read-only key is forbidden in certain documented contexts.",
"type": "object",
"properties": {
"path": {
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2PathElement"
},
"description": "The entity path.\nAn entity path consists of one or more elements composed of a kind and a\nstring or numerical identifier, which identify entities. The first\nelement identifies a _root entity_, the second element identifies\na _child_ of the root entity, the third element identifies a child of the\nsecond entity, and so forth. The entities identified by all prefixes of\nthe path are called the element's _ancestors_.\n\nA path can never be empty, and a path can have at most 100 elements."
},
"partitionId": {
"description": "Entities are partitioned into subsets, currently identified by a project\nID and namespace ID.\nQueries are scoped to a single partition.",
"$ref": "GooglePrivacyDlpV2PartitionId"
}
},
"id": "GooglePrivacyDlpV2Key"
},
"GooglePrivacyDlpV2TableLocation": {
"description": "Location of a finding within a table.",
"type": "object",
"properties": {
"rowIndex": {
"description": "The zero-based index of the row where the finding is located.",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2TableLocation"
},
"GooglePrivacyDlpV2Conditions": {
"description": "A collection of conditions.",
"type": "object",
"properties": {
"conditions": {
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Condition"
}
}
},
"id": "GooglePrivacyDlpV2Conditions"
},
"GooglePrivacyDlpV2CloudStorageRegexFileSet": {
"description": "Message representing a set of files in a Cloud Storage bucket. Regular\nexpressions are used to allow fine-grained control over which files in the\nbucket to include.\n\nIncluded files are those that match at least one item in `include_regex` and\ndo not match any items in `exclude_regex`. Note that a file that matches\nitems from both lists will _not_ be included. For a match to occur, the\nentire file path (i.e., everything in the url after the bucket name) must\nmatch the regular expression.\n\nFor example, given the input `{bucket_name: \"mybucket\", include_regex:\n[\"directory1/.*\"], exclude_regex:\n[\"directory1/excluded.*\"]}`:\n\n* `gs://mybucket/directory1/myfile` will be included\n* `gs://mybucket/directory1/directory2/myfile` will be included (`.*` matches\nacross `/`)\n* `gs://mybucket/directory0/directory1/myfile` will _not_ be included (the\nfull path doesn't match any items in `include_regex`)\n* `gs://mybucket/directory1/excludedfile` will _not_ be included (the path\nmatches an item in `exclude_regex`)\n\nIf `include_regex` is left empty, it will match all files by default\n(this is equivalent to setting `include_regex: [\".*\"]`).\n\nSome other common use cases:\n\n* `{bucket_name: \"mybucket\", exclude_regex: [\".*\\.pdf\"]}` will include all\nfiles in `mybucket` except for .pdf files\n* `{bucket_name: \"mybucket\", include_regex: [\"directory/[^/]+\"]}` will\ninclude all files directly under `gs://mybucket/directory/`, without matching\nacross `/`",
"type": "object",
"properties": {
"bucketName": {
"description": "The name of a Cloud Storage bucket. Required.",
"type": "string"
},
"includeRegex": {
"description": "A list of regular expressions matching file paths to include. All files in\nthe bucket that match at least one of these regular expressions will be\nincluded in the set of files, except for those that also match an item in\n`exclude_regex`. Leaving this field empty will match all files by default\n(this is equivalent to including `.*` in the list).\n\nRegular expressions use RE2\n[syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found\nunder the google/re2 repository on GitHub.",
"type": "array",
"items": {
"type": "string"
}
},
"excludeRegex": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of regular expressions matching file paths to exclude. All files in\nthe bucket that match at least one of these regular expressions will be\nexcluded from the scan.\n\nRegular expressions use RE2\n[syntax](https://github.com/google/re2/wiki/Syntax); a guide can be found\nunder the google/re2 repository on GitHub."
}
},
"id": "GooglePrivacyDlpV2CloudStorageRegexFileSet"
},
"GooglePrivacyDlpV2TransformationSummary": {
"description": "Summary of a single tranformation.\nOnly one of 'transformation', 'field_transformation', or 'record_suppress'\nwill be set.",
"type": "object",
"properties": {
"recordSuppress": {
"description": "The specific suppression option these stats apply to.",
"$ref": "GooglePrivacyDlpV2RecordSuppression"
},
"infoType": {
"$ref": "GooglePrivacyDlpV2InfoType",
"description": "Set if the transformation was limited to a specific info_type."
},
"transformation": {
"description": "The specific transformation these stats apply to.",
"$ref": "GooglePrivacyDlpV2PrimitiveTransformation"
},
"field": {
"$ref": "GooglePrivacyDlpV2FieldId",
"description": "Set if the transformation was limited to a specific FieldId."
},
"results": {
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2SummaryResult"
}
},
"fieldTransformations": {
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2FieldTransformation"
},
"description": "The field transformation that was applied.\nIf multiple field transformations are requested for a single field,\nthis list will contain all of them; otherwise, only one is supplied."
},
"transformedBytes": {
"description": "Total size in bytes that were transformed in some way.",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2TransformationSummary"
},
"GooglePrivacyDlpV2ListInspectTemplatesResponse": {
"description": "Response message for ListInspectTemplates.",
"type": "object",
"properties": {
"nextPageToken": {
"description": "If the next page is available then the next page token to be used\nin following ListInspectTemplates request.",
"type": "string"
},
"inspectTemplates": {
"description": "List of inspectTemplates, up to page_size in ListInspectTemplatesRequest.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InspectTemplate"
}
}
},
"id": "GooglePrivacyDlpV2ListInspectTemplatesResponse"
},
"GooglePrivacyDlpV2CreateInspectTemplateRequest": {
"description": "Request message for CreateInspectTemplate.",
"type": "object",
"properties": {
"templateId": {
"description": "The template id can contain uppercase and lowercase letters,\nnumbers, and hyphens; that is, it must match the regular\nexpression: `[a-zA-Z\\\\d-]+`. The maximum length is 100\ncharacters. Can be empty to allow the system to generate one.",
"type": "string"
},
"inspectTemplate": {
"description": "The InspectTemplate to create.",
"$ref": "GooglePrivacyDlpV2InspectTemplate"
}
},
"id": "GooglePrivacyDlpV2CreateInspectTemplateRequest"
},
"GooglePrivacyDlpV2DeltaPresenceEstimationConfig": {
"description": "δ-presence metric, used to estimate how likely it is for an attacker to\nfigure out that one given individual appears in a de-identified dataset.\nSimilarly to the k-map metric, we cannot compute δ-presence exactly without\nknowing the attack dataset, so we use a statistical model instead.",
"type": "object",
"properties": {
"auxiliaryTables": {
"description": "Several auxiliary tables can be used in the analysis. Each custom_tag\nused to tag a quasi-identifiers field must appear in exactly one\nfield of one auxiliary table.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2StatisticalTable"
}
},
"quasiIds": {
"description": "Fields considered to be quasi-identifiers. No two fields can have the\nsame tag. [required]",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2QuasiId"
}
},
"regionCode": {
"description": "ISO 3166-1 alpha-2 region code to use in the statistical modeling.\nRequired if no column is tagged with a region-specific InfoType (like\nUS_ZIP_5) or a region code.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2DeltaPresenceEstimationConfig"
},
"GooglePrivacyDlpV2CloudStorageFileSet": {
"description": "Message representing a set of files in Cloud Storage.",
"type": "object",
"properties": {
"url": {
"description": "The url, in the format `gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the\npath is allowed.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2CloudStorageFileSet"
},
"GooglePrivacyDlpV2DetectionRule": {
"description": "Rule for modifying a CustomInfoType to alter behavior under certain\ncircumstances, depending on the specific details of the rule. Not supported\nfor the `surrogate_type` custom info type.",
"type": "object",
"properties": {
"hotwordRule": {
"$ref": "GooglePrivacyDlpV2HotwordRule",
"description": "Hotword-based detection rule."
}
},
"id": "GooglePrivacyDlpV2DetectionRule"
},
"GooglePrivacyDlpV2StoredInfoType": {
"description": "StoredInfoType resource message that contains information about the current\nversion and any pending updates.",
"type": "object",
"properties": {
"currentVersion": {
"description": "Current version of the stored info type.",
"$ref": "GooglePrivacyDlpV2StoredInfoTypeVersion"
},
"name": {
"description": "Resource name.",
"type": "string"
},
"pendingVersions": {
"description": "Pending versions of the stored info type. Empty if no versions are\npending.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2StoredInfoTypeVersion"
}
}
},
"id": "GooglePrivacyDlpV2StoredInfoType"
},
"GooglePrivacyDlpV2InspectContentResponse": {
"properties": {
"result": {
"$ref": "GooglePrivacyDlpV2InspectResult",
"description": "The findings."
}
},
"id": "GooglePrivacyDlpV2InspectContentResponse",
"description": "Results of inspecting an item.",
"type": "object"
},
"GooglePrivacyDlpV2FileSet": {
"description": "Set of files to scan.",
"type": "object",
"properties": {
"regexFileSet": {
"description": "The regex-filtered set of files to scan. Exactly one of `url` or\n`regex_file_set` must be set.",
"$ref": "GooglePrivacyDlpV2CloudStorageRegexFileSet"
},
"url": {
"description": "The Cloud Storage url of the file(s) to scan, in the format\n`gs://\u003cbucket\u003e/\u003cpath\u003e`. Trailing wildcard in the path is allowed. Exactly\none of `url` or `regex_file_set` must be set.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2FileSet"
},
"GooglePrivacyDlpV2LDiversityResult": {
"description": "Result of the l-diversity computation.",
"type": "object",
"properties": {
"sensitiveValueFrequencyHistogramBuckets": {
"description": "Histogram of l-diversity equivalence class sensitive value frequencies.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2LDiversityHistogramBucket"
}
}
},
"id": "GooglePrivacyDlpV2LDiversityResult"
},
"GooglePrivacyDlpV2SaveFindings": {
"description": "If set, the detailed findings will be persisted to the specified\nOutputStorageConfig. Only a single instance of this action can be\nspecified.\nCompatible with: Inspect, Risk",
"type": "object",
"properties": {
"outputConfig": {
"$ref": "GooglePrivacyDlpV2OutputStorageConfig"
}
},
"id": "GooglePrivacyDlpV2SaveFindings"
},
"GooglePrivacyDlpV2OutputStorageConfig": {
"description": "Cloud repository for storing output.",
"type": "object",
"properties": {
"outputSchema": {
"enum": [
"OUTPUT_SCHEMA_UNSPECIFIED",
"BASIC_COLUMNS",
"GCS_COLUMNS",
"DATASTORE_COLUMNS",
"BIG_QUERY_COLUMNS",
"ALL_COLUMNS"
],
"description": "Schema used for writing the findings for Inspect jobs. This field is only\nused for Inspect and must be unspecified for Risk jobs. Columns are derived\nfrom the `Finding` object. If appending to an existing table, any columns\nfrom the predefined schema that are missing will be added. No columns in\nthe existing table will be deleted.\n\nIf unspecified, then all available columns will be used for a new table,\nand no changes will be made to an existing table.",
"type": "string",
"enumDescriptions": [
"",
"Basic schema including only `info_type`, `quote`, `certainty`, and\n`timestamp`.",
"Schema tailored to findings from scanning Google Cloud Storage.",
"Schema tailored to findings from scanning Google Datastore.",
"Schema tailored to findings from scanning Google BigQuery.",
"Schema containing all columns."
]
},
"table": {
"description": "Store findings in an existing table or a new table in an existing\ndataset. If table_id is not set a new one will be generated\nfor you with the following format:\ndlp_googleapis_yyyy_mm_dd_[dlp_job_id]. Pacific timezone will be used for\ngenerating the date details.\n\nFor Inspect, each column in an existing output table must have the same\nname, type, and mode of a field in the `Finding` object.\n\nFor Risk, an existing output table should be the output of a previous\nRisk analysis job run on the same source table, with the same privacy\nmetric and quasi-identifiers. Risk jobs that analyze the same table but\ncompute a different privacy metric, or use different sets of\nquasi-identifiers, cannot store their results in the same table.",
"$ref": "GooglePrivacyDlpV2BigQueryTable"
}
},
"id": "GooglePrivacyDlpV2OutputStorageConfig"
},
"GooglePrivacyDlpV2SurrogateType": {
"description": "Message for detecting output from deidentification transformations\nsuch as\n[`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).\nThese types of transformations are\nthose that perform pseudonymization, thereby producing a \"surrogate\" as\noutput. This should be used in conjunction with a field on the\ntransformation such as `surrogate_info_type`. This CustomInfoType does\nnot support the use of `detection_rules`.",
"type": "object",
"properties": {},
"id": "GooglePrivacyDlpV2SurrogateType"
},
"GooglePrivacyDlpV2StorageConfig": {
"description": "Shared message indicating Cloud storage type.",
"type": "object",
"properties": {
"bigQueryOptions": {
"$ref": "GooglePrivacyDlpV2BigQueryOptions",
"description": "BigQuery options specification."
},
"cloudStorageOptions": {
"description": "Google Cloud Storage options specification.",
"$ref": "GooglePrivacyDlpV2CloudStorageOptions"
},
"datastoreOptions": {
"$ref": "GooglePrivacyDlpV2DatastoreOptions",
"description": "Google Cloud Datastore options specification."
},
"timespanConfig": {
"$ref": "GooglePrivacyDlpV2TimespanConfig"
}
},
"id": "GooglePrivacyDlpV2StorageConfig"
},
"GooglePrivacyDlpV2Error": {
"description": "Details information about an error encountered during job execution or\nthe results of an unsuccessful activation of the JobTrigger.\nOutput only field.",
"type": "object",
"properties": {
"timestamps": {
"description": "The times the error occurred.",
"type": "array",
"items": {
"type": "string",
"format": "google-datetime"
}
},
"details": {
"$ref": "GoogleRpcStatus"
}
},
"id": "GooglePrivacyDlpV2Error"
},
"GooglePrivacyDlpV2UnwrappedCryptoKey": {
"description": "Using raw keys is prone to security risks due to accidentally\nleaking the key. Choose another type of key if possible.",
"type": "object",
"properties": {
"key": {
"description": "The AES 128/192/256 bit key. [required]",
"format": "byte",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2UnwrappedCryptoKey"
},
"GooglePrivacyDlpV2Table": {
"description": "Structured content to inspect. Up to 50,000 `Value`s per request allowed.\nSee https://cloud.google.com/dlp/docs/inspecting-text#inspecting_a_table to\nlearn more.",
"type": "object",
"properties": {
"rows": {
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Row"
}
},
"headers": {
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2FieldId"
}
}
},
"id": "GooglePrivacyDlpV2Table"
},
"GooglePrivacyDlpV2CryptoHashConfig": {
"description": "Pseudonymization method that generates surrogates via cryptographic hashing.\nUses SHA-256.\nThe key size must be either 32 or 64 bytes.\nOutputs a 32 byte digest as an uppercase hex string\n(for example, 41D1567F7F99F1DC2A5FAB886DEE5BEE).\nCurrently, only string and integer values can be hashed.",
"type": "object",
"properties": {
"cryptoKey": {
"$ref": "GooglePrivacyDlpV2CryptoKey",
"description": "The key used by the hash function."
}
},
"id": "GooglePrivacyDlpV2CryptoHashConfig"
},
"GooglePrivacyDlpV2UpdateJobTriggerRequest": {
"description": "Request message for UpdateJobTrigger.",
"type": "object",
"properties": {
"jobTrigger": {
"description": "New JobTrigger value.",
"$ref": "GooglePrivacyDlpV2JobTrigger"
},
"updateMask": {
"description": "Mask to control which fields get updated.",
"format": "google-fieldmask",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2UpdateJobTriggerRequest"
},
"GooglePrivacyDlpV2QuasiIdentifierField": {
"properties": {
"customTag": {
"type": "string"
},
"field": {
"$ref": "GooglePrivacyDlpV2FieldId"
}
},
"id": "GooglePrivacyDlpV2QuasiIdentifierField",
"description": "A quasi-identifier column has a custom_tag, used to know which column\nin the data corresponds to which column in the statistical model.",
"type": "object"
},
"GooglePrivacyDlpV2PublishToPubSub": {
"type": "object",
"properties": {
"topic": {
"description": "Cloud Pub/Sub topic to send notifications to. The topic must have given\npublishing access rights to the DLP API service account executing\nthe long running DlpJob sending the notifications.\nFormat is projects/{project}/topics/{topic}.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2PublishToPubSub",
"description": "Publish the results of a DlpJob to a pub sub channel.\nCompatible with: Inspect, Risk"
},
"GooglePrivacyDlpV2LargeCustomDictionaryConfig": {
"type": "object",
"properties": {
"cloudStorageFileSet": {
"description": "Set of files containing newline-delimited lists of dictionary phrases.",
"$ref": "GooglePrivacyDlpV2CloudStorageFileSet"
},
"outputPath": {
"$ref": "GooglePrivacyDlpV2CloudStoragePath",
"description": "Location to store dictionary artifacts in Google Cloud Storage. These files\nwill only be accessible by project owners and the DLP API. If any of these\nartifacts are modified, the dictionary is considered invalid and can no\nlonger be used."
},
"bigQueryField": {
"description": "Field in a BigQuery table where each cell represents a dictionary phrase.",
"$ref": "GooglePrivacyDlpV2BigQueryField"
}
},
"id": "GooglePrivacyDlpV2LargeCustomDictionaryConfig",
"description": "Configuration for a custom dictionary created from a data source of any size\nup to the maximum size defined in the\n[limits](https://cloud.google.com/dlp/limits) page. The artifacts of\ndictionary creation are stored in the specified Google Cloud Storage\nlocation. Consider using `CustomInfoType.Dictionary` for smaller dictionaries\nthat satisfy the size requirements."
},
"GooglePrivacyDlpV2QuoteInfo": {
"description": "Message for infoType-dependent details parsed from quote.",
"type": "object",
"properties": {
"dateTime": {
"$ref": "GooglePrivacyDlpV2DateTime"
}
},
"id": "GooglePrivacyDlpV2QuoteInfo"
},
"GooglePrivacyDlpV2DlpJob": {
"type": "object",
"properties": {
"inspectDetails": {
"description": "Results from inspecting a data source.",
"$ref": "GooglePrivacyDlpV2InspectDataSourceDetails"
},
"createTime": {
"description": "Time when the job was created.",
"format": "google-datetime",
"type": "string"
},
"jobTriggerName": {
"description": "If created by a job trigger, the resource name of the trigger that\ninstantiated the job.",
"type": "string"
},
"state": {
"type": "string",
"enumDescriptions": [
"",
"The job has not yet started.",
"The job is currently running.",
"The job is no longer running.",
"The job was canceled before it could complete.",
"The job had an error and did not complete."
],
"enum": [
"JOB_STATE_UNSPECIFIED",
"PENDING",
"RUNNING",
"DONE",
"CANCELED",
"FAILED"
],
"description": "State of a job."
},
"riskDetails": {
"$ref": "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails",
"description": "Results from analyzing risk of a data source."
},
"name": {
"description": "The server-assigned name.",
"type": "string"
},
"type": {
"enumDescriptions": [
"",
"The job inspected Google Cloud for sensitive data.",
"The job executed a Risk Analysis computation."
],
"enum": [
"DLP_JOB_TYPE_UNSPECIFIED",
"INSPECT_JOB",
"RISK_ANALYSIS_JOB"
],
"description": "The type of job.",
"type": "string"
},
"endTime": {
"description": "Time when the job finished.",
"format": "google-datetime",
"type": "string"
},
"errors": {
"description": "A stream of errors encountered running the job.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Error"
}
},
"startTime": {
"description": "Time when the job started.",
"format": "google-datetime",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2DlpJob",
"description": "Combines all of the information about a DLP job."
},
"GooglePrivacyDlpV2ImageRedactionConfig": {
"description": "Configuration for determining how redaction of images should occur.",
"type": "object",
"properties": {
"redactionColor": {
"$ref": "GooglePrivacyDlpV2Color",
"description": "The color to use when redacting content from an image. If not specified,\nthe default is black."
},
"redactAllText": {
"description": "If true, all text found in the image, regardless whether it matches an\ninfo_type, is redacted. Only one should be provided.",
"type": "boolean"
},
"infoType": {
"description": "Only one per info_type should be provided per request. If not\nspecified, and redact_all_text is false, the DLP API will redact all\ntext that it matches against all info_types that are found, but not\nspecified in another ImageRedactionConfig.",
"$ref": "GooglePrivacyDlpV2InfoType"
}
},
"id": "GooglePrivacyDlpV2ImageRedactionConfig"
},
"GooglePrivacyDlpV2PublishSummaryToCscc": {
"description": "Publish the result summary of a DlpJob to the Cloud Security\nCommand Center (CSCC Alpha).\nThis action is only available for projects which are parts of\nan organization and whitelisted for the alpha Cloud Security Command\nCenter.\nThe action will publish count of finding instances and their info types.\nThe summary of findings will be persisted in CSCC and are governed by CSCC\nservice-specific policy, see https://cloud.google.com/terms/service-terms\nOnly a single instance of this action can be specified.\nCompatible with: Inspect",
"type": "object",
"properties": {},
"id": "GooglePrivacyDlpV2PublishSummaryToCscc"
},
"GooglePrivacyDlpV2RecordTransformations": {
"description": "A type of transformation that is applied over structured data such as a\ntable.",
"type": "object",
"properties": {
"recordSuppressions": {
"description": "Configuration defining which records get suppressed entirely. Records that\nmatch any suppression rule are omitted from the output [optional].",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2RecordSuppression"
}
},
"fieldTransformations": {
"description": "Transform the record by applying various field transformations.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2FieldTransformation"
}
}
},
"id": "GooglePrivacyDlpV2RecordTransformations"
},
"GooglePrivacyDlpV2KmsWrappedCryptoKey": {
"type": "object",
"properties": {
"cryptoKeyName": {
"description": "The resource name of the KMS CryptoKey to use for unwrapping. [required]",
"type": "string"
},
"wrappedKey": {
"type": "string",
"description": "The wrapped data crypto key. [required]",
"format": "byte"
}
},
"id": "GooglePrivacyDlpV2KmsWrappedCryptoKey",
"description": "Include to use an existing data crypto key wrapped by KMS.\nAuthorization requires the following IAM permissions when sending a request\nto perform a crypto transformation using a kms-wrapped crypto key:\ndlp.kms.encrypt"
},
"GooglePrivacyDlpV2DateTime": {
"id": "GooglePrivacyDlpV2DateTime",
"description": "Message for a date time object.",
"type": "object",
"properties": {
"timeZone": {
"$ref": "GooglePrivacyDlpV2TimeZone"
},
"dayOfWeek": {
"enum": [
"DAY_OF_WEEK_UNSPECIFIED",
"MONDAY",
"TUESDAY",
"WEDNESDAY",
"THURSDAY",
"FRIDAY",
"SATURDAY",
"SUNDAY"
],
"type": "string",
"enumDescriptions": [
"The unspecified day-of-week.",
"The day-of-week of Monday.",
"The day-of-week of Tuesday.",
"The day-of-week of Wednesday.",
"The day-of-week of Thursday.",
"The day-of-week of Friday.",
"The day-of-week of Saturday.",
"The day-of-week of Sunday."
]
},
"time": {
"$ref": "GoogleTypeTimeOfDay"
},
"date": {
"$ref": "GoogleTypeDate",
"description": "One or more of the following must be set. All fields are optional, but\nwhen set must be valid date or time values."
}
}
},
"GooglePrivacyDlpV2Result": {
"type": "object",
"properties": {
"totalEstimatedBytes": {
"description": "Estimate of the number of bytes to process.",
"format": "int64",
"type": "string"
},
"infoTypeStats": {
"description": "Statistics of how many instances of each info type were found during\ninspect job.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InfoTypeStats"
}
},
"processedBytes": {
"description": "Total size in bytes that were processed.",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2Result"
},
"GooglePrivacyDlpV2InfoTypeStats": {
"properties": {
"count": {
"description": "Number of findings for this infoType.",
"format": "int64",
"type": "string"
},
"infoType": {
"$ref": "GooglePrivacyDlpV2InfoType",
"description": "The type of finding this stat is for."
}
},
"id": "GooglePrivacyDlpV2InfoTypeStats",
"description": "Statistics regarding a specific InfoType.",
"type": "object"
},
"GooglePrivacyDlpV2RedactImageResponse": {
"description": "Results of redacting an image.",
"type": "object",
"properties": {
"redactedImage": {
"type": "string",
"description": "The redacted image. The type will be the same as the original image.",
"format": "byte"
},
"extractedText": {
"description": "If an image was being inspected and the InspectConfig's include_quote was\nset to true, then this field will include all text, if any, that was found\nin the image.",
"type": "string"
},
"inspectResult": {
"$ref": "GooglePrivacyDlpV2InspectResult",
"description": "The findings. Populated when include_findings in the request is true."
}
},
"id": "GooglePrivacyDlpV2RedactImageResponse"
},
"GooglePrivacyDlpV2ContentLocation": {
"id": "GooglePrivacyDlpV2ContentLocation",
"description": "Findings container location data.",
"type": "object",
"properties": {
"containerVersion": {
"description": "Findings container version, if available\n(\"generation\" for Google Cloud Storage).",
"type": "string"
},
"containerTimestamp": {
"description": "Findings container modification timestamp, if applicable.\nFor Google Cloud Storage contains last file modification timestamp.\nFor BigQuery table contains last_modified_time property.\nFor Datastore - not populated.",
"format": "google-datetime",
"type": "string"
},
"containerName": {
"description": "Name of the container where the finding is located.\nThe top level name is the source file name or table name. Names of some\ncommon storage containers are formatted as follows:\n\n* BigQuery tables: `\u003cproject_id\u003e:\u003cdataset_id\u003e.\u003ctable_id\u003e`\n* Cloud Storage files: `gs://\u003cbucket\u003e/\u003cpath\u003e`\n* Datastore namespace: \u003cnamespace\u003e\n\nNested names could be absent if the embedded object has no string\nidentifier (for an example an image contained within a document).",
"type": "string"
},
"recordLocation": {
"description": "Location within a row or record of a database table.",
"$ref": "GooglePrivacyDlpV2RecordLocation"
},
"imageLocation": {
"description": "Location within an image's pixels.",
"$ref": "GooglePrivacyDlpV2ImageLocation"
},
"documentLocation": {
"description": "Location data for document files.",
"$ref": "GooglePrivacyDlpV2DocumentLocation"
}
}
},
"GooglePrivacyDlpV2ListInfoTypesResponse": {
"description": "Response to the ListInfoTypes request.",
"type": "object",
"properties": {
"infoTypes": {
"description": "Set of sensitive infoTypes.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InfoTypeDescription"
}
}
},
"id": "GooglePrivacyDlpV2ListInfoTypesResponse"
},
"GooglePrivacyDlpV2RedactConfig": {
"type": "object",
"properties": {},
"id": "GooglePrivacyDlpV2RedactConfig",
"description": "Redact a given value. For example, if used with an `InfoTypeTransformation`\ntransforming PHONE_NUMBER, and input 'My phone number is 206-555-0123', the\noutput would be 'My phone number is '."
},
"GooglePrivacyDlpV2CloudStoragePath": {
"properties": {
"path": {
"description": "A url representing a file or path (no wildcards) in Cloud Storage.\nExample: gs://[BUCKET_NAME]/dictionary.txt",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2CloudStoragePath",
"description": "Message representing a single file or path in Cloud Storage.",
"type": "object"
},
"GooglePrivacyDlpV2Schedule": {
"description": "Schedule for triggeredJobs.",
"type": "object",
"properties": {
"recurrencePeriodDuration": {
"description": "With this option a job is started a regular periodic basis. For\nexample: every day (86400 seconds).\n\nA scheduled start time will be skipped if the previous\nexecution has not ended when its scheduled time occurs.\n\nThis value must be set to a time duration greater than or equal\nto 1 day and can be no longer than 60 days.",
"format": "google-duration",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2Schedule"
},
"GooglePrivacyDlpV2StoredInfoTypeVersion": {
"id": "GooglePrivacyDlpV2StoredInfoTypeVersion",
"description": "Version of a StoredInfoType, including the configuration used to build it,\ncreate timestamp, and current state.",
"type": "object",
"properties": {
"createTime": {
"description": "Create timestamp of the version. Read-only, determined by the system\nwhen the version is created.",
"format": "google-datetime",
"type": "string"
},
"config": {
"$ref": "GooglePrivacyDlpV2StoredInfoTypeConfig",
"description": "StoredInfoType configuration."
},
"state": {
"type": "string",
"enumDescriptions": [
"",
"StoredInfoType version is being created.",
"StoredInfoType version is ready for use.",
"StoredInfoType creation failed. All relevant error messages are returned in\nthe `StoredInfoTypeVersion` message.",
"StoredInfoType is no longer valid because artifacts stored in\nuser-controlled storage were modified. To fix an invalid StoredInfoType,\nuse the `UpdateStoredInfoType` method to create a new version."
],
"enum": [
"STORED_INFO_TYPE_STATE_UNSPECIFIED",
"PENDING",
"READY",
"FAILED",
"INVALID"
],
"description": "Stored info type version state. Read-only, updated by the system\nduring dictionary creation."
},
"errors": {
"description": "Errors that occurred when creating this storedInfoType version, or\nanomalies detected in the storedInfoType data that render it unusable. Only\nthe five most recent errors will be displayed, with the most recent error\nappearing first.\n\u003cp\u003eFor example, some of the data for stored custom dictionaries is put in\nthe user's Google Cloud Storage bucket, and if this data is modified or\ndeleted by the user or another system, the dictionary becomes invalid.\n\u003cp\u003eIf any errors occur, fix the problem indicated by the error message and\nuse the UpdateStoredInfoType API method to create another version of the\nstoredInfoType to continue using it, reusing the same `config` if it was\nnot the source of the error.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Error"
}
}
}
},
"GooglePrivacyDlpV2ListDeidentifyTemplatesResponse": {
"description": "Response message for ListDeidentifyTemplates.",
"type": "object",
"properties": {
"nextPageToken": {
"description": "If the next page is available then the next page token to be used\nin following ListDeidentifyTemplates request.",
"type": "string"
},
"deidentifyTemplates": {
"description": "List of deidentify templates, up to page_size in\nListDeidentifyTemplatesRequest.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2DeidentifyTemplate"
}
}
},
"id": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse"
},
"GooglePrivacyDlpV2CategoricalStatsHistogramBucket": {
"id": "GooglePrivacyDlpV2CategoricalStatsHistogramBucket",
"type": "object",
"properties": {
"valueFrequencyUpperBound": {
"description": "Upper bound on the value frequency of the values in this bucket.",
"format": "int64",
"type": "string"
},
"valueFrequencyLowerBound": {
"type": "string",
"description": "Lower bound on the value frequency of the values in this bucket.",
"format": "int64"
},
"bucketValues": {
"description": "Sample of value frequencies in this bucket. The total number of\nvalues returned per bucket is capped at 20.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2ValueFrequency"
}
},
"bucketSize": {
"description": "Total number of values in this bucket.",
"format": "int64",
"type": "string"
},
"bucketValueCount": {
"description": "Total number of distinct values in this bucket.",
"format": "int64",
"type": "string"
}
}
},
"GooglePrivacyDlpV2Row": {
"id": "GooglePrivacyDlpV2Row",
"type": "object",
"properties": {
"values": {
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Value"
}
}
}
},
"GooglePrivacyDlpV2DeidentifyTemplate": {
"description": "The DeidentifyTemplates contains instructions on how to deidentify content.\nSee https://cloud.google.com/dlp/docs/concepts-templates to learn more.",
"type": "object",
"properties": {
"updateTime": {
"description": "The last update timestamp of a inspectTemplate, output only field.",
"format": "google-datetime",
"type": "string"
},
"name": {
"description": "The template name. Output only.\n\nThe template will have one of the following formats:\n`projects/PROJECT_ID/deidentifyTemplates/TEMPLATE_ID` OR\n`organizations/ORGANIZATION_ID/deidentifyTemplates/TEMPLATE_ID`",
"type": "string"
},
"displayName": {
"description": "Display name (max 256 chars).",
"type": "string"
},
"description": {
"description": "Short description (max 256 chars).",
"type": "string"
},
"deidentifyConfig": {
"$ref": "GooglePrivacyDlpV2DeidentifyConfig",
"description": "///////////// // The core content of the template // ///////////////"
},
"createTime": {
"description": "The creation timestamp of a inspectTemplate, output only field.",
"format": "google-datetime",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2DeidentifyTemplate"
},
"GooglePrivacyDlpV2QuasiIdField": {
"description": "A quasi-identifier column has a custom_tag, used to know which column\nin the data corresponds to which column in the statistical model.",
"type": "object",
"properties": {
"field": {
"$ref": "GooglePrivacyDlpV2FieldId"
},
"customTag": {
"type": "string"
}
},
"id": "GooglePrivacyDlpV2QuasiIdField"
},
"GooglePrivacyDlpV2RedactImageRequest": {
"description": "Request to search for potentially sensitive info in an image and redact it\nby covering it with a colored rectangle.",
"type": "object",
"properties": {
"imageRedactionConfigs": {
"description": "The configuration for specifying what content to redact from images.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2ImageRedactionConfig"
}
},
"byteItem": {
"$ref": "GooglePrivacyDlpV2ByteContentItem",
"description": "The content must be PNG, JPEG, SVG or BMP."
},
"inspectConfig": {
"$ref": "GooglePrivacyDlpV2InspectConfig",
"description": "Configuration for the inspector."
},
"includeFindings": {
"description": "Whether the response should include findings along with the redacted\nimage.",
"type": "boolean"
}
},
"id": "GooglePrivacyDlpV2RedactImageRequest"
},
"GooglePrivacyDlpV2BigQueryTable": {
"description": "Message defining the location of a BigQuery table. A table is uniquely\nidentified by its project_id, dataset_id, and table_name. Within a query\na table is often referenced with a string in the format of:\n`\u003cproject_id\u003e:\u003cdataset_id\u003e.\u003ctable_id\u003e` or\n`\u003cproject_id\u003e.\u003cdataset_id\u003e.\u003ctable_id\u003e`.",
"type": "object",
"properties": {
"projectId": {
"description": "The Google Cloud Platform project ID of the project containing the table.\nIf omitted, project ID is inferred from the API call.",
"type": "string"
},
"datasetId": {
"description": "Dataset ID of the table.",
"type": "string"
},
"tableId": {
"description": "Name of the table.",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2BigQueryTable"
},
"GooglePrivacyDlpV2FieldTransformation": {
"type": "object",
"properties": {
"condition": {
"$ref": "GooglePrivacyDlpV2RecordCondition",
"description": "Only apply the transformation if the condition evaluates to true for the\ngiven `RecordCondition`. The conditions are allowed to reference fields\nthat are not used in the actual transformation. [optional]\n\nExample Use Cases:\n\n- Apply a different bucket transformation to an age column if the zip code\ncolumn for the same record is within a specific range.\n- Redact a field if the date of birth field is greater than 85."
},
"infoTypeTransformations": {
"$ref": "GooglePrivacyDlpV2InfoTypeTransformations",
"description": "Treat the contents of the field as free text, and selectively\ntransform content that matches an `InfoType`."
},
"fields": {
"description": "Input field(s) to apply the transformation to. [required]",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2FieldId"
}
},
"primitiveTransformation": {
"$ref": "GooglePrivacyDlpV2PrimitiveTransformation",
"description": "Apply the transformation to the entire field."
}
},
"id": "GooglePrivacyDlpV2FieldTransformation",
"description": "The transformation to apply to the field."
},
"GooglePrivacyDlpV2PrimitiveTransformation": {
"description": "A rule for transforming a value.",
"type": "object",
"properties": {
"replaceConfig": {
"$ref": "GooglePrivacyDlpV2ReplaceValueConfig"
},
"timePartConfig": {
"$ref": "GooglePrivacyDlpV2TimePartConfig"
},
"fixedSizeBucketingConfig": {
"$ref": "GooglePrivacyDlpV2FixedSizeBucketingConfig"
},
"dateShiftConfig": {
"$ref": "GooglePrivacyDlpV2DateShiftConfig"
},
"characterMaskConfig": {
"$ref": "GooglePrivacyDlpV2CharacterMaskConfig"
},
"redactConfig": {
"$ref": "GooglePrivacyDlpV2RedactConfig"
},
"bucketingConfig": {
"$ref": "GooglePrivacyDlpV2BucketingConfig"
},
"replaceWithInfoTypeConfig": {
"$ref": "GooglePrivacyDlpV2ReplaceWithInfoTypeConfig"
},
"cryptoHashConfig": {
"$ref": "GooglePrivacyDlpV2CryptoHashConfig"
},
"cryptoReplaceFfxFpeConfig": {
"$ref": "GooglePrivacyDlpV2CryptoReplaceFfxFpeConfig"
}
},
"id": "GooglePrivacyDlpV2PrimitiveTransformation"
},
"GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails": {
"description": "Result of a risk analysis operation request.",
"type": "object",
"properties": {
"kMapEstimationResult": {
"$ref": "GooglePrivacyDlpV2KMapEstimationResult"
},
"deltaPresenceEstimationResult": {
"$ref": "GooglePrivacyDlpV2DeltaPresenceEstimationResult"
},
"lDiversityResult": {
"$ref": "GooglePrivacyDlpV2LDiversityResult"
},
"requestedSourceTable": {
"$ref": "GooglePrivacyDlpV2BigQueryTable",
"description": "Input dataset to compute metrics over."
},
"categoricalStatsResult": {
"$ref": "GooglePrivacyDlpV2CategoricalStatsResult"
},
"requestedPrivacyMetric": {
"$ref": "GooglePrivacyDlpV2PrivacyMetric",
"description": "Privacy metric to compute."
},
"numericalStatsResult": {
"$ref": "GooglePrivacyDlpV2NumericalStatsResult"
},
"kAnonymityResult": {
"$ref": "GooglePrivacyDlpV2KAnonymityResult"
}
},
"id": "GooglePrivacyDlpV2AnalyzeDataSourceRiskDetails"
},
"GooglePrivacyDlpV2InspectResult": {
"type": "object",
"properties": {
"findingsTruncated": {
"description": "If true, then this item might have more findings than were returned,\nand the findings returned are an arbitrary subset of all findings.\nThe findings list might be truncated because the input items were too\nlarge, or because the server reached the maximum amount of resources\nallowed for a single API call. For best results, divide the input into\nsmaller batches.",
"type": "boolean"
},
"findings": {
"description": "List of findings for an item.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2Finding"
}
}
},
"id": "GooglePrivacyDlpV2InspectResult",
"description": "All the findings for a single scanned item."
},
"GooglePrivacyDlpV2Dictionary": {
"description": "Custom information type based on a dictionary of words or phrases. This can\nbe used to match sensitive information specific to the data, such as a list\nof employee IDs or job titles.\n\nDictionary words are case-insensitive and all characters other than letters\nand digits in the unicode [Basic Multilingual\nPlane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)\nwill be replaced with whitespace when scanning for matches, so the\ndictionary phrase \"Sam Johnson\" will match all three phrases \"sam johnson\",\n\"Sam, Johnson\", and \"Sam (Johnson)\". Additionally, the characters\nsurrounding any match must be of a different type than the adjacent\ncharacters within the word, so letters must be next to non-letters and\ndigits next to non-digits. For example, the dictionary word \"jen\" will\nmatch the first three letters of the text \"jen123\" but will return no\nmatches for \"jennifer\".\n\nDictionary words containing a large number of characters that are not\nletters or digits may result in unexpected findings because such characters\nare treated as whitespace. The\n[limits](https://cloud.google.com/dlp/limits) page contains details about\nthe size limits of dictionaries. For dictionaries that do not fit within\nthese constraints, consider using `LargeCustomDictionaryConfig` in the\n`StoredInfoType` API.",
"type": "object",
"properties": {
"wordList": {
"$ref": "GooglePrivacyDlpV2WordList",
"description": "List of words or phrases to search for."
},
"cloudStoragePath": {
"description": "Newline-delimited file of words in Cloud Storage. Only a single file\nis accepted.",
"$ref": "GooglePrivacyDlpV2CloudStoragePath"
}
},
"id": "GooglePrivacyDlpV2Dictionary"
},
"GooglePrivacyDlpV2InspectionRule": {
"description": "A single inspection rule to be applied to infoTypes, specified in\n`InspectionRuleSet`.",
"type": "object",
"properties": {
"hotwordRule": {
"$ref": "GooglePrivacyDlpV2HotwordRule",
"description": "Hotword-based detection rule."
},
"exclusionRule": {
"description": "Exclusion rule.",
"$ref": "GooglePrivacyDlpV2ExclusionRule"
}
},
"id": "GooglePrivacyDlpV2InspectionRule"
},
"GoogleProtobufEmpty": {
"description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
"type": "object",
"properties": {},
"id": "GoogleProtobufEmpty"
},
"GooglePrivacyDlpV2TimePartConfig": {
"description": "For use with `Date`, `Timestamp`, and `TimeOfDay`, extract or preserve a\nportion of the value.",
"type": "object",
"properties": {
"partToExtract": {
"enum": [
"TIME_PART_UNSPECIFIED",
"YEAR",
"MONTH",
"DAY_OF_MONTH",
"DAY_OF_WEEK",
"WEEK_OF_YEAR",
"HOUR_OF_DAY"
],
"type": "string",
"enumDescriptions": [
"",
"[0-9999]",
"[1-12]",
"[1-31]",
"[1-7]",
"[1-52]",
"[0-23]"
]
}
},
"id": "GooglePrivacyDlpV2TimePartConfig"
},
"GooglePrivacyDlpV2Proximity": {
"description": "Message for specifying a window around a finding to apply a detection\nrule.",
"type": "object",
"properties": {
"windowBefore": {
"description": "Number of characters before the finding to consider.",
"format": "int32",
"type": "integer"
},
"windowAfter": {
"description": "Number of characters after the finding to consider.",
"format": "int32",
"type": "integer"
}
},
"id": "GooglePrivacyDlpV2Proximity"
},
"GooglePrivacyDlpV2Condition": {
"id": "GooglePrivacyDlpV2Condition",
"description": "The field type of `value` and `field` do not need to match to be\nconsidered equal, but not all comparisons are possible.\n\nA `value` of type:\n\n- `string` can be compared against all other types\n- `boolean` can only be compared against other booleans\n- `integer` can be compared against doubles or a string if the string value\ncan be parsed as an integer.\n- `double` can be compared against integers or a string if the string can\nbe parsed as a double.\n- `Timestamp` can be compared against strings in RFC 3339 date string\nformat.\n- `TimeOfDay` can be compared against timestamps and strings in the format\nof 'HH:mm:ss'.\n\nIf we fail to compare do to type mismatch, a warning will be given and\nthe condition will evaluate to false.",
"type": "object",
"properties": {
"field": {
"$ref": "GooglePrivacyDlpV2FieldId",
"description": "Field within the record this condition is evaluated against. [required]"
},
"operator": {
"enum": [
"RELATIONAL_OPERATOR_UNSPECIFIED",
"EQUAL_TO",
"NOT_EQUAL_TO",
"GREATER_THAN",
"LESS_THAN",
"GREATER_THAN_OR_EQUALS",
"LESS_THAN_OR_EQUALS",
"EXISTS"
],
"description": "Operator used to compare the field or infoType to the value. [required]",
"type": "string",
"enumDescriptions": [
"",
"Equal.",
"Not equal to.",
"Greater than.",
"Less than.",
"Greater than or equals.",
"Less than or equals.",
"Exists"
]
},
"value": {
"$ref": "GooglePrivacyDlpV2Value",
"description": "Value to compare against. [Required, except for `EXISTS` tests.]"
}
}
},
"GooglePrivacyDlpV2LikelihoodAdjustment": {
"id": "GooglePrivacyDlpV2LikelihoodAdjustment",
"description": "Message for specifying an adjustment to the likelihood of a finding as\npart of a detection rule.",
"type": "object",
"properties": {
"relativeLikelihood": {
"description": "Increase or decrease the likelihood by the specified number of\nlevels. For example, if a finding would be `POSSIBLE` without the\ndetection rule and `relative_likelihood` is 1, then it is upgraded to\n`LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.\nLikelihood may never drop below `VERY_UNLIKELY` or exceed\n`VERY_LIKELY`, so applying an adjustment of 1 followed by an\nadjustment of -1 when base likelihood is `VERY_LIKELY` will result in\na final likelihood of `LIKELY`.",
"format": "int32",
"type": "integer"
},
"fixedLikelihood": {
"description": "Set the likelihood of a finding to a fixed value.",
"type": "string",
"enumDescriptions": [
"Default value; same as POSSIBLE.",
"Few matching elements.",
"",
"Some matching elements.",
"",
"Many matching elements."
],
"enum": [
"LIKELIHOOD_UNSPECIFIED",
"VERY_UNLIKELY",
"UNLIKELY",
"POSSIBLE",
"LIKELY",
"VERY_LIKELY"
]
}
}
},
"GooglePrivacyDlpV2Action": {
"id": "GooglePrivacyDlpV2Action",
"description": "A task to execute on the completion of a job.\nSee https://cloud.google.com/dlp/docs/concepts-actions to learn more.",
"type": "object",
"properties": {
"saveFindings": {
"$ref": "GooglePrivacyDlpV2SaveFindings",
"description": "Save resulting findings in a provided location."
},
"pubSub": {
"$ref": "GooglePrivacyDlpV2PublishToPubSub",
"description": "Publish a notification to a pubsub topic."
},
"publishSummaryToCscc": {
"description": "Publish summary to Cloud Security Command Center (Alpha).",
"$ref": "GooglePrivacyDlpV2PublishSummaryToCscc"
}
}
},
"GooglePrivacyDlpV2InspectionRuleSet": {
"description": "Rule set for modifying a set of infoTypes to alter behavior under certain\ncircumstances, depending on the specific details of the rules within the set.",
"type": "object",
"properties": {
"rules": {
"description": "Set of rules to be applied to infoTypes. The rules are applied in order.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InspectionRule"
}
},
"infoTypes": {
"description": "List of infoTypes this rule set is applied to.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InfoType"
}
}
},
"id": "GooglePrivacyDlpV2InspectionRuleSet"
},
"GooglePrivacyDlpV2InfoTypeTransformations": {
"id": "GooglePrivacyDlpV2InfoTypeTransformations",
"description": "A type of transformation that will scan unstructured text and\napply various `PrimitiveTransformation`s to each finding, where the\ntransformation is applied to only values that were identified as a specific\ninfo_type.",
"type": "object",
"properties": {
"transformations": {
"description": "Transformation for each infoType. Cannot specify more than one\nfor a given infoType. [required]",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InfoTypeTransformation"
}
}
}
},
"GooglePrivacyDlpV2RecordSuppression": {
"description": "Configuration to suppress records whose suppression conditions evaluate to\ntrue.",
"type": "object",
"properties": {
"condition": {
"description": "A condition that when it evaluates to true will result in the record being\nevaluated to be suppressed from the transformed content.",
"$ref": "GooglePrivacyDlpV2RecordCondition"
}
},
"id": "GooglePrivacyDlpV2RecordSuppression"
},
"GooglePrivacyDlpV2StoredInfoTypeConfig": {
"id": "GooglePrivacyDlpV2StoredInfoTypeConfig",
"description": "Configuration for a StoredInfoType.",
"type": "object",
"properties": {
"displayName": {
"type": "string",
"description": "Display name of the StoredInfoType (max 256 characters)."
},
"description": {
"description": "Description of the StoredInfoType (max 256 characters).",
"type": "string"
},
"largeCustomDictionary": {
"$ref": "GooglePrivacyDlpV2LargeCustomDictionaryConfig",
"description": "StoredInfoType where findings are defined by a dictionary of phrases."
}
}
},
"GooglePrivacyDlpV2FindingLimits": {
"properties": {
"maxFindingsPerItem": {
"description": "Max number of findings that will be returned for each item scanned.\nWhen set within `InspectDataSourceRequest`,\nthe maximum returned is 1000 regardless if this is set higher.\nWhen set within `InspectContentRequest`, this field is ignored.",
"format": "int32",
"type": "integer"
},
"maxFindingsPerRequest": {
"description": "Max number of findings that will be returned per request/job.\nWhen set within `InspectContentRequest`, the maximum returned is 1000\nregardless if this is set higher.",
"format": "int32",
"type": "integer"
},
"maxFindingsPerInfoType": {
"description": "Configuration of findings limit given for specified infoTypes.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2InfoTypeLimit"
}
}
},
"id": "GooglePrivacyDlpV2FindingLimits",
"type": "object"
},
"GoogleTypeTimeOfDay": {
"description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`.",
"type": "object",
"properties": {
"seconds": {
"description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may\nallow the value 60 if it allows leap-seconds.",
"format": "int32",
"type": "integer"
},
"minutes": {
"description": "Minutes of hour of day. Must be from 0 to 59.",
"format": "int32",
"type": "integer"
},
"hours": {
"description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time.",
"format": "int32",
"type": "integer"
},
"nanos": {
"description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.",
"format": "int32",
"type": "integer"
}
},
"id": "GoogleTypeTimeOfDay"
},
"GooglePrivacyDlpV2BigQueryOptions": {
"description": "Options defining BigQuery table and row identifiers.",
"type": "object",
"properties": {
"rowsLimitPercent": {
"description": "Max percentage of rows to scan. The rest are omitted. The number of rows\nscanned is rounded down. Must be between 0 and 100, inclusively. Both 0 and\n100 means no limit. Defaults to 0. Only one of rows_limit and\nrows_limit_percent can be specified. Cannot be used in conjunction with\nTimespanConfig.",
"format": "int32",
"type": "integer"
},
"identifyingFields": {
"description": "References to fields uniquely identifying rows within the table.\nNested fields in the format, like `person.birthdate.year`, are allowed.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2FieldId"
}
},
"tableReference": {
"description": "Complete BigQuery table reference.",
"$ref": "GooglePrivacyDlpV2BigQueryTable"
},
"sampleMethod": {
"enum": [
"SAMPLE_METHOD_UNSPECIFIED",
"TOP",
"RANDOM_START"
],
"type": "string",
"enumDescriptions": [
"",
"Scan from the top (default).",
"Randomly pick the row to start scanning. The scanned rows are contiguous."
]
},
"rowsLimit": {
"description": "Max number of rows to scan. If the table has more rows than this value, the\nrest of the rows are omitted. If not set, or if set to 0, all rows will be\nscanned. Only one of rows_limit and rows_limit_percent can be specified.\nCannot be used in conjunction with TimespanConfig.",
"format": "int64",
"type": "string"
}
},
"id": "GooglePrivacyDlpV2BigQueryOptions"
},
"GooglePrivacyDlpV2KAnonymityConfig": {
"description": "k-anonymity metric, used for analysis of reidentification risk.",
"type": "object",
"properties": {
"quasiIds": {
"description": "Set of fields to compute k-anonymity over. When multiple fields are\nspecified, they are considered a single composite key. Structs and\nrepeated data types are not supported; however, nested fields are\nsupported so long as they are not structs themselves or nested within\na repeated field.",
"type": "array",
"items": {
"$ref": "GooglePrivacyDlpV2FieldId"
}
},
"entityId": {
"$ref": "GooglePrivacyDlpV2EntityId",
"description": "Optional message indicating that multiple rows might be associated to a\nsingle individual. If the same entity_id is associated to multiple\nquasi-identifier tuples over distict rows, we consider the entire\ncollection of tuples as the composite quasi-identifier. This collection\nis a multiset: the order in which the different tuples appear in the\ndataset is ignored, but their frequency is taken into account.\n\nImportant note: a maximum of 1000 rows can be associated to a single\nentity ID. If more rows are associated with the same entity ID, some\nmight be ignored."
}
},
"id": "GooglePrivacyDlpV2KAnonymityConfig"
}
},
"protocol": "rest",
"icons": {
"x32": "http://www.google.com/images/icons/product/search-32.gif",
"x16": "http://www.google.com/images/icons/product/search-16.gif"
},
"canonicalName": "DLP",
"auth": {
"oauth2": {
"scopes": {
"https://www.googleapis.com/auth/cloud-platform": {
"description": "View and manage your data across Google Cloud Platform services"
}
}
}
},
"rootUrl": "https://dlp.googleapis.com/",
"ownerDomain": "google.com",
"name": "dlp",
"batchPath": "batch",
"fullyEncodeReservedExpansion": true,
"title": "Cloud Data Loss Prevention (DLP) API",
"ownerName": "Google",
"resources": {
"infoTypes": {
"methods": {
"list": {
"description": "Returns a list of the sensitive information types that the DLP API\nsupports. See https://cloud.google.com/dlp/docs/infotypes-reference to\nlearn more.",
"response": {
"$ref": "GooglePrivacyDlpV2ListInfoTypesResponse"
},
"parameterOrder": [],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"languageCode": {
"location": "query",
"description": "Optional BCP-47 language code for localized infoType friendly\nnames. If omitted, or if localized strings are not available,\nen-US strings will be returned.",
"type": "string"
},
"filter": {
"location": "query",
"description": "Optional filter to only return infoTypes supported by certain parts of the\nAPI. Defaults to supported_by=INSPECT.",
"type": "string"
}
},
"flatPath": "v2/infoTypes",
"path": "v2/infoTypes",
"id": "dlp.infoTypes.list"
}
}
},
"organizations": {
"resources": {
"deidentifyTemplates": {
"methods": {
"patch": {
"description": "Updates the DeidentifyTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates-deid to learn\nmore.",
"request": {
"$ref": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest"
},
"response": {
"$ref": "GooglePrivacyDlpV2DeidentifyTemplate"
},
"parameterOrder": [
"name"
],
"httpMethod": "PATCH",
"parameters": {
"name": {
"pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$",
"location": "path",
"description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.",
"required": true,
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}",
"path": "v2/{+name}",
"id": "dlp.organizations.deidentifyTemplates.patch"
},
"get": {
"description": "Gets a DeidentifyTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates-deid to learn\nmore.",
"response": {
"$ref": "GooglePrivacyDlpV2DeidentifyTemplate"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.",
"required": true,
"type": "string",
"pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$",
"location": "path"
}
},
"flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}",
"path": "v2/{+name}",
"id": "dlp.organizations.deidentifyTemplates.get"
},
"list": {
"httpMethod": "GET",
"parameterOrder": [
"parent"
],
"response": {
"$ref": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse"
},
"parameters": {
"pageToken": {
"description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.",
"type": "string",
"location": "query"
},
"orderBy": {
"description": "Optional comma separated list of fields to order by,\nfollowed by `asc` or `desc` postfix. This list is case-insensitive,\ndefault sorting order is ascending, redundant space characters are\ninsignificant.\n\nExample: `name asc,update_time, create_time desc`\n\nSupported fields are:\n\n- `create_time`: corresponds to time the template was created.\n- `update_time`: corresponds to time the template was last updated.\n- `name`: corresponds to template's name.\n- `display_name`: corresponds to template's display name.",
"type": "string",
"location": "query"
},
"pageSize": {
"type": "integer",
"location": "query",
"description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.",
"format": "int32"
},
"parent": {
"pattern": "^organizations/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates",
"id": "dlp.organizations.deidentifyTemplates.list",
"path": "v2/{+parent}/deidentifyTemplates",
"description": "Lists DeidentifyTemplates.\nSee https://cloud.google.com/dlp/docs/creating-templates-deid to learn\nmore."
},
"create": {
"id": "dlp.organizations.deidentifyTemplates.create",
"path": "v2/{+parent}/deidentifyTemplates",
"description": "Creates a DeidentifyTemplate for re-using frequently used configuration\nfor de-identifying content, images, and storage.\nSee https://cloud.google.com/dlp/docs/creating-templates-deid to learn\nmore.",
"request": {
"$ref": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest"
},
"httpMethod": "POST",
"parameterOrder": [
"parent"
],
"response": {
"$ref": "GooglePrivacyDlpV2DeidentifyTemplate"
},
"parameters": {
"parent": {
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string",
"pattern": "^organizations/[^/]+$"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates"
},
"delete": {
"description": "Deletes a DeidentifyTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates-deid to learn\nmore.",
"response": {
"$ref": "GoogleProtobufEmpty"
},
"parameterOrder": [
"name"
],
"httpMethod": "DELETE",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"pattern": "^organizations/[^/]+/deidentifyTemplates/[^/]+$",
"location": "path",
"description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.",
"required": true,
"type": "string"
}
},
"flatPath": "v2/organizations/{organizationsId}/deidentifyTemplates/{deidentifyTemplatesId}",
"path": "v2/{+name}",
"id": "dlp.organizations.deidentifyTemplates.delete"
}
}
},
"storedInfoTypes": {
"methods": {
"patch": {
"request": {
"$ref": "GooglePrivacyDlpV2UpdateStoredInfoTypeRequest"
},
"description": "Updates the stored infoType by creating a new version. The existing version\nwill continue to be used until the new version is ready.\nSee https://cloud.google.com/dlp/docs/creating-stored-infotypes to\nlearn more.",
"response": {
"$ref": "GooglePrivacyDlpV2StoredInfoType"
},
"parameterOrder": [
"name"
],
"httpMethod": "PATCH",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"description": "Resource name of organization and storedInfoType to be updated, for\nexample `organizations/433245324/storedInfoTypes/432452342` or\nprojects/project-id/storedInfoTypes/432452342.",
"required": true,
"type": "string",
"pattern": "^organizations/[^/]+/storedInfoTypes/[^/]+$",
"location": "path"
}
},
"flatPath": "v2/organizations/{organizationsId}/storedInfoTypes/{storedInfoTypesId}",
"path": "v2/{+name}",
"id": "dlp.organizations.storedInfoTypes.patch"
},
"get": {
"description": "Gets a stored infoType.\nSee https://cloud.google.com/dlp/docs/creating-stored-infotypes to\nlearn more.",
"httpMethod": "GET",
"response": {
"$ref": "GooglePrivacyDlpV2StoredInfoType"
},
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Resource name of the organization and storedInfoType to be read, for\nexample `organizations/433245324/storedInfoTypes/432452342` or\nprojects/project-id/storedInfoTypes/432452342.",
"required": true,
"type": "string",
"pattern": "^organizations/[^/]+/storedInfoTypes/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/organizations/{organizationsId}/storedInfoTypes/{storedInfoTypesId}",
"id": "dlp.organizations.storedInfoTypes.get",
"path": "v2/{+name}"
},
"list": {
"response": {
"$ref": "GooglePrivacyDlpV2ListStoredInfoTypesResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "GET",
"parameters": {
"parent": {
"pattern": "^organizations/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string"
},
"pageToken": {
"location": "query",
"description": "Optional page token to continue retrieval. Comes from previous call\nto `ListStoredInfoTypes`.",
"type": "string"
},
"orderBy": {
"location": "query",
"description": "Optional comma separated list of fields to order by,\nfollowed by `asc` or `desc` postfix. This list is case-insensitive,\ndefault sorting order is ascending, redundant space characters are\ninsignificant.\n\nExample: `name asc, display_name, create_time desc`\n\nSupported fields are:\n\n- `create_time`: corresponds to time the most recent version of the\nresource was created.\n- `state`: corresponds to the state of the resource.\n- `name`: corresponds to resource name.\n- `display_name`: corresponds to info type's display name.",
"type": "string"
},
"pageSize": {
"location": "query",
"description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.",
"format": "int32",
"type": "integer"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/organizations/{organizationsId}/storedInfoTypes",
"path": "v2/{+parent}/storedInfoTypes",
"id": "dlp.organizations.storedInfoTypes.list",
"description": "Lists stored infoTypes.\nSee https://cloud.google.com/dlp/docs/creating-stored-infotypes to\nlearn more."
},
"create": {
"request": {
"$ref": "GooglePrivacyDlpV2CreateStoredInfoTypeRequest"
},
"description": "Creates a pre-built stored infoType to be used for inspection.\nSee https://cloud.google.com/dlp/docs/creating-stored-infotypes to\nlearn more.",
"response": {
"$ref": "GooglePrivacyDlpV2StoredInfoType"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"parent": {
"pattern": "^organizations/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string"
}
},
"flatPath": "v2/organizations/{organizationsId}/storedInfoTypes",
"path": "v2/{+parent}/storedInfoTypes",
"id": "dlp.organizations.storedInfoTypes.create"
},
"delete": {
"response": {
"$ref": "GoogleProtobufEmpty"
},
"parameterOrder": [
"name"
],
"httpMethod": "DELETE",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"location": "path",
"description": "Resource name of the organization and storedInfoType to be deleted, for\nexample `organizations/433245324/storedInfoTypes/432452342` or\nprojects/project-id/storedInfoTypes/432452342.",
"required": true,
"type": "string",
"pattern": "^organizations/[^/]+/storedInfoTypes/[^/]+$"
}
},
"flatPath": "v2/organizations/{organizationsId}/storedInfoTypes/{storedInfoTypesId}",
"path": "v2/{+name}",
"id": "dlp.organizations.storedInfoTypes.delete",
"description": "Deletes a stored infoType.\nSee https://cloud.google.com/dlp/docs/creating-stored-infotypes to\nlearn more."
}
}
},
"inspectTemplates": {
"methods": {
"delete": {
"description": "Deletes an InspectTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates to learn more.",
"response": {
"$ref": "GoogleProtobufEmpty"
},
"parameterOrder": [
"name"
],
"httpMethod": "DELETE",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.",
"required": true,
"type": "string",
"pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$",
"location": "path"
}
},
"flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}",
"path": "v2/{+name}",
"id": "dlp.organizations.inspectTemplates.delete"
},
"patch": {
"id": "dlp.organizations.inspectTemplates.patch",
"path": "v2/{+name}",
"description": "Updates the InspectTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates to learn more.",
"request": {
"$ref": "GooglePrivacyDlpV2UpdateInspectTemplateRequest"
},
"httpMethod": "PATCH",
"parameterOrder": [
"name"
],
"response": {
"$ref": "GooglePrivacyDlpV2InspectTemplate"
},
"parameters": {
"name": {
"pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$",
"location": "path",
"description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.",
"required": true,
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}"
},
"get": {
"description": "Gets an InspectTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates to learn more.",
"response": {
"$ref": "GooglePrivacyDlpV2InspectTemplate"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"parameters": {
"name": {
"location": "path",
"description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.",
"required": true,
"type": "string",
"pattern": "^organizations/[^/]+/inspectTemplates/[^/]+$"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/organizations/{organizationsId}/inspectTemplates/{inspectTemplatesId}",
"path": "v2/{+name}",
"id": "dlp.organizations.inspectTemplates.get"
},
"list": {
"parameters": {
"pageToken": {
"location": "query",
"description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.",
"type": "string"
},
"orderBy": {
"type": "string",
"location": "query",
"description": "Optional comma separated list of fields to order by,\nfollowed by `asc` or `desc` postfix. This list is case-insensitive,\ndefault sorting order is ascending, redundant space characters are\ninsignificant.\n\nExample: `name asc,update_time, create_time desc`\n\nSupported fields are:\n\n- `create_time`: corresponds to time the template was created.\n- `update_time`: corresponds to time the template was last updated.\n- `name`: corresponds to template's name.\n- `display_name`: corresponds to template's display name."
},
"pageSize": {
"description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.",
"format": "int32",
"type": "integer",
"location": "query"
},
"parent": {
"pattern": "^organizations/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/organizations/{organizationsId}/inspectTemplates",
"id": "dlp.organizations.inspectTemplates.list",
"path": "v2/{+parent}/inspectTemplates",
"description": "Lists InspectTemplates.\nSee https://cloud.google.com/dlp/docs/creating-templates to learn more.",
"httpMethod": "GET",
"parameterOrder": [
"parent"
],
"response": {
"$ref": "GooglePrivacyDlpV2ListInspectTemplatesResponse"
}
},
"create": {
"flatPath": "v2/organizations/{organizationsId}/inspectTemplates",
"path": "v2/{+parent}/inspectTemplates",
"id": "dlp.organizations.inspectTemplates.create",
"request": {
"$ref": "GooglePrivacyDlpV2CreateInspectTemplateRequest"
},
"description": "Creates an InspectTemplate for re-using frequently used configuration\nfor inspecting content, images, and storage.\nSee https://cloud.google.com/dlp/docs/creating-templates to learn more.",
"response": {
"$ref": "GooglePrivacyDlpV2InspectTemplate"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"parent": {
"pattern": "^organizations/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string"
}
}
}
}
}
}
},
"projects": {
"resources": {
"deidentifyTemplates": {
"methods": {
"delete": {
"description": "Deletes a DeidentifyTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates-deid to learn\nmore.",
"httpMethod": "DELETE",
"response": {
"$ref": "GoogleProtobufEmpty"
},
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$",
"location": "path",
"description": "Resource name of the organization and deidentify template to be deleted,\nfor example `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342."
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}",
"id": "dlp.projects.deidentifyTemplates.delete",
"path": "v2/{+name}"
},
"patch": {
"response": {
"$ref": "GooglePrivacyDlpV2DeidentifyTemplate"
},
"parameterOrder": [
"name"
],
"httpMethod": "PATCH",
"parameters": {
"name": {
"description": "Resource name of organization and deidentify template to be updated, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}",
"path": "v2/{+name}",
"id": "dlp.projects.deidentifyTemplates.patch",
"description": "Updates the DeidentifyTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates-deid to learn\nmore.",
"request": {
"$ref": "GooglePrivacyDlpV2UpdateDeidentifyTemplateRequest"
}
},
"get": {
"response": {
"$ref": "GooglePrivacyDlpV2DeidentifyTemplate"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"description": "Resource name of the organization and deidentify template to be read, for\nexample `organizations/433245324/deidentifyTemplates/432452342` or\nprojects/project-id/deidentifyTemplates/432452342.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/deidentifyTemplates/[^/]+$",
"location": "path"
}
},
"flatPath": "v2/projects/{projectsId}/deidentifyTemplates/{deidentifyTemplatesId}",
"path": "v2/{+name}",
"id": "dlp.projects.deidentifyTemplates.get",
"description": "Gets a DeidentifyTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates-deid to learn\nmore."
},
"list": {
"description": "Lists DeidentifyTemplates.\nSee https://cloud.google.com/dlp/docs/creating-templates-deid to learn\nmore.",
"response": {
"$ref": "GooglePrivacyDlpV2ListDeidentifyTemplatesResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"parent": {
"pattern": "^projects/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string"
},
"pageToken": {
"location": "query",
"description": "Optional page token to continue retrieval. Comes from previous call\nto `ListDeidentifyTemplates`.",
"type": "string"
},
"orderBy": {
"description": "Optional comma separated list of fields to order by,\nfollowed by `asc` or `desc` postfix. This list is case-insensitive,\ndefault sorting order is ascending, redundant space characters are\ninsignificant.\n\nExample: `name asc,update_time, create_time desc`\n\nSupported fields are:\n\n- `create_time`: corresponds to time the template was created.\n- `update_time`: corresponds to time the template was last updated.\n- `name`: corresponds to template's name.\n- `display_name`: corresponds to template's display name.",
"type": "string",
"location": "query"
},
"pageSize": {
"description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.",
"format": "int32",
"type": "integer",
"location": "query"
}
},
"flatPath": "v2/projects/{projectsId}/deidentifyTemplates",
"path": "v2/{+parent}/deidentifyTemplates",
"id": "dlp.projects.deidentifyTemplates.list"
},
"create": {
"response": {
"$ref": "GooglePrivacyDlpV2DeidentifyTemplate"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"parameters": {
"parent": {
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/deidentifyTemplates",
"path": "v2/{+parent}/deidentifyTemplates",
"id": "dlp.projects.deidentifyTemplates.create",
"description": "Creates a DeidentifyTemplate for re-using frequently used configuration\nfor de-identifying content, images, and storage.\nSee https://cloud.google.com/dlp/docs/creating-templates-deid to learn\nmore.",
"request": {
"$ref": "GooglePrivacyDlpV2CreateDeidentifyTemplateRequest"
}
}
}
},
"image": {
"methods": {
"redact": {
"response": {
"$ref": "GooglePrivacyDlpV2RedactImageResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"parameters": {
"parent": {
"location": "path",
"description": "The parent resource name, for example projects/my-project-id.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+$"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/image:redact",
"path": "v2/{+parent}/image:redact",
"id": "dlp.projects.image.redact",
"description": "Redacts potentially sensitive info from an image.\nThis method has limits on input size, processing time, and output size.\nSee https://cloud.google.com/dlp/docs/redacting-sensitive-data-images to\nlearn more.\n\nWhen no InfoTypes or CustomInfoTypes are specified in this request, the\nsystem will automatically choose what detectors to run. By default this may\nbe all types, but may change over time as detectors are updated.",
"request": {
"$ref": "GooglePrivacyDlpV2RedactImageRequest"
}
}
}
},
"dlpJobs": {
"methods": {
"cancel": {
"description": "Starts asynchronous cancellation on a long-running DlpJob. The server\nmakes a best effort to cancel the DlpJob, but success is not\nguaranteed.\nSee https://cloud.google.com/dlp/docs/inspecting-storage and\nhttps://cloud.google.com/dlp/docs/compute-risk-analysis to learn more.",
"request": {
"$ref": "GooglePrivacyDlpV2CancelDlpJobRequest"
},
"response": {
"$ref": "GoogleProtobufEmpty"
},
"parameterOrder": [
"name"
],
"httpMethod": "POST",
"parameters": {
"name": {
"description": "The name of the DlpJob resource to be cancelled.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/dlpJobs/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}:cancel",
"path": "v2/{+name}:cancel",
"id": "dlp.projects.dlpJobs.cancel"
},
"delete": {
"id": "dlp.projects.dlpJobs.delete",
"path": "v2/{+name}",
"description": "Deletes a long-running DlpJob. This method indicates that the client is\nno longer interested in the DlpJob result. The job will be cancelled if\npossible.\nSee https://cloud.google.com/dlp/docs/inspecting-storage and\nhttps://cloud.google.com/dlp/docs/compute-risk-analysis to learn more.",
"httpMethod": "DELETE",
"response": {
"$ref": "GoogleProtobufEmpty"
},
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/dlpJobs/[^/]+$",
"location": "path",
"description": "The name of the DlpJob resource to be deleted."
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}"
},
"list": {
"response": {
"$ref": "GooglePrivacyDlpV2ListDlpJobsResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"orderBy": {
"type": "string",
"location": "query",
"description": "Optional comma separated list of fields to order by,\nfollowed by `asc` or `desc` postfix. This list is case-insensitive,\ndefault sorting order is ascending, redundant space characters are\ninsignificant.\n\nExample: `name asc, end_time asc, create_time desc`\n\nSupported fields are:\n\n- `create_time`: corresponds to time the job was created.\n- `end_time`: corresponds to time the job ended.\n- `name`: corresponds to job's name.\n- `state`: corresponds to `state`"
},
"type": {
"location": "query",
"enum": [
"DLP_JOB_TYPE_UNSPECIFIED",
"INSPECT_JOB",
"RISK_ANALYSIS_JOB"
],
"description": "The type of job. Defaults to `DlpJobType.INSPECT`",
"type": "string"
},
"filter": {
"type": "string",
"location": "query",
"description": "Optional. Allows filtering.\n\nSupported syntax:\n\n* Filter expressions are made up of one or more restrictions.\n* Restrictions can be combined by `AND` or `OR` logical operators. A\nsequence of restrictions implicitly uses `AND`.\n* A restriction has the form of `\u003cfield\u003e \u003coperator\u003e \u003cvalue\u003e`.\n* Supported fields/values for inspect jobs:\n - `state` - PENDING|RUNNING|CANCELED|FINISHED|FAILED\n - `inspected_storage` - DATASTORE|CLOUD_STORAGE|BIGQUERY\n - `trigger_name` - The resource name of the trigger that created job.\n* Supported fields for risk analysis jobs:\n - `state` - RUNNING|CANCELED|FINISHED|FAILED\n* The operator must be `=` or `!=`.\n\nExamples:\n\n* inspected_storage = cloud_storage AND state = done\n* inspected_storage = cloud_storage OR inspected_storage = bigquery\n* inspected_storage = cloud_storage AND (state = done OR state = canceled)\n\nThe length of this field should be no more than 500 characters."
},
"pageToken": {
"location": "query",
"description": "The standard list page token.",
"type": "string"
},
"pageSize": {
"location": "query",
"description": "The standard list page size.",
"format": "int32",
"type": "integer"
},
"parent": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id."
}
},
"flatPath": "v2/projects/{projectsId}/dlpJobs",
"path": "v2/{+parent}/dlpJobs",
"id": "dlp.projects.dlpJobs.list",
"description": "Lists DlpJobs that match the specified filter in the request.\nSee https://cloud.google.com/dlp/docs/inspecting-storage and\nhttps://cloud.google.com/dlp/docs/compute-risk-analysis to learn more."
},
"get": {
"httpMethod": "GET",
"parameterOrder": [
"name"
],
"response": {
"$ref": "GooglePrivacyDlpV2DlpJob"
},
"parameters": {
"name": {
"location": "path",
"description": "The name of the DlpJob resource.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/dlpJobs/[^/]+$"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/dlpJobs/{dlpJobsId}",
"id": "dlp.projects.dlpJobs.get",
"path": "v2/{+name}",
"description": "Gets the latest state of a long-running DlpJob.\nSee https://cloud.google.com/dlp/docs/inspecting-storage and\nhttps://cloud.google.com/dlp/docs/compute-risk-analysis to learn more."
},
"create": {
"flatPath": "v2/projects/{projectsId}/dlpJobs",
"path": "v2/{+parent}/dlpJobs",
"id": "dlp.projects.dlpJobs.create",
"request": {
"$ref": "GooglePrivacyDlpV2CreateDlpJobRequest"
},
"description": "Creates a new job to inspect storage or calculate risk metrics.\nSee https://cloud.google.com/dlp/docs/inspecting-storage and\nhttps://cloud.google.com/dlp/docs/compute-risk-analysis to learn more.\n\nWhen no InfoTypes or CustomInfoTypes are specified in inspect jobs, the\nsystem will automatically choose what detectors to run. By default this may\nbe all types, but may change over time as detectors are updated.",
"response": {
"$ref": "GooglePrivacyDlpV2DlpJob"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"parent": {
"description": "The parent resource name, for example projects/my-project-id.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+$",
"location": "path"
}
}
}
}
},
"inspectTemplates": {
"methods": {
"delete": {
"description": "Deletes an InspectTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates to learn more.",
"response": {
"$ref": "GoogleProtobufEmpty"
},
"parameterOrder": [
"name"
],
"httpMethod": "DELETE",
"parameters": {
"name": {
"pattern": "^projects/[^/]+/inspectTemplates/[^/]+$",
"location": "path",
"description": "Resource name of the organization and inspectTemplate to be deleted, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.",
"required": true,
"type": "string"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}",
"path": "v2/{+name}",
"id": "dlp.projects.inspectTemplates.delete"
},
"patch": {
"path": "v2/{+name}",
"id": "dlp.projects.inspectTemplates.patch",
"request": {
"$ref": "GooglePrivacyDlpV2UpdateInspectTemplateRequest"
},
"description": "Updates the InspectTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates to learn more.",
"response": {
"$ref": "GooglePrivacyDlpV2InspectTemplate"
},
"parameterOrder": [
"name"
],
"httpMethod": "PATCH",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/inspectTemplates/[^/]+$",
"location": "path",
"description": "Resource name of organization and inspectTemplate to be updated, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342."
}
},
"flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}"
},
"get": {
"response": {
"$ref": "GooglePrivacyDlpV2InspectTemplate"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"description": "Resource name of the organization and inspectTemplate to be read, for\nexample `organizations/433245324/inspectTemplates/432452342` or\nprojects/project-id/inspectTemplates/432452342.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/inspectTemplates/[^/]+$",
"location": "path"
}
},
"flatPath": "v2/projects/{projectsId}/inspectTemplates/{inspectTemplatesId}",
"path": "v2/{+name}",
"id": "dlp.projects.inspectTemplates.get",
"description": "Gets an InspectTemplate.\nSee https://cloud.google.com/dlp/docs/creating-templates to learn more."
},
"list": {
"id": "dlp.projects.inspectTemplates.list",
"path": "v2/{+parent}/inspectTemplates",
"description": "Lists InspectTemplates.\nSee https://cloud.google.com/dlp/docs/creating-templates to learn more.",
"httpMethod": "GET",
"parameterOrder": [
"parent"
],
"response": {
"$ref": "GooglePrivacyDlpV2ListInspectTemplatesResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"pageSize": {
"location": "query",
"description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.",
"format": "int32",
"type": "integer"
},
"parent": {
"pattern": "^projects/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string"
},
"pageToken": {
"location": "query",
"description": "Optional page token to continue retrieval. Comes from previous call\nto `ListInspectTemplates`.",
"type": "string"
},
"orderBy": {
"description": "Optional comma separated list of fields to order by,\nfollowed by `asc` or `desc` postfix. This list is case-insensitive,\ndefault sorting order is ascending, redundant space characters are\ninsignificant.\n\nExample: `name asc,update_time, create_time desc`\n\nSupported fields are:\n\n- `create_time`: corresponds to time the template was created.\n- `update_time`: corresponds to time the template was last updated.\n- `name`: corresponds to template's name.\n- `display_name`: corresponds to template's display name.",
"type": "string",
"location": "query"
}
},
"flatPath": "v2/projects/{projectsId}/inspectTemplates"
},
"create": {
"response": {
"$ref": "GooglePrivacyDlpV2InspectTemplate"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"parameters": {
"parent": {
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+$"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/inspectTemplates",
"path": "v2/{+parent}/inspectTemplates",
"id": "dlp.projects.inspectTemplates.create",
"description": "Creates an InspectTemplate for re-using frequently used configuration\nfor inspecting content, images, and storage.\nSee https://cloud.google.com/dlp/docs/creating-templates to learn more.",
"request": {
"$ref": "GooglePrivacyDlpV2CreateInspectTemplateRequest"
}
}
}
},
"content": {
"methods": {
"inspect": {
"flatPath": "v2/projects/{projectsId}/content:inspect",
"path": "v2/{+parent}/content:inspect",
"id": "dlp.projects.content.inspect",
"request": {
"$ref": "GooglePrivacyDlpV2InspectContentRequest"
},
"description": "Finds potentially sensitive info in content.\nThis method has limits on input size, processing time, and output size.\n\nWhen no InfoTypes or CustomInfoTypes are specified in this request, the\nsystem will automatically choose what detectors to run. By default this may\nbe all types, but may change over time as detectors are updated.\n\nFor how to guides, see https://cloud.google.com/dlp/docs/inspecting-images\nand https://cloud.google.com/dlp/docs/inspecting-text,",
"response": {
"$ref": "GooglePrivacyDlpV2InspectContentResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"parent": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id."
}
}
},
"reidentify": {
"description": "Re-identifies content that has been de-identified.\nSee\nhttps://cloud.google.com/dlp/docs/pseudonymization#re-identification_in_free_text_code_example\nto learn more.",
"request": {
"$ref": "GooglePrivacyDlpV2ReidentifyContentRequest"
},
"response": {
"$ref": "GooglePrivacyDlpV2ReidentifyContentResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"parameters": {
"parent": {
"description": "The parent resource name.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/content:reidentify",
"path": "v2/{+parent}/content:reidentify",
"id": "dlp.projects.content.reidentify"
},
"deidentify": {
"response": {
"$ref": "GooglePrivacyDlpV2DeidentifyContentResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"parent": {
"pattern": "^projects/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id.",
"required": true,
"type": "string"
}
},
"flatPath": "v2/projects/{projectsId}/content:deidentify",
"path": "v2/{+parent}/content:deidentify",
"id": "dlp.projects.content.deidentify",
"request": {
"$ref": "GooglePrivacyDlpV2DeidentifyContentRequest"
},
"description": "De-identifies potentially sensitive info from a ContentItem.\nThis method has limits on input size and output size.\nSee https://cloud.google.com/dlp/docs/deidentify-sensitive-data to\nlearn more.\n\nWhen no InfoTypes or CustomInfoTypes are specified in this request, the\nsystem will automatically choose what detectors to run. By default this may\nbe all types, but may change over time as detectors are updated."
}
}
},
"jobTriggers": {
"methods": {
"patch": {
"description": "Updates a job trigger.\nSee https://cloud.google.com/dlp/docs/creating-job-triggers to learn more.",
"request": {
"$ref": "GooglePrivacyDlpV2UpdateJobTriggerRequest"
},
"httpMethod": "PATCH",
"parameterOrder": [
"name"
],
"response": {
"$ref": "GooglePrivacyDlpV2JobTrigger"
},
"parameters": {
"name": {
"location": "path",
"description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/jobTriggers/[^/]+$"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}",
"id": "dlp.projects.jobTriggers.patch",
"path": "v2/{+name}"
},
"get": {
"parameters": {
"name": {
"description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/jobTriggers/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}",
"path": "v2/{+name}",
"id": "dlp.projects.jobTriggers.get",
"description": "Gets a job trigger.\nSee https://cloud.google.com/dlp/docs/creating-job-triggers to learn more.",
"response": {
"$ref": "GooglePrivacyDlpV2JobTrigger"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET"
},
"list": {
"response": {
"$ref": "GooglePrivacyDlpV2ListJobTriggersResponse"
},
"parameterOrder": [
"parent"
],
"httpMethod": "GET",
"parameters": {
"pageToken": {
"location": "query",
"description": "Optional page token to continue retrieval. Comes from previous call\nto ListJobTriggers. `order_by` field must not\nchange for subsequent calls.",
"type": "string"
},
"orderBy": {
"description": "Optional comma separated list of triggeredJob fields to order by,\nfollowed by `asc` or `desc` postfix. This list is case-insensitive,\ndefault sorting order is ascending, redundant space characters are\ninsignificant.\n\nExample: `name asc,update_time, create_time desc`\n\nSupported fields are:\n\n- `create_time`: corresponds to time the JobTrigger was created.\n- `update_time`: corresponds to time the JobTrigger was last updated.\n- `name`: corresponds to JobTrigger's name.\n- `display_name`: corresponds to JobTrigger's display name.\n- `status`: corresponds to JobTrigger's status.",
"type": "string",
"location": "query"
},
"pageSize": {
"description": "Optional size of the page, can be limited by a server.",
"format": "int32",
"type": "integer",
"location": "query"
},
"parent": {
"description": "The parent resource name, for example `projects/my-project-id`.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/jobTriggers",
"path": "v2/{+parent}/jobTriggers",
"id": "dlp.projects.jobTriggers.list",
"description": "Lists job triggers.\nSee https://cloud.google.com/dlp/docs/creating-job-triggers to learn more."
},
"create": {
"httpMethod": "POST",
"parameterOrder": [
"parent"
],
"response": {
"$ref": "GooglePrivacyDlpV2JobTrigger"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"parent": {
"location": "path",
"description": "The parent resource name, for example projects/my-project-id.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+$"
}
},
"flatPath": "v2/projects/{projectsId}/jobTriggers",
"id": "dlp.projects.jobTriggers.create",
"path": "v2/{+parent}/jobTriggers",
"request": {
"$ref": "GooglePrivacyDlpV2CreateJobTriggerRequest"
},
"description": "Creates a job trigger to run DLP actions such as scanning storage for\nsensitive information on a set schedule.\nSee https://cloud.google.com/dlp/docs/creating-job-triggers to learn more."
},
"delete": {
"description": "Deletes a job trigger.\nSee https://cloud.google.com/dlp/docs/creating-job-triggers to learn more.",
"response": {
"$ref": "GoogleProtobufEmpty"
},
"parameterOrder": [
"name"
],
"httpMethod": "DELETE",
"parameters": {
"name": {
"description": "Resource name of the project and the triggeredJob, for example\n`projects/dlp-test-project/jobTriggers/53234423`.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/jobTriggers/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/jobTriggers/{jobTriggersId}",
"path": "v2/{+name}",
"id": "dlp.projects.jobTriggers.delete"
}
}
},
"storedInfoTypes": {
"methods": {
"delete": {
"parameters": {
"name": {
"description": "Resource name of the organization and storedInfoType to be deleted, for\nexample `organizations/433245324/storedInfoTypes/432452342` or\nprojects/project-id/storedInfoTypes/432452342.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/storedInfoTypes/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/storedInfoTypes/{storedInfoTypesId}",
"path": "v2/{+name}",
"id": "dlp.projects.storedInfoTypes.delete",
"description": "Deletes a stored infoType.\nSee https://cloud.google.com/dlp/docs/creating-stored-infotypes to\nlearn more.",
"response": {
"$ref": "GoogleProtobufEmpty"
},
"parameterOrder": [
"name"
],
"httpMethod": "DELETE"
},
"patch": {
"description": "Updates the stored infoType by creating a new version. The existing version\nwill continue to be used until the new version is ready.\nSee https://cloud.google.com/dlp/docs/creating-stored-infotypes to\nlearn more.",
"request": {
"$ref": "GooglePrivacyDlpV2UpdateStoredInfoTypeRequest"
},
"response": {
"$ref": "GooglePrivacyDlpV2StoredInfoType"
},
"parameterOrder": [
"name"
],
"httpMethod": "PATCH",
"parameters": {
"name": {
"description": "Resource name of organization and storedInfoType to be updated, for\nexample `organizations/433245324/storedInfoTypes/432452342` or\nprojects/project-id/storedInfoTypes/432452342.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/storedInfoTypes/[^/]+$",
"location": "path"
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/storedInfoTypes/{storedInfoTypesId}",
"path": "v2/{+name}",
"id": "dlp.projects.storedInfoTypes.patch"
},
"get": {
"flatPath": "v2/projects/{projectsId}/storedInfoTypes/{storedInfoTypesId}",
"path": "v2/{+name}",
"id": "dlp.projects.storedInfoTypes.get",
"description": "Gets a stored infoType.\nSee https://cloud.google.com/dlp/docs/creating-stored-infotypes to\nlearn more.",
"response": {
"$ref": "GooglePrivacyDlpV2StoredInfoType"
},
"parameterOrder": [
"name"
],
"httpMethod": "GET",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"name": {
"location": "path",
"description": "Resource name of the organization and storedInfoType to be read, for\nexample `organizations/433245324/storedInfoTypes/432452342` or\nprojects/project-id/storedInfoTypes/432452342.",
"required": true,
"type": "string",
"pattern": "^projects/[^/]+/storedInfoTypes/[^/]+$"
}
}
},
"list": {
"id": "dlp.projects.storedInfoTypes.list",
"path": "v2/{+parent}/storedInfoTypes",
"description": "Lists stored infoTypes.\nSee https://cloud.google.com/dlp/docs/creating-stored-infotypes to\nlearn more.",
"httpMethod": "GET",
"parameterOrder": [
"parent"
],
"response": {
"$ref": "GooglePrivacyDlpV2ListStoredInfoTypesResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"parameters": {
"pageToken": {
"description": "Optional page token to continue retrieval. Comes from previous call\nto `ListStoredInfoTypes`.",
"type": "string",
"location": "query"
},
"orderBy": {
"location": "query",
"description": "Optional comma separated list of fields to order by,\nfollowed by `asc` or `desc` postfix. This list is case-insensitive,\ndefault sorting order is ascending, redundant space characters are\ninsignificant.\n\nExample: `name asc, display_name, create_time desc`\n\nSupported fields are:\n\n- `create_time`: corresponds to time the most recent version of the\nresource was created.\n- `state`: corresponds to the state of the resource.\n- `name`: corresponds to resource name.\n- `display_name`: corresponds to info type's display name.",
"type": "string"
},
"pageSize": {
"location": "query",
"description": "Optional size of the page, can be limited by server. If zero server returns\na page of max size 100.",
"format": "int32",
"type": "integer"
},
"parent": {
"pattern": "^projects/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id.",
"required": true,
"type": "string"
}
},
"flatPath": "v2/projects/{projectsId}/storedInfoTypes"
},
"create": {
"path": "v2/{+parent}/storedInfoTypes",
"id": "dlp.projects.storedInfoTypes.create",
"description": "Creates a pre-built stored infoType to be used for inspection.\nSee https://cloud.google.com/dlp/docs/creating-stored-infotypes to\nlearn more.",
"request": {
"$ref": "GooglePrivacyDlpV2CreateStoredInfoTypeRequest"
},
"response": {
"$ref": "GooglePrivacyDlpV2StoredInfoType"
},
"parameterOrder": [
"parent"
],
"httpMethod": "POST",
"parameters": {
"parent": {
"required": true,
"type": "string",
"pattern": "^projects/[^/]+$",
"location": "path",
"description": "The parent resource name, for example projects/my-project-id or\norganizations/my-org-id."
}
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
],
"flatPath": "v2/projects/{projectsId}/storedInfoTypes"
}
}
}
}
}
},
"parameters": {
"uploadType": {
"location": "query",
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"type": "string"
},
"fields": {
"description": "Selector specifying which fields to include in a partial response.",
"type": "string",
"location": "query"
},
"$.xgafv": {
"location": "query",
"enum": [
"1",
"2"
],
"description": "V1 error format.",
"type": "string",
"enumDescriptions": [
"v1 error format",
"v2 error format"
]
},
"oauth_token": {
"description": "OAuth 2.0 token for the current user.",
"type": "string",
"location": "query"
},
"callback": {
"description": "JSONP",
"type": "string",
"location": "query"
},
"alt": {
"description": "Data format for response.",
"default": "json",
"enum": [
"json",
"media",
"proto"
],
"type": "string",
"enumDescriptions": [
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
"location": "query"
},
"key": {
"description": "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.",
"type": "string",
"location": "query"
},
"access_token": {
"description": "OAuth access token.",
"type": "string",
"location": "query"
},
"upload_protocol": {
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"type": "string",
"location": "query"
},
"prettyPrint": {
"location": "query",
"description": "Returns response with indentations and line breaks.",
"type": "boolean",
"default": "true"
},
"quotaUser": {
"description": "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.",
"type": "string",
"location": "query"
}
}
}