docs: docs update (#911)

Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:
- [ ] Make sure to open an issue as a [bug/issue](https://github.com/googleapis/google-api-python-client/issues/new/choose) before writing your code!  That way we can discuss the change, evaluate designs, and agree on the general idea
- [ ] Ensure the tests and linter pass
- [ ] Code coverage does not decrease (if any source code was changed)
- [ ] Appropriate docs were updated (if necessary)

Fixes #<issue_number_goes_here> 🦕
diff --git a/docs/dyn/dlp_v2.projects.inspectTemplates.html b/docs/dyn/dlp_v2.projects.inspectTemplates.html
index e47f2f0..aeb3ffc 100644
--- a/docs/dyn/dlp_v2.projects.inspectTemplates.html
+++ b/docs/dyn/dlp_v2.projects.inspectTemplates.html
@@ -84,7 +84,7 @@
   <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
 <p class="firstline">Gets an InspectTemplate.</p>
 <p class="toc_element">
-  <code><a href="#list">list(parent, orderBy=None, pageSize=None, locationId=None, pageToken=None, x__xgafv=None)</a></code></p>
+  <code><a href="#list">list(parent, pageToken=None, locationId=None, pageSize=None, orderBy=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Lists InspectTemplates.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
@@ -106,214 +106,38 @@
     The object takes the form of:
 
 { # Request message for CreateInspectTemplate.
-    "locationId": "A String", # The geographic location to store the inspection template. Reserved for
-        # future extensions.
-    "inspectTemplate": { # The inspectTemplate contains a configuration (set of types of sensitive data # Required. The InspectTemplate to create.
+    &quot;inspectTemplate&quot;: { # The inspectTemplate contains a configuration (set of types of sensitive data # Required. The InspectTemplate to create.
         # to be detected) to be used anywhere you otherwise would normally specify
         # InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
         # to learn more.
-      "updateTime": "A String", # Output only. The last update timestamp of an inspectTemplate.
-      "displayName": "A String", # Display name (max 256 chars).
-      "description": "A String", # Short description (max 256 chars).
-      "inspectConfig": { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
+      &quot;displayName&quot;: &quot;A String&quot;, # Display name (max 256 chars).
+      &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
           # When used with redactContent only info_types and min_likelihood are currently
           # used.
-        "excludeInfoTypes": True or False, # When true, excludes type information of the findings.
-        "limits": { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
-          "maxFindingsPerRequest": 42, # Max number of findings that will be returned per request/job.
-              # When set within `InspectContentRequest`, the maximum returned is 2000
-              # regardless if this is set higher.
-          "maxFindingsPerInfoType": [ # Configuration of findings limit given for specified infoTypes.
-            { # Max findings configuration per infoType, per content item or long
-                # running DlpJob.
-              "infoType": { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
-                  # info_type should be provided. If InfoTypeLimit does not have an
-                  # info_type, the DLP API applies the limit against all info_types that
-                  # are found but not specified in another InfoTypeLimit.
-                "name": "A String", # Name of the information type. Either a name of your choosing when
+        &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
+            # included in the response; see Finding.quote.
+        &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
+            # Exclusion rules, contained in the set are executed in the end, other
+            # rules are executed in the order they are specified for each info type.
+          { # Rule set for modifying a set of infoTypes to alter behavior under certain
+              # circumstances, depending on the specific details of the rules within the set.
+            &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
+              { # Type of information detected by the API.
+                &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                     # creating a CustomInfoType, or one of the names listed
                     # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                     # a built-in type. InfoType names should conform to the pattern
                     # `[a-zA-Z0-9_]{1,64}`.
               },
-              "maxFindings": 42, # Max findings limit for the given infoType.
-            },
-          ],
-          "maxFindingsPerItem": 42, # Max number of findings that will be returned for each item scanned.
-              # When set within `InspectJobConfig`,
-              # the maximum returned is 2000 regardless if this is set higher.
-              # When set within `InspectContentRequest`, this field is ignored.
-        },
-        "minLikelihood": "A String", # Only returns findings equal or above this threshold. The default is
-            # POSSIBLE.
-            # See https://cloud.google.com/dlp/docs/likelihood to learn more.
-        "customInfoTypes": [ # CustomInfoTypes provided by the user. See
-            # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
-          { # Custom information type provided by the user. Used to find domain-specific
-              # sensitive information configurable to the data in question.
-            "regex": { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
-              "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                  # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                  # google/re2 repository on GitHub.
-              "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                  # specified, the entire match is returned. No more than 3 may be included.
-                42,
-              ],
-            },
-            "surrogateType": { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
-                # support reversing.
-                # such as
-                # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
-                # These types of transformations are
-                # those that perform pseudonymization, thereby producing a "surrogate" as
-                # output. This should be used in conjunction with a field on the
-                # transformation such as `surrogate_info_type`. This CustomInfoType does
-                # not support the use of `detection_rules`.
-            },
-            "infoType": { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
-                # infoType, when the name matches one of existing infoTypes and that infoType
-                # is specified in `InspectContent.info_types` field. Specifying the latter
-                # adds findings to the one detected by the system. If built-in info type is
-                # not specified in `InspectContent.info_types` list then the name is treated
-                # as a custom info type.
-              "name": "A String", # Name of the information type. Either a name of your choosing when
-                  # creating a CustomInfoType, or one of the names listed
-                  # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                  # a built-in type. InfoType names should conform to the pattern
-                  # `[a-zA-Z0-9_]{1,64}`.
-            },
-            "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
-                # be used to match sensitive information specific to the data, such as a list
-                # of employee IDs or job titles.
-                #
-                # Dictionary words are case-insensitive and all characters other than letters
-                # and digits in the unicode [Basic Multilingual
-                # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
-                # will be replaced with whitespace when scanning for matches, so the
-                # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-                # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
-                # surrounding any match must be of a different type than the adjacent
-                # characters within the word, so letters must be next to non-letters and
-                # digits next to non-digits. For example, the dictionary word "jen" will
-                # match the first three letters of the text "jen123" but will return no
-                # matches for "jennifer".
-                #
-                # Dictionary words containing a large number of characters that are not
-                # letters or digits may result in unexpected findings because such characters
-                # are treated as whitespace. The
-                # [limits](https://cloud.google.com/dlp/limits) page contains details about
-                # the size limits of dictionaries. For dictionaries that do not fit within
-                # these constraints, consider using `LargeCustomDictionaryConfig` in the
-                # `StoredInfoType` API.
-              "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-                "words": [ # Words or phrases defining the dictionary. The dictionary must contain
-                    # at least one phrase and every phrase must contain at least 2 characters
-                    # that are letters or digits. [required]
-                  "A String",
-                ],
-              },
-              "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
-                  # is accepted.
-                "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
-                    # Example: gs://[BUCKET_NAME]/dictionary.txt
-              },
-            },
-            "storedType": { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
-                # `InspectDataSource`. Not currently supported in `InspectContent`.
-              "name": "A String", # Resource name of the requested `StoredInfoType`, for example
-                  # `organizations/433245324/storedInfoTypes/432452342` or
-                  # `projects/project-id/storedInfoTypes/432452342`.
-              "createTime": "A String", # Timestamp indicating when the version of the `StoredInfoType` used for
-                  # inspection was created. Output-only field, populated by the system.
-            },
-            "detectionRules": [ # Set of detection rules to apply to all findings of this CustomInfoType.
-                # Rules are applied in order that they are specified. Not supported for the
-                # `surrogate_type` CustomInfoType.
-              { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
-                  # `CustomInfoType` to alter behavior under certain circumstances, depending
-                  # on the specific details of the rule. Not supported for the `surrogate_type`
-                  # custom infoType.
-                "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
-                    # proximity of hotwords.
-                  "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                      # The total length of the window cannot exceed 1000 characters. Note that
-                      # the finding itself will be included in the window, so that hotwords may
-                      # be used to match substrings of the finding itself. For example, the
-                      # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                      # adjusted upwards if the area code is known to be the local area code of
-                      # a company office using the hotword regex "\(xxx\)", where "xxx"
-                      # is the area code in question.
-                      # rule.
-                    "windowBefore": 42, # Number of characters before the finding to consider.
-                    "windowAfter": 42, # Number of characters after the finding to consider.
-                  },
-                  "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                    "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                        # google/re2 repository on GitHub.
-                    "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                        # specified, the entire match is returned. No more than 3 may be included.
-                      42,
-                    ],
-                  },
-                  "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
-                      # part of a detection rule.
-                    "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
-                        # levels. For example, if a finding would be `POSSIBLE` without the
-                        # detection rule and `relative_likelihood` is 1, then it is upgraded to
-                        # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
-                        # Likelihood may never drop below `VERY_UNLIKELY` or exceed
-                        # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
-                        # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
-                        # a final likelihood of `LIKELY`.
-                    "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
-                  },
-                },
-              },
             ],
-            "exclusionType": "A String", # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
-                # to be returned. It still can be used for rules matching.
-            "likelihood": "A String", # Likelihood to return for this CustomInfoType. This base value can be
-                # altered by a detection rule if the finding meets the criteria specified by
-                # the rule. Defaults to `VERY_LIKELY` if not specified.
-          },
-        ],
-        "includeQuote": True or False, # When true, a contextual quote from the data that triggered a finding is
-            # included in the response; see Finding.quote.
-        "ruleSet": [ # Set of rules to apply to the findings for this InspectConfig.
-            # Exclusion rules, contained in the set are executed in the end, other
-            # rules are executed in the order they are specified for each info type.
-          { # Rule set for modifying a set of infoTypes to alter behavior under certain
-              # circumstances, depending on the specific details of the rules within the set.
-            "rules": [ # Set of rules to be applied to infoTypes. The rules are applied in order.
+            &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
               { # A single inspection rule to be applied to infoTypes, specified in
                   # `InspectionRuleSet`.
-                "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+                &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
                     # proximity of hotwords.
-                  "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                      # The total length of the window cannot exceed 1000 characters. Note that
-                      # the finding itself will be included in the window, so that hotwords may
-                      # be used to match substrings of the finding itself. For example, the
-                      # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                      # adjusted upwards if the area code is known to be the local area code of
-                      # a company office using the hotword regex "\(xxx\)", where "xxx"
-                      # is the area code in question.
-                      # rule.
-                    "windowBefore": 42, # Number of characters before the finding to consider.
-                    "windowAfter": 42, # Number of characters after the finding to consider.
-                  },
-                  "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                    "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                        # google/re2 repository on GitHub.
-                    "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                        # specified, the entire match is returned. No more than 3 may be included.
-                      42,
-                    ],
-                  },
-                  "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                  &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
                       # part of a detection rule.
-                    "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
+                    &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
                         # levels. For example, if a finding would be `POSSIBLE` without the
                         # detection rule and `relative_likelihood` is 1, then it is upgraded to
                         # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
@@ -321,39 +145,33 @@
                         # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
                         # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
                         # a final likelihood of `LIKELY`.
-                    "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
+                    &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
                   },
-                },
-                "exclusionRule": { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
-                    # `InspectionRuleSet` are removed from results.
-                  "regex": { # Message defining a custom regular expression. # Regular expression which defines the rule.
-                    "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                        # google/re2 repository on GitHub.
-                    "groupIndexes": [ # The index of the submatch to extract as findings. When not
+                  &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                    &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
                         # specified, the entire match is returned. No more than 3 may be included.
                       42,
                     ],
+                    &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                        # google/re2 repository on GitHub.
                   },
-                  "excludeInfoTypes": { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
-                    "infoTypes": [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
-                        # contained within with a finding of an infoType from this list. For
-                        # example, for `InspectionRuleSet.info_types` containing "PHONE_NUMBER"` and
-                        # `exclusion_rule` containing `exclude_info_types.info_types` with
-                        # "EMAIL_ADDRESS" the phone number findings are dropped if they overlap
-                        # with EMAIL_ADDRESS finding.
-                        # That leads to "555-222-2222@example.org" to generate only a single
-                        # finding, namely email address.
-                      { # Type of information detected by the API.
-                        "name": "A String", # Name of the information type. Either a name of your choosing when
-                            # creating a CustomInfoType, or one of the names listed
-                            # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                            # a built-in type. InfoType names should conform to the pattern
-                            # `[a-zA-Z0-9_]{1,64}`.
-                      },
-                    ],
+                  &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                      # The total length of the window cannot exceed 1000 characters. Note that
+                      # the finding itself will be included in the window, so that hotwords may
+                      # be used to match substrings of the finding itself. For example, the
+                      # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                      # adjusted upwards if the area code is known to be the local area code of
+                      # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                      # is the area code in question.
+                      # rule.
+                    &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                    &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
                   },
-                  "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
+                },
+                &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
+                    # `InspectionRuleSet` are removed from results.
+                  &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
                       # be used to match sensitive information specific to the data, such as a list
                       # of employee IDs or job titles.
                       #
@@ -361,13 +179,13 @@
                       # and digits in the unicode [Basic Multilingual
                       # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
                       # will be replaced with whitespace when scanning for matches, so the
-                      # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-                      # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
+                      # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+                      # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
                       # surrounding any match must be of a different type than the adjacent
                       # characters within the word, so letters must be next to non-letters and
-                      # digits next to non-digits. For example, the dictionary word "jen" will
-                      # match the first three letters of the text "jen123" but will return no
-                      # matches for "jennifer".
+                      # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+                      # match the first three letters of the text &quot;jen123&quot; but will return no
+                      # matches for &quot;jennifer&quot;.
                       #
                       # Dictionary words containing a large number of characters that are not
                       # letters or digits may result in unexpected findings because such characters
@@ -376,39 +194,82 @@
                       # the size limits of dictionaries. For dictionaries that do not fit within
                       # these constraints, consider using `LargeCustomDictionaryConfig` in the
                       # `StoredInfoType` API.
-                    "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-                      "words": [ # Words or phrases defining the dictionary. The dictionary must contain
+                    &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+                      &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
                           # at least one phrase and every phrase must contain at least 2 characters
                           # that are letters or digits. [required]
-                        "A String",
+                        &quot;A String&quot;,
                       ],
                     },
-                    "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                    &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
                         # is accepted.
-                      "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
+                      &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
                           # Example: gs://[BUCKET_NAME]/dictionary.txt
                     },
                   },
-                  "matchingType": "A String", # How the rule is applied, see MatchingType documentation for details.
+                  &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
+                    &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                        # specified, the entire match is returned. No more than 3 may be included.
+                      42,
+                    ],
+                    &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                        # google/re2 repository on GitHub.
+                  },
+                  &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
+                    &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
+                        # contained within with a finding of an infoType from this list. For
+                        # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
+                        # `exclusion_rule` containing `exclude_info_types.info_types` with
+                        # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
+                        # with EMAIL_ADDRESS finding.
+                        # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
+                        # finding, namely email address.
+                      { # Type of information detected by the API.
+                        &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                            # creating a CustomInfoType, or one of the names listed
+                            # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                            # a built-in type. InfoType names should conform to the pattern
+                            # `[a-zA-Z0-9_]{1,64}`.
+                      },
+                    ],
+                  },
+                  &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
                 },
               },
             ],
-            "infoTypes": [ # List of infoTypes this rule set is applied to.
-              { # Type of information detected by the API.
-                "name": "A String", # Name of the information type. Either a name of your choosing when
+          },
+        ],
+        &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
+          &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
+              # When set within `InspectJobConfig`,
+              # the maximum returned is 2000 regardless if this is set higher.
+              # When set within `InspectContentRequest`, this field is ignored.
+          &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
+            { # Max findings configuration per infoType, per content item or long
+                # running DlpJob.
+              &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
+              &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
+                  # info_type should be provided. If InfoTypeLimit does not have an
+                  # info_type, the DLP API applies the limit against all info_types that
+                  # are found but not specified in another InfoTypeLimit.
+                &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                     # creating a CustomInfoType, or one of the names listed
                     # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                     # a built-in type. InfoType names should conform to the pattern
                     # `[a-zA-Z0-9_]{1,64}`.
               },
-            ],
-          },
-        ],
-        "contentOptions": [ # List of options defining data content to scan.
+            },
+          ],
+          &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
+              # When set within `InspectContentRequest`, the maximum returned is 2000
+              # regardless if this is set higher.
+        },
+        &quot;contentOptions&quot;: [ # List of options defining data content to scan.
             # If empty, text, images, and other content will be included.
-          "A String",
+          &quot;A String&quot;,
         ],
