google-apis-safebrowsing_v5 0.7.0 → 0.8.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ca0806a5268a558f1c58507f6677511db33609ae3461c56e16cdcf100adfce7d
4
- data.tar.gz: '0269a64cf797a72e6b59ca1fad3b4df2878e9f529d75350029f7ee3a6324b436'
3
+ metadata.gz: 9c3d3f4749d1fafab33be737ca87f0c7ce2c4fa0b6129e112a99ef9f54e54955
4
+ data.tar.gz: ea42bab59507470c6a8541bc9f1a2de8c6200d6b0559da359ea5a6165a2407af
5
5
  SHA512:
6
- metadata.gz: f77ae59a5d83223e25bf9965352228bba5d24b38ae9f65c940080040267910da3e7adb046938b437b05507bb6b8ceb7df677e3601940956e2a00c0c9deba8349
7
- data.tar.gz: 889506a9551b1c425feb37d9e29a35408dc415e79c3c7f919a3b30b88f267f650b1c817c81072cca83f941acdd3b651e2b8f92a1bd6c9165e8584d5eecb7e363
6
+ metadata.gz: 819ba445abd3aee5bc59800497950e0ddc050d4c70f492aed9d358a48f08c58d1f6f1ee06974e8c01f0052d4c16cf5b2dc70e432c89c9fcd200ed32196e20d92
7
+ data.tar.gz: 4c830394e974f62cb259839be2358ee32636671dc377e33525f993b2ed6098ce6d4d302cd7be279fd4c22a3d93714d52dec57056738d1fe724949a69988d084d
data/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Release history for google-apis-safebrowsing_v5
2
2
 
3
+ ### v0.8.0 (2025-05-25)
4
+
5
+ * Regenerated from discovery document revision 20250518
6
+ * Regenerated using generator version 0.18.0
7
+
3
8
  ### v0.7.0 (2025-05-04)
4
9
 
5
10
  * Regenerated using generator version 0.17.0
@@ -22,6 +22,25 @@ module Google
22
22
  module Apis
23
23
  module SafebrowsingV5
24
24
 
25
+ # The response containing multiple hash lists.
26
+ class GoogleSecuritySafebrowsingV5BatchGetHashListsResponse
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The hash lists in the same order given in the request.
30
+ # Corresponds to the JSON property `hashLists`
31
+ # @return [Array<Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashList>]
32
+ attr_accessor :hash_lists
33
+
34
+ def initialize(**args)
35
+ update!(**args)
36
+ end
37
+
38
+ # Update properties of this object
39
+ def update!(**args)
40
+ @hash_lists = args[:hash_lists] if args.key?(:hash_lists)
41
+ end
42
+ end
43
+
25
44
  # The full hash identified with one or more matches.
26
45
  class GoogleSecuritySafebrowsingV5FullHash
27
46
  include Google::Apis::Core::Hashable
@@ -86,6 +105,409 @@ module Google
86
105
  end
87
106
  end
88
107
 
