finch-api 0.1.0.pre.alpha.3 → 0.1.0.pre.alpha.5

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 (211) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -8
  3. data/lib/finch-api/client.rb +1 -1
  4. data/lib/finch-api/individuals_page.rb +4 -4
  5. data/lib/finch-api/models/access_token_create_params.rb +1 -1
  6. data/lib/finch-api/models/account_disconnect_params.rb +1 -1
  7. data/lib/finch-api/models/account_introspect_params.rb +1 -1
  8. data/lib/finch-api/models/connect/session_new_params.rb +1 -1
  9. data/lib/finch-api/models/connect/session_reauthenticate_params.rb +1 -1
  10. data/lib/finch-api/models/hris/benefit_create_params.rb +1 -1
  11. data/lib/finch-api/models/hris/benefit_list_params.rb +1 -1
  12. data/lib/finch-api/models/hris/benefit_list_supported_benefits_params.rb +1 -1
  13. data/lib/finch-api/models/hris/benefit_retrieve_params.rb +1 -1
  14. data/lib/finch-api/models/hris/benefit_update_params.rb +1 -1
  15. data/lib/finch-api/models/hris/benefits/individual_enroll_many_params.rb +1 -1
  16. data/lib/finch-api/models/hris/benefits/individual_enrolled_ids_params.rb +1 -1
  17. data/lib/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rb +1 -1
  18. data/lib/finch-api/models/hris/benefits/individual_unenroll_many_params.rb +1 -1
  19. data/lib/finch-api/models/hris/company_retrieve_params.rb +1 -1
  20. data/lib/finch-api/models/hris/directory_list_individuals_params.rb +1 -1
  21. data/lib/finch-api/models/hris/directory_list_params.rb +1 -1
  22. data/lib/finch-api/models/hris/document_list_params.rb +1 -1
  23. data/lib/finch-api/models/hris/document_retreive_params.rb +1 -1
  24. data/lib/finch-api/models/hris/employment_retrieve_many_params.rb +1 -1
  25. data/lib/finch-api/models/hris/individual_retrieve_many_params.rb +1 -1
  26. data/lib/finch-api/models/hris/pay_statement_retrieve_many_params.rb +1 -1
  27. data/lib/finch-api/models/hris/payment_list_params.rb +1 -1
  28. data/lib/finch-api/models/introspection.rb +12 -1
  29. data/lib/finch-api/models/jobs/automated_create_params.rb +1 -1
  30. data/lib/finch-api/models/jobs/automated_list_params.rb +1 -1
  31. data/lib/finch-api/models/jobs/automated_retrieve_params.rb +1 -1
  32. data/lib/finch-api/models/jobs/manual_retrieve_params.rb +1 -1
  33. data/lib/finch-api/models/payroll/pay_group_list_params.rb +1 -1
  34. data/lib/finch-api/models/payroll/pay_group_retrieve_params.rb +1 -1
  35. data/lib/finch-api/models/provider_list_params.rb +1 -1
  36. data/lib/finch-api/models/request_forwarding_forward_params.rb +1 -1
  37. data/lib/finch-api/models/sandbox/company_update_params.rb +1 -1
  38. data/lib/finch-api/models/sandbox/connection_create_params.rb +1 -1
  39. data/lib/finch-api/models/sandbox/connections/account_create_params.rb +1 -1
  40. data/lib/finch-api/models/sandbox/connections/account_update_params.rb +1 -1
  41. data/lib/finch-api/models/sandbox/directory_create_params.rb +1 -1
  42. data/lib/finch-api/models/sandbox/employment_update_params.rb +1 -1
  43. data/lib/finch-api/models/sandbox/individual_update_params.rb +1 -1
  44. data/lib/finch-api/models/sandbox/job_create_params.rb +1 -1
  45. data/lib/finch-api/models/sandbox/jobs/configuration_retrieve_params.rb +1 -1
  46. data/lib/finch-api/models/sandbox/jobs/configuration_update_params.rb +1 -1
  47. data/lib/finch-api/models/sandbox/payment_create_params.rb +1 -1
  48. data/lib/finch-api/page.rb +4 -4
  49. data/lib/finch-api/request_options.rb +0 -33
  50. data/lib/finch-api/responses_page.rb +3 -3
  51. data/lib/finch-api/single_page.rb +3 -3
  52. data/lib/finch-api/transport/base_client.rb +459 -0
  53. data/lib/finch-api/transport/pooled_net_requester.rb +182 -0
  54. data/lib/finch-api/type/array_of.rb +110 -0
  55. data/lib/finch-api/type/base_model.rb +355 -0
  56. data/lib/finch-api/type/base_page.rb +61 -0
  57. data/lib/finch-api/type/boolean_model.rb +52 -0
  58. data/lib/finch-api/type/converter.rb +211 -0
  59. data/lib/finch-api/type/enum.rb +105 -0
  60. data/lib/finch-api/type/hash_of.rb +136 -0
  61. data/lib/finch-api/type/request_parameters.rb +38 -0
  62. data/lib/finch-api/type/union.rb +204 -0
  63. data/lib/finch-api/type/unknown.rb +56 -0
  64. data/lib/finch-api/type.rb +23 -0
  65. data/lib/finch-api/util.rb +3 -5
  66. data/lib/finch-api/version.rb +1 -1
  67. data/lib/finch-api.rb +13 -5
  68. data/rbi/lib/finch-api/client.rbi +1 -1
  69. data/rbi/lib/finch-api/individuals_page.rbi +1 -1
  70. data/rbi/lib/finch-api/models/access_token_create_params.rbi +1 -1
  71. data/rbi/lib/finch-api/models/account_disconnect_params.rbi +1 -1
  72. data/rbi/lib/finch-api/models/account_introspect_params.rbi +1 -1
  73. data/rbi/lib/finch-api/models/connect/session_new_params.rbi +1 -1
  74. data/rbi/lib/finch-api/models/connect/session_reauthenticate_params.rbi +1 -1
  75. data/rbi/lib/finch-api/models/hris/benefit_create_params.rbi +1 -1
  76. data/rbi/lib/finch-api/models/hris/benefit_list_params.rbi +1 -1
  77. data/rbi/lib/finch-api/models/hris/benefit_list_supported_benefits_params.rbi +1 -1
  78. data/rbi/lib/finch-api/models/hris/benefit_retrieve_params.rbi +1 -1
  79. data/rbi/lib/finch-api/models/hris/benefit_update_params.rbi +1 -1
  80. data/rbi/lib/finch-api/models/hris/benefits/individual_enroll_many_params.rbi +1 -1
  81. data/rbi/lib/finch-api/models/hris/benefits/individual_enrolled_ids_params.rbi +1 -1
  82. data/rbi/lib/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rbi +1 -1
  83. data/rbi/lib/finch-api/models/hris/benefits/individual_unenroll_many_params.rbi +1 -1
  84. data/rbi/lib/finch-api/models/hris/company_retrieve_params.rbi +1 -1
  85. data/rbi/lib/finch-api/models/hris/directory_list_individuals_params.rbi +1 -1
  86. data/rbi/lib/finch-api/models/hris/directory_list_params.rbi +1 -1
  87. data/rbi/lib/finch-api/models/hris/document_list_params.rbi +1 -1
  88. data/rbi/lib/finch-api/models/hris/document_retreive_params.rbi +1 -1
  89. data/rbi/lib/finch-api/models/hris/employment_retrieve_many_params.rbi +1 -1
  90. data/rbi/lib/finch-api/models/hris/individual_retrieve_many_params.rbi +1 -1
  91. data/rbi/lib/finch-api/models/hris/pay_statement_retrieve_many_params.rbi +1 -1
  92. data/rbi/lib/finch-api/models/hris/payment_list_params.rbi +1 -1
  93. data/rbi/lib/finch-api/models/introspection.rbi +20 -3
  94. data/rbi/lib/finch-api/models/jobs/automated_create_params.rbi +1 -1
  95. data/rbi/lib/finch-api/models/jobs/automated_list_params.rbi +1 -1
  96. data/rbi/lib/finch-api/models/jobs/automated_retrieve_params.rbi +1 -1
  97. data/rbi/lib/finch-api/models/jobs/manual_retrieve_params.rbi +1 -1
  98. data/rbi/lib/finch-api/models/payroll/pay_group_list_params.rbi +1 -1
  99. data/rbi/lib/finch-api/models/payroll/pay_group_retrieve_params.rbi +1 -1
  100. data/rbi/lib/finch-api/models/provider_list_params.rbi +1 -1
  101. data/rbi/lib/finch-api/models/request_forwarding_forward_params.rbi +1 -1
  102. data/rbi/lib/finch-api/models/sandbox/company_update_params.rbi +1 -1
  103. data/rbi/lib/finch-api/models/sandbox/connection_create_params.rbi +1 -1
  104. data/rbi/lib/finch-api/models/sandbox/connections/account_create_params.rbi +1 -1
  105. data/rbi/lib/finch-api/models/sandbox/connections/account_update_params.rbi +1 -1
  106. data/rbi/lib/finch-api/models/sandbox/directory_create_params.rbi +1 -1
  107. data/rbi/lib/finch-api/models/sandbox/directory_create_response.rbi +1 -1
  108. data/rbi/lib/finch-api/models/sandbox/employment_update_params.rbi +1 -1
  109. data/rbi/lib/finch-api/models/sandbox/individual_update_params.rbi +1 -1
  110. data/rbi/lib/finch-api/models/sandbox/job_create_params.rbi +1 -1
  111. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_retrieve_params.rbi +1 -1
  112. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_retrieve_response.rbi +4 -1
  113. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_update_params.rbi +1 -1
  114. data/rbi/lib/finch-api/models/sandbox/payment_create_params.rbi +1 -1
  115. data/rbi/lib/finch-api/page.rbi +1 -1
  116. data/rbi/lib/finch-api/request_options.rbi +0 -15
  117. data/rbi/lib/finch-api/responses_page.rbi +1 -1
  118. data/rbi/lib/finch-api/single_page.rbi +1 -1
  119. data/rbi/lib/finch-api/transport/base_client.rbi +204 -0
  120. data/rbi/lib/finch-api/transport/pooled_net_requester.rbi +64 -0
  121. data/rbi/lib/finch-api/type/array_of.rbi +82 -0
  122. data/rbi/lib/finch-api/type/base_model.rbi +191 -0
  123. data/rbi/lib/finch-api/type/base_page.rbi +38 -0
  124. data/rbi/lib/finch-api/type/boolean_model.rbi +41 -0
  125. data/rbi/lib/finch-api/type/converter.rbi +101 -0
  126. data/rbi/lib/finch-api/type/enum.rbi +58 -0
  127. data/rbi/lib/finch-api/type/hash_of.rbi +86 -0
  128. data/rbi/lib/finch-api/type/request_parameters.rbi +20 -0
  129. data/rbi/lib/finch-api/type/union.rbi +66 -0
  130. data/rbi/lib/finch-api/type/unknown.rbi +37 -0
  131. data/rbi/lib/finch-api/type.rbi +23 -0
  132. data/rbi/lib/finch-api/version.rbi +1 -1
  133. data/sig/finch-api/client.rbs +1 -1
  134. data/sig/finch-api/individuals_page.rbs +1 -1
  135. data/sig/finch-api/models/access_token_create_params.rbs +1 -1
  136. data/sig/finch-api/models/account_disconnect_params.rbs +1 -1
  137. data/sig/finch-api/models/account_introspect_params.rbs +1 -1
  138. data/sig/finch-api/models/connect/session_new_params.rbs +1 -1
  139. data/sig/finch-api/models/connect/session_reauthenticate_params.rbs +1 -1
  140. data/sig/finch-api/models/hris/benefit_create_params.rbs +1 -1
  141. data/sig/finch-api/models/hris/benefit_list_params.rbs +1 -1
  142. data/sig/finch-api/models/hris/benefit_list_supported_benefits_params.rbs +1 -1
  143. data/sig/finch-api/models/hris/benefit_retrieve_params.rbs +1 -1
  144. data/sig/finch-api/models/hris/benefit_update_params.rbs +1 -1
  145. data/sig/finch-api/models/hris/benefits/individual_enroll_many_params.rbs +1 -1
  146. data/sig/finch-api/models/hris/benefits/individual_enrolled_ids_params.rbs +1 -1
  147. data/sig/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rbs +1 -1
  148. data/sig/finch-api/models/hris/benefits/individual_unenroll_many_params.rbs +1 -1
  149. data/sig/finch-api/models/hris/company_retrieve_params.rbs +1 -1
  150. data/sig/finch-api/models/hris/directory_list_individuals_params.rbs +1 -1
  151. data/sig/finch-api/models/hris/directory_list_params.rbs +1 -1
  152. data/sig/finch-api/models/hris/document_list_params.rbs +1 -1
  153. data/sig/finch-api/models/hris/document_retreive_params.rbs +1 -1
  154. data/sig/finch-api/models/hris/employment_retrieve_many_params.rbs +1 -1
  155. data/sig/finch-api/models/hris/individual_retrieve_many_params.rbs +1 -1
  156. data/sig/finch-api/models/hris/pay_statement_retrieve_many_params.rbs +1 -1
  157. data/sig/finch-api/models/hris/payment_list_params.rbs +1 -1
  158. data/sig/finch-api/models/introspection.rbs +10 -1
  159. data/sig/finch-api/models/jobs/automated_create_params.rbs +1 -1
  160. data/sig/finch-api/models/jobs/automated_list_params.rbs +1 -1
  161. data/sig/finch-api/models/jobs/automated_retrieve_params.rbs +1 -1
  162. data/sig/finch-api/models/jobs/manual_retrieve_params.rbs +1 -1
  163. data/sig/finch-api/models/payroll/pay_group_list_params.rbs +1 -1
  164. data/sig/finch-api/models/payroll/pay_group_retrieve_params.rbs +1 -1
  165. data/sig/finch-api/models/provider_list_params.rbs +1 -1
  166. data/sig/finch-api/models/request_forwarding_forward_params.rbs +1 -1
  167. data/sig/finch-api/models/sandbox/company_update_params.rbs +1 -1
  168. data/sig/finch-api/models/sandbox/connection_create_params.rbs +1 -1
  169. data/sig/finch-api/models/sandbox/connections/account_create_params.rbs +1 -1
  170. data/sig/finch-api/models/sandbox/connections/account_update_params.rbs +1 -1
  171. data/sig/finch-api/models/sandbox/directory_create_params.rbs +1 -1
  172. data/sig/finch-api/models/sandbox/employment_update_params.rbs +1 -1
  173. data/sig/finch-api/models/sandbox/individual_update_params.rbs +1 -1
  174. data/sig/finch-api/models/sandbox/job_create_params.rbs +1 -1
  175. data/sig/finch-api/models/sandbox/jobs/configuration_retrieve_params.rbs +1 -1
  176. data/sig/finch-api/models/sandbox/jobs/configuration_update_params.rbs +1 -1
  177. data/sig/finch-api/models/sandbox/payment_create_params.rbs +1 -1
  178. data/sig/finch-api/page.rbs +1 -1
  179. data/sig/finch-api/request_options.rbs +0 -10
  180. data/sig/finch-api/responses_page.rbs +1 -1
  181. data/sig/finch-api/single_page.rbs +1 -1
  182. data/sig/finch-api/transport/base_client.rbs +110 -0
  183. data/sig/finch-api/transport/pooled_net_requester.rbs +39 -0
  184. data/sig/finch-api/type/array_of.rbs +36 -0
  185. data/sig/finch-api/type/base_model.rbs +73 -0
  186. data/sig/finch-api/type/base_page.rbs +22 -0
  187. data/sig/finch-api/type/boolean_model.rbs +18 -0
  188. data/sig/finch-api/type/converter.rbs +36 -0
  189. data/sig/finch-api/type/enum.rbs +22 -0
  190. data/sig/finch-api/type/hash_of.rbs +36 -0
  191. data/sig/finch-api/type/request_parameters.rbs +13 -0
  192. data/sig/finch-api/type/union.rbs +37 -0
  193. data/sig/finch-api/type/unknown.rbs +18 -0
  194. data/sig/finch-api/type.rbs +22 -0
  195. data/sig/finch-api/version.rbs +1 -1
  196. metadata +41 -17
  197. data/lib/finch-api/base_client.rb +0 -457
  198. data/lib/finch-api/base_model.rb +0 -1226
  199. data/lib/finch-api/base_page.rb +0 -59
  200. data/lib/finch-api/extern.rb +0 -7
  201. data/lib/finch-api/pooled_net_requester.rb +0 -180
  202. data/rbi/lib/finch-api/base_client.rbi +0 -196
  203. data/rbi/lib/finch-api/base_model.rbi +0 -643
  204. data/rbi/lib/finch-api/base_page.rbi +0 -36
  205. data/rbi/lib/finch-api/extern.rbi +0 -7
  206. data/rbi/lib/finch-api/pooled_net_requester.rbi +0 -59
  207. data/sig/finch-api/base_client.rbs +0 -106
  208. data/sig/finch-api/base_model.rbs +0 -260
  209. data/sig/finch-api/base_page.rbs +0 -20
  210. data/sig/finch-api/extern.rbs +0 -4
  211. data/sig/finch-api/pooled_net_requester.rbs +0 -37
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Type
5
+ # @api private
6
+ #
7
+ # @abstract
8
+ #
9
+ # When we don't know what to expect for the value.
10
+ class Unknown
11
+ extend FinchAPI::Type::Converter
12
+
13
+ # rubocop:disable Lint/UnusedMethodArgument
14
+
15
+ # @param other [Object]
16
+ #
17
+ # @return [Boolean]
18
+ def self.===(other) = true
19
+
20
+ # @param other [Object]
21
+ #
22
+ # @return [Boolean]
23
+ def self.==(other) = other.is_a?(Class) && other <= FinchAPI::Unknown
24
+
25
+ class << self
26
+ # @api private
27
+ #
28
+ # @param value [Object]
29
+ #
30
+ # @param state [Hash{Symbol=>Object}] .
31
+ #
32
+ # @option state [Boolean, :strong] :strictness
33
+ #
34
+ # @option state [Hash{Symbol=>Object}] :exactness
35
+ #
36
+ # @option state [Integer] :branched
37
+ #
38
+ # @return [Object]
39
+ def coerce(value, state:)
40
+ state.fetch(:exactness)[:yes] += 1
41
+ value
42
+ end
43
+
44
+ # @!parse
45
+ # # @api private
46
+ # #
47
+ # # @param value [Object]
48
+ # #
49
+ # # @return [Object]
50
+ # def dump(value) = super
51
+ end
52
+
53
+ # rubocop:enable Lint/UnusedMethodArgument
54
+ end
55
+ end
56
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ Unknown = FinchAPI::Type::Unknown
5
+
6
+ BooleanModel = FinchAPI::Type::BooleanModel
7
+
8
+ Enum = FinchAPI::Type::Enum
9
+
10
+ Union = FinchAPI::Type::Union
11
+
12
+ ArrayOf = FinchAPI::Type::ArrayOf
13
+
14
+ HashOf = FinchAPI::Type::HashOf
15
+
16
+ BaseModel = FinchAPI::Type::BaseModel
17
+
18
+ RequestParameters = FinchAPI::Type::RequestParameters
19
+
20
+ # This module contains various type declarations.
21
+ module Type
22
+ end
23
+ end
@@ -75,7 +75,7 @@ module FinchAPI
75
75
  def coerce_boolean(input)
