dataleon 0.1.0.pre.alpha.1

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 (149) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +50 -0
  4. data/README.md +257 -0
  5. data/SECURITY.md +27 -0
  6. data/lib/dataleon/client.rb +80 -0
  7. data/lib/dataleon/errors.rb +214 -0
  8. data/lib/dataleon/file_part.rb +55 -0
  9. data/lib/dataleon/internal/transport/base_client.rb +563 -0
  10. data/lib/dataleon/internal/transport/pooled_net_requester.rb +201 -0
  11. data/lib/dataleon/internal/type/array_of.rb +168 -0
  12. data/lib/dataleon/internal/type/base_model.rb +531 -0
  13. data/lib/dataleon/internal/type/base_page.rb +55 -0
  14. data/lib/dataleon/internal/type/boolean.rb +77 -0
  15. data/lib/dataleon/internal/type/converter.rb +327 -0
  16. data/lib/dataleon/internal/type/enum.rb +131 -0
  17. data/lib/dataleon/internal/type/file_input.rb +108 -0
  18. data/lib/dataleon/internal/type/hash_of.rb +188 -0
  19. data/lib/dataleon/internal/type/request_parameters.rb +42 -0
  20. data/lib/dataleon/internal/type/union.rb +237 -0
  21. data/lib/dataleon/internal/type/unknown.rb +81 -0
  22. data/lib/dataleon/internal/util.rb +914 -0
  23. data/lib/dataleon/internal.rb +20 -0
  24. data/lib/dataleon/models/check.rb +50 -0
  25. data/lib/dataleon/models/companies/document_list_params.rb +16 -0
  26. data/lib/dataleon/models/companies/document_upload_params.rb +82 -0
  27. data/lib/dataleon/models/company_create_params.rb +228 -0
  28. data/lib/dataleon/models/company_delete_params.rb +14 -0
  29. data/lib/dataleon/models/company_list_params.rb +108 -0
  30. data/lib/dataleon/models/company_list_response.rb +8 -0
  31. data/lib/dataleon/models/company_registration.rb +964 -0
  32. data/lib/dataleon/models/company_retrieve_params.rb +30 -0
  33. data/lib/dataleon/models/company_update_params.rb +228 -0
  34. data/lib/dataleon/models/individual.rb +805 -0
  35. data/lib/dataleon/models/individual_create_params.rb +174 -0
  36. data/lib/dataleon/models/individual_delete_params.rb +14 -0
  37. data/lib/dataleon/models/individual_list_params.rb +108 -0
  38. data/lib/dataleon/models/individual_list_response.rb +8 -0
  39. data/lib/dataleon/models/individual_retrieve_params.rb +30 -0
  40. data/lib/dataleon/models/individual_update_params.rb +174 -0
  41. data/lib/dataleon/models/individuals/document_list_params.rb +16 -0
  42. data/lib/dataleon/models/individuals/document_response.rb +98 -0
  43. data/lib/dataleon/models/individuals/document_upload_params.rb +82 -0
  44. data/lib/dataleon/models/individuals/generic_document.rb +132 -0
  45. data/lib/dataleon/models/individuals/kbis.rb +326 -0
  46. data/lib/dataleon/models.rb +71 -0
  47. data/lib/dataleon/request_options.rb +77 -0
  48. data/lib/dataleon/resources/companies/documents.rb +65 -0
  49. data/lib/dataleon/resources/companies.rb +164 -0
  50. data/lib/dataleon/resources/individuals/documents.rb +65 -0
  51. data/lib/dataleon/resources/individuals.rb +164 -0
  52. data/lib/dataleon/version.rb +5 -0
  53. data/lib/dataleon.rb +79 -0
  54. data/manifest.yaml +15 -0
  55. data/rbi/dataleon/client.rbi +56 -0
  56. data/rbi/dataleon/errors.rbi +178 -0
  57. data/rbi/dataleon/file_part.rbi +37 -0
  58. data/rbi/dataleon/internal/transport/base_client.rbi +293 -0
  59. data/rbi/dataleon/internal/transport/pooled_net_requester.rbi +79 -0
  60. data/rbi/dataleon/internal/type/array_of.rbi +104 -0
  61. data/rbi/dataleon/internal/type/base_model.rbi +302 -0
  62. data/rbi/dataleon/internal/type/base_page.rbi +42 -0
  63. data/rbi/dataleon/internal/type/boolean.rbi +58 -0
  64. data/rbi/dataleon/internal/type/converter.rbi +216 -0
  65. data/rbi/dataleon/internal/type/enum.rbi +82 -0
  66. data/rbi/dataleon/internal/type/file_input.rbi +59 -0
  67. data/rbi/dataleon/internal/type/hash_of.rbi +104 -0
  68. data/rbi/dataleon/internal/type/request_parameters.rbi +29 -0
  69. data/rbi/dataleon/internal/type/union.rbi +128 -0
  70. data/rbi/dataleon/internal/type/unknown.rbi +58 -0
  71. data/rbi/dataleon/internal/util.rbi +487 -0
  72. data/rbi/dataleon/internal.rbi +16 -0
  73. data/rbi/dataleon/models/check.rbi +83 -0
  74. data/rbi/dataleon/models/companies/document_list_params.rbi +32 -0
  75. data/rbi/dataleon/models/companies/document_upload_params.rbi +266 -0
  76. data/rbi/dataleon/models/company_create_params.rbi +361 -0
  77. data/rbi/dataleon/models/company_delete_params.rbi +27 -0
  78. data/rbi/dataleon/models/company_list_params.rbi +182 -0
  79. data/rbi/dataleon/models/company_list_response.rbi +11 -0
  80. data/rbi/dataleon/models/company_registration.rbi +1628 -0
  81. data/rbi/dataleon/models/company_retrieve_params.rbi +57 -0
  82. data/rbi/dataleon/models/company_update_params.rbi +361 -0
  83. data/rbi/dataleon/models/individual.rbi +1281 -0
  84. data/rbi/dataleon/models/individual_create_params.rbi +323 -0
  85. data/rbi/dataleon/models/individual_delete_params.rbi +27 -0
  86. data/rbi/dataleon/models/individual_list_params.rbi +193 -0
  87. data/rbi/dataleon/models/individual_list_response.rbi +11 -0
  88. data/rbi/dataleon/models/individual_retrieve_params.rbi +57 -0
  89. data/rbi/dataleon/models/individual_update_params.rbi +323 -0
  90. data/rbi/dataleon/models/individuals/document_list_params.rbi +32 -0
  91. data/rbi/dataleon/models/individuals/document_response.rbi +190 -0
  92. data/rbi/dataleon/models/individuals/document_upload_params.rbi +266 -0
  93. data/rbi/dataleon/models/individuals/generic_document.rbi +252 -0
  94. data/rbi/dataleon/models/individuals/kbis.rbi +513 -0
  95. data/rbi/dataleon/models.rbi +33 -0
  96. data/rbi/dataleon/request_options.rbi +59 -0
  97. data/rbi/dataleon/resources/companies/documents.rbi +52 -0
  98. data/rbi/dataleon/resources/companies.rbi +135 -0
  99. data/rbi/dataleon/resources/individuals/documents.rbi +52 -0
  100. data/rbi/dataleon/resources/individuals.rbi +137 -0
  101. data/rbi/dataleon/version.rbi +5 -0
  102. data/sig/dataleon/client.rbs +28 -0
  103. data/sig/dataleon/errors.rbs +110 -0
  104. data/sig/dataleon/file_part.rbs +21 -0
  105. data/sig/dataleon/internal/transport/base_client.rbs +131 -0
  106. data/sig/dataleon/internal/transport/pooled_net_requester.rbs +45 -0
  107. data/sig/dataleon/internal/type/array_of.rbs +48 -0
  108. data/sig/dataleon/internal/type/base_model.rbs +102 -0
  109. data/sig/dataleon/internal/type/base_page.rbs +24 -0
  110. data/sig/dataleon/internal/type/boolean.rbs +26 -0
  111. data/sig/dataleon/internal/type/converter.rbs +79 -0
  112. data/sig/dataleon/internal/type/enum.rbs +32 -0
  113. data/sig/dataleon/internal/type/file_input.rbs +25 -0
  114. data/sig/dataleon/internal/type/hash_of.rbs +48 -0
  115. data/sig/dataleon/internal/type/request_parameters.rbs +17 -0
  116. data/sig/dataleon/internal/type/union.rbs +52 -0
  117. data/sig/dataleon/internal/type/unknown.rbs +26 -0
  118. data/sig/dataleon/internal/util.rbs +185 -0
  119. data/sig/dataleon/internal.rbs +9 -0
  120. data/sig/dataleon/models/check.rbs +50 -0
  121. data/sig/dataleon/models/companies/document_list_params.rbs +17 -0
  122. data/sig/dataleon/models/companies/document_upload_params.rbs +119 -0
  123. data/sig/dataleon/models/company_create_params.rbs +209 -0
  124. data/sig/dataleon/models/company_delete_params.rbs +15 -0
  125. data/sig/dataleon/models/company_list_params.rbs +120 -0
  126. data/sig/dataleon/models/company_list_response.rbs +7 -0
  127. data/sig/dataleon/models/company_registration.rbs +847 -0
  128. data/sig/dataleon/models/company_retrieve_params.rbs +32 -0
  129. data/sig/dataleon/models/company_update_params.rbs +209 -0
  130. data/sig/dataleon/models/individual.rbs +717 -0
  131. data/sig/dataleon/models/individual_create_params.rbs +172 -0
  132. data/sig/dataleon/models/individual_delete_params.rbs +15 -0
  133. data/sig/dataleon/models/individual_list_params.rbs +120 -0
  134. data/sig/dataleon/models/individual_list_response.rbs +7 -0
  135. data/sig/dataleon/models/individual_retrieve_params.rbs +32 -0
  136. data/sig/dataleon/models/individual_update_params.rbs +172 -0
  137. data/sig/dataleon/models/individuals/document_list_params.rbs +17 -0
  138. data/sig/dataleon/models/individuals/document_response.rbs +101 -0
  139. data/sig/dataleon/models/individuals/document_upload_params.rbs +119 -0
  140. data/sig/dataleon/models/individuals/generic_document.rbs +132 -0
  141. data/sig/dataleon/models/individuals/kbis.rbs +303 -0
  142. data/sig/dataleon/models.rbs +31 -0
  143. data/sig/dataleon/request_options.rbs +34 -0
  144. data/sig/dataleon/resources/companies/documents.rbs +22 -0
  145. data/sig/dataleon/resources/companies.rbs +50 -0
  146. data/sig/dataleon/resources/individuals/documents.rbs +22 -0
  147. data/sig/dataleon/resources/individuals.rbs +50 -0
  148. data/sig/dataleon/version.rbs +3 -0
  149. metadata +206 -0