-        "infoTypes": [ # Restricts what info_types to look for. The values must correspond to
+        &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
             # InfoType values returned by ListInfoTypes or listed at
             # https://cloud.google.com/dlp/docs/infotypes-reference.
             #
@@ -420,22 +281,161 @@
             # run you should specify specific InfoTypes listed in the reference,
             # otherwise a default list will be used, which may change over time.
           { # Type of information detected by the API.
-            "name": "A String", # Name of the information type. Either a name of your choosing when
+            &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                 # creating a CustomInfoType, or one of the names listed
                 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                 # a built-in type. InfoType names should conform to the pattern
                 # `[a-zA-Z0-9_]{1,64}`.
           },
         ],
+        &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
+            # POSSIBLE.
+            # See https://cloud.google.com/dlp/docs/likelihood to learn more.
+        &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
+        &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
+            # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
+          { # Custom information type provided by the user. Used to find domain-specific
+              # sensitive information configurable to the data in question.
+            &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
+                # altered by a detection rule if the finding meets the criteria specified by
+                # the rule. Defaults to `VERY_LIKELY` if not specified.
+            &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
+                # infoType, when the name matches one of existing infoTypes and that infoType
+                # is specified in `InspectContent.info_types` field. Specifying the latter
+                # adds findings to the one detected by the system. If built-in info type is
+                # not specified in `InspectContent.info_types` list then the name is treated
+                # as a custom info type.
+              &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                  # creating a CustomInfoType, or one of the names listed
+                  # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                  # a built-in type. InfoType names should conform to the pattern
+                  # `[a-zA-Z0-9_]{1,64}`.
+            },
+            &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
+              &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                  # specified, the entire match is returned. No more than 3 may be included.
+                42,
+              ],
+              &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                  # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                  # google/re2 repository on GitHub.
+            },
+            &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
+                # Rules are applied in order that they are specified. Not supported for the
+                # `surrogate_type` CustomInfoType.
+              { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
+                  # `CustomInfoType` to alter behavior under certain circumstances, depending
+                  # on the specific details of the rule. Not supported for the `surrogate_type`
+                  # custom infoType.
+                &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+                    # proximity of hotwords.
+                  &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                      # part of a detection rule.
+                    &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
+                        # levels. For example, if a finding would be `POSSIBLE` without the
+                        # detection rule and `relative_likelihood` is 1, then it is upgraded to
+                        # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
+                        # Likelihood may never drop below `VERY_UNLIKELY` or exceed
+                        # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
+                        # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
+                        # a final likelihood of `LIKELY`.
+                    &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
+                  },
+                  &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                    &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                        # specified, the entire match is returned. No more than 3 may be included.
+                      42,
+                    ],
+                    &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                        # google/re2 repository on GitHub.
+                  },
+                  &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                      # The total length of the window cannot exceed 1000 characters. Note that
+                      # the finding itself will be included in the window, so that hotwords may
+                      # be used to match substrings of the finding itself. For example, the
+                      # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                      # adjusted upwards if the area code is known to be the local area code of
+                      # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                      # is the area code in question.
+                      # rule.
+                    &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                    &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
+                  },
+                },
+              },
+            ],
+            &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
+                # to be returned. It still can be used for rules matching.
+            &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
+                # be used to match sensitive information specific to the data, such as a list
+                # of employee IDs or job titles.
+                #
+                # Dictionary words are case-insensitive and all characters other than letters
+                # and digits in the unicode [Basic Multilingual
+                # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
+                # will be replaced with whitespace when scanning for matches, so the
+                # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+                # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
+                # surrounding any match must be of a different type than the adjacent
+                # characters within the word, so letters must be next to non-letters and
+                # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+                # match the first three letters of the text &quot;jen123&quot; but will return no
+                # matches for &quot;jennifer&quot;.
+                #
+                # Dictionary words containing a large number of characters that are not
+                # letters or digits may result in unexpected findings because such characters
+                # are treated as whitespace. The
+                # [limits](https://cloud.google.com/dlp/limits) page contains details about
+                # the size limits of dictionaries. For dictionaries that do not fit within
+                # these constraints, consider using `LargeCustomDictionaryConfig` in the
+                # `StoredInfoType` API.
+              &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+                &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
+                    # at least one phrase and every phrase must contain at least 2 characters
+                    # that are letters or digits. [required]
+                  &quot;A String&quot;,
+                ],
+              },
+              &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                  # is accepted.
+                &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
+                    # Example: gs://[BUCKET_NAME]/dictionary.txt
+              },
+            },
+            &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
+                # `InspectDataSource`. Not currently supported in `InspectContent`.
+              &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
+                  # `organizations/433245324/storedInfoTypes/432452342` or
+                  # `projects/project-id/storedInfoTypes/432452342`.
+              &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
+                  # inspection was created. Output-only field, populated by the system.
+            },
+            &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
+                # support reversing.
+                # such as
+                # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
+                # These types of transformations are
+                # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
+                # output. This should be used in conjunction with a field on the
+                # transformation such as `surrogate_info_type`. This CustomInfoType does
+                # not support the use of `detection_rules`.
+            },
+          },
+        ],
       },
-      "createTime": "A String", # Output only. The creation timestamp of an inspectTemplate.
-      "name": "A String", # Output only. The template name.
+      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of an inspectTemplate.
+      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of an inspectTemplate.
+      &quot;name&quot;: &quot;A String&quot;, # Output only. The template name.
           #
           # The template will have one of the following formats:
           # `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR
           # `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`;
+      &quot;description&quot;: &quot;A String&quot;, # Short description (max 256 chars).
     },
-    "templateId": "A String", # The template id can contain uppercase and lowercase letters,
+    &quot;locationId&quot;: &quot;A String&quot;, # The geographic location to store the inspection template. Reserved for
+        # future extensions.
+    &quot;templateId&quot;: &quot;A String&quot;, # The template id can contain uppercase and lowercase letters,
         # numbers, and hyphens; that is, it must match the regular
         # expression: `[a-zA-Z\\d-_]+`. The maximum length is 100
         # characters. Can be empty to allow the system to generate one.
@@ -453,208 +453,34 @@
       # to be detected) to be used anywhere you otherwise would normally specify
       # InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
       # to learn more.
-    "updateTime": "A String", # Output only. The last update timestamp of an inspectTemplate.
-    "displayName": "A String", # Display name (max 256 chars).
-    "description": "A String", # Short description (max 256 chars).
-    "inspectConfig": { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
+    &quot;displayName&quot;: &quot;A String&quot;, # Display name (max 256 chars).
+    &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
         # When used with redactContent only info_types and min_likelihood are currently
         # used.
-      "excludeInfoTypes": True or False, # When true, excludes type information of the findings.
-      "limits": { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
-        "maxFindingsPerRequest": 42, # Max number of findings that will be returned per request/job.
-            # When set within `InspectContentRequest`, the maximum returned is 2000
-            # regardless if this is set higher.
-        "maxFindingsPerInfoType": [ # Configuration of findings limit given for specified infoTypes.
-          { # Max findings configuration per infoType, per content item or long
-              # running DlpJob.
-            "infoType": { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
-                # info_type should be provided. If InfoTypeLimit does not have an
-                # info_type, the DLP API applies the limit against all info_types that
-                # are found but not specified in another InfoTypeLimit.
-              "name": "A String", # Name of the information type. Either a name of your choosing when
+      &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
+          # included in the response; see Finding.quote.
+      &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
+          # Exclusion rules, contained in the set are executed in the end, other
+          # rules are executed in the order they are specified for each info type.
+        { # Rule set for modifying a set of infoTypes to alter behavior under certain
+            # circumstances, depending on the specific details of the rules within the set.
+          &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
+            { # Type of information detected by the API.
+              &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                   # creating a CustomInfoType, or one of the names listed
                   # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                   # a built-in type. InfoType names should conform to the pattern
                   # `[a-zA-Z0-9_]{1,64}`.
             },
-            "maxFindings": 42, # Max findings limit for the given infoType.
-          },
-        ],
-        "maxFindingsPerItem": 42, # Max number of findings that will be returned for each item scanned.
-            # When set within `InspectJobConfig`,
-            # the maximum returned is 2000 regardless if this is set higher.
-            # When set within `InspectContentRequest`, this field is ignored.
-      },
-      "minLikelihood": "A String", # Only returns findings equal or above this threshold. The default is
-          # POSSIBLE.
-          # See https://cloud.google.com/dlp/docs/likelihood to learn more.
-      "customInfoTypes": [ # CustomInfoTypes provided by the user. See
-          # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
-        { # Custom information type provided by the user. Used to find domain-specific
-            # sensitive information configurable to the data in question.
-          "regex": { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
-            "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                # google/re2 repository on GitHub.
-            "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                # specified, the entire match is returned. No more than 3 may be included.
-              42,
-            ],
-          },
-          "surrogateType": { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
-              # support reversing.
-              # such as
-              # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
-              # These types of transformations are
-              # those that perform pseudonymization, thereby producing a "surrogate" as
-              # output. This should be used in conjunction with a field on the
-              # transformation such as `surrogate_info_type`. This CustomInfoType does
-              # not support the use of `detection_rules`.
-          },
-          "infoType": { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
-              # infoType, when the name matches one of existing infoTypes and that infoType
-              # is specified in `InspectContent.info_types` field. Specifying the latter
-              # adds findings to the one detected by the system. If built-in info type is
-              # not specified in `InspectContent.info_types` list then the name is treated
-              # as a custom info type.
-            "name": "A String", # Name of the information type. Either a name of your choosing when
-                # creating a CustomInfoType, or one of the names listed
-                # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                # a built-in type. InfoType names should conform to the pattern
-                # `[a-zA-Z0-9_]{1,64}`.
-          },
-          "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
-              # be used to match sensitive information specific to the data, such as a list
-              # of employee IDs or job titles.
-              #
-              # Dictionary words are case-insensitive and all characters other than letters
-              # and digits in the unicode [Basic Multilingual
-              # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
-              # will be replaced with whitespace when scanning for matches, so the
-              # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-              # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
-              # surrounding any match must be of a different type than the adjacent
-              # characters within the word, so letters must be next to non-letters and
-              # digits next to non-digits. For example, the dictionary word "jen" will
-              # match the first three letters of the text "jen123" but will return no
-              # matches for "jennifer".
-              #
-              # Dictionary words containing a large number of characters that are not
-              # letters or digits may result in unexpected findings because such characters
-              # are treated as whitespace. The
-              # [limits](https://cloud.google.com/dlp/limits) page contains details about
-              # the size limits of dictionaries. For dictionaries that do not fit within
-              # these constraints, consider using `LargeCustomDictionaryConfig` in the
-              # `StoredInfoType` API.
-            "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-              "words": [ # Words or phrases defining the dictionary. The dictionary must contain
-                  # at least one phrase and every phrase must contain at least 2 characters
-                  # that are letters or digits. [required]
-                "A String",
-              ],
-            },
-            "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
-                # is accepted.
-              "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
-                  # Example: gs://[BUCKET_NAME]/dictionary.txt
-            },
-          },
-          "storedType": { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
-              # `InspectDataSource`. Not currently supported in `InspectContent`.
-            "name": "A String", # Resource name of the requested `StoredInfoType`, for example
-                # `organizations/433245324/storedInfoTypes/432452342` or
-                # `projects/project-id/storedInfoTypes/432452342`.
-            "createTime": "A String", # Timestamp indicating when the version of the `StoredInfoType` used for
-                # inspection was created. Output-only field, populated by the system.
-          },
-          "detectionRules": [ # Set of detection rules to apply to all findings of this CustomInfoType.
-              # Rules are applied in order that they are specified. Not supported for the
-              # `surrogate_type` CustomInfoType.
-            { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
-                # `CustomInfoType` to alter behavior under certain circumstances, depending
-                # on the specific details of the rule. Not supported for the `surrogate_type`
-                # custom infoType.
-              "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
-                  # proximity of hotwords.
-                "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                    # The total length of the window cannot exceed 1000 characters. Note that
-                    # the finding itself will be included in the window, so that hotwords may
-                    # be used to match substrings of the finding itself. For example, the
-                    # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                    # adjusted upwards if the area code is known to be the local area code of
-                    # a company office using the hotword regex "\(xxx\)", where "xxx"
-                    # is the area code in question.
-                    # rule.
-                  "windowBefore": 42, # Number of characters before the finding to consider.
-                  "windowAfter": 42, # Number of characters after the finding to consider.
-                },
-                "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                  "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                      # google/re2 repository on GitHub.
-                  "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                      # specified, the entire match is returned. No more than 3 may be included.
-                    42,
-                  ],
-                },
-                "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
-                    # part of a detection rule.
-                  "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
-                      # levels. For example, if a finding would be `POSSIBLE` without the
-                      # detection rule and `relative_likelihood` is 1, then it is upgraded to
-                      # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
-                      # Likelihood may never drop below `VERY_UNLIKELY` or exceed
-                      # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
-                      # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
-                      # a final likelihood of `LIKELY`.
-                  "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
-                },
-              },
-            },
           ],
-          "exclusionType": "A String", # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
-              # to be returned. It still can be used for rules matching.
-          "likelihood": "A String", # Likelihood to return for this CustomInfoType. This base value can be
-              # altered by a detection rule if the finding meets the criteria specified by
-              # the rule. Defaults to `VERY_LIKELY` if not specified.
-        },
-      ],
-      "includeQuote": True or False, # When true, a contextual quote from the data that triggered a finding is
-          # included in the response; see Finding.quote.
-      "ruleSet": [ # Set of rules to apply to the findings for this InspectConfig.
-          # Exclusion rules, contained in the set are executed in the end, other
-          # rules are executed in the order they are specified for each info type.
-        { # Rule set for modifying a set of infoTypes to alter behavior under certain
-            # circumstances, depending on the specific details of the rules within the set.
-          "rules": [ # Set of rules to be applied to infoTypes. The rules are applied in order.
+          &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
             { # A single inspection rule to be applied to infoTypes, specified in
                 # `InspectionRuleSet`.
-              "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+              &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
                   # proximity of hotwords.
-                "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                    # The total length of the window cannot exceed 1000 characters. Note that
-                    # the finding itself will be included in the window, so that hotwords may
-                    # be used to match substrings of the finding itself. For example, the
-                    # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                    # adjusted upwards if the area code is known to be the local area code of
-                    # a company office using the hotword regex "\(xxx\)", where "xxx"
-                    # is the area code in question.
-                    # rule.
-                  "windowBefore": 42, # Number of characters before the finding to consider.
-                  "windowAfter": 42, # Number of characters after the finding to consider.
-                },
-                "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                  "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                      # google/re2 repository on GitHub.
-                  "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                      # specified, the entire match is returned. No more than 3 may be included.
-                    42,
-                  ],
-                },
-                "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
                     # part of a detection rule.
-                  "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
+                  &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
                       # levels. For example, if a finding would be `POSSIBLE` without the
                       # detection rule and `relative_likelihood` is 1, then it is upgraded to
                       # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
@@ -662,39 +488,33 @@
                       # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
                       # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
                       # a final likelihood of `LIKELY`.
-                  "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
+                  &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
                 },
-              },
-              "exclusionRule": { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
-                  # `InspectionRuleSet` are removed from results.
-                "regex": { # Message defining a custom regular expression. # Regular expression which defines the rule.
-                  "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                      # google/re2 repository on GitHub.
-                  "groupIndexes": [ # The index of the submatch to extract as findings. When not
+                &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                  &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
                       # specified, the entire match is returned. No more than 3 may be included.
                     42,
                   ],
+                  &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                      # google/re2 repository on GitHub.
                 },
-                "excludeInfoTypes": { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
-                  "infoTypes": [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
-                      # contained within with a finding of an infoType from this list. For
-                      # example, for `InspectionRuleSet.info_types` containing "PHONE_NUMBER"` and
-                      # `exclusion_rule` containing `exclude_info_types.info_types` with
-                      # "EMAIL_ADDRESS" the phone number findings are dropped if they overlap
-                      # with EMAIL_ADDRESS finding.
-                      # That leads to "555-222-2222@example.org" to generate only a single
-                      # finding, namely email address.
-                    { # Type of information detected by the API.
-                      "name": "A String", # Name of the information type. Either a name of your choosing when
-                          # creating a CustomInfoType, or one of the names listed
-                          # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                          # a built-in type. InfoType names should conform to the pattern
-                          # `[a-zA-Z0-9_]{1,64}`.
-                    },
-                  ],
+                &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                    # The total length of the window cannot exceed 1000 characters. Note that
+                    # the finding itself will be included in the window, so that hotwords may
+                    # be used to match substrings of the finding itself. For example, the
+                    # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                    # adjusted upwards if the area code is known to be the local area code of
+                    # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                    # is the area code in question.
+                    # rule.
+                  &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                  &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
                 },
-                "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
+              },
+              &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
+                  # `InspectionRuleSet` are removed from results.
+                &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
                     # be used to match sensitive information specific to the data, such as a list
                     # of employee IDs or job titles.
                     #
