google-cloud-recaptcha_enterprise-v1 1.2.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/google/cloud/recaptcha_enterprise/v1/recaptcha_enterprise_service/client.rb +211 -4
- data/lib/google/cloud/recaptcha_enterprise/v1/version.rb +1 -1
- data/lib/google/cloud/recaptchaenterprise/v1/recaptchaenterprise_pb.rb +6 -1
- data/lib/google/cloud/recaptchaenterprise/v1/recaptchaenterprise_services_pb.rb +8 -0
- data/proto_docs/google/api/client.rb +20 -0
- data/proto_docs/google/cloud/recaptchaenterprise/v1/recaptchaenterprise.rb +98 -24
- metadata +3 -3
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 1c1d769ac5d10c4511cbd4f9c5d5b7df4e3182306a7295f8cb267dc96ad8c59e
         | 
| 4 | 
            +
              data.tar.gz: 9451a5fc04fffc756a9f1c85e10980c7751b0fd4d131e63d9ae24c70187c1df7
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: fff933eb3c7fe0955ebc0ff39bbffdb63cd5465b0a7cb42b7d42ed41a18ce0ce48002a41bcbfb2c39b631d5a0b27b1e8727a18c35eadbdffff591ce8ef7b692a
         | 
| 7 | 
            +
              data.tar.gz: 689bd9cb4c6554792b73870f460b0bdb9657e9adb894a9e8e5c20f80e9e70b24728095506d34c285bd397fbbf31a293359e0a9e91390a0848b9146859134d4ec
         | 
| @@ -289,8 +289,8 @@ module Google | |
| 289 289 | 
             
                        #     Required. The resource name of the Assessment, in the format
         | 
| 290 290 | 
             
                        #     `projects/{project}/assessments/{assessment}`.
         | 
| 291 291 | 
             
                        #   @param annotation [::Google::Cloud::RecaptchaEnterprise::V1::AnnotateAssessmentRequest::Annotation]
         | 
| 292 | 
            -
                        #     Optional. The annotation that is assigned to the Event. This field can
         | 
| 293 | 
            -
                        #      | 
| 292 | 
            +
                        #     Optional. The annotation that is assigned to the Event. This field can be
         | 
| 293 | 
            +
                        #     left empty to provide reasons that apply to an event without concluding
         | 
| 294 294 | 
             
                        #     whether the event is legitimate or fraudulent.
         | 
| 295 295 | 
             
                        #   @param reasons [::Array<::Google::Cloud::RecaptchaEnterprise::V1::AnnotateAssessmentRequest::Reason>]
         | 
| 296 296 | 
             
                        #     Optional. Reasons for the annotation that are assigned to the event.
         | 
| @@ -480,7 +480,7 @@ module Google | |
| 480 480 | 
             
                        #   the default parameter values, pass an empty Hash as a request object (see above).
         | 
| 481 481 | 
             
                        #
         | 
| 482 482 | 
             
                        #   @param parent [::String]
         | 
| 483 | 
            -
                        #     Required. The name of the project that contains the keys that  | 
| 483 | 
            +
                        #     Required. The name of the project that contains the keys that is
         | 
| 484 484 | 
             
                        #     listed, in the format `projects/{project}`.
         | 
| 485 485 | 
             
                        #   @param page_size [::Integer]
         | 
| 486 486 | 
             
                        #     Optional. The maximum number of keys to return. Default is 10. Max limit is
         | 
| @@ -1104,6 +1104,199 @@ module Google | |
| 1104 1104 | 
             
                          raise ::Google::Cloud::Error.from_error(e)
         | 
| 1105 1105 | 
             
                        end
         | 
| 1106 1106 |  | 
| 1107 | 
            +
                        ##
         | 
| 1108 | 
            +
                        # Removes an IP override from a key. The following restrictions hold:
         | 
| 1109 | 
            +
                        # * If the IP isn't found in an existing IP override, a `NOT_FOUND` error
         | 
| 1110 | 
            +
                        # is returned.
         | 
| 1111 | 
            +
                        # * If the IP is found in an existing IP override, but the
         | 
| 1112 | 
            +
                        # override type does not match, a `NOT_FOUND` error is returned.
         | 
| 1113 | 
            +
                        #
         | 
| 1114 | 
            +
                        # @overload remove_ip_override(request, options = nil)
         | 
| 1115 | 
            +
                        #   Pass arguments to `remove_ip_override` via a request object, either of type
         | 
| 1116 | 
            +
                        #   {::Google::Cloud::RecaptchaEnterprise::V1::RemoveIpOverrideRequest} or an equivalent Hash.
         | 
| 1117 | 
            +
                        #
         | 
| 1118 | 
            +
                        #   @param request [::Google::Cloud::RecaptchaEnterprise::V1::RemoveIpOverrideRequest, ::Hash]
         | 
| 1119 | 
            +
                        #     A request object representing the call parameters. Required. To specify no
         | 
| 1120 | 
            +
                        #     parameters, or to keep all the default parameter values, pass an empty Hash.
         | 
| 1121 | 
            +
                        #   @param options [::Gapic::CallOptions, ::Hash]
         | 
| 1122 | 
            +
                        #     Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
         | 
| 1123 | 
            +
                        #
         | 
| 1124 | 
            +
                        # @overload remove_ip_override(name: nil, ip_override_data: nil)
         | 
| 1125 | 
            +
                        #   Pass arguments to `remove_ip_override` via keyword arguments. Note that at
         | 
| 1126 | 
            +
                        #   least one keyword argument is required. To specify no parameters, or to keep all
         | 
| 1127 | 
            +
                        #   the default parameter values, pass an empty Hash as a request object (see above).
         | 
| 1128 | 
            +
                        #
         | 
| 1129 | 
            +
                        #   @param name [::String]
         | 
| 1130 | 
            +
                        #     Required. The name of the key from which the IP override is removed, in the
         | 
| 1131 | 
            +
                        #     format `projects/{project}/keys/{key}`.
         | 
| 1132 | 
            +
                        #   @param ip_override_data [::Google::Cloud::RecaptchaEnterprise::V1::IpOverrideData, ::Hash]
         | 
| 1133 | 
            +
                        #     Required. IP override to be removed from the key.
         | 
| 1134 | 
            +
                        #
         | 
| 1135 | 
            +
                        # @yield [response, operation] Access the result along with the RPC operation
         | 
| 1136 | 
            +
                        # @yieldparam response [::Google::Cloud::RecaptchaEnterprise::V1::RemoveIpOverrideResponse]
         | 
| 1137 | 
            +
                        # @yieldparam operation [::GRPC::ActiveCall::Operation]
         | 
| 1138 | 
            +
                        #
         | 
| 1139 | 
            +
                        # @return [::Google::Cloud::RecaptchaEnterprise::V1::RemoveIpOverrideResponse]
         | 
| 1140 | 
            +
                        #
         | 
| 1141 | 
            +
                        # @raise [::Google::Cloud::Error] if the RPC is aborted.
         | 
| 1142 | 
            +
                        #
         | 
| 1143 | 
            +
                        # @example Basic example
         | 
| 1144 | 
            +
                        #   require "google/cloud/recaptcha_enterprise/v1"
         | 
| 1145 | 
            +
                        #
         | 
| 1146 | 
            +
                        #   # Create a client object. The client can be reused for multiple calls.
         | 
| 1147 | 
            +
                        #   client = Google::Cloud::RecaptchaEnterprise::V1::RecaptchaEnterpriseService::Client.new
         | 
| 1148 | 
            +
                        #
         | 
| 1149 | 
            +
                        #   # Create a request. To set request fields, pass in keyword arguments.
         | 
| 1150 | 
            +
                        #   request = Google::Cloud::RecaptchaEnterprise::V1::RemoveIpOverrideRequest.new
         | 
| 1151 | 
            +
                        #
         | 
| 1152 | 
            +
                        #   # Call the remove_ip_override method.
         | 
| 1153 | 
            +
                        #   result = client.remove_ip_override request
         | 
| 1154 | 
            +
                        #
         | 
| 1155 | 
            +
                        #   # The returned object is of type Google::Cloud::RecaptchaEnterprise::V1::RemoveIpOverrideResponse.
         | 
| 1156 | 
            +
                        #   p result
         | 
| 1157 | 
            +
                        #
         | 
| 1158 | 
            +
                        def remove_ip_override request, options = nil
         | 
| 1159 | 
            +
                          raise ::ArgumentError, "request must be provided" if request.nil?
         | 
| 1160 | 
            +
             | 
| 1161 | 
            +
                          request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::RecaptchaEnterprise::V1::RemoveIpOverrideRequest
         | 
| 1162 | 
            +
             | 
| 1163 | 
            +
                          # Converts hash and nil to an options object
         | 
| 1164 | 
            +
                          options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
         | 
| 1165 | 
            +
             | 
| 1166 | 
            +
                          # Customize the options with defaults
         | 
| 1167 | 
            +
                          metadata = @config.rpcs.remove_ip_override.metadata.to_h
         | 
| 1168 | 
            +
             | 
| 1169 | 
            +
                          # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
         | 
| 1170 | 
            +
                          metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
         | 
| 1171 | 
            +
                            lib_name: @config.lib_name, lib_version: @config.lib_version,
         | 
| 1172 | 
            +
                            gapic_version: ::Google::Cloud::RecaptchaEnterprise::V1::VERSION
         | 
| 1173 | 
            +
                          metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
         | 
| 1174 | 
            +
                          metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
         | 
| 1175 | 
            +
             | 
| 1176 | 
            +
                          header_params = {}
         | 
| 1177 | 
            +
                          if request.name
         | 
| 1178 | 
            +
                            header_params["name"] = request.name
         | 
| 1179 | 
            +
                          end
         | 
| 1180 | 
            +
             | 
| 1181 | 
            +
                          request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
         | 
| 1182 | 
            +
                          metadata[:"x-goog-request-params"] ||= request_params_header
         | 
| 1183 | 
            +
             | 
| 1184 | 
            +
                          options.apply_defaults timeout:      @config.rpcs.remove_ip_override.timeout,
         | 
| 1185 | 
            +
                                                 metadata:     metadata,
         | 
| 1186 | 
            +
                                                 retry_policy: @config.rpcs.remove_ip_override.retry_policy
         | 
| 1187 | 
            +
             | 
| 1188 | 
            +
                          options.apply_defaults timeout:      @config.timeout,
         | 
| 1189 | 
            +
                                                 metadata:     @config.metadata,
         | 
| 1190 | 
            +
                                                 retry_policy: @config.retry_policy
         | 
| 1191 | 
            +
             | 
| 1192 | 
            +
                          @recaptcha_enterprise_service_stub.call_rpc :remove_ip_override, request, options: options do |response, operation|
         | 
| 1193 | 
            +
                            yield response, operation if block_given?
         | 
| 1194 | 
            +
                            return response
         | 
| 1195 | 
            +
                          end
         | 
| 1196 | 
            +
                        rescue ::GRPC::BadStatus => e
         | 
| 1197 | 
            +
                          raise ::Google::Cloud::Error.from_error(e)
         | 
| 1198 | 
            +
                        end
         | 
| 1199 | 
            +
             | 
| 1200 | 
            +
                        ##
         | 
| 1201 | 
            +
                        # Lists all IP overrides for a key.
         | 
| 1202 | 
            +
                        #
         | 
| 1203 | 
            +
                        # @overload list_ip_overrides(request, options = nil)
         | 
| 1204 | 
            +
                        #   Pass arguments to `list_ip_overrides` via a request object, either of type
         | 
| 1205 | 
            +
                        #   {::Google::Cloud::RecaptchaEnterprise::V1::ListIpOverridesRequest} or an equivalent Hash.
         | 
| 1206 | 
            +
                        #
         | 
| 1207 | 
            +
                        #   @param request [::Google::Cloud::RecaptchaEnterprise::V1::ListIpOverridesRequest, ::Hash]
         | 
| 1208 | 
            +
                        #     A request object representing the call parameters. Required. To specify no
         | 
| 1209 | 
            +
                        #     parameters, or to keep all the default parameter values, pass an empty Hash.
         | 
| 1210 | 
            +
                        #   @param options [::Gapic::CallOptions, ::Hash]
         | 
| 1211 | 
            +
                        #     Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
         | 
| 1212 | 
            +
                        #
         | 
| 1213 | 
            +
                        # @overload list_ip_overrides(parent: nil, page_size: nil, page_token: nil)
         | 
| 1214 | 
            +
                        #   Pass arguments to `list_ip_overrides` via keyword arguments. Note that at
         | 
| 1215 | 
            +
                        #   least one keyword argument is required. To specify no parameters, or to keep all
         | 
| 1216 | 
            +
                        #   the default parameter values, pass an empty Hash as a request object (see above).
         | 
| 1217 | 
            +
                        #
         | 
| 1218 | 
            +
                        #   @param parent [::String]
         | 
| 1219 | 
            +
                        #     Required. The parent key for which the IP overrides are listed, in the
         | 
| 1220 | 
            +
                        #     format `projects/{project}/keys/{key}`.
         | 
| 1221 | 
            +
                        #   @param page_size [::Integer]
         | 
| 1222 | 
            +
                        #     Optional. The maximum number of overrides to return. Default is 10. Max
         | 
| 1223 | 
            +
                        #     limit is 100. If the number of overrides is less than the page_size, all
         | 
| 1224 | 
            +
                        #     overrides are returned. If the page size is more than 100, it is coerced to
         | 
| 1225 | 
            +
                        #     100.
         | 
| 1226 | 
            +
                        #   @param page_token [::String]
         | 
| 1227 | 
            +
                        #     Optional. The next_page_token value returned from a previous
         | 
| 1228 | 
            +
                        #     ListIpOverridesRequest, if any.
         | 
| 1229 | 
            +
                        #
         | 
| 1230 | 
            +
                        # @yield [response, operation] Access the result along with the RPC operation
         | 
| 1231 | 
            +
                        # @yieldparam response [::Gapic::PagedEnumerable<::Google::Cloud::RecaptchaEnterprise::V1::IpOverrideData>]
         | 
| 1232 | 
            +
                        # @yieldparam operation [::GRPC::ActiveCall::Operation]
         | 
| 1233 | 
            +
                        #
         | 
| 1234 | 
            +
                        # @return [::Gapic::PagedEnumerable<::Google::Cloud::RecaptchaEnterprise::V1::IpOverrideData>]
         | 
| 1235 | 
            +
                        #
         | 
| 1236 | 
            +
                        # @raise [::Google::Cloud::Error] if the RPC is aborted.
         | 
| 1237 | 
            +
                        #
         | 
| 1238 | 
            +
                        # @example Basic example
         | 
| 1239 | 
            +
                        #   require "google/cloud/recaptcha_enterprise/v1"
         | 
| 1240 | 
            +
                        #
         | 
| 1241 | 
            +
                        #   # Create a client object. The client can be reused for multiple calls.
         | 
| 1242 | 
            +
                        #   client = Google::Cloud::RecaptchaEnterprise::V1::RecaptchaEnterpriseService::Client.new
         | 
| 1243 | 
            +
                        #
         | 
| 1244 | 
            +
                        #   # Create a request. To set request fields, pass in keyword arguments.
         | 
| 1245 | 
            +
                        #   request = Google::Cloud::RecaptchaEnterprise::V1::ListIpOverridesRequest.new
         | 
| 1246 | 
            +
                        #
         | 
| 1247 | 
            +
                        #   # Call the list_ip_overrides method.
         | 
| 1248 | 
            +
                        #   result = client.list_ip_overrides request
         | 
| 1249 | 
            +
                        #
         | 
| 1250 | 
            +
                        #   # The returned object is of type Gapic::PagedEnumerable. You can iterate
         | 
| 1251 | 
            +
                        #   # over elements, and API calls will be issued to fetch pages as needed.
         | 
| 1252 | 
            +
                        #   result.each do |item|
         | 
| 1253 | 
            +
                        #     # Each element is of type ::Google::Cloud::RecaptchaEnterprise::V1::IpOverrideData.
         | 
| 1254 | 
            +
                        #     p item
         | 
| 1255 | 
            +
                        #   end
         | 
| 1256 | 
            +
                        #
         | 
| 1257 | 
            +
                        def list_ip_overrides request, options = nil
         | 
| 1258 | 
            +
                          raise ::ArgumentError, "request must be provided" if request.nil?
         | 
| 1259 | 
            +
             | 
| 1260 | 
            +
                          request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::RecaptchaEnterprise::V1::ListIpOverridesRequest
         | 
| 1261 | 
            +
             | 
| 1262 | 
            +
                          # Converts hash and nil to an options object
         | 
| 1263 | 
            +
                          options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
         | 
| 1264 | 
            +
             | 
| 1265 | 
            +
                          # Customize the options with defaults
         | 
| 1266 | 
            +
                          metadata = @config.rpcs.list_ip_overrides.metadata.to_h
         | 
| 1267 | 
            +
             | 
| 1268 | 
            +
                          # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
         | 
| 1269 | 
            +
                          metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
         | 
| 1270 | 
            +
                            lib_name: @config.lib_name, lib_version: @config.lib_version,
         | 
| 1271 | 
            +
                            gapic_version: ::Google::Cloud::RecaptchaEnterprise::V1::VERSION
         | 
| 1272 | 
            +
                          metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
         | 
| 1273 | 
            +
                          metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
         | 
| 1274 | 
            +
             | 
| 1275 | 
            +
                          header_params = {}
         | 
| 1276 | 
            +
                          if request.parent
         | 
| 1277 | 
            +
                            header_params["parent"] = request.parent
         | 
| 1278 | 
            +
                          end
         | 
| 1279 | 
            +
             | 
| 1280 | 
            +
                          request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
         | 
| 1281 | 
            +
                          metadata[:"x-goog-request-params"] ||= request_params_header
         | 
