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,964 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dataleon
4
+ module Models
5
+ # @see Dataleon::Resources::Companies#create
6
+ class CompanyRegistration < Dataleon::Internal::Type::BaseModel
7
+ # @!attribute aml_suspicions
8
+ # List of AML (Anti-Money Laundering) suspicion entries linked to the company,
9
+ # including their details.
10
+ #
11
+ # @return [Array<Dataleon::Models::CompanyRegistration::AmlSuspicion>, nil]
12
+ optional :aml_suspicions,
13
+ -> { Dataleon::Internal::Type::ArrayOf[Dataleon::CompanyRegistration::AmlSuspicion] }
14
+
15
+ # @!attribute certificat
16
+ # Digital certificate associated with the company, if any, including its creation
17
+ # timestamp and filename.
18
+ #
19
+ # @return [Dataleon::Models::CompanyRegistration::Certificat, nil]
20
+ optional :certificat, -> { Dataleon::CompanyRegistration::Certificat }
21
+
22
+ # @!attribute checks
23
+ # List of verification or validation checks applied to the company, including
24
+ # their results and messages.
25
+ #
26
+ # @return [Array<Dataleon::Models::Check>, nil]
27
+ optional :checks, -> { Dataleon::Internal::Type::ArrayOf[Dataleon::Check] }
28
+
29
+ # @!attribute company
30
+ # Main information about the company being registered, including legal name,
31
+ # registration ID, and address.
32
+ #
33
+ # @return [Dataleon::Models::CompanyRegistration::Company, nil]
34
+ optional :company, -> { Dataleon::CompanyRegistration::Company }
35
+
36
+ # @!attribute documents
37
+ # All documents submitted or associated with the company, including their metadata
38
+ # and processing status.
39
+ #
40
+ # @return [Array<Dataleon::Models::Individuals::GenericDocument>, nil]
41
+ optional :documents, -> { Dataleon::Internal::Type::ArrayOf[Dataleon::Individuals::GenericDocument] }
42
+
43
+ # @!attribute members
44
+ # List of members or actors associated with the company, including personal and
45
+ # ownership information.
46
+ #
47
+ # @return [Array<Dataleon::Models::CompanyRegistration::Member>, nil]
48
+ optional :members, -> { Dataleon::Internal::Type::ArrayOf[Dataleon::CompanyRegistration::Member] }
49
+
50
+ # @!attribute portal_url
51
+ # Admin or internal portal URL for viewing the company's details, typically used
52
+ # by internal users.
53
+ #
54
+ # @return [String, nil]
55
+ optional :portal_url, String
56
+
57
+ # @!attribute properties
58
+ # Custom key-value metadata fields associated with the company, allowing for
59
+ # flexible data storage.
60
+ #
61
+ # @return [Array<Dataleon::Models::CompanyRegistration::Property>, nil]
62
+ optional :properties, -> { Dataleon::Internal::Type::ArrayOf[Dataleon::CompanyRegistration::Property] }
63
+
64
+ # @!attribute risk
65
+ # Risk assessment associated with the company, including a risk code, reason, and
66
+ # confidence score.
67
+ #
68
+ # @return [Dataleon::Models::CompanyRegistration::Risk, nil]
69
+ optional :risk, -> { Dataleon::CompanyRegistration::Risk }
70
+
71
+ # @!attribute source_id
72
+ # Optional identifier indicating the source of the company record, useful for
73
+ # tracking or integration purposes.
74
+ #
75
+ # @return [String, nil]
76
+ optional :source_id, String
77
+
78
+ # @!attribute technical_data
79
+ # Technical metadata related to the request, such as IP address, QR code settings,
80
+ # and callback URLs.
81
+ #
82
+ # @return [Dataleon::Models::CompanyRegistration::TechnicalData, nil]
83
+ optional :technical_data, -> { Dataleon::CompanyRegistration::TechnicalData }
84
+
85
+ # @!attribute webview_url
86
+ # Public-facing webview URL for the company’s identification process, allowing
87
+ # external access to the company data.
88
+ #
89
+ # @return [String, nil]
90
+ optional :webview_url, String
91
+
92
+ # @!method initialize(aml_suspicions: nil, certificat: nil, checks: nil, company: nil, documents: nil, members: nil, portal_url: nil, properties: nil, risk: nil, source_id: nil, technical_data: nil, webview_url: nil)
93
+ # Some parameter documentations has been truncated, see
94
+ # {Dataleon::Models::CompanyRegistration} for more details.
95
+ #
96
+ # @param aml_suspicions [Array<Dataleon::Models::CompanyRegistration::AmlSuspicion>] List of AML (Anti-Money Laundering) suspicion entries linked to the company, inc
97
+ #
98
+ # @param certificat [Dataleon::Models::CompanyRegistration::Certificat] Digital certificate associated with the company, if any, including its creation
99
+ #
100
+ # @param checks [Array<Dataleon::Models::Check>] List of verification or validation checks applied to the company, including thei
101
+ #
102
+ # @param company [Dataleon::Models::CompanyRegistration::Company] Main information about the company being registered, including legal name, regis
103
+ #
104
+ # @param documents [Array<Dataleon::Models::Individuals::GenericDocument>] All documents submitted or associated with the company, including their metadata
105
+ #
106
+ # @param members [Array<Dataleon::Models::CompanyRegistration::Member>] List of members or actors associated with the company, including personal and ow
107
+ #
108
+ # @param portal_url [String] Admin or internal portal URL for viewing the company's details, typically used b
109
+ #
110
+ # @param properties [Array<Dataleon::Models::CompanyRegistration::Property>] Custom key-value metadata fields associated with the company, allowing for flexi
111
+ #
112
+ # @param risk [Dataleon::Models::CompanyRegistration::Risk] Risk assessment associated with the company, including a risk code, reason, and
113
+ #
114
+ # @param source_id [String] Optional identifier indicating the source of the company record, useful for trac
115
+ #
116
+ # @param technical_data [Dataleon::Models::CompanyRegistration::TechnicalData] Technical metadata related to the request, such as IP address, QR code settings,
117
+ #
118
+ # @param webview_url [String] Public-facing webview URL for the company’s identification process, allowing ext
119
+
120
+ class AmlSuspicion < Dataleon::Internal::Type::BaseModel
121
+ # @!attribute caption
122
+ # Human-readable description or title for the suspicious finding.
123
+ #
124
+ # @return [String, nil]
125
+ optional :caption, String
126
+
127
+ # @!attribute country
128
+ # Country associated with the suspicion (ISO 3166-1 alpha-2 code).
129
+ #
130
+ # @return [String, nil]
131
+ optional :country, String
132
+
133
+ # @!attribute gender
134
+ # Gender associated with the suspicion, if applicable.
135
+ #
136
+ # @return [String, nil]
137
+ optional :gender, String
138
+
139
+ # @!attribute relation
140
+ # Nature of the relationship between the entity and the suspicious activity (e.g.,
141
+ # "linked", "associated").
142
+ #
143
+ # @return [String, nil]
144
+ optional :relation, String
145
+
146
+ # @!attribute schema
147
+ # Version of the evaluation schema or rule engine used.
148
+ #
149
+ # @return [String, nil]
150
+ optional :schema, String
151
+
152
+ # @!attribute score
153
+ # Risk score between 0.0 and 1 indicating the severity of the suspicion.
154
+ #
155
+ # @return [Float, nil]
156
+ optional :score, Float
157
+
158
+ # @!attribute source
159
+ # Source system or service providing this suspicion.
160
+ #
161
+ # @return [String, nil]
162
+ optional :source, String
163
+
164
+ # @!attribute status
165
+ # Status of the suspicion review process. Possible values: "true_positive",
166
+ # "false_positive", "pending".
167
+ #
168
+ # @return [Symbol, Dataleon::Models::CompanyRegistration::AmlSuspicion::Status, nil]
169
+ optional :status, enum: -> { Dataleon::CompanyRegistration::AmlSuspicion::Status }
170
+
171
+ # @!attribute type
172
+ # Category of the suspicion. Possible values: "crime", "sanction", "pep",
173
+ # "adverse_news", "other".
174
+ #
175
+ # @return [Symbol, Dataleon::Models::CompanyRegistration::AmlSuspicion::Type, nil]
176
+ optional :type, enum: -> { Dataleon::CompanyRegistration::AmlSuspicion::Type }
177
+
178
+ # @!method initialize(caption: nil, country: nil, gender: nil, relation: nil, schema: nil, score: nil, source: nil, status: nil, type: nil)
179
+ # Some parameter documentations has been truncated, see
180
+ # {Dataleon::Models::CompanyRegistration::AmlSuspicion} for more details.
181
+ #
182
+ # Represents a record of suspicion raised during Anti-Money Laundering (AML)
183
+ # screening. Includes metadata such as risk score, origin, and linked watchlist
184
+ # types.
185
+ #
186
+ # @param caption [String] Human-readable description or title for the suspicious finding.
187
+ #
188
+ # @param country [String] Country associated with the suspicion (ISO 3166-1 alpha-2 code).
189
+ #
190
+ # @param gender [String] Gender associated with the suspicion, if applicable.
191
+ #
192
+ # @param relation [String] Nature of the relationship between the entity and the suspicious activity (e.g.,
193
+ #
194
+ # @param schema [String] Version of the evaluation schema or rule engine used.
195
+ #
196
+ # @param score [Float] Risk score between 0.0 and 1 indicating the severity of the suspicion.
197
+ #
198
+ # @param source [String] Source system or service providing this suspicion.
199
+ #
200
+ # @param status [Symbol, Dataleon::Models::CompanyRegistration::AmlSuspicion::Status] Status of the suspicion review process. Possible values: "true_positive", "false
201
+ #
202
+ # @param type [Symbol, Dataleon::Models::CompanyRegistration::AmlSuspicion::Type] Category of the suspicion. Possible values: "crime", "sanction", "pep", "adverse
203
+
204
+ # Status of the suspicion review process. Possible values: "true_positive",
205
+ # "false_positive", "pending".
206
+ #
207
+ # @see Dataleon::Models::CompanyRegistration::AmlSuspicion#status
208
+ module Status
209
+ extend Dataleon::Internal::Type::Enum
210
+
211
+ TRUE_POSITIVE = :true_positive
212
+ FALSE_POSITIVE = :false_positive
213
+ PENDING = :pending
214
+
215
+ # @!method self.values
216
+ # @return [Array<Symbol>]
217
+ end
218
+
219
+ # Category of the suspicion. Possible values: "crime", "sanction", "pep",
220
+ # "adverse_news", "other".
221
+ #
222
+ # @see Dataleon::Models::CompanyRegistration::AmlSuspicion#type
223
+ module Type
224
+ extend Dataleon::Internal::Type::Enum
225
+
226
+ CRIME = :crime
227
+ SANCTION = :sanction
228
+ PEP = :pep
229
+ ADVERSE_NEWS = :adverse_news
230
+ OTHER = :other
231
+
232
+ # @!method self.values
233
+ # @return [Array<Symbol>]
234
+ end
235
+ end
236
+
237
+ # @see Dataleon::Models::CompanyRegistration#certificat
238
+ class Certificat < Dataleon::Internal::Type::BaseModel
239
+ # @!attribute id
240
+ # Unique identifier for the certificate.
241
+ #
242
+ # @return [String, nil]
243
+ optional :id, String
244
+
245
+ # @!attribute created_at
246
+ # Timestamp when the certificate was created.
247
+ #
248
+ # @return [Time, nil]
249
+ optional :created_at, Time
250
+
251
+ # @!attribute filename
252
+ # Name of the certificate file.
253
+ #
254
+ # @return [String, nil]
255
+ optional :filename, String
256
+
257
+ # @!method initialize(id: nil, created_at: nil, filename: nil)
258
+ # Digital certificate associated with the company, if any, including its creation
259
+ # timestamp and filename.
260
+ #
261
+ # @param id [String] Unique identifier for the certificate.
262
+ #
263
+ # @param created_at [Time] Timestamp when the certificate was created.
264
+ #
265
+ # @param filename [String] Name of the certificate file.
266
+ end
267
+
268
+ # @see Dataleon::Models::CompanyRegistration#company
269
+ class Company < Dataleon::Internal::Type::BaseModel
270
+ # @!attribute address
271
+ # Full registered address of the company.
272
+ #
273
+ # @return [String, nil]
274
+ optional :address, String
275
+
276
+ # @!attribute closure_date
277
+ # Closure date of the company, if applicable.
278
+ #
279
+ # @return [Date, nil]
280
+ optional :closure_date, Date
281
+
282
+ # @!attribute commercial_name
283
+ # Trade or commercial name of the company.
284
+ #
285
+ # @return [String, nil]
286
+ optional :commercial_name, String
287
+
288
+ # @!attribute contact
289
+ # Contact information for the company, including email, phone number, and address.
290
+ #
291
+ # @return [Dataleon::Models::CompanyRegistration::Company::Contact, nil]
292
+ optional :contact, -> { Dataleon::CompanyRegistration::Company::Contact }
293
+
294
+ # @!attribute country
295
+ # Country code where the company is registered.
296
+ #
297
+ # @return [String, nil]
298
+ optional :country, String
299
+
300
+ # @!attribute email
301
+ # Contact email address for the company.
302
+ #
303
+ # @return [String, nil]
304
+ optional :email, String
305
+
306
+ # @!attribute employees
307
+ # Number of employees in the company.
308
+ #
309
+ # @return [Integer, nil]
310
+ optional :employees, Integer
311
+
312
+ # @!attribute employer_identification_number
313
+ # Employer Identification Number (EIN) or equivalent.
314
+ #
315
+ # @return [String, nil]
316
+ optional :employer_identification_number, String
317
+
318
+ # @!attribute insolvency_exists
319
+ # Indicates whether an insolvency procedure exists for the company.
320
+ #
321
+ # @return [Boolean, nil]
322
+ optional :insolvency_exists, Dataleon::Internal::Type::Boolean
323
+
324
+ # @!attribute insolvency_ongoing
325
+ # Indicates whether an insolvency procedure is ongoing for the company.
326
+ #
327
+ # @return [Boolean, nil]
328
+ optional :insolvency_ongoing, Dataleon::Internal::Type::Boolean
329
+
330
+ # @!attribute legal_form
331
+ # Legal form or structure of the company (e.g., LLC, SARL).
332
+ #
333
+ # @return [String, nil]
334
+ optional :legal_form, String
335
+
336
+ # @!attribute name
337
+ # Legal registered name of the company.
338
+ #
339
+ # @return [String, nil]
340
+ optional :name, String
341
+
342
+ # @!attribute phone_number
343
+ # Contact phone number for the company, including country code.
344
+ #
345
+ # @return [String, nil]
346
+ optional :phone_number, String
347
+
348
+ # @!attribute registration_date
349
+ # Date when the company was officially registered.
350
+ #
351
+ # @return [Date, nil]
352
+ optional :registration_date, Date
353
+
354
+ # @!attribute registration_id
355
+ # Official company registration number or ID.
356
+ #
357
+ # @return [String, nil]
358
+ optional :registration_id, String
359
+
360
+ # @!attribute share_capital
361
+ # Total share capital of the company, including currency.
362
+ #
363
+ # @return [String, nil]
364
+ optional :share_capital, String
365
+
366
+ # @!attribute status
367
+ # Current status of the company (e.g., active, inactive).
368
+ #
369
+ # @return [String, nil]
370
+ optional :status, String
371
+
372
+ # @!attribute tax_identification_number
373
+ # Tax identification number for the company.
374
+ #
375
+ # @return [String, nil]
376
+ optional :tax_identification_number, String
377
+
378
+ # @!attribute type
379
+ # Type of company within the workspace, e.g., main or affiliated.
380
+ #
381
+ # @return [String, nil]
382
+ optional :type, String
383
+
384
+ # @!attribute website_url
385
+ # Official website URL of the company.
386
+ #
387
+ # @return [String, nil]
388
+ optional :website_url, String
389
+
390
+ # @!method initialize(address: nil, closure_date: nil, commercial_name: nil, contact: nil, country: nil, email: nil, employees: nil, employer_identification_number: nil, insolvency_exists: nil, insolvency_ongoing: nil, legal_form: nil, name: nil, phone_number: nil, registration_date: nil, registration_id: nil, share_capital: nil, status: nil, tax_identification_number: nil, type: nil, website_url: nil)
391
+ # Some parameter documentations has been truncated, see
392
+ # {Dataleon::Models::CompanyRegistration::Company} for more details.
393
+ #
394
+ # Main information about the company being registered, including legal name,
395
+ # registration ID, and address.
396
+ #
397
+ # @param address [String] Full registered address of the company.
398
+ #
399
+ # @param closure_date [Date] Closure date of the company, if applicable.
400
+ #
401
+ # @param commercial_name [String] Trade or commercial name of the company.
402
+ #
403
+ # @param contact [Dataleon::Models::CompanyRegistration::Company::Contact] Contact information for the company, including email, phone number, and address.
404
+ #
405
+ # @param country [String] Country code where the company is registered.
406
+ #
407
+ # @param email [String] Contact email address for the company.
408
+ #
409
+ # @param employees [Integer] Number of employees in the company.
410
+ #
411
+ # @param employer_identification_number [String] Employer Identification Number (EIN) or equivalent.
412
+ #
413
+ # @param insolvency_exists [Boolean] Indicates whether an insolvency procedure exists for the company.
414
+ #
415
+ # @param insolvency_ongoing [Boolean] Indicates whether an insolvency procedure is ongoing for the company.
416
+ #
417
+ # @param legal_form [String] Legal form or structure of the company (e.g., LLC, SARL).
418
+ #
419
+ # @param name [String] Legal registered name of the company.
420
+ #
421
+ # @param phone_number [String] Contact phone number for the company, including country code.
422
+ #
423
+ # @param registration_date [Date] Date when the company was officially registered.
424
+ #
425
+ # @param registration_id [String] Official company registration number or ID.
426
+ #
427
+ # @param share_capital [String] Total share capital of the company, including currency.
428
+ #
429
+ # @param status [String] Current status of the company (e.g., active, inactive).
430
+ #
431
+ # @param tax_identification_number [String] Tax identification number for the company.
432
+ #
433
+ # @param type [String] Type of company within the workspace, e.g., main or affiliated.
434
+ #
435
+ # @param website_url [String] Official website URL of the company.
436
+
437
+ # @see Dataleon::Models::CompanyRegistration::Company#contact
438
+ class Contact < Dataleon::Internal::Type::BaseModel
439
+ # @!attribute department
440
+ # Department of the contact person.
441
+ #
442
+ # @return [String, nil]
443
+ optional :department, String
444
+
445
+ # @!attribute email
446
+ # Email address of the contact person.
447
+ #
448
+ # @return [String, nil]
449
+ optional :email, String
450
+
451
+ # @!attribute first_name
452
+ # First name of the contact person.
453
+ #
454
+ # @return [String, nil]
455
+ optional :first_name, String
456
+
457
+ # @!attribute last_name
458
+ # Last name of the contact person.
459
+ #
460
+ # @return [String, nil]
461
+ optional :last_name, String
462
+
463
+ # @!attribute phone_number
464
+ # Phone number of the contact person.
465
+ #
466
+ # @return [String, nil]
467
+ optional :phone_number, String
468
+
469
+ # @!method initialize(department: nil, email: nil, first_name: nil, last_name: nil, phone_number: nil)
470
+ # Contact information for the company, including email, phone number, and address.
471
+ #
472
+ # @param department [String] Department of the contact person.
473
+ #
474
+ # @param email [String] Email address of the contact person.
475
+ #
476
+ # @param first_name [String] First name of the contact person.
477
+ #
478
+ # @param last_name [String] Last name of the contact person.
479
+ #
480
+ # @param phone_number [String] Phone number of the contact person.
481
+ end
482
+ end
483
+
484
+ class Member < Dataleon::Internal::Type::BaseModel
485
+ # @!attribute id
486
+ #
487
+ # @return [String, nil]
488
+ optional :id, String
489
+
490
+ # @!attribute address
491
+ # Address of the member, which may include street, city, postal code, and country.
492
+ #
493
+ # @return [String, nil]
494
+ optional :address, String
495
+
496
+ # @!attribute birthday
497
+ # Birthday (available only if type = person)
498
+ #
499
+ # @return [Time, nil]
500
+ optional :birthday, Time
501
+
502
+ # @!attribute birthplace
503
+ # Birthplace (available only if type = person)
504
+ #
505
+ # @return [String, nil]
506
+ optional :birthplace, String
507
+
508
+ # @!attribute country
509
+ # ISO 3166-1 alpha-2 country code of the member's address (e.g., "FR" for France).
510
+ #
511
+ # @return [String, nil]
512
+ optional :country, String
513
+
514
+ # @!attribute documents
515
+ # List of documents associated with the member, including their metadata and
516
+ # processing status.
517
+ #
518
+ # @return [Array<Dataleon::Models::Individuals::GenericDocument>, nil]
519
+ optional :documents, -> { Dataleon::Internal::Type::ArrayOf[Dataleon::Individuals::GenericDocument] }
520
+
521
+ # @!attribute email
522
+ # Email address of the member, which may be used for communication or verification
523
+ # purposes.
524
+ #
525
+ # @return [String, nil]
526
+ optional :email, String
527
+
528
+ # @!attribute first_name
529
+ # First name (available only if type = person)
530
+ #
531
+ # @return [String, nil]
532
+ optional :first_name, String
533
+
534
+ # @!attribute is_beneficial_owner
535
+ # Indicates whether the member is a beneficial owner of the company, meaning they
536
+ # have significant control or ownership.
537
+ #
538
+ # @return [Boolean, nil]
539
+ optional :is_beneficial_owner, Dataleon::Internal::Type::Boolean
540
+
541
+ # @!attribute is_delegator
542
+ # Indicates whether the member is a delegator, meaning they have authority to act
543
+ # on behalf of the company.
544
+ #
545
+ # @return [Boolean, nil]
546
+ optional :is_delegator, Dataleon::Internal::Type::Boolean
547
+
548
+ # @!attribute last_name
549
+ # Last name (available only if type = person)
550
+ #
551
+ # @return [String, nil]
552
+ optional :last_name, String
553
+
554
+ # @!attribute liveness_verification
555
+ # Indicates whether liveness verification was performed for the member, typically
556
+ # in the context of identity checks.
557
+ #
558
+ # @return [Boolean, nil]
559
+ optional :liveness_verification, Dataleon::Internal::Type::Boolean
560
+
561
+ # @!attribute name
562
+ # Company name (available only if type = company)
563
+ #
564
+ # @return [String, nil]
565
+ optional :name, String
566
+
567
+ # @!attribute ownership_percentage
568
+ # Percentage of ownership the member has in the company, expressed as an integer
569
+ # between 0 and 100.
570
+ #
571
+ # @return [Integer, nil]
572
+ optional :ownership_percentage, Integer
573
+
574
+ # @!attribute phone_number
575
+ # Contact phone number of the member, including country code and area code.
576
+ #
577
+ # @return [String, nil]
578
+ optional :phone_number, String
579
+
580
+ # @!attribute postal_code
581
+ # Postal code of the member's address, typically a numeric or alphanumeric code.
582
+ #
583
+ # @return [String, nil]
584
+ optional :postal_code, String
585
+
586
+ # @!attribute registration_id
587
+ # Official registration identifier of the member, such as a national ID or company
588
+ # registration number.
589
+ #
590
+ # @return [String, nil]
591
+ optional :registration_id, String
592
+
593
+ # @!attribute relation
594
+ # Type of relationship the member has with the company, such as "shareholder",
595
+ # "director", or "beneficial_owner".
596
+ #
597
+ # @return [String, nil]
598
+ optional :relation, String
599
+
600
+ # @!attribute roles
601
+ # Role of the member within the company, such as "legal_representative",
602
+ # "director", or "manager".
603
+ #
604
+ # @return [String, nil]
605
+ optional :roles, String
606
+
607
+ # @!attribute source
608
+ # Source of the data (e.g., government, user, company)
609
+ #
610
+ # @return [Symbol, Dataleon::Models::CompanyRegistration::Member::Source, nil]
611
+ optional :source, enum: -> { Dataleon::CompanyRegistration::Member::Source }
612
+
613
+ # @!attribute state
614
+ # Current state of the member in the workflow, such as "WAITING", "STARTED",
615
+ # "RUNNING", or "PROCESSED".
616
+ #
617
+ # @return [String, nil]
618
+ optional :state, String
619
+
620
+ # @!attribute status
621
+ # Status of the member in the system, indicating whether they are approved,
622
+ # pending, or rejected. Possible values include "approved", "need_review",
623
+ # "rejected".
624
+ #
625
+ # @return [String, nil]
626
+ optional :status, String
627
+
628
+ # @!attribute type
629
+ # Member type (person or company)
630
+ #
631
+ # @return [Symbol, Dataleon::Models::CompanyRegistration::Member::Type, nil]
632
+ optional :type, enum: -> { Dataleon::CompanyRegistration::Member::Type }
633
+
634
+ # @!attribute workspace_id
635
+ # Identifier of the workspace to which the member belongs, used for organizational
636
+ # purposes.
637
+ #
638
+ # @return [String, nil]
639
+ optional :workspace_id, String
640
+
641
+ # @!method initialize(id: nil, address: nil, birthday: nil, birthplace: nil, country: nil, documents: nil, email: nil, first_name: nil, is_beneficial_owner: nil, is_delegator: nil, last_name: nil, liveness_verification: nil, name: nil, ownership_percentage: nil, phone_number: nil, postal_code: nil, registration_id: nil, relation: nil, roles: nil, source: nil, state: nil, status: nil, type: nil, workspace_id: nil)
642
+ # Some parameter documentations has been truncated, see
643
+ # {Dataleon::Models::CompanyRegistration::Member} for more details.
644
+ #
645
+ # Represents a member or actor of a company, including personal and ownership
646
+ # information.
647
+ #
648
+ # @param id [String]
649
+ #
650
+ # @param address [String] Address of the member, which may include street, city, postal code, and country.
651
+ #
652
+ # @param birthday [Time] Birthday (available only if type = person)
653
+ #
654
+ # @param birthplace [String] Birthplace (available only if type = person)
655
+ #
656
+ # @param country [String] ISO 3166-1 alpha-2 country code of the member's address (e.g., "FR" for France).
657
+ #
658
+ # @param documents [Array<Dataleon::Models::Individuals::GenericDocument>] List of documents associated with the member, including their metadata and proce
659
+ #
660
+ # @param email [String] Email address of the member, which may be used for communication or verification
661
+ #
662
+ # @param first_name [String] First name (available only if type = person)
663
+ #
664
+ # @param is_beneficial_owner [Boolean] Indicates whether the member is a beneficial owner of the company, meaning they
665
+ #
666
+ # @param is_delegator [Boolean] Indicates whether the member is a delegator, meaning they have authority to act
667
+ #
668
+ # @param last_name [String] Last name (available only if type = person)
669
+ #
670
+ # @param liveness_verification [Boolean] Indicates whether liveness verification was performed for the member, typically
671
+ #
672
+ # @param name [String] Company name (available only if type = company)
673
+ #
674
+ # @param ownership_percentage [Integer] Percentage of ownership the member has in the company, expressed as an integer b
675
+ #
676
+ # @param phone_number [String] Contact phone number of the member, including country code and area code.
677
+ #
678
+ # @param postal_code [String] Postal code of the member's address, typically a numeric or alphanumeric code.
679
+ #
680
+ # @param registration_id [String] Official registration identifier of the member, such as a national ID or company
681
+ #
682
+ # @param relation [String] Type of relationship the member has with the company, such as "shareholder", "di
683
+ #
684
+ # @param roles [String] Role of the member within the company, such as "legal_representative", "director
685
+ #
686
+ # @param source [Symbol, Dataleon::Models::CompanyRegistration::Member::Source] Source of the data (e.g., government, user, company)
687
+ #
688
+ # @param state [String] Current state of the member in the workflow, such as "WAITING", "STARTED", "RUNN
689
+ #
690
+ # @param status [String] Status of the member in the system, indicating whether they are approved, pendin
691
+ #
692
+ # @param type [Symbol, Dataleon::Models::CompanyRegistration::Member::Type] Member type (person or company)
693
+ #
694
+ # @param workspace_id [String] Identifier of the workspace to which the member belongs, used for organizational
695
+
696
+ # Source of the data (e.g., government, user, company)
697
+ #
698
+ # @see Dataleon::Models::CompanyRegistration::Member#source
699
+ module Source
700
+ extend Dataleon::Internal::Type::Enum
701
+
702
+ GOUVE = :gouve
703
+ USER = :user
704
+ COMPANY = :company
705
+
706
+ # @!method self.values
707
+ # @return [Array<Symbol>]
708
+ end
709
+
710
+ # Member type (person or company)
711
+ #
712
+ # @see Dataleon::Models::CompanyRegistration::Member#type
713
+ module Type
714
+ extend Dataleon::Internal::Type::Enum
715
+
716
+ PERSON = :person
717
+ COMPANY = :company
718
+
719
+ # @!method self.values
720
+ # @return [Array<Symbol>]
721
+ end
722
+ end
723
+
724
+ class Property < Dataleon::Internal::Type::BaseModel
725
+ # @!attribute name
726
+ # Name/key of the property.
727
+ #
728
+ # @return [String, nil]
729
+ optional :name, String
730
+
731
+ # @!attribute type
732
+ # Data type of the property value.
733
+ #
734
+ # @return [String, nil]
735
+ optional :type, String
736
+
737
+ # @!attribute value
738
+ # Value associated with the property name.
739
+ #
740
+ # @return [String, nil]
741
+ optional :value, String
742
+
743
+ # @!method initialize(name: nil, type: nil, value: nil)
744
+ # Represents a generic property key-value pair with a specified type.
745
+ #
746
+ # @param name [String] Name/key of the property.
747
+ #
748
+ # @param type [String] Data type of the property value.
749
+ #
750
+ # @param value [String] Value associated with the property name.
751
+ end
752
+
753
+ # @see Dataleon::Models::CompanyRegistration#risk
754
+ class Risk < Dataleon::Internal::Type::BaseModel
755
+ # @!attribute code
756
+ # Risk category or code identifier.
757
+ #
758
+ # @return [String, nil]
759
+ optional :code, String
760
+
761
+ # @!attribute reason
762
+ # Explanation or justification for the assigned risk.
763
+ #
764
+ # @return [String, nil]
765
+ optional :reason, String
766
+
767
+ # @!attribute score
768
+ # Numeric risk score between 0.0 and 1.0 indicating severity or confidence.
769
+ #
770
+ # @return [Float, nil]
771
+ optional :score, Float
772
+
773
+ # @!method initialize(code: nil, reason: nil, score: nil)
774
+ # Risk assessment associated with the company, including a risk code, reason, and
775
+ # confidence score.
776
+ #
777
+ # @param code [String] Risk category or code identifier.
778
+ #
779
+ # @param reason [String] Explanation or justification for the assigned risk.
780
+ #
781
+ # @param score [Float] Numeric risk score between 0.0 and 1.0 indicating severity or confidence.
782
+ end
783
+
784
+ # @see Dataleon::Models::CompanyRegistration#technical_data
785
+ class TechnicalData < Dataleon::Internal::Type::BaseModel
786
+ # @!attribute active_aml_suspicions
787
+ # Flag indicating whether there are active research AML (Anti-Money Laundering)
788
+ # suspicions for the object when you apply for a new entry or get an existing one.
789
+ #
790
+ # @return [Boolean, nil]
791
+ optional :active_aml_suspicions, Dataleon::Internal::Type::Boolean
792
+
793
+ # @!attribute api_version
794
+ # Version number of the API used.
795
+ #
796
+ # @return [Integer, nil]
797
+ optional :api_version, Integer
798
+
799
+ # @!attribute approved_at
800
+ # Timestamp when the request or process was approved.
801
+ #
802
+ # @return [Time, nil]
803
+ optional :approved_at, Time
804
+
805
+ # @!attribute callback_url
806
+ # URL to receive callback data from the AML system.
807
+ #
808
+ # @return [String, nil]
809
+ optional :callback_url, String
810
+
811
+ # @!attribute callback_url_notification
812
+ # URL to receive notification updates about the processing status.
813
+ #
814
+ # @return [String, nil]
815
+ optional :callback_url_notification, String
816
+
817
+ # @!attribute disable_notification
818
+ # Flag to indicate if notifications are disabled.
819
+ #
820
+ # @return [Boolean, nil]
821
+ optional :disable_notification, Dataleon::Internal::Type::Boolean
822
+
823
+ # @!attribute disable_notification_date
824
+ # Timestamp when notifications were disabled; null if never disabled.
825
+ #
826
+ # @return [Time, nil]
827
+ optional :disable_notification_date, Time, nil?: true
828
+
829
+ # @!attribute export_type
830
+ # Export format defined by the API (e.g., "json", "xml").
831
+ #
832
+ # @return [String, nil]
833
+ optional :export_type, String
834
+
835
+ # @!attribute finished_at
836
+ # Timestamp when the process finished.
837
+ #
838
+ # @return [Time, nil]
839
+ optional :finished_at, Time
840
+
841
+ # @!attribute ip
842
+ # IP address of the our system handling the request.
843
+ #
844
+ # @return [String, nil]
845
+ optional :ip, String
846
+
847
+ # @!attribute language
848
+ # Language preference used in the client workspace (e.g., "fra").
849
+ #
850
+ # @return [String, nil]
851
+ optional :language, String
852
+
853
+ # @!attribute location_ip
854
+ # IP address of the end client (final user) captured.
855
+ #
856
+ # @return [String, nil]
857
+ optional :location_ip, String
858
+
859
+ # @!attribute need_review_at
860
+ # Timestamp indicating when the request or process needs review; null if none.
861
+ #
862
+ # @return [Time, nil]
863
+ optional :need_review_at, Time, nil?: true
864
+
865
+ # @!attribute notification_confirmation
866
+ # Flag indicating if notification confirmation is required or received.
867
+ #
868
+ # @return [Boolean, nil]
869
+ optional :notification_confirmation, Dataleon::Internal::Type::Boolean
870
+
871
+ # @!attribute qr_code
872
+ # Indicates whether QR code is enabled ("true" or "false").
873
+ #
874
+ # @return [String, nil]
875
+ optional :qr_code, String
876
+
877
+ # @!attribute raw_data
878
+ # Flag indicating whether to include raw data in the response.
879
+ #
880
+ # @return [Boolean, nil]
881
+ optional :raw_data, Dataleon::Internal::Type::Boolean
882
+
883
+ # @!attribute rejected_at
884
+ # Timestamp when the request or process was rejected; null if not rejected.
885
+ #
886
+ # @return [Time, nil]
887
+ optional :rejected_at, Time, nil?: true
888
+
889
+ # @!attribute session_duration
890
+ # Duration of the user session in seconds.
891
+ #
892
+ # @return [Integer, nil]
893
+ optional :session_duration, Integer
894
+
895
+ # @!attribute started_at
896
+ # Timestamp when the process started.
897
+ #
898
+ # @return [Time, nil]
899
+ optional :started_at, Time
900
+
901
+ # @!attribute transfer_at
902
+ # Date/time of data transfer.
903
+ #
904
+ # @return [Time, nil]
905
+ optional :transfer_at, Time
906
+
907
+ # @!attribute transfer_mode
908
+ # Mode of data transfer.
909
+ #
910
+ # @return [String, nil]
911
+ optional :transfer_mode, String
912
+
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)
914
+ # Some parameter documentations has been truncated, see
915
+ # {Dataleon::Models::CompanyRegistration::TechnicalData} for more details.
916
+ #
917
+ # Technical metadata related to the request, such as IP address, QR code settings,
918
+ # and callback URLs.
919
+ #
920
+ # @param active_aml_suspicions [Boolean] Flag indicating whether there are active research AML (Anti-Money Laundering) su
921
+ #
922
+ # @param api_version [Integer] Version number of the API used.
923
+ #
924
+ # @param approved_at [Time] Timestamp when the request or process was approved.
925
+ #
926
+ # @param callback_url [String] URL to receive callback data from the AML system.
927
+ #
928
+ # @param callback_url_notification [String] URL to receive notification updates about the processing status.
929
+ #
930
+ # @param disable_notification [Boolean] Flag to indicate if notifications are disabled.
931
+ #
932
+ # @param disable_notification_date [Time, nil] Timestamp when notifications were disabled; null if never disabled.
933
+ #
934
+ # @param export_type [String] Export format defined by the API (e.g., "json", "xml").
935
+ #
936
+ # @param finished_at [Time] Timestamp when the process finished.
937
+ #
938
+ # @param ip [String] IP address of the our system handling the request.
939
+ #
940
+ # @param language [String] Language preference used in the client workspace (e.g., "fra").
941
+ #
942
+ # @param location_ip [String] IP address of the end client (final user) captured.
943
+ #
944
+ # @param need_review_at [Time, nil] Timestamp indicating when the request or process needs review; null if none.
945
+ #
946
+ # @param notification_confirmation [Boolean] Flag indicating if notification confirmation is required or received.
947
+ #
948
+ # @param qr_code [String] Indicates whether QR code is enabled ("true" or "false").
949
+ #
950
+ # @param raw_data [Boolean] Flag indicating whether to include raw data in the response.
951
+ #
952
+ # @param rejected_at [Time, nil] Timestamp when the request or process was rejected; null if not rejected.
953
+ #
954
+ # @param session_duration [Integer] Duration of the user session in seconds.
955
+ #
956
+ # @param started_at [Time] Timestamp when the process started.
957
+ #
958
+ # @param transfer_at [Time] Date/time of data transfer.
959
+ #
960
+ # @param transfer_mode [String] Mode of data transfer.
961
+ end
962
+ end
963
+ end
964
+ end