76
76
  case input.is_a?(String) ? input.downcase : input
77
77
  in Numeric
78
- !input.zero?
78
+ input.nonzero?
79
79
  in "true"
80
80
  true
81
81
  in "false"
@@ -165,14 +165,12 @@ module FinchAPI
165
165
  private def deep_merge_lr(lhs, rhs, concat: false)
166
166
  case [lhs, rhs, concat]
167
167
  in [Hash, Hash, _]
168
- # rubocop:disable Style/YodaCondition
169
- rhs_cleaned = rhs.reject { |_, val| OMIT == val }
168
+ rhs_cleaned = rhs.reject { _2 == FinchAPI::Util::OMIT }
170
169
  lhs
171
- .reject { |key, _| OMIT == rhs[key] }
170
+ .reject { |key, _| rhs[key] == FinchAPI::Util::OMIT }
172
171
  .merge(rhs_cleaned) do |_, old_val, new_val|
173
172
  deep_merge_lr(old_val, new_val, concat: concat)
174
173
  end
175
- # rubocop:enable Style/YodaCondition
176
174
  in [Array, Array, true]
177
175
  lhs.concat(rhs)
178
176
  else
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module FinchAPI
4
- VERSION = "0.1.0-alpha.3"
4
+ VERSION = "0.1.0-alpha.5"
5
5
  end