| 1282 | 
            +
             | 
| 1283 | 
            +
                          options.apply_defaults timeout:      @config.rpcs.list_ip_overrides.timeout,
         | 
| 1284 | 
            +
                                                 metadata:     metadata,
         | 
| 1285 | 
            +
                                                 retry_policy: @config.rpcs.list_ip_overrides.retry_policy
         | 
| 1286 | 
            +
             | 
| 1287 | 
            +
                          options.apply_defaults timeout:      @config.timeout,
         | 
| 1288 | 
            +
                                                 metadata:     @config.metadata,
         | 
| 1289 | 
            +
                                                 retry_policy: @config.retry_policy
         | 
| 1290 | 
            +
             | 
| 1291 | 
            +
                          @recaptcha_enterprise_service_stub.call_rpc :list_ip_overrides, request, options: options do |response, operation|
         | 
| 1292 | 
            +
                            response = ::Gapic::PagedEnumerable.new @recaptcha_enterprise_service_stub, :list_ip_overrides, request, response, operation, options
         | 
| 1293 | 
            +
                            yield response, operation if block_given?
         | 
| 1294 | 
            +
                            return response
         | 
| 1295 | 
            +
                          end
         | 
| 1296 | 
            +
                        rescue ::GRPC::BadStatus => e
         | 
| 1297 | 
            +
                          raise ::Google::Cloud::Error.from_error(e)
         | 
| 1298 | 
            +
                        end
         | 
| 1299 | 
            +
             | 
| 1107 1300 | 
             
                        ##
         | 
| 1108 1301 | 
             
                        # Get some aggregated metrics for a Key. This data can be used to build
         | 
| 1109 1302 | 
             
                        # dashboards.
         | 
| @@ -1213,7 +1406,7 @@ module Google | |
| 1213 1406 | 
             
                        #   the default parameter values, pass an empty Hash as a request object (see above).
         | 
| 1214 1407 | 
             
                        #
         | 
| 1215 1408 | 
             
                        #   @param parent [::String]
         | 
| 1216 | 
            -
                        #     Required. The name of the project this policy  | 
| 1409 | 
            +
                        #     Required. The name of the project this policy applies to, in the format
         | 
| 1217 1410 | 
             
                        #     `projects/{project}`.
         | 
| 1218 1411 | 
             
                        #   @param firewall_policy [::Google::Cloud::RecaptchaEnterprise::V1::FirewallPolicy, ::Hash]
         | 
| 1219 1412 | 
             
                        #     Required. Information to create the policy.
         | 
| @@ -2260,6 +2453,16 @@ module Google | |
| 2260 2453 | 
             
                            #
         | 
| 2261 2454 | 
             
                            attr_reader :add_ip_override
         | 
| 2262 2455 | 
             
                            ##
         | 
| 2456 | 
            +
                            # RPC-specific configuration for `remove_ip_override`
         | 
| 2457 | 
            +
                            # @return [::Gapic::Config::Method]
         | 
| 2458 | 
            +
                            #
         | 
| 2459 | 
            +
                            attr_reader :remove_ip_override
         | 
| 2460 | 
            +
                            ##
         | 
| 2461 | 
            +
                            # RPC-specific configuration for `list_ip_overrides`
         | 
| 2462 | 
            +
                            # @return [::Gapic::Config::Method]
         | 
| 2463 | 
            +
                            #
         | 
| 2464 | 
            +
                            attr_reader :list_ip_overrides
         | 
| 2465 | 
            +
                            ##
         | 
| 2263 2466 | 
             
                            # RPC-specific configuration for `get_metrics`
         | 
| 2264 2467 | 
             
                            # @return [::Gapic::Config::Method]
         | 
| 2265 2468 | 
             
                            #
         | 
| @@ -2332,6 +2535,10 @@ module Google | |
| 2332 2535 | 
             
                              @migrate_key = ::Gapic::Config::Method.new migrate_key_config
         | 
| 2333 2536 | 
             
                              add_ip_override_config = parent_rpcs.add_ip_override if parent_rpcs.respond_to? :add_ip_override
         | 
| 2334 2537 | 
             
                              @add_ip_override = ::Gapic::Config::Method.new add_ip_override_config
         | 
| 2538 | 
            +
                              remove_ip_override_config = parent_rpcs.remove_ip_override if parent_rpcs.respond_to? :remove_ip_override
         | 
| 2539 | 
            +
                              @remove_ip_override = ::Gapic::Config::Method.new remove_ip_override_config
         | 
| 2540 | 
            +
                              list_ip_overrides_config = parent_rpcs.list_ip_overrides if parent_rpcs.respond_to? :list_ip_overrides
         | 
| 2541 | 
            +
                              @list_ip_overrides = ::Gapic::Config::Method.new list_ip_overrides_config
         | 
| 2335 2542 | 
             
                              get_metrics_config = parent_rpcs.get_metrics if parent_rpcs.respond_to? :get_metrics
         | 
| 2336 2543 | 
             
                              @get_metrics = ::Gapic::Config::Method.new get_metrics_config
         | 
| 2337 2544 | 
             
                              create_firewall_policy_config = parent_rpcs.create_firewall_policy if parent_rpcs.respond_to? :create_firewall_policy
         | 
| @@ -15,7 +15,7 @@ require 'google/protobuf/timestamp_pb' | |
| 15 15 | 
             
            require 'google/rpc/status_pb'
         | 