@@ -702,13 +522,13 @@
                     # and digits in the unicode [Basic Multilingual
                     # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
                     # will be replaced with whitespace when scanning for matches, so the
-                    # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-                    # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
+                    # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+                    # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
                     # surrounding any match must be of a different type than the adjacent
                     # characters within the word, so letters must be next to non-letters and
-                    # digits next to non-digits. For example, the dictionary word "jen" will
-                    # match the first three letters of the text "jen123" but will return no
-                    # matches for "jennifer".
+                    # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+                    # match the first three letters of the text &quot;jen123&quot; but will return no
+                    # matches for &quot;jennifer&quot;.
                     #
                     # Dictionary words containing a large number of characters that are not
                     # letters or digits may result in unexpected findings because such characters
@@ -717,39 +537,82 @@
                     # the size limits of dictionaries. For dictionaries that do not fit within
                     # these constraints, consider using `LargeCustomDictionaryConfig` in the
                     # `StoredInfoType` API.
-                  "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-                    "words": [ # Words or phrases defining the dictionary. The dictionary must contain
+                  &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+                    &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
                         # at least one phrase and every phrase must contain at least 2 characters
                         # that are letters or digits. [required]
-                      "A String",
+                      &quot;A String&quot;,
                     ],
                   },
-                  "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                  &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
                       # is accepted.
-                    "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
+                    &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
                         # Example: gs://[BUCKET_NAME]/dictionary.txt
                   },
                 },
-                "matchingType": "A String", # How the rule is applied, see MatchingType documentation for details.
+                &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
+                  &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                      # specified, the entire match is returned. No more than 3 may be included.
+                    42,
+                  ],
+                  &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                      # google/re2 repository on GitHub.
+                },
+                &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
+                  &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
+                      # contained within with a finding of an infoType from this list. For
+                      # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
+                      # `exclusion_rule` containing `exclude_info_types.info_types` with
+                      # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
+                      # with EMAIL_ADDRESS finding.
+                      # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
+                      # finding, namely email address.
+                    { # Type of information detected by the API.
+                      &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                          # creating a CustomInfoType, or one of the names listed
+                          # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                          # a built-in type. InfoType names should conform to the pattern
+                          # `[a-zA-Z0-9_]{1,64}`.
+                    },
+                  ],
+                },
+                &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
               },
             },
           ],
-          "infoTypes": [ # List of infoTypes this rule set is applied to.
-            { # Type of information detected by the API.
-              "name": "A String", # Name of the information type. Either a name of your choosing when
+        },
+      ],
+      &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
+        &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
+            # When set within `InspectJobConfig`,
+            # the maximum returned is 2000 regardless if this is set higher.
+            # When set within `InspectContentRequest`, this field is ignored.
+        &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
+          { # Max findings configuration per infoType, per content item or long
+              # running DlpJob.
+            &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
+            &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
+                # info_type should be provided. If InfoTypeLimit does not have an
+                # info_type, the DLP API applies the limit against all info_types that
+                # are found but not specified in another InfoTypeLimit.
+              &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                   # creating a CustomInfoType, or one of the names listed
                   # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                   # a built-in type. InfoType names should conform to the pattern
                   # `[a-zA-Z0-9_]{1,64}`.
             },
-          ],
-        },
-      ],
-      "contentOptions": [ # List of options defining data content to scan.
+          },
+        ],
+        &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
+            # When set within `InspectContentRequest`, the maximum returned is 2000
+            # regardless if this is set higher.
+      },
+      &quot;contentOptions&quot;: [ # List of options defining data content to scan.
           # If empty, text, images, and other content will be included.
-        "A String",
+        &quot;A String&quot;,
       ],
-      "infoTypes": [ # Restricts what info_types to look for. The values must correspond to
+      &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
           # InfoType values returned by ListInfoTypes or listed at
           # https://cloud.google.com/dlp/docs/infotypes-reference.
           #
@@ -761,20 +624,157 @@
           # run you should specify specific InfoTypes listed in the reference,
           # otherwise a default list will be used, which may change over time.
         { # Type of information detected by the API.
-          "name": "A String", # Name of the information type. Either a name of your choosing when
+          &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
               # creating a CustomInfoType, or one of the names listed
               # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
               # a built-in type. InfoType names should conform to the pattern
               # `[a-zA-Z0-9_]{1,64}`.
         },
       ],
+      &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
+          # POSSIBLE.
+          # See https://cloud.google.com/dlp/docs/likelihood to learn more.
+      &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
+      &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
+          # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
+        { # Custom information type provided by the user. Used to find domain-specific
+            # sensitive information configurable to the data in question.
+          &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
+              # altered by a detection rule if the finding meets the criteria specified by
+              # the rule. Defaults to `VERY_LIKELY` if not specified.
+          &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
+              # infoType, when the name matches one of existing infoTypes and that infoType
+              # is specified in `InspectContent.info_types` field. Specifying the latter
+              # adds findings to the one detected by the system. If built-in info type is
+              # not specified in `InspectContent.info_types` list then the name is treated
+              # as a custom info type.
+            &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                # creating a CustomInfoType, or one of the names listed
+                # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                # a built-in type. InfoType names should conform to the pattern
+                # `[a-zA-Z0-9_]{1,64}`.
+          },
+          &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
+            &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                # specified, the entire match is returned. No more than 3 may be included.
+              42,
+            ],
+            &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                # google/re2 repository on GitHub.
+          },
+          &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
+              # Rules are applied in order that they are specified. Not supported for the
+              # `surrogate_type` CustomInfoType.
+            { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
+                # `CustomInfoType` to alter behavior under certain circumstances, depending
+                # on the specific details of the rule. Not supported for the `surrogate_type`
+                # custom infoType.
+              &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+                  # proximity of hotwords.
+                &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                    # part of a detection rule.
+                  &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
+                      # levels. For example, if a finding would be `POSSIBLE` without the
+                      # detection rule and `relative_likelihood` is 1, then it is upgraded to
+                      # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
+                      # Likelihood may never drop below `VERY_UNLIKELY` or exceed
+                      # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
+                      # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
+                      # a final likelihood of `LIKELY`.
+                  &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
+                },
+                &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                  &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                      # specified, the entire match is returned. No more than 3 may be included.
+                    42,
+                  ],
+                  &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                      # google/re2 repository on GitHub.
+                },
+                &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                    # The total length of the window cannot exceed 1000 characters. Note that
+                    # the finding itself will be included in the window, so that hotwords may
+                    # be used to match substrings of the finding itself. For example, the
+                    # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                    # adjusted upwards if the area code is known to be the local area code of
+                    # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                    # is the area code in question.
+                    # rule.
+                  &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                  &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
+                },
+              },
+            },
+          ],
+          &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
+              # to be returned. It still can be used for rules matching.
+          &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
+              # be used to match sensitive information specific to the data, such as a list
+              # of employee IDs or job titles.
+              #
+              # Dictionary words are case-insensitive and all characters other than letters
+              # and digits in the unicode [Basic Multilingual
+              # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
+              # will be replaced with whitespace when scanning for matches, so the
+              # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+              # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
+              # surrounding any match must be of a different type than the adjacent
+              # characters within the word, so letters must be next to non-letters and
+              # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+              # match the first three letters of the text &quot;jen123&quot; but will return no
+              # matches for &quot;jennifer&quot;.
+              #
+              # Dictionary words containing a large number of characters that are not
+              # letters or digits may result in unexpected findings because such characters
+              # are treated as whitespace. The
+              # [limits](https://cloud.google.com/dlp/limits) page contains details about
+              # the size limits of dictionaries. For dictionaries that do not fit within
+              # these constraints, consider using `LargeCustomDictionaryConfig` in the
+              # `StoredInfoType` API.
+            &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+              &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
+                  # at least one phrase and every phrase must contain at least 2 characters
+                  # that are letters or digits. [required]
+                &quot;A String&quot;,
+              ],
+            },
+            &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                # is accepted.
+              &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
+                  # Example: gs://[BUCKET_NAME]/dictionary.txt
+            },
+          },
+          &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
+              # `InspectDataSource`. Not currently supported in `InspectContent`.
+            &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
+                # `organizations/433245324/storedInfoTypes/432452342` or
+                # `projects/project-id/storedInfoTypes/432452342`.
+            &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
+                # inspection was created. Output-only field, populated by the system.
+          },
+          &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
+              # support reversing.
+              # such as
+              # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
+              # These types of transformations are
+              # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
+              # output. This should be used in conjunction with a field on the
+              # transformation such as `surrogate_info_type`. This CustomInfoType does
+              # not support the use of `detection_rules`.
+          },
+        },
+      ],
     },
-    "createTime": "A String", # Output only. The creation timestamp of an inspectTemplate.
-    "name": "A String", # Output only. The template name.
+    &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of an inspectTemplate.
+    &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of an inspectTemplate.
+    &quot;name&quot;: &quot;A String&quot;, # Output only. The template name.
         #
         # The template will have one of the following formats:
         # `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR
         # `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`;
+    &quot;description&quot;: &quot;A String&quot;, # Short description (max 256 chars).
   }</pre>
 </div>
 
@@ -828,208 +828,34 @@
       # to be detected) to be used anywhere you otherwise would normally specify
       # InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
       # to learn more.
-    "updateTime": "A String", # Output only. The last update timestamp of an inspectTemplate.
-    "displayName": "A String", # Display name (max 256 chars).
-    "description": "A String", # Short description (max 256 chars).
-    "inspectConfig": { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
+    &quot;displayName&quot;: &quot;A String&quot;, # Display name (max 256 chars).
+    &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
         # When used with redactContent only info_types and min_likelihood are currently
         # used.
-      "excludeInfoTypes": True or False, # When true, excludes type information of the findings.
-      "limits": { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
-        "maxFindingsPerRequest": 42, # Max number of findings that will be returned per request/job.
-            # When set within `InspectContentRequest`, the maximum returned is 2000
-            # regardless if this is set higher.
-        "maxFindingsPerInfoType": [ # Configuration of findings limit given for specified infoTypes.
-          { # Max findings configuration per infoType, per content item or long
-              # running DlpJob.
-            "infoType": { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
-                # info_type should be provided. If InfoTypeLimit does not have an
-                # info_type, the DLP API applies the limit against all info_types that
-                # are found but not specified in another InfoTypeLimit.
-              "name": "A String", # Name of the information type. Either a name of your choosing when
+      &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
+          # included in the response; see Finding.quote.
+      &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
+          # Exclusion rules, contained in the set are executed in the end, other
+          # rules are executed in the order they are specified for each info type.
+        { # Rule set for modifying a set of infoTypes to alter behavior under certain
+            # circumstances, depending on the specific details of the rules within the set.
+          &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
+            { # Type of information detected by the API.
+              &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                   # creating a CustomInfoType, or one of the names listed
                   # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                   # a built-in type. InfoType names should conform to the pattern
                   # `[a-zA-Z0-9_]{1,64}`.
             },
-            "maxFindings": 42, # Max findings limit for the given infoType.
-          },
-        ],
-        "maxFindingsPerItem": 42, # Max number of findings that will be returned for each item scanned.
-            # When set within `InspectJobConfig`,
-            # the maximum returned is 2000 regardless if this is set higher.
-            # When set within `InspectContentRequest`, this field is ignored.
-      },
-      "minLikelihood": "A String", # Only returns findings equal or above this threshold. The default is
-          # POSSIBLE.
-          # See https://cloud.google.com/dlp/docs/likelihood to learn more.
-      "customInfoTypes": [ # CustomInfoTypes provided by the user. See
-          # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
-        { # Custom information type provided by the user. Used to find domain-specific
-            # sensitive information configurable to the data in question.
-          "regex": { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
-            "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                # google/re2 repository on GitHub.
-            "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                # specified, the entire match is returned. No more than 3 may be included.
-              42,
-            ],
-          },
-          "surrogateType": { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
-              # support reversing.
-              # such as
-              # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
-              # These types of transformations are
-              # those that perform pseudonymization, thereby producing a "surrogate" as
-              # output. This should be used in conjunction with a field on the
-              # transformation such as `surrogate_info_type`. This CustomInfoType does
-              # not support the use of `detection_rules`.
-          },
-          "infoType": { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
-              # infoType, when the name matches one of existing infoTypes and that infoType
-              # is specified in `InspectContent.info_types` field. Specifying the latter
-              # adds findings to the one detected by the system. If built-in info type is
-              # not specified in `InspectContent.info_types` list then the name is treated
-              # as a custom info type.
-            "name": "A String", # Name of the information type. Either a name of your choosing when
-                # creating a CustomInfoType, or one of the names listed
-                # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                # a built-in type. InfoType names should conform to the pattern
-                # `[a-zA-Z0-9_]{1,64}`.
-          },
-          "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
-              # be used to match sensitive information specific to the data, such as a list
-              # of employee IDs or job titles.
-              #
-              # Dictionary words are case-insensitive and all characters other than letters
-              # and digits in the unicode [Basic Multilingual
-              # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
-              # will be replaced with whitespace when scanning for matches, so the
-              # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-              # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
-              # surrounding any match must be of a different type than the adjacent
-              # characters within the word, so letters must be next to non-letters and
-              # digits next to non-digits. For example, the dictionary word "jen" will
-              # match the first three letters of the text "jen123" but will return no
-              # matches for "jennifer".
-              #
-              # Dictionary words containing a large number of characters that are not
-              # letters or digits may result in unexpected findings because such characters
-              # are treated as whitespace. The
-              # [limits](https://cloud.google.com/dlp/limits) page contains details about
-              # the size limits of dictionaries. For dictionaries that do not fit within
-              # these constraints, consider using `LargeCustomDictionaryConfig` in the
-              # `StoredInfoType` API.
-            "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-              "words": [ # Words or phrases defining the dictionary. The dictionary must contain
-                  # at least one phrase and every phrase must contain at least 2 characters
-                  # that are letters or digits. [required]
-                "A String",
-              ],
-            },
-            "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
-                # is accepted.
-              "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
-                  # Example: gs://[BUCKET_NAME]/dictionary.txt
-            },
-          },
-          "storedType": { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
-              # `InspectDataSource`. Not currently supported in `InspectContent`.
-            "name": "A String", # Resource name of the requested `StoredInfoType`, for example
-                # `organizations/433245324/storedInfoTypes/432452342` or
-                # `projects/project-id/storedInfoTypes/432452342`.
-            "createTime": "A String", # Timestamp indicating when the version of the `StoredInfoType` used for
-                # inspection was created. Output-only field, populated by the system.
-          },
-          "detectionRules": [ # Set of detection rules to apply to all findings of this CustomInfoType.
-              # Rules are applied in order that they are specified. Not supported for the
-              # `surrogate_type` CustomInfoType.
-            { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
-                # `CustomInfoType` to alter behavior under certain circumstances, depending
-                # on the specific details of the rule. Not supported for the `surrogate_type`
-                # custom infoType.
-              "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
-                  # proximity of hotwords.
-                "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                    # The total length of the window cannot exceed 1000 characters. Note that
-                    # the finding itself will be included in the window, so that hotwords may
-                    # be used to match substrings of the finding itself. For example, the
-                    # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                    # adjusted upwards if the area code is known to be the local area code of
-                    # a company office using the hotword regex "\(xxx\)", where "xxx"
-                    # is the area code in question.
-                    # rule.
-                  "windowBefore": 42, # Number of characters before the finding to consider.
-                  "windowAfter": 42, # Number of characters after the finding to consider.
-                },
-                "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                  "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                      # google/re2 repository on GitHub.
-                  "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                      # specified, the entire match is returned. No more than 3 may be included.
-                    42,
-                  ],
-                },
-                "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
-                    # part of a detection rule.
-                  "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
-                      # levels. For example, if a finding would be `POSSIBLE` without the
-                      # detection rule and `relative_likelihood` is 1, then it is upgraded to
-                      # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
-                      # Likelihood may never drop below `VERY_UNLIKELY` or exceed
-                      # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
-                      # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
-                      # a final likelihood of `LIKELY`.
-                  "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
-                },
-              },
-            },
           ],