data/lib/finch-api.rb CHANGED
@@ -36,13 +36,21 @@ require "connection_pool"
36
36
  # Package files.
37
37
  require_relative "finch-api/version"
38
38
  require_relative "finch-api/util"
39
- require_relative "finch-api/extern"
40
- require_relative "finch-api/base_model"
41
- require_relative "finch-api/base_page"
39
+ require_relative "finch-api/type/converter"
40
+ require_relative "finch-api/type/unknown"
41
+ require_relative "finch-api/type/boolean_model"
42
+ require_relative "finch-api/type/enum"
43
+ require_relative "finch-api/type/union"
44
+ require_relative "finch-api/type/array_of"
45
+ require_relative "finch-api/type/hash_of"
46
+ require_relative "finch-api/type/base_model"
47
+ require_relative "finch-api/type/base_page"
48
+ require_relative "finch-api/type/request_parameters"
49
+ require_relative "finch-api/type"
42
50
  require_relative "finch-api/request_options"
43
51
  require_relative "finch-api/errors"
44
- require_relative "finch-api/base_client"
45
- require_relative "finch-api/pooled_net_requester"
52
+ require_relative "finch-api/transport/base_client"
53
+ require_relative "finch-api/transport/pooled_net_requester"
46
54
  require_relative "finch-api/client"