| 16 16 |  | 
| 17 17 |  | 
| 18 | 
            -
            descriptor_data = "\n=google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto\x12#google.cloud.recaptchaenterprise.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1bgoogle/api/field_info.proto\x1a\x19google/api/resource.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\xa8\x01\n\x17\x43reateAssessmentRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12H\n\nassessment\x18\x02 \x01(\x0b\x32/.google.cloud.recaptchaenterprise.v1.AssessmentB\x03\xe0\x41\x02\"\x92\x05\n\x10TransactionEvent\x12\x63\n\nevent_type\x18\x01 \x01(\x0e\x32J.google.cloud.recaptchaenterprise.v1.TransactionEvent.TransactionEventTypeB\x03\xe0\x41\x01\x12\x13\n\x06reason\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05value\x18\x03 \x01(\x01\x42\x03\xe0\x41\x01\x12\x33\n\nevent_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\"\xba\x03\n\x14TransactionEventType\x12&\n\"TRANSACTION_EVENT_TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10MERCHANT_APPROVE\x10\x01\x12\x11\n\rMERCHANT_DENY\x10\x02\x12\x11\n\rMANUAL_REVIEW\x10\x03\x12\x11\n\rAUTHORIZATION\x10\x04\x12\x19\n\x15\x41UTHORIZATION_DECLINE\x10\x05\x12\x13\n\x0fPAYMENT_CAPTURE\x10\x06\x12\x1b\n\x17PAYMENT_CAPTURE_DECLINE\x10\x07\x12\n\n\x06\x43\x41NCEL\x10\x08\x12\x16\n\x12\x43HARGEBACK_INQUIRY\x10\t\x12\x14\n\x10\x43HARGEBACK_ALERT\x10\n\x12\x16\n\x12\x46RAUD_NOTIFICATION\x10\x0b\x12\x0e\n\nCHARGEBACK\x10\x0c\x12\x1c\n\x18\x43HARGEBACK_REPRESENTMENT\x10\r\x12\x16\n\x12\x43HARGEBACK_REVERSE\x10\x0e\x12\x12\n\x0eREFUND_REQUEST\x10\x0f\x12\x12\n\x0eREFUND_DECLINE\x10\x10\x12\n\n\x06REFUND\x10\x11\x12\x12\n\x0eREFUND_REVERSE\x10\x12\"\x83\x07\n\x19\x41nnotateAssessmentRequest\x12\x43\n\x04name\x18\x01 \x01(\tB5\xe0\x41\x02\xfa\x41/\n-recaptchaenterprise.googleapis.com/Assessment\x12\x62\n\nannotation\x18\x02 \x01(\x0e\x32I.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest.AnnotationB\x03\xe0\x41\x01\x12[\n\x07reasons\x18\x03 \x03(\x0e\x32\x45.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest.ReasonB\x03\xe0\x41\x01\x12\x17\n\naccount_id\x18\x07 \x01(\tB\x03\xe0\x41\x01\x12\x1e\n\x11hashed_account_id\x18\x04 \x01(\x0c\x42\x03\xe0\x41\x01\x12U\n\x11transaction_event\x18\x05 \x01(\x0b\x32\x35.google.cloud.recaptchaenterprise.v1.TransactionEventB\x03\xe0\x41\x01\"~\n\nAnnotation\x12\x1a\n\x16\x41NNOTATION_UNSPECIFIED\x10\x00\x12\x0e\n\nLEGITIMATE\x10\x01\x12\x0e\n\nFRAUDULENT\x10\x02\x12\x18\n\x10PASSWORD_CORRECT\x10\x03\x1a\x02\x08\x01\x12\x1a\n\x12PASSWORD_INCORRECT\x10\x04\x1a\x02\x08\x01\"\xcf\x02\n\x06Reason\x12\x16\n\x12REASON_UNSPECIFIED\x10\x00\x12\x0e\n\nCHARGEBACK\x10\x01\x12\x14\n\x10\x43HARGEBACK_FRAUD\x10\x08\x12\x16\n\x12\x43HARGEBACK_DISPUTE\x10\t\x12\n\n\x06REFUND\x10\n\x12\x10\n\x0cREFUND_FRAUD\x10\x0b\x12\x18\n\x14TRANSACTION_ACCEPTED\x10\x0c\x12\x18\n\x14TRANSACTION_DECLINED\x10\r\x12\x16\n\x12PAYMENT_HEURISTICS\x10\x02\x12\x18\n\x14INITIATED_TWO_FACTOR\x10\x07\x12\x15\n\x11PASSED_TWO_FACTOR\x10\x03\x12\x15\n\x11\x46\x41ILED_TWO_FACTOR\x10\x04\x12\x14\n\x10\x43ORRECT_PASSWORD\x10\x05\x12\x16\n\x12INCORRECT_PASSWORD\x10\x06\x12\x0f\n\x0bSOCIAL_SPAM\x10\x0e\"\x1c\n\x1a\x41nnotateAssessmentResponse\"\xb4\x01\n\x18\x45ndpointVerificationInfo\x12\x17\n\remail_address\x18\x01 \x01(\tH\x00\x12\x16\n\x0cphone_number\x18\x02 \x01(\tH\x00\x12\x1a\n\rrequest_token\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12?\n\x16last_verification_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x42\n\n\x08\x65ndpoint\"\xdb\x04\n\x17\x41\x63\x63ountVerificationInfo\x12U\n\tendpoints\x18\x01 \x03(\x0b\x32=.google.cloud.recaptchaenterprise.v1.EndpointVerificationInfoB\x03\xe0\x41\x01\x12\x1a\n\rlanguage_code\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12l\n\x1alatest_verification_result\x18\x07 \x01(\x0e\x32\x43.google.cloud.recaptchaenterprise.v1.AccountVerificationInfo.ResultB\x03\xe0\x41\x03\x12\x14\n\x08username\x18\x02 \x01(\tB\x02\x18\x01\"\xc8\x02\n\x06Result\x12\x16\n\x12RESULT_UNSPECIFIED\x10\x00\x12\x19\n\x15SUCCESS_USER_VERIFIED\x10\x01\x12\x1b\n\x17\x45RROR_USER_NOT_VERIFIED\x10\x02\x12$\n ERROR_SITE_ONBOARDING_INCOMPLETE\x10\x03\x12\x1f\n\x1b\x45RROR_RECIPIENT_NOT_ALLOWED\x10\x04\x12)\n%ERROR_RECIPIENT_ABUSE_LIMIT_EXHAUSTED\x10\x05\x12\x1b\n\x17\x45RROR_CRITICAL_INTERNAL\x10\x06\x12\"\n\x1e\x45RROR_CUSTOMER_QUOTA_EXHAUSTED\x10\x07\x12\x1f\n\x1b\x45RROR_VERIFICATION_BYPASSED\x10\x08\x12\x1a\n\x16\x45RROR_VERDICT_MISMATCH\x10\t\"\xcc\x01\n\x1fPrivatePasswordLeakVerification\x12\x1f\n\x12lookup_hash_prefix\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x02\x12,\n\x1f\x65ncrypted_user_credentials_hash\x18\x02 \x01(\x0c\x42\x03\xe0\x41\x01\x12*\n\x1d\x65ncrypted_leak_match_prefixes\x18\x03 \x03(\x0c\x42\x03\xe0\x41\x03\x12.\n!reencrypted_user_credentials_hash\x18\x04 \x01(\x0c\x42\x03\xe0\x41\x03\"\xa4\t\n\nAssessment\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x03\xe0\x41\x08\x12>\n\x05\x65vent\x18\x02 \x01(\x0b\x32*.google.cloud.recaptchaenterprise.v1.EventB\x03\xe0\x41\x01\x12M\n\rrisk_analysis\x18\x03 \x01(\x0b\x32\x31.google.cloud.recaptchaenterprise.v1.RiskAnalysisB\x03\xe0\x41\x03\x12S\n\x10token_properties\x18\x04 \x01(\x0b\x32\x34.google.cloud.recaptchaenterprise.v1.TokenPropertiesB\x03\xe0\x41\x03\x12_\n\x14\x61\x63\x63ount_verification\x18\x05 \x01(\x0b\x32<.google.cloud.recaptchaenterprise.v1.AccountVerificationInfoB\x03\xe0\x41\x01\x12h\n\x1b\x61\x63\x63ount_defender_assessment\x18\x06 \x01(\x0b\x32>.google.cloud.recaptchaenterprise.v1.AccountDefenderAssessmentB\x03\xe0\x41\x03\x12u\n\"private_password_leak_verification\x18\x08 \x01(\x0b\x32\x44.google.cloud.recaptchaenterprise.v1.PrivatePasswordLeakVerificationB\x03\xe0\x41\x01\x12\x66\n\x1a\x66irewall_policy_assessment\x18\n \x01(\x0b\x32=.google.cloud.recaptchaenterprise.v1.FirewallPolicyAssessmentB\x03\xe0\x41\x03\x12h\n\x1b\x66raud_prevention_assessment\x18\x0b \x01(\x0b\x32>.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessmentB\x03\xe0\x41\x03\x12M\n\rfraud_signals\x18\r \x01(\x0b\x32\x31.google.cloud.recaptchaenterprise.v1.FraudSignalsB\x03\xe0\x41\x03\x12^\n\x16phone_fraud_assessment\x18\x0c \x01(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.PhoneFraudAssessmentB\x03\xe0\x41\x03\x12_\n\x16\x61ssessment_environment\x18\x0e \x01(\x0b\x32:.google.cloud.recaptchaenterprise.v1.AssessmentEnvironmentB\x03\xe0\x41\x01:x\xea\x41u\n-recaptchaenterprise.googleapis.com/Assessment\x12+projects/{project}/assessments/{assessment}*\x0b\x61ssessments2\nassessment\"\x9e\x05\n\x05\x45vent\x12\x12\n\x05token\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08site_key\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x17\n\nuser_agent\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12$\n\x0fuser_ip_address\x18\x04 \x01(\tB\x0b\xe0\x41\x01\xe2\x8c\xcf\xd7\x08\x02\x08\x04\x12\x1c\n\x0f\x65xpected_action\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12 \n\x11hashed_account_id\x18\x06 \x01(\x0c\x42\x05\x18\x01\xe0\x41\x01\x12\x14\n\x07\x65xpress\x18\x0e \x01(\x08\x42\x03\xe0\x41\x01\x12\x1a\n\rrequested_uri\x18\x08 \x01(\tB\x03\xe0\x41\x01\x12!\n\x14waf_token_assessment\x18\t \x01(\x08\x42\x03\xe0\x41\x01\x12\x10\n\x03ja3\x18\n \x01(\tB\x03\xe0\x41\x01\x12\x14\n\x07headers\x18\x0b \x03(\tB\x03\xe0\x41\x01\x12\'\n\x1a\x66irewall_policy_evaluation\x18\x0c \x01(\x08\x42\x03\xe0\x41\x01\x12S\n\x10transaction_data\x18\r \x01(\x0b\x32\x34.google.cloud.recaptchaenterprise.v1.TransactionDataB\x03\xe0\x41\x01\x12\x45\n\tuser_info\x18\x0f \x01(\x0b\x32-.google.cloud.recaptchaenterprise.v1.UserInfoB\x03\xe0\x41\x01\x12Y\n\x10\x66raud_prevention\x18\x11 \x01(\x0e\x32:.google.cloud.recaptchaenterprise.v1.Event.FraudPreventionB\x03\xe0\x41\x01\"N\n\x0f\x46raudPrevention\x12 \n\x1c\x46RAUD_PREVENTION_UNSPECIFIED\x10\x00\x12\x0b\n\x07\x45NABLED\x10\x01\x12\x0c\n\x08\x44ISABLED\x10\x02\"\xa0\n\n\x0fTransactionData\x12\x1b\n\x0etransaction_id\x18\x0b \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0epayment_method\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08\x63\x61rd_bin\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0e\x63\x61rd_last_four\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rcurrency_code\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05value\x18\x05 \x01(\x01\x42\x03\xe0\x41\x01\x12\x1b\n\x0eshipping_value\x18\x0c \x01(\x01\x42\x03\xe0\x41\x01\x12[\n\x10shipping_address\x18\x06 \x01(\x0b\x32<.google.cloud.recaptchaenterprise.v1.TransactionData.AddressB\x03\xe0\x41\x01\x12Z\n\x0f\x62illing_address\x18\x07 \x01(\x0b\x32<.google.cloud.recaptchaenterprise.v1.TransactionData.AddressB\x03\xe0\x41\x01\x12L\n\x04user\x18\x08 \x01(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.TransactionData.UserB\x03\xe0\x41\x01\x12Q\n\tmerchants\x18\r \x03(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.TransactionData.UserB\x03\xe0\x41\x01\x12M\n\x05items\x18\x0e \x03(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.TransactionData.ItemB\x03\xe0\x41\x01\x12[\n\x0cgateway_info\x18\n \x01(\x0b\x32@.google.cloud.recaptchaenterprise.v1.TransactionData.GatewayInfoB\x03\xe0\x41\x01\x1a\xa4\x01\n\x07\x41\x64\x64ress\x12\x16\n\trecipient\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x14\n\x07\x61\x64\x64ress\x18\x02 \x03(\tB\x03\xe0\x41\x01\x12\x15\n\x08locality\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12 \n\x13\x61\x64ministrative_area\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0bregion_code\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0bpostal_code\x18\x06 \x01(\tB\x03\xe0\x41\x01\x1a\xa2\x01\n\x04User\x12\x17\n\naccount_id\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x63reation_ms\x18\x01 \x01(\x03\x42\x03\xe0\x41\x01\x12\x12\n\x05\x65mail\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0e\x65mail_verified\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12\x19\n\x0cphone_number\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0ephone_verified\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\x1a\x66\n\x04Item\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05value\x18\x02 \x01(\x01\x42\x03\xe0\x41\x01\x12\x15\n\x08quantity\x18\x03 \x01(\x03\x42\x03\xe0\x41\x01\x12 \n\x13merchant_account_id\x18\x04 \x01(\tB\x03\xe0\x41\x01\x1a\x84\x01\n\x0bGatewayInfo\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\"\n\x15gateway_response_code\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1e\n\x11\x61vs_response_code\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x1e\n\x11\x63vv_response_code\x18\x04 \x01(\tB\x03\xe0\x41\x01\x42\x11\n\x0f_transaction_id\"\xa5\x01\n\x08UserInfo\x12<\n\x13\x63reate_account_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12\x17\n\naccount_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x42\n\x08user_ids\x18\x03 \x03(\x0b\x32+.google.cloud.recaptchaenterprise.v1.UserIdB\x03\xe0\x41\x01\"`\n\x06UserId\x12\x14\n\x05\x65mail\x18\x01 \x01(\tB\x03\xe0\x41\x01H\x00\x12\x1b\n\x0cphone_number\x18\x02 \x01(\tB\x03\xe0\x41\x01H\x00\x12\x17\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x42\n\n\x08id_oneof\"\x93\x03\n\x0cRiskAnalysis\x12\x12\n\x05score\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\x12\\\n\x07reasons\x18\x02 \x03(\x0e\x32\x46.google.cloud.recaptchaenterprise.v1.RiskAnalysis.ClassificationReasonB\x03\xe0\x41\x03\x12%\n\x18\x65xtended_verdict_reasons\x18\x03 \x03(\tB\x03\xe0\x41\x03\"\xe9\x01\n\x14\x43lassificationReason\x12%\n!CLASSIFICATION_REASON_UNSPECIFIED\x10\x00\x12\x0e\n\nAUTOMATION\x10\x01\x12\x1a\n\x16UNEXPECTED_ENVIRONMENT\x10\x02\x12\x14\n\x10TOO_MUCH_TRAFFIC\x10\x03\x12\x1d\n\x19UNEXPECTED_USAGE_PATTERNS\x10\x04\x12\x18\n\x14LOW_CONFIDENCE_SCORE\x10\x05\x12\x15\n\x11SUSPECTED_CARDING\x10\x06\x12\x18\n\x14SUSPECTED_CHARGEBACK\x10\x07\"\xbb\x03\n\x0fTokenProperties\x12\x12\n\x05valid\x18\x01 \x01(\x08\x42\x03\xe0\x41\x03\x12_\n\x0einvalid_reason\x18\x02 \x01(\x0e\x32\x42.google.cloud.recaptchaenterprise.v1.TokenProperties.InvalidReasonB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x15\n\x08hostname\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12!\n\x14\x61ndroid_package_name\x18\x08 \x01(\tB\x03\xe0\x41\x03\x12\x1a\n\rios_bundle_id\x18\t \x01(\tB\x03\xe0\x41\x03\x12\x13\n\x06\x61\x63tion\x18\x05 \x01(\tB\x03\xe0\x41\x03\"\x91\x01\n\rInvalidReason\x12\x1e\n\x1aINVALID_REASON_UNSPECIFIED\x10\x00\x12\x1a\n\x16UNKNOWN_INVALID_REASON\x10\x01\x12\r\n\tMALFORMED\x10\x02\x12\x0b\n\x07\x45XPIRED\x10\x03\x12\x08\n\x04\x44UPE\x10\x04\x12\x0b\n\x07MISSING\x10\x05\x12\x11\n\rBROWSER_ERROR\x10\x06\"\xb3\x04\n\x19\x46raudPreventionAssessment\x12\x1d\n\x10transaction_risk\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\x12~\n\x19stolen_instrument_verdict\x18\x02 \x01(\x0b\x32V.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.StolenInstrumentVerdictB\x03\xe0\x41\x03\x12t\n\x14\x63\x61rd_testing_verdict\x18\x03 \x01(\x0b\x32Q.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.CardTestingVerdictB\x03\xe0\x41\x03\x12|\n\x18\x62\x65havioral_trust_verdict\x18\x04 \x01(\x0b\x32U.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.BehavioralTrustVerdictB\x03\xe0\x41\x03\x1a,\n\x17StolenInstrumentVerdict\x12\x11\n\x04risk\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\x1a\'\n\x12\x43\x61rdTestingVerdict\x12\x11\n\x04risk\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\x1a,\n\x16\x42\x65havioralTrustVerdict\x12\x12\n\x05trust\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\"\xe3\x03\n\x0c\x46raudSignals\x12X\n\x0cuser_signals\x18\x01 \x01(\x0b\x32=.google.cloud.recaptchaenterprise.v1.FraudSignals.UserSignalsB\x03\xe0\x41\x03\x12X\n\x0c\x63\x61rd_signals\x18\x02 \x01(\x0b\x32=.google.cloud.recaptchaenterprise.v1.FraudSignals.CardSignalsB\x03\xe0\x41\x03\x1aP\n\x0bUserSignals\x12$\n\x17\x61\x63tive_days_lower_bound\x18\x01 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1b\n\x0esynthetic_risk\x18\x02 \x01(\x02\x42\x03\xe0\x41\x03\x1a\xcc\x01\n\x0b\x43\x61rdSignals\x12\x61\n\x0b\x63\x61rd_labels\x18\x01 \x03(\x0e\x32G.google.cloud.recaptchaenterprise.v1.FraudSignals.CardSignals.CardLabelB\x03\xe0\x41\x03\"Z\n\tCardLabel\x12\x1a\n\x16\x43\x41RD_LABEL_UNSPECIFIED\x10\x00\x12\x0b\n\x07PREPAID\x10\x01\x12\x0b\n\x07VIRTUAL\x10\x02\x12\x17\n\x13UNEXPECTED_LOCATION\x10\x03\"\xe2\x01\n\x13SmsTollFraudVerdict\x12\x11\n\x04risk\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\x12\x61\n\x07reasons\x18\x02 \x03(\x0e\x32K.google.cloud.recaptchaenterprise.v1.SmsTollFraudVerdict.SmsTollFraudReasonB\x03\xe0\x41\x03\"U\n\x12SmsTollFraudReason\x12%\n!SMS_TOLL_FRAUD_REASON_UNSPECIFIED\x10\x00\x12\x18\n\x14INVALID_PHONE_NUMBER\x10\x01\"u\n\x14PhoneFraudAssessment\x12]\n\x16sms_toll_fraud_verdict\x18\x01 \x01(\x0b\x32\x38.google.cloud.recaptchaenterprise.v1.SmsTollFraudVerdictB\x03\xe0\x41\x03\"\xbb\x02\n\x19\x41\x63\x63ountDefenderAssessment\x12h\n\x06labels\x18\x01 \x03(\x0e\x32S.google.cloud.recaptchaenterprise.v1.AccountDefenderAssessment.AccountDefenderLabelB\x03\xe0\x41\x03\"\xb3\x01\n\x14\x41\x63\x63ountDefenderLabel\x12&\n\"ACCOUNT_DEFENDER_LABEL_UNSPECIFIED\x10\x00\x12\x11\n\rPROFILE_MATCH\x10\x01\x12\x1d\n\x19SUSPICIOUS_LOGIN_ACTIVITY\x10\x02\x12\x1f\n\x1bSUSPICIOUS_ACCOUNT_CREATION\x10\x03\x12 \n\x1cRELATED_ACCOUNTS_NUMBER_HIGH\x10\x04\"\x93\x01\n\x10\x43reateKeyRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12:\n\x03key\x18\x02 \x01(\x0b\x32(.google.cloud.recaptchaenterprise.v1.KeyB\x03\xe0\x41\x02\"\x87\x01\n\x0fListKeysRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"c\n\x10ListKeysResponse\x12\x36\n\x04keys\x18\x01 \x03(\x0b\x32(.google.cloud.recaptchaenterprise.v1.Key\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"]\n\x1eRetrieveLegacySecretKeyRequest\x12;\n\x03key\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\"M\n\rGetKeyRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\"\x84\x01\n\x10UpdateKeyRequest\x12:\n\x03key\x18\x01 \x01(\x0b\x32(.google.cloud.recaptchaenterprise.v1.KeyB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\"P\n\x10\x44\x65leteKeyRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\"\xb5\x01\n\x1b\x43reateFirewallPolicyRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12Q\n\x0f\x66irewall_policy\x18\x02 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicyB\x03\xe0\x41\x02\"\x93\x01\n\x1bListFirewallPoliciesRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\x87\x01\n\x1cListFirewallPoliciesResponse\x12N\n\x11\x66irewall_policies\x18\x01 \x03(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicy\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"c\n\x18GetFirewallPolicyRequest\x12G\n\x04name\x18\x01 \x01(\tB9\xe0\x41\x02\xfa\x41\x33\n1recaptchaenterprise.googleapis.com/FirewallPolicy\"\xa6\x01\n\x1bUpdateFirewallPolicyRequest\x12Q\n\x0f\x66irewall_policy\x18\x01 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicyB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\"f\n\x1b\x44\x65leteFirewallPolicyRequest\x12G\n\x04name\x18\x01 \x01(\tB9\xe0\x41\x02\xfa\x41\x33\n1recaptchaenterprise.googleapis.com/FirewallPolicy\"\xaf\x01\n\x1eReorderFirewallPoliciesRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12H\n\x05names\x18\x02 \x03(\tB9\xe0\x41\x02\xfa\x41\x33\n1recaptchaenterprise.googleapis.com/FirewallPolicy\"!\n\x1fReorderFirewallPoliciesResponse\"r\n\x11MigrateKeyRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\x12\x1f\n\x12skip_billing_check\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\"U\n\x11GetMetricsRequest\x12@\n\x04name\x18\x01 \x01(\tB2\xe0\x41\x02\xfa\x41,\n*recaptchaenterprise.googleapis.com/Metrics\"\xd5\x02\n\x07Metrics\x12\x14\n\x04name\x18\x04 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12H\n\rscore_metrics\x18\x02 \x03(\x0b\x32\x31.google.cloud.recaptchaenterprise.v1.ScoreMetrics\x12P\n\x11\x63hallenge_metrics\x18\x03 \x03(\x0b\x32\x35.google.cloud.recaptchaenterprise.v1.ChallengeMetrics:h\xea\x41\x65\n*recaptchaenterprise.googleapis.com/Metrics\x12%projects/{project}/keys/{key}/metrics*\x07metrics2\x07metrics\"<\n\x1fRetrieveLegacySecretKeyResponse\x12\x19\n\x11legacy_secret_key\x18\x01 \x01(\t\"\xb3\x06\n\x03Key\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12K\n\x0cweb_settings\x18\x03 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.WebKeySettingsH\x00\x12S\n\x10\x61ndroid_settings\x18\x04 \x01(\x0b\x32\x37.google.cloud.recaptchaenterprise.v1.AndroidKeySettingsH\x00\x12K\n\x0cios_settings\x18\x05 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.IOSKeySettingsH\x00\x12S\n\x10\x65xpress_settings\x18\x0b \x01(\x0b\x32\x37.google.cloud.recaptchaenterprise.v1.ExpressKeySettingsH\x00\x12I\n\x06labels\x18\x06 \x03(\x0b\x32\x34.google.cloud.recaptchaenterprise.v1.Key.LabelsEntryB\x03\xe0\x41\x01\x12\x34\n\x0b\x63reate_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12Q\n\x0ftesting_options\x18\t \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.TestingOptionsB\x03\xe0\x41\x01\x12K\n\x0cwaf_settings\x18\n \x01(\x0b\x32\x30.google.cloud.recaptchaenterprise.v1.WafSettingsB\x03\xe0\x41\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:U\xea\x41R\n&recaptchaenterprise.googleapis.com/Key\x12\x1dprojects/{project}/keys/{key}*\x04keys2\x03keyB\x13\n\x11platform_settings\"\xf2\x01\n\x0eTestingOptions\x12\x1a\n\rtesting_score\x18\x01 \x01(\x02\x42\x03\xe0\x41\x01\x12\x64\n\x11testing_challenge\x18\x02 \x01(\x0e\x32\x44.google.cloud.recaptchaenterprise.v1.TestingOptions.TestingChallengeB\x03\xe0\x41\x01\"^\n\x10TestingChallenge\x12!\n\x1dTESTING_CHALLENGE_UNSPECIFIED\x10\x00\x12\r\n\tNOCAPTCHA\x10\x01\x12\x18\n\x14UNSOLVABLE_CHALLENGE\x10\x02\"\xa4\x04\n\x0eWebKeySettings\x12\x1e\n\x11\x61llow_all_domains\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1c\n\x0f\x61llowed_domains\x18\x01 \x03(\tB\x03\xe0\x41\x01\x12\x1e\n\x11\x61llow_amp_traffic\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12\x62\n\x10integration_type\x18\x04 \x01(\x0e\x32\x43.google.cloud.recaptchaenterprise.v1.WebKeySettings.IntegrationTypeB\x03\xe0\x41\x02\x12{\n\x1d\x63hallenge_security_preference\x18\x05 \x01(\x0e\x32O.google.cloud.recaptchaenterprise.v1.WebKeySettings.ChallengeSecurityPreferenceB\x03\xe0\x41\x01\"[\n\x0fIntegrationType\x12 \n\x1cINTEGRATION_TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05SCORE\x10\x01\x12\x0c\n\x08\x43HECKBOX\x10\x02\x12\r\n\tINVISIBLE\x10\x03\"v\n\x1b\x43hallengeSecurityPreference\x12-\n)CHALLENGE_SECURITY_PREFERENCE_UNSPECIFIED\x10\x00\x12\r\n\tUSABILITY\x10\x01\x12\x0b\n\x07\x42\x41LANCE\x10\x02\x12\x0c\n\x08SECURITY\x10\x03\"\x96\x01\n\x12\x41ndroidKeySettings\x12$\n\x17\x61llow_all_package_names\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12\"\n\x15\x61llowed_package_names\x18\x01 \x03(\tB\x03\xe0\x41\x01\x12\x36\n)support_non_google_app_store_distribution\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"\xac\x01\n\x0eIOSKeySettings\x12!\n\x14\x61llow_all_bundle_ids\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1f\n\x12\x61llowed_bundle_ids\x18\x01 \x03(\tB\x03\xe0\x41\x01\x12V\n\x12\x61pple_developer_id\x18\x03 \x01(\x0b\x32\x35.google.cloud.recaptchaenterprise.v1.AppleDeveloperIdB\x03\xe0\x41\x01\"\x14\n\x12\x45xpressKeySettings\"Z\n\x10\x41ppleDeveloperId\x12\x1b\n\x0bprivate_key\x18\x01 \x01(\tB\x06\xe0\x41\x02\xe0\x41\x04\x12\x13\n\x06key_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x07team_id\x18\x03 \x01(\tB\x03\xe0\x41\x02\"\xa9\x01\n\x11ScoreDistribution\x12_\n\rscore_buckets\x18\x01 \x03(\x0b\x32H.google.cloud.recaptchaenterprise.v1.ScoreDistribution.ScoreBucketsEntry\x1a\x33\n\x11ScoreBucketsEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01\"\xab\x02\n\x0cScoreMetrics\x12O\n\x0foverall_metrics\x18\x01 \x01(\x0b\x32\x36.google.cloud.recaptchaenterprise.v1.ScoreDistribution\x12\\\n\x0e\x61\x63tion_metrics\x18\x02 \x03(\x0b\x32\x44.google.cloud.recaptchaenterprise.v1.ScoreMetrics.ActionMetricsEntry\x1al\n\x12\x41\x63tionMetricsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32\x36.google.cloud.recaptchaenterprise.v1.ScoreDistribution:\x02\x38\x01\"o\n\x10\x43hallengeMetrics\x12\x16\n\x0epageload_count\x18\x01 \x01(\x03\x12\x17\n\x0fnocaptcha_count\x18\x02 \x01(\x03\x12\x14\n\x0c\x66\x61iled_count\x18\x03 \x01(\x03\x12\x14\n\x0cpassed_count\x18\x04 \x01(\x03\"\x95\x01\n\x18\x46irewallPolicyAssessment\x12&\n\x05\x65rror\x18\x05 \x01(\x0b\x32\x12.google.rpc.StatusB\x03\xe0\x41\x03\x12Q\n\x0f\x66irewall_policy\x18\x08 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicyB\x03\xe0\x41\x03\"\x82\x06\n\x0e\x46irewallAction\x12P\n\x05\x61llow\x18\x01 \x01(\x0b\x32?.google.cloud.recaptchaenterprise.v1.FirewallAction.AllowActionH\x00\x12P\n\x05\x62lock\x18\x02 \x01(\x0b\x32?.google.cloud.recaptchaenterprise.v1.FirewallAction.BlockActionH\x00\x12t\n\x18include_recaptcha_script\x18\x06 \x01(\x0b\x32P.google.cloud.recaptchaenterprise.v1.FirewallAction.IncludeRecaptchaScriptActionH\x00\x12V\n\x08redirect\x18\x05 \x01(\x0b\x32\x42.google.cloud.recaptchaenterprise.v1.FirewallAction.RedirectActionH\x00\x12Z\n\nsubstitute\x18\x03 \x01(\x0b\x32\x44.google.cloud.recaptchaenterprise.v1.FirewallAction.SubstituteActionH\x00\x12Y\n\nset_header\x18\x04 \x01(\x0b\x32\x43.google.cloud.recaptchaenterprise.v1.FirewallAction.SetHeaderActionH\x00\x1a\r\n\x0b\x41llowAction\x1a\r\n\x0b\x42lockAction\x1a\x1e\n\x1cIncludeRecaptchaScriptAction\x1a\x10\n\x0eRedirectAction\x1a%\n\x10SubstituteAction\x12\x11\n\x04path\x18\x01 \x01(\tB\x03\xe0\x41\x01\x1a\x37\n\x0fSetHeaderAction\x12\x10\n\x03key\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05value\x18\x02 \x01(\tB\x03\xe0\x41\x01\x42\x17\n\x15\x66irewall_action_oneof\"\xc5\x02\n\x0e\x46irewallPolicy\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x11\n\x04path\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tcondition\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12I\n\x07\x61\x63tions\x18\x06 \x03(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.FirewallActionB\x03\xe0\x41\x01:\x8f\x01\xea\x41\x8b\x01\n1recaptchaenterprise.googleapis.com/FirewallPolicy\x12\x34projects/{project}/firewallpolicies/{firewallpolicy}*\x10\x66irewallPolicies2\x0e\x66irewallPolicy\"\xb6\x01\n)ListRelatedAccountGroupMembershipsRequest\x12X\n\x06parent\x18\x01 \x01(\tBH\xe0\x41\x02\xfa\x41\x42\x12@recaptchaenterprise.googleapis.com/RelatedAccountGroupMembership\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\xb4\x01\n*ListRelatedAccountGroupMembershipsResponse\x12m\n!related_account_group_memberships\x18\x01 \x03(\x0b\x32\x42.google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xa2\x01\n\x1fListRelatedAccountGroupsRequest\x12N\n\x06parent\x18\x01 \x01(\tB>\xe0\x41\x02\xfa\x41\x38\x12\x36recaptchaenterprise.googleapis.com/RelatedAccountGroup\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\x95\x01\n ListRelatedAccountGroupsResponse\x12X\n\x16related_account_groups\x18\x01 \x03(\x0b\x32\x38.google.cloud.recaptchaenterprise.v1.RelatedAccountGroup\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xdf\x01\n+SearchRelatedAccountGroupMembershipsRequest\x12\x44\n\x07project\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x17\n\naccount_id\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12 \n\x11hashed_account_id\x18\x02 \x01(\x0c\x42\x05\x18\x01\xe0\x41\x01\x12\x16\n\tpage_size\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x04 \x01(\tB\x03\xe0\x41\x01\"\xb6\x01\n,SearchRelatedAccountGroupMembershipsResponse\x12m\n!related_account_group_memberships\x18\x01 \x03(\x0b\x32\x42.google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xa8\x01\n\x14\x41\x64\x64IpOverrideRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\x12R\n\x10ip_override_data\x18\x02 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.IpOverrideDataB\x03\xe0\x41\x02\"\x17\n\x15\x41\x64\x64IpOverrideResponse\"\xc8\x02\n\x1dRelatedAccountGroupMembership\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x02\x12\x12\n\naccount_id\x18\x04 \x01(\t\x12\x1d\n\x11hashed_account_id\x18\x02 \x01(\x0c\x42\x02\x18\x01:\xdd\x01\xea\x41\xd9\x01\n@recaptchaenterprise.googleapis.com/RelatedAccountGroupMembership\x12Vprojects/{project}/relatedaccountgroups/{relatedaccountgroup}/memberships/{membership}*\x1erelatedAccountGroupMemberships2\x1drelatedAccountGroupMembership\"\xd4\x01\n\x13RelatedAccountGroup\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x02:\xa6\x01\xea\x41\xa2\x01\n6recaptchaenterprise.googleapis.com/RelatedAccountGroup\x12=projects/{project}/relatedaccountgroups/{relatedaccountgroup}*\x14relatedAccountGroups2\x13relatedAccountGroup\"\xfb\x02\n\x0bWafSettings\x12U\n\x0bwaf_service\x18\x01 \x01(\x0e\x32;.google.cloud.recaptchaenterprise.v1.WafSettings.WafServiceB\x03\xe0\x41\x02\x12U\n\x0bwaf_feature\x18\x02 \x01(\x0e\x32;.google.cloud.recaptchaenterprise.v1.WafSettings.WafFeatureB\x03\xe0\x41\x02\"o\n\nWafFeature\x12\x1b\n\x17WAF_FEATURE_UNSPECIFIED\x10\x00\x12\x12\n\x0e\x43HALLENGE_PAGE\x10\x01\x12\x11\n\rSESSION_TOKEN\x10\x02\x12\x10\n\x0c\x41\x43TION_TOKEN\x10\x03\x12\x0b\n\x07\x45XPRESS\x10\x05\"M\n\nWafService\x12\x1b\n\x17WAF_SERVICE_UNSPECIFIED\x10\x00\x12\x06\n\x02\x43\x41\x10\x01\x12\n\n\x06\x46\x41STLY\x10\x03\x12\x0e\n\nCLOUDFLARE\x10\x04\"B\n\x15\x41ssessmentEnvironment\x12\x13\n\x06\x63lient\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x14\n\x07version\x18\x02 \x01(\tB\x03\xe0\x41\x01\"\xc1\x01\n\x0eIpOverrideData\x12\x17\n\x02ip\x18\x01 \x01(\tB\x0b\xe0\x41\x02\xe2\x8c\xcf\xd7\x08\x02\x08\x04\x12\\\n\roverride_type\x18\x03 \x01(\x0e\x32@.google.cloud.recaptchaenterprise.v1.IpOverrideData.OverrideTypeB\x03\xe0\x41\x02\"8\n\x0cOverrideType\x12\x1d\n\x19OVERRIDE_TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05\x41LLOW\x10\x01\x32\xb1!\n\x1aRecaptchaEnterpriseService\x12\xce\x01\n\x10\x43reateAssessment\x12<.google.cloud.recaptchaenterprise.v1.CreateAssessmentRequest\x1a/.google.cloud.recaptchaenterprise.v1.Assessment\"K\xda\x41\x11parent,assessment\x82\xd3\xe4\x93\x02\x31\"#/v1/{parent=projects/*}/assessments:\nassessment\x12\xe0\x01\n\x12\x41nnotateAssessment\x12>.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest\x1a?.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentResponse\"I\xda\x41\x0fname,annotation\x82\xd3\xe4\x93\x02\x31\",/v1/{name=projects/*/assessments/*}:annotate:\x01*\x12\xa4\x01\n\tCreateKey\x12\x35.google.cloud.recaptchaenterprise.v1.CreateKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"6\xda\x41\nparent,key\x82\xd3\xe4\x93\x02#\"\x1c/v1/{parent=projects/*}/keys:\x03key\x12\xa6\x01\n\x08ListKeys\x12\x34.google.cloud.recaptchaenterprise.v1.ListKeysRequest\x1a\x35.google.cloud.recaptchaenterprise.v1.ListKeysResponse\"-\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v1/{parent=projects/*}/keys\x12\xe7\x01\n\x17RetrieveLegacySecretKey\x12\x43.google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyRequest\x1a\x44.google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyResponse\"A\xda\x41\x03key\x82\xd3\xe4\x93\x02\x35\x12\x33/v1/{key=projects/*/keys/*}:retrieveLegacySecretKey\x12\x93\x01\n\x06GetKey\x12\x32.google.cloud.recaptchaenterprise.v1.GetKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"+\xda\x41\x04name\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v1/{name=projects/*/keys/*}\x12\xad\x01\n\tUpdateKey\x12\x35.google.cloud.recaptchaenterprise.v1.UpdateKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"?\xda\x41\x0fkey,update_mask\x82\xd3\xe4\x93\x02\'2 /v1/{key.name=projects/*/keys/*}:\x03key\x12\x87\x01\n\tDeleteKey\x12\x35.google.cloud.recaptchaenterprise.v1.DeleteKeyRequest\x1a\x16.google.protobuf.Empty\"+\xda\x41\x04name\x82\xd3\xe4\x93\x02\x1e*\x1c/v1/{name=projects/*/keys/*}\x12\x9f\x01\n\nMigrateKey\x12\x36.google.cloud.recaptchaenterprise.v1.MigrateKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"/\x82\xd3\xe4\x93\x02)\"$/v1/{name=projects/*/keys/*}:migrate:\x01*\x12\xd5\x01\n\rAddIpOverride\x12\x39.google.cloud.recaptchaenterprise.v1.AddIpOverrideRequest\x1a:.google.cloud.recaptchaenterprise.v1.AddIpOverrideResponse\"M\xda\x41\x15name,ip_override_data\x82\xd3\xe4\x93\x02/\"*/v1/{name=projects/*/keys/*}:addIpOverride:\x01*\x12\xa7\x01\n\nGetMetrics\x12\x36.google.cloud.recaptchaenterprise.v1.GetMetricsRequest\x1a,.google.cloud.recaptchaenterprise.v1.Metrics\"3\xda\x41\x04name\x82\xd3\xe4\x93\x02&\x12$/v1/{name=projects/*/keys/*/metrics}\x12\xe9\x01\n\x14\x43reateFirewallPolicy\x12@.google.cloud.recaptchaenterprise.v1.CreateFirewallPolicyRequest\x1a\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicy\"Z\xda\x41\x16parent,firewall_policy\x82\xd3\xe4\x93\x02;\"(/v1/{parent=projects/*}/firewallpolicies:\x0f\x66irewall_policy\x12\xd6\x01\n\x14ListFirewallPolicies\x12@.google.cloud.recaptchaenterprise.v1.ListFirewallPoliciesRequest\x1a\x41.google.cloud.recaptchaenterprise.v1.ListFirewallPoliciesResponse\"9\xda\x41\x06parent\x82\xd3\xe4\x93\x02*\x12(/v1/{parent=projects/*}/firewallpolicies\x12\xc0\x01\n\x11GetFirewallPolicy\x12=.google.cloud.recaptchaenterprise.v1.GetFirewallPolicyRequest\x1a\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicy\"7\xda\x41\x04name\x82\xd3\xe4\x93\x02*\x12(/v1/{name=projects/*/firewallpolicies/*}\x12\xfe\x01\n\x14UpdateFirewallPolicy\x12@.google.cloud.recaptchaenterprise.v1.UpdateFirewallPolicyRequest\x1a\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicy\"o\xda\x41\x1b\x66irewall_policy,update_mask\x82\xd3\xe4\x93\x02K28/v1/{firewall_policy.name=projects/*/firewallpolicies/*}:\x0f\x66irewall_policy\x12\xa9\x01\n\x14\x44\x65leteFirewallPolicy\x12@.google.cloud.recaptchaenterprise.v1.DeleteFirewallPolicyRequest\x1a\x16.google.protobuf.Empty\"7\xda\x41\x04name\x82\xd3\xe4\x93\x02**(/v1/{name=projects/*/firewallpolicies/*}\x12\xf0\x01\n\x17ReorderFirewallPolicies\x12\x43.google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesRequest\x1a\x44.google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesResponse\"J\xda\x41\x0cparent,names\x82\xd3\xe4\x93\x02\x35\"0/v1/{parent=projects/*}/firewallpolicies:reorder:\x01*\x12\xe6\x01\n\x18ListRelatedAccountGroups\x12\x44.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsRequest\x1a\x45.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsResponse\"=\xda\x41\x06parent\x82\xd3\xe4\x93\x02.\x12,/v1/{parent=projects/*}/relatedaccountgroups\x12\x92\x02\n\"ListRelatedAccountGroupMemberships\x12N.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsRequest\x1aO.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsResponse\"K\xda\x41\x06parent\x82\xd3\xe4\x93\x02<\x12:/v1/{parent=projects/*/relatedaccountgroups/*}/memberships\x12\xb2\x02\n$SearchRelatedAccountGroupMemberships\x12P.google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsRequest\x1aQ.google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsResponse\"e\xda\x41\x19project,hashed_account_id\x82\xd3\xe4\x93\x02\x43\">/v1/{project=projects/*}/relatedaccountgroupmemberships:search:\x01*\x1aV\xca\x41\"recaptchaenterprise.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\x99\x02\n!com.google.recaptchaenterprise.v1B\x18RecaptchaEnterpriseProtoP\x01Z\\cloud.google.com/go/recaptchaenterprise/v2/apiv1/recaptchaenterprisepb;recaptchaenterprisepb\xa2\x02\x04GCRE\xaa\x02#Google.Cloud.RecaptchaEnterprise.V1\xca\x02#Google\\Cloud\\RecaptchaEnterprise\\V1\xea\x02&Google::Cloud::RecaptchaEnterprise::V1b\x06proto3"
         | 
| 18 | 
            +
            descriptor_data = "\n=google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto\x12#google.cloud.recaptchaenterprise.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x1bgoogle/api/field_info.proto\x1a\x19google/api/resource.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\xa8\x01\n\x17\x43reateAssessmentRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12H\n\nassessment\x18\x02 \x01(\x0b\x32/.google.cloud.recaptchaenterprise.v1.AssessmentB\x03\xe0\x41\x02\"\x92\x05\n\x10TransactionEvent\x12\x63\n\nevent_type\x18\x01 \x01(\x0e\x32J.google.cloud.recaptchaenterprise.v1.TransactionEvent.TransactionEventTypeB\x03\xe0\x41\x01\x12\x13\n\x06reason\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05value\x18\x03 \x01(\x01\x42\x03\xe0\x41\x01\x12\x33\n\nevent_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\"\xba\x03\n\x14TransactionEventType\x12&\n\"TRANSACTION_EVENT_TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10MERCHANT_APPROVE\x10\x01\x12\x11\n\rMERCHANT_DENY\x10\x02\x12\x11\n\rMANUAL_REVIEW\x10\x03\x12\x11\n\rAUTHORIZATION\x10\x04\x12\x19\n\x15\x41UTHORIZATION_DECLINE\x10\x05\x12\x13\n\x0fPAYMENT_CAPTURE\x10\x06\x12\x1b\n\x17PAYMENT_CAPTURE_DECLINE\x10\x07\x12\n\n\x06\x43\x41NCEL\x10\x08\x12\x16\n\x12\x43HARGEBACK_INQUIRY\x10\t\x12\x14\n\x10\x43HARGEBACK_ALERT\x10\n\x12\x16\n\x12\x46RAUD_NOTIFICATION\x10\x0b\x12\x0e\n\nCHARGEBACK\x10\x0c\x12\x1c\n\x18\x43HARGEBACK_REPRESENTMENT\x10\r\x12\x16\n\x12\x43HARGEBACK_REVERSE\x10\x0e\x12\x12\n\x0eREFUND_REQUEST\x10\x0f\x12\x12\n\x0eREFUND_DECLINE\x10\x10\x12\n\n\x06REFUND\x10\x11\x12\x12\n\x0eREFUND_REVERSE\x10\x12\"\x83\x07\n\x19\x41nnotateAssessmentRequest\x12\x43\n\x04name\x18\x01 \x01(\tB5\xe0\x41\x02\xfa\x41/\n-recaptchaenterprise.googleapis.com/Assessment\x12\x62\n\nannotation\x18\x02 \x01(\x0e\x32I.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest.AnnotationB\x03\xe0\x41\x01\x12[\n\x07reasons\x18\x03 \x03(\x0e\x32\x45.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest.ReasonB\x03\xe0\x41\x01\x12\x17\n\naccount_id\x18\x07 \x01(\tB\x03\xe0\x41\x01\x12\x1e\n\x11hashed_account_id\x18\x04 \x01(\x0c\x42\x03\xe0\x41\x01\x12U\n\x11transaction_event\x18\x05 \x01(\x0b\x32\x35.google.cloud.recaptchaenterprise.v1.TransactionEventB\x03\xe0\x41\x01\"~\n\nAnnotation\x12\x1a\n\x16\x41NNOTATION_UNSPECIFIED\x10\x00\x12\x0e\n\nLEGITIMATE\x10\x01\x12\x0e\n\nFRAUDULENT\x10\x02\x12\x18\n\x10PASSWORD_CORRECT\x10\x03\x1a\x02\x08\x01\x12\x1a\n\x12PASSWORD_INCORRECT\x10\x04\x1a\x02\x08\x01\"\xcf\x02\n\x06Reason\x12\x16\n\x12REASON_UNSPECIFIED\x10\x00\x12\x0e\n\nCHARGEBACK\x10\x01\x12\x14\n\x10\x43HARGEBACK_FRAUD\x10\x08\x12\x16\n\x12\x43HARGEBACK_DISPUTE\x10\t\x12\n\n\x06REFUND\x10\n\x12\x10\n\x0cREFUND_FRAUD\x10\x0b\x12\x18\n\x14TRANSACTION_ACCEPTED\x10\x0c\x12\x18\n\x14TRANSACTION_DECLINED\x10\r\x12\x16\n\x12PAYMENT_HEURISTICS\x10\x02\x12\x18\n\x14INITIATED_TWO_FACTOR\x10\x07\x12\x15\n\x11PASSED_TWO_FACTOR\x10\x03\x12\x15\n\x11\x46\x41ILED_TWO_FACTOR\x10\x04\x12\x14\n\x10\x43ORRECT_PASSWORD\x10\x05\x12\x16\n\x12INCORRECT_PASSWORD\x10\x06\x12\x0f\n\x0bSOCIAL_SPAM\x10\x0e\"\x1c\n\x1a\x41nnotateAssessmentResponse\"\xb4\x01\n\x18\x45ndpointVerificationInfo\x12\x17\n\remail_address\x18\x01 \x01(\tH\x00\x12\x16\n\x0cphone_number\x18\x02 \x01(\tH\x00\x12\x1a\n\rrequest_token\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12?\n\x16last_verification_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x42\n\n\x08\x65ndpoint\"\xdb\x04\n\x17\x41\x63\x63ountVerificationInfo\x12U\n\tendpoints\x18\x01 \x03(\x0b\x32=.google.cloud.recaptchaenterprise.v1.EndpointVerificationInfoB\x03\xe0\x41\x01\x12\x1a\n\rlanguage_code\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12l\n\x1alatest_verification_result\x18\x07 \x01(\x0e\x32\x43.google.cloud.recaptchaenterprise.v1.AccountVerificationInfo.ResultB\x03\xe0\x41\x03\x12\x14\n\x08username\x18\x02 \x01(\tB\x02\x18\x01\"\xc8\x02\n\x06Result\x12\x16\n\x12RESULT_UNSPECIFIED\x10\x00\x12\x19\n\x15SUCCESS_USER_VERIFIED\x10\x01\x12\x1b\n\x17\x45RROR_USER_NOT_VERIFIED\x10\x02\x12$\n ERROR_SITE_ONBOARDING_INCOMPLETE\x10\x03\x12\x1f\n\x1b\x45RROR_RECIPIENT_NOT_ALLOWED\x10\x04\x12)\n%ERROR_RECIPIENT_ABUSE_LIMIT_EXHAUSTED\x10\x05\x12\x1b\n\x17\x45RROR_CRITICAL_INTERNAL\x10\x06\x12\"\n\x1e\x45RROR_CUSTOMER_QUOTA_EXHAUSTED\x10\x07\x12\x1f\n\x1b\x45RROR_VERIFICATION_BYPASSED\x10\x08\x12\x1a\n\x16\x45RROR_VERDICT_MISMATCH\x10\t\"\xcc\x01\n\x1fPrivatePasswordLeakVerification\x12\x1f\n\x12lookup_hash_prefix\x18\x01 \x01(\x0c\x42\x03\xe0\x41\x02\x12,\n\x1f\x65ncrypted_user_credentials_hash\x18\x02 \x01(\x0c\x42\x03\xe0\x41\x01\x12*\n\x1d\x65ncrypted_leak_match_prefixes\x18\x03 \x03(\x0c\x42\x03\xe0\x41\x03\x12.\n!reencrypted_user_credentials_hash\x18\x04 \x01(\x0c\x42\x03\xe0\x41\x03\"\xa4\t\n\nAssessment\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x03\xe0\x41\x08\x12>\n\x05\x65vent\x18\x02 \x01(\x0b\x32*.google.cloud.recaptchaenterprise.v1.EventB\x03\xe0\x41\x01\x12M\n\rrisk_analysis\x18\x03 \x01(\x0b\x32\x31.google.cloud.recaptchaenterprise.v1.RiskAnalysisB\x03\xe0\x41\x03\x12S\n\x10token_properties\x18\x04 \x01(\x0b\x32\x34.google.cloud.recaptchaenterprise.v1.TokenPropertiesB\x03\xe0\x41\x03\x12_\n\x14\x61\x63\x63ount_verification\x18\x05 \x01(\x0b\x32<.google.cloud.recaptchaenterprise.v1.AccountVerificationInfoB\x03\xe0\x41\x01\x12h\n\x1b\x61\x63\x63ount_defender_assessment\x18\x06 \x01(\x0b\x32>.google.cloud.recaptchaenterprise.v1.AccountDefenderAssessmentB\x03\xe0\x41\x03\x12u\n\"private_password_leak_verification\x18\x08 \x01(\x0b\x32\x44.google.cloud.recaptchaenterprise.v1.PrivatePasswordLeakVerificationB\x03\xe0\x41\x01\x12\x66\n\x1a\x66irewall_policy_assessment\x18\n \x01(\x0b\x32=.google.cloud.recaptchaenterprise.v1.FirewallPolicyAssessmentB\x03\xe0\x41\x03\x12h\n\x1b\x66raud_prevention_assessment\x18\x0b \x01(\x0b\x32>.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessmentB\x03\xe0\x41\x03\x12M\n\rfraud_signals\x18\r \x01(\x0b\x32\x31.google.cloud.recaptchaenterprise.v1.FraudSignalsB\x03\xe0\x41\x03\x12^\n\x16phone_fraud_assessment\x18\x0c \x01(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.PhoneFraudAssessmentB\x03\xe0\x41\x03\x12_\n\x16\x61ssessment_environment\x18\x0e \x01(\x0b\x32:.google.cloud.recaptchaenterprise.v1.AssessmentEnvironmentB\x03\xe0\x41\x01:x\xea\x41u\n-recaptchaenterprise.googleapis.com/Assessment\x12+projects/{project}/assessments/{assessment}*\x0b\x61ssessments2\nassessment\"\x9e\x05\n\x05\x45vent\x12\x12\n\x05token\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08site_key\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x17\n\nuser_agent\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12$\n\x0fuser_ip_address\x18\x04 \x01(\tB\x0b\xe0\x41\x01\xe2\x8c\xcf\xd7\x08\x02\x08\x04\x12\x1c\n\x0f\x65xpected_action\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12 \n\x11hashed_account_id\x18\x06 \x01(\x0c\x42\x05\x18\x01\xe0\x41\x01\x12\x14\n\x07\x65xpress\x18\x0e \x01(\x08\x42\x03\xe0\x41\x01\x12\x1a\n\rrequested_uri\x18\x08 \x01(\tB\x03\xe0\x41\x01\x12!\n\x14waf_token_assessment\x18\t \x01(\x08\x42\x03\xe0\x41\x01\x12\x10\n\x03ja3\x18\n \x01(\tB\x03\xe0\x41\x01\x12\x14\n\x07headers\x18\x0b \x03(\tB\x03\xe0\x41\x01\x12\'\n\x1a\x66irewall_policy_evaluation\x18\x0c \x01(\x08\x42\x03\xe0\x41\x01\x12S\n\x10transaction_data\x18\r \x01(\x0b\x32\x34.google.cloud.recaptchaenterprise.v1.TransactionDataB\x03\xe0\x41\x01\x12\x45\n\tuser_info\x18\x0f \x01(\x0b\x32-.google.cloud.recaptchaenterprise.v1.UserInfoB\x03\xe0\x41\x01\x12Y\n\x10\x66raud_prevention\x18\x11 \x01(\x0e\x32:.google.cloud.recaptchaenterprise.v1.Event.FraudPreventionB\x03\xe0\x41\x01\"N\n\x0f\x46raudPrevention\x12 \n\x1c\x46RAUD_PREVENTION_UNSPECIFIED\x10\x00\x12\x0b\n\x07\x45NABLED\x10\x01\x12\x0c\n\x08\x44ISABLED\x10\x02\"\xa0\n\n\x0fTransactionData\x12\x1b\n\x0etransaction_id\x18\x0b \x01(\tH\x00\x88\x01\x01\x12\x1b\n\x0epayment_method\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x15\n\x08\x63\x61rd_bin\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0e\x63\x61rd_last_four\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x1a\n\rcurrency_code\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05value\x18\x05 \x01(\x01\x42\x03\xe0\x41\x01\x12\x1b\n\x0eshipping_value\x18\x0c \x01(\x01\x42\x03\xe0\x41\x01\x12[\n\x10shipping_address\x18\x06 \x01(\x0b\x32<.google.cloud.recaptchaenterprise.v1.TransactionData.AddressB\x03\xe0\x41\x01\x12Z\n\x0f\x62illing_address\x18\x07 \x01(\x0b\x32<.google.cloud.recaptchaenterprise.v1.TransactionData.AddressB\x03\xe0\x41\x01\x12L\n\x04user\x18\x08 \x01(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.TransactionData.UserB\x03\xe0\x41\x01\x12Q\n\tmerchants\x18\r \x03(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.TransactionData.UserB\x03\xe0\x41\x01\x12M\n\x05items\x18\x0e \x03(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.TransactionData.ItemB\x03\xe0\x41\x01\x12[\n\x0cgateway_info\x18\n \x01(\x0b\x32@.google.cloud.recaptchaenterprise.v1.TransactionData.GatewayInfoB\x03\xe0\x41\x01\x1a\xa4\x01\n\x07\x41\x64\x64ress\x12\x16\n\trecipient\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x14\n\x07\x61\x64\x64ress\x18\x02 \x03(\tB\x03\xe0\x41\x01\x12\x15\n\x08locality\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12 \n\x13\x61\x64ministrative_area\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0bregion_code\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0bpostal_code\x18\x06 \x01(\tB\x03\xe0\x41\x01\x1a\xa2\x01\n\x04User\x12\x17\n\naccount_id\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0b\x63reation_ms\x18\x01 \x01(\x03\x42\x03\xe0\x41\x01\x12\x12\n\x05\x65mail\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0e\x65mail_verified\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12\x19\n\x0cphone_number\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1b\n\x0ephone_verified\x18\x05 \x01(\x08\x42\x03\xe0\x41\x01\x1a\x66\n\x04Item\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05value\x18\x02 \x01(\x01\x42\x03\xe0\x41\x01\x12\x15\n\x08quantity\x18\x03 \x01(\x03\x42\x03\xe0\x41\x01\x12 \n\x13merchant_account_id\x18\x04 \x01(\tB\x03\xe0\x41\x01\x1a\x84\x01\n\x0bGatewayInfo\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\"\n\x15gateway_response_code\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x1e\n\x11\x61vs_response_code\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x1e\n\x11\x63vv_response_code\x18\x04 \x01(\tB\x03\xe0\x41\x01\x42\x11\n\x0f_transaction_id\"\xa5\x01\n\x08UserInfo\x12<\n\x13\x63reate_account_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12\x17\n\naccount_id\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x42\n\x08user_ids\x18\x03 \x03(\x0b\x32+.google.cloud.recaptchaenterprise.v1.UserIdB\x03\xe0\x41\x01\"`\n\x06UserId\x12\x14\n\x05\x65mail\x18\x01 \x01(\tB\x03\xe0\x41\x01H\x00\x12\x1b\n\x0cphone_number\x18\x02 \x01(\tB\x03\xe0\x41\x01H\x00\x12\x17\n\x08username\x18\x03 \x01(\tB\x03\xe0\x41\x01H\x00\x42\n\n\x08id_oneof\"\xb7\x04\n\x0cRiskAnalysis\x12\x12\n\x05score\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\x12\\\n\x07reasons\x18\x02 \x03(\x0e\x32\x46.google.cloud.recaptchaenterprise.v1.RiskAnalysis.ClassificationReasonB\x03\xe0\x41\x03\x12%\n\x18\x65xtended_verdict_reasons\x18\x03 \x03(\tB\x03\xe0\x41\x03\x12S\n\tchallenge\x18\x04 \x01(\x0e\x32;.google.cloud.recaptchaenterprise.v1.RiskAnalysis.ChallengeB\x03\xe0\x41\x03\"\xe9\x01\n\x14\x43lassificationReason\x12%\n!CLASSIFICATION_REASON_UNSPECIFIED\x10\x00\x12\x0e\n\nAUTOMATION\x10\x01\x12\x1a\n\x16UNEXPECTED_ENVIRONMENT\x10\x02\x12\x14\n\x10TOO_MUCH_TRAFFIC\x10\x03\x12\x1d\n\x19UNEXPECTED_USAGE_PATTERNS\x10\x04\x12\x18\n\x14LOW_CONFIDENCE_SCORE\x10\x05\x12\x15\n\x11SUSPECTED_CARDING\x10\x06\x12\x18\n\x14SUSPECTED_CHARGEBACK\x10\x07\"M\n\tChallenge\x12\x19\n\x15\x43HALLENGE_UNSPECIFIED\x10\x00\x12\r\n\tNOCAPTCHA\x10\x01\x12\n\n\x06PASSED\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\"\xbb\x03\n\x0fTokenProperties\x12\x12\n\x05valid\x18\x01 \x01(\x08\x42\x03\xe0\x41\x03\x12_\n\x0einvalid_reason\x18\x02 \x01(\x0e\x32\x42.google.cloud.recaptchaenterprise.v1.TokenProperties.InvalidReasonB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x15\n\x08hostname\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12!\n\x14\x61ndroid_package_name\x18\x08 \x01(\tB\x03\xe0\x41\x03\x12\x1a\n\rios_bundle_id\x18\t \x01(\tB\x03\xe0\x41\x03\x12\x13\n\x06\x61\x63tion\x18\x05 \x01(\tB\x03\xe0\x41\x03\"\x91\x01\n\rInvalidReason\x12\x1e\n\x1aINVALID_REASON_UNSPECIFIED\x10\x00\x12\x1a\n\x16UNKNOWN_INVALID_REASON\x10\x01\x12\r\n\tMALFORMED\x10\x02\x12\x0b\n\x07\x45XPIRED\x10\x03\x12\x08\n\x04\x44UPE\x10\x04\x12\x0b\n\x07MISSING\x10\x05\x12\x11\n\rBROWSER_ERROR\x10\x06\"\xb3\x04\n\x19\x46raudPreventionAssessment\x12\x1d\n\x10transaction_risk\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\x12~\n\x19stolen_instrument_verdict\x18\x02 \x01(\x0b\x32V.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.StolenInstrumentVerdictB\x03\xe0\x41\x03\x12t\n\x14\x63\x61rd_testing_verdict\x18\x03 \x01(\x0b\x32Q.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.CardTestingVerdictB\x03\xe0\x41\x03\x12|\n\x18\x62\x65havioral_trust_verdict\x18\x04 \x01(\x0b\x32U.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.BehavioralTrustVerdictB\x03\xe0\x41\x03\x1a,\n\x17StolenInstrumentVerdict\x12\x11\n\x04risk\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\x1a\'\n\x12\x43\x61rdTestingVerdict\x12\x11\n\x04risk\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\x1a,\n\x16\x42\x65havioralTrustVerdict\x12\x12\n\x05trust\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\"\xe3\x03\n\x0c\x46raudSignals\x12X\n\x0cuser_signals\x18\x01 \x01(\x0b\x32=.google.cloud.recaptchaenterprise.v1.FraudSignals.UserSignalsB\x03\xe0\x41\x03\x12X\n\x0c\x63\x61rd_signals\x18\x02 \x01(\x0b\x32=.google.cloud.recaptchaenterprise.v1.FraudSignals.CardSignalsB\x03\xe0\x41\x03\x1aP\n\x0bUserSignals\x12$\n\x17\x61\x63tive_days_lower_bound\x18\x01 \x01(\x05\x42\x03\xe0\x41\x03\x12\x1b\n\x0esynthetic_risk\x18\x02 \x01(\x02\x42\x03\xe0\x41\x03\x1a\xcc\x01\n\x0b\x43\x61rdSignals\x12\x61\n\x0b\x63\x61rd_labels\x18\x01 \x03(\x0e\x32G.google.cloud.recaptchaenterprise.v1.FraudSignals.CardSignals.CardLabelB\x03\xe0\x41\x03\"Z\n\tCardLabel\x12\x1a\n\x16\x43\x41RD_LABEL_UNSPECIFIED\x10\x00\x12\x0b\n\x07PREPAID\x10\x01\x12\x0b\n\x07VIRTUAL\x10\x02\x12\x17\n\x13UNEXPECTED_LOCATION\x10\x03\"\xe2\x01\n\x13SmsTollFraudVerdict\x12\x11\n\x04risk\x18\x01 \x01(\x02\x42\x03\xe0\x41\x03\x12\x61\n\x07reasons\x18\x02 \x03(\x0e\x32K.google.cloud.recaptchaenterprise.v1.SmsTollFraudVerdict.SmsTollFraudReasonB\x03\xe0\x41\x03\"U\n\x12SmsTollFraudReason\x12%\n!SMS_TOLL_FRAUD_REASON_UNSPECIFIED\x10\x00\x12\x18\n\x14INVALID_PHONE_NUMBER\x10\x01\"u\n\x14PhoneFraudAssessment\x12]\n\x16sms_toll_fraud_verdict\x18\x01 \x01(\x0b\x32\x38.google.cloud.recaptchaenterprise.v1.SmsTollFraudVerdictB\x03\xe0\x41\x03\"\xbb\x02\n\x19\x41\x63\x63ountDefenderAssessment\x12h\n\x06labels\x18\x01 \x03(\x0e\x32S.google.cloud.recaptchaenterprise.v1.AccountDefenderAssessment.AccountDefenderLabelB\x03\xe0\x41\x03\"\xb3\x01\n\x14\x41\x63\x63ountDefenderLabel\x12&\n\"ACCOUNT_DEFENDER_LABEL_UNSPECIFIED\x10\x00\x12\x11\n\rPROFILE_MATCH\x10\x01\x12\x1d\n\x19SUSPICIOUS_LOGIN_ACTIVITY\x10\x02\x12\x1f\n\x1bSUSPICIOUS_ACCOUNT_CREATION\x10\x03\x12 \n\x1cRELATED_ACCOUNTS_NUMBER_HIGH\x10\x04\"\x93\x01\n\x10\x43reateKeyRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12:\n\x03key\x18\x02 \x01(\x0b\x32(.google.cloud.recaptchaenterprise.v1.KeyB\x03\xe0\x41\x02\"\x87\x01\n\x0fListKeysRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"c\n\x10ListKeysResponse\x12\x36\n\x04keys\x18\x01 \x03(\x0b\x32(.google.cloud.recaptchaenterprise.v1.Key\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"]\n\x1eRetrieveLegacySecretKeyRequest\x12;\n\x03key\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\"M\n\rGetKeyRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\"\x84\x01\n\x10UpdateKeyRequest\x12:\n\x03key\x18\x01 \x01(\x0b\x32(.google.cloud.recaptchaenterprise.v1.KeyB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\"P\n\x10\x44\x65leteKeyRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\"\xb5\x01\n\x1b\x43reateFirewallPolicyRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12Q\n\x0f\x66irewall_policy\x18\x02 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicyB\x03\xe0\x41\x02\"\x93\x01\n\x1bListFirewallPoliciesRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\x87\x01\n\x1cListFirewallPoliciesResponse\x12N\n\x11\x66irewall_policies\x18\x01 \x03(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicy\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"c\n\x18GetFirewallPolicyRequest\x12G\n\x04name\x18\x01 \x01(\tB9\xe0\x41\x02\xfa\x41\x33\n1recaptchaenterprise.googleapis.com/FirewallPolicy\"\xa6\x01\n\x1bUpdateFirewallPolicyRequest\x12Q\n\x0f\x66irewall_policy\x18\x01 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicyB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\"f\n\x1b\x44\x65leteFirewallPolicyRequest\x12G\n\x04name\x18\x01 \x01(\tB9\xe0\x41\x02\xfa\x41\x33\n1recaptchaenterprise.googleapis.com/FirewallPolicy\"\xaf\x01\n\x1eReorderFirewallPoliciesRequest\x12\x43\n\x06parent\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12H\n\x05names\x18\x02 \x03(\tB9\xe0\x41\x02\xfa\x41\x33\n1recaptchaenterprise.googleapis.com/FirewallPolicy\"!\n\x1fReorderFirewallPoliciesResponse\"r\n\x11MigrateKeyRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\x12\x1f\n\x12skip_billing_check\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\"U\n\x11GetMetricsRequest\x12@\n\x04name\x18\x01 \x01(\tB2\xe0\x41\x02\xfa\x41,\n*recaptchaenterprise.googleapis.com/Metrics\"\xd5\x02\n\x07Metrics\x12\x14\n\x04name\x18\x04 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x03\x12.\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12H\n\rscore_metrics\x18\x02 \x03(\x0b\x32\x31.google.cloud.recaptchaenterprise.v1.ScoreMetrics\x12P\n\x11\x63hallenge_metrics\x18\x03 \x03(\x0b\x32\x35.google.cloud.recaptchaenterprise.v1.ChallengeMetrics:h\xea\x41\x65\n*recaptchaenterprise.googleapis.com/Metrics\x12%projects/{project}/keys/{key}/metrics*\x07metrics2\x07metrics\"<\n\x1fRetrieveLegacySecretKeyResponse\x12\x19\n\x11legacy_secret_key\x18\x01 \x01(\t\"\xb3\x06\n\x03Key\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x19\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12K\n\x0cweb_settings\x18\x03 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.WebKeySettingsH\x00\x12S\n\x10\x61ndroid_settings\x18\x04 \x01(\x0b\x32\x37.google.cloud.recaptchaenterprise.v1.AndroidKeySettingsH\x00\x12K\n\x0cios_settings\x18\x05 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.IOSKeySettingsH\x00\x12S\n\x10\x65xpress_settings\x18\x0b \x01(\x0b\x32\x37.google.cloud.recaptchaenterprise.v1.ExpressKeySettingsH\x00\x12I\n\x06labels\x18\x06 \x03(\x0b\x32\x34.google.cloud.recaptchaenterprise.v1.Key.LabelsEntryB\x03\xe0\x41\x01\x12\x34\n\x0b\x63reate_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12Q\n\x0ftesting_options\x18\t \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.TestingOptionsB\x03\xe0\x41\x01\x12K\n\x0cwaf_settings\x18\n \x01(\x0b\x32\x30.google.cloud.recaptchaenterprise.v1.WafSettingsB\x03\xe0\x41\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:U\xea\x41R\n&recaptchaenterprise.googleapis.com/Key\x12\x1dprojects/{project}/keys/{key}*\x04keys2\x03keyB\x13\n\x11platform_settings\"\xf2\x01\n\x0eTestingOptions\x12\x1a\n\rtesting_score\x18\x01 \x01(\x02\x42\x03\xe0\x41\x01\x12\x64\n\x11testing_challenge\x18\x02 \x01(\x0e\x32\x44.google.cloud.recaptchaenterprise.v1.TestingOptions.TestingChallengeB\x03\xe0\x41\x01\"^\n\x10TestingChallenge\x12!\n\x1dTESTING_CHALLENGE_UNSPECIFIED\x10\x00\x12\r\n\tNOCAPTCHA\x10\x01\x12\x18\n\x14UNSOLVABLE_CHALLENGE\x10\x02\"\xa4\x04\n\x0eWebKeySettings\x12\x1e\n\x11\x61llow_all_domains\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1c\n\x0f\x61llowed_domains\x18\x01 \x03(\tB\x03\xe0\x41\x01\x12\x1e\n\x11\x61llow_amp_traffic\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12\x62\n\x10integration_type\x18\x04 \x01(\x0e\x32\x43.google.cloud.recaptchaenterprise.v1.WebKeySettings.IntegrationTypeB\x03\xe0\x41\x02\x12{\n\x1d\x63hallenge_security_preference\x18\x05 \x01(\x0e\x32O.google.cloud.recaptchaenterprise.v1.WebKeySettings.ChallengeSecurityPreferenceB\x03\xe0\x41\x01\"[\n\x0fIntegrationType\x12 \n\x1cINTEGRATION_TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05SCORE\x10\x01\x12\x0c\n\x08\x43HECKBOX\x10\x02\x12\r\n\tINVISIBLE\x10\x03\"v\n\x1b\x43hallengeSecurityPreference\x12-\n)CHALLENGE_SECURITY_PREFERENCE_UNSPECIFIED\x10\x00\x12\r\n\tUSABILITY\x10\x01\x12\x0b\n\x07\x42\x41LANCE\x10\x02\x12\x0c\n\x08SECURITY\x10\x03\"\x96\x01\n\x12\x41ndroidKeySettings\x12$\n\x17\x61llow_all_package_names\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12\"\n\x15\x61llowed_package_names\x18\x01 \x03(\tB\x03\xe0\x41\x01\x12\x36\n)support_non_google_app_store_distribution\x18\x03 \x01(\x08\x42\x03\xe0\x41\x01\"\xac\x01\n\x0eIOSKeySettings\x12!\n\x14\x61llow_all_bundle_ids\x18\x02 \x01(\x08\x42\x03\xe0\x41\x01\x12\x1f\n\x12\x61llowed_bundle_ids\x18\x01 \x03(\tB\x03\xe0\x41\x01\x12V\n\x12\x61pple_developer_id\x18\x03 \x01(\x0b\x32\x35.google.cloud.recaptchaenterprise.v1.AppleDeveloperIdB\x03\xe0\x41\x01\"\x14\n\x12\x45xpressKeySettings\"Z\n\x10\x41ppleDeveloperId\x12\x1b\n\x0bprivate_key\x18\x01 \x01(\tB\x06\xe0\x41\x02\xe0\x41\x04\x12\x13\n\x06key_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x14\n\x07team_id\x18\x03 \x01(\tB\x03\xe0\x41\x02\"\xa9\x01\n\x11ScoreDistribution\x12_\n\rscore_buckets\x18\x01 \x03(\x0b\x32H.google.cloud.recaptchaenterprise.v1.ScoreDistribution.ScoreBucketsEntry\x1a\x33\n\x11ScoreBucketsEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\x03:\x02\x38\x01\"\xab\x02\n\x0cScoreMetrics\x12O\n\x0foverall_metrics\x18\x01 \x01(\x0b\x32\x36.google.cloud.recaptchaenterprise.v1.ScoreDistribution\x12\\\n\x0e\x61\x63tion_metrics\x18\x02 \x03(\x0b\x32\x44.google.cloud.recaptchaenterprise.v1.ScoreMetrics.ActionMetricsEntry\x1al\n\x12\x41\x63tionMetricsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\x45\n\x05value\x18\x02 \x01(\x0b\x32\x36.google.cloud.recaptchaenterprise.v1.ScoreDistribution:\x02\x38\x01\"o\n\x10\x43hallengeMetrics\x12\x16\n\x0epageload_count\x18\x01 \x01(\x03\x12\x17\n\x0fnocaptcha_count\x18\x02 \x01(\x03\x12\x14\n\x0c\x66\x61iled_count\x18\x03 \x01(\x03\x12\x14\n\x0cpassed_count\x18\x04 \x01(\x03\"\x95\x01\n\x18\x46irewallPolicyAssessment\x12&\n\x05\x65rror\x18\x05 \x01(\x0b\x32\x12.google.rpc.StatusB\x03\xe0\x41\x03\x12Q\n\x0f\x66irewall_policy\x18\x08 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicyB\x03\xe0\x41\x03\"\x82\x06\n\x0e\x46irewallAction\x12P\n\x05\x61llow\x18\x01 \x01(\x0b\x32?.google.cloud.recaptchaenterprise.v1.FirewallAction.AllowActionH\x00\x12P\n\x05\x62lock\x18\x02 \x01(\x0b\x32?.google.cloud.recaptchaenterprise.v1.FirewallAction.BlockActionH\x00\x12t\n\x18include_recaptcha_script\x18\x06 \x01(\x0b\x32P.google.cloud.recaptchaenterprise.v1.FirewallAction.IncludeRecaptchaScriptActionH\x00\x12V\n\x08redirect\x18\x05 \x01(\x0b\x32\x42.google.cloud.recaptchaenterprise.v1.FirewallAction.RedirectActionH\x00\x12Z\n\nsubstitute\x18\x03 \x01(\x0b\x32\x44.google.cloud.recaptchaenterprise.v1.FirewallAction.SubstituteActionH\x00\x12Y\n\nset_header\x18\x04 \x01(\x0b\x32\x43.google.cloud.recaptchaenterprise.v1.FirewallAction.SetHeaderActionH\x00\x1a\r\n\x0b\x41llowAction\x1a\r\n\x0b\x42lockAction\x1a\x1e\n\x1cIncludeRecaptchaScriptAction\x1a\x10\n\x0eRedirectAction\x1a%\n\x10SubstituteAction\x12\x11\n\x04path\x18\x01 \x01(\tB\x03\xe0\x41\x01\x1a\x37\n\x0fSetHeaderAction\x12\x10\n\x03key\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x12\n\x05value\x18\x02 \x01(\tB\x03\xe0\x41\x01\x42\x17\n\x15\x66irewall_action_oneof\"\xc5\x02\n\x0e\x46irewallPolicy\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x18\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x03\xe0\x41\x01\x12\x11\n\x04path\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x16\n\tcondition\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12I\n\x07\x61\x63tions\x18\x06 \x03(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.FirewallActionB\x03\xe0\x41\x01:\x8f\x01\xea\x41\x8b\x01\n1recaptchaenterprise.googleapis.com/FirewallPolicy\x12\x34projects/{project}/firewallpolicies/{firewallpolicy}*\x10\x66irewallPolicies2\x0e\x66irewallPolicy\"\xb6\x01\n)ListRelatedAccountGroupMembershipsRequest\x12X\n\x06parent\x18\x01 \x01(\tBH\xe0\x41\x02\xfa\x41\x42\x12@recaptchaenterprise.googleapis.com/RelatedAccountGroupMembership\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\xb4\x01\n*ListRelatedAccountGroupMembershipsResponse\x12m\n!related_account_group_memberships\x18\x01 \x03(\x0b\x32\x42.google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xa2\x01\n\x1fListRelatedAccountGroupsRequest\x12N\n\x06parent\x18\x01 \x01(\tB>\xe0\x41\x02\xfa\x41\x38\x12\x36recaptchaenterprise.googleapis.com/RelatedAccountGroup\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"\x95\x01\n ListRelatedAccountGroupsResponse\x12X\n\x16related_account_groups\x18\x01 \x03(\x0b\x32\x38.google.cloud.recaptchaenterprise.v1.RelatedAccountGroup\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xdf\x01\n+SearchRelatedAccountGroupMembershipsRequest\x12\x44\n\x07project\x18\x01 \x01(\tB3\xe0\x41\x02\xfa\x41-\n+cloudresourcemanager.googleapis.com/Project\x12\x17\n\naccount_id\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12 \n\x11hashed_account_id\x18\x02 \x01(\x0c\x42\x05\x18\x01\xe0\x41\x01\x12\x16\n\tpage_size\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x04 \x01(\tB\x03\xe0\x41\x01\"\xb6\x01\n,SearchRelatedAccountGroupMembershipsResponse\x12m\n!related_account_group_memberships\x18\x01 \x03(\x0b\x32\x42.google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xa8\x01\n\x14\x41\x64\x64IpOverrideRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\x12R\n\x10ip_override_data\x18\x02 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.IpOverrideDataB\x03\xe0\x41\x02\"\x17\n\x15\x41\x64\x64IpOverrideResponse\"\xab\x01\n\x17RemoveIpOverrideRequest\x12<\n\x04name\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\x12R\n\x10ip_override_data\x18\x02 \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.IpOverrideDataB\x03\xe0\x41\x02\"\x1a\n\x18RemoveIpOverrideResponse\"\x89\x01\n\x16ListIpOverridesRequest\x12>\n\x06parent\x18\x01 \x01(\tB.\xe0\x41\x02\xfa\x41(\n&recaptchaenterprise.googleapis.com/Key\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"}\n\x17ListIpOverridesResponse\x12I\n\x0cip_overrides\x18\x01 \x03(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.IpOverrideData\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xc8\x02\n\x1dRelatedAccountGroupMembership\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x02\x12\x12\n\naccount_id\x18\x04 \x01(\t\x12\x1d\n\x11hashed_account_id\x18\x02 \x01(\x0c\x42\x02\x18\x01:\xdd\x01\xea\x41\xd9\x01\n@recaptchaenterprise.googleapis.com/RelatedAccountGroupMembership\x12Vprojects/{project}/relatedaccountgroups/{relatedaccountgroup}/memberships/{membership}*\x1erelatedAccountGroupMemberships2\x1drelatedAccountGroupMembership\"\xd4\x01\n\x13RelatedAccountGroup\x12\x14\n\x04name\x18\x01 \x01(\tB\x06\xe0\x41\x08\xe0\x41\x02:\xa6\x01\xea\x41\xa2\x01\n6recaptchaenterprise.googleapis.com/RelatedAccountGroup\x12=projects/{project}/relatedaccountgroups/{relatedaccountgroup}*\x14relatedAccountGroups2\x13relatedAccountGroup\"\x87\x03\n\x0bWafSettings\x12U\n\x0bwaf_service\x18\x01 \x01(\x0e\x32;.google.cloud.recaptchaenterprise.v1.WafSettings.WafServiceB\x03\xe0\x41\x02\x12U\n\x0bwaf_feature\x18\x02 \x01(\x0e\x32;.google.cloud.recaptchaenterprise.v1.WafSettings.WafFeatureB\x03\xe0\x41\x02\"o\n\nWafFeature\x12\x1b\n\x17WAF_FEATURE_UNSPECIFIED\x10\x00\x12\x12\n\x0e\x43HALLENGE_PAGE\x10\x01\x12\x11\n\rSESSION_TOKEN\x10\x02\x12\x10\n\x0c\x41\x43TION_TOKEN\x10\x03\x12\x0b\n\x07\x45XPRESS\x10\x05\"Y\n\nWafService\x12\x1b\n\x17WAF_SERVICE_UNSPECIFIED\x10\x00\x12\x06\n\x02\x43\x41\x10\x01\x12\n\n\x06\x46\x41STLY\x10\x03\x12\x0e\n\nCLOUDFLARE\x10\x04\x12\n\n\x06\x41KAMAI\x10\x05\"B\n\x15\x41ssessmentEnvironment\x12\x13\n\x06\x63lient\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x14\n\x07version\x18\x02 \x01(\tB\x03\xe0\x41\x01\"\xc1\x01\n\x0eIpOverrideData\x12\x17\n\x02ip\x18\x01 \x01(\tB\x0b\xe0\x41\x02\xe2\x8c\xcf\xd7\x08\x02\x08\x04\x12\\\n\roverride_type\x18\x03 \x01(\x0e\x32@.google.cloud.recaptchaenterprise.v1.IpOverrideData.OverrideTypeB\x03\xe0\x41\x02\"8\n\x0cOverrideType\x12\x1d\n\x19OVERRIDE_TYPE_UNSPECIFIED\x10\x00\x12\t\n\x05\x41LLOW\x10\x01\x32\xe5$\n\x1aRecaptchaEnterpriseService\x12\xce\x01\n\x10\x43reateAssessment\x12<.google.cloud.recaptchaenterprise.v1.CreateAssessmentRequest\x1a/.google.cloud.recaptchaenterprise.v1.Assessment\"K\xda\x41\x11parent,assessment\x82\xd3\xe4\x93\x02\x31\"#/v1/{parent=projects/*}/assessments:\nassessment\x12\xe0\x01\n\x12\x41nnotateAssessment\x12>.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest\x1a?.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentResponse\"I\xda\x41\x0fname,annotation\x82\xd3\xe4\x93\x02\x31\",/v1/{name=projects/*/assessments/*}:annotate:\x01*\x12\xa4\x01\n\tCreateKey\x12\x35.google.cloud.recaptchaenterprise.v1.CreateKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"6\xda\x41\nparent,key\x82\xd3\xe4\x93\x02#\"\x1c/v1/{parent=projects/*}/keys:\x03key\x12\xa6\x01\n\x08ListKeys\x12\x34.google.cloud.recaptchaenterprise.v1.ListKeysRequest\x1a\x35.google.cloud.recaptchaenterprise.v1.ListKeysResponse\"-\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v1/{parent=projects/*}/keys\x12\xe7\x01\n\x17RetrieveLegacySecretKey\x12\x43.google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyRequest\x1a\x44.google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyResponse\"A\xda\x41\x03key\x82\xd3\xe4\x93\x02\x35\x12\x33/v1/{key=projects/*/keys/*}:retrieveLegacySecretKey\x12\x93\x01\n\x06GetKey\x12\x32.google.cloud.recaptchaenterprise.v1.GetKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"+\xda\x41\x04name\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v1/{name=projects/*/keys/*}\x12\xad\x01\n\tUpdateKey\x12\x35.google.cloud.recaptchaenterprise.v1.UpdateKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"?\xda\x41\x0fkey,update_mask\x82\xd3\xe4\x93\x02\'2 /v1/{key.name=projects/*/keys/*}:\x03key\x12\x87\x01\n\tDeleteKey\x12\x35.google.cloud.recaptchaenterprise.v1.DeleteKeyRequest\x1a\x16.google.protobuf.Empty\"+\xda\x41\x04name\x82\xd3\xe4\x93\x02\x1e*\x1c/v1/{name=projects/*/keys/*}\x12\x9f\x01\n\nMigrateKey\x12\x36.google.cloud.recaptchaenterprise.v1.MigrateKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"/\x82\xd3\xe4\x93\x02)\"$/v1/{name=projects/*/keys/*}:migrate:\x01*\x12\xd5\x01\n\rAddIpOverride\x12\x39.google.cloud.recaptchaenterprise.v1.AddIpOverrideRequest\x1a:.google.cloud.recaptchaenterprise.v1.AddIpOverrideResponse\"M\xda\x41\x15name,ip_override_data\x82\xd3\xe4\x93\x02/\"*/v1/{name=projects/*/keys/*}:addIpOverride:\x01*\x12\xe1\x01\n\x10RemoveIpOverride\x12<.google.cloud.recaptchaenterprise.v1.RemoveIpOverrideRequest\x1a=.google.cloud.recaptchaenterprise.v1.RemoveIpOverrideResponse\"P\xda\x41\x15name,ip_override_data\x82\xd3\xe4\x93\x02\x32\"-/v1/{name=projects/*/keys/*}:removeIpOverride:\x01*\x12\xcd\x01\n\x0fListIpOverrides\x12;.google.cloud.recaptchaenterprise.v1.ListIpOverridesRequest\x1a<.google.cloud.recaptchaenterprise.v1.ListIpOverridesResponse\"?\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x30\x12./v1/{parent=projects/*/keys/*}:listIpOverrides\x12\xa7\x01\n\nGetMetrics\x12\x36.google.cloud.recaptchaenterprise.v1.GetMetricsRequest\x1a,.google.cloud.recaptchaenterprise.v1.Metrics\"3\xda\x41\x04name\x82\xd3\xe4\x93\x02&\x12$/v1/{name=projects/*/keys/*/metrics}\x12\xe9\x01\n\x14\x43reateFirewallPolicy\x12@.google.cloud.recaptchaenterprise.v1.CreateFirewallPolicyRequest\x1a\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicy\"Z\xda\x41\x16parent,firewall_policy\x82\xd3\xe4\x93\x02;\"(/v1/{parent=projects/*}/firewallpolicies:\x0f\x66irewall_policy\x12\xd6\x01\n\x14ListFirewallPolicies\x12@.google.cloud.recaptchaenterprise.v1.ListFirewallPoliciesRequest\x1a\x41.google.cloud.recaptchaenterprise.v1.ListFirewallPoliciesResponse\"9\xda\x41\x06parent\x82\xd3\xe4\x93\x02*\x12(/v1/{parent=projects/*}/firewallpolicies\x12\xc0\x01\n\x11GetFirewallPolicy\x12=.google.cloud.recaptchaenterprise.v1.GetFirewallPolicyRequest\x1a\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicy\"7\xda\x41\x04name\x82\xd3\xe4\x93\x02*\x12(/v1/{name=projects/*/firewallpolicies/*}\x12\xfe\x01\n\x14UpdateFirewallPolicy\x12@.google.cloud.recaptchaenterprise.v1.UpdateFirewallPolicyRequest\x1a\x33.google.cloud.recaptchaenterprise.v1.FirewallPolicy\"o\xda\x41\x1b\x66irewall_policy,update_mask\x82\xd3\xe4\x93\x02K28/v1/{firewall_policy.name=projects/*/firewallpolicies/*}:\x0f\x66irewall_policy\x12\xa9\x01\n\x14\x44\x65leteFirewallPolicy\x12@.google.cloud.recaptchaenterprise.v1.DeleteFirewallPolicyRequest\x1a\x16.google.protobuf.Empty\"7\xda\x41\x04name\x82\xd3\xe4\x93\x02**(/v1/{name=projects/*/firewallpolicies/*}\x12\xf0\x01\n\x17ReorderFirewallPolicies\x12\x43.google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesRequest\x1a\x44.google.cloud.recaptchaenterprise.v1.ReorderFirewallPoliciesResponse\"J\xda\x41\x0cparent,names\x82\xd3\xe4\x93\x02\x35\"0/v1/{parent=projects/*}/firewallpolicies:reorder:\x01*\x12\xe6\x01\n\x18ListRelatedAccountGroups\x12\x44.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsRequest\x1a\x45.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsResponse\"=\xda\x41\x06parent\x82\xd3\xe4\x93\x02.\x12,/v1/{parent=projects/*}/relatedaccountgroups\x12\x92\x02\n\"ListRelatedAccountGroupMemberships\x12N.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsRequest\x1aO.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsResponse\"K\xda\x41\x06parent\x82\xd3\xe4\x93\x02<\x12:/v1/{parent=projects/*/relatedaccountgroups/*}/memberships\x12\xb2\x02\n$SearchRelatedAccountGroupMemberships\x12P.google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsRequest\x1aQ.google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsResponse\"e\xda\x41\x19project,hashed_account_id\x82\xd3\xe4\x93\x02\x43\">/v1/{project=projects/*}/relatedaccountgroupmemberships:search:\x01*\x1aV\xca\x41\"recaptchaenterprise.googleapis.com\xd2\x41.https://www.googleapis.com/auth/cloud-platformB\x99\x02\n!com.google.recaptchaenterprise.v1B\x18RecaptchaEnterpriseProtoP\x01Z\\cloud.google.com/go/recaptchaenterprise/v2/apiv1/recaptchaenterprisepb;recaptchaenterprisepb\xa2\x02\x04GCRE\xaa\x02#Google.Cloud.RecaptchaEnterprise.V1\xca\x02#Google\\Cloud\\RecaptchaEnterprise\\V1\xea\x02&Google::Cloud::RecaptchaEnterprise::V1b\x06proto3"
         | 
| 19 19 |  | 
| 20 20 | 
             
            pool = Google::Protobuf::DescriptorPool.generated_pool
         | 
| 21 21 |  | 
| @@ -71,6 +71,7 @@ module Google | |
| 71 71 | 
             
                    UserId = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.UserId").msgclass
         | 
| 72 72 | 
             
                    RiskAnalysis = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.RiskAnalysis").msgclass
         | 
| 73 73 | 
             
                    RiskAnalysis::ClassificationReason = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.RiskAnalysis.ClassificationReason").enummodule
         | 
| 74 | 
            +
                    RiskAnalysis::Challenge = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.RiskAnalysis.Challenge").enummodule
         | 
| 74 75 | 
             
                    TokenProperties = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.TokenProperties").msgclass
         | 
| 75 76 | 
             
                    TokenProperties::InvalidReason = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.TokenProperties.InvalidReason").enummodule
         | 
| 76 77 | 
             
                    FraudPreventionAssessment = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment").msgclass
         | 
| @@ -135,6 +136,10 @@ module Google | |
| 135 136 | 
             
                    SearchRelatedAccountGroupMembershipsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsResponse").msgclass
         | 
| 136 137 | 
             
                    AddIpOverrideRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.AddIpOverrideRequest").msgclass
         | 
| 137 138 | 
             
                    AddIpOverrideResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.AddIpOverrideResponse").msgclass
         | 
| 139 | 
            +
                    RemoveIpOverrideRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.RemoveIpOverrideRequest").msgclass
         | 
| 140 | 
            +
                    RemoveIpOverrideResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.RemoveIpOverrideResponse").msgclass
         | 
| 141 | 
            +
                    ListIpOverridesRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.ListIpOverridesRequest").msgclass
         | 
| 142 | 
            +
                    ListIpOverridesResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.ListIpOverridesResponse").msgclass
         | 
| 138 143 | 
             
                    RelatedAccountGroupMembership = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership").msgclass
         | 
| 139 144 | 
             
                    RelatedAccountGroup = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.RelatedAccountGroup").msgclass
         | 
| 140 145 | 
             
                    WafSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.recaptchaenterprise.v1.WafSettings").msgclass
         | 
| @@ -64,6 +64,14 @@ module Google | |
| 64 64 | 
             
                        # * For any conflict (such as IP already exists or IP part of an existing
         | 
| 65 65 | 
             
                        #   IP range), an error is returned.
         | 
| 66 66 | 
             
                        rpc :AddIpOverride, ::Google::Cloud::RecaptchaEnterprise::V1::AddIpOverrideRequest, ::Google::Cloud::RecaptchaEnterprise::V1::AddIpOverrideResponse
         | 
| 67 | 
            +
                        # Removes an IP override from a key. The following restrictions hold:
         | 
| 68 | 
            +
                        # * If the IP isn't found in an existing IP override, a `NOT_FOUND` error
         | 
| 69 | 
            +
                        # is returned.
         | 
| 70 | 
            +
                        # * If the IP is found in an existing IP override, but the
         | 
| 71 | 
            +
                        # override type does not match, a `NOT_FOUND` error is returned.
         | 
| 72 | 
            +
                        rpc :RemoveIpOverride, ::Google::Cloud::RecaptchaEnterprise::V1::RemoveIpOverrideRequest, ::Google::Cloud::RecaptchaEnterprise::V1::RemoveIpOverrideResponse
         | 
| 73 | 
            +
                        # Lists all IP overrides for a key.
         | 
| 74 | 
            +
                        rpc :ListIpOverrides, ::Google::Cloud::RecaptchaEnterprise::V1::ListIpOverridesRequest, ::Google::Cloud::RecaptchaEnterprise::V1::ListIpOverridesResponse
         | 
| 67 75 | 
             
                        # Get some aggregated metrics for a Key. This data can be used to build
         | 
| 68 76 | 
             
                        # dashboards.
         | 
| 69 77 | 
             
                        rpc :GetMetrics, ::Google::Cloud::RecaptchaEnterprise::V1::GetMetricsRequest, ::Google::Cloud::RecaptchaEnterprise::V1::Metrics
         | 
| @@ -28,6 +28,9 @@ module Google | |
| 28 28 | 
             
                # @!attribute [rw] destinations
         | 
| 29 29 | 
             
                #   @return [::Array<::Google::Api::ClientLibraryDestination>]
         | 
| 30 30 | 
             
                #     The destination where API teams want this client library to be published.
         | 
| 31 | 
            +
                # @!attribute [rw] selective_gapic_generation
         | 
| 32 | 
            +
                #   @return [::Google::Api::SelectiveGapicGeneration]
         | 
| 33 | 
            +
                #     Configuration for which RPCs should be generated in the GAPIC client.
         | 
| 31 34 | 
             
                class CommonLanguageSettings
         | 
| 32 35 | 
             
                  include ::Google::Protobuf::MessageExts
         | 
| 33 36 | 
             
                  extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| @@ -212,6 +215,12 @@ module Google | |
| 212 215 | 
             
                  #     enabled. By default, asynchronous REST clients will not be generated.
         | 
| 213 216 | 
             
                  #     This feature will be enabled by default 1 month after launching the
         | 
| 214 217 | 
             
                  #     feature in preview packages.
         | 
| 218 | 
            +
                  # @!attribute [rw] protobuf_pythonic_types_enabled
         | 
| 219 | 
            +
                  #   @return [::Boolean]
         | 
| 220 | 
            +
                  #     Enables generation of protobuf code using new types that are more
         | 
| 221 | 
            +
                  #     Pythonic which are included in `protobuf>=5.29.x`. This feature will be
         | 
| 222 | 
            +
                  #     enabled by default 1 month after launching the feature in preview
         | 
| 223 | 
            +
                  #     packages.
         | 
| 215 224 | 
             
                  class ExperimentalFeatures
         | 
| 216 225 | 
             
                    include ::Google::Protobuf::MessageExts
         | 
| 217 226 | 
             
                    extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| @@ -375,6 +384,17 @@ module Google | |
| 375 384 | 
             
                  end
         | 
| 376 385 | 
             
                end
         | 
| 377 386 |  | 
| 387 | 
            +
                # This message is used to configure the generation of a subset of the RPCs in
         | 
| 388 | 
            +
                # a service for client libraries.
         | 
| 389 | 
            +
                # @!attribute [rw] methods
         | 
| 390 | 
            +
                #   @return [::Array<::String>]
         | 
| 391 | 
            +
                #     An allowlist of the fully qualified names of RPCs that should be included
         | 
| 392 | 
            +
                #     on public client surfaces.
         | 
| 393 | 
            +
                class SelectiveGapicGeneration
         | 
| 394 | 
            +
                  include ::Google::Protobuf::MessageExts
         | 
| 395 | 
            +
                  extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| 396 | 
            +
                end
         | 
| 397 | 
            +
             | 
| 378 398 | 
             
                # The organization for which the client libraries are being published.
         | 
| 379 399 | 
             
                # Affects the url where generated docs are published, etc.
         | 
| 380 400 | 
             
                module ClientLibraryOrganization
         | 
| @@ -162,8 +162,8 @@ module Google | |
| 162 162 | 
             
                    #     `projects/{project}/assessments/{assessment}`.
         | 
| 163 163 | 
             
                    # @!attribute [rw] annotation
         | 
| 164 164 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::AnnotateAssessmentRequest::Annotation]
         | 
| 165 | 
            -
                    #     Optional. The annotation that is assigned to the Event. This field can
         | 
| 166 | 
            -
                    #      | 
| 165 | 
            +
                    #     Optional. The annotation that is assigned to the Event. This field can be
         | 
| 166 | 
            +
                    #     left empty to provide reasons that apply to an event without concluding
         | 
| 167 167 | 
             
                    #     whether the event is legitimate or fraudulent.
         | 
| 168 168 | 
             
                    # @!attribute [rw] reasons
         | 
| 169 169 | 
             
                    #   @return [::Array<::Google::Cloud::RecaptchaEnterprise::V1::AnnotateAssessmentRequest::Reason>]
         | 
| @@ -477,7 +477,7 @@ module Google | |
| 477 477 | 
             
                    # @!attribute [rw] express
         | 
| 478 478 | 
             
                    #   @return [::Boolean]
         | 
| 479 479 | 
             
                    #     Optional. Flag for a reCAPTCHA express request for an assessment without a
         | 
| 480 | 
            -
                    #     token. If enabled, `site_key` must reference an  | 
| 480 | 
            +
                    #     token. If enabled, `site_key` must reference an Express site key.
         | 
| 481 481 | 
             
                    # @!attribute [rw] requested_uri
         | 
| 482 482 | 
             
                    #   @return [::String]
         | 
| 483 483 | 
             
                    #     Optional. The URI resource the user requested that triggered an assessment.
         | 
| @@ -500,7 +500,7 @@ module Google | |
| 500 500 | 
             
                    # @!attribute [rw] transaction_data
         | 
| 501 501 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::TransactionData]
         | 
| 502 502 | 
             
                    #     Optional. Data describing a payment transaction to be assessed. Sending
         | 
| 503 | 
            -
                    #     this data enables reCAPTCHA Fraud Prevention and the
         | 
| 503 | 
            +
                    #     this data enables reCAPTCHA Enterprise Fraud Prevention and the
         | 
| 504 504 | 
             
                    #     FraudPreventionAssessment component in the response.
         | 
| 505 505 | 
             
                    # @!attribute [rw] user_info
         | 
| 506 506 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::UserInfo]
         | 
| @@ -742,6 +742,9 @@ module Google | |
| 742 742 | 
             
                    #   @return [::Array<::String>]
         | 
| 743 743 | 
             
                    #     Output only. Extended verdict reasons to be used for experimentation only.
         | 
| 744 744 | 
             
                    #     The set of possible reasons is subject to change.
         | 
| 745 | 
            +
                    # @!attribute [r] challenge
         | 
| 746 | 
            +
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::RiskAnalysis::Challenge]
         | 
| 747 | 
            +
                    #     Output only. Challenge information for SCORE_AND_CHALLENGE keys
         | 
| 745 748 | 
             
                    class RiskAnalysis
         | 
| 746 749 | 
             
                      include ::Google::Protobuf::MessageExts
         | 
| 747 750 | 
             
                      extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| @@ -774,6 +777,22 @@ module Google | |
| 774 777 | 
             
                        # The request matches behavioral characteristics of chargebacks for fraud.
         | 
| 775 778 | 
             
                        SUSPECTED_CHARGEBACK = 7
         | 
| 776 779 | 
             
                      end
         | 
| 780 | 
            +
             | 
| 781 | 
            +
                      # Challenge information for SCORE_AND_CHALLENGE keys
         | 
| 782 | 
            +
                      module Challenge
         | 
| 783 | 
            +
                        # Default unspecified type.
         | 
| 784 | 
            +
                        CHALLENGE_UNSPECIFIED = 0
         | 
| 785 | 
            +
             | 
| 786 | 
            +
                        # No challenge was presented for solving.
         | 
| 787 | 
            +
                        NOCAPTCHA = 1
         | 
| 788 | 
            +
             | 
| 789 | 
            +
                        # A solution was submitted that was correct.
         | 
| 790 | 
            +
                        PASSED = 2
         | 
| 791 | 
            +
             | 
| 792 | 
            +
                        # A solution was submitted that was incorrect or otherwise
         | 
| 793 | 
            +
                        # deemed suspicious.
         | 
| 794 | 
            +
                        FAILED = 3
         | 
| 795 | 
            +
                      end
         | 
| 777 796 | 
             
                    end
         | 
| 778 797 |  | 
| 779 798 | 
             
                    # Properties of the provided event token.
         | 
| @@ -1023,7 +1042,7 @@ module Google | |
| 1023 1042 | 
             
                    # The list keys request message.
         | 
| 1024 1043 | 
             
                    # @!attribute [rw] parent
         | 
| 1025 1044 | 
             
                    #   @return [::String]
         | 
| 1026 | 
            -
                    #     Required. The name of the project that contains the keys that  | 
| 1045 | 
            +
                    #     Required. The name of the project that contains the keys that is
         | 
| 1027 1046 | 
             
                    #     listed, in the format `projects/{project}`.
         | 
| 1028 1047 | 
             
                    # @!attribute [rw] page_size
         | 
| 1029 1048 | 
             
                    #   @return [::Integer]
         | 
| @@ -1097,7 +1116,7 @@ module Google | |
| 1097 1116 | 
             
                    # The create firewall policy request message.
         | 
| 1098 1117 | 
             
                    # @!attribute [rw] parent
         | 
| 1099 1118 | 
             
                    #   @return [::String]
         | 
| 1100 | 
            -
                    #     Required. The name of the project this policy  | 
| 1119 | 
            +
                    #     Required. The name of the project this policy applies to, in the format
         | 
| 1101 1120 | 
             
                    #     `projects/{project}`.
         | 
| 1102 1121 | 
             
                    # @!attribute [rw] firewall_policy
         | 
| 1103 1122 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::FirewallPolicy]
         | 
| @@ -1236,7 +1255,7 @@ module Google | |
| 1236 1255 | 
             
                    # @!attribute [rw] challenge_metrics
         | 
| 1237 1256 | 
             
                    #   @return [::Array<::Google::Cloud::RecaptchaEnterprise::V1::ChallengeMetrics>]
         | 
| 1238 1257 | 
             
                    #     Metrics are continuous and in order by dates, and in the granularity
         | 
| 1239 | 
            -
                    #     of day. Only challenge-based keys (CHECKBOX, INVISIBLE) | 
| 1258 | 
            +
                    #     of day. Only challenge-based keys (CHECKBOX, INVISIBLE) have
         | 
| 1240 1259 | 
             
                    #     challenge-based data.
         | 
| 1241 1260 | 
             
                    class Metrics
         | 
| 1242 1261 | 
             
                      include ::Google::Protobuf::MessageExts
         | 
| @@ -1276,7 +1295,7 @@ module Google | |
| 1276 1295 | 
             
                    #     Settings for keys that can be used by iOS apps.
         | 
| 1277 1296 | 
             
                    # @!attribute [rw] express_settings
         | 
| 1278 1297 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::ExpressKeySettings]
         | 
| 1279 | 
            -
                    #     Settings  | 
| 1298 | 
            +
                    #     Settings for keys that can be used by reCAPTCHA Express.
         | 
| 1280 1299 | 
             
                    # @!attribute [rw] labels
         | 
| 1281 1300 | 
             
                    #   @return [::Google::Protobuf::Map{::String => ::String}]
         | 
| 1282 1301 | 
             
                    #     Optional. See [Creating and managing labels]
         | 
| @@ -1307,12 +1326,12 @@ module Google | |
| 1307 1326 | 
             
                    # Options for user acceptance testing.
         | 
| 1308 1327 | 
             
                    # @!attribute [rw] testing_score
         | 
| 1309 1328 | 
             
                    #   @return [::Float]
         | 
| 1310 | 
            -
                    #     Optional. All assessments for this Key  | 
| 1311 | 
            -
                    #      | 
| 1329 | 
            +
                    #     Optional. All assessments for this Key return this score. Must be between 0
         | 
| 1330 | 
            +
                    #     (likely not legitimate) and 1 (likely legitimate) inclusive.
         | 
| 1312 1331 | 
             
                    # @!attribute [rw] testing_challenge
         | 
| 1313 1332 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::TestingOptions::TestingChallenge]
         | 
| 1314 1333 | 
             
                    #     Optional. For challenge-based keys only (CHECKBOX, INVISIBLE), all
         | 
| 1315 | 
            -
                    #     challenge requests for this site  | 
| 1334 | 
            +
                    #     challenge requests for this site return nocaptcha if NOCAPTCHA, or an
         | 
| 1316 1335 | 
             
                    #     unsolvable challenge if CHALLENGE.
         | 
| 1317 1336 | 
             
                    class TestingOptions
         | 
| 1318 1337 | 
             
                      include ::Google::Protobuf::MessageExts
         | 
| @@ -1338,7 +1357,7 @@ module Google | |
| 1338 1357 | 
             
                    # Settings specific to keys that can be used by websites.
         | 
| 1339 1358 | 
             
                    # @!attribute [rw] allow_all_domains
         | 
| 1340 1359 | 
             
                    #   @return [::Boolean]
         | 
| 1341 | 
            -
                    #     Optional. If set to true, it means allowed_domains  | 
| 1360 | 
            +
                    #     Optional. If set to true, it means allowed_domains are not enforced.
         | 
| 1342 1361 | 
             
                    # @!attribute [rw] allowed_domains
         | 
| 1343 1362 | 
             
                    #   @return [::Array<::String>]
         | 
| 1344 1363 | 
             
                    #     Optional. Domains or subdomains of websites allowed to use the key. All
         | 
| @@ -1356,7 +1375,7 @@ module Google | |
| 1356 1375 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::WebKeySettings::ChallengeSecurityPreference]
         | 
| 1357 1376 | 
             
                    #     Optional. Settings for the frequency and difficulty at which this key
         | 
| 1358 1377 | 
             
                    #     triggers captcha challenges. This should only be specified for
         | 
| 1359 | 
            -
                    #     IntegrationTypes CHECKBOX and INVISIBLE.
         | 
| 1378 | 
            +
                    #     IntegrationTypes CHECKBOX and INVISIBLE and SCORE_AND_CHALLENGE.
         | 
| 1360 1379 | 
             
                    class WebKeySettings
         | 
| 1361 1380 | 
             
                      include ::Google::Protobuf::MessageExts
         | 
| 1362 1381 | 
             
                      extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| @@ -1427,10 +1446,10 @@ module Google | |
| 1427 1446 | 
             
                    # @!attribute [rw] apple_developer_id
         | 
| 1428 1447 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::AppleDeveloperId]
         | 
| 1429 1448 | 
             
                    #     Optional. Apple Developer account details for the app that is protected by
         | 
| 1430 | 
            -
                    #     the reCAPTCHA Key. reCAPTCHA  | 
| 1431 | 
            -
                    #      | 
| 1432 | 
            -
                    #      | 
| 1433 | 
            -
                    #      | 
| 1449 | 
            +
                    #     the reCAPTCHA Key. reCAPTCHA leverages platform-specific checks like Apple
         | 
| 1450 | 
            +
                    #     App Attest and Apple DeviceCheck to protect your app from abuse. Providing
         | 
| 1451 | 
            +
                    #     these fields allows reCAPTCHA to get a better assessment of the integrity
         | 
| 1452 | 
            +
                    #     of your app.
         | 
| 1434 1453 | 
             
                    class IOSKeySettings
         | 
| 1435 1454 | 
             
                      include ::Google::Protobuf::MessageExts
         | 
| 1436 1455 | 
             
                      extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| @@ -1547,23 +1566,23 @@ module Google | |
| 1547 1566 | 
             
                    #     access to the requested resource.
         | 
| 1548 1567 | 
             
                    # @!attribute [rw] block
         | 
| 1549 1568 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::FirewallAction::BlockAction]
         | 
| 1550 | 
            -
                    #     This action  | 
| 1569 | 
            +
                    #     This action denies access to a given page. The user gets an HTTP
         | 
| 1551 1570 | 
             
                    #     error code.
         | 
| 1552 1571 | 
             
                    # @!attribute [rw] include_recaptcha_script
         | 
| 1553 1572 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::FirewallAction::IncludeRecaptchaScriptAction]
         | 
| 1554 | 
            -
                    #     This action  | 
| 1573 | 
            +
                    #     This action injects reCAPTCHA JavaScript code into the HTML page
         | 
| 1555 1574 | 
             
                    #     returned by the site backend.
         | 
| 1556 1575 | 
             
                    # @!attribute [rw] redirect
         | 
| 1557 1576 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::FirewallAction::RedirectAction]
         | 
| 1558 | 
            -
                    #     This action  | 
| 1577 | 
            +
                    #     This action redirects the request to a reCAPTCHA interstitial to
         | 
| 1559 1578 | 
             
                    #     attach a token.
         | 
| 1560 1579 | 
             
                    # @!attribute [rw] substitute
         | 
| 1561 1580 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::FirewallAction::SubstituteAction]
         | 
| 1562 | 
            -
                    #     This action  | 
| 1581 | 
            +
                    #     This action transparently serves a different page to an offending
         | 
| 1563 1582 | 
             
                    #     user.
         | 
| 1564 1583 | 
             
                    # @!attribute [rw] set_header
         | 
| 1565 1584 | 
             
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::FirewallAction::SetHeaderAction]
         | 
