vpndetection 5.9.0 → 5.10.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.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +7 -6
  3. data/lib/vpndetection/api/account_wire_api.rb +1 -1
  4. data/lib/vpndetection/api/api_keys_wire_api.rb +1 -1
  5. data/lib/vpndetection/api/authorization_wire_api.rb +1 -1
  6. data/lib/vpndetection/api/database_wire_api.rb +1 -1
  7. data/lib/vpndetection/api/entitlement_wire_api.rb +1 -1
  8. data/lib/vpndetection/api/lookup_wire_api.rb +5 -5
  9. data/lib/vpndetection/api/organization_wire_api.rb +1 -1
  10. data/lib/vpndetection/api_client.rb +1 -1
  11. data/lib/vpndetection/api_error.rb +1 -1
  12. data/lib/vpndetection/api_model_base.rb +1 -1
  13. data/lib/vpndetection/bogon.rb +4 -1
  14. data/lib/vpndetection/client.rb +2 -2
  15. data/lib/vpndetection/configuration.rb +1 -1
  16. data/lib/vpndetection/models/account_create_apikey_request.rb +1 -1
  17. data/lib/vpndetection/models/account_created_apikey.rb +1 -1
  18. data/lib/vpndetection/models/account_org.rb +1 -1
  19. data/lib/vpndetection/models/account_org_ref.rb +1 -1
  20. data/lib/vpndetection/models/account_org_wrap.rb +1 -1
  21. data/lib/vpndetection/models/account_rc.rb +1 -1
  22. data/lib/vpndetection/models/account_revealed_apikey.rb +1 -1
  23. data/lib/vpndetection/models/account_user.rb +1 -1
  24. data/lib/vpndetection/models/apikey_detail.rb +1 -1
  25. data/lib/vpndetection/models/apikey_list.rb +1 -1
  26. data/lib/vpndetection/models/asn.rb +274 -0
  27. data/lib/vpndetection/models/batch_lookup_error.rb +1 -1
  28. data/lib/vpndetection/models/batch_lookup_request.rb +1 -1
  29. data/lib/vpndetection/models/batch_lookup_response.rb +1 -1
  30. data/lib/vpndetection/models/class_detail.rb +1 -1
  31. data/lib/vpndetection/models/client_registration.rb +1 -1
  32. data/lib/vpndetection/models/client_registration_request.rb +1 -1
  33. data/lib/vpndetection/models/database.rb +29 -2
  34. data/lib/vpndetection/models/database_checksums_response.rb +1 -1
  35. data/lib/vpndetection/models/database_format.rb +1 -1
  36. data/lib/vpndetection/models/database_format_size.rb +1 -1
  37. data/lib/vpndetection/models/database_list.rb +1 -1
  38. data/lib/vpndetection/models/database_metadata.rb +1 -1
  39. data/lib/vpndetection/models/database_metadata_column.rb +1 -1
  40. data/lib/vpndetection/models/database_version.rb +1 -1
  41. data/lib/vpndetection/models/db_checksums.rb +1 -1
  42. data/lib/vpndetection/models/device_authorization.rb +1 -1
  43. data/lib/vpndetection/models/download.rb +29 -2
  44. data/lib/vpndetection/models/download_list.rb +1 -1
  45. data/lib/vpndetection/models/entitlement.rb +1 -1
  46. data/lib/vpndetection/models/entitlement_apikey.rb +1 -1
  47. data/lib/vpndetection/models/entitlement_error.rb +1 -1
  48. data/lib/vpndetection/models/entitlement_plan.rb +1 -1
  49. data/lib/vpndetection/models/entitlement_usage.rb +1 -1
  50. data/lib/vpndetection/models/error_envelope.rb +1 -1
  51. data/lib/vpndetection/models/identity.rb +1 -1
  52. data/lib/vpndetection/models/location.rb +409 -0
  53. data/lib/vpndetection/models/lookup_error.rb +1 -1
  54. data/lib/vpndetection/models/lookup_response.rb +40 -22
  55. data/lib/vpndetection/models/oauth_error.rb +1 -1
  56. data/lib/vpndetection/models/oauth_metadata.rb +1 -1
  57. data/lib/vpndetection/models/proxy_detail.rb +1 -1
  58. data/lib/vpndetection/models/pubproxy_detail.rb +1 -1
  59. data/lib/vpndetection/models/standing.rb +1 -1
  60. data/lib/vpndetection/models/token_response.rb +1 -1
  61. data/lib/vpndetection/models/vpn_detail.rb +4 -4
  62. data/lib/vpndetection/result.rb +41 -17
  63. data/lib/vpndetection/transport.rb +103 -9
  64. data/lib/vpndetection/version.rb +1 -1
  65. metadata +3 -1
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -42,6 +42,9 @@ module VPNDetection
42
42
 
