dataleon 0.1.0.pre.alpha.1 → 0.1.0.pre.alpha.3

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 (32) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +32 -0
  3. data/README.md +1 -1
  4. data/lib/dataleon/errors.rb +25 -11
  5. data/lib/dataleon/internal/transport/base_client.rb +11 -7
  6. data/lib/dataleon/internal/type/base_page.rb +1 -1
  7. data/lib/dataleon/internal/util.rb +3 -2
  8. data/lib/dataleon/models/company_create_params.rb +9 -1
  9. data/lib/dataleon/models/company_registration.rb +9 -1
  10. data/lib/dataleon/models/company_update_params.rb +9 -1
  11. data/lib/dataleon/models/individual.rb +18 -2
  12. data/lib/dataleon/models/individual_create_params.rb +18 -2
  13. data/lib/dataleon/models/individual_update_params.rb +18 -2
  14. data/lib/dataleon/version.rb +1 -1
  15. data/rbi/dataleon/errors.rbi +29 -2
  16. data/rbi/dataleon/internal/transport/base_client.rbi +4 -5
  17. data/rbi/dataleon/internal/type/base_page.rbi +1 -1
  18. data/rbi/dataleon/internal/util.rbi +1 -1
  19. data/rbi/dataleon/models/company_create_params.rbi +11 -0
  20. data/rbi/dataleon/models/company_registration.rbi +11 -0
  21. data/rbi/dataleon/models/company_update_params.rbi +11 -0
  22. data/rbi/dataleon/models/individual.rbi +22 -0
  23. data/rbi/dataleon/models/individual_create_params.rbi +22 -0
  24. data/rbi/dataleon/models/individual_update_params.rbi +22 -0
  25. data/sig/dataleon/errors.rbs +7 -0
  26. data/sig/dataleon/models/company_create_params.rbs +7 -0
  27. data/sig/dataleon/models/company_registration.rbs +7 -0
  28. data/sig/dataleon/models/company_update_params.rbs +7 -0
  29. data/sig/dataleon/models/individual.rbs +14 -0
  30. data/sig/dataleon/models/individual_create_params.rbs +14 -0
  31. data/sig/dataleon/models/individual_update_params.rbs +14 -0
  32. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0dc362ad20f2e832ce2aa5dd12584e2baf33c8d7b1f00773cdea8f77e7f96f0d
4
- data.tar.gz: 21f74a506b22d6cd8c2942e536b5e67a6bb4daf4593cad03f30fba2dc17e614e
3
+ metadata.gz: a77a9622df07d78ccaf7979f1e05b06ef0a353d4bd5b6c64945668005d81715b
4
+ data.tar.gz: 705e37a500e6159cb4e3371668725f1d05a709b8688d06520b35e3f95bc0cfd7
5
5
  SHA512:
