finch-api 0.1.0.pre.alpha.16 → 0.1.0.pre.alpha.17

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 (163) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +30 -0
  3. data/README.md +92 -53
  4. data/lib/finch_api/client.rb +4 -4
  5. data/lib/finch_api/errors.rb +1 -1
  6. data/lib/finch_api/internal/transport/base_client.rb +77 -5
  7. data/lib/finch_api/internal/transport/pooled_net_requester.rb +17 -1
  8. data/lib/finch_api/internal/type/array_of.rb +1 -1
  9. data/lib/finch_api/internal/type/base_model.rb +70 -30
  10. data/lib/finch_api/internal/type/converter.rb +18 -0
  11. data/lib/finch_api/internal/type/enum.rb +1 -0
  12. data/lib/finch_api/internal/type/hash_of.rb +1 -1
  13. data/lib/finch_api/internal/type/union.rb +1 -0
  14. data/lib/finch_api/internal/util.rb +56 -0
  15. data/lib/finch_api/internal.rb +6 -0
  16. data/lib/finch_api/models/hris/document_retreive_response.rb +4 -0
  17. data/lib/finch_api/models/hris/employment_data.rb +10 -0
  18. data/lib/finch_api/models/hris/individual.rb +6 -0
  19. data/lib/finch_api/models/hris/pay_statement.rb +1 -0
  20. data/lib/finch_api/models/sandbox/payment_create_params.rb +1 -0
  21. data/lib/finch_api/models/webhook_event.rb +15 -0
  22. data/lib/finch_api/models.rb +27 -0
  23. data/lib/finch_api/request_options.rb +4 -0
  24. data/lib/finch_api/version.rb +1 -1
  25. data/lib/finch_api.rb +2 -0
  26. data/rbi/finch_api/internal/transport/base_client.rbi +31 -16
  27. data/rbi/finch_api/internal/transport/pooled_net_requester.rbi +10 -5
  28. data/rbi/finch_api/internal/type/base_model.rbi +33 -15
  29. data/rbi/finch_api/internal/type/base_page.rbi +1 -2
  30. data/rbi/finch_api/internal/type/converter.rbi +2 -0
  31. data/rbi/finch_api/internal/type/enum.rbi +1 -0
  32. data/rbi/finch_api/internal/type/union.rbi +1 -0
  33. data/rbi/finch_api/internal/util.rbi +28 -5
  34. data/rbi/finch_api/internal.rbi +2 -0
  35. data/rbi/finch_api/models/access_token_create_params.rbi +4 -1
  36. data/rbi/finch_api/models/account_disconnect_params.rbi +4 -1
  37. data/rbi/finch_api/models/account_introspect_params.rbi +4 -1
  38. data/rbi/finch_api/models/account_update_event.rbi +156 -34
  39. data/rbi/finch_api/models/base_webhook_event.rbi +4 -1
  40. data/rbi/finch_api/models/company_event.rbi +4 -1
  41. data/rbi/finch_api/models/connect/session_new_params.rbi +12 -2
  42. data/rbi/finch_api/models/connect/session_new_response.rbi +6 -1
  43. data/rbi/finch_api/models/connect/session_reauthenticate_params.rbi +6 -1
  44. data/rbi/finch_api/models/connect/session_reauthenticate_response.rbi +6 -1
  45. data/rbi/finch_api/models/create_access_token_response.rbi +7 -1
  46. data/rbi/finch_api/models/directory_event.rbi +7 -2
  47. data/rbi/finch_api/models/disconnect_response.rbi +4 -1
  48. data/rbi/finch_api/models/employment_event.rbi +7 -2
  49. data/rbi/finch_api/models/hris/benefit_contribution.rbi +6 -1
  50. data/rbi/finch_api/models/hris/benefit_create_params.rbi +18 -3
  51. data/rbi/finch_api/models/hris/benefit_features_and_operations.rbi +12 -2
  52. data/rbi/finch_api/models/hris/benefit_list_params.rbi +6 -1
  53. data/rbi/finch_api/models/hris/benefit_list_supported_benefits_params.rbi +6 -1
  54. data/rbi/finch_api/models/hris/benefit_list_supported_benefits_response.rbi +6 -1
  55. data/rbi/finch_api/models/hris/benefit_retrieve_params.rbi +6 -1
  56. data/rbi/finch_api/models/hris/benefit_update_params.rbi +6 -1
  57. data/rbi/finch_api/models/hris/benefits/enrolled_individual_benefit_response.rbi +6 -1
  58. data/rbi/finch_api/models/hris/benefits/individual_benefit.rbi +12 -2
  59. data/rbi/finch_api/models/hris/benefits/individual_enroll_many_params.rbi +26 -5
  60. data/rbi/finch_api/models/hris/benefits/individual_enrolled_ids_params.rbi +6 -1
  61. data/rbi/finch_api/models/hris/benefits/individual_enrolled_ids_response.rbi +6 -1
  62. data/rbi/finch_api/models/hris/benefits/individual_retrieve_many_benefits_params.rbi +6 -1
  63. data/rbi/finch_api/models/hris/benefits/individual_unenroll_many_params.rbi +6 -1
  64. data/rbi/finch_api/models/hris/benefits/unenrolled_individual_benefit_response.rbi +6 -1
  65. data/rbi/finch_api/models/hris/benefits_support.rbi +3 -1
  66. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_create_params.rbi +18 -3
  67. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_create_response.rbi +18 -3
  68. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_delete_params.rbi +6 -1
  69. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_delete_response.rbi +18 -3
  70. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_list_params.rbi +6 -1
  71. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_list_response.rbi +18 -3
  72. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_update_params.rbi +6 -1
  73. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_update_response.rbi +18 -3
  74. data/rbi/finch_api/models/hris/company/pay_statement_item_list_params.rbi +6 -1
  75. data/rbi/finch_api/models/hris/company/pay_statement_item_list_response.rbi +12 -2
  76. data/rbi/finch_api/models/hris/company.rbi +27 -5
  77. data/rbi/finch_api/models/hris/company_benefit.rbi +15 -3
  78. data/rbi/finch_api/models/hris/company_retrieve_params.rbi +6 -1
  79. data/rbi/finch_api/models/hris/create_company_benefits_response.rbi +6 -1
  80. data/rbi/finch_api/models/hris/directory_list_individuals_params.rbi +6 -1
  81. data/rbi/finch_api/models/hris/directory_list_params.rbi +6 -1
  82. data/rbi/finch_api/models/hris/document_list_params.rbi +6 -1
  83. data/rbi/finch_api/models/hris/document_list_response.rbi +6 -1
  84. data/rbi/finch_api/models/hris/document_response.rbi +3 -1
  85. data/rbi/finch_api/models/hris/document_retreive_params.rbi +6 -1
  86. data/rbi/finch_api/models/hris/employment_data.rbi +36 -6
  87. data/rbi/finch_api/models/hris/employment_data_response.rbi +6 -1
  88. data/rbi/finch_api/models/hris/employment_retrieve_many_params.rbi +12 -2
  89. data/rbi/finch_api/models/hris/individual.rbi +24 -4
  90. data/rbi/finch_api/models/hris/individual_in_directory.rbi +18 -3
  91. data/rbi/finch_api/models/hris/individual_response.rbi +6 -1
  92. data/rbi/finch_api/models/hris/individual_retrieve_many_params.rbi +18 -3
  93. data/rbi/finch_api/models/hris/pay_statement.rbi +80 -13
  94. data/rbi/finch_api/models/hris/pay_statement_response.rbi +6 -1
  95. data/rbi/finch_api/models/hris/pay_statement_response_body.rbi +6 -1
  96. data/rbi/finch_api/models/hris/pay_statement_retrieve_many_params.rbi +12 -2
  97. data/rbi/finch_api/models/hris/payment.rbi +9 -2
  98. data/rbi/finch_api/models/hris/payment_list_params.rbi +6 -1
  99. data/rbi/finch_api/models/hris/support_per_benefit_type.rbi +6 -1
  100. data/rbi/finch_api/models/hris/supported_benefit.rbi +3 -1
  101. data/rbi/finch_api/models/hris/update_company_benefit_response.rbi +6 -1
  102. data/rbi/finch_api/models/hris/w42005.rbi +6 -2
  103. data/rbi/finch_api/models/hris/w42020.rbi +6 -2
  104. data/rbi/finch_api/models/income.rbi +2 -1
  105. data/rbi/finch_api/models/individual_event.rbi +7 -2
  106. data/rbi/finch_api/models/introspection.rbi +22 -4
  107. data/rbi/finch_api/models/job_completion_event.rbi +10 -2
  108. data/rbi/finch_api/models/jobs/automated_async_job.rbi +12 -2
  109. data/rbi/finch_api/models/jobs/automated_create_params.rbi +12 -2
  110. data/rbi/finch_api/models/jobs/automated_create_response.rbi +6 -1
  111. data/rbi/finch_api/models/jobs/automated_list_params.rbi +6 -1
  112. data/rbi/finch_api/models/jobs/automated_list_response.rbi +24 -4
  113. data/rbi/finch_api/models/jobs/automated_retrieve_params.rbi +6 -1
  114. data/rbi/finch_api/models/jobs/manual_async_job.rbi +3 -1
  115. data/rbi/finch_api/models/jobs/manual_retrieve_params.rbi +6 -1
  116. data/rbi/finch_api/models/location.rbi +2 -1
  117. data/rbi/finch_api/models/money.rbi +2 -1
  118. data/rbi/finch_api/models/operation_support_matrix.rbi +4 -1
  119. data/rbi/finch_api/models/paging.rbi +2 -1
  120. data/rbi/finch_api/models/pay_statement_event.rbi +10 -2
  121. data/rbi/finch_api/models/payment_event.rbi +7 -2
  122. data/rbi/finch_api/models/payroll/pay_group_list_params.rbi +6 -1
  123. data/rbi/finch_api/models/payroll/pay_group_list_response.rbi +6 -1
  124. data/rbi/finch_api/models/payroll/pay_group_retrieve_params.rbi +6 -1
  125. data/rbi/finch_api/models/payroll/pay_group_retrieve_response.rbi +6 -1
  126. data/rbi/finch_api/models/provider.rbi +182 -33
  127. data/rbi/finch_api/models/provider_list_params.rbi +4 -1
  128. data/rbi/finch_api/models/request_forwarding_forward_params.rbi +7 -1
  129. data/rbi/finch_api/models/request_forwarding_forward_response.rbi +13 -2
  130. data/rbi/finch_api/models/sandbox/company_update_params.rbi +30 -5
  131. data/rbi/finch_api/models/sandbox/company_update_response.rbi +30 -5
  132. data/rbi/finch_api/models/sandbox/connection_create_params.rbi +6 -1
  133. data/rbi/finch_api/models/sandbox/connection_create_response.rbi +6 -1
  134. data/rbi/finch_api/models/sandbox/connections/account_create_params.rbi +6 -1
  135. data/rbi/finch_api/models/sandbox/connections/account_create_response.rbi +6 -1
  136. data/rbi/finch_api/models/sandbox/connections/account_update_params.rbi +6 -1
  137. data/rbi/finch_api/models/sandbox/connections/account_update_response.rbi +6 -1
  138. data/rbi/finch_api/models/sandbox/directory_create_params.rbi +48 -8
  139. data/rbi/finch_api/models/sandbox/employment_update_params.rbi +30 -5
  140. data/rbi/finch_api/models/sandbox/employment_update_response.rbi +30 -5
  141. data/rbi/finch_api/models/sandbox/individual_update_params.rbi +18 -3
  142. data/rbi/finch_api/models/sandbox/individual_update_response.rbi +18 -3
  143. data/rbi/finch_api/models/sandbox/job_create_params.rbi +6 -1
  144. data/rbi/finch_api/models/sandbox/job_create_response.rbi +6 -1
  145. data/rbi/finch_api/models/sandbox/jobs/configuration_retrieve_params.rbi +6 -1
  146. data/rbi/finch_api/models/sandbox/jobs/configuration_update_params.rbi +6 -1
  147. data/rbi/finch_api/models/sandbox/jobs/sandbox_job_configuration.rbi +6 -1
  148. data/rbi/finch_api/models/sandbox/payment_create_params.rbi +81 -14
  149. data/rbi/finch_api/models/sandbox/payment_create_response.rbi +6 -1
  150. data/rbi/finch_api/request_options.rbi +4 -1
  151. data/sig/finch_api/internal/single_page.rbs +1 -1
  152. data/sig/finch_api/internal/transport/base_client.rbs +16 -1
  153. data/sig/finch_api/internal/transport/pooled_net_requester.rbs +4 -0
  154. data/sig/finch_api/internal/type/base_model.rbs +11 -5
  155. data/sig/finch_api/internal/type/base_page.rbs +1 -1
  156. data/sig/finch_api/internal/type/converter.rbs +2 -0
  157. data/sig/finch_api/internal/type/enum.rbs +1 -0
  158. data/sig/finch_api/internal/type/union.rbs +1 -0
  159. data/sig/finch_api/internal/util.rbs +13 -0
  160. data/sig/finch_api/internal.rbs +2 -0
  161. data/sig/finch_api/models/hris/pay_statement.rbs +2 -1
  162. data/sig/finch_api/models/sandbox/payment_create_params.rbs +2 -1
  163. metadata +2 -2