| 1566 | 
            -
                    #     This action  | 
| 1585 | 
            +
                    #     This action sets a custom header but allow the request to continue
         | 
| 1567 1586 | 
             
                    #     to the customer backend.
         | 
| 1568 1587 | 
             
                    class FirewallAction
         | 
| 1569 1588 | 
             
                      include ::Google::Protobuf::MessageExts
         | 
| @@ -1593,7 +1612,7 @@ module Google | |
| 1593 1612 | 
             
                      end
         | 
| 1594 1613 |  | 
| 1595 1614 | 
             
                      # A redirect action returns a 307 (temporary redirect) response, pointing
         | 
| 1596 | 
            -
                      # the user to a  | 
| 1615 | 
            +
                      # the user to a reCAPTCHA interstitial page to attach a token.
         | 
| 1597 1616 | 
             
                      class RedirectAction
         | 
| 1598 1617 | 
             
                        include ::Google::Protobuf::MessageExts
         | 
| 1599 1618 | 
             
                        extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| @@ -1809,6 +1828,58 @@ module Google | |
| 1809 1828 | 
             
                      extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| 1810 1829 | 
             
                    end
         | 
| 1811 1830 |  | 
| 1831 | 
            +
                    # The removeIpOverride request message.
         | 
| 1832 | 
            +
                    # @!attribute [rw] name
         | 