-          "exclusionType": "A String", # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
-              # to be returned. It still can be used for rules matching.
-          "likelihood": "A String", # Likelihood to return for this CustomInfoType. This base value can be
-              # altered by a detection rule if the finding meets the criteria specified by
-              # the rule. Defaults to `VERY_LIKELY` if not specified.
-        },
-      ],
-      "includeQuote": True or False, # When true, a contextual quote from the data that triggered a finding is
-          # included in the response; see Finding.quote.
-      "ruleSet": [ # Set of rules to apply to the findings for this InspectConfig.
-          # Exclusion rules, contained in the set are executed in the end, other
-          # rules are executed in the order they are specified for each info type.
-        { # Rule set for modifying a set of infoTypes to alter behavior under certain
-            # circumstances, depending on the specific details of the rules within the set.
-          "rules": [ # Set of rules to be applied to infoTypes. The rules are applied in order.
+          &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
             { # A single inspection rule to be applied to infoTypes, specified in
                 # `InspectionRuleSet`.
-              "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+              &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
                   # proximity of hotwords.
-                "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                    # The total length of the window cannot exceed 1000 characters. Note that
-                    # the finding itself will be included in the window, so that hotwords may
-                    # be used to match substrings of the finding itself. For example, the
-                    # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                    # adjusted upwards if the area code is known to be the local area code of
-                    # a company office using the hotword regex "\(xxx\)", where "xxx"
-                    # is the area code in question.
-                    # rule.
-                  "windowBefore": 42, # Number of characters before the finding to consider.
-                  "windowAfter": 42, # Number of characters after the finding to consider.
-                },
-                "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                  "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                      # google/re2 repository on GitHub.
-                  "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                      # specified, the entire match is returned. No more than 3 may be included.
-                    42,
-                  ],
-                },
-                "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
                     # part of a detection rule.
-                  "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
+                  &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
                       # levels. For example, if a finding would be `POSSIBLE` without the
                       # detection rule and `relative_likelihood` is 1, then it is upgraded to
                       # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
@@ -1037,39 +863,33 @@
                       # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
                       # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
                       # a final likelihood of `LIKELY`.
-                  "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
+                  &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
                 },
-              },
-              "exclusionRule": { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
-                  # `InspectionRuleSet` are removed from results.
-                "regex": { # Message defining a custom regular expression. # Regular expression which defines the rule.
-                  "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                      # google/re2 repository on GitHub.
-                  "groupIndexes": [ # The index of the submatch to extract as findings. When not
+                &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                  &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
                       # specified, the entire match is returned. No more than 3 may be included.
                     42,
                   ],
+                  &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                      # google/re2 repository on GitHub.
                 },
-                "excludeInfoTypes": { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
-                  "infoTypes": [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
-                      # contained within with a finding of an infoType from this list. For
-                      # example, for `InspectionRuleSet.info_types` containing "PHONE_NUMBER"` and
-                      # `exclusion_rule` containing `exclude_info_types.info_types` with
-                      # "EMAIL_ADDRESS" the phone number findings are dropped if they overlap
-                      # with EMAIL_ADDRESS finding.
-                      # That leads to "555-222-2222@example.org" to generate only a single
-                      # finding, namely email address.
-                    { # Type of information detected by the API.
-                      "name": "A String", # Name of the information type. Either a name of your choosing when
-                          # creating a CustomInfoType, or one of the names listed
-                          # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                          # a built-in type. InfoType names should conform to the pattern
-                          # `[a-zA-Z0-9_]{1,64}`.
-                    },
-                  ],
+                &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                    # The total length of the window cannot exceed 1000 characters. Note that
+                    # the finding itself will be included in the window, so that hotwords may
+                    # be used to match substrings of the finding itself. For example, the
+                    # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                    # adjusted upwards if the area code is known to be the local area code of
+                    # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                    # is the area code in question.
+                    # rule.
+                  &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                  &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
                 },
-                "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
+              },
+              &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
+                  # `InspectionRuleSet` are removed from results.
+                &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
                     # be used to match sensitive information specific to the data, such as a list
                     # of employee IDs or job titles.
                     #
@@ -1077,13 +897,13 @@
                     # and digits in the unicode [Basic Multilingual
                     # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
                     # will be replaced with whitespace when scanning for matches, so the
-                    # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-                    # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
+                    # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+                    # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
                     # surrounding any match must be of a different type than the adjacent
                     # characters within the word, so letters must be next to non-letters and
-                    # digits next to non-digits. For example, the dictionary word "jen" will
-                    # match the first three letters of the text "jen123" but will return no
-                    # matches for "jennifer".
+                    # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+                    # match the first three letters of the text &quot;jen123&quot; but will return no
+                    # matches for &quot;jennifer&quot;.
                     #
                     # Dictionary words containing a large number of characters that are not
                     # letters or digits may result in unexpected findings because such characters
@@ -1092,39 +912,82 @@
                     # the size limits of dictionaries. For dictionaries that do not fit within
                     # these constraints, consider using `LargeCustomDictionaryConfig` in the
                     # `StoredInfoType` API.
-                  "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-                    "words": [ # Words or phrases defining the dictionary. The dictionary must contain
+                  &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+                    &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
                         # at least one phrase and every phrase must contain at least 2 characters
                         # that are letters or digits. [required]
-                      "A String",
+                      &quot;A String&quot;,
                     ],
                   },
-                  "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                  &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
                       # is accepted.
-                    "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
+                    &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
                         # Example: gs://[BUCKET_NAME]/dictionary.txt
                   },
                 },
-                "matchingType": "A String", # How the rule is applied, see MatchingType documentation for details.
+                &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
+                  &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                      # specified, the entire match is returned. No more than 3 may be included.
+                    42,
+                  ],
+                  &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                      # google/re2 repository on GitHub.
+                },
+                &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
+                  &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
+                      # contained within with a finding of an infoType from this list. For
+                      # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
+                      # `exclusion_rule` containing `exclude_info_types.info_types` with
+                      # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
+                      # with EMAIL_ADDRESS finding.
+                      # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
+                      # finding, namely email address.
+                    { # Type of information detected by the API.
+                      &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                          # creating a CustomInfoType, or one of the names listed
+                          # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                          # a built-in type. InfoType names should conform to the pattern
+                          # `[a-zA-Z0-9_]{1,64}`.
+                    },
+                  ],
+                },
+                &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
               },
             },
           ],
-          "infoTypes": [ # List of infoTypes this rule set is applied to.
-            { # Type of information detected by the API.
-              "name": "A String", # Name of the information type. Either a name of your choosing when
+        },
+      ],
+      &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
+        &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
+            # When set within `InspectJobConfig`,
+            # the maximum returned is 2000 regardless if this is set higher.
+            # When set within `InspectContentRequest`, this field is ignored.
+        &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
+          { # Max findings configuration per infoType, per content item or long
+              # running DlpJob.
+            &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
+            &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
+                # info_type should be provided. If InfoTypeLimit does not have an
+                # info_type, the DLP API applies the limit against all info_types that
+                # are found but not specified in another InfoTypeLimit.
+              &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                   # creating a CustomInfoType, or one of the names listed
                   # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                   # a built-in type. InfoType names should conform to the pattern
                   # `[a-zA-Z0-9_]{1,64}`.
             },
-          ],
-        },
-      ],
-      "contentOptions": [ # List of options defining data content to scan.
+          },
+        ],
+        &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
+            # When set within `InspectContentRequest`, the maximum returned is 2000
+            # regardless if this is set higher.
+      },
+      &quot;contentOptions&quot;: [ # List of options defining data content to scan.
           # If empty, text, images, and other content will be included.
-        "A String",
+        &quot;A String&quot;,
       ],
-      "infoTypes": [ # Restricts what info_types to look for. The values must correspond to
+      &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
           # InfoType values returned by ListInfoTypes or listed at
           # https://cloud.google.com/dlp/docs/infotypes-reference.
           #
@@ -1136,31 +999,174 @@
           # run you should specify specific InfoTypes listed in the reference,
           # otherwise a default list will be used, which may change over time.
         { # Type of information detected by the API.
-          "name": "A String", # Name of the information type. Either a name of your choosing when
+          &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
               # creating a CustomInfoType, or one of the names listed
               # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
               # a built-in type. InfoType names should conform to the pattern
               # `[a-zA-Z0-9_]{1,64}`.
         },
       ],
+      &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
+          # POSSIBLE.
+          # See https://cloud.google.com/dlp/docs/likelihood to learn more.
+      &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
+      &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
+          # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
+        { # Custom information type provided by the user. Used to find domain-specific
+            # sensitive information configurable to the data in question.
+          &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
+              # altered by a detection rule if the finding meets the criteria specified by
+              # the rule. Defaults to `VERY_LIKELY` if not specified.
+          &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
+              # infoType, when the name matches one of existing infoTypes and that infoType
+              # is specified in `InspectContent.info_types` field. Specifying the latter
+              # adds findings to the one detected by the system. If built-in info type is
+              # not specified in `InspectContent.info_types` list then the name is treated
+              # as a custom info type.
+            &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                # creating a CustomInfoType, or one of the names listed
+                # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                # a built-in type. InfoType names should conform to the pattern
+                # `[a-zA-Z0-9_]{1,64}`.
+          },
+          &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
+            &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                # specified, the entire match is returned. No more than 3 may be included.
+              42,
+            ],
+            &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                # google/re2 repository on GitHub.
+          },
+          &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
+              # Rules are applied in order that they are specified. Not supported for the
+              # `surrogate_type` CustomInfoType.
+            { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
+                # `CustomInfoType` to alter behavior under certain circumstances, depending
+                # on the specific details of the rule. Not supported for the `surrogate_type`
+                # custom infoType.
+              &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+                  # proximity of hotwords.
+                &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                    # part of a detection rule.
+                  &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
+                      # levels. For example, if a finding would be `POSSIBLE` without the
+                      # detection rule and `relative_likelihood` is 1, then it is upgraded to
+                      # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
+                      # Likelihood may never drop below `VERY_UNLIKELY` or exceed
+                      # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
+                      # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
+                      # a final likelihood of `LIKELY`.
+                  &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
+                },
+                &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                  &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                      # specified, the entire match is returned. No more than 3 may be included.
+                    42,
+                  ],
+                  &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                      # google/re2 repository on GitHub.
+                },
+                &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                    # The total length of the window cannot exceed 1000 characters. Note that
+                    # the finding itself will be included in the window, so that hotwords may
+                    # be used to match substrings of the finding itself. For example, the
+                    # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                    # adjusted upwards if the area code is known to be the local area code of
+                    # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                    # is the area code in question.
+                    # rule.
+                  &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                  &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
+                },
+              },
+            },
+          ],
+          &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
+              # to be returned. It still can be used for rules matching.
+          &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
+              # be used to match sensitive information specific to the data, such as a list
+              # of employee IDs or job titles.
+              #
+              # Dictionary words are case-insensitive and all characters other than letters
+              # and digits in the unicode [Basic Multilingual
+              # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
+              # will be replaced with whitespace when scanning for matches, so the
+              # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+              # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
+              # surrounding any match must be of a different type than the adjacent
+              # characters within the word, so letters must be next to non-letters and
+              # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+              # match the first three letters of the text &quot;jen123&quot; but will return no
+              # matches for &quot;jennifer&quot;.
+              #
+              # Dictionary words containing a large number of characters that are not
+              # letters or digits may result in unexpected findings because such characters
+              # are treated as whitespace. The
+              # [limits](https://cloud.google.com/dlp/limits) page contains details about
+              # the size limits of dictionaries. For dictionaries that do not fit within
+              # these constraints, consider using `LargeCustomDictionaryConfig` in the
+              # `StoredInfoType` API.
+            &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+              &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
+                  # at least one phrase and every phrase must contain at least 2 characters
+                  # that are letters or digits. [required]
+                &quot;A String&quot;,
+              ],
+            },
+            &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                # is accepted.
+              &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
+                  # Example: gs://[BUCKET_NAME]/dictionary.txt
+            },
+          },
+          &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
+              # `InspectDataSource`. Not currently supported in `InspectContent`.
+            &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
+                # `organizations/433245324/storedInfoTypes/432452342` or
+                # `projects/project-id/storedInfoTypes/432452342`.
+            &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
+                # inspection was created. Output-only field, populated by the system.
+          },
+          &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
+              # support reversing.
+              # such as
+              # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
+              # These types of transformations are
+              # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
+              # output. This should be used in conjunction with a field on the
+              # transformation such as `surrogate_info_type`. This CustomInfoType does
+              # not support the use of `detection_rules`.
+          },
+        },
+      ],
     },
-    "createTime": "A String", # Output only. The creation timestamp of an inspectTemplate.
-    "name": "A String", # Output only. The template name.
+    &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of an inspectTemplate.
+    &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of an inspectTemplate.
+    &quot;name&quot;: &quot;A String&quot;, # Output only. The template name.
         #
         # The template will have one of the following formats:
         # `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR
         # `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`;
+    &quot;description&quot;: &quot;A String&quot;, # Short description (max 256 chars).
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(parent, orderBy=None, pageSize=None, locationId=None, pageToken=None, x__xgafv=None)</code>
+    <code class="details" id="list">list(parent, pageToken=None, locationId=None, pageSize=None, orderBy=None, x__xgafv=None)</code>
   <pre>Lists InspectTemplates.
 See https://cloud.google.com/dlp/docs/creating-templates to learn more.
 
 Args:
   parent: string, Required. The parent resource name, for example projects/my-project-id or
 organizations/my-org-id. (required)
+  pageToken: string, Page token to continue retrieval. Comes from previous call
+to `ListInspectTemplates`.
+  locationId: string, The geographic location where inspection templates will be retrieved from.
+Use `-` for all locations. Reserved for future extensions.
+  pageSize: integer, Size of the page, can be limited by server. If zero server returns
+a page of max size 100.
   orderBy: string, Comma separated list of fields to order by,
 followed by `asc` or `desc` postfix. This list is case-insensitive,
 default sorting order is ascending, redundant space characters are
@@ -1172,14 +1178,8 @@
 
 - `create_time`: corresponds to time the template was created.
 - `update_time`: corresponds to time the template was last updated.