@@ -2,6 +2,8 @@ module FinchAPI
2
2
  module Internal
3
3
  module Transport
4
4
  class BaseClient
5
+ extend FinchAPI::Internal::Util::SorbetRuntimeSupport
6
+
5
7
  type request_components =
6
8
  {
7
9
  method: Symbol,
@@ -20,7 +22,6 @@ module FinchAPI
20
22
  model: FinchAPI::Internal::Type::Converter::input?,
21
23
  options: FinchAPI::request_opts?
22
24
  }
23
-
24
25
  type request_input =
25
26
  {
26
27
  method: Symbol,
@@ -55,6 +56,20 @@ module FinchAPI
55
56
  stream: Enumerable[String]?
56
57
  ) -> void
57
58
 
59
+ attr_reader base_url: URI::Generic
60
+
61
+ attr_reader timeout: Float
62
+
63
+ attr_reader max_retries: Integer
64
+
65
+ attr_reader initial_retry_delay: Float
66
+
67
+ attr_reader max_retry_delay: Float
68
+
69
+ attr_reader headers: ::Hash[String, String]
70
+
71
+ attr_reader idempotency_header: String?
72
+
58
73
  # @api private
59
74
  attr_reader requester: FinchAPI::Internal::Transport::PooledNetRequester
60
75
 