| 1833 | 
            +
                    #   @return [::String]
         | 
| 1834 | 
            +
                    #     Required. The name of the key from which the IP override is removed, in the
         | 
| 1835 | 
            +
                    #     format `projects/{project}/keys/{key}`.
         | 
| 1836 | 
            +
                    # @!attribute [rw] ip_override_data
         | 
| 1837 | 
            +
                    #   @return [::Google::Cloud::RecaptchaEnterprise::V1::IpOverrideData]
         | 
| 1838 | 
            +
                    #     Required. IP override to be removed from the key.
         | 
| 1839 | 
            +
                    class RemoveIpOverrideRequest
         | 
| 1840 | 
            +
                      include ::Google::Protobuf::MessageExts
         | 
| 1841 | 
            +
                      extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| 1842 | 
            +
                    end
         | 
| 1843 | 
            +
             | 
| 1844 | 
            +
                    # Response for RemoveIpOverride.
         | 
| 1845 | 
            +
                    class RemoveIpOverrideResponse
         | 
| 1846 | 
            +
                      include ::Google::Protobuf::MessageExts
         | 
| 1847 | 
            +
                      extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| 1848 | 
            +
                    end
         | 
| 1849 | 
            +
             | 
| 1850 | 
            +
                    # The ListIpOverrides request message.
         | 