47
55
  require_relative "finch-api/individuals_page"
48
56
  require_relative "finch-api/page"
@@ -1,7 +1,7 @@
1
1
  # typed: strong
2
2
 
3
3
  module FinchAPI
4
- class Client < FinchAPI::BaseClient
4
+ class Client < FinchAPI::Transport::BaseClient
5
5
  DEFAULT_MAX_RETRIES = 2
6
6
 
7
7
  DEFAULT_TIMEOUT_IN_SECONDS = T.let(60.0, Float)
@@ -2,7 +2,7 @@
2
2
 
3
3
  module FinchAPI
4
4
  class IndividualsPage
5
- include FinchAPI::BasePage
5
+ include FinchAPI::Type::BasePage
6
6
 
7
7
  Elem = type_member
8
8
 
@@ -3,7 +3,7 @@
3
3
  module FinchAPI
4
4
  module Models
5
5
  class AccessTokenCreateParams < FinchAPI::BaseModel
6
- extend FinchAPI::RequestParameters::Converter
6
+ extend FinchAPI::Type::RequestParameters::Converter
7
7
  include FinchAPI::RequestParameters
8
8
 
9
9
  sig { returns(String) }
@@ -3,7 +3,7 @@
3
3
  module FinchAPI
4
4
  module Models