-- `name`: corresponds to template's name.
-- `display_name`: corresponds to template's display name.
-  pageSize: integer, Size of the page, can be limited by server. If zero server returns
-a page of max size 100.
-  locationId: string, The geographic location where inspection templates will be retrieved from.
-Use `-` for all locations. Reserved for future extensions.
-  pageToken: string, Page token to continue retrieval. Comes from previous call
-to `ListInspectTemplates`.
+- `name`: corresponds to template&#x27;s name.
+- `display_name`: corresponds to template&#x27;s display name.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -1189,215 +1189,39 @@
   An object of the form:
 
     { # Response message for ListInspectTemplates.
-    "nextPageToken": "A String", # If the next page is available then the next page token to be used
-        # in following ListInspectTemplates request.
-    "inspectTemplates": [ # List of inspectTemplates, up to page_size in ListInspectTemplatesRequest.
+    &quot;inspectTemplates&quot;: [ # List of inspectTemplates, up to page_size in ListInspectTemplatesRequest.
       { # The inspectTemplate contains a configuration (set of types of sensitive data
           # to be detected) to be used anywhere you otherwise would normally specify
           # InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
           # to learn more.
-        "updateTime": "A String", # Output only. The last update timestamp of an inspectTemplate.
-        "displayName": "A String", # Display name (max 256 chars).
-        "description": "A String", # Short description (max 256 chars).
-        "inspectConfig": { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
+        &quot;displayName&quot;: &quot;A String&quot;, # Display name (max 256 chars).
+        &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
             # When used with redactContent only info_types and min_likelihood are currently
             # used.
-          "excludeInfoTypes": True or False, # When true, excludes type information of the findings.
-          "limits": { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
-            "maxFindingsPerRequest": 42, # Max number of findings that will be returned per request/job.
-                # When set within `InspectContentRequest`, the maximum returned is 2000
-                # regardless if this is set higher.
-            "maxFindingsPerInfoType": [ # Configuration of findings limit given for specified infoTypes.
-              { # Max findings configuration per infoType, per content item or long
-                  # running DlpJob.
-                "infoType": { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
-                    # info_type should be provided. If InfoTypeLimit does not have an
-                    # info_type, the DLP API applies the limit against all info_types that
-                    # are found but not specified in another InfoTypeLimit.
-                  "name": "A String", # Name of the information type. Either a name of your choosing when
+          &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
+              # included in the response; see Finding.quote.
+          &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
+              # Exclusion rules, contained in the set are executed in the end, other
+              # rules are executed in the order they are specified for each info type.
+            { # Rule set for modifying a set of infoTypes to alter behavior under certain
+                # circumstances, depending on the specific details of the rules within the set.
+              &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
+                { # Type of information detected by the API.
+                  &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                       # creating a CustomInfoType, or one of the names listed
                       # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                       # a built-in type. InfoType names should conform to the pattern
                       # `[a-zA-Z0-9_]{1,64}`.
                 },
-                "maxFindings": 42, # Max findings limit for the given infoType.
-              },
-            ],
-            "maxFindingsPerItem": 42, # Max number of findings that will be returned for each item scanned.
-                # When set within `InspectJobConfig`,
-                # the maximum returned is 2000 regardless if this is set higher.
-                # When set within `InspectContentRequest`, this field is ignored.
-          },
-          "minLikelihood": "A String", # Only returns findings equal or above this threshold. The default is
-              # POSSIBLE.
-              # See https://cloud.google.com/dlp/docs/likelihood to learn more.
-          "customInfoTypes": [ # CustomInfoTypes provided by the user. See
-              # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
-            { # Custom information type provided by the user. Used to find domain-specific
-                # sensitive information configurable to the data in question.
-              "regex": { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
-                "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                    # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                    # google/re2 repository on GitHub.
-                "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                    # specified, the entire match is returned. No more than 3 may be included.
-                  42,
-                ],
-              },
-              "surrogateType": { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
-                  # support reversing.
-                  # such as
-                  # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
-                  # These types of transformations are
-                  # those that perform pseudonymization, thereby producing a "surrogate" as
-                  # output. This should be used in conjunction with a field on the
-                  # transformation such as `surrogate_info_type`. This CustomInfoType does
-                  # not support the use of `detection_rules`.
-              },
-              "infoType": { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
-                  # infoType, when the name matches one of existing infoTypes and that infoType
-                  # is specified in `InspectContent.info_types` field. Specifying the latter
-                  # adds findings to the one detected by the system. If built-in info type is
-                  # not specified in `InspectContent.info_types` list then the name is treated
-                  # as a custom info type.
-                "name": "A String", # Name of the information type. Either a name of your choosing when
-                    # creating a CustomInfoType, or one of the names listed
-                    # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                    # a built-in type. InfoType names should conform to the pattern
-                    # `[a-zA-Z0-9_]{1,64}`.
-              },
-              "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
-                  # be used to match sensitive information specific to the data, such as a list
-                  # of employee IDs or job titles.
-                  #
-                  # Dictionary words are case-insensitive and all characters other than letters
-                  # and digits in the unicode [Basic Multilingual
-                  # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
-                  # will be replaced with whitespace when scanning for matches, so the
-                  # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-                  # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
-                  # surrounding any match must be of a different type than the adjacent
-                  # characters within the word, so letters must be next to non-letters and
-                  # digits next to non-digits. For example, the dictionary word "jen" will
-                  # match the first three letters of the text "jen123" but will return no
-                  # matches for "jennifer".
-                  #
-                  # Dictionary words containing a large number of characters that are not
-                  # letters or digits may result in unexpected findings because such characters
-                  # are treated as whitespace. The
-                  # [limits](https://cloud.google.com/dlp/limits) page contains details about
-                  # the size limits of dictionaries. For dictionaries that do not fit within
-                  # these constraints, consider using `LargeCustomDictionaryConfig` in the
-                  # `StoredInfoType` API.
-                "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-                  "words": [ # Words or phrases defining the dictionary. The dictionary must contain
-                      # at least one phrase and every phrase must contain at least 2 characters
-                      # that are letters or digits. [required]
-                    "A String",
-                  ],
-                },
-                "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
-                    # is accepted.
-                  "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
-                      # Example: gs://[BUCKET_NAME]/dictionary.txt
-                },
-              },
-              "storedType": { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
-                  # `InspectDataSource`. Not currently supported in `InspectContent`.
-                "name": "A String", # Resource name of the requested `StoredInfoType`, for example
-                    # `organizations/433245324/storedInfoTypes/432452342` or
-                    # `projects/project-id/storedInfoTypes/432452342`.
-                "createTime": "A String", # Timestamp indicating when the version of the `StoredInfoType` used for
-                    # inspection was created. Output-only field, populated by the system.
-              },
-              "detectionRules": [ # Set of detection rules to apply to all findings of this CustomInfoType.
-                  # Rules are applied in order that they are specified. Not supported for the
-                  # `surrogate_type` CustomInfoType.
-                { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
-                    # `CustomInfoType` to alter behavior under certain circumstances, depending
-                    # on the specific details of the rule. Not supported for the `surrogate_type`
-                    # custom infoType.
-                  "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
-                      # proximity of hotwords.
-                    "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                        # The total length of the window cannot exceed 1000 characters. Note that
-                        # the finding itself will be included in the window, so that hotwords may
-                        # be used to match substrings of the finding itself. For example, the
-                        # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                        # adjusted upwards if the area code is known to be the local area code of
-                        # a company office using the hotword regex "\(xxx\)", where "xxx"
-                        # is the area code in question.
-                        # rule.
-                      "windowBefore": 42, # Number of characters before the finding to consider.
-                      "windowAfter": 42, # Number of characters after the finding to consider.
-                    },
-                    "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                      "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                          # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                          # google/re2 repository on GitHub.
-                      "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                          # specified, the entire match is returned. No more than 3 may be included.
-                        42,
-                      ],
-                    },
-                    "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
-                        # part of a detection rule.
-                      "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
-                          # levels. For example, if a finding would be `POSSIBLE` without the
-                          # detection rule and `relative_likelihood` is 1, then it is upgraded to
-                          # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
-                          # Likelihood may never drop below `VERY_UNLIKELY` or exceed
-                          # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
-                          # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
-                          # a final likelihood of `LIKELY`.
-                      "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
-                    },
-                  },
-                },
               ],
-              "exclusionType": "A String", # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
-                  # to be returned. It still can be used for rules matching.
-              "likelihood": "A String", # Likelihood to return for this CustomInfoType. This base value can be
-                  # altered by a detection rule if the finding meets the criteria specified by
-                  # the rule. Defaults to `VERY_LIKELY` if not specified.
-            },
-          ],
-          "includeQuote": True or False, # When true, a contextual quote from the data that triggered a finding is
-              # included in the response; see Finding.quote.
-          "ruleSet": [ # Set of rules to apply to the findings for this InspectConfig.
-              # Exclusion rules, contained in the set are executed in the end, other
-              # rules are executed in the order they are specified for each info type.
-            { # Rule set for modifying a set of infoTypes to alter behavior under certain
-                # circumstances, depending on the specific details of the rules within the set.
-              "rules": [ # Set of rules to be applied to infoTypes. The rules are applied in order.
+              &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
                 { # A single inspection rule to be applied to infoTypes, specified in
                     # `InspectionRuleSet`.
-                  "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+                  &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
                       # proximity of hotwords.
-                    "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                        # The total length of the window cannot exceed 1000 characters. Note that
-                        # the finding itself will be included in the window, so that hotwords may
-                        # be used to match substrings of the finding itself. For example, the
-                        # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                        # adjusted upwards if the area code is known to be the local area code of
-                        # a company office using the hotword regex "\(xxx\)", where "xxx"
-                        # is the area code in question.
-                        # rule.
-                      "windowBefore": 42, # Number of characters before the finding to consider.
-                      "windowAfter": 42, # Number of characters after the finding to consider.
-                    },
-                    "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                      "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                          # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                          # google/re2 repository on GitHub.
-                      "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                          # specified, the entire match is returned. No more than 3 may be included.
-                        42,
-                      ],
-                    },
-                    "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                    &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
                         # part of a detection rule.
-                      "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
+                      &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
                           # levels. For example, if a finding would be `POSSIBLE` without the
                           # detection rule and `relative_likelihood` is 1, then it is upgraded to
                           # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
@@ -1405,39 +1229,33 @@
                           # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
                           # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
                           # a final likelihood of `LIKELY`.
-                      "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
+                      &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
                     },
-                  },
-                  "exclusionRule": { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
-                      # `InspectionRuleSet` are removed from results.
-                    "regex": { # Message defining a custom regular expression. # Regular expression which defines the rule.
-                      "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                          # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                          # google/re2 repository on GitHub.
-                      "groupIndexes": [ # The index of the submatch to extract as findings. When not
+                    &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                      &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
                           # specified, the entire match is returned. No more than 3 may be included.
                         42,
                       ],
+                      &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                          # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                          # google/re2 repository on GitHub.
                     },
-                    "excludeInfoTypes": { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
-                      "infoTypes": [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
-                          # contained within with a finding of an infoType from this list. For
-                          # example, for `InspectionRuleSet.info_types` containing "PHONE_NUMBER"` and
-                          # `exclusion_rule` containing `exclude_info_types.info_types` with
-                          # "EMAIL_ADDRESS" the phone number findings are dropped if they overlap
-                          # with EMAIL_ADDRESS finding.
-                          # That leads to "555-222-2222@example.org" to generate only a single
-                          # finding, namely email address.
-                        { # Type of information detected by the API.
-                          "name": "A String", # Name of the information type. Either a name of your choosing when
-                              # creating a CustomInfoType, or one of the names listed
-                              # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                              # a built-in type. InfoType names should conform to the pattern
-                              # `[a-zA-Z0-9_]{1,64}`.
-                        },
-                      ],
+                    &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                        # The total length of the window cannot exceed 1000 characters. Note that
+                        # the finding itself will be included in the window, so that hotwords may
+                        # be used to match substrings of the finding itself. For example, the
+                        # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                        # adjusted upwards if the area code is known to be the local area code of
+                        # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                        # is the area code in question.
+                        # rule.
+                      &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                      &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
                     },
-                    "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
+                  },
+                  &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
+                      # `InspectionRuleSet` are removed from results.
+                    &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
                         # be used to match sensitive information specific to the data, such as a list
                         # of employee IDs or job titles.
                         #
@@ -1445,13 +1263,13 @@
                         # and digits in the unicode [Basic Multilingual
                         # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
                         # will be replaced with whitespace when scanning for matches, so the
-                        # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-                        # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
+                        # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+                        # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
                         # surrounding any match must be of a different type than the adjacent
                         # characters within the word, so letters must be next to non-letters and
-                        # digits next to non-digits. For example, the dictionary word "jen" will
-                        # match the first three letters of the text "jen123" but will return no
-                        # matches for "jennifer".
+                        # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+                        # match the first three letters of the text &quot;jen123&quot; but will return no
+                        # matches for &quot;jennifer&quot;.
                         #
                         # Dictionary words containing a large number of characters that are not
                         # letters or digits may result in unexpected findings because such characters
@@ -1460,39 +1278,82 @@
                         # the size limits of dictionaries. For dictionaries that do not fit within
                         # these constraints, consider using `LargeCustomDictionaryConfig` in the
                         # `StoredInfoType` API.
-                      "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-                        "words": [ # Words or phrases defining the dictionary. The dictionary must contain
+                      &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+                        &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
                             # at least one phrase and every phrase must contain at least 2 characters
                             # that are letters or digits. [required]
-                          "A String",
+                          &quot;A String&quot;,
                         ],
                       },
-                      "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                      &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
                           # is accepted.
-                        "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
+                        &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
                             # Example: gs://[BUCKET_NAME]/dictionary.txt
                       },
                     },
-                    "matchingType": "A String", # How the rule is applied, see MatchingType documentation for details.
+                    &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
+                      &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                          # specified, the entire match is returned. No more than 3 may be included.
+                        42,
+                      ],
+                      &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                          # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                          # google/re2 repository on GitHub.
+                    },
+                    &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
+                      &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
+                          # contained within with a finding of an infoType from this list. For
+                          # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
+                          # `exclusion_rule` containing `exclude_info_types.info_types` with
+                          # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
+                          # with EMAIL_ADDRESS finding.
+                          # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
+                          # finding, namely email address.
+                        { # Type of information detected by the API.
+                          &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                              # creating a CustomInfoType, or one of the names listed
+                              # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                              # a built-in type. InfoType names should conform to the pattern
+                              # `[a-zA-Z0-9_]{1,64}`.
+                        },
+                      ],
+                    },
+                    &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
                   },
                 },
               ],
-              "infoTypes": [ # List of infoTypes this rule set is applied to.
-                { # Type of information detected by the API.
-                  "name": "A String", # Name of the information type. Either a name of your choosing when
+            },
+          ],
+          &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
+            &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
+                # When set within `InspectJobConfig`,
+                # the maximum returned is 2000 regardless if this is set higher.
+                # When set within `InspectContentRequest`, this field is ignored.
+            &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
+              { # Max findings configuration per infoType, per content item or long
+                  # running DlpJob.
+                &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
+                &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
+                    # info_type should be provided. If InfoTypeLimit does not have an
+                    # info_type, the DLP API applies the limit against all info_types that
+                    # are found but not specified in another InfoTypeLimit.
+                  &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                       # creating a CustomInfoType, or one of the names listed
                       # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                       # a built-in type. InfoType names should conform to the pattern
                       # `[a-zA-Z0-9_]{1,64}`.
                 },
-              ],
-            },
-          ],
-          "contentOptions": [ # List of options defining data content to scan.
+              },
+            ],
+            &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
+                # When set within `InspectContentRequest`, the maximum returned is 2000
+                # regardless if this is set higher.
+          },
+          &quot;contentOptions&quot;: [ # List of options defining data content to scan.
               # If empty, text, images, and other content will be included.
-            "A String",
+            &quot;A String&quot;,
           ],
-          "infoTypes": [ # Restricts what info_types to look for. The values must correspond to
+          &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
               # InfoType values returned by ListInfoTypes or listed at
               # https://cloud.google.com/dlp/docs/infotypes-reference.
               #
@@ -1504,22 +1365,161 @@
               # run you should specify specific InfoTypes listed in the reference,
               # otherwise a default list will be used, which may change over time.
             { # Type of information detected by the API.
-              "name": "A String", # Name of the information type. Either a name of your choosing when
+              &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                   # creating a CustomInfoType, or one of the names listed
                   # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                   # a built-in type. InfoType names should conform to the pattern
                   # `[a-zA-Z0-9_]{1,64}`.
             },
           ],
+          &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
+              # POSSIBLE.
+              # See https://cloud.google.com/dlp/docs/likelihood to learn more.
+          &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
+          &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
+              # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
+            { # Custom information type provided by the user. Used to find domain-specific
+                # sensitive information configurable to the data in question.
+              &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
+                  # altered by a detection rule if the finding meets the criteria specified by
+                  # the rule. Defaults to `VERY_LIKELY` if not specified.
+              &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
+                  # infoType, when the name matches one of existing infoTypes and that infoType
+                  # is specified in `InspectContent.info_types` field. Specifying the latter
+                  # adds findings to the one detected by the system. If built-in info type is
+                  # not specified in `InspectContent.info_types` list then the name is treated
+                  # as a custom info type.
+                &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                    # creating a CustomInfoType, or one of the names listed
+                    # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                    # a built-in type. InfoType names should conform to the pattern
+                    # `[a-zA-Z0-9_]{1,64}`.
+              },
+              &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
+                &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                    # specified, the entire match is returned. No more than 3 may be included.
+                  42,
+                ],
+                &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                    # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                    # google/re2 repository on GitHub.
+              },
+              &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
+                  # Rules are applied in order that they are specified. Not supported for the
+                  # `surrogate_type` CustomInfoType.
+                { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
+                    # `CustomInfoType` to alter behavior under certain circumstances, depending
+                    # on the specific details of the rule. Not supported for the `surrogate_type`
+                    # custom infoType.
+                  &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+                      # proximity of hotwords.
+                    &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                        # part of a detection rule.
+                      &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
+                          # levels. For example, if a finding would be `POSSIBLE` without the
+                          # detection rule and `relative_likelihood` is 1, then it is upgraded to
+                          # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
+                          # Likelihood may never drop below `VERY_UNLIKELY` or exceed
+                          # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
+                          # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
+                          # a final likelihood of `LIKELY`.
+                      &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
+                    },
+                    &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                      &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                          # specified, the entire match is returned. No more than 3 may be included.
+                        42,
+                      ],
+                      &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                          # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                          # google/re2 repository on GitHub.
+                    },
+                    &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                        # The total length of the window cannot exceed 1000 characters. Note that
+                        # the finding itself will be included in the window, so that hotwords may
+                        # be used to match substrings of the finding itself. For example, the
+                        # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                        # adjusted upwards if the area code is known to be the local area code of
+                        # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                        # is the area code in question.
+                        # rule.
+                      &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                      &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
+                    },
+                  },
+                },
+              ],
+              &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
+                  # to be returned. It still can be used for rules matching.
+              &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
+                  # be used to match sensitive information specific to the data, such as a list
+                  # of employee IDs or job titles.
+                  #
+                  # Dictionary words are case-insensitive and all characters other than letters
+                  # and digits in the unicode [Basic Multilingual
+                  # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
+                  # will be replaced with whitespace when scanning for matches, so the
+                  # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+                  # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
+                  # surrounding any match must be of a different type than the adjacent
+                  # characters within the word, so letters must be next to non-letters and
+                  # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+                  # match the first three letters of the text &quot;jen123&quot; but will return no
+                  # matches for &quot;jennifer&quot;.
+                  #
+                  # Dictionary words containing a large number of characters that are not
+                  # letters or digits may result in unexpected findings because such characters
+                  # are treated as whitespace. The
+                  # [limits](https://cloud.google.com/dlp/limits) page contains details about
+                  # the size limits of dictionaries. For dictionaries that do not fit within
+                  # these constraints, consider using `LargeCustomDictionaryConfig` in the
+                  # `StoredInfoType` API.
+                &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+                  &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
+                      # at least one phrase and every phrase must contain at least 2 characters
+                      # that are letters or digits. [required]
+                    &quot;A String&quot;,
+                  ],
+                },
+                &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                    # is accepted.
+                  &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
+                      # Example: gs://[BUCKET_NAME]/dictionary.txt
+                },
+              },
+              &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
+                  # `InspectDataSource`. Not currently supported in `InspectContent`.
+                &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
+                    # `organizations/433245324/storedInfoTypes/432452342` or
+                    # `projects/project-id/storedInfoTypes/432452342`.
+                &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
+                    # inspection was created. Output-only field, populated by the system.
+              },
+              &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
+                  # support reversing.
+                  # such as
+                  # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
+                  # These types of transformations are
+                  # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
+                  # output. This should be used in conjunction with a field on the
+                  # transformation such as `surrogate_info_type`. This CustomInfoType does
+                  # not support the use of `detection_rules`.
+              },
+            },
+          ],
         },