43
43
  attr_accessor :standing
44
44
 
45
+ # An Open database: free under CC BY-SA 4.0 (credit VPNDetection, https://vpndetection.io, and share what you build from it under the same license). Every organization holds a `standard` license to it from the start, which `standing` and `license_type` report like any other.
46
+ attr_accessor :open
47
+
45
48
  # Every published version of this family. The `id` here is what the download and checksum endpoints take.
46
49
  attr_accessor :versions
47
50
 
@@ -80,6 +83,7 @@ module VPNDetection
80
83
  :'notice_due_at' => :'notice_due_at',
81
84
  :'in_term' => :'in_term',
82
85
  :'standing' => :'standing',
86
+ :'open' => :'open',
83
87
  :'versions' => :'versions'
84
88
  }
85
89
  end
@@ -107,6 +111,7 @@ module VPNDetection
107
111
  :'notice_due_at' => :'Time',
108
112
  :'in_term' => :'Boolean',
109
113
  :'standing' => :'Standing',
114
+ :'open' => :'Boolean',
110
115
  :'versions' => :'Array<DatabaseVersion>'
111
116
  }
112
117
  end
@@ -198,6 +203,12 @@ module VPNDetection
198
203
  self.standing = nil
199
204
  end
200
205
 
206
+ if attributes.key?(:'open')
207
+ self.open = attributes[:'open']
208
+ else
209
+ self.open = nil
210
+ end
211
+
201
212
  if attributes.key?(:'versions')
202
213
  if (value = attributes[:'versions']).is_a?(Array)
203
214
  self.versions = value
@@ -232,6 +243,10 @@ module VPNDetection
232
243
  invalid_properties.push('invalid value for "standing", standing cannot be nil.')
233
244
  end
234
245
 
246
+ if @open.nil?
247
+ invalid_properties.push('invalid value for "open", open cannot be nil.')
248
+ end
249
+
235
250
  if @versions.nil?
236
251
  invalid_properties.push('invalid value for "versions", versions cannot be nil.')
237
252
  end
@@ -250,6 +265,7 @@ module VPNDetection
250
265
  return false unless license_type_validator.valid?(@license_type)
251
266
  return false if @in_term.nil?
252
267
  return false if @standing.nil?
268
+ return false if @open.nil?
253
269
  return false if @versions.nil?
254
270
  true
255
271
  end
@@ -314,6 +330,16 @@ module VPNDetection
314
330
  @standing = standing
315
331
  end
316
332
 
333
+ # Custom attribute writer method with validation
334
+ # @param [Object] open Value to be assigned
335
+ def open=(open)
336
+ if open.nil?
337
+ fail ArgumentError, 'open cannot be nil'
338
+ end
339
+
340
+ @open = open
341
+ end
342
+
317
343
  # Custom attribute writer method with validation
318
344
  # @param [Object] versions Value to be assigned
319
345
  def versions=(versions)
@@ -339,6 +365,7 @@ module VPNDetection
339
365
  notice_due_at == o.notice_due_at &&
340
366
  in_term == o.in_term &&
341
367
  standing == o.standing &&
368
+ open == o.open &&
342
369
  versions == o.versions
343
370
  end
344
371
 
@@ -351,7 +378,7 @@ module VPNDetection
351
378
  # Calculates hash code according to all attributes.
352
379
  # @return [Integer] Hash code
353
380
  def hash
354
- [base, name, summary, license_type, starts, expires, renews_at, notice_due_at, in_term, standing, versions].hash
381
+ [base, name, summary, license_type, starts, expires, renews_at, notice_due_at, in_term, standing, open, versions].hash
355
382
  end
356
383
 
357
384
  # Builds the object from hash
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -25,6 +25,9 @@ module VPNDetection
25
25
  # The evaluation sample rather than the database itself.
26
26
  attr_accessor :sample