108
+ # A list of hashes identified by its name.
109
+ class GoogleSecuritySafebrowsingV5HashList
110
+ include Google::Apis::Core::Hashable
111
+
112
+ # Same as `RiceDeltaEncoded32Bit` except this encodes 64-bit numbers.
113
+ # Corresponds to the JSON property `additionsEightBytes`
114
+ # @return [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded64Bit]
115
+ attr_accessor :additions_eight_bytes
116
+
117
+ # The Rice-Golomb encoded data. Used for either hashes or removal indices. It is
118
+ # guaranteed that every hash or index here has the same length, and this length
119
+ # is exactly 32 bits. Generally speaking, if we sort all the entries
120
+ # lexicographically, we will find that the higher order bits tend not to change
121
+ # as frequently as lower order bits. This means that if we also take the
122
+ # adjacent difference between entries, the higher order bits have a high
123
+ # probability of being zero. This exploits this high probability of zero by
124
+ # essentially choosing a certain number of bits; all bits more significant than
125
+ # this are likely to be zero so we use unary encoding. See the `rice_parameter`
126
+ # field. Historical note: the Rice-delta encoding was first used in V4 of this
127
+ # API. In V5, two significant improvements were made: firstly, the Rice-delta
128
+ # encoding is now available with hash prefixes longer than 4 bytes; secondly,
129
+ # the encoded data are now treated as big-endian so as to avoid a costly sorting
130
+ # step.
131
+ # Corresponds to the JSON property `additionsFourBytes`
132
+ # @return [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded32Bit]
133
+ attr_accessor :additions_four_bytes
134
+
135
+ # Same as `RiceDeltaEncoded32Bit` except this encodes 128-bit numbers.
136
+ # Corresponds to the JSON property `additionsSixteenBytes`
137
+ # @return [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded128Bit]
138
+ attr_accessor :additions_sixteen_bytes
139
+
140
+ # Same as `RiceDeltaEncoded32Bit` except this encodes 256-bit numbers.
141
+ # Corresponds to the JSON property `additionsThirtyTwoBytes`
142
+ # @return [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded256Bit]
143
+ attr_accessor :additions_thirty_two_bytes
144
+
145
+ # The Rice-Golomb encoded data. Used for either hashes or removal indices. It is
146
+ # guaranteed that every hash or index here has the same length, and this length
147
+ # is exactly 32 bits. Generally speaking, if we sort all the entries
148
+ # lexicographically, we will find that the higher order bits tend not to change
149
+ # as frequently as lower order bits. This means that if we also take the
150
+ # adjacent difference between entries, the higher order bits have a high
151
+ # probability of being zero. This exploits this high probability of zero by
152
+ # essentially choosing a certain number of bits; all bits more significant than
153
+ # this are likely to be zero so we use unary encoding. See the `rice_parameter`
154
+ # field. Historical note: the Rice-delta encoding was first used in V4 of this
155
+ # API. In V5, two significant improvements were made: firstly, the Rice-delta
156
+ # encoding is now available with hash prefixes longer than 4 bytes; secondly,
157
+ # the encoded data are now treated as big-endian so as to avoid a costly sorting
158
+ # step.
159
+ # Corresponds to the JSON property `compressedRemovals`
160
+ # @return [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded32Bit]
161
+ attr_accessor :compressed_removals
162
+
163
+ # Metadata about a particular hash list.
164
+ # Corresponds to the JSON property `metadata`
165
+ # @return [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashListMetadata]
166
+ attr_accessor :metadata
167
+
168
+ # Clients should wait at least this long to get the hash list again. If omitted
169
+ # or zero, clients SHOULD fetch immediately because it indicates that the server
170
+ # has an additional update to be sent to the client, but could not due to the
171
+ # client-specified constraints.
172
+ # Corresponds to the JSON property `minimumWaitDuration`
173
+ # @return [String]
174
+ attr_accessor :minimum_wait_duration
175
+
176
+ # The name of the hash list. Note that the Global Cache is also just a hash list
177
+ # and can be referred to here.
178
+ # Corresponds to the JSON property `name`
179
+ # @return [String]
180
+ attr_accessor :name
181
+
182
+ # When true, this is a partial diff containing additions and removals based on
183
+ # what the client already has. When false, this is the complete hash list. When
184
+ # false, the client MUST delete any locally stored version for this hash list.
185
+ # This means that either the version possessed by the client is seriously out-of-
186
+ # date or the client data is believed to be corrupt. The `compressed_removals`
187
+ # field will be empty. When true, the client MUST apply an incremental update by
188
+ # applying removals and then additions.
189
+ # Corresponds to the JSON property `partialUpdate`
190
+ # @return [Boolean]
191
+ attr_accessor :partial_update
192
+ alias_method :partial_update?, :partial_update
193
+
194
+ # The sorted list of all hashes, hashed again with SHA256. This is the checksum
195
+ # for the sorted list of all hashes present in the database after applying the
196
+ # provided update. In the case that no updates were provided, the server will
197
+ # omit this field to indicate that the client should use the existing checksum.
198
+ # Corresponds to the JSON property `sha256Checksum`
199
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
200
+ # @return [String]
201
+ attr_accessor :sha256_checksum
202
+
203
+ # The version of the hash list. The client MUST NOT manipulate those bytes.
204
+ # Corresponds to the JSON property `version`
205
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
206
+ # @return [String]
207
+ attr_accessor :version
208
+
209
+ def initialize(**args)
210
+ update!(**args)
211
+ end
212
+
213
+ # Update properties of this object
214
+ def update!(**args)
215
+ @additions_eight_bytes = args[:additions_eight_bytes] if args.key?(:additions_eight_bytes)
216
+ @additions_four_bytes = args[:additions_four_bytes] if args.key?(:additions_four_bytes)
217
+ @additions_sixteen_bytes = args[:additions_sixteen_bytes] if args.key?(:additions_sixteen_bytes)
218
+ @additions_thirty_two_bytes = args[:additions_thirty_two_bytes] if args.key?(:additions_thirty_two_bytes)
219
+ @compressed_removals = args[:compressed_removals] if args.key?(:compressed_removals)
220
+ @metadata = args[:metadata] if args.key?(:metadata)
221
+ @minimum_wait_duration = args[:minimum_wait_duration] if args.key?(:minimum_wait_duration)
222
+ @name = args[:name] if args.key?(:name)
223
+ @partial_update = args[:partial_update] if args.key?(:partial_update)
224
+ @sha256_checksum = args[:sha256_checksum] if args.key?(:sha256_checksum)
225
+ @version = args[:version] if args.key?(:version)
226
+ end
227
+ end
228
+
229
+ # Metadata about a particular hash list.
230
+ class GoogleSecuritySafebrowsingV5HashListMetadata
231
+ include Google::Apis::Core::Hashable
232
+
233
+ # A human-readable description about this list. Written in English.
234
+ # Corresponds to the JSON property `description`
235
+ # @return [String]
236
+ attr_accessor :description
237
+
238
+ # The supported hash length for this hash list. Each hash list will support
239
+ # exactly one length. If a different hash length is introduced for the same set
240
+ # of threat types or safe types, it will be introduced as a separate list with a
241
+ # distinct name and respective hash length set.
242
+ # Corresponds to the JSON property `hashLength`
243
+ # @return [String]
244
+ attr_accessor :hash_length
245
+
246
+ # Unordered list. If not empty, this specifies that the hash list represents a
247
+ # list of likely safe hashes, and this enumerates the ways they are considered
248
+ # likely safe. This field is mutually exclusive with the threat_types field.
249
+ # Corresponds to the JSON property `likelySafeTypes`
250
+ # @return [Array<String>]
251
+ attr_accessor :likely_safe_types
252
+
253
+ # Unordered list. If not empty, this specifies that the hash list is a kind of
254
+ # threat list, and this enumerates the kind of threats associated with hashes or
255
+ # hash prefixes in this hash list. May be empty if the entry does not represent
256
+ # a threat, i.e. in the case that it represents a likely safe type.
257
+ # Corresponds to the JSON property `threatTypes`
258
+ # @return [Array<String>]
259
+ attr_accessor :threat_types
260
+
261
+ def initialize(**args)
262
+ update!(**args)
263
+ end
264
+
265
+ # Update properties of this object
266
+ def update!(**args)
267
+ @description = args[:description] if args.key?(:description)
268
+ @hash_length = args[:hash_length] if args.key?(:hash_length)
269
+ @likely_safe_types = args[:likely_safe_types] if args.key?(:likely_safe_types)
270
+ @threat_types = args[:threat_types] if args.key?(:threat_types)
271
+ end
272
+ end
273
+
274
+ # The response containing metadata about hash lists.
275
+ class GoogleSecuritySafebrowsingV5ListHashListsResponse
276
+ include Google::Apis::Core::Hashable
277
+
278
+ # The hash lists in an arbitrary order. Only metadata about the hash lists will
279
+ # be included, not the contents.
280
+ # Corresponds to the JSON property `hashLists`
281
+ # @return [Array<Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashList>]
282
+ attr_accessor :hash_lists
283
+
284
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
285
+ # field is omitted, there are no subsequent pages.
286
+ # Corresponds to the JSON property `nextPageToken`
287
+ # @return [String]
288
+ attr_accessor :next_page_token
289
+
290
+ def initialize(**args)
291
+ update!(**args)
292
+ end
293
+
294
+ # Update properties of this object
295
+ def update!(**args)
296
+ @hash_lists = args[:hash_lists] if args.key?(:hash_lists)
297
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
298
+ end
299
+ end
300
+
301
+ # Same as `RiceDeltaEncoded32Bit` except this encodes 128-bit numbers.
302
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded128Bit
303
+ include Google::Apis::Core::Hashable
304
+
305
+ # The encoded deltas that are encoded using the Golomb-Rice coder.
306
+ # Corresponds to the JSON property `encodedData`
307
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
308
+ # @return [String]
309
+ attr_accessor :encoded_data
310
+
311
+ # The number of entries that are delta encoded in the encoded data. If only a
312
+ # single integer was encoded, this will be zero and the single value will be
313
+ # stored in `first_value`.
314
+ # Corresponds to the JSON property `entriesCount`
315
+ # @return [Fixnum]
316
+ attr_accessor :entries_count
317
+
318
+ # The upper 64 bits of the first entry in the encoded data (hashes). If the
319
+ # field is empty, the upper 64 bits are all zero.
320
+ # Corresponds to the JSON property `firstValueHi`
321
+ # @return [Fixnum]
322
+ attr_accessor :first_value_hi
323
+
324
+ # The lower 64 bits of the first entry in the encoded data (hashes). If the
325
+ # field is empty, the lower 64 bits are all zero.
326
+ # Corresponds to the JSON property `firstValueLo`
327
+ # @return [Fixnum]
328
+ attr_accessor :first_value_lo
329
+
330
+ # The Golomb-Rice parameter. This parameter is guaranteed to be between 99 and
331
+ # 126, inclusive.
332
+ # Corresponds to the JSON property `riceParameter`
333
+ # @return [Fixnum]
334
+ attr_accessor :rice_parameter
335
+
336
+ def initialize(**args)
337
+ update!(**args)
338
+ end
339
+
340
+ # Update properties of this object
341
+ def update!(**args)
342
+ @encoded_data = args[:encoded_data] if args.key?(:encoded_data)
343
+ @entries_count = args[:entries_count] if args.key?(:entries_count)
344
+ @first_value_hi = args[:first_value_hi] if args.key?(:first_value_hi)
345
+ @first_value_lo = args[:first_value_lo] if args.key?(:first_value_lo)
346
+ @rice_parameter = args[:rice_parameter] if args.key?(:rice_parameter)
347
+ end
348
+ end
349
+
350
+ # Same as `RiceDeltaEncoded32Bit` except this encodes 256-bit numbers.
351
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded256Bit
352
+ include Google::Apis::Core::Hashable
353
+
354
+ # The encoded deltas that are encoded using the Golomb-Rice coder.
355
+ # Corresponds to the JSON property `encodedData`
356
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
357
+ # @return [String]
358
+ attr_accessor :encoded_data
359
+
360
+ # The number of entries that are delta encoded in the encoded data. If only a
361
+ # single integer was encoded, this will be zero and the single value will be
362
+ # stored in `first_value`.
363
+ # Corresponds to the JSON property `entriesCount`
364
+ # @return [Fixnum]
365
+ attr_accessor :entries_count
366
+
367
+ # The first 64 bits of the first entry in the encoded data (hashes). If the
368
+ # field is empty, the first 64 bits are all zero.
369
+ # Corresponds to the JSON property `firstValueFirstPart`
370
+ # @return [Fixnum]
371
+ attr_accessor :first_value_first_part
372
+
373
+ # The last 64 bits of the first entry in the encoded data (hashes). If the field
374
+ # is empty, the last 64 bits are all zero.
375
+ # Corresponds to the JSON property `firstValueFourthPart`
376
+ # @return [Fixnum]
377
+ attr_accessor :first_value_fourth_part
378
+
379
+ # The 65 through 128th bits of the first entry in the encoded data (hashes). If
380
+ # the field is empty, the 65 through 128th bits are all zero.
381
+ # Corresponds to the JSON property `firstValueSecondPart`
382
+ # @return [Fixnum]
383
+ attr_accessor :first_value_second_part
384
+
385
+ # The 129 through 192th bits of the first entry in the encoded data (hashes). If
386
+ # the field is empty, the 129 through 192th bits are all zero.
387
+ # Corresponds to the JSON property `firstValueThirdPart`
388
+ # @return [Fixnum]
389
+ attr_accessor :first_value_third_part
390
+
391
+ # The Golomb-Rice parameter. This parameter is guaranteed to be between 227 and
392
+ # 254, inclusive.
393
+ # Corresponds to the JSON property `riceParameter`
394
+ # @return [Fixnum]
395
+ attr_accessor :rice_parameter
396
+
397
+ def initialize(**args)
398
+ update!(**args)
399
+ end
400
+
401
+ # Update properties of this object
402
+ def update!(**args)
403
+ @encoded_data = args[:encoded_data] if args.key?(:encoded_data)
404
+ @entries_count = args[:entries_count] if args.key?(:entries_count)
405
+ @first_value_first_part = args[:first_value_first_part] if args.key?(:first_value_first_part)
406
+ @first_value_fourth_part = args[:first_value_fourth_part] if args.key?(:first_value_fourth_part)
407
+ @first_value_second_part = args[:first_value_second_part] if args.key?(:first_value_second_part)
408
+ @first_value_third_part = args[:first_value_third_part] if args.key?(:first_value_third_part)
409
+ @rice_parameter = args[:rice_parameter] if args.key?(:rice_parameter)
410
+ end
411
+ end
412
+
413
+ # The Rice-Golomb encoded data. Used for either hashes or removal indices. It is
414
+ # guaranteed that every hash or index here has the same length, and this length
415
+ # is exactly 32 bits. Generally speaking, if we sort all the entries
416
+ # lexicographically, we will find that the higher order bits tend not to change
417
+ # as frequently as lower order bits. This means that if we also take the
418
+ # adjacent difference between entries, the higher order bits have a high
419
+ # probability of being zero. This exploits this high probability of zero by
420
+ # essentially choosing a certain number of bits; all bits more significant than
421
+ # this are likely to be zero so we use unary encoding. See the `rice_parameter`
422
+ # field. Historical note: the Rice-delta encoding was first used in V4 of this
423
+ # API. In V5, two significant improvements were made: firstly, the Rice-delta
424
+ # encoding is now available with hash prefixes longer than 4 bytes; secondly,
425
+ # the encoded data are now treated as big-endian so as to avoid a costly sorting
426
+ # step.
427
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded32Bit
428
+ include Google::Apis::Core::Hashable
429
+
430
+ # The encoded deltas that are encoded using the Golomb-Rice coder.
431
+ # Corresponds to the JSON property `encodedData`
432
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
433
+ # @return [String]
434
+ attr_accessor :encoded_data
435
+
436
+ # The number of entries that are delta encoded in the encoded data. If only a
437
+ # single integer was encoded, this will be zero and the single value will be
438
+ # stored in `first_value`.
439
+ # Corresponds to the JSON property `entriesCount`
440
+ # @return [Fixnum]
441
+ attr_accessor :entries_count
442
+
443
+ # The first entry in the encoded data (hashes or indices), or, if only a single
444
+ # hash prefix or index was encoded, that entry's value. If the field is empty,
445
+ # the entry is zero.
446
+ # Corresponds to the JSON property `firstValue`
447
+ # @return [Fixnum]
448
+ attr_accessor :first_value
449
+
450
+ # The Golomb-Rice parameter. This parameter is guaranteed to be between 3 and 30,
451
+ # inclusive.
452
+ # Corresponds to the JSON property `riceParameter`
453
+ # @return [Fixnum]
454
+ attr_accessor :rice_parameter
455
+
456
+ def initialize(**args)
457
+ update!(**args)
458
+ end
459
+
460
+ # Update properties of this object
461
+ def update!(**args)
462
+ @encoded_data = args[:encoded_data] if args.key?(:encoded_data)
463
+ @entries_count = args[:entries_count] if args.key?(:entries_count)
464
+ @first_value = args[:first_value] if args.key?(:first_value)
465
+ @rice_parameter = args[:rice_parameter] if args.key?(:rice_parameter)
466
+ end
467
+ end
468
+
469
+ # Same as `RiceDeltaEncoded32Bit` except this encodes 64-bit numbers.
470
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded64Bit
471
+ include Google::Apis::Core::Hashable
472
+
473
+ # The encoded deltas that are encoded using the Golomb-Rice coder.
474
+ # Corresponds to the JSON property `encodedData`
475
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
476
+ # @return [String]
477
+ attr_accessor :encoded_data
478
+
479
+ # The number of entries that are delta encoded in the encoded data. If only a
480
+ # single integer was encoded, this will be zero and the single value will be
481
+ # stored in `first_value`.
482
+ # Corresponds to the JSON property `entriesCount`
483
+ # @return [Fixnum]
484
+ attr_accessor :entries_count
485
+
486
+ # The first entry in the encoded data (hashes), or, if only a single hash prefix
487
+ # was encoded, that entry's value. If the field is empty, the entry is zero.
488
+ # Corresponds to the JSON property `firstValue`
489
+ # @return [Fixnum]
490
+ attr_accessor :first_value
491
+
492
+ # The Golomb-Rice parameter. This parameter is guaranteed to be between 35 and
493
+ # 62, inclusive.
494
+ # Corresponds to the JSON property `riceParameter`
495
+ # @return [Fixnum]
496
+ attr_accessor :rice_parameter
497
+
498
+ def initialize(**args)
499
+ update!(**args)
500
+ end
501
+
502
+ # Update properties of this object
503
+ def update!(**args)
504
+ @encoded_data = args[:encoded_data] if args.key?(:encoded_data)
505
+ @entries_count = args[:entries_count] if args.key?(:entries_count)
506
+ @first_value = args[:first_value] if args.key?(:first_value)
507
+ @rice_parameter = args[:rice_parameter] if args.key?(:rice_parameter)
508
+ end
509
+ end
510
+
89
511
  # The response returned after searching threat hashes. If nothing is found, the