-        "createTime": "A String", # Output only. The creation timestamp of an inspectTemplate.
-        "name": "A String", # Output only. The template name.
+        &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of an inspectTemplate.
+        &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of an inspectTemplate.
+        &quot;name&quot;: &quot;A String&quot;, # Output only. The template name.
             #
             # The template will have one of the following formats:
             # `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR
             # `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`;
+        &quot;description&quot;: &quot;A String&quot;, # Short description (max 256 chars).
       },
     ],
+    &quot;nextPageToken&quot;: &quot;A String&quot;, # If the next page is available then the next page token to be used
+        # in following ListInspectTemplates request.
   }</pre>
 </div>
 
@@ -1532,7 +1532,7 @@
   previous_response: The response from the request for the previous page. (required)
 
 Returns:
-  A request object that you can call 'execute()' on to request the next
+  A request object that you can call &#x27;execute()&#x27; on to request the next
   page. Returns None if there are no more items in the collection.
     </pre>
 </div>
@@ -1550,212 +1550,38 @@
     The object takes the form of:
 
 { # Request message for UpdateInspectTemplate.
-    "inspectTemplate": { # The inspectTemplate contains a configuration (set of types of sensitive data # New InspectTemplate value.
+    &quot;inspectTemplate&quot;: { # The inspectTemplate contains a configuration (set of types of sensitive data # New InspectTemplate value.
         # to be detected) to be used anywhere you otherwise would normally specify
         # InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
         # to learn more.
-      "updateTime": "A String", # Output only. The last update timestamp of an inspectTemplate.
-      "displayName": "A String", # Display name (max 256 chars).
-      "description": "A String", # Short description (max 256 chars).
-      "inspectConfig": { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
+      &quot;displayName&quot;: &quot;A String&quot;, # Display name (max 256 chars).
+      &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
           # When used with redactContent only info_types and min_likelihood are currently
           # used.
-        "excludeInfoTypes": True or False, # When true, excludes type information of the findings.
-        "limits": { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
-          "maxFindingsPerRequest": 42, # Max number of findings that will be returned per request/job.
-              # When set within `InspectContentRequest`, the maximum returned is 2000
-              # regardless if this is set higher.
-          "maxFindingsPerInfoType": [ # Configuration of findings limit given for specified infoTypes.
-            { # Max findings configuration per infoType, per content item or long
-                # running DlpJob.
-              "infoType": { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
-                  # info_type should be provided. If InfoTypeLimit does not have an
-                  # info_type, the DLP API applies the limit against all info_types that
-                  # are found but not specified in another InfoTypeLimit.
-                "name": "A String", # Name of the information type. Either a name of your choosing when
+        &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
+            # included in the response; see Finding.quote.
+        &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
+            # Exclusion rules, contained in the set are executed in the end, other
+            # rules are executed in the order they are specified for each info type.
+          { # Rule set for modifying a set of infoTypes to alter behavior under certain
+              # circumstances, depending on the specific details of the rules within the set.
+            &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
+              { # Type of information detected by the API.
+                &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                     # creating a CustomInfoType, or one of the names listed
                     # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                     # a built-in type. InfoType names should conform to the pattern
                     # `[a-zA-Z0-9_]{1,64}`.
               },
-              "maxFindings": 42, # Max findings limit for the given infoType.
-            },
-          ],
-          "maxFindingsPerItem": 42, # Max number of findings that will be returned for each item scanned.
-              # When set within `InspectJobConfig`,
-              # the maximum returned is 2000 regardless if this is set higher.
-              # When set within `InspectContentRequest`, this field is ignored.
-        },
-        "minLikelihood": "A String", # Only returns findings equal or above this threshold. The default is
-            # POSSIBLE.
-            # See https://cloud.google.com/dlp/docs/likelihood to learn more.
-        "customInfoTypes": [ # CustomInfoTypes provided by the user. See
-            # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
-          { # Custom information type provided by the user. Used to find domain-specific
-              # sensitive information configurable to the data in question.
-            "regex": { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
-              "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                  # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                  # google/re2 repository on GitHub.
-              "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                  # specified, the entire match is returned. No more than 3 may be included.
-                42,
-              ],
-            },
-            "surrogateType": { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
-                # support reversing.
-                # such as
-                # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
-                # These types of transformations are
-                # those that perform pseudonymization, thereby producing a "surrogate" as
-                # output. This should be used in conjunction with a field on the
-                # transformation such as `surrogate_info_type`. This CustomInfoType does
-                # not support the use of `detection_rules`.
-            },
-            "infoType": { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
-                # infoType, when the name matches one of existing infoTypes and that infoType
-                # is specified in `InspectContent.info_types` field. Specifying the latter
-                # adds findings to the one detected by the system. If built-in info type is
-                # not specified in `InspectContent.info_types` list then the name is treated
-                # as a custom info type.
-              "name": "A String", # Name of the information type. Either a name of your choosing when
-                  # creating a CustomInfoType, or one of the names listed
-                  # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                  # a built-in type. InfoType names should conform to the pattern
-                  # `[a-zA-Z0-9_]{1,64}`.
-            },
-            "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
-                # be used to match sensitive information specific to the data, such as a list
-                # of employee IDs or job titles.
-                #
-                # Dictionary words are case-insensitive and all characters other than letters
-                # and digits in the unicode [Basic Multilingual
-                # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
-                # will be replaced with whitespace when scanning for matches, so the
-                # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-                # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
-                # surrounding any match must be of a different type than the adjacent
-                # characters within the word, so letters must be next to non-letters and
-                # digits next to non-digits. For example, the dictionary word "jen" will
-                # match the first three letters of the text "jen123" but will return no
-                # matches for "jennifer".
-                #
-                # Dictionary words containing a large number of characters that are not
-                # letters or digits may result in unexpected findings because such characters
-                # are treated as whitespace. The
-                # [limits](https://cloud.google.com/dlp/limits) page contains details about
-                # the size limits of dictionaries. For dictionaries that do not fit within
-                # these constraints, consider using `LargeCustomDictionaryConfig` in the
-                # `StoredInfoType` API.
-              "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-                "words": [ # Words or phrases defining the dictionary. The dictionary must contain
-                    # at least one phrase and every phrase must contain at least 2 characters
-                    # that are letters or digits. [required]
-                  "A String",
-                ],
-              },
-              "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
-                  # is accepted.
-                "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
-                    # Example: gs://[BUCKET_NAME]/dictionary.txt
-              },
-            },
-            "storedType": { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
-                # `InspectDataSource`. Not currently supported in `InspectContent`.
-              "name": "A String", # Resource name of the requested `StoredInfoType`, for example
-                  # `organizations/433245324/storedInfoTypes/432452342` or
-                  # `projects/project-id/storedInfoTypes/432452342`.
-              "createTime": "A String", # Timestamp indicating when the version of the `StoredInfoType` used for
-                  # inspection was created. Output-only field, populated by the system.
-            },
-            "detectionRules": [ # Set of detection rules to apply to all findings of this CustomInfoType.
-                # Rules are applied in order that they are specified. Not supported for the
-                # `surrogate_type` CustomInfoType.
-              { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
-                  # `CustomInfoType` to alter behavior under certain circumstances, depending
-                  # on the specific details of the rule. Not supported for the `surrogate_type`
-                  # custom infoType.
-                "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
-                    # proximity of hotwords.
-                  "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                      # The total length of the window cannot exceed 1000 characters. Note that
-                      # the finding itself will be included in the window, so that hotwords may
-                      # be used to match substrings of the finding itself. For example, the
-                      # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                      # adjusted upwards if the area code is known to be the local area code of
-                      # a company office using the hotword regex "\(xxx\)", where "xxx"
-                      # is the area code in question.
-                      # rule.
-                    "windowBefore": 42, # Number of characters before the finding to consider.
-                    "windowAfter": 42, # Number of characters after the finding to consider.
-                  },
-                  "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                    "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                        # google/re2 repository on GitHub.
-                    "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                        # specified, the entire match is returned. No more than 3 may be included.
-                      42,
-                    ],
-                  },
-                  "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
-                      # part of a detection rule.
-                    "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
-                        # levels. For example, if a finding would be `POSSIBLE` without the
-                        # detection rule and `relative_likelihood` is 1, then it is upgraded to
-                        # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
-                        # Likelihood may never drop below `VERY_UNLIKELY` or exceed
-                        # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
-                        # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
-                        # a final likelihood of `LIKELY`.
-                    "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
-                  },
-                },
-              },
             ],
-            "exclusionType": "A String", # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
-                # to be returned. It still can be used for rules matching.
-            "likelihood": "A String", # Likelihood to return for this CustomInfoType. This base value can be
-                # altered by a detection rule if the finding meets the criteria specified by
-                # the rule. Defaults to `VERY_LIKELY` if not specified.
-          },
-        ],
-        "includeQuote": True or False, # When true, a contextual quote from the data that triggered a finding is
-            # included in the response; see Finding.quote.
-        "ruleSet": [ # Set of rules to apply to the findings for this InspectConfig.
-            # Exclusion rules, contained in the set are executed in the end, other
-            # rules are executed in the order they are specified for each info type.
-          { # Rule set for modifying a set of infoTypes to alter behavior under certain
-              # circumstances, depending on the specific details of the rules within the set.
-            "rules": [ # Set of rules to be applied to infoTypes. The rules are applied in order.
+            &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
               { # A single inspection rule to be applied to infoTypes, specified in
                   # `InspectionRuleSet`.
-                "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+                &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
                     # proximity of hotwords.
-                  "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                      # The total length of the window cannot exceed 1000 characters. Note that
-                      # the finding itself will be included in the window, so that hotwords may
-                      # be used to match substrings of the finding itself. For example, the
-                      # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                      # adjusted upwards if the area code is known to be the local area code of
-                      # a company office using the hotword regex "\(xxx\)", where "xxx"
-                      # is the area code in question.
-                      # rule.
-                    "windowBefore": 42, # Number of characters before the finding to consider.
-                    "windowAfter": 42, # Number of characters after the finding to consider.
-                  },
-                  "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                    "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                        # google/re2 repository on GitHub.
-                    "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                        # specified, the entire match is returned. No more than 3 may be included.
-                      42,
-                    ],
-                  },
-                  "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                  &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
                       # part of a detection rule.
-                    "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
+                    &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
                         # levels. For example, if a finding would be `POSSIBLE` without the
                         # detection rule and `relative_likelihood` is 1, then it is upgraded to
                         # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
@@ -1763,39 +1589,33 @@
                         # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
                         # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
                         # a final likelihood of `LIKELY`.
-                    "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
+                    &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
                   },
-                },
-                "exclusionRule": { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
-                    # `InspectionRuleSet` are removed from results.
-                  "regex": { # Message defining a custom regular expression. # Regular expression which defines the rule.
-                    "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                        # google/re2 repository on GitHub.
-                    "groupIndexes": [ # The index of the submatch to extract as findings. When not
+                  &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                    &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
                         # specified, the entire match is returned. No more than 3 may be included.
                       42,
                     ],
+                    &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                        # google/re2 repository on GitHub.
                   },
-                  "excludeInfoTypes": { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
-                    "infoTypes": [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
-                        # contained within with a finding of an infoType from this list. For
-                        # example, for `InspectionRuleSet.info_types` containing "PHONE_NUMBER"` and
-                        # `exclusion_rule` containing `exclude_info_types.info_types` with
-                        # "EMAIL_ADDRESS" the phone number findings are dropped if they overlap
-                        # with EMAIL_ADDRESS finding.
-                        # That leads to "555-222-2222@example.org" to generate only a single
-                        # finding, namely email address.
-                      { # Type of information detected by the API.
-                        "name": "A String", # Name of the information type. Either a name of your choosing when
-                            # creating a CustomInfoType, or one of the names listed
-                            # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                            # a built-in type. InfoType names should conform to the pattern
-                            # `[a-zA-Z0-9_]{1,64}`.
-                      },
-                    ],
+                  &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                      # The total length of the window cannot exceed 1000 characters. Note that
+                      # the finding itself will be included in the window, so that hotwords may
+                      # be used to match substrings of the finding itself. For example, the
+                      # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                      # adjusted upwards if the area code is known to be the local area code of
+                      # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                      # is the area code in question.
+                      # rule.
+                    &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                    &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
                   },
-                  "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
+                },
+                &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
+                    # `InspectionRuleSet` are removed from results.
+                  &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
                       # be used to match sensitive information specific to the data, such as a list
                       # of employee IDs or job titles.
                       #
@@ -1803,13 +1623,13 @@
                       # and digits in the unicode [Basic Multilingual
                       # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
                       # will be replaced with whitespace when scanning for matches, so the
-                      # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-                      # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
+                      # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+                      # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
                       # surrounding any match must be of a different type than the adjacent
                       # characters within the word, so letters must be next to non-letters and
-                      # digits next to non-digits. For example, the dictionary word "jen" will
-                      # match the first three letters of the text "jen123" but will return no
-                      # matches for "jennifer".
+                      # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+                      # match the first three letters of the text &quot;jen123&quot; but will return no
+                      # matches for &quot;jennifer&quot;.
                       #
                       # Dictionary words containing a large number of characters that are not
                       # letters or digits may result in unexpected findings because such characters
@@ -1818,39 +1638,82 @@
                       # the size limits of dictionaries. For dictionaries that do not fit within
                       # these constraints, consider using `LargeCustomDictionaryConfig` in the
                       # `StoredInfoType` API.
-                    "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-                      "words": [ # Words or phrases defining the dictionary. The dictionary must contain
+                    &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+                      &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
                           # at least one phrase and every phrase must contain at least 2 characters
                           # that are letters or digits. [required]
-                        "A String",
+                        &quot;A String&quot;,
                       ],
                     },
-                    "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                    &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
                         # is accepted.
-                      "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
+                      &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
                           # Example: gs://[BUCKET_NAME]/dictionary.txt
                     },
                   },
-                  "matchingType": "A String", # How the rule is applied, see MatchingType documentation for details.
+                  &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
+                    &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                        # specified, the entire match is returned. No more than 3 may be included.
+                      42,
+                    ],
+                    &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                        # google/re2 repository on GitHub.
+                  },
+                  &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
+                    &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
+                        # contained within with a finding of an infoType from this list. For
+                        # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
+                        # `exclusion_rule` containing `exclude_info_types.info_types` with
+                        # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
+                        # with EMAIL_ADDRESS finding.
+                        # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
+                        # finding, namely email address.
+                      { # Type of information detected by the API.
+                        &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                            # creating a CustomInfoType, or one of the names listed
+                            # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                            # a built-in type. InfoType names should conform to the pattern
+                            # `[a-zA-Z0-9_]{1,64}`.
+                      },
+                    ],
+                  },
+                  &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
                 },
               },
             ],
-            "infoTypes": [ # List of infoTypes this rule set is applied to.
-              { # Type of information detected by the API.
-                "name": "A String", # Name of the information type. Either a name of your choosing when
+          },
+        ],
+        &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
+          &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
+              # When set within `InspectJobConfig`,
+              # the maximum returned is 2000 regardless if this is set higher.
+              # When set within `InspectContentRequest`, this field is ignored.
+          &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
+            { # Max findings configuration per infoType, per content item or long
+                # running DlpJob.
+              &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
+              &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
+                  # info_type should be provided. If InfoTypeLimit does not have an
+                  # info_type, the DLP API applies the limit against all info_types that
+                  # are found but not specified in another InfoTypeLimit.
+                &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                     # creating a CustomInfoType, or one of the names listed
                     # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                     # a built-in type. InfoType names should conform to the pattern
                     # `[a-zA-Z0-9_]{1,64}`.
               },