| 1851 | 
            +
                    # @!attribute [rw] parent
         | 
| 1852 | 
            +
                    #   @return [::String]
         | 
| 1853 | 
            +
                    #     Required. The parent key for which the IP overrides are listed, in the
         | 
| 1854 | 
            +
                    #     format `projects/{project}/keys/{key}`.
         | 
| 1855 | 
            +
                    # @!attribute [rw] page_size
         | 
| 1856 | 
            +
                    #   @return [::Integer]
         | 
| 1857 | 
            +
                    #     Optional. The maximum number of overrides to return. Default is 10. Max
         | 
| 1858 | 
            +
                    #     limit is 100. If the number of overrides is less than the page_size, all
         | 
| 1859 | 
            +
                    #     overrides are returned. If the page size is more than 100, it is coerced to
         | 
| 1860 | 
            +
                    #     100.
         | 
| 1861 | 
            +
                    # @!attribute [rw] page_token
         | 
| 1862 | 
            +
                    #   @return [::String]
         | 
| 1863 | 
            +
                    #     Optional. The next_page_token value returned from a previous
         | 
| 1864 | 
            +
                    #     ListIpOverridesRequest, if any.
         | 
| 1865 | 
            +
                    class ListIpOverridesRequest
         | 
| 1866 | 
            +
                      include ::Google::Protobuf::MessageExts
         | 