90
512
  # server will return an OK status (HTTP status code 200) with the `full_hashes`
91
513
  # field empty, rather than returning a NOT_FOUND status (HTTP status code 404). *
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module SafebrowsingV5
18
18
  # Version of the google-apis-safebrowsing_v5 gem
19
- GEM_VERSION = "0.7.0"
19
+ GEM_VERSION = "0.8.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
- GENERATOR_VERSION = "0.17.0"
22
+ GENERATOR_VERSION = "0.18.0"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20240505"
25
+ REVISION = "20250518"
26
26
  end
27
27
  end
28
28
  end
@@ -22,6 +22,12 @@ module Google
22
22
  module Apis
23
23
  module SafebrowsingV5
24
24
 
25
+ class GoogleSecuritySafebrowsingV5BatchGetHashListsResponse
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
25
31
  class GoogleSecuritySafebrowsingV5FullHash
26
32
  class Representation < Google::Apis::Core::JsonRepresentation; end
27
33
 
@@ -34,12 +40,62 @@ module Google
34
40
  include Google::Apis::Core::JsonObjectSupport
35
41
  end
36
42
 
43
+ class GoogleSecuritySafebrowsingV5HashList
44
+ class Representation < Google::Apis::Core::JsonRepresentation; end
45
+
46
+ include Google::Apis::Core::JsonObjectSupport
47
+ end
48
+
49
+ class GoogleSecuritySafebrowsingV5HashListMetadata
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+
52
+ include Google::Apis::Core::JsonObjectSupport
53
+ end
54
+
55
+ class GoogleSecuritySafebrowsingV5ListHashListsResponse
56
+ class Representation < Google::Apis::Core::JsonRepresentation; end
57
+
58
+ include Google::Apis::Core::JsonObjectSupport
59
+ end
60
+
61
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded128Bit
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
67
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded256Bit
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+
70
+ include Google::Apis::Core::JsonObjectSupport
71
+ end
72
+
73
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded32Bit
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+
76
+ include Google::Apis::Core::JsonObjectSupport
77
+ end
78
+
79
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded64Bit
80
+ class Representation < Google::Apis::Core::JsonRepresentation; end
81
+
82
+ include Google::Apis::Core::JsonObjectSupport
83
+ end
84
+
37
85
  class GoogleSecuritySafebrowsingV5SearchHashesResponse