-            ],
-          },
-        ],
-        "contentOptions": [ # List of options defining data content to scan.
+            },
+          ],
+          &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
+              # When set within `InspectContentRequest`, the maximum returned is 2000
+              # regardless if this is set higher.
+        },
+        &quot;contentOptions&quot;: [ # List of options defining data content to scan.
             # If empty, text, images, and other content will be included.
-          "A String",
+          &quot;A String&quot;,
         ],
-        "infoTypes": [ # Restricts what info_types to look for. The values must correspond to
+        &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
             # InfoType values returned by ListInfoTypes or listed at
             # https://cloud.google.com/dlp/docs/infotypes-reference.
             #
@@ -1862,22 +1725,159 @@
             # run you should specify specific InfoTypes listed in the reference,
             # otherwise a default list will be used, which may change over time.
           { # Type of information detected by the API.
-            "name": "A String", # Name of the information type. Either a name of your choosing when
+            &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                 # creating a CustomInfoType, or one of the names listed
                 # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                 # a built-in type. InfoType names should conform to the pattern
                 # `[a-zA-Z0-9_]{1,64}`.
           },
         ],
+        &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
+            # POSSIBLE.
+            # See https://cloud.google.com/dlp/docs/likelihood to learn more.
+        &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
+        &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
+            # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
+          { # Custom information type provided by the user. Used to find domain-specific
+              # sensitive information configurable to the data in question.
+            &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
+                # altered by a detection rule if the finding meets the criteria specified by
+                # the rule. Defaults to `VERY_LIKELY` if not specified.
+            &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
+                # infoType, when the name matches one of existing infoTypes and that infoType
+                # is specified in `InspectContent.info_types` field. Specifying the latter
+                # adds findings to the one detected by the system. If built-in info type is
+                # not specified in `InspectContent.info_types` list then the name is treated
+                # as a custom info type.
+              &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                  # creating a CustomInfoType, or one of the names listed
+                  # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                  # a built-in type. InfoType names should conform to the pattern
+                  # `[a-zA-Z0-9_]{1,64}`.
+            },
+            &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
+              &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                  # specified, the entire match is returned. No more than 3 may be included.
+                42,
+              ],
+              &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                  # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                  # google/re2 repository on GitHub.
+            },
+            &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
+                # Rules are applied in order that they are specified. Not supported for the
+                # `surrogate_type` CustomInfoType.
+              { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
+                  # `CustomInfoType` to alter behavior under certain circumstances, depending
+                  # on the specific details of the rule. Not supported for the `surrogate_type`
+                  # custom infoType.
+                &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+                    # proximity of hotwords.
+                  &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                      # part of a detection rule.
+                    &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
+                        # levels. For example, if a finding would be `POSSIBLE` without the
+                        # detection rule and `relative_likelihood` is 1, then it is upgraded to
+                        # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
+                        # Likelihood may never drop below `VERY_UNLIKELY` or exceed
+                        # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
+                        # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
+                        # a final likelihood of `LIKELY`.
+                    &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
+                  },
+                  &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                    &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                        # specified, the entire match is returned. No more than 3 may be included.
+                      42,
+                    ],
+                    &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                        # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                        # google/re2 repository on GitHub.
+                  },
+                  &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                      # The total length of the window cannot exceed 1000 characters. Note that
+                      # the finding itself will be included in the window, so that hotwords may
+                      # be used to match substrings of the finding itself. For example, the
+                      # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                      # adjusted upwards if the area code is known to be the local area code of
+                      # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                      # is the area code in question.
+                      # rule.
+                    &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                    &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
+                  },
+                },
+              },
+            ],
+            &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
+                # to be returned. It still can be used for rules matching.
+            &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
+                # be used to match sensitive information specific to the data, such as a list
+                # of employee IDs or job titles.
+                #
+                # Dictionary words are case-insensitive and all characters other than letters
+                # and digits in the unicode [Basic Multilingual
+                # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
+                # will be replaced with whitespace when scanning for matches, so the
+                # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+                # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
+                # surrounding any match must be of a different type than the adjacent
+                # characters within the word, so letters must be next to non-letters and
+                # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+                # match the first three letters of the text &quot;jen123&quot; but will return no
+                # matches for &quot;jennifer&quot;.
+                #
+                # Dictionary words containing a large number of characters that are not
+                # letters or digits may result in unexpected findings because such characters
+                # are treated as whitespace. The
+                # [limits](https://cloud.google.com/dlp/limits) page contains details about
+                # the size limits of dictionaries. For dictionaries that do not fit within
+                # these constraints, consider using `LargeCustomDictionaryConfig` in the
+                # `StoredInfoType` API.
+              &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+                &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
+                    # at least one phrase and every phrase must contain at least 2 characters
+                    # that are letters or digits. [required]
+                  &quot;A String&quot;,
+                ],
+              },
+              &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                  # is accepted.
+                &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
+                    # Example: gs://[BUCKET_NAME]/dictionary.txt
+              },
+            },
+            &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
+                # `InspectDataSource`. Not currently supported in `InspectContent`.
+              &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
+                  # `organizations/433245324/storedInfoTypes/432452342` or
+                  # `projects/project-id/storedInfoTypes/432452342`.
+              &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
+                  # inspection was created. Output-only field, populated by the system.
+            },
+            &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
+                # support reversing.
+                # such as
+                # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
+                # These types of transformations are
+                # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
+                # output. This should be used in conjunction with a field on the
+                # transformation such as `surrogate_info_type`. This CustomInfoType does
+                # not support the use of `detection_rules`.
+            },
+          },
+        ],
       },
-      "createTime": "A String", # Output only. The creation timestamp of an inspectTemplate.
-      "name": "A String", # Output only. The template name.
+      &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of an inspectTemplate.
+      &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of an inspectTemplate.
+      &quot;name&quot;: &quot;A String&quot;, # Output only. The template name.
           #
           # The template will have one of the following formats:
           # `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR
           # `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`;
+      &quot;description&quot;: &quot;A String&quot;, # Short description (max 256 chars).
     },
-    "updateMask": "A String", # Mask to control which fields get updated.
+    &quot;updateMask&quot;: &quot;A String&quot;, # Mask to control which fields get updated.
   }
 
   x__xgafv: string, V1 error format.
@@ -1892,208 +1892,34 @@
       # to be detected) to be used anywhere you otherwise would normally specify
       # InspectConfig. See https://cloud.google.com/dlp/docs/concepts-templates
       # to learn more.
-    "updateTime": "A String", # Output only. The last update timestamp of an inspectTemplate.
-    "displayName": "A String", # Display name (max 256 chars).
-    "description": "A String", # Short description (max 256 chars).
-    "inspectConfig": { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
+    &quot;displayName&quot;: &quot;A String&quot;, # Display name (max 256 chars).
+    &quot;inspectConfig&quot;: { # Configuration description of the scanning process. # The core content of the template. Configuration of the scanning process.
         # When used with redactContent only info_types and min_likelihood are currently
         # used.
-      "excludeInfoTypes": True or False, # When true, excludes type information of the findings.
-      "limits": { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
-        "maxFindingsPerRequest": 42, # Max number of findings that will be returned per request/job.
-            # When set within `InspectContentRequest`, the maximum returned is 2000
-            # regardless if this is set higher.
-        "maxFindingsPerInfoType": [ # Configuration of findings limit given for specified infoTypes.
-          { # Max findings configuration per infoType, per content item or long
-              # running DlpJob.
-            "infoType": { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
-                # info_type should be provided. If InfoTypeLimit does not have an
-                # info_type, the DLP API applies the limit against all info_types that
-                # are found but not specified in another InfoTypeLimit.
-              "name": "A String", # Name of the information type. Either a name of your choosing when
+      &quot;includeQuote&quot;: True or False, # When true, a contextual quote from the data that triggered a finding is
+          # included in the response; see Finding.quote.
+      &quot;ruleSet&quot;: [ # Set of rules to apply to the findings for this InspectConfig.
+          # Exclusion rules, contained in the set are executed in the end, other
+          # rules are executed in the order they are specified for each info type.
+        { # Rule set for modifying a set of infoTypes to alter behavior under certain
+            # circumstances, depending on the specific details of the rules within the set.
+          &quot;infoTypes&quot;: [ # List of infoTypes this rule set is applied to.
+            { # Type of information detected by the API.
+              &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                   # creating a CustomInfoType, or one of the names listed
                   # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                   # a built-in type. InfoType names should conform to the pattern
                   # `[a-zA-Z0-9_]{1,64}`.
             },
-            "maxFindings": 42, # Max findings limit for the given infoType.
-          },
-        ],
-        "maxFindingsPerItem": 42, # Max number of findings that will be returned for each item scanned.
-            # When set within `InspectJobConfig`,
-            # the maximum returned is 2000 regardless if this is set higher.
-            # When set within `InspectContentRequest`, this field is ignored.
-      },
-      "minLikelihood": "A String", # Only returns findings equal or above this threshold. The default is
-          # POSSIBLE.
-          # See https://cloud.google.com/dlp/docs/likelihood to learn more.
-      "customInfoTypes": [ # CustomInfoTypes provided by the user. See
-          # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
-        { # Custom information type provided by the user. Used to find domain-specific
-            # sensitive information configurable to the data in question.
-          "regex": { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
-            "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                # google/re2 repository on GitHub.
-            "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                # specified, the entire match is returned. No more than 3 may be included.
-              42,
-            ],
-          },
-          "surrogateType": { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
-              # support reversing.
-              # such as
-              # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
-              # These types of transformations are
-              # those that perform pseudonymization, thereby producing a "surrogate" as
-              # output. This should be used in conjunction with a field on the
-              # transformation such as `surrogate_info_type`. This CustomInfoType does
-              # not support the use of `detection_rules`.
-          },
-          "infoType": { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
-              # infoType, when the name matches one of existing infoTypes and that infoType
-              # is specified in `InspectContent.info_types` field. Specifying the latter
-              # adds findings to the one detected by the system. If built-in info type is
-              # not specified in `InspectContent.info_types` list then the name is treated
-              # as a custom info type.
-            "name": "A String", # Name of the information type. Either a name of your choosing when
-                # creating a CustomInfoType, or one of the names listed
-                # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                # a built-in type. InfoType names should conform to the pattern
-                # `[a-zA-Z0-9_]{1,64}`.
-          },
-          "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
-              # be used to match sensitive information specific to the data, such as a list
-              # of employee IDs or job titles.
-              #
-              # Dictionary words are case-insensitive and all characters other than letters
-              # and digits in the unicode [Basic Multilingual
-              # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
-              # will be replaced with whitespace when scanning for matches, so the
-              # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-              # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
-              # surrounding any match must be of a different type than the adjacent
-              # characters within the word, so letters must be next to non-letters and
-              # digits next to non-digits. For example, the dictionary word "jen" will
-              # match the first three letters of the text "jen123" but will return no
-              # matches for "jennifer".
-              #
-              # Dictionary words containing a large number of characters that are not
-              # letters or digits may result in unexpected findings because such characters
-              # are treated as whitespace. The
-              # [limits](https://cloud.google.com/dlp/limits) page contains details about
-              # the size limits of dictionaries. For dictionaries that do not fit within
-              # these constraints, consider using `LargeCustomDictionaryConfig` in the
-              # `StoredInfoType` API.
-            "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-              "words": [ # Words or phrases defining the dictionary. The dictionary must contain
-                  # at least one phrase and every phrase must contain at least 2 characters
-                  # that are letters or digits. [required]
-                "A String",
-              ],
-            },
-            "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
-                # is accepted.
-              "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
-                  # Example: gs://[BUCKET_NAME]/dictionary.txt
-            },
-          },
-          "storedType": { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
-              # `InspectDataSource`. Not currently supported in `InspectContent`.
-            "name": "A String", # Resource name of the requested `StoredInfoType`, for example
-                # `organizations/433245324/storedInfoTypes/432452342` or
-                # `projects/project-id/storedInfoTypes/432452342`.
-            "createTime": "A String", # Timestamp indicating when the version of the `StoredInfoType` used for
-                # inspection was created. Output-only field, populated by the system.
-          },
-          "detectionRules": [ # Set of detection rules to apply to all findings of this CustomInfoType.
-              # Rules are applied in order that they are specified. Not supported for the
-              # `surrogate_type` CustomInfoType.
-            { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
-                # `CustomInfoType` to alter behavior under certain circumstances, depending
-                # on the specific details of the rule. Not supported for the `surrogate_type`
-                # custom infoType.
-              "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
-                  # proximity of hotwords.
-                "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                    # The total length of the window cannot exceed 1000 characters. Note that
-                    # the finding itself will be included in the window, so that hotwords may
-                    # be used to match substrings of the finding itself. For example, the
-                    # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                    # adjusted upwards if the area code is known to be the local area code of
-                    # a company office using the hotword regex "\(xxx\)", where "xxx"
-                    # is the area code in question.
-                    # rule.
-                  "windowBefore": 42, # Number of characters before the finding to consider.
-                  "windowAfter": 42, # Number of characters after the finding to consider.
-                },
-                "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                  "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                      # google/re2 repository on GitHub.
-                  "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                      # specified, the entire match is returned. No more than 3 may be included.
-                    42,
-                  ],
-                },
-                "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
-                    # part of a detection rule.
-                  "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
-                      # levels. For example, if a finding would be `POSSIBLE` without the
-                      # detection rule and `relative_likelihood` is 1, then it is upgraded to
-                      # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
-                      # Likelihood may never drop below `VERY_UNLIKELY` or exceed
-                      # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
-                      # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
-                      # a final likelihood of `LIKELY`.
-                  "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
-                },
-              },
-            },
           ],
