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.
- checksums.yaml +7 -0
- data/.ignore +2 -0
- data/CHANGELOG.md +50 -0
- data/README.md +257 -0
- data/SECURITY.md +27 -0
- data/lib/dataleon/client.rb +80 -0
- data/lib/dataleon/errors.rb +214 -0
- data/lib/dataleon/file_part.rb +55 -0
- data/lib/dataleon/internal/transport/base_client.rb +563 -0
- data/lib/dataleon/internal/transport/pooled_net_requester.rb +201 -0
- data/lib/dataleon/internal/type/array_of.rb +168 -0
- data/lib/dataleon/internal/type/base_model.rb +531 -0
- data/lib/dataleon/internal/type/base_page.rb +55 -0
- data/lib/dataleon/internal/type/boolean.rb +77 -0
- data/lib/dataleon/internal/type/converter.rb +327 -0
- data/lib/dataleon/internal/type/enum.rb +131 -0
- data/lib/dataleon/internal/type/file_input.rb +108 -0
- data/lib/dataleon/internal/type/hash_of.rb +188 -0
- data/lib/dataleon/internal/type/request_parameters.rb +42 -0
- data/lib/dataleon/internal/type/union.rb +237 -0
- data/lib/dataleon/internal/type/unknown.rb +81 -0
- data/lib/dataleon/internal/util.rb +914 -0
- data/lib/dataleon/internal.rb +20 -0
- data/lib/dataleon/models/check.rb +50 -0
- data/lib/dataleon/models/companies/document_list_params.rb +16 -0
- data/lib/dataleon/models/companies/document_upload_params.rb +82 -0
- data/lib/dataleon/models/company_create_params.rb +228 -0
- data/lib/dataleon/models/company_delete_params.rb +14 -0
- data/lib/dataleon/models/company_list_params.rb +108 -0
- data/lib/dataleon/models/company_list_response.rb +8 -0
- data/lib/dataleon/models/company_registration.rb +964 -0
- data/lib/dataleon/models/company_retrieve_params.rb +30 -0
- data/lib/dataleon/models/company_update_params.rb +228 -0
- data/lib/dataleon/models/individual.rb +805 -0
- data/lib/dataleon/models/individual_create_params.rb +174 -0
- data/lib/dataleon/models/individual_delete_params.rb +14 -0
- data/lib/dataleon/models/individual_list_params.rb +108 -0
- data/lib/dataleon/models/individual_list_response.rb +8 -0
- data/lib/dataleon/models/individual_retrieve_params.rb +30 -0
- data/lib/dataleon/models/individual_update_params.rb +174 -0
- data/lib/dataleon/models/individuals/document_list_params.rb +16 -0
- data/lib/dataleon/models/individuals/document_response.rb +98 -0
- data/lib/dataleon/models/individuals/document_upload_params.rb +82 -0
- data/lib/dataleon/models/individuals/generic_document.rb +132 -0
- data/lib/dataleon/models/individuals/kbis.rb +326 -0
- data/lib/dataleon/models.rb +71 -0
- data/lib/dataleon/request_options.rb +77 -0
- data/lib/dataleon/resources/companies/documents.rb +65 -0
- data/lib/dataleon/resources/companies.rb +164 -0
- data/lib/dataleon/resources/individuals/documents.rb +65 -0
- data/lib/dataleon/resources/individuals.rb +164 -0
- data/lib/dataleon/version.rb +5 -0
- data/lib/dataleon.rb +79 -0
- data/manifest.yaml +15 -0
- data/rbi/dataleon/client.rbi +56 -0
- data/rbi/dataleon/errors.rbi +178 -0
- data/rbi/dataleon/file_part.rbi +37 -0
- data/rbi/dataleon/internal/transport/base_client.rbi +293 -0
- data/rbi/dataleon/internal/transport/pooled_net_requester.rbi +79 -0
- data/rbi/dataleon/internal/type/array_of.rbi +104 -0
- data/rbi/dataleon/internal/type/base_model.rbi +302 -0
- data/rbi/dataleon/internal/type/base_page.rbi +42 -0
- data/rbi/dataleon/internal/type/boolean.rbi +58 -0
- data/rbi/dataleon/internal/type/converter.rbi +216 -0
- data/rbi/dataleon/internal/type/enum.rbi +82 -0
- data/rbi/dataleon/internal/type/file_input.rbi +59 -0
- data/rbi/dataleon/internal/type/hash_of.rbi +104 -0
- data/rbi/dataleon/internal/type/request_parameters.rbi +29 -0
- data/rbi/dataleon/internal/type/union.rbi +128 -0
- data/rbi/dataleon/internal/type/unknown.rbi +58 -0
- data/rbi/dataleon/internal/util.rbi +487 -0
- data/rbi/dataleon/internal.rbi +16 -0
- data/rbi/dataleon/models/check.rbi +83 -0
- data/rbi/dataleon/models/companies/document_list_params.rbi +32 -0
- data/rbi/dataleon/models/companies/document_upload_params.rbi +266 -0
- data/rbi/dataleon/models/company_create_params.rbi +361 -0
- data/rbi/dataleon/models/company_delete_params.rbi +27 -0
- data/rbi/dataleon/models/company_list_params.rbi +182 -0
- data/rbi/dataleon/models/company_list_response.rbi +11 -0
- data/rbi/dataleon/models/company_registration.rbi +1628 -0
- data/rbi/dataleon/models/company_retrieve_params.rbi +57 -0
- data/rbi/dataleon/models/company_update_params.rbi +361 -0
- data/rbi/dataleon/models/individual.rbi +1281 -0
- data/rbi/dataleon/models/individual_create_params.rbi +323 -0
- data/rbi/dataleon/models/individual_delete_params.rbi +27 -0
- data/rbi/dataleon/models/individual_list_params.rbi +193 -0
- data/rbi/dataleon/models/individual_list_response.rbi +11 -0
- data/rbi/dataleon/models/individual_retrieve_params.rbi +57 -0
- data/rbi/dataleon/models/individual_update_params.rbi +323 -0
- data/rbi/dataleon/models/individuals/document_list_params.rbi +32 -0
- data/rbi/dataleon/models/individuals/document_response.rbi +190 -0
- data/rbi/dataleon/models/individuals/document_upload_params.rbi +266 -0
- data/rbi/dataleon/models/individuals/generic_document.rbi +252 -0
- data/rbi/dataleon/models/individuals/kbis.rbi +513 -0
- data/rbi/dataleon/models.rbi +33 -0
- data/rbi/dataleon/request_options.rbi +59 -0
- data/rbi/dataleon/resources/companies/documents.rbi +52 -0
- data/rbi/dataleon/resources/companies.rbi +135 -0
- data/rbi/dataleon/resources/individuals/documents.rbi +52 -0
- data/rbi/dataleon/resources/individuals.rbi +137 -0
- data/rbi/dataleon/version.rbi +5 -0
- data/sig/dataleon/client.rbs +28 -0
- data/sig/dataleon/errors.rbs +110 -0
- data/sig/dataleon/file_part.rbs +21 -0
- data/sig/dataleon/internal/transport/base_client.rbs +131 -0
- data/sig/dataleon/internal/transport/pooled_net_requester.rbs +45 -0
- data/sig/dataleon/internal/type/array_of.rbs +48 -0
- data/sig/dataleon/internal/type/base_model.rbs +102 -0
- data/sig/dataleon/internal/type/base_page.rbs +24 -0
- data/sig/dataleon/internal/type/boolean.rbs +26 -0
- data/sig/dataleon/internal/type/converter.rbs +79 -0
- data/sig/dataleon/internal/type/enum.rbs +32 -0
- data/sig/dataleon/internal/type/file_input.rbs +25 -0
- data/sig/dataleon/internal/type/hash_of.rbs +48 -0
- data/sig/dataleon/internal/type/request_parameters.rbs +17 -0
- data/sig/dataleon/internal/type/union.rbs +52 -0
- data/sig/dataleon/internal/type/unknown.rbs +26 -0
- data/sig/dataleon/internal/util.rbs +185 -0
- data/sig/dataleon/internal.rbs +9 -0
- data/sig/dataleon/models/check.rbs +50 -0
- data/sig/dataleon/models/companies/document_list_params.rbs +17 -0
- data/sig/dataleon/models/companies/document_upload_params.rbs +119 -0
- data/sig/dataleon/models/company_create_params.rbs +209 -0
- data/sig/dataleon/models/company_delete_params.rbs +15 -0
- data/sig/dataleon/models/company_list_params.rbs +120 -0
- data/sig/dataleon/models/company_list_response.rbs +7 -0
- data/sig/dataleon/models/company_registration.rbs +847 -0
- data/sig/dataleon/models/company_retrieve_params.rbs +32 -0
- data/sig/dataleon/models/company_update_params.rbs +209 -0
- data/sig/dataleon/models/individual.rbs +717 -0
- data/sig/dataleon/models/individual_create_params.rbs +172 -0
- data/sig/dataleon/models/individual_delete_params.rbs +15 -0
- data/sig/dataleon/models/individual_list_params.rbs +120 -0
- data/sig/dataleon/models/individual_list_response.rbs +7 -0
- data/sig/dataleon/models/individual_retrieve_params.rbs +32 -0
- data/sig/dataleon/models/individual_update_params.rbs +172 -0
- data/sig/dataleon/models/individuals/document_list_params.rbs +17 -0
- data/sig/dataleon/models/individuals/document_response.rbs +101 -0
- data/sig/dataleon/models/individuals/document_upload_params.rbs +119 -0
- data/sig/dataleon/models/individuals/generic_document.rbs +132 -0
- data/sig/dataleon/models/individuals/kbis.rbs +303 -0
- data/sig/dataleon/models.rbs +31 -0
- data/sig/dataleon/request_options.rbs +34 -0
- data/sig/dataleon/resources/companies/documents.rbs +22 -0
- data/sig/dataleon/resources/companies.rbs +50 -0
- data/sig/dataleon/resources/individuals/documents.rbs +22 -0
- data/sig/dataleon/resources/individuals.rbs +50 -0
- data/sig/dataleon/version.rbs +3 -0
- metadata +206 -0
|
@@ -0,0 +1,513 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Dataleon
|
|
4
|
+
module Models
|
|
5
|
+
module Individuals
|
|
6
|
+
class Kbis < Dataleon::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(Dataleon::Individuals::Kbis, Dataleon::Internal::AnyHash)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
# Declared business activities.
|
|
13
|
+
sig { returns(T.nilable(String)) }
|
|
14
|
+
attr_reader :activities
|
|
15
|
+
|
|
16
|
+
sig { params(activities: String).void }
|
|
17
|
+
attr_writer :activities
|
|
18
|
+
|
|
19
|
+
# Official address of the company.
|
|
20
|
+
sig { returns(T.nilable(String)) }
|
|
21
|
+
attr_reader :address
|
|
22
|
+
|
|
23
|
+
sig { params(address: String).void }
|
|
24
|
+
attr_writer :address
|
|
25
|
+
|
|
26
|
+
# Registered social capital of the company.
|
|
27
|
+
sig { returns(T.nilable(String)) }
|
|
28
|
+
attr_reader :capital_social
|
|
29
|
+
|
|
30
|
+
sig { params(capital_social: String).void }
|
|
31
|
+
attr_writer :capital_social
|
|
32
|
+
|
|
33
|
+
# Date of closure, if applicable.
|
|
34
|
+
sig { returns(T.nilable(Date)) }
|
|
35
|
+
attr_reader :closure_date
|
|
36
|
+
|
|
37
|
+
sig { params(closure_date: Date).void }
|
|
38
|
+
attr_writer :closure_date
|
|
39
|
+
|
|
40
|
+
# Official name of the company.
|
|
41
|
+
sig { returns(T.nilable(String)) }
|
|
42
|
+
attr_reader :company_name
|
|
43
|
+
|
|
44
|
+
sig { params(company_name: String).void }
|
|
45
|
+
attr_writer :company_name
|
|
46
|
+
|
|
47
|
+
# Date when the document was issued.
|
|
48
|
+
sig { returns(T.nilable(Date)) }
|
|
49
|
+
attr_reader :document_date
|
|
50
|
+
|
|
51
|
+
sig { params(document_date: Date).void }
|
|
52
|
+
attr_writer :document_date
|
|
53
|
+
|
|
54
|
+
# Fixed identifier for the document type.
|
|
55
|
+
sig { returns(T.nilable(String)) }
|
|
56
|
+
attr_reader :document_type
|
|
57
|
+
|
|
58
|
+
sig { params(document_type: String).void }
|
|
59
|
+
attr_writer :document_type
|
|
60
|
+
|
|
61
|
+
# Date of the first fiscal closure.
|
|
62
|
+
sig { returns(T.nilable(Date)) }
|
|
63
|
+
attr_reader :first_closure_date
|
|
64
|
+
|
|
65
|
+
sig { params(first_closure_date: Date).void }
|
|
66
|
+
attr_writer :first_closure_date
|
|
67
|
+
|
|
68
|
+
# Registry office that issued the document.
|
|
69
|
+
sig { returns(T.nilable(String)) }
|
|
70
|
+
attr_reader :from_greffe
|
|
71
|
+
|
|
72
|
+
sig { params(from_greffe: String).void }
|
|
73
|
+
attr_writer :from_greffe
|
|
74
|
+
|
|
75
|
+
# Legal form of the company (e.g., SAS, SARL).
|
|
76
|
+
sig { returns(T.nilable(String)) }
|
|
77
|
+
attr_reader :legal_form
|
|
78
|
+
|
|
79
|
+
sig { params(legal_form: String).void }
|
|
80
|
+
attr_writer :legal_form
|
|
81
|
+
|
|
82
|
+
# List of people or entities associated with the company.
|
|
83
|
+
sig do
|
|
84
|
+
returns(T.nilable(T::Array[Dataleon::Individuals::Kbis::Member]))
|
|
85
|
+
end
|
|
86
|
+
attr_reader :members
|
|
87
|
+
|
|
88
|
+
sig do
|
|
89
|
+
params(
|
|
90
|
+
members: T::Array[Dataleon::Individuals::Kbis::Member::OrHash]
|
|
91
|
+
).void
|
|
92
|
+
end
|
|
93
|
+
attr_writer :members
|
|
94
|
+
|
|
95
|
+
# Business registry number or NGestion.
|
|
96
|
+
sig { returns(T.nilable(String)) }
|
|
97
|
+
attr_reader :ngestion
|
|
98
|
+
|
|
99
|
+
sig { params(ngestion: String).void }
|
|
100
|
+
attr_writer :ngestion
|
|
101
|
+
|
|
102
|
+
# RCS (Company Registration Number).
|
|
103
|
+
sig { returns(T.nilable(String)) }
|
|
104
|
+
attr_reader :rcs_number
|
|
105
|
+
|
|
106
|
+
sig { params(rcs_number: String).void }
|
|
107
|
+
attr_writer :rcs_number
|
|
108
|
+
|
|
109
|
+
# Date of registration with the registry.
|
|
110
|
+
sig { returns(T.nilable(Date)) }
|
|
111
|
+
attr_reader :registration_date
|
|
112
|
+
|
|
113
|
+
sig { params(registration_date: Date).void }
|
|
114
|
+
attr_writer :registration_date
|
|
115
|
+
|
|
116
|
+
# SIREN number of the company.
|
|
117
|
+
sig { returns(T.nilable(String)) }
|
|
118
|
+
attr_reader :siren_info
|
|
119
|
+
|
|
120
|
+
sig { params(siren_info: String).void }
|
|
121
|
+
attr_writer :siren_info
|
|
122
|
+
|
|
123
|
+
# A document representing official registration data from the KBIS (France).
|
|
124
|
+
sig do
|
|
125
|
+
params(
|
|
126
|
+
activities: String,
|
|
127
|
+
address: String,
|
|
128
|
+
capital_social: String,
|
|
129
|
+
closure_date: Date,
|
|
130
|
+
company_name: String,
|
|
131
|
+
document_date: Date,
|
|
132
|
+
document_type: String,
|
|
133
|
+
first_closure_date: Date,
|
|
134
|
+
from_greffe: String,
|
|
135
|
+
legal_form: String,
|
|
136
|
+
members: T::Array[Dataleon::Individuals::Kbis::Member::OrHash],
|
|
137
|
+
ngestion: String,
|
|
138
|
+
rcs_number: String,
|
|
139
|
+
registration_date: Date,
|
|
140
|
+
siren_info: String
|
|
141
|
+
).returns(T.attached_class)
|
|
142
|
+
end
|
|
143
|
+
def self.new(
|
|
144
|
+
# Declared business activities.
|
|
145
|
+
activities: nil,
|
|
146
|
+
# Official address of the company.
|
|
147
|
+
address: nil,
|
|
148
|
+
# Registered social capital of the company.
|
|
149
|
+
capital_social: nil,
|
|
150
|
+
# Date of closure, if applicable.
|
|
151
|
+
closure_date: nil,
|
|
152
|
+
# Official name of the company.
|
|
153
|
+
company_name: nil,
|
|
154
|
+
# Date when the document was issued.
|
|
155
|
+
document_date: nil,
|
|
156
|
+
# Fixed identifier for the document type.
|
|
157
|
+
document_type: nil,
|
|
158
|
+
# Date of the first fiscal closure.
|
|
159
|
+
first_closure_date: nil,
|
|
160
|
+
# Registry office that issued the document.
|
|
161
|
+
from_greffe: nil,
|
|
162
|
+
# Legal form of the company (e.g., SAS, SARL).
|
|
163
|
+
legal_form: nil,
|
|
164
|
+
# List of people or entities associated with the company.
|
|
165
|
+
members: nil,
|
|
166
|
+
# Business registry number or NGestion.
|
|
167
|
+
ngestion: nil,
|
|
168
|
+
# RCS (Company Registration Number).
|
|
169
|
+
rcs_number: nil,
|
|
170
|
+
# Date of registration with the registry.
|
|
171
|
+
registration_date: nil,
|
|
172
|
+
# SIREN number of the company.
|
|
173
|
+
siren_info: nil
|
|
174
|
+
)
|
|
175
|
+
end
|
|
176
|
+
|
|
177
|
+
sig do
|
|
178
|
+
override.returns(
|
|
179
|
+
{
|
|
180
|
+
activities: String,
|
|
181
|
+
address: String,
|
|
182
|
+
capital_social: String,
|
|
183
|
+
closure_date: Date,
|
|
184
|
+
company_name: String,
|
|
185
|
+
document_date: Date,
|
|
186
|
+
document_type: String,
|
|
187
|
+
first_closure_date: Date,
|
|
188
|
+
from_greffe: String,
|
|
189
|
+
legal_form: String,
|
|
190
|
+
members: T::Array[Dataleon::Individuals::Kbis::Member],
|
|
191
|
+
ngestion: String,
|
|
192
|
+
rcs_number: String,
|
|
193
|
+
registration_date: Date,
|
|
194
|
+
siren_info: String
|
|
195
|
+
}
|
|
196
|
+
)
|
|
197
|
+
end
|
|
198
|
+
def to_hash
|
|
199
|
+
end
|
|
200
|
+
|
|
201
|
+
class Member < Dataleon::Internal::Type::BaseModel
|
|
202
|
+
OrHash =
|
|
203
|
+
T.type_alias do
|
|
204
|
+
T.any(
|
|
205
|
+
Dataleon::Individuals::Kbis::Member,
|
|
206
|
+
Dataleon::Internal::AnyHash
|
|
207
|
+
)
|
|
208
|
+
end
|
|
209
|
+
|
|
210
|
+
# Unique identifier for the member.
|
|
211
|
+
sig { returns(T.nilable(String)) }
|
|
212
|
+
attr_reader :id
|
|
213
|
+
|
|
214
|
+
sig { params(id: String).void }
|
|
215
|
+
attr_writer :id
|
|
216
|
+
|
|
217
|
+
# Address of the member.
|
|
218
|
+
sig { returns(T.nilable(String)) }
|
|
219
|
+
attr_reader :address
|
|
220
|
+
|
|
221
|
+
sig { params(address: String).void }
|
|
222
|
+
attr_writer :address
|
|
223
|
+
|
|
224
|
+
# Birth date of the person (only if type = person).
|
|
225
|
+
sig { returns(T.nilable(Time)) }
|
|
226
|
+
attr_reader :birthday
|
|
227
|
+
|
|
228
|
+
sig { params(birthday: Time).void }
|
|
229
|
+
attr_writer :birthday
|
|
230
|
+
|
|
231
|
+
# Place of birth (only if type = person).
|
|
232
|
+
sig { returns(T.nilable(String)) }
|
|
233
|
+
attr_reader :birthplace
|
|
234
|
+
|
|
235
|
+
sig { params(birthplace: String).void }
|
|
236
|
+
attr_writer :birthplace
|
|
237
|
+
|
|
238
|
+
# Country of residence or registration.
|
|
239
|
+
sig { returns(T.nilable(String)) }
|
|
240
|
+
attr_reader :country
|
|
241
|
+
|
|
242
|
+
sig { params(country: String).void }
|
|
243
|
+
attr_writer :country
|
|
244
|
+
|
|
245
|
+
# Email address of the member.
|
|
246
|
+
sig { returns(T.nilable(String)) }
|
|
247
|
+
attr_reader :email
|
|
248
|
+
|
|
249
|
+
sig { params(email: String).void }
|
|
250
|
+
attr_writer :email
|
|
251
|
+
|
|
252
|
+
# First name of the person (only if type = person).
|
|
253
|
+
sig { returns(T.nilable(String)) }
|
|
254
|
+
attr_reader :first_name
|
|
255
|
+
|
|
256
|
+
sig { params(first_name: String).void }
|
|
257
|
+
attr_writer :first_name
|
|
258
|
+
|
|
259
|
+
# Indicates if this member is a beneficial owner.
|
|
260
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
261
|
+
attr_reader :is_beneficial_owner
|
|
262
|
+
|
|
263
|
+
sig { params(is_beneficial_owner: T::Boolean).void }
|
|
264
|
+
attr_writer :is_beneficial_owner
|
|
265
|
+
|
|
266
|
+
# Indicates if this member is a delegator.
|
|
267
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
268
|
+
attr_reader :is_delegator
|
|
269
|
+
|
|
270
|
+
sig { params(is_delegator: T::Boolean).void }
|
|
271
|
+
attr_writer :is_delegator
|
|
272
|
+
|
|
273
|
+
# Last name of the person (only if type = person).
|
|
274
|
+
sig { returns(T.nilable(String)) }
|
|
275
|
+
attr_reader :last_name
|
|
276
|
+
|
|
277
|
+
sig { params(last_name: String).void }
|
|
278
|
+
attr_writer :last_name
|
|
279
|
+
|
|
280
|
+
# Indicates if the member passed liveness verification.
|
|
281
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
282
|
+
attr_reader :liveness_verification
|
|
283
|
+
|
|
284
|
+
sig { params(liveness_verification: T::Boolean).void }
|
|
285
|
+
attr_writer :liveness_verification
|
|
286
|
+
|
|
287
|
+
# Name of the company (only if type = company).
|
|
288
|
+
sig { returns(T.nilable(String)) }
|
|
289
|
+
attr_reader :name
|
|
290
|
+
|
|
291
|
+
sig { params(name: String).void }
|
|
292
|
+
attr_writer :name
|
|
293
|
+
|
|
294
|
+
# Ownership percentage held by the member.
|
|
295
|
+
sig { returns(T.nilable(Integer)) }
|
|
296
|
+
attr_reader :ownership_percentage
|
|
297
|
+
|
|
298
|
+
sig { params(ownership_percentage: Integer).void }
|
|
299
|
+
attr_writer :ownership_percentage
|
|
300
|
+
|
|
301
|
+
# Phone number of the member.
|
|
302
|
+
sig { returns(T.nilable(String)) }
|
|
303
|
+
attr_reader :phone_number
|
|
304
|
+
|
|
305
|
+
sig { params(phone_number: String).void }
|
|
306
|
+
attr_writer :phone_number
|
|
307
|
+
|
|
308
|
+
# Postal code of the member's address.
|
|
309
|
+
sig { returns(T.nilable(String)) }
|
|
310
|
+
attr_reader :postal_code
|
|
311
|
+
|
|
312
|
+
sig { params(postal_code: String).void }
|
|
313
|
+
attr_writer :postal_code
|
|
314
|
+
|
|
315
|
+
# Company registration number (if type = company).
|
|
316
|
+
sig { returns(T.nilable(String)) }
|
|
317
|
+
attr_reader :registration_id
|
|
318
|
+
|
|
319
|
+
sig { params(registration_id: String).void }
|
|
320
|
+
attr_writer :registration_id
|
|
321
|
+
|
|
322
|
+
# Type of relation (e.g., shareholder, director).
|
|
323
|
+
sig { returns(T.nilable(String)) }
|
|
324
|
+
attr_reader :relation
|
|
325
|
+
|
|
326
|
+
sig { params(relation: String).void }
|
|
327
|
+
attr_writer :relation
|
|
328
|
+
|
|
329
|
+
# Roles held by the member (e.g., legal_representative or shareholder).
|
|
330
|
+
sig { returns(T.nilable(String)) }
|
|
331
|
+
attr_reader :roles
|
|
332
|
+
|
|
333
|
+
sig { params(roles: String).void }
|
|
334
|
+
attr_writer :roles
|
|
335
|
+
|
|
336
|
+
# Source of the data (e.g., gouv, user, company).
|
|
337
|
+
sig { returns(T.nilable(String)) }
|
|
338
|
+
attr_reader :source
|
|
339
|
+
|
|
340
|
+
sig { params(source: String).void }
|
|
341
|
+
attr_writer :source
|
|
342
|
+
|
|
343
|
+
# Current status of the member.
|
|
344
|
+
sig { returns(T.nilable(String)) }
|
|
345
|
+
attr_reader :status
|
|
346
|
+
|
|
347
|
+
sig { params(status: String).void }
|
|
348
|
+
attr_writer :status
|
|
349
|
+
|
|
350
|
+
# Type of entity (company or person).
|
|
351
|
+
sig do
|
|
352
|
+
returns(
|
|
353
|
+
T.nilable(Dataleon::Individuals::Kbis::Member::Type::OrSymbol)
|
|
354
|
+
)
|
|
355
|
+
end
|
|
356
|
+
attr_reader :type
|
|
357
|
+
|
|
358
|
+
sig do
|
|
359
|
+
params(
|
|
360
|
+
type: Dataleon::Individuals::Kbis::Member::Type::OrSymbol
|
|
361
|
+
).void
|
|
362
|
+
end
|
|
363
|
+
attr_writer :type
|
|
364
|
+
|
|
365
|
+
# Workspace identifier for internal tracking.
|
|
366
|
+
sig { returns(T.nilable(String)) }
|
|
367
|
+
attr_reader :workspace_id
|
|
368
|
+
|
|
369
|
+
sig { params(workspace_id: String).void }
|
|
370
|
+
attr_writer :workspace_id
|
|
371
|
+
|
|
372
|
+
# A member (person or entity) associated with the company from a KBIS document.
|
|
373
|
+
sig do
|
|
374
|
+
params(
|
|
375
|
+
id: String,
|
|
376
|
+
address: String,
|
|
377
|
+
birthday: Time,
|
|
378
|
+
birthplace: String,
|
|
379
|
+
country: String,
|
|
380
|
+
email: String,
|
|
381
|
+
first_name: String,
|
|
382
|
+
is_beneficial_owner: T::Boolean,
|
|
383
|
+
is_delegator: T::Boolean,
|
|
384
|
+
last_name: String,
|
|
385
|
+
liveness_verification: T::Boolean,
|
|
386
|
+
name: String,
|
|
387
|
+
ownership_percentage: Integer,
|
|
388
|
+
phone_number: String,
|
|
389
|
+
postal_code: String,
|
|
390
|
+
registration_id: String,
|
|
391
|
+
relation: String,
|
|
392
|
+
roles: String,
|
|
393
|
+
source: String,
|
|
394
|
+
status: String,
|
|
395
|
+
type: Dataleon::Individuals::Kbis::Member::Type::OrSymbol,
|
|
396
|
+
workspace_id: String
|
|
397
|
+
).returns(T.attached_class)
|
|
398
|
+
end
|
|
399
|
+
def self.new(
|
|
400
|
+
# Unique identifier for the member.
|
|
401
|
+
id: nil,
|
|
402
|
+
# Address of the member.
|
|
403
|
+
address: nil,
|
|
404
|
+
# Birth date of the person (only if type = person).
|
|
405
|
+
birthday: nil,
|
|
406
|
+
# Place of birth (only if type = person).
|
|
407
|
+
birthplace: nil,
|
|
408
|
+
# Country of residence or registration.
|
|
409
|
+
country: nil,
|
|
410
|
+
# Email address of the member.
|
|
411
|
+
email: nil,
|
|
412
|
+
# First name of the person (only if type = person).
|
|
413
|
+
first_name: nil,
|
|
414
|
+
# Indicates if this member is a beneficial owner.
|
|
415
|
+
is_beneficial_owner: nil,
|
|
416
|
+
# Indicates if this member is a delegator.
|
|
417
|
+
is_delegator: nil,
|
|
418
|
+
# Last name of the person (only if type = person).
|
|
419
|
+
last_name: nil,
|
|
420
|
+
# Indicates if the member passed liveness verification.
|
|
421
|
+
liveness_verification: nil,
|
|
422
|
+
# Name of the company (only if type = company).
|
|
423
|
+
name: nil,
|
|
424
|
+
# Ownership percentage held by the member.
|
|
425
|
+
ownership_percentage: nil,
|
|
426
|
+
# Phone number of the member.
|
|
427
|
+
phone_number: nil,
|
|
428
|
+
# Postal code of the member's address.
|
|
429
|
+
postal_code: nil,
|
|
430
|
+
# Company registration number (if type = company).
|
|
431
|
+
registration_id: nil,
|
|
432
|
+
# Type of relation (e.g., shareholder, director).
|
|
433
|
+
relation: nil,
|
|
434
|
+
# Roles held by the member (e.g., legal_representative or shareholder).
|
|
435
|
+
roles: nil,
|
|
436
|
+
# Source of the data (e.g., gouv, user, company).
|
|
437
|
+
source: nil,
|
|
438
|
+
# Current status of the member.
|
|
439
|
+
status: nil,
|
|
440
|
+
# Type of entity (company or person).
|
|
441
|
+
type: nil,
|
|
442
|
+
# Workspace identifier for internal tracking.
|
|
443
|
+
workspace_id: nil
|
|
444
|
+
)
|
|
445
|
+
end
|
|
446
|
+
|
|
447
|
+
sig do
|
|
448
|
+
override.returns(
|
|
449
|
+
{
|
|
450
|
+
id: String,
|
|
451
|
+
address: String,
|
|
452
|
+
birthday: Time,
|
|
453
|
+
birthplace: String,
|
|
454
|
+
country: String,
|
|
455
|
+
email: String,
|
|
456
|
+
first_name: String,
|
|
457
|
+
is_beneficial_owner: T::Boolean,
|
|
458
|
+
is_delegator: T::Boolean,
|
|
459
|
+
last_name: String,
|
|
460
|
+
liveness_verification: T::Boolean,
|
|
461
|
+
name: String,
|
|
462
|
+
ownership_percentage: Integer,
|
|
463
|
+
phone_number: String,
|
|
464
|
+
postal_code: String,
|
|
465
|
+
registration_id: String,
|
|
466
|
+
relation: String,
|
|
467
|
+
roles: String,
|
|
468
|
+
source: String,
|
|
469
|
+
status: String,
|
|
470
|
+
type: Dataleon::Individuals::Kbis::Member::Type::OrSymbol,
|
|
471
|
+
workspace_id: String
|
|
472
|
+
}
|
|
473
|
+
)
|
|
474
|
+
end
|
|
475
|
+
def to_hash
|
|
476
|
+
end
|
|
477
|
+
|
|
478
|
+
# Type of entity (company or person).
|
|
479
|
+
module Type
|
|
480
|
+
extend Dataleon::Internal::Type::Enum
|
|
481
|
+
|
|
482
|
+
TaggedSymbol =
|
|
483
|
+
T.type_alias do
|
|
484
|
+
T.all(Symbol, Dataleon::Individuals::Kbis::Member::Type)
|
|
485
|
+
end
|
|
486
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
487
|
+
|
|
488
|
+
COMPANY =
|
|
489
|
+
T.let(
|
|
490
|
+
:company,
|
|
491
|
+
Dataleon::Individuals::Kbis::Member::Type::TaggedSymbol
|
|
492
|
+
)
|
|
493
|
+
PERSON =
|
|
494
|
+
T.let(
|
|
495
|
+
:person,
|
|
496
|
+
Dataleon::Individuals::Kbis::Member::Type::TaggedSymbol
|
|
497
|
+
)
|
|
498
|
+
|
|
499
|
+
sig do
|
|
500
|
+
override.returns(
|
|
501
|
+
T::Array[
|
|
502
|
+
Dataleon::Individuals::Kbis::Member::Type::TaggedSymbol
|
|
503
|
+
]
|
|
504
|
+
)
|
|
505
|
+
end
|
|
506
|
+
def self.values
|
|
507
|
+
end
|
|
508
|
+
end
|
|
509
|
+
end
|
|
510
|
+
end
|
|
511
|
+
end
|
|
512
|
+
end
|
|
513
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Dataleon
|
|
4
|
+
Check = Dataleon::Models::Check
|
|
5
|
+
|
|
6
|
+
Companies = Dataleon::Models::Companies
|
|
7
|
+
|
|
8
|
+
CompanyCreateParams = Dataleon::Models::CompanyCreateParams
|
|
9
|
+
|
|
10
|
+
CompanyDeleteParams = Dataleon::Models::CompanyDeleteParams
|
|
11
|
+
|
|
12
|
+
CompanyListParams = Dataleon::Models::CompanyListParams
|
|
13
|
+
|
|
14
|
+
CompanyRegistration = Dataleon::Models::CompanyRegistration
|
|
15
|
+
|
|
16
|
+
CompanyRetrieveParams = Dataleon::Models::CompanyRetrieveParams
|
|
17
|
+
|
|
18
|
+
CompanyUpdateParams = Dataleon::Models::CompanyUpdateParams
|
|
19
|
+
|
|
20
|
+
Individual = Dataleon::Models::Individual
|
|
21
|
+
|
|
22
|
+
IndividualCreateParams = Dataleon::Models::IndividualCreateParams
|
|
23
|
+
|
|
24
|
+
IndividualDeleteParams = Dataleon::Models::IndividualDeleteParams
|
|
25
|
+
|
|
26
|
+
IndividualListParams = Dataleon::Models::IndividualListParams
|
|
27
|
+
|
|
28
|
+
IndividualRetrieveParams = Dataleon::Models::IndividualRetrieveParams
|
|
29
|
+
|
|
30
|
+
Individuals = Dataleon::Models::Individuals
|
|
31
|
+
|
|
32
|
+
IndividualUpdateParams = Dataleon::Models::IndividualUpdateParams
|
|
33
|
+
end
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Dataleon
|
|
4
|
+
# Specify HTTP behaviour to use for a specific request. These options supplement
|
|
5
|
+
# or override those provided at the client level.
|
|
6
|
+
#
|
|
7
|
+
# When making a request, you can pass an actual {RequestOptions} instance, or
|
|
8
|
+
# simply pass a Hash with symbol keys matching the attributes on this class.
|
|
9
|
+
class RequestOptions < Dataleon::Internal::Type::BaseModel
|
|
10
|
+
OrHash =
|
|
11
|
+
T.type_alias do
|
|
12
|
+
T.any(Dataleon::RequestOptions, Dataleon::Internal::AnyHash)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# @api private
|
|
16
|
+
sig { params(opts: Dataleon::RequestOptions::OrHash).void }
|
|
17
|
+
def self.validate!(opts)
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
# Idempotency key to send with request and all associated retries. Will only be
|
|
21
|
+
# sent for write requests.
|
|
22
|
+
sig { returns(T.nilable(String)) }
|
|
23
|
+
attr_accessor :idempotency_key
|
|
24
|
+
|
|
25
|
+
# Extra query params to send with the request. These are `.merge`’d into any
|
|
26
|
+
# `query` given at the client level.
|
|
27
|
+
sig do
|
|
28
|
+
returns(
|
|
29
|
+
T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))])
|
|
30
|
+
)
|
|
31
|
+
end
|
|
32
|
+
attr_accessor :extra_query
|
|
33
|
+
|
|
34
|
+
# Extra headers to send with the request. These are `.merged`’d into any
|
|
35
|
+
# `extra_headers` given at the client level.
|
|
36
|
+
sig { returns(T.nilable(T::Hash[String, T.nilable(String)])) }
|
|
37
|
+
attr_accessor :extra_headers
|
|
38
|
+
|
|
39
|
+
# Extra data to send with the request. These are deep merged into any data
|
|
40
|
+
# generated as part of the normal request.
|
|
41
|
+
sig { returns(T.nilable(T.anything)) }
|
|
42
|
+
attr_accessor :extra_body
|
|
43
|
+
|
|
44
|
+
# Maximum number of retries to attempt after a failed initial request.
|
|
45
|
+
sig { returns(T.nilable(Integer)) }
|
|
46
|
+
attr_accessor :max_retries
|
|
47
|
+
|
|
48
|
+
# Request timeout in seconds.
|
|
49
|
+
sig { returns(T.nilable(Float)) }
|
|
50
|
+
attr_accessor :timeout
|
|
51
|
+
|
|
52
|
+
# Returns a new instance of RequestOptions.
|
|
53
|
+
sig do
|
|
54
|
+
params(values: Dataleon::Internal::AnyHash).returns(T.attached_class)
|
|
55
|
+
end
|
|
56
|
+
def self.new(values = {})
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Dataleon
|
|
4
|
+
module Resources
|
|
5
|
+
class Companies
|
|
6
|
+
class Documents
|
|
7
|
+
# Get documents to an company
|
|
8
|
+
sig do
|
|
9
|
+
params(
|
|
10
|
+
company_id: String,
|
|
11
|
+
request_options: Dataleon::RequestOptions::OrHash
|
|
12
|
+
).returns(Dataleon::Individuals::DocumentResponse)
|
|
13
|
+
end
|
|
14
|
+
def list(
|
|
15
|
+
# ID of the company to upload document
|
|
16
|
+
company_id,
|
|
17
|
+
request_options: {}
|
|
18
|
+
)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# Upload documents to an company
|
|
22
|
+
sig do
|
|
23
|
+
params(
|
|
24
|
+
company_id: String,
|
|
25
|
+
document_type:
|
|
26
|
+
Dataleon::Companies::DocumentUploadParams::DocumentType::OrSymbol,
|
|
27
|
+
file: Dataleon::Internal::FileInput,
|
|
28
|
+
url: String,
|
|
29
|
+
request_options: Dataleon::RequestOptions::OrHash
|
|
30
|
+
).returns(Dataleon::Individuals::GenericDocument)
|
|
31
|
+
end
|
|
32
|
+
def upload(
|
|
33
|
+
# ID of the company to upload document
|
|
34
|
+
company_id,
|
|
35
|
+
# Filter by document type for upload (must be one of the allowed values)
|
|
36
|
+
document_type:,
|
|
37
|
+
# File to upload (required)
|
|
38
|
+
file: nil,
|
|
39
|
+
# URL of the file to upload (either `file` or `url` is required)
|
|
40
|
+
url: nil,
|
|
41
|
+
request_options: {}
|
|
42
|
+
)
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# @api private
|
|
46
|
+
sig { params(client: Dataleon::Client).returns(T.attached_class) }
|
|
47
|
+
def self.new(client:)
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|