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,174 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dataleon
4
+ module Models
5
+ # @see Dataleon::Resources::Individuals#create
6
+ class IndividualCreateParams < Dataleon::Internal::Type::BaseModel
7
+ extend Dataleon::Internal::Type::RequestParameters::Converter
8
+ include Dataleon::Internal::Type::RequestParameters
9
+
10
+ # @!attribute workspace_id
11
+ # Unique identifier of the workspace where the individual is being registered.
12
+ #
13
+ # @return [String]
14
+ required :workspace_id, String
15
+
16
+ # @!attribute person
17
+ # Personal information about the individual.
18
+ #
19
+ # @return [Dataleon::Models::IndividualCreateParams::Person, nil]
20
+ optional :person, -> { Dataleon::IndividualCreateParams::Person }
21
+
22
+ # @!attribute source_id
23
+ # Optional identifier for tracking the source system or integration from your
24
+ # system.
25
+ #
26
+ # @return [String, nil]
27
+ optional :source_id, String
28
+
29
+ # @!attribute technical_data
30
+ # Technical metadata related to the request or processing.
31
+ #
32
+ # @return [Dataleon::Models::IndividualCreateParams::TechnicalData, nil]
33
+ optional :technical_data, -> { Dataleon::IndividualCreateParams::TechnicalData }
34
+
35
+ # @!method initialize(workspace_id:, person: nil, source_id: nil, technical_data: nil, request_options: {})
36
+ # Some parameter documentations has been truncated, see
37
+ # {Dataleon::Models::IndividualCreateParams} for more details.
38
+ #
39
+ # @param workspace_id [String] Unique identifier of the workspace where the individual is being registered.
40
+ #
41
+ # @param person [Dataleon::Models::IndividualCreateParams::Person] Personal information about the individual.
42
+ #
43
+ # @param source_id [String] Optional identifier for tracking the source system or integration from your syst
44
+ #
45
+ # @param technical_data [Dataleon::Models::IndividualCreateParams::TechnicalData] Technical metadata related to the request or processing.
46
+ #
47
+ # @param request_options [Dataleon::RequestOptions, Hash{Symbol=>Object}]
48
+
49
+ class Person < Dataleon::Internal::Type::BaseModel
50
+ # @!attribute birthday
51
+ # Date of birth in DD/MM/YYYY format.
52
+ #
53
+ # @return [String, nil]
54
+ optional :birthday, String
55
+
56
+ # @!attribute email
57
+ # Email address of the individual.
58
+ #
59
+ # @return [String, nil]
60
+ optional :email, String
61
+
62
+ # @!attribute first_name
63
+ # First name of the individual.
64
+ #
65
+ # @return [String, nil]
66
+ optional :first_name, String
67
+
68
+ # @!attribute gender
69
+ # Gender of the individual (M for male, F for female).
70
+ #
71
+ # @return [Symbol, Dataleon::Models::IndividualCreateParams::Person::Gender, nil]
72
+ optional :gender, enum: -> { Dataleon::IndividualCreateParams::Person::Gender }
73
+
74
+ # @!attribute last_name
75
+ # Last name (family name) of the individual.
76
+ #
77
+ # @return [String, nil]
78
+ optional :last_name, String
79
+
80
+ # @!attribute maiden_name
81
+ # Maiden name, if applicable.
82
+ #
83
+ # @return [String, nil]
84
+ optional :maiden_name, String
85
+
86
+ # @!attribute phone_number
87
+ # Phone number of the individual.
88
+ #
89
+ # @return [String, nil]
90
+ optional :phone_number, String
91
+
92
+ # @!method initialize(birthday: nil, email: nil, first_name: nil, gender: nil, last_name: nil, maiden_name: nil, phone_number: nil)
93
+ # Personal information about the individual.
94
+ #
95
+ # @param birthday [String] Date of birth in DD/MM/YYYY format.
96
+ #
97
+ # @param email [String] Email address of the individual.
98
+ #
99
+ # @param first_name [String] First name of the individual.
100
+ #
101
+ # @param gender [Symbol, Dataleon::Models::IndividualCreateParams::Person::Gender] Gender of the individual (M for male, F for female).
102
+ #
103
+ # @param last_name [String] Last name (family name) of the individual.
104
+ #
105
+ # @param maiden_name [String] Maiden name, if applicable.
106
+ #
107
+ # @param phone_number [String] Phone number of the individual.
108
+
109
+ # Gender of the individual (M for male, F for female).
110
+ #
111
+ # @see Dataleon::Models::IndividualCreateParams::Person#gender
112
+ module Gender
113
+ extend Dataleon::Internal::Type::Enum
114
+
115
+ M = :M
116
+ F = :F
117
+
118
+ # @!method self.values
119
+ # @return [Array<Symbol>]
120
+ end
121
+ end
122
+
123
+ class TechnicalData < Dataleon::Internal::Type::BaseModel
124
+ # @!attribute active_aml_suspicions
125
+ # Flag indicating whether there are active research AML (Anti-Money Laundering)
126
+ # suspicions for the individual when you apply for a new entry or get an existing
127
+ # one.
128
+ #
129
+ # @return [Boolean, nil]
130
+ optional :active_aml_suspicions, Dataleon::Internal::Type::Boolean
131
+
132
+ # @!attribute callback_url
133
+ # URL to call back upon completion of processing.
134
+ #
135
+ # @return [String, nil]
136
+ optional :callback_url, String
137
+
138
+ # @!attribute callback_url_notification
139
+ # URL for receive notifications about the processing state or status.
140
+ #
141
+ # @return [String, nil]
142
+ optional :callback_url_notification, String
143
+
144
+ # @!attribute language
145
+ # Preferred language for communication (e.g., "eng", "fra").
146
+ #
147
+ # @return [String, nil]
148
+ optional :language, String
149
+
150
+ # @!attribute raw_data
151
+ # Flag indicating whether to include raw data in the response.
152
+ #
153
+ # @return [Boolean, nil]
154
+ optional :raw_data, Dataleon::Internal::Type::Boolean
155
+
156
+ # @!method initialize(active_aml_suspicions: nil, callback_url: nil, callback_url_notification: nil, language: nil, raw_data: nil)
157
+ # Some parameter documentations has been truncated, see
158
+ # {Dataleon::Models::IndividualCreateParams::TechnicalData} for more details.
159
+ #
160
+ # Technical metadata related to the request or processing.
161
+ #
162
+ # @param active_aml_suspicions [Boolean] Flag indicating whether there are active research AML (Anti-Money Laundering) su
163
+ #
164
+ # @param callback_url [String] URL to call back upon completion of processing.
165
+ #
166
+ # @param callback_url_notification [String] URL for receive notifications about the processing state or status.
167
+ #
168
+ # @param language [String] Preferred language for communication (e.g., "eng", "fra").
169
+ #
170
+ # @param raw_data [Boolean] Flag indicating whether to include raw data in the response.
171
+ end
172
+ end
173
+ end
174
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dataleon
4
+ module Models
5
+ # @see Dataleon::Resources::Individuals#delete
6
+ class IndividualDeleteParams < Dataleon::Internal::Type::BaseModel
7
+ extend Dataleon::Internal::Type::RequestParameters::Converter
8
+ include Dataleon::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [Dataleon::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,108 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dataleon
4
+ module Models
5
+ # @see Dataleon::Resources::Individuals#list
6
+ class IndividualListParams < Dataleon::Internal::Type::BaseModel
7
+ extend Dataleon::Internal::Type::RequestParameters::Converter
8
+ include Dataleon::Internal::Type::RequestParameters
9
+
10
+ # @!attribute end_date
11
+ # Filter individuals created before this date (format YYYY-MM-DD)
12
+ #
13
+ # @return [Date, nil]
14
+ optional :end_date, Date
15
+
16
+ # @!attribute limit
17
+ # Number of results to return (between 1 and 100)
18
+ #
19
+ # @return [Integer, nil]
20
+ optional :limit, Integer
21
+
22
+ # @!attribute offset
23
+ # Number of results to offset (must be ≥ 0)
24
+ #
25
+ # @return [Integer, nil]
26
+ optional :offset, Integer
27
+
28
+ # @!attribute source_id
29
+ # Filter by source ID
30
+ #
31
+ # @return [String, nil]
32
+ optional :source_id, String
33
+
34
+ # @!attribute start_date
35
+ # Filter individuals created after this date (format YYYY-MM-DD)
36
+ #
37
+ # @return [Date, nil]
38
+ optional :start_date, Date
39
+
40
+ # @!attribute state
41
+ # Filter by individual status (must be one of the allowed values)
42
+ #
43
+ # @return [Symbol, Dataleon::Models::IndividualListParams::State, nil]
44
+ optional :state, enum: -> { Dataleon::IndividualListParams::State }
45
+
46
+ # @!attribute status
47
+ # Filter by individual status (must be one of the allowed values)
48
+ #
49
+ # @return [Symbol, Dataleon::Models::IndividualListParams::Status, nil]
50
+ optional :status, enum: -> { Dataleon::IndividualListParams::Status }
51
+
52
+ # @!attribute workspace_id
53
+ # Filter by workspace ID
54
+ #
55
+ # @return [String, nil]
56
+ optional :workspace_id, String
57
+
58
+ # @!method initialize(end_date: nil, limit: nil, offset: nil, source_id: nil, start_date: nil, state: nil, status: nil, workspace_id: nil, request_options: {})
59
+ # @param end_date [Date] Filter individuals created before this date (format YYYY-MM-DD)
60
+ #
61
+ # @param limit [Integer] Number of results to return (between 1 and 100)
62
+ #
63
+ # @param offset [Integer] Number of results to offset (must be ≥ 0)
64
+ #
65
+ # @param source_id [String] Filter by source ID
66
+ #
67
+ # @param start_date [Date] Filter individuals created after this date (format YYYY-MM-DD)
68
+ #
69
+ # @param state [Symbol, Dataleon::Models::IndividualListParams::State] Filter by individual status (must be one of the allowed values)
70
+ #
71
+ # @param status [Symbol, Dataleon::Models::IndividualListParams::Status] Filter by individual status (must be one of the allowed values)
72
+ #
73
+ # @param workspace_id [String] Filter by workspace ID
74
+ #
75
+ # @param request_options [Dataleon::RequestOptions, Hash{Symbol=>Object}]
76
+
77
+ # Filter by individual status (must be one of the allowed values)
78
+ module State
79
+ extend Dataleon::Internal::Type::Enum
80
+
81
+ VOID = :VOID
82
+ WAITING = :WAITING
83
+ STARTED = :STARTED
84
+ RUNNING = :RUNNING
85
+ PROCESSED = :PROCESSED
86
+ FAILED = :FAILED
87
+ ABORTED = :ABORTED
88
+ EXPIRED = :EXPIRED
89
+ DELETED = :DELETED
90
+
91
+ # @!method self.values
92
+ # @return [Array<Symbol>]
93
+ end
94
+
95
+ # Filter by individual status (must be one of the allowed values)
96
+ module Status
97
+ extend Dataleon::Internal::Type::Enum
98
+
99
+ REJECTED = :rejected
100
+ NEED_REVIEW = :need_review
101
+ APPROVED = :approved
102
+
103
+ # @!method self.values
104
+ # @return [Array<Symbol>]
105
+ end
106
+ end
107
+ end
108
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dataleon
4
+ module Models
5
+ # @type [Dataleon::Internal::Type::Converter]
6
+ IndividualListResponse = Dataleon::Internal::Type::ArrayOf[-> { Dataleon::Individual }]
7
+ end
8
+ end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dataleon
4
+ module Models
5
+ # @see Dataleon::Resources::Individuals#retrieve
6
+ class IndividualRetrieveParams < Dataleon::Internal::Type::BaseModel
7
+ extend Dataleon::Internal::Type::RequestParameters::Converter
8
+ include Dataleon::Internal::Type::RequestParameters
9
+
10
+ # @!attribute document
11
+ # Include document information
12
+ #
13
+ # @return [Boolean, nil]
14
+ optional :document, Dataleon::Internal::Type::Boolean
15
+
16
+ # @!attribute scope
17
+ # Scope filter (id or scope)
18
+ #
19
+ # @return [String, nil]
20
+ optional :scope, String
21
+
22
+ # @!method initialize(document: nil, scope: nil, request_options: {})
23
+ # @param document [Boolean] Include document information
24
+ #
25
+ # @param scope [String] Scope filter (id or scope)
26
+ #
27
+ # @param request_options [Dataleon::RequestOptions, Hash{Symbol=>Object}]
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,174 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dataleon
4
+ module Models
5
+ # @see Dataleon::Resources::Individuals#update
6
+ class IndividualUpdateParams < Dataleon::Internal::Type::BaseModel
7
+ extend Dataleon::Internal::Type::RequestParameters::Converter
8
+ include Dataleon::Internal::Type::RequestParameters
9
+
10
+ # @!attribute workspace_id
11
+ # Unique identifier of the workspace where the individual is being registered.
12
+ #
13
+ # @return [String]
14
+ required :workspace_id, String
15
+
16
+ # @!attribute person
17
+ # Personal information about the individual.
18
+ #
19
+ # @return [Dataleon::Models::IndividualUpdateParams::Person, nil]
20
+ optional :person, -> { Dataleon::IndividualUpdateParams::Person }
21
+
22
+ # @!attribute source_id
23
+ # Optional identifier for tracking the source system or integration from your
24
+ # system.
25
+ #
26
+ # @return [String, nil]
27
+ optional :source_id, String
28
+
29
+ # @!attribute technical_data
30
+ # Technical metadata related to the request or processing.
31
+ #
32
+ # @return [Dataleon::Models::IndividualUpdateParams::TechnicalData, nil]
33
+ optional :technical_data, -> { Dataleon::IndividualUpdateParams::TechnicalData }
34
+
35
+ # @!method initialize(workspace_id:, person: nil, source_id: nil, technical_data: nil, request_options: {})
36
+ # Some parameter documentations has been truncated, see
37
+ # {Dataleon::Models::IndividualUpdateParams} for more details.
38
+ #
39
+ # @param workspace_id [String] Unique identifier of the workspace where the individual is being registered.
40
+ #
41
+ # @param person [Dataleon::Models::IndividualUpdateParams::Person] Personal information about the individual.
42
+ #
43
+ # @param source_id [String] Optional identifier for tracking the source system or integration from your syst
44
+ #
45
+ # @param technical_data [Dataleon::Models::IndividualUpdateParams::TechnicalData] Technical metadata related to the request or processing.
46
+ #
47
+ # @param request_options [Dataleon::RequestOptions, Hash{Symbol=>Object}]
48
+
49
+ class Person < Dataleon::Internal::Type::BaseModel
50
+ # @!attribute birthday
51
+ # Date of birth in DD/MM/YYYY format.
52
+ #
53
+ # @return [String, nil]
54
+ optional :birthday, String
55
+
56
+ # @!attribute email
57
+ # Email address of the individual.
58
+ #
59
+ # @return [String, nil]
60
+ optional :email, String
61
+
62
+ # @!attribute first_name
63
+ # First name of the individual.
64
+ #
65
+ # @return [String, nil]
66
+ optional :first_name, String
67
+
68
+ # @!attribute gender
69
+ # Gender of the individual (M for male, F for female).
70
+ #
71
+ # @return [Symbol, Dataleon::Models::IndividualUpdateParams::Person::Gender, nil]
72
+ optional :gender, enum: -> { Dataleon::IndividualUpdateParams::Person::Gender }
73
+
74
+ # @!attribute last_name
75
+ # Last name (family name) of the individual.
76
+ #
77
+ # @return [String, nil]
78
+ optional :last_name, String
79
+
80
+ # @!attribute maiden_name
81
+ # Maiden name, if applicable.
82
+ #
83
+ # @return [String, nil]
84
+ optional :maiden_name, String
85
+
86
+ # @!attribute phone_number
87
+ # Phone number of the individual.
88
+ #
89
+ # @return [String, nil]
90
+ optional :phone_number, String
91
+
92
+ # @!method initialize(birthday: nil, email: nil, first_name: nil, gender: nil, last_name: nil, maiden_name: nil, phone_number: nil)
93
+ # Personal information about the individual.
94
+ #
95
+ # @param birthday [String] Date of birth in DD/MM/YYYY format.
96
+ #
97
+ # @param email [String] Email address of the individual.
98
+ #
99
+ # @param first_name [String] First name of the individual.
100
+ #
101
+ # @param gender [Symbol, Dataleon::Models::IndividualUpdateParams::Person::Gender] Gender of the individual (M for male, F for female).
102
+ #
103
+ # @param last_name [String] Last name (family name) of the individual.
104
+ #
105
+ # @param maiden_name [String] Maiden name, if applicable.
106
+ #
107
+ # @param phone_number [String] Phone number of the individual.
108
+
109
+ # Gender of the individual (M for male, F for female).
110
+ #
111
+ # @see Dataleon::Models::IndividualUpdateParams::Person#gender
112
+ module Gender
113
+ extend Dataleon::Internal::Type::Enum
114
+
115
+ M = :M
116
+ F = :F
117
+
118
+ # @!method self.values
119
+ # @return [Array<Symbol>]
120
+ end
121
+ end
122
+
123
+ class TechnicalData < Dataleon::Internal::Type::BaseModel
124
+ # @!attribute active_aml_suspicions
125
+ # Flag indicating whether there are active research AML (Anti-Money Laundering)
126
+ # suspicions for the individual when you apply for a new entry or get an existing
127
+ # one.
128
+ #
129
+ # @return [Boolean, nil]
130
+ optional :active_aml_suspicions, Dataleon::Internal::Type::Boolean
131
+
132
+ # @!attribute callback_url
133
+ # URL to call back upon completion of processing.
134
+ #
135
+ # @return [String, nil]
136
+ optional :callback_url, String
137
+
138
+ # @!attribute callback_url_notification
139
+ # URL for receive notifications about the processing state or status.
140
+ #
141
+ # @return [String, nil]
142
+ optional :callback_url_notification, String
143
+
144
+ # @!attribute language
145
+ # Preferred language for communication (e.g., "eng", "fra").
146
+ #
147
+ # @return [String, nil]
148
+ optional :language, String
149
+
150
+ # @!attribute raw_data
151
+ # Flag indicating whether to include raw data in the response.
152
+ #
153
+ # @return [Boolean, nil]
154
+ optional :raw_data, Dataleon::Internal::Type::Boolean
155
+
156
+ # @!method initialize(active_aml_suspicions: nil, callback_url: nil, callback_url_notification: nil, language: nil, raw_data: nil)
157
+ # Some parameter documentations has been truncated, see
158
+ # {Dataleon::Models::IndividualUpdateParams::TechnicalData} for more details.
159
+ #
160
+ # Technical metadata related to the request or processing.
161
+ #
162
+ # @param active_aml_suspicions [Boolean] Flag indicating whether there are active research AML (Anti-Money Laundering) su
163
+ #
164
+ # @param callback_url [String] URL to call back upon completion of processing.
165
+ #
166
+ # @param callback_url_notification [String] URL for receive notifications about the processing state or status.
167
+ #
168
+ # @param language [String] Preferred language for communication (e.g., "eng", "fra").
169
+ #
170
+ # @param raw_data [Boolean] Flag indicating whether to include raw data in the response.
171
+ end
172
+ end
173
+ end
174
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dataleon
4
+ module Models
5
+ module Individuals
6
+ # @see Dataleon::Resources::Individuals::Documents#list
7
+ class DocumentListParams < Dataleon::Internal::Type::BaseModel
8
+ extend Dataleon::Internal::Type::RequestParameters::Converter
9
+ include Dataleon::Internal::Type::RequestParameters
10
+
11
+ # @!method initialize(request_options: {})
12
+ # @param request_options [Dataleon::RequestOptions, Hash{Symbol=>Object}]
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,98 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dataleon
4
+ module Models
5
+ module Individuals
6
+ # @see Dataleon::Resources::Individuals::Documents#list
7
+ class DocumentResponse < Dataleon::Internal::Type::BaseModel
8
+ # @!attribute documents
9
+ # List of documents associated with the response.
10
+ #
11
+ # @return [Array<Dataleon::Models::Individuals::DocumentResponse::Document>, nil]
12
+ optional :documents,
13
+ -> { Dataleon::Internal::Type::ArrayOf[Dataleon::Individuals::DocumentResponse::Document] }
14
+
15
+ # @!attribute total_document
16
+ # Total number of documents available in the response.
17
+ #
18
+ # @return [Integer, nil]
19
+ optional :total_document, Integer
20
+
21
+ # @!method initialize(documents: nil, total_document: nil)
22
+ # @param documents [Array<Dataleon::Models::Individuals::DocumentResponse::Document>] List of documents associated with the response.
23
+ #
24
+ # @param total_document [Integer] Total number of documents available in the response.
25
+
26
+ class Document < Dataleon::Internal::Type::BaseModel
27
+ # @!attribute id
28
+ # Unique identifier of the document.
29
+ #
30
+ # @return [String, nil]
31
+ optional :id, String
32
+
33
+ # @!attribute document_type
34
+ # Functional type of the document (e.g., identity document, invoice).
35
+ #
36
+ # @return [String, nil]
37
+ optional :document_type, String
38
+
39
+ # @!attribute filename
40
+ # Original filename of the uploaded document.
41
+ #
42
+ # @return [String, nil]
43
+ optional :filename, String
44
+
45
+ # @!attribute name
46
+ # Human-readable name of the document.
47
+ #
48
+ # @return [String, nil]
49
+ optional :name, String
50
+
51
+ # @!attribute signed_url
52
+ # Secure URL to access the document.
53
+ #
54
+ # @return [String, nil]
55
+ optional :signed_url, String
56
+
57
+ # @!attribute state
58
+ # Processing state of the document (e.g., WAITING, STARTED, RUNNING, PROCESSED).
59
+ #
60
+ # @return [String, nil]
61
+ optional :state, String
62
+
63
+ # @!attribute status
64
+ # Validation status of the document (e.g., need_review, approved, rejected).
65
+ #
66
+ # @return [String, nil]
67
+ optional :status, String
68
+
69
+ # @!attribute workspace_id
70
+ # Identifier of the workspace to which the document belongs.
71
+ #
72
+ # @return [String, nil]
73
+ optional :workspace_id, String
74
+
75
+ # @!method initialize(id: nil, document_type: nil, filename: nil, name: nil, signed_url: nil, state: nil, status: nil, workspace_id: nil)
76
+ # Represents a document stored and processed by the system, such as an identity
77
+ # card or a PDF contract.
78
+ #
79
+ # @param id [String] Unique identifier of the document.
80
+ #
81
+ # @param document_type [String] Functional type of the document (e.g., identity document, invoice).
82
+ #
83
+ # @param filename [String] Original filename of the uploaded document.
84
+ #
85
+ # @param name [String] Human-readable name of the document.
86
+ #
87
+ # @param signed_url [String] Secure URL to access the document.
88
+ #
89
+ # @param state [String] Processing state of the document (e.g., WAITING, STARTED, RUNNING, PROCESSED).
90
+ #
91
+ # @param status [String] Validation status of the document (e.g., need_review, approved, rejected).
92
+ #
93
+ # @param workspace_id [String] Identifier of the workspace to which the document belongs.
94
+ end
95
+ end
96
+ end
97
+ end
98
+ end