@@ -2,6 +2,8 @@ module FinchAPI
2
2
  module Internal
3
3
  module Transport
4
4
  class PooledNetRequester
5
+ extend FinchAPI::Internal::Util::SorbetRuntimeSupport
6
+
5
7
  type request =
6
8
  {
7
9
  method: Symbol,
@@ -13,6 +15,8 @@ module FinchAPI
13
15
 
14
16
  KEEP_ALIVE_TIMEOUT: 30
15
17
 
18
+ DEFAULT_MAX_CONNECTIONS: Integer
19
+
16
20
  def self.connect: (URI::Generic url) -> top
17
21
 
18
22
  def self.calibrate_socket_timeout: (top conn, Float deadline) -> void
@@ -3,10 +3,13 @@ module FinchAPI
3
3
  module Type
4
4
  class BaseModel
5
5
  extend FinchAPI::Internal::Type::Converter
6
+ extend FinchAPI::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  type known_field =
8
9
  { mode: (:coerce | :dump)?, required: bool, nilable: bool }
9
10
 
11
+ def self.inherited: (self child) -> void
12
+
10
13
  def self.known_fields: -> ::Hash[Symbol, (FinchAPI::Internal::Type::BaseModel::known_field
11
14
  & { type_fn: (^-> FinchAPI::Internal::Type::Converter::input) })]
12
15
 
@@ -65,23 +68,26 @@ module FinchAPI
65
68
  state: FinchAPI::Internal::Type::Converter::dump_state
66
69
  ) -> (::Hash[top, top] | top)