5
5
  class AccountDisconnectParams < FinchAPI::BaseModel
6
- extend FinchAPI::RequestParameters::Converter
6
+ extend FinchAPI::Type::RequestParameters::Converter
7
7
  include FinchAPI::RequestParameters
8
8
 
9
9
  sig do
@@ -3,7 +3,7 @@
3
3
  module FinchAPI
4
4
  module Models
5
5
  class AccountIntrospectParams < FinchAPI::BaseModel
6
- extend FinchAPI::RequestParameters::Converter
6
+ extend FinchAPI::Type::RequestParameters::Converter
7
7
  include FinchAPI::RequestParameters
8
8
 
9
9
  sig do
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Connect
6
6
  class SessionNewParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig { returns(String) }
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Connect
6
6
  class SessionReauthenticateParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # The ID of the existing connection to reauthenticate
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class BenefitCreateParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # Name of the benefit as it appears in the provider and pay statements. Recommend
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class BenefitListParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig do
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class BenefitListSupportedBenefitsParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig do
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class BenefitRetrieveParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig do
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class BenefitUpdateParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # Updated name or description.
@@ -5,7 +5,7 @@ module FinchAPI
5
5
  module HRIS
6
6
  module Benefits
7
7
  class IndividualEnrollManyParams < FinchAPI::BaseModel