38
86
  class Representation < Google::Apis::Core::JsonRepresentation; end
39
87
 
40
88
  include Google::Apis::Core::JsonObjectSupport
41
89
  end
42
90
 
91
+ class GoogleSecuritySafebrowsingV5BatchGetHashListsResponse
92
+ # @private
93
+ class Representation < Google::Apis::Core::JsonRepresentation
94
+ collection :hash_lists, as: 'hashLists', class: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashList, decorator: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashList::Representation
95
+
96
+ end
97
+ end
98
+
43
99
  class GoogleSecuritySafebrowsingV5FullHash
44
100
  # @private
45
101
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -57,6 +113,92 @@ module Google
57
113
  end
58
114
  end
59
115
 
116
+ class GoogleSecuritySafebrowsingV5HashList
117
+ # @private
118
+ class Representation < Google::Apis::Core::JsonRepresentation
119
+ property :additions_eight_bytes, as: 'additionsEightBytes', class: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded64Bit, decorator: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded64Bit::Representation
120
+
121
+ property :additions_four_bytes, as: 'additionsFourBytes', class: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded32Bit, decorator: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded32Bit::Representation
122
+
123
+ property :additions_sixteen_bytes, as: 'additionsSixteenBytes', class: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded128Bit, decorator: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded128Bit::Representation
124
+
125
+ property :additions_thirty_two_bytes, as: 'additionsThirtyTwoBytes', class: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded256Bit, decorator: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded256Bit::Representation
126
+
127
+ property :compressed_removals, as: 'compressedRemovals', class: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded32Bit, decorator: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5RiceDeltaEncoded32Bit::Representation
128
+
129
+ property :metadata, as: 'metadata', class: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashListMetadata, decorator: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashListMetadata::Representation
130
+
131
+ property :minimum_wait_duration, as: 'minimumWaitDuration'
132
+ property :name, as: 'name'
133
+ property :partial_update, as: 'partialUpdate'
134
+ property :sha256_checksum, :base64 => true, as: 'sha256Checksum'
135
+ property :version, :base64 => true, as: 'version'
136
+ end
137
+ end
138
+
139
+ class GoogleSecuritySafebrowsingV5HashListMetadata
140
+ # @private
141
+ class Representation < Google::Apis::Core::JsonRepresentation
142
+ property :description, as: 'description'
143
+ property :hash_length, as: 'hashLength'
144
+ collection :likely_safe_types, as: 'likelySafeTypes'
145
+ collection :threat_types, as: 'threatTypes'
146
+ end
147
+ end
148
+
149
+ class GoogleSecuritySafebrowsingV5ListHashListsResponse
150
+ # @private
151
+ class Representation < Google::Apis::Core::JsonRepresentation
152
+ collection :hash_lists, as: 'hashLists', class: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashList, decorator: Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashList::Representation
153
+
154
+ property :next_page_token, as: 'nextPageToken'
155
+ end
156
+ end
157
+
158
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded128Bit
159
+ # @private
160
+ class Representation < Google::Apis::Core::JsonRepresentation
161
+ property :encoded_data, :base64 => true, as: 'encodedData'
162
+ property :entries_count, as: 'entriesCount'
163
+ property :first_value_hi, :numeric_string => true, as: 'firstValueHi'
164
+ property :first_value_lo, :numeric_string => true, as: 'firstValueLo'
165
+ property :rice_parameter, as: 'riceParameter'
166
+ end
167
+ end
168
+
169
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded256Bit
170
+ # @private
171
+ class Representation < Google::Apis::Core::JsonRepresentation
172
+ property :encoded_data, :base64 => true, as: 'encodedData'
173
+ property :entries_count, as: 'entriesCount'
174
+ property :first_value_first_part, :numeric_string => true, as: 'firstValueFirstPart'
175
+ property :first_value_fourth_part, :numeric_string => true, as: 'firstValueFourthPart'
176
+ property :first_value_second_part, :numeric_string => true, as: 'firstValueSecondPart'
177
+ property :first_value_third_part, :numeric_string => true, as: 'firstValueThirdPart'
178
+ property :rice_parameter, as: 'riceParameter'
179
+ end
180
+ end
181
+
182
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded32Bit
183
+ # @private
184
+ class Representation < Google::Apis::Core::JsonRepresentation
185
+ property :encoded_data, :base64 => true, as: 'encodedData'
186
+ property :entries_count, as: 'entriesCount'
187
+ property :first_value, as: 'firstValue'
188
+ property :rice_parameter, as: 'riceParameter'
189
+ end
190
+ end
191
+
192
+ class GoogleSecuritySafebrowsingV5RiceDeltaEncoded64Bit
193
+ # @private
194
+ class Representation < Google::Apis::Core::JsonRepresentation
195
+ property :encoded_data, :base64 => true, as: 'encodedData'
196
+ property :entries_count, as: 'entriesCount'
197
+ property :first_value, :numeric_string => true, as: 'firstValue'
198
+ property :rice_parameter, as: 'riceParameter'
199
+ end
200
+ end
201
+
60
202
  class GoogleSecuritySafebrowsingV5SearchHashesResponse