-          "exclusionType": "A String", # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
-              # to be returned. It still can be used for rules matching.
-          "likelihood": "A String", # Likelihood to return for this CustomInfoType. This base value can be
-              # altered by a detection rule if the finding meets the criteria specified by
-              # the rule. Defaults to `VERY_LIKELY` if not specified.
-        },
-      ],
-      "includeQuote": True or False, # When true, a contextual quote from the data that triggered a finding is
-          # included in the response; see Finding.quote.
-      "ruleSet": [ # Set of rules to apply to the findings for this InspectConfig.
-          # Exclusion rules, contained in the set are executed in the end, other
-          # rules are executed in the order they are specified for each info type.
-        { # Rule set for modifying a set of infoTypes to alter behavior under certain
-            # circumstances, depending on the specific details of the rules within the set.
-          "rules": [ # Set of rules to be applied to infoTypes. The rules are applied in order.
+          &quot;rules&quot;: [ # Set of rules to be applied to infoTypes. The rules are applied in order.
             { # A single inspection rule to be applied to infoTypes, specified in
                 # `InspectionRuleSet`.
-              "hotwordRule": { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+              &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
                   # proximity of hotwords.
-                "proximity": { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
-                    # The total length of the window cannot exceed 1000 characters. Note that
-                    # the finding itself will be included in the window, so that hotwords may
-                    # be used to match substrings of the finding itself. For example, the
-                    # certainty of a phone number regex "\(\d{3}\) \d{3}-\d{4}" could be
-                    # adjusted upwards if the area code is known to be the local area code of
-                    # a company office using the hotword regex "\(xxx\)", where "xxx"
-                    # is the area code in question.
-                    # rule.
-                  "windowBefore": 42, # Number of characters before the finding to consider.
-                  "windowAfter": 42, # Number of characters after the finding to consider.
-                },
-                "hotwordRegex": { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
-                  "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                      # google/re2 repository on GitHub.
-                  "groupIndexes": [ # The index of the submatch to extract as findings. When not
-                      # specified, the entire match is returned. No more than 3 may be included.
-                    42,
-                  ],
-                },
-                "likelihoodAdjustment": { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
                     # part of a detection rule.
-                  "relativeLikelihood": 42, # Increase or decrease the likelihood by the specified number of
+                  &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
                       # levels. For example, if a finding would be `POSSIBLE` without the
                       # detection rule and `relative_likelihood` is 1, then it is upgraded to
                       # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
@@ -2101,39 +1927,33 @@
                       # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
                       # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
                       # a final likelihood of `LIKELY`.
-                  "fixedLikelihood": "A String", # Set the likelihood of a finding to a fixed value.
+                  &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
                 },
-              },
-              "exclusionRule": { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
-                  # `InspectionRuleSet` are removed from results.
-                "regex": { # Message defining a custom regular expression. # Regular expression which defines the rule.
-                  "pattern": "A String", # Pattern defining the regular expression. Its syntax
-                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
-                      # google/re2 repository on GitHub.
-                  "groupIndexes": [ # The index of the submatch to extract as findings. When not
+                &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                  &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
                       # specified, the entire match is returned. No more than 3 may be included.
                     42,
                   ],
+                  &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                      # google/re2 repository on GitHub.
                 },
-                "excludeInfoTypes": { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
-                  "infoTypes": [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
-                      # contained within with a finding of an infoType from this list. For
-                      # example, for `InspectionRuleSet.info_types` containing "PHONE_NUMBER"` and
-                      # `exclusion_rule` containing `exclude_info_types.info_types` with
-                      # "EMAIL_ADDRESS" the phone number findings are dropped if they overlap
-                      # with EMAIL_ADDRESS finding.
-                      # That leads to "555-222-2222@example.org" to generate only a single
-                      # finding, namely email address.
-                    { # Type of information detected by the API.
-                      "name": "A String", # Name of the information type. Either a name of your choosing when
-                          # creating a CustomInfoType, or one of the names listed
-                          # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
-                          # a built-in type. InfoType names should conform to the pattern
-                          # `[a-zA-Z0-9_]{1,64}`.
-                    },
-                  ],
+                &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                    # The total length of the window cannot exceed 1000 characters. Note that
+                    # the finding itself will be included in the window, so that hotwords may
+                    # be used to match substrings of the finding itself. For example, the
+                    # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                    # adjusted upwards if the area code is known to be the local area code of
+                    # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                    # is the area code in question.
+                    # rule.
+                  &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                  &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
                 },
-                "dictionary": { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
+              },
+              &quot;exclusionRule&quot;: { # The rule that specifies conditions when findings of infoTypes specified in # Exclusion rule.
+                  # `InspectionRuleSet` are removed from results.
+                &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # Dictionary which defines the rule.
                     # be used to match sensitive information specific to the data, such as a list
                     # of employee IDs or job titles.
                     #
@@ -2141,13 +1961,13 @@
                     # and digits in the unicode [Basic Multilingual
                     # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
                     # will be replaced with whitespace when scanning for matches, so the
-                    # dictionary phrase "Sam Johnson" will match all three phrases "sam johnson",
-                    # "Sam, Johnson", and "Sam (Johnson)". Additionally, the characters
+                    # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+                    # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
                     # surrounding any match must be of a different type than the adjacent
                     # characters within the word, so letters must be next to non-letters and
-                    # digits next to non-digits. For example, the dictionary word "jen" will
-                    # match the first three letters of the text "jen123" but will return no
-                    # matches for "jennifer".
+                    # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+                    # match the first three letters of the text &quot;jen123&quot; but will return no
+                    # matches for &quot;jennifer&quot;.
                     #
                     # Dictionary words containing a large number of characters that are not
                     # letters or digits may result in unexpected findings because such characters
@@ -2156,39 +1976,82 @@
                     # the size limits of dictionaries. For dictionaries that do not fit within
                     # these constraints, consider using `LargeCustomDictionaryConfig` in the
                     # `StoredInfoType` API.
-                  "wordList": { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
-                    "words": [ # Words or phrases defining the dictionary. The dictionary must contain
+                  &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+                    &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
                         # at least one phrase and every phrase must contain at least 2 characters
                         # that are letters or digits. [required]
-                      "A String",
+                      &quot;A String&quot;,
                     ],
                   },
-                  "cloudStoragePath": { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                  &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
                       # is accepted.
-                    "path": "A String", # A url representing a file or path (no wildcards) in Cloud Storage.
+                    &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
                         # Example: gs://[BUCKET_NAME]/dictionary.txt
                   },
                 },
-                "matchingType": "A String", # How the rule is applied, see MatchingType documentation for details.
+                &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression which defines the rule.
+                  &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                      # specified, the entire match is returned. No more than 3 may be included.
+                    42,
+                  ],
+                  &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                      # google/re2 repository on GitHub.
+                },
+                &quot;excludeInfoTypes&quot;: { # List of exclude infoTypes. # Set of infoTypes for which findings would affect this rule.
+                  &quot;infoTypes&quot;: [ # InfoType list in ExclusionRule rule drops a finding when it overlaps or
+                      # contained within with a finding of an infoType from this list. For
+                      # example, for `InspectionRuleSet.info_types` containing &quot;PHONE_NUMBER&quot;` and
+                      # `exclusion_rule` containing `exclude_info_types.info_types` with
+                      # &quot;EMAIL_ADDRESS&quot; the phone number findings are dropped if they overlap
+                      # with EMAIL_ADDRESS finding.
+                      # That leads to &quot;555-222-2222@example.org&quot; to generate only a single
+                      # finding, namely email address.
+                    { # Type of information detected by the API.
+                      &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                          # creating a CustomInfoType, or one of the names listed
+                          # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                          # a built-in type. InfoType names should conform to the pattern
+                          # `[a-zA-Z0-9_]{1,64}`.
+                    },
+                  ],
+                },
+                &quot;matchingType&quot;: &quot;A String&quot;, # How the rule is applied, see MatchingType documentation for details.
               },
             },
           ],
-          "infoTypes": [ # List of infoTypes this rule set is applied to.
-            { # Type of information detected by the API.
-              "name": "A String", # Name of the information type. Either a name of your choosing when
+        },
+      ],
+      &quot;limits&quot;: { # Configuration to control the number of findings returned. # Configuration to control the number of findings returned.
+        &quot;maxFindingsPerItem&quot;: 42, # Max number of findings that will be returned for each item scanned.
+            # When set within `InspectJobConfig`,
+            # the maximum returned is 2000 regardless if this is set higher.
+            # When set within `InspectContentRequest`, this field is ignored.
+        &quot;maxFindingsPerInfoType&quot;: [ # Configuration of findings limit given for specified infoTypes.
+          { # Max findings configuration per infoType, per content item or long
+              # running DlpJob.
+            &quot;maxFindings&quot;: 42, # Max findings limit for the given infoType.
+            &quot;infoType&quot;: { # Type of information detected by the API. # Type of information the findings limit applies to. Only one limit per
+                # info_type should be provided. If InfoTypeLimit does not have an
+                # info_type, the DLP API applies the limit against all info_types that
+                # are found but not specified in another InfoTypeLimit.
+              &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
                   # creating a CustomInfoType, or one of the names listed
                   # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
                   # a built-in type. InfoType names should conform to the pattern
                   # `[a-zA-Z0-9_]{1,64}`.
             },
-          ],
-        },
-      ],
-      "contentOptions": [ # List of options defining data content to scan.
+          },
+        ],
+        &quot;maxFindingsPerRequest&quot;: 42, # Max number of findings that will be returned per request/job.
+            # When set within `InspectContentRequest`, the maximum returned is 2000
+            # regardless if this is set higher.
+      },
+      &quot;contentOptions&quot;: [ # List of options defining data content to scan.
           # If empty, text, images, and other content will be included.
-        "A String",
+        &quot;A String&quot;,
       ],
-      "infoTypes": [ # Restricts what info_types to look for. The values must correspond to
+      &quot;infoTypes&quot;: [ # Restricts what info_types to look for. The values must correspond to
           # InfoType values returned by ListInfoTypes or listed at
           # https://cloud.google.com/dlp/docs/infotypes-reference.
           #
@@ -2200,20 +2063,157 @@
           # run you should specify specific InfoTypes listed in the reference,
           # otherwise a default list will be used, which may change over time.
         { # Type of information detected by the API.
-          "name": "A String", # Name of the information type. Either a name of your choosing when
+          &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
               # creating a CustomInfoType, or one of the names listed
               # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
               # a built-in type. InfoType names should conform to the pattern
               # `[a-zA-Z0-9_]{1,64}`.
         },
       ],
+      &quot;minLikelihood&quot;: &quot;A String&quot;, # Only returns findings equal or above this threshold. The default is
+          # POSSIBLE.
+          # See https://cloud.google.com/dlp/docs/likelihood to learn more.
+      &quot;excludeInfoTypes&quot;: True or False, # When true, excludes type information of the findings.
+      &quot;customInfoTypes&quot;: [ # CustomInfoTypes provided by the user. See
+          # https://cloud.google.com/dlp/docs/creating-custom-infotypes to learn more.
+        { # Custom information type provided by the user. Used to find domain-specific
+            # sensitive information configurable to the data in question.
+          &quot;likelihood&quot;: &quot;A String&quot;, # Likelihood to return for this CustomInfoType. This base value can be
+              # altered by a detection rule if the finding meets the criteria specified by
+              # the rule. Defaults to `VERY_LIKELY` if not specified.
+          &quot;infoType&quot;: { # Type of information detected by the API. # CustomInfoType can either be a new infoType, or an extension of built-in
+              # infoType, when the name matches one of existing infoTypes and that infoType
+              # is specified in `InspectContent.info_types` field. Specifying the latter
+              # adds findings to the one detected by the system. If built-in info type is
+              # not specified in `InspectContent.info_types` list then the name is treated
+              # as a custom info type.
+            &quot;name&quot;: &quot;A String&quot;, # Name of the information type. Either a name of your choosing when
+                # creating a CustomInfoType, or one of the names listed
+                # at https://cloud.google.com/dlp/docs/infotypes-reference when specifying
+                # a built-in type. InfoType names should conform to the pattern
+                # `[a-zA-Z0-9_]{1,64}`.
+          },
+          &quot;regex&quot;: { # Message defining a custom regular expression. # Regular expression based CustomInfoType.
+            &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                # specified, the entire match is returned. No more than 3 may be included.
+              42,
+            ],
+            &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                # google/re2 repository on GitHub.
+          },
+          &quot;detectionRules&quot;: [ # Set of detection rules to apply to all findings of this CustomInfoType.
+              # Rules are applied in order that they are specified. Not supported for the
+              # `surrogate_type` CustomInfoType.
+            { # Deprecated; use `InspectionRuleSet` instead. Rule for modifying a
+                # `CustomInfoType` to alter behavior under certain circumstances, depending
+                # on the specific details of the rule. Not supported for the `surrogate_type`
+                # custom infoType.
+              &quot;hotwordRule&quot;: { # The rule that adjusts the likelihood of findings within a certain # Hotword-based detection rule.
+                  # proximity of hotwords.
+                &quot;likelihoodAdjustment&quot;: { # Message for specifying an adjustment to the likelihood of a finding as # Likelihood adjustment to apply to all matching findings.
+                    # part of a detection rule.
+                  &quot;relativeLikelihood&quot;: 42, # Increase or decrease the likelihood by the specified number of
+                      # levels. For example, if a finding would be `POSSIBLE` without the
+                      # detection rule and `relative_likelihood` is 1, then it is upgraded to
+                      # `LIKELY`, while a value of -1 would downgrade it to `UNLIKELY`.
+                      # Likelihood may never drop below `VERY_UNLIKELY` or exceed
+                      # `VERY_LIKELY`, so applying an adjustment of 1 followed by an
+                      # adjustment of -1 when base likelihood is `VERY_LIKELY` will result in
+                      # a final likelihood of `LIKELY`.
+                  &quot;fixedLikelihood&quot;: &quot;A String&quot;, # Set the likelihood of a finding to a fixed value.
+                },
+                &quot;hotwordRegex&quot;: { # Message defining a custom regular expression. # Regular expression pattern defining what qualifies as a hotword.
+                  &quot;groupIndexes&quot;: [ # The index of the submatch to extract as findings. When not
+                      # specified, the entire match is returned. No more than 3 may be included.
+                    42,
+                  ],
+                  &quot;pattern&quot;: &quot;A String&quot;, # Pattern defining the regular expression. Its syntax
+                      # (https://github.com/google/re2/wiki/Syntax) can be found under the
+                      # google/re2 repository on GitHub.
+                },
+                &quot;proximity&quot;: { # Message for specifying a window around a finding to apply a detection # Proximity of the finding within which the entire hotword must reside.
+                    # The total length of the window cannot exceed 1000 characters. Note that
+                    # the finding itself will be included in the window, so that hotwords may
+                    # be used to match substrings of the finding itself. For example, the
+                    # certainty of a phone number regex &quot;\(\d{3}\) \d{3}-\d{4}&quot; could be
+                    # adjusted upwards if the area code is known to be the local area code of
+                    # a company office using the hotword regex &quot;\(xxx\)&quot;, where &quot;xxx&quot;
+                    # is the area code in question.
+                    # rule.
+                  &quot;windowBefore&quot;: 42, # Number of characters before the finding to consider.
+                  &quot;windowAfter&quot;: 42, # Number of characters after the finding to consider.
+                },
+              },
+            },
+          ],
+          &quot;exclusionType&quot;: &quot;A String&quot;, # If set to EXCLUSION_TYPE_EXCLUDE this infoType will not cause a finding
+              # to be returned. It still can be used for rules matching.
+          &quot;dictionary&quot;: { # Custom information type based on a dictionary of words or phrases. This can # A list of phrases to detect as a CustomInfoType.
+              # be used to match sensitive information specific to the data, such as a list
+              # of employee IDs or job titles.
+              #
+              # Dictionary words are case-insensitive and all characters other than letters
+              # and digits in the unicode [Basic Multilingual
+              # Plane](https://en.wikipedia.org/wiki/Plane_%28Unicode%29#Basic_Multilingual_Plane)
+              # will be replaced with whitespace when scanning for matches, so the
+              # dictionary phrase &quot;Sam Johnson&quot; will match all three phrases &quot;sam johnson&quot;,
+              # &quot;Sam, Johnson&quot;, and &quot;Sam (Johnson)&quot;. Additionally, the characters
+              # surrounding any match must be of a different type than the adjacent
+              # characters within the word, so letters must be next to non-letters and
+              # digits next to non-digits. For example, the dictionary word &quot;jen&quot; will
+              # match the first three letters of the text &quot;jen123&quot; but will return no
+              # matches for &quot;jennifer&quot;.
+              #
+              # Dictionary words containing a large number of characters that are not
+              # letters or digits may result in unexpected findings because such characters
+              # are treated as whitespace. The
+              # [limits](https://cloud.google.com/dlp/limits) page contains details about
+              # the size limits of dictionaries. For dictionaries that do not fit within
+              # these constraints, consider using `LargeCustomDictionaryConfig` in the
+              # `StoredInfoType` API.
+            &quot;wordList&quot;: { # Message defining a list of words or phrases to search for in the data. # List of words or phrases to search for.
+              &quot;words&quot;: [ # Words or phrases defining the dictionary. The dictionary must contain
+                  # at least one phrase and every phrase must contain at least 2 characters
+                  # that are letters or digits. [required]
+                &quot;A String&quot;,
+              ],
+            },
+            &quot;cloudStoragePath&quot;: { # Message representing a single file or path in Cloud Storage. # Newline-delimited file of words in Cloud Storage. Only a single file
+                # is accepted.
+              &quot;path&quot;: &quot;A String&quot;, # A url representing a file or path (no wildcards) in Cloud Storage.
+                  # Example: gs://[BUCKET_NAME]/dictionary.txt
+            },
+          },
+          &quot;storedType&quot;: { # A reference to a StoredInfoType to use with scanning. # Load an existing `StoredInfoType` resource for use in
+              # `InspectDataSource`. Not currently supported in `InspectContent`.
+            &quot;name&quot;: &quot;A String&quot;, # Resource name of the requested `StoredInfoType`, for example
+                # `organizations/433245324/storedInfoTypes/432452342` or
+                # `projects/project-id/storedInfoTypes/432452342`.
+            &quot;createTime&quot;: &quot;A String&quot;, # Timestamp indicating when the version of the `StoredInfoType` used for
+                # inspection was created. Output-only field, populated by the system.
+          },
+          &quot;surrogateType&quot;: { # Message for detecting output from deidentification transformations # Message for detecting output from deidentification transformations that
+              # support reversing.
+              # such as
+              # [`CryptoReplaceFfxFpeConfig`](/dlp/docs/reference/rest/v2/organizations.deidentifyTemplates#cryptoreplaceffxfpeconfig).
+              # These types of transformations are
+              # those that perform pseudonymization, thereby producing a &quot;surrogate&quot; as
+              # output. This should be used in conjunction with a field on the
+              # transformation such as `surrogate_info_type`. This CustomInfoType does
+              # not support the use of `detection_rules`.
+          },
+        },
+      ],
     },
-    "createTime": "A String", # Output only. The creation timestamp of an inspectTemplate.
-    "name": "A String", # Output only. The template name.
+    &quot;createTime&quot;: &quot;A String&quot;, # Output only. The creation timestamp of an inspectTemplate.
+    &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The last update timestamp of an inspectTemplate.
+    &quot;name&quot;: &quot;A String&quot;, # Output only. The template name.
         #
         # The template will have one of the following formats:
         # `projects/PROJECT_ID/inspectTemplates/TEMPLATE_ID` OR
         # `organizations/ORGANIZATION_ID/inspectTemplates/TEMPLATE_ID`;
+    &quot;description&quot;: &quot;A String&quot;, # Short description (max 256 chars).
   }</pre>
 </div>