8
- extend FinchAPI::RequestParameters::Converter
8
+ extend FinchAPI::Type::RequestParameters::Converter
9
9
  include FinchAPI::RequestParameters
10
10
 
11
11
  # Array of the individual_id to enroll and a configuration object.
@@ -5,7 +5,7 @@ module FinchAPI
5
5
  module HRIS
6
6
  module Benefits
7
7
  class IndividualEnrolledIDsParams < FinchAPI::BaseModel
8
- extend FinchAPI::RequestParameters::Converter
8
+ extend FinchAPI::Type::RequestParameters::Converter
9
9
  include FinchAPI::RequestParameters
10
10
 
11
11
  sig do
@@ -5,7 +5,7 @@ module FinchAPI
5
5
  module HRIS
6
6
  module Benefits
7
7
  class IndividualRetrieveManyBenefitsParams < FinchAPI::BaseModel
8
- extend FinchAPI::RequestParameters::Converter
8
+ extend FinchAPI::Type::RequestParameters::Converter
9
9
  include FinchAPI::RequestParameters
10
10
 
11
11
  # comma-delimited list of stable Finch uuids for each individual. If empty,
@@ -5,7 +5,7 @@ module FinchAPI
5
5
  module HRIS
6
6
  module Benefits
7
7
  class IndividualUnenrollManyParams < FinchAPI::BaseModel