@@ -0,0 +1,805 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dataleon
4
+ module Models
5
+ # @see Dataleon::Resources::Individuals#create
6
+ class Individual < Dataleon::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ # Unique identifier of the individual.
9
+ #
10
+ # @return [String, nil]
11
+ optional :id, String
12
+
13
+ # @!attribute aml_suspicions
14
+ # List of AML (Anti-Money Laundering) suspicion entries linked to the individual.
15
+ #
16
+ # @return [Array<Dataleon::Models::Individual::AmlSuspicion>, nil]
17
+ optional :aml_suspicions, -> { Dataleon::Internal::Type::ArrayOf[Dataleon::Individual::AmlSuspicion] }
18
+
19
+ # @!attribute auth_url
20
+ # URL to authenticate the individual, usually for document signing or onboarding.
21
+ #
22
+ # @return [String, nil]
23
+ optional :auth_url, String
24
+
25
+ # @!attribute certificat
26
+ # Digital certificate associated with the individual, if any.
27
+ #
28
+ # @return [Dataleon::Models::Individual::Certificat, nil]
29
+ optional :certificat, -> { Dataleon::Individual::Certificat }
30
+
31
+ # @!attribute checks
32
+ # List of verification or validation checks applied to the individual.
33
+ #
34
+ # @return [Array<Dataleon::Models::Check>, nil]
35
+ optional :checks, -> { Dataleon::Internal::Type::ArrayOf[Dataleon::Check] }
36
+
37
+ # @!attribute created_at
38
+ # Timestamp of the individual's creation in ISO 8601 format.
39
+ #
40
+ # @return [Time, nil]
41
+ optional :created_at, Time
42
+
43
+ # @!attribute documents
44
+ # All documents submitted or associated with the individual.
45
+ #
46
+ # @return [Array<Dataleon::Models::Individuals::GenericDocument>, nil]
47
+ optional :documents, -> { Dataleon::Internal::Type::ArrayOf[Dataleon::Individuals::GenericDocument] }
48
+
49
+ # @!attribute identity_card
50
+ # Reference to the individual's identity document.
51
+ #
52
+ # @return [Dataleon::Models::Individual::IdentityCard, nil]
53
+ optional :identity_card, -> { Dataleon::Individual::IdentityCard }
54
+
55
+ # @!attribute number
56
+ # Internal sequential number or reference for the individual.
57
+ #
58
+ # @return [Integer, nil]
59
+ optional :number, Integer
60
+
61
+ # @!attribute person
62
+ # Personal details of the individual, such as name, date of birth, and contact
63
+ # info.
64
+ #
65
+ # @return [Dataleon::Models::Individual::Person, nil]
66
+ optional :person, -> { Dataleon::Individual::Person }
67
+
68
+ # @!attribute portal_url
69
+ # Admin or internal portal URL for viewing the individual's details.
70
+ #
71
+ # @return [String, nil]
72
+ optional :portal_url, String
73
+
74
+ # @!attribute properties
75
+ # Custom key-value metadata fields associated with the individual.
76
+ #
77
+ # @return [Array<Dataleon::Models::Individual::Property>, nil]
78
+ optional :properties, -> { Dataleon::Internal::Type::ArrayOf[Dataleon::Individual::Property] }
79
+
80
+ # @!attribute risk
81
+ # Risk assessment associated with the individual.
82
+ #
83
+ # @return [Dataleon::Models::Individual::Risk, nil]
84
+ optional :risk, -> { Dataleon::Individual::Risk }
85
+
86
+ # @!attribute source_id
87
+ # Optional identifier indicating the source of the individual record.
88
+ #
89
+ # @return [String, nil]
90
+ optional :source_id, String
91
+
92
+ # @!attribute state
93
+ # Current operational state in the workflow (e.g., WAITING, IN_PROGRESS,
94
+ # COMPLETED).
95
+ #
96
+ # @return [String, nil]
97
+ optional :state, String
98
+
99
+ # @!attribute status
100
+ # Overall processing status of the individual (e.g., rejected, need_review,
101
+ # approved).
102
+ #
103
+ # @return [String, nil]
104
+ optional :status, String
105
+
106
+ # @!attribute tags
107
+ # List of tags assigned to the individual for categorization or metadata purposes.
108
+ #
109
+ # @return [Array<Dataleon::Models::Individual::Tag>, nil]
110
+ optional :tags, -> { Dataleon::Internal::Type::ArrayOf[Dataleon::Individual::Tag] }
111
+
112
+ # @!attribute technical_data
113
+ # Technical metadata related to the request (e.g., QR code settings, language).
114
+ #
115
+ # @return [Dataleon::Models::Individual::TechnicalData, nil]
116
+ optional :technical_data, -> { Dataleon::Individual::TechnicalData }
117
+
118
+ # @!attribute webview_url
119
+ # Public-facing webview URL for the individual’s identification process.
120
+ #
121
+ # @return [String, nil]
122
+ optional :webview_url, String
123
+
124
+ # @!attribute workspace_id
125
+ # Identifier of the workspace to which the individual belongs.
126
+ #
127
+ # @return [String, nil]
128
+ optional :workspace_id, String
129
+
130
+ # @!method initialize(id: nil, aml_suspicions: nil, auth_url: nil, certificat: nil, checks: nil, created_at: nil, documents: nil, identity_card: nil, number: nil, person: nil, portal_url: nil, properties: nil, risk: nil, source_id: nil, state: nil, status: nil, tags: nil, technical_data: nil, webview_url: nil, workspace_id: nil)
131
+ # Some parameter documentations has been truncated, see
132
+ # {Dataleon::Models::Individual} for more details.
133
+ #
134
+ # Represents a single individual record, including identification, status, and
135
+ # associated metadata.
136
+ #
137
+ # @param id [String] Unique identifier of the individual.
138
+ #
139
+ # @param aml_suspicions [Array<Dataleon::Models::Individual::AmlSuspicion>] List of AML (Anti-Money Laundering) suspicion entries linked to the individual.
140
+ #
141
+ # @param auth_url [String] URL to authenticate the individual, usually for document signing or onboarding.
142
+ #
143
+ # @param certificat [Dataleon::Models::Individual::Certificat] Digital certificate associated with the individual, if any.
144
+ #
145
+ # @param checks [Array<Dataleon::Models::Check>] List of verification or validation checks applied to the individual.
146
+ #
147
+ # @param created_at [Time] Timestamp of the individual's creation in ISO 8601 format.
148
+ #
149
+ # @param documents [Array<Dataleon::Models::Individuals::GenericDocument>] All documents submitted or associated with the individual.
150
+ #
151
+ # @param identity_card [Dataleon::Models::Individual::IdentityCard] Reference to the individual's identity document.
152
+ #
153
+ # @param number [Integer] Internal sequential number or reference for the individual.
154
+ #
155
+ # @param person [Dataleon::Models::Individual::Person] Personal details of the individual, such as name, date of birth, and contact inf
156
+ #
157
+ # @param portal_url [String] Admin or internal portal URL for viewing the individual's details.
158
+ #
159
+ # @param properties [Array<Dataleon::Models::Individual::Property>] Custom key-value metadata fields associated with the individual.
160
+ #
161
+ # @param risk [Dataleon::Models::Individual::Risk] Risk assessment associated with the individual.
162
+ #
163
+ # @param source_id [String] Optional identifier indicating the source of the individual record.
164
+ #
165
+ # @param state [String] Current operational state in the workflow (e.g., WAITING, IN_PROGRESS, COMPLETED
166
+ #
167
+ # @param status [String] Overall processing status of the individual (e.g., rejected, need_review, approv
168
+ #
169
+ # @param tags [Array<Dataleon::Models::Individual::Tag>] List of tags assigned to the individual for categorization or metadata purposes.
170
+ #
171
+ # @param technical_data [Dataleon::Models::Individual::TechnicalData] Technical metadata related to the request (e.g., QR code settings, language).
172
+ #
173
+ # @param webview_url [String] Public-facing webview URL for the individual’s identification process.
174
+ #
175
+ # @param workspace_id [String] Identifier of the workspace to which the individual belongs.
176
+
177
+ class AmlSuspicion < Dataleon::Internal::Type::BaseModel
178
+ # @!attribute caption
179
+ # Human-readable description or title for the suspicious finding.
180
+ #
181
+ # @return [String, nil]
182
+ optional :caption, String
183
+
184
+ # @!attribute country
185
+ # Country associated with the suspicion (ISO 3166-1 alpha-2 code).
186
+ #
187
+ # @return [String, nil]
188
+ optional :country, String
189
+
190
+ # @!attribute gender
191
+ # Gender associated with the suspicion, if applicable.
192
+ #
193
+ # @return [String, nil]
194
+ optional :gender, String
195
+
196
+ # @!attribute relation
197
+ # Nature of the relationship between the entity and the suspicious activity (e.g.,
198
+ # "linked", "associated").
199
+ #
200
+ # @return [String, nil]
201
+ optional :relation, String
202
+
203
+ # @!attribute schema
204
+ # Version of the evaluation schema or rule engine used.
205
+ #
206
+ # @return [String, nil]
207
+ optional :schema, String
208
+
209
+ # @!attribute score
210
+ # Risk score between 0.0 and 1 indicating the severity of the suspicion.
211
+ #
212
+ # @return [Float, nil]
213
+ optional :score, Float
214
+
215
+ # @!attribute source
216
+ # Source system or service providing this suspicion.
217
+ #
218
+ # @return [String, nil]
219
+ optional :source, String
220
+
221
+ # @!attribute status
222
+ # Status of the suspicion review process. Possible values: "true_positive",
223
+ # "false_positive", "pending".
224
+ #
225
+ # @return [Symbol, Dataleon::Models::Individual::AmlSuspicion::Status, nil]
226
+ optional :status, enum: -> { Dataleon::Individual::AmlSuspicion::Status }
227
+
228
+ # @!attribute type
229
+ # Category of the suspicion. Possible values: "crime", "sanction", "pep",
230
+ # "adverse_news", "other".
231
+ #
232
+ # @return [Symbol, Dataleon::Models::Individual::AmlSuspicion::Type, nil]
233
+ optional :type, enum: -> { Dataleon::Individual::AmlSuspicion::Type }
234
+
235
+ # @!method initialize(caption: nil, country: nil, gender: nil, relation: nil, schema: nil, score: nil, source: nil, status: nil, type: nil)
236
+ # Some parameter documentations has been truncated, see
237
+ # {Dataleon::Models::Individual::AmlSuspicion} for more details.
238
+ #
239
+ # Represents a record of suspicion raised during Anti-Money Laundering (AML)
240
+ # screening. Includes metadata such as risk score, origin, and linked watchlist
241
+ # types.
242
+ #
243
+ # @param caption [String] Human-readable description or title for the suspicious finding.
244
+ #
245
+ # @param country [String] Country associated with the suspicion (ISO 3166-1 alpha-2 code).
246
+ #
247
+ # @param gender [String] Gender associated with the suspicion, if applicable.
248
+ #
249
+ # @param relation [String] Nature of the relationship between the entity and the suspicious activity (e.g.,
250
+ #
251
+ # @param schema [String] Version of the evaluation schema or rule engine used.
252
+ #
253
+ # @param score [Float] Risk score between 0.0 and 1 indicating the severity of the suspicion.
254
+ #
255
+ # @param source [String] Source system or service providing this suspicion.
256
+ #
257
+ # @param status [Symbol, Dataleon::Models::Individual::AmlSuspicion::Status] Status of the suspicion review process. Possible values: "true_positive", "false
258
+ #
259
+ # @param type [Symbol, Dataleon::Models::Individual::AmlSuspicion::Type] Category of the suspicion. Possible values: "crime", "sanction", "pep", "adverse
260
+
261
+ # Status of the suspicion review process. Possible values: "true_positive",
262
+ # "false_positive", "pending".
263
+ #
264
+ # @see Dataleon::Models::Individual::AmlSuspicion#status
265
+ module Status
266
+ extend Dataleon::Internal::Type::Enum
267
+
268
+ TRUE_POSITIVE = :true_positive
269
+ FALSE_POSITIVE = :false_positive
270
+ PENDING = :pending
271
+
272
+ # @!method self.values
273
+ # @return [Array<Symbol>]
274
+ end
275
+
276
+ # Category of the suspicion. Possible values: "crime", "sanction", "pep",
277
+ # "adverse_news", "other".
278
+ #
279
+ # @see Dataleon::Models::Individual::AmlSuspicion#type
280
+ module Type
281
+ extend Dataleon::Internal::Type::Enum
282
+
283
+ CRIME = :crime
284
+ SANCTION = :sanction
285
+ PEP = :pep
286
+ ADVERSE_NEWS = :adverse_news
287
+ OTHER = :other
288
+
289
+ # @!method self.values
290
+ # @return [Array<Symbol>]
291
+ end
292
+ end
293
+
294
+ # @see Dataleon::Models::Individual#certificat
295
+ class Certificat < Dataleon::Internal::Type::BaseModel
296
+ # @!attribute id
297
+ # Unique identifier for the certificate.
298
+ #
299
+ # @return [String, nil]
300
+ optional :id, String
301
+
302
+ # @!attribute created_at
303
+ # Timestamp when the certificate was created.
304
+ #
305
+ # @return [Time, nil]
306
+ optional :created_at, Time
307
+
308
+ # @!attribute filename
309
+ # Name of the certificate file.
310
+ #
311
+ # @return [String, nil]
312
+ optional :filename, String
313
+
314
+ # @!method initialize(id: nil, created_at: nil, filename: nil)
315
+ # Digital certificate associated with the individual, if any.
316
+ #
317
+ # @param id [String] Unique identifier for the certificate.
318
+ #
319
+ # @param created_at [Time] Timestamp when the certificate was created.
320
+ #
321
+ # @param filename [String] Name of the certificate file.
322
+ end
323
+
324
+ # @see Dataleon::Models::Individual#identity_card
325
+ class IdentityCard < Dataleon::Internal::Type::BaseModel
326
+ # @!attribute id
327
+ # Unique identifier for the document.
328
+ #
329
+ # @return [String, nil]
330
+ optional :id, String
331
+
332
+ # @!attribute back_document_signed_url
333
+ # Signed URL linking to the back image of the document.
334
+ #
335
+ # @return [String, nil]
336
+ optional :back_document_signed_url, String
337
+
338
+ # @!attribute birth_place
339
+ # Place of birth as indicated on the document.
340
+ #
341
+ # @return [String, nil]
342
+ optional :birth_place, String
343
+
344
+ # @!attribute birthday
345
+ # Date of birth in DD/MM/YYYY format as shown on the document.
346
+ #
347
+ # @return [String, nil]
348
+ optional :birthday, String
349
+
350
+ # @!attribute country
351
+ # Country code issuing the document (ISO 3166-1 alpha-2).
352
+ #
353
+ # @return [String, nil]
354
+ optional :country, String
355
+
356
+ # @!attribute expiration_date
357
+ # Expiration date of the document, in YYYY-MM-DD format.
358
+ #
359
+ # @return [String, nil]
360
+ optional :expiration_date, String
361
+
362
+ # @!attribute first_name
363
+ # First name as shown on the document.
364
+ #
365
+ # @return [String, nil]
366
+ optional :first_name, String
367
+
368
+ # @!attribute front_document_signed_url
369
+ # Signed URL linking to the front image of the document.
370
+ #
371
+ # @return [String, nil]
372
+ optional :front_document_signed_url, String
373
+
374
+ # @!attribute gender
375
+ # Gender indicated on the document (e.g., "M" or "F").
376
+ #
377
+ # @return [String, nil]
378
+ optional :gender, String
379
+
380
+ # @!attribute issue_date
381
+ # Date when the document was issued, in YYYY-MM-DD format.
382
+ #
383
+ # @return [String, nil]
384
+ optional :issue_date, String
385
+
386
+ # @!attribute last_name
387
+ # Last name as shown on the document.
388
+ #
389
+ # @return [String, nil]
390
+ optional :last_name, String
391
+
392
+ # @!attribute mrz_line_1
393
+ # First line of the Machine Readable Zone (MRZ) on the document.
394
+ #
395
+ # @return [String, nil]
396
+ optional :mrz_line_1, String
397
+
398
+ # @!attribute mrz_line_2
399
+ # Second line of the MRZ on the document.
400
+ #
401
+ # @return [String, nil]
402
+ optional :mrz_line_2, String
403
+
404
+ # @!attribute mrz_line_3
405
+ # Third line of the MRZ if applicable; otherwise null.
406
+ #
407
+ # @return [String, nil]
408
+ optional :mrz_line_3, String, nil?: true
409
+
410
+ # @!attribute type
411
+ # Type of document (e.g., passport, identity card).
412
+ #
413
+ # @return [String, nil]
414
+ optional :type, String
415
+
416
+ # @!method initialize(id: nil, back_document_signed_url: nil, birth_place: nil, birthday: nil, country: nil, expiration_date: nil, first_name: nil, front_document_signed_url: nil, gender: nil, issue_date: nil, last_name: nil, mrz_line_1: nil, mrz_line_2: nil, mrz_line_3: nil, type: nil)
417
+ # Reference to the individual's identity document.
418
+ #
419
+ # @param id [String] Unique identifier for the document.
420
+ #
421
+ # @param back_document_signed_url [String] Signed URL linking to the back image of the document.
422
+ #
423
+ # @param birth_place [String] Place of birth as indicated on the document.
424
+ #
425
+ # @param birthday [String] Date of birth in DD/MM/YYYY format as shown on the document.
426
+ #
427
+ # @param country [String] Country code issuing the document (ISO 3166-1 alpha-2).
428
+ #
429
+ # @param expiration_date [String] Expiration date of the document, in YYYY-MM-DD format.
430
+ #
431
+ # @param first_name [String] First name as shown on the document.
432
+ #
433
+ # @param front_document_signed_url [String] Signed URL linking to the front image of the document.
434
+ #
435
+ # @param gender [String] Gender indicated on the document (e.g., "M" or "F").
436
+ #
437
+ # @param issue_date [String] Date when the document was issued, in YYYY-MM-DD format.
438
+ #
439
+ # @param last_name [String] Last name as shown on the document.
440
+ #
441
+ # @param mrz_line_1 [String] First line of the Machine Readable Zone (MRZ) on the document.
442
+ #
443
+ # @param mrz_line_2 [String] Second line of the MRZ on the document.
444
+ #
445
+ # @param mrz_line_3 [String, nil] Third line of the MRZ if applicable; otherwise null.
446
+ #
447
+ # @param type [String] Type of document (e.g., passport, identity card).
448
+ end
449
+
450
+ # @see Dataleon::Models::Individual#person
451
+ class Person < Dataleon::Internal::Type::BaseModel
452
+ # @!attribute birthday
453
+ # Date of birth, formatted as DD/MM/YYYY.
454
+ #
455
+ # @return [String, nil]
456
+ optional :birthday, String
457
+
458
+ # @!attribute email
459
+ # Email address of the individual.
460
+ #
461
+ # @return [String, nil]
462
+ optional :email, String
463
+
464
+ # @!attribute face_image_signed_url
465
+ # Signed URL linking to the person’s face image.
466
+ #
467
+ # @return [String, nil]
468
+ optional :face_image_signed_url, String
469
+
470
+ # @!attribute first_name
471
+ # First (given) name of the person.
472
+ #
473
+ # @return [String, nil]
474
+ optional :first_name, String
475
+
476
+ # @!attribute full_name
477
+ # Full name of the person, typically concatenation of first and last names.
478
+ #
479
+ # @return [String, nil]
480
+ optional :full_name, String
481
+
482
+ # @!attribute gender
483
+ # Gender of the individual (e.g., "M" for male, "F" for female).
484
+ #
485
+ # @return [String, nil]
486
+ optional :gender, String
487
+
488
+ # @!attribute last_name
489
+ # Last (family) name of the person.
490
+ #
491
+ # @return [String, nil]
492
+ optional :last_name, String
493
+
494
+ # @!attribute maiden_name
495
+ # Maiden name of the person, if applicable.
496
+ #
497
+ # @return [String, nil]
498
+ optional :maiden_name, String
499
+
500
+ # @!attribute phone_number
501
+ # Contact phone number including country code.
502
+ #
503
+ # @return [String, nil]
504
+ optional :phone_number, String
505
+
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)
507
+ # Personal details of the individual, such as name, date of birth, and contact
508
+ # info.
509
+ #
510
+ # @param birthday [String] Date of birth, formatted as DD/MM/YYYY.
511
+ #
512
+ # @param email [String] Email address of the individual.
513
+ #
514
+ # @param face_image_signed_url [String] Signed URL linking to the person’s face image.
515
+ #
516
+ # @param first_name [String] First (given) name of the person.
517
+ #
518
+ # @param full_name [String] Full name of the person, typically concatenation of first and last names.
519
+ #
520
+ # @param gender [String] Gender of the individual (e.g., "M" for male, "F" for female).
521
+ #
522
+ # @param last_name [String] Last (family) name of the person.
523
+ #
524
+ # @param maiden_name [String] Maiden name of the person, if applicable.
525
+ #
526
+ # @param phone_number [String] Contact phone number including country code.
527
+ end
528
+
529
+ class Property < Dataleon::Internal::Type::BaseModel
530
+ # @!attribute name
531
+ # Name/key of the property.
532
+ #
533
+ # @return [String, nil]
534
+ optional :name, String
535
+
536
+ # @!attribute type
537
+ # Data type of the property value.
538
+ #
539
+ # @return [String, nil]
540
+ optional :type, String
541
+
542
+ # @!attribute value
543
+ # Value associated with the property name.
544
+ #
545
+ # @return [String, nil]
546
+ optional :value, String
547
+
548
+ # @!method initialize(name: nil, type: nil, value: nil)
549
+ # Represents a generic property key-value pair with a specified type.
550
+ #
551
+ # @param name [String] Name/key of the property.
552
+ #
553
+ # @param type [String] Data type of the property value.
554
+ #
555
+ # @param value [String] Value associated with the property name.
556
+ end
557
+
558
+ # @see Dataleon::Models::Individual#risk
559
+ class Risk < Dataleon::Internal::Type::BaseModel
560
+ # @!attribute code
561
+ # Risk category or code identifier.
562
+ #
563
+ # @return [String, nil]
564
+ optional :code, String
565
+
566
+ # @!attribute reason
567
+ # Explanation or justification for the assigned risk.
568
+ #
569
+ # @return [String, nil]
570
+ optional :reason, String
571
+
572
+ # @!attribute score
573
+ # Numeric risk score between 0.0 and 1.0 indicating severity or confidence.
574
+ #
575
+ # @return [Float, nil]
576
+ optional :score, Float
577
+
578
+ # @!method initialize(code: nil, reason: nil, score: nil)
579
+ # Risk assessment associated with the individual.
580
+ #
581
+ # @param code [String] Risk category or code identifier.
582
+ #
583
+ # @param reason [String] Explanation or justification for the assigned risk.
584
+ #
585
+ # @param score [Float] Numeric risk score between 0.0 and 1.0 indicating severity or confidence.
586
+ end
587
+
588
+ class Tag < Dataleon::Internal::Type::BaseModel
589
+ # @!attribute key
590
+ # Name of the tag used to identify the metadata field.
591
+ #
592
+ # @return [String, nil]
593
+ optional :key, String
594
+
595
+ # @!attribute private
596
+ # Indicates whether the tag is private (not visible to external users).
597
+ #
598
+ # @return [Boolean, nil]
599
+ optional :private, Dataleon::Internal::Type::Boolean
600
+
601
+ # @!attribute type
602
+ # Data type of the tag value (e.g., "string", "number", "boolean").
603
+ #
604
+ # @return [String, nil]
605
+ optional :type, String
606
+
607
+ # @!attribute value
608
+ # Value assigned to the tag.
609
+ #
610
+ # @return [String, nil]
611
+ optional :value, String
612
+
613
+ # @!method initialize(key: nil, private: nil, type: nil, value: nil)
614
+ # Represents a key-value metadata tag that can be associated with entities such as
615
+ # individuals or companies.
616
+ #
617
+ # @param key [String] Name of the tag used to identify the metadata field.
618
+ #
619
+ # @param private [Boolean] Indicates whether the tag is private (not visible to external users).
620
+ #
621
+ # @param type [String] Data type of the tag value (e.g., "string", "number", "boolean").
622
+ #
623
+ # @param value [String] Value assigned to the tag.
624
+ end
625
+
626
+ # @see Dataleon::Models::Individual#technical_data
627
+ class TechnicalData < Dataleon::Internal::Type::BaseModel
628
+ # @!attribute active_aml_suspicions
629
+ # Flag indicating whether there are active research AML (Anti-Money Laundering)
630
+ # suspicions for the object when you apply for a new entry or get an existing one.
631
+ #
632
+ # @return [Boolean, nil]
633
+ optional :active_aml_suspicions, Dataleon::Internal::Type::Boolean
634
+
635
+ # @!attribute api_version
636
+ # Version number of the API used.
637
+ #
638
+ # @return [Integer, nil]
639
+ optional :api_version, Integer
640
+
641
+ # @!attribute approved_at
642
+ # Timestamp when the request or process was approved.
643
+ #
644
+ # @return [Time, nil]
645
+ optional :approved_at, Time
646
+
647
+ # @!attribute callback_url
648
+ # URL to receive callback data from the AML system.
649
+ #
650
+ # @return [String, nil]
651
+ optional :callback_url, String
652
+
653
+ # @!attribute callback_url_notification
654
+ # URL to receive notification updates about the processing status.
655
+ #
656
+ # @return [String, nil]
657
+ optional :callback_url_notification, String
658
+
659
+ # @!attribute disable_notification
660
+ # Flag to indicate if notifications are disabled.
661
+ #
662
+ # @return [Boolean, nil]
663
+ optional :disable_notification, Dataleon::Internal::Type::Boolean
664
+
665
+ # @!attribute disable_notification_date
666
+ # Timestamp when notifications were disabled; null if never disabled.
667
+ #
668
+ # @return [Time, nil]
669
+ optional :disable_notification_date, Time, nil?: true
670
+
671
+ # @!attribute export_type
672
+ # Export format defined by the API (e.g., "json", "xml").
673
+ #
674
+ # @return [String, nil]
675
+ optional :export_type, String
676
+
677
+ # @!attribute finished_at
678
+ # Timestamp when the process finished.
679
+ #
680
+ # @return [Time, nil]
681
+ optional :finished_at, Time
682
+
683
+ # @!attribute ip
684
+ # IP address of the our system handling the request.
685
+ #
686
+ # @return [String, nil]
687
+ optional :ip, String
688
+
689
+ # @!attribute language
690
+ # Language preference used in the client workspace (e.g., "fra").
691
+ #
692
+ # @return [String, nil]
693
+ optional :language, String
694
+
695
+ # @!attribute location_ip
696
+ # IP address of the end client (final user) captured.
697
+ #
698
+ # @return [String, nil]
699
+ optional :location_ip, String
700
+
701
+ # @!attribute need_review_at
702
+ # Timestamp indicating when the request or process needs review; null if none.
703
+ #
704
+ # @return [Time, nil]
705
+ optional :need_review_at, Time, nil?: true
706
+
707
+ # @!attribute notification_confirmation
708
+ # Flag indicating if notification confirmation is required or received.
709
+ #
710
+ # @return [Boolean, nil]
711
+ optional :notification_confirmation, Dataleon::Internal::Type::Boolean
712
+
713
+ # @!attribute qr_code
714
+ # Indicates whether QR code is enabled ("true" or "false").
715
+ #
716
+ # @return [String, nil]
717
+ optional :qr_code, String
718
+
719
+ # @!attribute raw_data
720
+ # Flag indicating whether to include raw data in the response.
721
+ #
722
+ # @return [Boolean, nil]
723
+ optional :raw_data, Dataleon::Internal::Type::Boolean
724
+
725
+ # @!attribute rejected_at
726
+ # Timestamp when the request or process was rejected; null if not rejected.
727
+ #
728
+ # @return [Time, nil]
729
+ optional :rejected_at, Time, nil?: true
730
+
731
+ # @!attribute session_duration
732
+ # Duration of the user session in seconds.
733
+ #
734
+ # @return [Integer, nil]
735
+ optional :session_duration, Integer
736
+
737
+ # @!attribute started_at
738
+ # Timestamp when the process started.
739
+ #
740
+ # @return [Time, nil]
741
+ optional :started_at, Time
742
+
743
+ # @!attribute transfer_at
744
+ # Date/time of data transfer.
745
+ #
746
+ # @return [Time, nil]
747
+ optional :transfer_at, Time
748
+
749
+ # @!attribute transfer_mode
750
+ # Mode of data transfer.
751
+ #
752
+ # @return [String, nil]
753
+ optional :transfer_mode, String
754
+
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)
756
+ # Some parameter documentations has been truncated, see
757
+ # {Dataleon::Models::Individual::TechnicalData} for more details.
758
+ #
759
+ # Technical metadata related to the request (e.g., QR code settings, language).
760
+ #
761
+ # @param active_aml_suspicions [Boolean] Flag indicating whether there are active research AML (Anti-Money Laundering) su
762
+ #
763
+ # @param api_version [Integer] Version number of the API used.
764
+ #
765
+ # @param approved_at [Time] Timestamp when the request or process was approved.
766
+ #
767
+ # @param callback_url [String] URL to receive callback data from the AML system.
768
+ #
769
+ # @param callback_url_notification [String] URL to receive notification updates about the processing status.
770
+ #
771
+ # @param disable_notification [Boolean] Flag to indicate if notifications are disabled.
772
+ #
773
+ # @param disable_notification_date [Time, nil] Timestamp when notifications were disabled; null if never disabled.
774
+ #
775
+ # @param export_type [String] Export format defined by the API (e.g., "json", "xml").
776
+ #
777
+ # @param finished_at [Time] Timestamp when the process finished.
778
+ #
779
+ # @param ip [String] IP address of the our system handling the request.
780
+ #
781
+ # @param language [String] Language preference used in the client workspace (e.g., "fra").
782
+ #
783
+ # @param location_ip [String] IP address of the end client (final user) captured.
784
+ #
785
+ # @param need_review_at [Time, nil] Timestamp indicating when the request or process needs review; null if none.
786
+ #
787
+ # @param notification_confirmation [Boolean] Flag indicating if notification confirmation is required or received.
788
+ #
789
+ # @param qr_code [String] Indicates whether QR code is enabled ("true" or "false").
790
+ #
791
+ # @param raw_data [Boolean] Flag indicating whether to include raw data in the response.
792
+ #
793
+ # @param rejected_at [Time, nil] Timestamp when the request or process was rejected; null if not rejected.
794
+ #
795
+ # @param session_duration [Integer] Duration of the user session in seconds.
796
+ #
797
+ # @param started_at [Time] Timestamp when the process started.
798
+ #
799
+ # @param transfer_at [Time] Date/time of data transfer.
800
+ #
801
+ # @param transfer_mode [String] Mode of data transfer.
802
+ end
803
+ end
804
+ end
805
+ end