67
70
 
71
+ def self.recursively_to_h: (
72
+ FinchAPI::Internal::Type::BaseModel model,
73
+ convert: bool
74
+ ) -> ::Hash[Symbol, top]
75
+
68
76
  def []: (Symbol key) -> top?
69
77
 
70
78
  def to_h: -> ::Hash[Symbol, top]
71
79
 
72
80
  alias to_hash to_h
73
81
 
74
- def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top]
82
+ def deep_to_h: -> ::Hash[Symbol, top]
75
83
 
76
- def self.walk: (
77
- FinchAPI::Internal::Type::BaseModel model
78
- ) -> ::Hash[Symbol, top]
84
+ def deconstruct_keys: (::Array[Symbol]? keys) -> ::Hash[Symbol, top]
79
85
 
80
86
  def to_json: (*top a) -> String
81
87
 
82
88
  def to_yaml: (*top a) -> String
83
89
 
84
- def initialize: (?::Hash[Symbol, top] | self data) -> void
90
+ def initialize: (?::Hash[Symbol, top] | instance data) -> void
85
91
 
86
92
  def self.inspect: (?depth: Integer) -> String
87
93
 
@@ -4,7 +4,7 @@ module FinchAPI
4
4
  module BasePage[Elem]
5
5
  def next_page?: -> bool