| 1867 | 
            +
                      extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| 1868 | 
            +
                    end
         | 
| 1869 | 
            +
             | 
| 1870 | 
            +
                    # Response for ListIpOverrides.
         | 
| 1871 | 
            +
                    # @!attribute [rw] ip_overrides
         | 
| 1872 | 
            +
                    #   @return [::Array<::Google::Cloud::RecaptchaEnterprise::V1::IpOverrideData>]
         | 
| 1873 | 
            +
                    #     IP Overrides details.
         | 
| 1874 | 
            +
                    # @!attribute [rw] next_page_token
         | 
| 1875 | 
            +
                    #   @return [::String]
         | 
| 1876 | 
            +
                    #     Token to retrieve the next page of results. If this field is empty, no keys
         | 
| 1877 | 
            +
                    #     remain in the results.
         | 
| 1878 | 
            +
                    class ListIpOverridesResponse
         | 
| 1879 | 
            +
                      include ::Google::Protobuf::MessageExts
         | 
| 1880 | 
            +
                      extend ::Google::Protobuf::MessageExts::ClassMethods
         | 
| 1881 | 
            +
                    end
         | 
| 1882 | 
            +
             | 
| 1812 1883 | 
             
                    # A membership in a group of related accounts.
         | 
| 1813 1884 | 
             
                    # @!attribute [rw] name
         | 