8
- extend FinchAPI::RequestParameters::Converter
8
+ extend FinchAPI::Type::RequestParameters::Converter
9
9
  include FinchAPI::RequestParameters
10
10
 
11
11
  # Array of individual_ids to unenroll.
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class CompanyRetrieveParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig do
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class DirectoryListIndividualsParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # Number of employees to return (defaults to all)
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class DirectoryListParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # Number of employees to return (defaults to all)
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class DocumentListParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # Comma-delimited list of stable Finch uuids for each individual. If empty,
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class DocumentRetreiveParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig do
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class EmploymentRetrieveManyParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # The array of batch requests.
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class IndividualRetrieveManyParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig { returns(T.nilable(FinchAPI::Models::HRIS::IndividualRetrieveManyParams::Options)) }
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class PayStatementRetrieveManyParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # The array of batch requests.
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module HRIS
6
6
  class PaymentListParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # The end date to retrieve payments by a company (inclusive) in `YYYY-MM-DD`
@@ -265,6 +265,13 @@ module FinchAPI
265
265
  end
266
266
 
267
267
  class ConnectionStatus < FinchAPI::BaseModel
268
+ # The datetime when the connection was last successfully synced.
269
+ sig { returns(T.nilable(Time)) }
270
+ attr_reader :last_successful_sync
271
+
272
+ sig { params(last_successful_sync: Time).void }
273
+ attr_writer :last_successful_sync
274
+
268
275
  sig { returns(T.nilable(String)) }
269
276
  attr_reader :message
270
277
 
@@ -278,12 +285,22 @@ module FinchAPI
278
285
  attr_writer :status
279
286
 
280
287
  sig do
281
- params(message: String, status: FinchAPI::Models::ConnectionStatusType::OrSymbol).returns(T.attached_class)
288
+ params(
289
+ last_successful_sync: Time,
290
+ message: String,
291
+ status: FinchAPI::Models::ConnectionStatusType::OrSymbol
292
+ )
293
+ .returns(T.attached_class)
282
294
  end
283
- def self.new(message: nil, status: nil)
295
+ def self.new(last_successful_sync: nil, message: nil, status: nil)
284
296
  end
285
297
 
286
- sig { override.returns({message: String, status: FinchAPI::Models::ConnectionStatusType::TaggedSymbol}) }
298
+ sig do
299
+ override
300
+ .returns(
301
+ {last_successful_sync: Time, message: String, status: FinchAPI::Models::ConnectionStatusType::TaggedSymbol}
302
+ )
303
+ end
287
304
  def to_hash
288
305
  end
289
306
  end
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Jobs
6
6
  class AutomatedCreateParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # The type of job to start.
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Jobs
6
6
  class AutomatedListParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # Number of items to return
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Jobs
6
6
  class AutomatedRetrieveParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig do
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Jobs
6
6
  class ManualRetrieveParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig do
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Payroll
6
6
  class PayGroupListParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig { returns(T.nilable(String)) }
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Payroll
6
6
  class PayGroupRetrieveParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig do
@@ -3,7 +3,7 @@
3
3
  module FinchAPI
4
4
  module Models
5
5
  class ProviderListParams < FinchAPI::BaseModel
6
- extend FinchAPI::RequestParameters::Converter
6
+ extend FinchAPI::Type::RequestParameters::Converter
7
7
  include FinchAPI::RequestParameters