61
203
  # @private
62
204
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -55,6 +55,157 @@ module Google
55
55
  @batch_path = 'batch'
56
56
  end
57
57
 
58
+ # Get the latest contents of a hash list. A hash list may either by a threat
59
+ # list or a non-threat list such as the Global Cache. This is a standard Get
60
+ # method as defined by https://google.aip.dev/131 and the HTTP method is also
61
+ # GET.
62
+ # @param [String] name
63
+ # Required. The name of this particular hash list. It may be a threat list, or
64
+ # it may be the Global Cache.
65
+ # @param [Fixnum] size_constraints_max_database_entries
66
+ # Sets the maximum number of entries that the client is willing to have in the
67
+ # local database for the list. (The server MAY cause the client to store less
68
+ # than this number of entries.) If omitted or zero, no database size limit is
69
+ # set.
70
+ # @param [Fixnum] size_constraints_max_update_entries
71
+ # The maximum size in number of entries. The update will not contain more
72
+ # entries than this value, but it is possible that the update will contain fewer
73
+ # entries than this value. This MUST be at least 1024. If omitted or zero, no
74
+ # update size limit is set.
75
+ # @param [String] version
76
+ # The version of the hash list that the client already has. If this is the first
77
+ # time the client is fetching the hash list, this field MUST be left empty.
78
+ # Otherwise, the client SHOULD supply the version previously received from the
79
+ # server. The client MUST NOT manipulate those bytes. **What's new in V5**: in
80
+ # V4 of the API, this was called `states`; it is now renamed to `version` for
81
+ # clarity.
82
+ # @param [String] fields
83
+ # Selector specifying which fields to include in a partial response.
84
+ # @param [String] quota_user
85
+ # Available to use for quota purposes for server-side applications. Can be any
86
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
87
+ # @param [Google::Apis::RequestOptions] options
88
+ # Request-specific options
89
+ #
90
+ # @yield [result, err] Result & error if block supplied
91
+ # @yieldparam result [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashList] parsed result object
92
+ # @yieldparam err [StandardError] error object if request failed
93
+ #
94
+ # @return [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashList]
95
+ #
96
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
97
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
98
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
99
+ def get_hash_list(name, size_constraints_max_database_entries: nil, size_constraints_max_update_entries: nil, version: nil, fields: nil, quota_user: nil, options: nil, &block)
100
+ command = make_simple_command(:get, 'v5/hashList/{name}', options)
101
+ command.response_representation = Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashList::Representation
102
+ command.response_class = Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5HashList
103
+ command.params['name'] = name unless name.nil?
104
+ command.query['sizeConstraints.maxDatabaseEntries'] = size_constraints_max_database_entries unless size_constraints_max_database_entries.nil?
105
+ command.query['sizeConstraints.maxUpdateEntries'] = size_constraints_max_update_entries unless size_constraints_max_update_entries.nil?
106
+ command.query['version'] = version unless version.nil?
107
+ command.query['fields'] = fields unless fields.nil?
108
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
109
+ execute_or_queue_command(command, &block)
110
+ end
111
+
112
+ # Get multiple hash lists at once. It is very common for a client to need to get
113
+ # multiple hash lists. Using this method is preferred over using the regular Get
114
+ # method multiple times. This is a standard batch Get method as defined by https:
115
+ # //google.aip.dev/231 and the HTTP method is also GET.
116
+ # @param [Array<String>, String] names
117
+ # Required. The names of the particular hash lists. The list MAY be a threat
118
+ # list, or it may be the Global Cache. The names MUST NOT contain duplicates; if
119
+ # they did, the client will get an error.
120
+ # @param [Fixnum] size_constraints_max_database_entries
121
+ # Sets the maximum number of entries that the client is willing to have in the
122
+ # local database for the list. (The server MAY cause the client to store less
123
+ # than this number of entries.) If omitted or zero, no database size limit is
124
+ # set.
125
+ # @param [Fixnum] size_constraints_max_update_entries
126
+ # The maximum size in number of entries. The update will not contain more
127
+ # entries than this value, but it is possible that the update will contain fewer
128
+ # entries than this value. This MUST be at least 1024. If omitted or zero, no
129
+ # update size limit is set.
130
+ # @param [Array<String>, String] version
131
+ # The versions of the hash list that the client already has. If this is the
132
+ # first time the client is fetching the hash lists, the field should be left
133
+ # empty. Otherwise, the client should supply the versions previously received
134
+ # from the server. The client MUST NOT manipulate those bytes. The client need
135
+ # not send the versions in the same order as the corresponding list names. The
136
+ # client may send fewer or more versions in a request than there are names.
137
+ # However the client MUST NOT send multiple versions that correspond to the same
138
+ # name; if it did, the client will get an error. Historical note: in V4 of the
139
+ # API, this was called `states`; it is now renamed to `version` for clarity.
140
+ # @param [String] fields
141
+ # Selector specifying which fields to include in a partial response.
142
+ # @param [String] quota_user
143
+ # Available to use for quota purposes for server-side applications. Can be any
144
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
145
+ # @param [Google::Apis::RequestOptions] options
146
+ # Request-specific options
147
+ #
148
+ # @yield [result, err] Result & error if block supplied
149
+ # @yieldparam result [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5BatchGetHashListsResponse] parsed result object
150
+ # @yieldparam err [StandardError] error object if request failed
151
+ #
152
+ # @return [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5BatchGetHashListsResponse]
153
+ #
154
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
155
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
156
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
157
+ def batch_hash_list_get(names: nil, size_constraints_max_database_entries: nil, size_constraints_max_update_entries: nil, version: nil, fields: nil, quota_user: nil, options: nil, &block)
158
+ command = make_simple_command(:get, 'v5/hashLists:batchGet', options)
159
+ command.response_representation = Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5BatchGetHashListsResponse::Representation
160
+ command.response_class = Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5BatchGetHashListsResponse
161
+ command.query['names'] = names unless names.nil?
162
+ command.query['sizeConstraints.maxDatabaseEntries'] = size_constraints_max_database_entries unless size_constraints_max_database_entries.nil?
163
+ command.query['sizeConstraints.maxUpdateEntries'] = size_constraints_max_update_entries unless size_constraints_max_update_entries.nil?
164
+ command.query['version'] = version unless version.nil?
165
+ command.query['fields'] = fields unless fields.nil?
166
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
167
+ execute_or_queue_command(command, &block)
168
+ end
169
+
170
+ # List hash lists. In the V5 API, Google will never remove a hash list that has
171
+ # ever been returned by this method. This enables clients to skip using this
172
+ # method and simply hard-code all hash lists they need. This is a standard List
173
+ # method as defined by https://google.aip.dev/132 and the HTTP method is GET.
174
+ # @param [Fixnum] page_size
175
+ # The maximum number of hash lists to return. The service may return fewer than
176
+ # this value. If unspecified, the server will choose a page size, which may be
177
+ # larger than the number of hash lists so that pagination is not necessary.
178
+ # @param [String] page_token
179
+ # A page token, received from a previous `ListHashLists` call. Provide this to
180
+ # retrieve the subsequent page.
181
+ # @param [String] fields
182
+ # Selector specifying which fields to include in a partial response.
183
+ # @param [String] quota_user
184
+ # Available to use for quota purposes for server-side applications. Can be any
185
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
186
+ # @param [Google::Apis::RequestOptions] options
187
+ # Request-specific options
188
+ #
189
+ # @yield [result, err] Result & error if block supplied
190
+ # @yieldparam result [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5ListHashListsResponse] parsed result object
191
+ # @yieldparam err [StandardError] error object if request failed
192
+ #
193
+ # @return [Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5ListHashListsResponse]
194
+ #
195
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
196
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
197
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
198
+ def list_hash_lists(page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
199
+ command = make_simple_command(:get, 'v5/hashLists', options)
200
+ command.response_representation = Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5ListHashListsResponse::Representation
201
+ command.response_class = Google::Apis::SafebrowsingV5::GoogleSecuritySafebrowsingV5ListHashListsResponse
202
+ command.query['pageSize'] = page_size unless page_size.nil?
203
+ command.query['pageToken'] = page_token unless page_token.nil?
204
+ command.query['fields'] = fields unless fields.nil?
205
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
206
+ execute_or_queue_command(command, &block)
207
+ end
208
+
58
209
  # Search for full hashes matching the specified prefixes. This is a custom
59
210
  # method as defined by https://google.aip.dev/136 (the custom method refers to
60
211
  # this method having a custom name within Google's general API development
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-safebrowsing_v5
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
@@ -57,7 +57,7 @@ licenses:
57
57
  metadata:
58
58
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
59
59
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-safebrowsing_v5/CHANGELOG.md
60
- documentation_uri: https://googleapis.dev/ruby/google-apis-safebrowsing_v5/v0.7.0
60
+ documentation_uri: https://googleapis.dev/ruby/google-apis-safebrowsing_v5/v0.8.0
61
61
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-safebrowsing_v5
62
62
  rdoc_options: []
63
63
  require_paths:
@@ -73,7 +73,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
73
73
  - !ruby/object:Gem::Version
74
74
  version: '0'
75
75
  requirements: []
76
- rubygems_version: 3.6.8
76
+ rubygems_version: 3.6.9
77
77
  specification_version: 4
78
78
  summary: Simple REST client for Safe Browsing API V5
79
79
  test_files: []