27
27
 
28
+ # A download of an Open database.
29
+ attr_accessor :open
30
+
28
31
  # Object size at redirect time, NOT bytes delivered: the transfer is a presigned redirect straight to object storage, so we never observe it. int64 for the same reason as DatabaseFormatSize.bytes - it is the size of the same object.
29
32
  attr_accessor :bytes
30
33
 
@@ -68,6 +71,7 @@ module VPNDetection
68
71
  :'format' => :'format',
69
72
  :'outcome' => :'outcome',
70
73
  :'sample' => :'sample',
74
+ :'open' => :'open',
71
75
  :'bytes' => :'bytes',
72
76
  :'http_status' => :'http_status',
73
77
  :'apikey_id' => :'apikey_id',
@@ -94,6 +98,7 @@ module VPNDetection
94
98
  :'format' => :'String',
95
99
  :'outcome' => :'String',
96
100
  :'sample' => :'Boolean',
101
+ :'open' => :'Boolean',
97
102
  :'bytes' => :'Integer',
98
103
  :'http_status' => :'Integer',
99
104
  :'apikey_id' => :'String',
@@ -154,6 +159,12 @@ module VPNDetection
154
159
  self.sample = nil
155
160
  end
156
161
 
162
+ if attributes.key?(:'open')
163
+ self.open = attributes[:'open']
164
+ else
165
+ self.open = nil
166
+ end
167
+
157
168
  if attributes.key?(:'bytes')
158
169
  self.bytes = attributes[:'bytes']
159
170
  else
@@ -212,6 +223,10 @@ module VPNDetection
212
223
  invalid_properties.push('invalid value for "sample", sample cannot be nil.')
213
224
  end
214
225
 
226
+ if @open.nil?
227
+ invalid_properties.push('invalid value for "open", open cannot be nil.')
228
+ end
229
+
215
230
  if @created.nil?
216
231
  invalid_properties.push('invalid value for "created", created cannot be nil.')
217
232
  end
@@ -229,6 +244,7 @@ module VPNDetection
229
244
  outcome_validator = EnumAttributeValidator.new('String', ["ok", "unauthorized", "denied", "expired", "unknown", "unavailable"])
230
245
  return false unless outcome_validator.valid?(@outcome)
231
246
  return false if @sample.nil?
247
+ return false if @open.nil?
232
248
  return false if @created.nil?
233
249
  true
234
250
  end
@@ -273,6 +289,16 @@ module VPNDetection
273
289
  @sample = sample
274
290
  end
275
291
 
292
+ # Custom attribute writer method with validation
293
+ # @param [Object] open Value to be assigned
294
+ def open=(open)
295
+ if open.nil?
296
+ fail ArgumentError, 'open cannot be nil'
297
+ end
298
+
299
+ @open = open
300
+ end
301
+
276
302
  # Custom attribute writer method with validation
277
303
  # @param [Object] created Value to be assigned
278
304
  def created=(created)
@@ -292,6 +318,7 @@ module VPNDetection
292
318
  format == o.format &&
293
319
  outcome == o.outcome &&
294
320
  sample == o.sample &&
321
+ open == o.open &&
295
322
  bytes == o.bytes &&
296
323
  http_status == o.http_status &&
297
324
  apikey_id == o.apikey_id &&
@@ -309,7 +336,7 @@ module VPNDetection
309
336
  # Calculates hash code according to all attributes.
310
337
  # @return [Integer] Hash code
311
338
  def hash
312
- [dataset_id, format, outcome, sample, bytes, http_status, apikey_id, client_ip, user_agent, created].hash
339
+ [dataset_id, format, outcome, sample, open, bytes, http_status, apikey_id, client_ip, user_agent, created].hash
313
340
  end
314
341
 
315
342
  # Builds the object from hash
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0
@@ -3,7 +3,7 @@
3
3
 
4
4
  #The VPNDetection API: classify any IP address, and download the databases behind the answers. See https://docs.vpndetection.io for guides and https://github.com/vpndetection-io for the official client libraries.
5
5
 
6
- The version of the OpenAPI document: 2026.10.19
6
+ The version of the OpenAPI document: 2026.10.20
7
7
  Contact: support@vpndetection.io
8
8
  Generated by: https://openapi-generator.tech
9
9
  Generator version: 7.25.0