8
8
 
9
9
  sig do
@@ -3,7 +3,7 @@
3
3
  module FinchAPI
4
4
  module Models
5
5
  class RequestForwardingForwardParams < FinchAPI::BaseModel
6
- extend FinchAPI::RequestParameters::Converter
6
+ extend FinchAPI::Type::RequestParameters::Converter
7
7
  include FinchAPI::RequestParameters
8
8
 
9
9
  # The HTTP method for the forwarded request. Valid values include: `GET` , `POST`
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Sandbox
6
6
  class CompanyUpdateParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # An array of bank account objects associated with the payroll/HRIS system.
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Sandbox
6
6
  class ConnectionCreateParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # The provider associated with the connection
@@ -5,7 +5,7 @@ module FinchAPI
5
5
  module Sandbox
6
6
  module Connections
7
7
  class AccountCreateParams < FinchAPI::BaseModel
8
- extend FinchAPI::RequestParameters::Converter
8
+ extend FinchAPI::Type::RequestParameters::Converter
9
9
  include FinchAPI::RequestParameters
10
10
 
11
11
  sig { returns(String) }
@@ -5,7 +5,7 @@ module FinchAPI
5
5
  module Sandbox
6
6
  module Connections
7
7
  class AccountUpdateParams < FinchAPI::BaseModel
8
- extend FinchAPI::RequestParameters::Converter
8
+ extend FinchAPI::Type::RequestParameters::Converter
9
9
  include FinchAPI::RequestParameters
10
10
 
11
11
  sig { returns(T.nilable(FinchAPI::Models::ConnectionStatusType::OrSymbol)) }
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Sandbox
6
6
  class DirectoryCreateParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # Array of individuals to create. Takes all combined fields from `/individual` and
@@ -3,7 +3,7 @@
3
3
  module FinchAPI
4
4
  module Models
5
5
  module Sandbox
6
- DirectoryCreateResponse = T.let(FinchAPI::ArrayOf[FinchAPI::Unknown], FinchAPI::Converter)
6
+ DirectoryCreateResponse = T.let(FinchAPI::ArrayOf[FinchAPI::Unknown], FinchAPI::Type::Converter)
7
7
  end
8
8
  end
9
9
  end
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Sandbox
6
6
  class EmploymentUpdateParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # Worker's compensation classification code for this employee
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Sandbox
6
6
  class IndividualUpdateParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  sig { returns(T.nilable(String)) }
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module Models
5
5
  module Sandbox
6
6
  class JobCreateParams < FinchAPI::BaseModel
7
- extend FinchAPI::RequestParameters::Converter
7
+ extend FinchAPI::Type::RequestParameters::Converter
8
8
  include FinchAPI::RequestParameters
9
9
 
10
10
  # The type of job to start. Currently the only supported type is `data_sync_all`
@@ -5,7 +5,7 @@ module FinchAPI
5
5
  module Sandbox
6
6
  module Jobs
7
7
  class ConfigurationRetrieveParams < FinchAPI::BaseModel
8
- extend FinchAPI::RequestParameters::Converter
8
+ extend FinchAPI::Type::RequestParameters::Converter
9
9
  include FinchAPI::RequestParameters
10
10
 
11
11
  sig do
@@ -5,7 +5,10 @@ module FinchAPI
5
5
  module Sandbox
6
6
  module Jobs
7
7
  ConfigurationRetrieveResponse =
8
- T.let(FinchAPI::ArrayOf[FinchAPI::Models::Sandbox::Jobs::SandboxJobConfiguration], FinchAPI::Converter)
8
+ T.let(
9
+ FinchAPI::ArrayOf[FinchAPI::Models::Sandbox::Jobs::SandboxJobConfiguration],
10
+ FinchAPI::Type::Converter
11
+ )
9
12
  end
10
13
  end
11
14
  end
@@ -5,7 +5,7 @@ module FinchAPI
5
5
  module Sandbox
6
6
  module Jobs
7
7
  class ConfigurationUpdateParams < FinchAPI::Models::Sandbox::Jobs::SandboxJobConfiguration
8
- extend FinchAPI::RequestParameters::Converter
8
+ extend FinchAPI::Type::RequestParameters::Converter
9
9
  include FinchAPI::RequestParameters
10
10
 
11
11
  sig do