| 1814 1885 | 
             
                    #   @return [::String]
         | 
| @@ -1875,7 +1946,7 @@ module Google | |
| 1875 1946 | 
             
                        EXPRESS = 5
         | 
| 1876 1947 | 
             
                      end
         | 
| 1877 1948 |  | 
| 1878 | 
            -
                      # Web Application Firewalls supported by reCAPTCHA | 
| 1949 | 
            +
                      # Web Application Firewalls supported by reCAPTCHA.
         | 
| 1879 1950 | 
             
                      module WafService
         | 
| 1880 1951 | 
             
                        # Undefined WAF
         | 
| 1881 1952 | 
             
                        WAF_SERVICE_UNSPECIFIED = 0
         | 
| @@ -1888,6 +1959,9 @@ module Google | |
| 1888 1959 |  | 
| 1889 1960 | 
             
                        # Cloudflare
         | 
| 1890 1961 | 
             
                        CLOUDFLARE = 4
         | 
| 1962 | 
            +
             | 
| 1963 | 
            +
                        # Akamai
         | 
| 1964 | 
            +
                        AKAMAI = 5
         | 
| 1891 1965 | 
             
                      end
         | 
| 1892 1966 | 
             
                    end
         | 
| 1893 1967 |  | 
    
        metadata
    CHANGED
    
    | @@ -1,14 +1,14 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: google-cloud-recaptcha_enterprise-v1
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1. | 
| 4 | 
            +
              version: 1.4.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Google LLC
         | 
| 8 8 | 
             
            autorequire: 
         | 
| 9 9 | 
             
            bindir: bin
         | 
| 10 10 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2024- | 
| 11 | 
            +
            date: 2024-11-14 00:00:00.000000000 Z
         | 
| 12 12 | 
             
            dependencies:
         | 
| 13 13 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 14 | 
             
              name: gapic-common
         | 
| @@ -98,7 +98,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 98 98 | 
             
                - !ruby/object:Gem::Version
         | 
| 99 99 | 
             
                  version: '0'
         | 
| 100 100 | 
             
            requirements: []
         | 
| 101 | 
            -
            rubygems_version: 3.5. | 
| 101 | 
            +
            rubygems_version: 3.5.22
         | 
| 102 102 | 
             
            signing_key: 
         | 
| 103 103 | 
             
            specification_version: 4
         | 
| 104 104 | 
             
            summary: Help protect your website from fraudulent activity, spam, and abuse without
         |