google-cloud-recaptcha_enterprise-v1 0.13.0 → 0.14.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/google/cloud/recaptcha_enterprise/v1/recaptcha_enterprise_service/client.rb +4 -2
- data/lib/google/cloud/recaptcha_enterprise/v1/version.rb +1 -1
- data/lib/google/cloud/recaptchaenterprise/v1/recaptchaenterprise_pb.rb +26 -365
- data/proto_docs/google/api/client.rb +58 -1
- data/proto_docs/google/protobuf/timestamp.rb +1 -3
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7ec8f60966c5fb42f419d6f79a72d6db5b7bb6f9a341527fb219259aa17016c7
|
4
|
+
data.tar.gz: eecd6be3190851497a2d477e775510f96c0f8c8ea734f013932d900578f5a92b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6141402fa19cb4376c0b513a91d23292a3c103f4efb6372f17d959c41d9e658fa4817daa50db76ef03de1758d7301cb0b3cf7a600e2d33b3e308eb061c681fc0
|
7
|
+
data.tar.gz: b988233a98d6baf41a1a098a1b6fcbb08867e99d480007a4f65f9d4e1a11d29b0b532625bbe854490b202e9753f44ca44e5165041622bfa5c0f4bd8e83e796b1
|
@@ -137,7 +137,7 @@ module Google
|
|
137
137
|
credentials = @config.credentials
|
138
138
|
# Use self-signed JWT if the endpoint is unchanged from default,
|
139
139
|
# but only if the default endpoint does not have a region prefix.
|
140
|
-
enable_self_signed_jwt = @config.endpoint ==
|
140
|
+
enable_self_signed_jwt = @config.endpoint == Configuration::DEFAULT_ENDPOINT &&
|
141
141
|
!@config.endpoint.split(".").first.include?("-")
|
142
142
|
credentials ||= Credentials.default scope: @config.scope,
|
143
143
|
enable_self_signed_jwt: enable_self_signed_jwt
|
@@ -1463,7 +1463,9 @@ module Google
|
|
1463
1463
|
class Configuration
|
1464
1464
|
extend ::Gapic::Config
|
1465
1465
|
|
1466
|
-
|
1466
|
+
DEFAULT_ENDPOINT = "recaptchaenterprise.googleapis.com"
|
1467
|
+
|
1468
|
+
config_attr :endpoint, DEFAULT_ENDPOINT, ::String
|
1467
1469
|
config_attr :credentials, nil do |value|
|
1468
1470
|
allowed = [::String, ::Hash, ::Proc, ::Symbol, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
|
1469
1471
|
allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
3
|
# source: google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto
|
3
4
|
|
@@ -11,373 +12,33 @@ require 'google/protobuf/empty_pb'
|
|
11
12
|
require 'google/protobuf/field_mask_pb'
|
12
13
|
require 'google/protobuf/timestamp_pb'
|
13
14
|
|
14
|
-
|
15
|
-
add_file("google/cloud/recaptchaenterprise/v1/recaptchaenterprise.proto", :syntax => :proto3) do
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
value :CHARGEBACK_ALERT, 10
|
38
|
-
value :FRAUD_NOTIFICATION, 11
|
39
|
-
value :CHARGEBACK, 12
|
40
|
-
value :CHARGEBACK_REPRESENTMENT, 13
|
41
|
-
value :CHARGEBACK_REVERSE, 14
|
42
|
-
value :REFUND_REQUEST, 15
|
43
|
-
value :REFUND_DECLINE, 16
|
44
|
-
value :REFUND, 17
|
45
|
-
value :REFUND_REVERSE, 18
|
46
|
-
end
|
47
|
-
add_message "google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest" do
|
48
|
-
optional :name, :string, 1
|
49
|
-
optional :annotation, :enum, 2, "google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest.Annotation"
|
50
|
-
repeated :reasons, :enum, 3, "google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest.Reason"
|
51
|
-
optional :hashed_account_id, :bytes, 4
|
52
|
-
optional :transaction_event, :message, 5, "google.cloud.recaptchaenterprise.v1.TransactionEvent"
|
53
|
-
end
|
54
|
-
add_enum "google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest.Annotation" do
|
55
|
-
value :ANNOTATION_UNSPECIFIED, 0
|
56
|
-
value :LEGITIMATE, 1
|
57
|
-
value :FRAUDULENT, 2
|
58
|
-
value :PASSWORD_CORRECT, 3
|
59
|
-
value :PASSWORD_INCORRECT, 4
|
60
|
-
end
|
61
|
-
add_enum "google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest.Reason" do
|
62
|
-
value :REASON_UNSPECIFIED, 0
|
63
|
-
value :CHARGEBACK, 1
|
64
|
-
value :CHARGEBACK_FRAUD, 8
|
65
|
-
value :CHARGEBACK_DISPUTE, 9
|
66
|
-
value :REFUND, 10
|
67
|
-
value :REFUND_FRAUD, 11
|
68
|
-
value :TRANSACTION_ACCEPTED, 12
|
69
|
-
value :TRANSACTION_DECLINED, 13
|
70
|
-
value :PAYMENT_HEURISTICS, 2
|
71
|
-
value :INITIATED_TWO_FACTOR, 7
|
72
|
-
value :PASSED_TWO_FACTOR, 3
|
73
|
-
value :FAILED_TWO_FACTOR, 4
|
74
|
-
value :CORRECT_PASSWORD, 5
|
75
|
-
value :INCORRECT_PASSWORD, 6
|
76
|
-
value :SOCIAL_SPAM, 14
|
77
|
-
end
|
78
|
-
add_message "google.cloud.recaptchaenterprise.v1.AnnotateAssessmentResponse" do
|
79
|
-
end
|
80
|
-
add_message "google.cloud.recaptchaenterprise.v1.EndpointVerificationInfo" do
|
81
|
-
optional :request_token, :string, 3
|
82
|
-
optional :last_verification_time, :message, 4, "google.protobuf.Timestamp"
|
83
|
-
oneof :endpoint do
|
84
|
-
optional :email_address, :string, 1
|
85
|
-
optional :phone_number, :string, 2
|
86
|
-
end
|
87
|
-
end
|
88
|
-
add_message "google.cloud.recaptchaenterprise.v1.AccountVerificationInfo" do
|
89
|
-
repeated :endpoints, :message, 1, "google.cloud.recaptchaenterprise.v1.EndpointVerificationInfo"
|
90
|
-
optional :language_code, :string, 3
|
91
|
-
optional :latest_verification_result, :enum, 7, "google.cloud.recaptchaenterprise.v1.AccountVerificationInfo.Result"
|
92
|
-
optional :username, :string, 2
|
93
|
-
end
|
94
|
-
add_enum "google.cloud.recaptchaenterprise.v1.AccountVerificationInfo.Result" do
|
95
|
-
value :RESULT_UNSPECIFIED, 0
|
96
|
-
value :SUCCESS_USER_VERIFIED, 1
|
97
|
-
value :ERROR_USER_NOT_VERIFIED, 2
|
98
|
-
value :ERROR_SITE_ONBOARDING_INCOMPLETE, 3
|
99
|
-
value :ERROR_RECIPIENT_NOT_ALLOWED, 4
|
100
|
-
value :ERROR_RECIPIENT_ABUSE_LIMIT_EXHAUSTED, 5
|
101
|
-
value :ERROR_CRITICAL_INTERNAL, 6
|
102
|
-
value :ERROR_CUSTOMER_QUOTA_EXHAUSTED, 7
|
103
|
-
value :ERROR_VERIFICATION_BYPASSED, 8
|
104
|
-
value :ERROR_VERDICT_MISMATCH, 9
|
105
|
-
end
|
106
|
-
add_message "google.cloud.recaptchaenterprise.v1.PrivatePasswordLeakVerification" do
|
107
|
-
optional :lookup_hash_prefix, :bytes, 1
|
108
|
-
optional :encrypted_user_credentials_hash, :bytes, 2
|
109
|
-
repeated :encrypted_leak_match_prefixes, :bytes, 3
|
110
|
-
optional :reencrypted_user_credentials_hash, :bytes, 4
|
111
|
-
end
|
112
|
-
add_message "google.cloud.recaptchaenterprise.v1.Assessment" do
|
113
|
-
optional :name, :string, 1
|
114
|
-
optional :event, :message, 2, "google.cloud.recaptchaenterprise.v1.Event"
|
115
|
-
optional :risk_analysis, :message, 3, "google.cloud.recaptchaenterprise.v1.RiskAnalysis"
|
116
|
-
optional :token_properties, :message, 4, "google.cloud.recaptchaenterprise.v1.TokenProperties"
|
117
|
-
optional :account_verification, :message, 5, "google.cloud.recaptchaenterprise.v1.AccountVerificationInfo"
|
118
|
-
optional :account_defender_assessment, :message, 6, "google.cloud.recaptchaenterprise.v1.AccountDefenderAssessment"
|
119
|
-
optional :private_password_leak_verification, :message, 8, "google.cloud.recaptchaenterprise.v1.PrivatePasswordLeakVerification"
|
120
|
-
optional :fraud_prevention_assessment, :message, 11, "google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment"
|
121
|
-
end
|
122
|
-
add_message "google.cloud.recaptchaenterprise.v1.Event" do
|
123
|
-
optional :token, :string, 1
|
124
|
-
optional :site_key, :string, 2
|
125
|
-
optional :user_agent, :string, 3
|
126
|
-
optional :user_ip_address, :string, 4
|
127
|
-
optional :expected_action, :string, 5
|
128
|
-
optional :hashed_account_id, :bytes, 6
|
129
|
-
optional :transaction_data, :message, 13, "google.cloud.recaptchaenterprise.v1.TransactionData"
|
130
|
-
end
|
131
|
-
add_message "google.cloud.recaptchaenterprise.v1.TransactionData" do
|
132
|
-
proto3_optional :transaction_id, :string, 11
|
133
|
-
optional :payment_method, :string, 1
|
134
|
-
optional :card_bin, :string, 2
|
135
|
-
optional :card_last_four, :string, 3
|
136
|
-
optional :currency_code, :string, 4
|
137
|
-
optional :value, :double, 5
|
138
|
-
optional :shipping_value, :double, 12
|
139
|
-
optional :shipping_address, :message, 6, "google.cloud.recaptchaenterprise.v1.TransactionData.Address"
|
140
|
-
optional :billing_address, :message, 7, "google.cloud.recaptchaenterprise.v1.TransactionData.Address"
|
141
|
-
optional :user, :message, 8, "google.cloud.recaptchaenterprise.v1.TransactionData.User"
|
142
|
-
repeated :merchants, :message, 13, "google.cloud.recaptchaenterprise.v1.TransactionData.User"
|
143
|
-
repeated :items, :message, 14, "google.cloud.recaptchaenterprise.v1.TransactionData.Item"
|
144
|
-
optional :gateway_info, :message, 10, "google.cloud.recaptchaenterprise.v1.TransactionData.GatewayInfo"
|
145
|
-
end
|
146
|
-
add_message "google.cloud.recaptchaenterprise.v1.TransactionData.Address" do
|
147
|
-
optional :recipient, :string, 1
|
148
|
-
repeated :address, :string, 2
|
149
|
-
optional :locality, :string, 3
|
150
|
-
optional :administrative_area, :string, 4
|
151
|
-
optional :region_code, :string, 5
|
152
|
-
optional :postal_code, :string, 6
|
153
|
-
end
|
154
|
-
add_message "google.cloud.recaptchaenterprise.v1.TransactionData.User" do
|
155
|
-
optional :account_id, :string, 6
|
156
|
-
optional :creation_ms, :int64, 1
|
157
|
-
optional :email, :string, 2
|
158
|
-
optional :email_verified, :bool, 3
|
159
|
-
optional :phone_number, :string, 4
|
160
|
-
optional :phone_verified, :bool, 5
|
161
|
-
end
|
162
|
-
add_message "google.cloud.recaptchaenterprise.v1.TransactionData.Item" do
|
163
|
-
optional :name, :string, 1
|
164
|
-
optional :value, :double, 2
|
165
|
-
optional :quantity, :int64, 3
|
166
|
-
optional :merchant_account_id, :string, 4
|
167
|
-
end
|
168
|
-
add_message "google.cloud.recaptchaenterprise.v1.TransactionData.GatewayInfo" do
|
169
|
-
optional :name, :string, 1
|
170
|
-
optional :gateway_response_code, :string, 2
|
171
|
-
optional :avs_response_code, :string, 3
|
172
|
-
optional :cvv_response_code, :string, 4
|
173
|
-
end
|
174
|
-
add_message "google.cloud.recaptchaenterprise.v1.RiskAnalysis" do
|
175
|
-
optional :score, :float, 1
|
176
|
-
repeated :reasons, :enum, 2, "google.cloud.recaptchaenterprise.v1.RiskAnalysis.ClassificationReason"
|
177
|
-
end
|
178
|
-
add_enum "google.cloud.recaptchaenterprise.v1.RiskAnalysis.ClassificationReason" do
|
179
|
-
value :CLASSIFICATION_REASON_UNSPECIFIED, 0
|
180
|
-
value :AUTOMATION, 1
|
181
|
-
value :UNEXPECTED_ENVIRONMENT, 2
|
182
|
-
value :TOO_MUCH_TRAFFIC, 3
|
183
|
-
value :UNEXPECTED_USAGE_PATTERNS, 4
|
184
|
-
value :LOW_CONFIDENCE_SCORE, 5
|
185
|
-
value :SUSPECTED_CARDING, 6
|
186
|
-
value :SUSPECTED_CHARGEBACK, 7
|
187
|
-
end
|
188
|
-
add_message "google.cloud.recaptchaenterprise.v1.TokenProperties" do
|
189
|
-
optional :valid, :bool, 1
|
190
|
-
optional :invalid_reason, :enum, 2, "google.cloud.recaptchaenterprise.v1.TokenProperties.InvalidReason"
|
191
|
-
optional :create_time, :message, 3, "google.protobuf.Timestamp"
|
192
|
-
optional :hostname, :string, 4
|
193
|
-
optional :android_package_name, :string, 8
|
194
|
-
optional :ios_bundle_id, :string, 9
|
195
|
-
optional :action, :string, 5
|
196
|
-
end
|
197
|
-
add_enum "google.cloud.recaptchaenterprise.v1.TokenProperties.InvalidReason" do
|
198
|
-
value :INVALID_REASON_UNSPECIFIED, 0
|
199
|
-
value :UNKNOWN_INVALID_REASON, 1
|
200
|
-
value :MALFORMED, 2
|
201
|
-
value :EXPIRED, 3
|
202
|
-
value :DUPE, 4
|
203
|
-
value :MISSING, 5
|
204
|
-
value :BROWSER_ERROR, 6
|
205
|
-
end
|
206
|
-
add_message "google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment" do
|
207
|
-
optional :transaction_risk, :float, 1
|
208
|
-
optional :stolen_instrument_verdict, :message, 2, "google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.StolenInstrumentVerdict"
|
209
|
-
optional :card_testing_verdict, :message, 3, "google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.CardTestingVerdict"
|
210
|
-
end
|
211
|
-
add_message "google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.StolenInstrumentVerdict" do
|
212
|
-
optional :risk, :float, 1
|
213
|
-
end
|
214
|
-
add_message "google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.CardTestingVerdict" do
|
215
|
-
optional :risk, :float, 1
|
216
|
-
end
|
217
|
-
add_message "google.cloud.recaptchaenterprise.v1.AccountDefenderAssessment" do
|
218
|
-
repeated :labels, :enum, 1, "google.cloud.recaptchaenterprise.v1.AccountDefenderAssessment.AccountDefenderLabel"
|
219
|
-
end
|
220
|
-
add_enum "google.cloud.recaptchaenterprise.v1.AccountDefenderAssessment.AccountDefenderLabel" do
|
221
|
-
value :ACCOUNT_DEFENDER_LABEL_UNSPECIFIED, 0
|
222
|
-
value :PROFILE_MATCH, 1
|
223
|
-
value :SUSPICIOUS_LOGIN_ACTIVITY, 2
|
224
|
-
value :SUSPICIOUS_ACCOUNT_CREATION, 3
|
225
|
-
value :RELATED_ACCOUNTS_NUMBER_HIGH, 4
|
226
|
-
end
|
227
|
-
add_message "google.cloud.recaptchaenterprise.v1.CreateKeyRequest" do
|
228
|
-
optional :parent, :string, 1
|
229
|
-
optional :key, :message, 2, "google.cloud.recaptchaenterprise.v1.Key"
|
230
|
-
end
|
231
|
-
add_message "google.cloud.recaptchaenterprise.v1.ListKeysRequest" do
|
232
|
-
optional :parent, :string, 1
|
233
|
-
optional :page_size, :int32, 2
|
234
|
-
optional :page_token, :string, 3
|
235
|
-
end
|
236
|
-
add_message "google.cloud.recaptchaenterprise.v1.ListKeysResponse" do
|
237
|
-
repeated :keys, :message, 1, "google.cloud.recaptchaenterprise.v1.Key"
|
238
|
-
optional :next_page_token, :string, 2
|
239
|
-
end
|
240
|
-
add_message "google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyRequest" do
|
241
|
-
optional :key, :string, 1
|
242
|
-
end
|
243
|
-
add_message "google.cloud.recaptchaenterprise.v1.GetKeyRequest" do
|
244
|
-
optional :name, :string, 1
|
245
|
-
end
|
246
|
-
add_message "google.cloud.recaptchaenterprise.v1.UpdateKeyRequest" do
|
247
|
-
optional :key, :message, 1, "google.cloud.recaptchaenterprise.v1.Key"
|
248
|
-
optional :update_mask, :message, 2, "google.protobuf.FieldMask"
|
249
|
-
end
|
250
|
-
add_message "google.cloud.recaptchaenterprise.v1.DeleteKeyRequest" do
|
251
|
-
optional :name, :string, 1
|
252
|
-
end
|
253
|
-
add_message "google.cloud.recaptchaenterprise.v1.MigrateKeyRequest" do
|
254
|
-
optional :name, :string, 1
|
255
|
-
optional :skip_billing_check, :bool, 2
|
256
|
-
end
|
257
|
-
add_message "google.cloud.recaptchaenterprise.v1.GetMetricsRequest" do
|
258
|
-
optional :name, :string, 1
|
259
|
-
end
|
260
|
-
add_message "google.cloud.recaptchaenterprise.v1.Metrics" do
|
261
|
-
optional :name, :string, 4
|
262
|
-
optional :start_time, :message, 1, "google.protobuf.Timestamp"
|
263
|
-
repeated :score_metrics, :message, 2, "google.cloud.recaptchaenterprise.v1.ScoreMetrics"
|
264
|
-
repeated :challenge_metrics, :message, 3, "google.cloud.recaptchaenterprise.v1.ChallengeMetrics"
|
265
|
-
end
|
266
|
-
add_message "google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyResponse" do
|
267
|
-
optional :legacy_secret_key, :string, 1
|
268
|
-
end
|
269
|
-
add_message "google.cloud.recaptchaenterprise.v1.Key" do
|
270
|
-
optional :name, :string, 1
|
271
|
-
optional :display_name, :string, 2
|
272
|
-
map :labels, :string, :string, 6
|
273
|
-
optional :create_time, :message, 7, "google.protobuf.Timestamp"
|
274
|
-
optional :testing_options, :message, 9, "google.cloud.recaptchaenterprise.v1.TestingOptions"
|
275
|
-
optional :waf_settings, :message, 10, "google.cloud.recaptchaenterprise.v1.WafSettings"
|
276
|
-
oneof :platform_settings do
|
277
|
-
optional :web_settings, :message, 3, "google.cloud.recaptchaenterprise.v1.WebKeySettings"
|
278
|
-
optional :android_settings, :message, 4, "google.cloud.recaptchaenterprise.v1.AndroidKeySettings"
|
279
|
-
optional :ios_settings, :message, 5, "google.cloud.recaptchaenterprise.v1.IOSKeySettings"
|
280
|
-
end
|
281
|
-
end
|
282
|
-
add_message "google.cloud.recaptchaenterprise.v1.TestingOptions" do
|
283
|
-
optional :testing_score, :float, 1
|
284
|
-
optional :testing_challenge, :enum, 2, "google.cloud.recaptchaenterprise.v1.TestingOptions.TestingChallenge"
|
285
|
-
end
|
286
|
-
add_enum "google.cloud.recaptchaenterprise.v1.TestingOptions.TestingChallenge" do
|
287
|
-
value :TESTING_CHALLENGE_UNSPECIFIED, 0
|
288
|
-
value :NOCAPTCHA, 1
|
289
|
-
value :UNSOLVABLE_CHALLENGE, 2
|
290
|
-
end
|
291
|
-
add_message "google.cloud.recaptchaenterprise.v1.WebKeySettings" do
|
292
|
-
optional :allow_all_domains, :bool, 3
|
293
|
-
repeated :allowed_domains, :string, 1
|
294
|
-
optional :allow_amp_traffic, :bool, 2
|
295
|
-
optional :integration_type, :enum, 4, "google.cloud.recaptchaenterprise.v1.WebKeySettings.IntegrationType"
|
296
|
-
optional :challenge_security_preference, :enum, 5, "google.cloud.recaptchaenterprise.v1.WebKeySettings.ChallengeSecurityPreference"
|
297
|
-
end
|
298
|
-
add_enum "google.cloud.recaptchaenterprise.v1.WebKeySettings.IntegrationType" do
|
299
|
-
value :INTEGRATION_TYPE_UNSPECIFIED, 0
|
300
|
-
value :SCORE, 1
|
301
|
-
value :CHECKBOX, 2
|
302
|
-
value :INVISIBLE, 3
|
303
|
-
end
|
304
|
-
add_enum "google.cloud.recaptchaenterprise.v1.WebKeySettings.ChallengeSecurityPreference" do
|
305
|
-
value :CHALLENGE_SECURITY_PREFERENCE_UNSPECIFIED, 0
|
306
|
-
value :USABILITY, 1
|
307
|
-
value :BALANCE, 2
|
308
|
-
value :SECURITY, 3
|
309
|
-
end
|
310
|
-
add_message "google.cloud.recaptchaenterprise.v1.AndroidKeySettings" do
|
311
|
-
optional :allow_all_package_names, :bool, 2
|
312
|
-
repeated :allowed_package_names, :string, 1
|
313
|
-
end
|
314
|
-
add_message "google.cloud.recaptchaenterprise.v1.IOSKeySettings" do
|
315
|
-
optional :allow_all_bundle_ids, :bool, 2
|
316
|
-
repeated :allowed_bundle_ids, :string, 1
|
317
|
-
end
|
318
|
-
add_message "google.cloud.recaptchaenterprise.v1.ScoreDistribution" do
|
319
|
-
map :score_buckets, :int32, :int64, 1
|
320
|
-
end
|
321
|
-
add_message "google.cloud.recaptchaenterprise.v1.ScoreMetrics" do
|
322
|
-
optional :overall_metrics, :message, 1, "google.cloud.recaptchaenterprise.v1.ScoreDistribution"
|
323
|
-
map :action_metrics, :string, :message, 2, "google.cloud.recaptchaenterprise.v1.ScoreDistribution"
|
324
|
-
end
|
325
|
-
add_message "google.cloud.recaptchaenterprise.v1.ChallengeMetrics" do
|
326
|
-
optional :pageload_count, :int64, 1
|
327
|
-
optional :nocaptcha_count, :int64, 2
|
328
|
-
optional :failed_count, :int64, 3
|
329
|
-
optional :passed_count, :int64, 4
|
330
|
-
end
|
331
|
-
add_message "google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsRequest" do
|
332
|
-
optional :parent, :string, 1
|
333
|
-
optional :page_size, :int32, 2
|
334
|
-
optional :page_token, :string, 3
|
335
|
-
end
|
336
|
-
add_message "google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsResponse" do
|
337
|
-
repeated :related_account_group_memberships, :message, 1, "google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership"
|
338
|
-
optional :next_page_token, :string, 2
|
339
|
-
end
|
340
|
-
add_message "google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsRequest" do
|
341
|
-
optional :parent, :string, 1
|
342
|
-
optional :page_size, :int32, 2
|
343
|
-
optional :page_token, :string, 3
|
344
|
-
end
|
345
|
-
add_message "google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsResponse" do
|
346
|
-
repeated :related_account_groups, :message, 1, "google.cloud.recaptchaenterprise.v1.RelatedAccountGroup"
|
347
|
-
optional :next_page_token, :string, 2
|
348
|
-
end
|
349
|
-
add_message "google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsRequest" do
|
350
|
-
optional :project, :string, 1
|
351
|
-
optional :hashed_account_id, :bytes, 2
|
352
|
-
optional :page_size, :int32, 3
|
353
|
-
optional :page_token, :string, 4
|
354
|
-
end
|
355
|
-
add_message "google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsResponse" do
|
356
|
-
repeated :related_account_group_memberships, :message, 1, "google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership"
|
357
|
-
optional :next_page_token, :string, 2
|
358
|
-
end
|
359
|
-
add_message "google.cloud.recaptchaenterprise.v1.RelatedAccountGroupMembership" do
|
360
|
-
optional :name, :string, 1
|
361
|
-
optional :hashed_account_id, :bytes, 2
|
362
|
-
end
|
363
|
-
add_message "google.cloud.recaptchaenterprise.v1.RelatedAccountGroup" do
|
364
|
-
optional :name, :string, 1
|
365
|
-
end
|
366
|
-
add_message "google.cloud.recaptchaenterprise.v1.WafSettings" do
|
367
|
-
optional :waf_service, :enum, 1, "google.cloud.recaptchaenterprise.v1.WafSettings.WafService"
|
368
|
-
optional :waf_feature, :enum, 2, "google.cloud.recaptchaenterprise.v1.WafSettings.WafFeature"
|
369
|
-
end
|
370
|
-
add_enum "google.cloud.recaptchaenterprise.v1.WafSettings.WafFeature" do
|
371
|
-
value :WAF_FEATURE_UNSPECIFIED, 0
|
372
|
-
value :CHALLENGE_PAGE, 1
|
373
|
-
value :SESSION_TOKEN, 2
|
374
|
-
value :ACTION_TOKEN, 3
|
375
|
-
end
|
376
|
-
add_enum "google.cloud.recaptchaenterprise.v1.WafSettings.WafService" do
|
377
|
-
value :WAF_SERVICE_UNSPECIFIED, 0
|
378
|
-
value :CA, 1
|
15
|
+
|
16
|
+
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\x19google/api/resource.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.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\"\xea\x06\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\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\"\xd1\x04\n\x17\x41\x63\x63ountVerificationInfo\x12P\n\tendpoints\x18\x01 \x03(\x0b\x32=.google.cloud.recaptchaenterprise.v1.EndpointVerificationInfo\x12\x15\n\rlanguage_code\x18\x03 \x01(\t\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\x01\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\"\xf7\x05\n\nAssessment\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x39\n\x05\x65vent\x18\x02 \x01(\x0b\x32*.google.cloud.recaptchaenterprise.v1.Event\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\x12Z\n\x14\x61\x63\x63ount_verification\x18\x05 \x01(\x0b\x32<.google.cloud.recaptchaenterprise.v1.AccountVerificationInfo\x12\x63\n\x1b\x61\x63\x63ount_defender_assessment\x18\x06 \x01(\x0b\x32>.google.cloud.recaptchaenterprise.v1.AccountDefenderAssessment\x12p\n\"private_password_leak_verification\x18\x08 \x01(\x0b\x32\x44.google.cloud.recaptchaenterprise.v1.PrivatePasswordLeakVerification\x12\x63\n\x1b\x66raud_prevention_assessment\x18\x0b \x01(\x0b\x32>.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment:_\xea\x41\\\n-recaptchaenterprise.googleapis.com/Assessment\x12+projects/{project}/assessments/{assessment}\"\xfc\x01\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\x1c\n\x0fuser_ip_address\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12\x1c\n\x0f\x65xpected_action\x18\x05 \x01(\tB\x03\xe0\x41\x01\x12\x1e\n\x11hashed_account_id\x18\x06 \x01(\x0c\x42\x03\xe0\x41\x01\x12S\n\x10transaction_data\x18\r \x01(\x0b\x32\x34.google.cloud.recaptchaenterprise.v1.TransactionDataB\x03\xe0\x41\x01\"\xff\x08\n\x0fTransactionData\x12\x1b\n\x0etransaction_id\x18\x0b \x01(\tH\x00\x88\x01\x01\x12\x16\n\x0epayment_method\x18\x01 \x01(\t\x12\x10\n\x08\x63\x61rd_bin\x18\x02 \x01(\t\x12\x16\n\x0e\x63\x61rd_last_four\x18\x03 \x01(\t\x12\x15\n\rcurrency_code\x18\x04 \x01(\t\x12\r\n\x05value\x18\x05 \x01(\x01\x12\x16\n\x0eshipping_value\x18\x0c \x01(\x01\x12V\n\x10shipping_address\x18\x06 \x01(\x0b\x32<.google.cloud.recaptchaenterprise.v1.TransactionData.Address\x12U\n\x0f\x62illing_address\x18\x07 \x01(\x0b\x32<.google.cloud.recaptchaenterprise.v1.TransactionData.Address\x12G\n\x04user\x18\x08 \x01(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.TransactionData.User\x12L\n\tmerchants\x18\r \x03(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.TransactionData.User\x12H\n\x05items\x18\x0e \x03(\x0b\x32\x39.google.cloud.recaptchaenterprise.v1.TransactionData.Item\x12V\n\x0cgateway_info\x18\n \x01(\x0b\x32@.google.cloud.recaptchaenterprise.v1.TransactionData.GatewayInfo\x1a\x86\x01\n\x07\x41\x64\x64ress\x12\x11\n\trecipient\x18\x01 \x01(\t\x12\x0f\n\x07\x61\x64\x64ress\x18\x02 \x03(\t\x12\x10\n\x08locality\x18\x03 \x01(\t\x12\x1b\n\x13\x61\x64ministrative_area\x18\x04 \x01(\t\x12\x13\n\x0bregion_code\x18\x05 \x01(\t\x12\x13\n\x0bpostal_code\x18\x06 \x01(\t\x1a\x84\x01\n\x04User\x12\x12\n\naccount_id\x18\x06 \x01(\t\x12\x13\n\x0b\x63reation_ms\x18\x01 \x01(\x03\x12\r\n\x05\x65mail\x18\x02 \x01(\t\x12\x16\n\x0e\x65mail_verified\x18\x03 \x01(\x08\x12\x14\n\x0cphone_number\x18\x04 \x01(\t\x12\x16\n\x0ephone_verified\x18\x05 \x01(\x08\x1aR\n\x04Item\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\x01\x12\x10\n\x08quantity\x18\x03 \x01(\x03\x12\x1b\n\x13merchant_account_id\x18\x04 \x01(\t\x1ap\n\x0bGatewayInfo\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x1d\n\x15gateway_response_code\x18\x02 \x01(\t\x12\x19\n\x11\x61vs_response_code\x18\x03 \x01(\t\x12\x19\n\x11\x63vv_response_code\x18\x04 \x01(\tB\x11\n\x0f_transaction_id\"\xe2\x02\n\x0cRiskAnalysis\x12\r\n\x05score\x18\x01 \x01(\x02\x12W\n\x07reasons\x18\x02 \x03(\x0e\x32\x46.google.cloud.recaptchaenterprise.v1.RiskAnalysis.ClassificationReason\"\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\"\x98\x03\n\x0fTokenProperties\x12\r\n\x05valid\x18\x01 \x01(\x08\x12Z\n\x0einvalid_reason\x18\x02 \x01(\x0e\x32\x42.google.cloud.recaptchaenterprise.v1.TokenProperties.InvalidReason\x12/\n\x0b\x63reate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08hostname\x18\x04 \x01(\t\x12\x1c\n\x14\x61ndroid_package_name\x18\x08 \x01(\t\x12\x15\n\rios_bundle_id\x18\t \x01(\t\x12\x0e\n\x06\x61\x63tion\x18\x05 \x01(\t\"\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\"\xee\x02\n\x19\x46raudPreventionAssessment\x12\x18\n\x10transaction_risk\x18\x01 \x01(\x02\x12y\n\x19stolen_instrument_verdict\x18\x02 \x01(\x0b\x32V.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.StolenInstrumentVerdict\x12o\n\x14\x63\x61rd_testing_verdict\x18\x03 \x01(\x0b\x32Q.google.cloud.recaptchaenterprise.v1.FraudPreventionAssessment.CardTestingVerdict\x1a\'\n\x17StolenInstrumentVerdict\x12\x0c\n\x04risk\x18\x01 \x01(\x02\x1a\"\n\x12\x43\x61rdTestingVerdict\x12\x0c\n\x04risk\x18\x01 \x01(\x02\"\xb6\x02\n\x19\x41\x63\x63ountDefenderAssessment\x12\x63\n\x06labels\x18\x01 \x03(\x0e\x32S.google.cloud.recaptchaenterprise.v1.AccountDefenderAssessment.AccountDefenderLabel\"\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\"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\"\xc0\x02\n\x07Metrics\x12\x11\n\x04name\x18\x04 \x01(\tB\x03\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:V\xea\x41S\n*recaptchaenterprise.googleapis.com/Metrics\x12%projects/{project}/keys/{key}/metrics\"<\n\x1fRetrieveLegacySecretKeyResponse\x12\x19\n\x11legacy_secret_key\x18\x01 \x01(\t\"\xba\x05\n\x03Key\x12\x0c\n\x04name\x18\x01 \x01(\t\x12\x14\n\x0c\x64isplay_name\x18\x02 \x01(\t\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\x12\x44\n\x06labels\x18\x06 \x03(\x0b\x32\x34.google.cloud.recaptchaenterprise.v1.Key.LabelsEntry\x12\x34\n\x0b\x63reate_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12L\n\x0ftesting_options\x18\t \x01(\x0b\x32\x33.google.cloud.recaptchaenterprise.v1.TestingOptions\x12\x46\n\x0cwaf_settings\x18\n \x01(\x0b\x32\x30.google.cloud.recaptchaenterprise.v1.WafSettings\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:J\xea\x41G\n&recaptchaenterprise.googleapis.com/Key\x12\x1dprojects/{project}/keys/{key}B\x13\n\x11platform_settings\"\xe8\x01\n\x0eTestingOptions\x12\x15\n\rtesting_score\x18\x01 \x01(\x02\x12_\n\x11testing_challenge\x18\x02 \x01(\x0e\x32\x44.google.cloud.recaptchaenterprise.v1.TestingOptions.TestingChallenge\"^\n\x10TestingChallenge\x12!\n\x1dTESTING_CHALLENGE_UNSPECIFIED\x10\x00\x12\r\n\tNOCAPTCHA\x10\x01\x12\x18\n\x14UNSOLVABLE_CHALLENGE\x10\x02\"\x90\x04\n\x0eWebKeySettings\x12\x19\n\x11\x61llow_all_domains\x18\x03 \x01(\x08\x12\x17\n\x0f\x61llowed_domains\x18\x01 \x03(\t\x12\x19\n\x11\x61llow_amp_traffic\x18\x02 \x01(\x08\x12\x62\n\x10integration_type\x18\x04 \x01(\x0e\x32\x43.google.cloud.recaptchaenterprise.v1.WebKeySettings.IntegrationTypeB\x03\xe0\x41\x02\x12v\n\x1d\x63hallenge_security_preference\x18\x05 \x01(\x0e\x32O.google.cloud.recaptchaenterprise.v1.WebKeySettings.ChallengeSecurityPreference\"[\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\"T\n\x12\x41ndroidKeySettings\x12\x1f\n\x17\x61llow_all_package_names\x18\x02 \x01(\x08\x12\x1d\n\x15\x61llowed_package_names\x18\x01 \x03(\t\"J\n\x0eIOSKeySettings\x12\x1c\n\x14\x61llow_all_bundle_ids\x18\x02 \x01(\x08\x12\x1a\n\x12\x61llowed_bundle_ids\x18\x01 \x03(\t\"\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\"\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\"\xd9\x01\n+SearchRelatedAccountGroupMembershipsRequest\x12Y\n\x07project\x18\x01 \x01(\tBH\xe0\x41\x02\xfa\x41\x42\x12@recaptchaenterprise.googleapis.com/RelatedAccountGroupMembership\x12\x1e\n\x11hashed_account_id\x18\x02 \x01(\x0c\x42\x03\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\"\xb3\x02\n\x1dRelatedAccountGroupMembership\x12V\n\x04name\x18\x01 \x01(\tBH\xe0\x41\x02\xfa\x41\x42\n@recaptchaenterprise.googleapis.com/RelatedAccountGroupMembership\x12\x19\n\x11hashed_account_id\x18\x02 \x01(\x0c:\x9e\x01\xea\x41\x9a\x01\n@recaptchaenterprise.googleapis.com/RelatedAccountGroupMembership\x12Vprojects/{project}/relatedaccountgroups/{relatedaccountgroup}/memberships/{membership}\"\xdf\x01\n\x13RelatedAccountGroup\x12L\n\x04name\x18\x01 \x01(\tB>\xe0\x41\x02\xfa\x41\x38\n6recaptchaenterprise.googleapis.com/RelatedAccountGroup:z\xea\x41w\n6recaptchaenterprise.googleapis.com/RelatedAccountGroup\x12=projects/{project}/relatedaccountgroups/{relatedaccountgroup}\"\xd2\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\"b\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\"1\n\nWafService\x12\x1b\n\x17WAF_SERVICE_UNSPECIFIED\x10\x00\x12\x06\n\x02\x43\x41\x10\x01\x32\xb1\x15\n\x1aRecaptchaEnterpriseService\x12\xce\x01\n\x10\x43reateAssessment\x12<.google.cloud.recaptchaenterprise.v1.CreateAssessmentRequest\x1a/.google.cloud.recaptchaenterprise.v1.Assessment\"K\x82\xd3\xe4\x93\x02\x31\"#/v1/{parent=projects/*}/assessments:\nassessment\xda\x41\x11parent,assessment\x12\xe0\x01\n\x12\x41nnotateAssessment\x12>.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentRequest\x1a?.google.cloud.recaptchaenterprise.v1.AnnotateAssessmentResponse\"I\x82\xd3\xe4\x93\x02\x31\",/v1/{name=projects/*/assessments/*}:annotate:\x01*\xda\x41\x0fname,annotation\x12\xa4\x01\n\tCreateKey\x12\x35.google.cloud.recaptchaenterprise.v1.CreateKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"6\x82\xd3\xe4\x93\x02#\"\x1c/v1/{parent=projects/*}/keys:\x03key\xda\x41\nparent,key\x12\xa6\x01\n\x08ListKeys\x12\x34.google.cloud.recaptchaenterprise.v1.ListKeysRequest\x1a\x35.google.cloud.recaptchaenterprise.v1.ListKeysResponse\"-\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v1/{parent=projects/*}/keys\xda\x41\x06parent\x12\xe7\x01\n\x17RetrieveLegacySecretKey\x12\x43.google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyRequest\x1a\x44.google.cloud.recaptchaenterprise.v1.RetrieveLegacySecretKeyResponse\"A\x82\xd3\xe4\x93\x02\x35\x12\x33/v1/{key=projects/*/keys/*}:retrieveLegacySecretKey\xda\x41\x03key\x12\x93\x01\n\x06GetKey\x12\x32.google.cloud.recaptchaenterprise.v1.GetKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"+\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v1/{name=projects/*/keys/*}\xda\x41\x04name\x12\xad\x01\n\tUpdateKey\x12\x35.google.cloud.recaptchaenterprise.v1.UpdateKeyRequest\x1a(.google.cloud.recaptchaenterprise.v1.Key\"?\x82\xd3\xe4\x93\x02\'2 /v1/{key.name=projects/*/keys/*}:\x03key\xda\x41\x0fkey,update_mask\x12\x87\x01\n\tDeleteKey\x12\x35.google.cloud.recaptchaenterprise.v1.DeleteKeyRequest\x1a\x16.google.protobuf.Empty\"+\x82\xd3\xe4\x93\x02\x1e*\x1c/v1/{name=projects/*/keys/*}\xda\x41\x04name\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\xa7\x01\n\nGetMetrics\x12\x36.google.cloud.recaptchaenterprise.v1.GetMetricsRequest\x1a,.google.cloud.recaptchaenterprise.v1.Metrics\"3\x82\xd3\xe4\x93\x02&\x12$/v1/{name=projects/*/keys/*/metrics}\xda\x41\x04name\x12\xe6\x01\n\x18ListRelatedAccountGroups\x12\x44.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsRequest\x1a\x45.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupsResponse\"=\x82\xd3\xe4\x93\x02.\x12,/v1/{parent=projects/*}/relatedaccountgroups\xda\x41\x06parent\x12\x92\x02\n\"ListRelatedAccountGroupMemberships\x12N.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsRequest\x1aO.google.cloud.recaptchaenterprise.v1.ListRelatedAccountGroupMembershipsResponse\"K\x82\xd3\xe4\x93\x02<\x12:/v1/{parent=projects/*/relatedaccountgroups/*}/memberships\xda\x41\x06parent\x12\xb2\x02\n$SearchRelatedAccountGroupMemberships\x12P.google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsRequest\x1aQ.google.cloud.recaptchaenterprise.v1.SearchRelatedAccountGroupMembershipsResponse\"e\x82\xd3\xe4\x93\x02\x43\">/v1/{project=projects/*}/relatedaccountgroupmemberships:search:\x01*\xda\x41\x19project,hashed_account_id\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"
|
17
|
+
|
18
|
+
pool = Google::Protobuf::DescriptorPool.generated_pool
|
19
|
+
|
20
|
+
begin
|
21
|
+
pool.add_serialized_file(descriptor_data)
|
22
|
+
rescue TypeError => e
|
23
|
+
# Compatibility code: will be removed in the next major version.
|
24
|
+
require 'google/protobuf/descriptor_pb'
|
25
|
+
parsed = Google::Protobuf::FileDescriptorProto.decode(descriptor_data)
|
26
|
+
parsed.clear_dependency
|
27
|
+
serialized = parsed.class.encode(parsed)
|
28
|
+
file = pool.add_serialized_file(serialized)
|
29
|
+
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
30
|
+
imports = [
|
31
|
+
["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
|
32
|
+
["google.protobuf.FieldMask", "google/protobuf/field_mask.proto"],
|
33
|
+
]
|
34
|
+
imports.each do |type_name, expected_filename|
|
35
|
+
import_file = pool.lookup(type_name).file_descriptor
|
36
|
+
if import_file.name != expected_filename
|
37
|
+
warn "- #{file.name} imports #{expected_filename}, but that import was loaded as #{import_file.name}"
|
379
38
|
end
|
380
39
|
end
|
40
|
+
warn "Each proto file must use a consistent fully-qualified name."
|
41
|
+
warn "This will become an error in the next major version."
|
381
42
|
end
|
382
43
|
|
383
44
|
module Google
|
@@ -83,7 +83,7 @@ module Google
|
|
83
83
|
# long-running operation pattern.
|
84
84
|
# @!attribute [rw] new_issue_uri
|
85
85
|
# @return [::String]
|
86
|
-
# Link to a
|
86
|
+
# Link to a *public* URI where users can report issues. Example:
|
87
87
|
# https://issuetracker.google.com/issues/new?component=190865&template=1161103
|
88
88
|
# @!attribute [rw] documentation_uri
|
89
89
|
# @return [::String]
|
@@ -209,9 +209,57 @@ module Google
|
|
209
209
|
# @!attribute [rw] common
|
210
210
|
# @return [::Google::Api::CommonLanguageSettings]
|
211
211
|
# Some settings.
|
212
|
+
# @!attribute [rw] renamed_services
|
213
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
214
|
+
# Map from original service names to renamed versions.
|
215
|
+
# This is used when the default generated types
|
216
|
+
# would cause a naming conflict. (Neither name is
|
217
|
+
# fully-qualified.)
|
218
|
+
# Example: Subscriber to SubscriberServiceApi.
|
219
|
+
# @!attribute [rw] renamed_resources
|
220
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
221
|
+
# Map from full resource types to the effective short name
|
222
|
+
# for the resource. This is used when otherwise resource
|
223
|
+
# named from different services would cause naming collisions.
|
224
|
+
# Example entry:
|
225
|
+
# "datalabeling.googleapis.com/Dataset": "DataLabelingDataset"
|
226
|
+
# @!attribute [rw] ignored_resources
|
227
|
+
# @return [::Array<::String>]
|
228
|
+
# List of full resource types to ignore during generation.
|
229
|
+
# This is typically used for API-specific Location resources,
|
230
|
+
# which should be handled by the generator as if they were actually
|
231
|
+
# the common Location resources.
|
232
|
+
# Example entry: "documentai.googleapis.com/Location"
|
233
|
+
# @!attribute [rw] forced_namespace_aliases
|
234
|
+
# @return [::Array<::String>]
|
235
|
+
# Namespaces which must be aliased in snippets due to
|
236
|
+
# a known (but non-generator-predictable) naming collision
|
237
|
+
# @!attribute [rw] handwritten_signatures
|
238
|
+
# @return [::Array<::String>]
|
239
|
+
# Method signatures (in the form "service.method(signature)")
|
240
|
+
# which are provided separately, so shouldn't be generated.
|
241
|
+
# Snippets *calling* these methods are still generated, however.
|
212
242
|
class DotnetSettings
|
213
243
|
include ::Google::Protobuf::MessageExts
|
214
244
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
245
|
+
|
246
|
+
# @!attribute [rw] key
|
247
|
+
# @return [::String]
|
248
|
+
# @!attribute [rw] value
|
249
|
+
# @return [::String]
|
250
|
+
class RenamedServicesEntry
|
251
|
+
include ::Google::Protobuf::MessageExts
|
252
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
253
|
+
end
|
254
|
+
|
255
|
+
# @!attribute [rw] key
|
256
|
+
# @return [::String]
|
257
|
+
# @!attribute [rw] value
|
258
|
+
# @return [::String]
|
259
|
+
class RenamedResourcesEntry
|
260
|
+
include ::Google::Protobuf::MessageExts
|
261
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
262
|
+
end
|
215
263
|
end
|
216
264
|
|
217
265
|
# Settings for Ruby client libraries.
|
@@ -305,6 +353,15 @@ module Google
|
|
305
353
|
|
306
354
|
# Street View Org.
|
307
355
|
STREET_VIEW = 4
|
356
|
+
|
357
|
+
# Shopping Org.
|
358
|
+
SHOPPING = 5
|
359
|
+
|
360
|
+
# Geo Org.
|
361
|
+
GEO = 6
|
362
|
+
|
363
|
+
# Generative AI - https://developers.generativeai.google
|
364
|
+
GENERATIVE_AI = 7
|
308
365
|
end
|
309
366
|
|
310
367
|
# To where should client libraries be published?
|
@@ -69,7 +69,6 @@ module Google
|
|
69
69
|
# Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)
|
70
70
|
# .setNanos((int) ((millis % 1000) * 1000000)).build();
|
71
71
|
#
|
72
|
-
#
|
73
72
|
# Example 5: Compute Timestamp from Java `Instant.now()`.
|
74
73
|
#
|
75
74
|
# Instant now = Instant.now();
|
@@ -78,7 +77,6 @@ module Google
|
|
78
77
|
# Timestamp.newBuilder().setSeconds(now.getEpochSecond())
|
79
78
|
# .setNanos(now.getNano()).build();
|
80
79
|
#
|
81
|
-
#
|
82
80
|
# Example 6: Compute Timestamp from current time in Python.
|
83
81
|
#
|
84
82
|
# timestamp = Timestamp()
|
@@ -108,7 +106,7 @@ module Google
|
|
108
106
|
# [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with
|
109
107
|
# the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use
|
110
108
|
# the Joda Time's [`ISODateTimeFormat.dateTime()`](
|
111
|
-
# http://
|
109
|
+
# http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()
|
112
110
|
# ) to obtain a formatter capable of generating timestamps in this format.
|
113
111
|
# @!attribute [rw] seconds
|
114
112
|
# @return [::Integer]
|
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: 0.
|
4
|
+
version: 0.14.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Google LLC
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-06-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gapic-common
|
@@ -16,7 +16,7 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.19.1
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
22
|
version: 2.a
|
@@ -26,7 +26,7 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: 0.
|
29
|
+
version: 0.19.1
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: 2.a
|