6
6
 
7
- def next_page: -> self
7
+ def next_page: -> instance
8
8
 
9
9
  def auto_paging_each: { (Elem arg0) -> void } -> void
10
10
 
@@ -2,6 +2,8 @@ module FinchAPI
2
2
  module Internal
3
3
  module Type
4
4
  module Converter
5
+ extend FinchAPI::Internal::Util::SorbetRuntimeSupport
6
+
5
7
  type input = FinchAPI::Internal::Type::Converter | Class
6
8
 
7
9
  type coerce_state =
@@ -3,6 +3,7 @@ module FinchAPI
3
3
  module Type
4
4
  module Enum
5
5
  include FinchAPI::Internal::Type::Converter
6
+ include FinchAPI::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  def self.values: -> ::Array[(nil | bool | Integer | Float | Symbol)]
8
9
 
@@ -3,6 +3,7 @@ module FinchAPI
3
3
  module Type
4
4
  module Union
5
5
  include FinchAPI::Internal::Type::Converter
6
+ include FinchAPI::Internal::Util::SorbetRuntimeSupport
6
7
 
7
8
  private def self.known_variants: -> ::Array[[Symbol?, (^-> FinchAPI::Internal::Type::Converter::input)]]
8
9
 
@@ -1,6 +1,8 @@
1
1
  module FinchAPI
2
2
  module Internal
3
3
  module Util
4
+ extend FinchAPI::Internal::Util::SorbetRuntimeSupport
5
+
4
6
  def self?.monotonic_secs: -> Float
5
7
 
6
8
  def self?.arch: -> String
@@ -155,6 +157,17 @@ module FinchAPI
155
157
  def self?.decode_sse: (
156
158
  Enumerable[String] lines
157
159
  ) -> Enumerable[FinchAPI::Internal::Util::server_sent_event]
160
+
161
+ module SorbetRuntimeSupport
162
+ class MissingSorbetRuntimeError < ::RuntimeError
163
+ end
164
+
165
+ private def sorbet_runtime_constants: -> ::Hash[Symbol, top]
166
+
167
+ def const_missing: (Symbol name) -> void
168
+
169
+ def define_sorbet_constant!: (Symbol name) { -> top } -> void
170
+ end
158
171
  end
159
172
  end
160
173
  end
@@ -1,5 +1,7 @@
1
1
  module FinchAPI
2
2
  module Internal
3
+ extend FinchAPI::Internal::Util::SorbetRuntimeSupport
4
+
3
5
  OMIT: Object
4
6
  end
5
7
  end
@@ -262,13 +262,14 @@ module FinchAPI
262
262
  end
263
263
  end
264
264
 
265
- type payment_method = :check | :direct_deposit
265
+ type payment_method = :check | :direct_deposit | :other
266
266
 
267
267
  module PaymentMethod
268
268
  extend FinchAPI::Internal::Type::Enum
269
269
 
270
270
  CHECK: :check
271
271
  DIRECT_DEPOSIT: :direct_deposit
272
+ OTHER: :other
272
273
 
273
274
  def self?.values: -> ::Array[FinchAPI::HRIS::PayStatement::payment_method]
274
275
  end
@@ -295,13 +295,14 @@ module FinchAPI
295
295
  end
296
296
  end
297
297
 
298
- type payment_method = :check | :direct_deposit
298
+ type payment_method = :check | :direct_deposit | :other
299
299
 
300
300
  module PaymentMethod
301
301
  extend FinchAPI::Internal::Type::Enum
302
302
 
303
303
  CHECK: :check
304
304
  DIRECT_DEPOSIT: :direct_deposit
305
+ OTHER: :other
305
306
 
306
307
  def self?.values: -> ::Array[FinchAPI::Sandbox::PaymentCreateParams::PayStatement::payment_method]
307
308
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: finch-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.pre.alpha.16
4
+ version: 0.1.0.pre.alpha.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - Finch
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-05-08 00:00:00.000000000 Z
11
+ date: 2025-05-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: connection_pool