6
- metadata.gz: e10b2e99ad80466c9a13871932a06eda0eb0fdd360b8348c2f5436530c88fc8d795983e527421b943640044a0270d4dcc7017640d1698861219442c7424636a7
7
- data.tar.gz: b56fff93e9e293da97e8ccc3edf9f7716b4ed50e6671f7d5509591de43011469060b77f83c445b8fe179d052cdc63df20df98916a3a89ce67cbde9b97a276858
6
+ metadata.gz: b0c84d745bc887e890b0d42005d7f5f973764daddb1fc223c207646d8af0c33f37ff089d0c446cd207cc801b512a72346b1da36a2af4bd6b8e1620142a2d0a4d
7
+ data.tar.gz: 0b24a41e08c7c9c9ea6fe07c4c3e60b5a2be762a3e98d529e279abbe1ea247a1148e5cdab7f304563203e1e0004de711a30c10f7d8dae20bf0a8fb9c4259563f
data/CHANGELOG.md CHANGED
@@ -1,5 +1,37 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.0-alpha.3 (2025-09-27)
4
+
5
+ Full Changelog: [v0.1.0-alpha.2...v0.1.0-alpha.3](https://github.com/dataleonlabs/dataleon-ruby/compare/v0.1.0-alpha.2...v0.1.0-alpha.3)
6
+
7
+ ### Features
8
+
9
+ * expose response headers for both streams and errors ([ebb2504](https://github.com/dataleonlabs/dataleon-ruby/commit/ebb2504fa38612b5190c63cac4d6e60e66bcddbe))
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * shorten multipart boundary sep to less than RFC specificed max length ([9e558ee](https://github.com/dataleonlabs/dataleon-ruby/commit/9e558ee95b15722045ce4a262ee3f2e5f73bc3c0))
15
+
16
+
17
+ ### Performance Improvements
18
+
19
+ * faster code formatting ([27804b2](https://github.com/dataleonlabs/dataleon-ruby/commit/27804b27cd7a0c1a59944c5b2f013c036c7e94eb))
20
+
21
+
22
+ ### Chores
23
+
24
+ * do not install brew dependencies in ./scripts/bootstrap by default ([c535098](https://github.com/dataleonlabs/dataleon-ruby/commit/c5350986f63181050f11ed546727b8a0d819585a))
25
+ * **internal:** codegen related update ([32f1bc3](https://github.com/dataleonlabs/dataleon-ruby/commit/32f1bc3178d0a146dbb0cea870bc94c9e7c7d919))
26
+
27
+ ## 0.1.0-alpha.2 (2025-09-10)
28
+
29
+ Full Changelog: [v0.1.0-alpha.1...v0.1.0-alpha.2](https://github.com/dataleonlabs/dataleon-ruby/compare/v0.1.0-alpha.1...v0.1.0-alpha.2)
30
+
31
+ ### Features
32
+
33
+ * **api:** api update ([6413660](https://github.com/dataleonlabs/dataleon-ruby/commit/641366028b90c0982a2ab33de4ead0ac80d99658))
34
+
3
35
  ## 0.1.0-alpha.1 (2025-08-27)
4
36
 
5
37
  Full Changelog: [v0.0.1-alpha.1...v0.1.0-alpha.1](https://github.com/dataleonlabs/dataleon-ruby/compare/v0.0.1-alpha.1...v0.1.0-alpha.1)
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "dataleon", "~> 0.1.0.pre.alpha.1"
20
+ gem "dataleon", "~> 0.1.0.pre.alpha.3"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -40,6 +40,9 @@ module Dataleon
40
40
  # @return [Integer, nil]
41
41
  attr_accessor :status
42
42
 
43
+ # @return [Hash{String=>String}, nil]
44
+ attr_accessor :headers
45
+
43
46
  # @return [Object, nil]
44
47
  attr_accessor :body
45
48
 
@@ -47,13 +50,15 @@ module Dataleon
47
50
  #
48
51
  # @param url [URI::Generic]
49
52
  # @param status [Integer, nil]
53
+ # @param headers [Hash{String=>String}, nil]
50
54
  # @param body [Object, nil]
51
55
  # @param request [nil]
52
56
  # @param response [nil]
53
57
  # @param message [String, nil]
54
- def initialize(url:, status: nil, body: nil, request: nil, response: nil, message: nil)
58
+ def initialize(url:, status: nil, headers: nil, body: nil, request: nil, response: nil, message: nil)
55
59
  @url = url
56
60
  @status = status
61
+ @headers = headers
57
62
  @body = body
58
63
  @request = request
59
64
  @response = response
@@ -74,6 +79,7 @@ module Dataleon
74
79
  #
75
80
  # @param url [URI::Generic]
76
81
  # @param status [nil]
82
+ # @param headers [Hash{String=>String}, nil]
77
83
  # @param body [nil]
78
84
  # @param request [nil]
79
85
  # @param response [nil]
@@ -81,6 +87,7 @@ module Dataleon
81
87
  def initialize(
82
88
  url:,
83
89
  status: nil,
90
+ headers: nil,
84
91
  body: nil,
85
92
  request: nil,
86
93
  response: nil,
@@ -95,6 +102,7 @@ module Dataleon
95
102
  #
96
103
  # @param url [URI::Generic]
97
104
  # @param status [nil]
105
+ # @param headers [Hash{String=>String}, nil]
98
106
  # @param body [nil]
99
107
  # @param request [nil]
100
108
  # @param response [nil]
@@ -102,6 +110,7 @@ module Dataleon
102
110
  def initialize(
103
111
  url:,
104
112
  status: nil,
113
+ headers: nil,
105
114
  body: nil,
106
115
  request: nil,
107
116
  response: nil,
@@ -116,21 +125,24 @@ module Dataleon
116
125
  #
117
126
  # @param url [URI::Generic]
118
127
  # @param status [Integer]
128
+ # @param headers [Hash{String=>String}, nil]
119
129
  # @param body [Object, nil]
120
130
  # @param request [nil]
121
131
  # @param response [nil]
122
132
  # @param message [String, nil]
123
133
  #
124
134
  # @return [self]
125
- def self.for(url:, status:, body:, request:, response:, message: nil)
126
- kwargs = {
127
- url: url,
128
- status: status,
129
- body: body,
130
- request: request,
131
- response: response,
132
- message: message
133
- }
135
+ def self.for(url:, status:, headers:, body:, request:, response:, message: nil)
136
+ kwargs =
137
+ {
138
+ url: url,
139
+ status: status,
140
+ headers: headers,
141
+ body: body,
142
+ request: request,
143
+ response: response,
144
+ message: message
145
+ }
134
146
 
135
147
  case status
136
148
  in 400
@@ -162,15 +174,17 @@ module Dataleon
162
174
  #
163
175
  # @param url [URI::Generic]
164
176
  # @param status [Integer]
177
+ # @param headers [Hash{String=>String}, nil]
165
178
  # @param body [Object, nil]
166
179
  # @param request [nil]
167
180
  # @param response [nil]
168
181
  # @param message [String, nil]
169
- def initialize(url:, status:, body:, request:, response:, message: nil)
182
+ def initialize(url:, status:, headers:, body:, request:, response:, message: nil)
170
183
  message ||= {url: url.to_s, status: status, body: body}
171
184
  super(
172
185
  url: url,
173
186
  status: status,
187
+ headers: headers,
174
188
  body: body,
175
189
  request: request,
176
190
  response: response,
@@ -47,7 +47,7 @@ module Dataleon
47
47
  # @api private
48
48
  #
49
49
  # @param status [Integer]
50
- # @param headers [Hash{String=>String}, Net::HTTPHeader]
50
+ # @param headers [Hash{String=>String}]
51
51
  #
52
52
  # @return [Boolean]
53
53
  def should_retry?(status, headers:)
@@ -85,7 +85,7 @@ module Dataleon
85
85
  #
86
86
  # @param status [Integer]
87
87
  #
88
- # @param response_headers [Hash{String=>String}, Net::HTTPHeader]
88
+ # @param response_headers [Hash{String=>String}]
89
89
  #
90
90
  # @return [Hash{Symbol=>Object}]
91
91
  def follow_redirect(request, status:, response_headers:)
@@ -378,6 +378,7 @@ module Dataleon
378
378
  rescue Dataleon::Errors::APIConnectionError => e
379
379
  status = e
380
380
  end
381
+ headers = Dataleon::Internal::Util.normalized_headers(response&.each_header&.to_h)
381
382
 
382
383
  case status
383
384
  in ..299
@@ -390,7 +391,7 @@ module Dataleon
390
391
  in 300..399
391
392
  self.class.reap_connection!(status, stream: stream)
392
393
 
393
- request = self.class.follow_redirect(request, status: status, response_headers: response)
394
+ request = self.class.follow_redirect(request, status: status, response_headers: headers)
394
395
  send_request(
395
396
  request,
396
397
  redirect_count: redirect_count + 1,
@@ -399,9 +400,9 @@ module Dataleon
399
400
  )
400
401
  in Dataleon::Errors::APIConnectionError if retry_count >= max_retries
401
402
  raise status
402
- in (400..) if retry_count >= max_retries || !self.class.should_retry?(status, headers: response)
403
+ in (400..) if retry_count >= max_retries || !self.class.should_retry?(status, headers: headers)
403
404
  decoded = Kernel.then do
404
- Dataleon::Internal::Util.decode_content(response, stream: stream, suppress_error: true)
405
+ Dataleon::Internal::Util.decode_content(headers, stream: stream, suppress_error: true)
405
406
  ensure
406
407
  self.class.reap_connection!(status, stream: stream)
407
408
  end
@@ -409,6 +410,7 @@ module Dataleon
409
410
  raise Dataleon::Errors::APIStatusError.for(
410
411
  url: url,
411
412
  status: status,
413
+ headers: headers,
412
414
  body: decoded,
413
415
  request: nil,
414
416
  response: response
@@ -485,19 +487,21 @@ module Dataleon
485
487
  send_retry_header: send_retry_header
486
488
  )
487
489
 
488
- decoded = Dataleon::Internal::Util.decode_content(response, stream: stream)
490
+ headers = Dataleon::Internal::Util.normalized_headers(response.each_header.to_h)
491
+ decoded = Dataleon::Internal::Util.decode_content(headers, stream: stream)
489
492
  case req
490
493
  in {stream: Class => st}
491
494
  st.new(
492
495
  model: model,
493
496
  url: url,
494
497
  status: status,
498
+ headers: headers,
495
499
  response: response,
496
500
  unwrap: unwrap,
497
501
  stream: decoded
498
502
  )
499
503
  in {page: Class => page}
500
- page.new(client: self, req: req, headers: response, page_data: decoded)
504
+ page.new(client: self, req: req, headers: headers, page_data: decoded)
501
505
  else
502
506
  unwrapped = Dataleon::Internal::Util.dig(decoded, unwrap)
503
507
  Dataleon::Internal::Type::Converter.coerce(model, unwrapped)
@@ -39,7 +39,7 @@ module Dataleon
39
39
  #
40
40
  # @param client [Dataleon::Internal::Transport::BaseClient]
41
41
  # @param req [Hash{Symbol=>Object}]
42
- # @param headers [Hash{String=>String}, Net::HTTPHeader]
42
+ # @param headers [Hash{String=>String}]
43
43
  # @param page_data [Object]
44
44
  def initialize(client:, req:, headers:, page_data:)
45
45
  @client = client
@@ -566,7 +566,8 @@ module Dataleon
566
566
  #
567
567
  # @return [Array(String, Enumerable<String>)]
568
568
  private def encode_multipart_streaming(body)
569
- boundary = SecureRandom.urlsafe_base64(60)
569
+ # RFC 1521 Section 7.2.1 says we should have 70 char maximum for boundary length
570
+ boundary = SecureRandom.urlsafe_base64(46)
570
571
 
571
572
  closing = []
572
573
  strio = writable_enum do |y|
@@ -647,7 +648,7 @@ module Dataleon
647
648
  #
648
649
  # Assumes each chunk in stream has `Encoding::BINARY`.
649
650
  #
650
- # @param headers [Hash{String=>String}, Net::HTTPHeader]
651
+ # @param headers [Hash{String=>String}]
651
652
  # @param stream [Enumerable<String>]
652
653
  # @param suppress_error [Boolean]
653
654
  #
@@ -195,6 +195,12 @@ module Dataleon
195
195
  # @return [String, nil]
196
196
  optional :callback_url_notification, String
197
197
 
198
+ # @!attribute filtering_score_aml_suspicions
199
+ # Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
200
+ #
201
+ # @return [Float, nil]
202
+ optional :filtering_score_aml_suspicions, Float
203
+
198
204
  # @!attribute language
199
205
  # Preferred language for responses or notifications (e.g., "eng", "fra").
200
206
  #
@@ -207,7 +213,7 @@ module Dataleon
207
213
  # @return [Boolean, nil]
208
214
  optional :raw_data, Dataleon::Internal::Type::Boolean
209
215
 
210
- # @!method initialize(active_aml_suspicions: nil, callback_url: nil, callback_url_notification: nil, language: nil, raw_data: nil)
216
+ # @!method initialize(active_aml_suspicions: nil, callback_url: nil, callback_url_notification: nil, filtering_score_aml_suspicions: nil, language: nil, raw_data: nil)
211
217
  # Some parameter documentations has been truncated, see
212
218
  # {Dataleon::Models::CompanyCreateParams::TechnicalData} for more details.
213
219
  #
@@ -219,6 +225,8 @@ module Dataleon
219
225
  #
220
226
  # @param callback_url_notification [String] URL to receive notifications about the processing state and status.
221
227
  #
228
+ # @param filtering_score_aml_suspicions [Float] Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
229
+ #
222
230
  # @param language [String] Preferred language for responses or notifications (e.g., "eng", "fra").
223
231
  #
224
232
  # @param raw_data [Boolean] Flag indicating whether to include raw data in the response.
@@ -832,6 +832,12 @@ module Dataleon
832
832
  # @return [String, nil]
833
833
  optional :export_type, String
834
834
 
835
+ # @!attribute filtering_score_aml_suspicions
836
+ # Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
837
+ #
838
+ # @return [Float, nil]
839
+ optional :filtering_score_aml_suspicions, Float
840
+
835
841
  # @!attribute finished_at
836
842
  # Timestamp when the process finished.
837
843
  #
@@ -910,7 +916,7 @@ module Dataleon
910
916
  # @return [String, nil]
911
917
  optional :transfer_mode, String
912
918
 
913
- # @!method initialize(active_aml_suspicions: nil, api_version: nil, approved_at: nil, callback_url: nil, callback_url_notification: nil, disable_notification: nil, disable_notification_date: nil, export_type: nil, finished_at: nil, ip: nil, language: nil, location_ip: nil, need_review_at: nil, notification_confirmation: nil, qr_code: nil, raw_data: nil, rejected_at: nil, session_duration: nil, started_at: nil, transfer_at: nil, transfer_mode: nil)
919
+ # @!method initialize(active_aml_suspicions: nil, api_version: nil, approved_at: nil, callback_url: nil, callback_url_notification: nil, disable_notification: nil, disable_notification_date: nil, export_type: nil, filtering_score_aml_suspicions: nil, finished_at: nil, ip: nil, language: nil, location_ip: nil, need_review_at: nil, notification_confirmation: nil, qr_code: nil, raw_data: nil, rejected_at: nil, session_duration: nil, started_at: nil, transfer_at: nil, transfer_mode: nil)
914
920
  # Some parameter documentations has been truncated, see
915
921
  # {Dataleon::Models::CompanyRegistration::TechnicalData} for more details.
916
922
  #
@@ -933,6 +939,8 @@ module Dataleon
933
939
  #
934
940
  # @param export_type [String] Export format defined by the API (e.g., "json", "xml").
935
941
  #
942
+ # @param filtering_score_aml_suspicions [Float] Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
943
+ #
936
944
  # @param finished_at [Time] Timestamp when the process finished.
937
945
  #
938
946
  # @param ip [String] IP address of the our system handling the request.
@@ -195,6 +195,12 @@ module Dataleon
195
195
  # @return [String, nil]
196
196
  optional :callback_url_notification, String
197
197
 
198
+ # @!attribute filtering_score_aml_suspicions
199
+ # Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
200
+ #
201
+ # @return [Float, nil]
202
+ optional :filtering_score_aml_suspicions, Float
203
+
198
204
  # @!attribute language
199
205
  # Preferred language for responses or notifications (e.g., "eng", "fra").
200
206
  #
@@ -207,7 +213,7 @@ module Dataleon
207
213
  # @return [Boolean, nil]
208
214
  optional :raw_data, Dataleon::Internal::Type::Boolean
209
215
 
210
- # @!method initialize(active_aml_suspicions: nil, callback_url: nil, callback_url_notification: nil, language: nil, raw_data: nil)
216
+ # @!method initialize(active_aml_suspicions: nil, callback_url: nil, callback_url_notification: nil, filtering_score_aml_suspicions: nil, language: nil, raw_data: nil)
211
217
  # Some parameter documentations has been truncated, see
212
218
  # {Dataleon::Models::CompanyUpdateParams::TechnicalData} for more details.
213
219
  #
@@ -219,6 +225,8 @@ module Dataleon
219
225
  #
220
226
  # @param callback_url_notification [String] URL to receive notifications about the processing state and status.
221
227
  #
228
+ # @param filtering_score_aml_suspicions [Float] Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
229
+ #
222
230
  # @param language [String] Preferred language for responses or notifications (e.g., "eng", "fra").
223
231
  #
224
232
  # @param raw_data [Boolean] Flag indicating whether to include raw data in the response.
@@ -497,13 +497,19 @@ module Dataleon
497
497
  # @return [String, nil]
498
498
  optional :maiden_name, String
499
499
 
500
+ # @!attribute nationality
501
+ # Nationality of the individual (ISO 3166-1 alpha-3 country code).
502
+ #
503
+ # @return [String, nil]
504
+ optional :nationality, String
505
+
500
506
  # @!attribute phone_number
501
507
  # Contact phone number including country code.
502
508
  #
503
509
  # @return [String, nil]
504
510
  optional :phone_number, String
505
511
 
506
- # @!method initialize(birthday: nil, email: nil, face_image_signed_url: nil, first_name: nil, full_name: nil, gender: nil, last_name: nil, maiden_name: nil, phone_number: nil)
512
+ # @!method initialize(birthday: nil, email: nil, face_image_signed_url: nil, first_name: nil, full_name: nil, gender: nil, last_name: nil, maiden_name: nil, nationality: nil, phone_number: nil)
507
513
  # Personal details of the individual, such as name, date of birth, and contact
508
514
  # info.
509
515
  #
@@ -523,6 +529,8 @@ module Dataleon
523
529
  #
524
530
  # @param maiden_name [String] Maiden name of the person, if applicable.
525
531
  #
532
+ # @param nationality [String] Nationality of the individual (ISO 3166-1 alpha-3 country code).
533
+ #
526
534
  # @param phone_number [String] Contact phone number including country code.
527
535
  end
528
536
 
@@ -674,6 +682,12 @@ module Dataleon
674
682
  # @return [String, nil]
675
683
  optional :export_type, String
676
684
 
685
+ # @!attribute filtering_score_aml_suspicions
686
+ # Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
687
+ #
688
+ # @return [Float, nil]
689
+ optional :filtering_score_aml_suspicions, Float
690
+
677
691
  # @!attribute finished_at
678
692
  # Timestamp when the process finished.
679
693
  #
@@ -752,7 +766,7 @@ module Dataleon
752
766
  # @return [String, nil]
753
767
  optional :transfer_mode, String
754
768
 
755
- # @!method initialize(active_aml_suspicions: nil, api_version: nil, approved_at: nil, callback_url: nil, callback_url_notification: nil, disable_notification: nil, disable_notification_date: nil, export_type: nil, finished_at: nil, ip: nil, language: nil, location_ip: nil, need_review_at: nil, notification_confirmation: nil, qr_code: nil, raw_data: nil, rejected_at: nil, session_duration: nil, started_at: nil, transfer_at: nil, transfer_mode: nil)
769
+ # @!method initialize(active_aml_suspicions: nil, api_version: nil, approved_at: nil, callback_url: nil, callback_url_notification: nil, disable_notification: nil, disable_notification_date: nil, export_type: nil, filtering_score_aml_suspicions: nil, finished_at: nil, ip: nil, language: nil, location_ip: nil, need_review_at: nil, notification_confirmation: nil, qr_code: nil, raw_data: nil, rejected_at: nil, session_duration: nil, started_at: nil, transfer_at: nil, transfer_mode: nil)
756
770
  # Some parameter documentations has been truncated, see
757
771
  # {Dataleon::Models::Individual::TechnicalData} for more details.
758
772
  #
@@ -774,6 +788,8 @@ module Dataleon
774
788
  #
775
789
  # @param export_type [String] Export format defined by the API (e.g., "json", "xml").
776
790
  #
791
+ # @param filtering_score_aml_suspicions [Float] Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
792
+ #
777
793
  # @param finished_at [Time] Timestamp when the process finished.
778
794
  #
779
795
  # @param ip [String] IP address of the our system handling the request.
@@ -83,13 +83,19 @@ module Dataleon
83
83
  # @return [String, nil]
84
84
  optional :maiden_name, String
85
85
 
86
+ # @!attribute nationality
87
+ # Nationality of the individual (ISO 3166-1 alpha-3 country code).
88
+ #
89
+ # @return [String, nil]
90
+ optional :nationality, String
91
+
86
92
  # @!attribute phone_number
87
93
  # Phone number of the individual.
88
94
  #
89
95
  # @return [String, nil]
90
96
  optional :phone_number, String
91
97
 
92
- # @!method initialize(birthday: nil, email: nil, first_name: nil, gender: nil, last_name: nil, maiden_name: nil, phone_number: nil)
98
+ # @!method initialize(birthday: nil, email: nil, first_name: nil, gender: nil, last_name: nil, maiden_name: nil, nationality: nil, phone_number: nil)
93
99
  # Personal information about the individual.
94
100
  #
95
101
  # @param birthday [String] Date of birth in DD/MM/YYYY format.
@@ -104,6 +110,8 @@ module Dataleon
104
110
  #
105
111
  # @param maiden_name [String] Maiden name, if applicable.
106
112
  #
113
+ # @param nationality [String] Nationality of the individual (ISO 3166-1 alpha-3 country code).
114
+ #
107
115
  # @param phone_number [String] Phone number of the individual.
108
116
 
109
117
  # Gender of the individual (M for male, F for female).
@@ -141,6 +149,12 @@ module Dataleon
141
149
  # @return [String, nil]
142
150
  optional :callback_url_notification, String
143
151
 
152
+ # @!attribute filtering_score_aml_suspicions
153
+ # Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
154
+ #
155
+ # @return [Float, nil]
156
+ optional :filtering_score_aml_suspicions, Float
157
+
144
158
  # @!attribute language
145
159
  # Preferred language for communication (e.g., "eng", "fra").
146
160
  #
@@ -153,7 +167,7 @@ module Dataleon
153
167
  # @return [Boolean, nil]
154
168
  optional :raw_data, Dataleon::Internal::Type::Boolean
155
169
 
156
- # @!method initialize(active_aml_suspicions: nil, callback_url: nil, callback_url_notification: nil, language: nil, raw_data: nil)
170
+ # @!method initialize(active_aml_suspicions: nil, callback_url: nil, callback_url_notification: nil, filtering_score_aml_suspicions: nil, language: nil, raw_data: nil)
157
171
  # Some parameter documentations has been truncated, see
158
172
  # {Dataleon::Models::IndividualCreateParams::TechnicalData} for more details.
159
173
  #
@@ -165,6 +179,8 @@ module Dataleon
165
179
  #
166
180
  # @param callback_url_notification [String] URL for receive notifications about the processing state or status.
167
181
  #
182
+ # @param filtering_score_aml_suspicions [Float] Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
183
+ #
168
184
  # @param language [String] Preferred language for communication (e.g., "eng", "fra").
169
185
  #
170
186
  # @param raw_data [Boolean] Flag indicating whether to include raw data in the response.
@@ -83,13 +83,19 @@ module Dataleon
83
83
  # @return [String, nil]
84
84
  optional :maiden_name, String
85
85
 
86
+ # @!attribute nationality
87
+ # Nationality of the individual (ISO 3166-1 alpha-3 country code).
88
+ #
89
+ # @return [String, nil]
90
+ optional :nationality, String
91
+
86
92
  # @!attribute phone_number
87
93
  # Phone number of the individual.
88
94
  #
89
95
  # @return [String, nil]
90
96
  optional :phone_number, String
91
97
 
92
- # @!method initialize(birthday: nil, email: nil, first_name: nil, gender: nil, last_name: nil, maiden_name: nil, phone_number: nil)
98
+ # @!method initialize(birthday: nil, email: nil, first_name: nil, gender: nil, last_name: nil, maiden_name: nil, nationality: nil, phone_number: nil)
93
99
  # Personal information about the individual.
94
100
  #
95
101
  # @param birthday [String] Date of birth in DD/MM/YYYY format.
@@ -104,6 +110,8 @@ module Dataleon
104
110
  #
105
111
  # @param maiden_name [String] Maiden name, if applicable.
106
112
  #
113
+ # @param nationality [String] Nationality of the individual (ISO 3166-1 alpha-3 country code).
114
+ #
107
115
  # @param phone_number [String] Phone number of the individual.
108
116
 
109
117
  # Gender of the individual (M for male, F for female).
@@ -141,6 +149,12 @@ module Dataleon
141
149
  # @return [String, nil]
142
150
  optional :callback_url_notification, String
143
151
 
152
+ # @!attribute filtering_score_aml_suspicions
153
+ # Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
154
+ #
155
+ # @return [Float, nil]
156
+ optional :filtering_score_aml_suspicions, Float
157
+
144
158
  # @!attribute language
145
159
  # Preferred language for communication (e.g., "eng", "fra").
146
160
  #
@@ -153,7 +167,7 @@ module Dataleon
153
167
  # @return [Boolean, nil]
154
168
  optional :raw_data, Dataleon::Internal::Type::Boolean
155
169
 
156
- # @!method initialize(active_aml_suspicions: nil, callback_url: nil, callback_url_notification: nil, language: nil, raw_data: nil)
170
+ # @!method initialize(active_aml_suspicions: nil, callback_url: nil, callback_url_notification: nil, filtering_score_aml_suspicions: nil, language: nil, raw_data: nil)
157
171
  # Some parameter documentations has been truncated, see
158
172
  # {Dataleon::Models::IndividualUpdateParams::TechnicalData} for more details.
159
173
  #
@@ -165,6 +179,8 @@ module Dataleon
165
179
  #
166
180
  # @param callback_url_notification [String] URL for receive notifications about the processing state or status.
167
181
  #
182
+ # @param filtering_score_aml_suspicions [Float] Minimum filtering score (between 0 and 1) for AML suspicions to be considered.
183
+ #
168
184
  # @param language [String] Preferred language for communication (e.g., "eng", "fra").
169
185
  #
170
186
  # @param raw_data [Boolean] Flag indicating whether to include raw data in the response.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Dataleon
4
- VERSION = "0.1.0.pre.alpha.1"
4
+ VERSION = "0.1.0.pre.alpha.3"
5
5
  end
@@ -33,6 +33,9 @@ module Dataleon
33
33
  sig { returns(T.nilable(Integer)) }
34
34
  attr_accessor :status
35
35
 
36
+ sig { returns(T.nilable(T::Hash[String, String])) }
37
+ attr_accessor :headers
38
+
36
39
  sig { returns(T.nilable(T.anything)) }
37
40
  attr_accessor :body
38
41
 
@@ -41,6 +44,7 @@ module Dataleon
41
44
  params(
42
45
  url: URI::Generic,
43
46
  status: T.nilable(Integer),
47
+ headers: T.nilable(T::Hash[String, String]),
44
48
  body: T.nilable(Object),
45
49
  request: NilClass,
46
50
  response: NilClass,
@@ -50,6 +54,7 @@ module Dataleon
50
54
  def self.new(
51
55
  url:,
52
56
  status: nil,
57
+ headers: nil,
53
58
  body: nil,
54
59
  request: nil,
55
60
  response: nil,
@@ -70,6 +75,7 @@ module Dataleon
70
75
  params(
71
76
  url: URI::Generic,
72
77
  status: NilClass,
78
+ headers: T.nilable(T::Hash[String, String]),
73
79
  body: NilClass,
74
80
  request: NilClass,
75
81
  response: NilClass,
@@ -79,6 +85,7 @@ module Dataleon
79
85
  def self.new(
80
86
  url:,
81
87
  status: nil,
88
+ headers: nil,
82
89
  body: nil,
83
90
  request: nil,
84
91
  response: nil,
@@ -93,6 +100,7 @@ module Dataleon
93
100
  params(
94
101
  url: URI::Generic,
95
102
  status: NilClass,
103
+ headers: T.nilable(T::Hash[String, String]),
96
104
  body: NilClass,
97
105
  request: NilClass,
98
106
  response: NilClass,
@@ -102,6 +110,7 @@ module Dataleon
102
110
  def self.new(
103
111
  url:,
104
112
  status: nil,
113
+ headers: nil,
105
114
  body: nil,
106
115
  request: nil,
107
116
  response: nil,
@@ -116,13 +125,22 @@ module Dataleon
116
125
  params(
117
126
  url: URI::Generic,
118
127
  status: Integer,
128
+ headers: T.nilable(T::Hash[String, String]),
119
129
  body: T.nilable(Object),
120
130
  request: NilClass,
121
131
  response: NilClass,
122
132
  message: T.nilable(String)
123
133
  ).returns(T.attached_class)
124
134
  end
125
- def self.for(url:, status:, body:, request:, response:, message: nil)
135
+ def self.for(
136
+ url:,
137
+ status:,
138
+ headers:,
139
+ body:,
140
+ request:,
141
+ response:,
142
+ message: nil
143
+ )
126
144
  end
127
145
 
128
146
  sig { returns(Integer) }
@@ -133,13 +151,22 @@ module Dataleon
133
151
  params(
134
152
  url: URI::Generic,
135
153
  status: Integer,
154
+ headers: T.nilable(T::Hash[String, String]),
136
155
  body: T.nilable(Object),
137
156
  request: NilClass,
138
157
  response: NilClass,
139
158
  message: T.nilable(String)
140
159
  ).returns(T.attached_class)
141
160
  end
142
- def self.new(url:, status:, body:, request:, response:, message: nil)
161
+ def self.new(
162
+ url:,
163
+ status:,
164
+ headers:,
165
+ body:,
166
+ request:,
167
+ response:,
168
+ message: nil
169
+ )
143
170
  end
144
171
  end
145
172