finch-api 0.1.0.pre.alpha.30 → 0.1.0.pre.alpha.32

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 (205) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +48 -0
  3. data/README.md +1 -1
  4. data/lib/finch_api/errors.rb +25 -11
  5. data/lib/finch_api/file_part.rb +10 -7
  6. data/lib/finch_api/internal/individuals_page.rb +1 -1
  7. data/lib/finch_api/internal/page.rb +1 -1
  8. data/lib/finch_api/internal/responses_page.rb +1 -1
  9. data/lib/finch_api/internal/single_page.rb +1 -1
  10. data/lib/finch_api/internal/transport/base_client.rb +11 -7
  11. data/lib/finch_api/internal/transport/pooled_net_requester.rb +34 -31
  12. data/lib/finch_api/internal/type/base_page.rb +1 -1
  13. data/lib/finch_api/internal/type/file_input.rb +7 -4
  14. data/lib/finch_api/internal/util.rb +8 -7
  15. data/lib/finch_api/models/connect/session_new_params.rb +66 -50
  16. data/lib/finch_api/models/connect/session_reauthenticate_params.rb +10 -10
  17. data/lib/finch_api/models/create_access_token_response.rb +9 -1
  18. data/lib/finch_api/models/hris/benefit_contribution.rb +124 -29
  19. data/lib/finch_api/models/hris/benefit_create_params.rb +9 -1
  20. data/lib/finch_api/models/hris/benefit_list_params.rb +9 -1
  21. data/lib/finch_api/models/hris/benefit_list_supported_benefits_params.rb +9 -1
  22. data/lib/finch_api/models/hris/benefit_retrieve_params.rb +9 -1
  23. data/lib/finch_api/models/hris/benefit_update_params.rb +9 -1
  24. data/lib/finch_api/models/hris/benefits/individual_benefit.rb +222 -6
  25. data/lib/finch_api/models/hris/benefits/individual_enroll_many_params.rb +40 -2
  26. data/lib/finch_api/models/hris/benefits/individual_enrolled_ids_params.rb +9 -1
  27. data/lib/finch_api/models/hris/benefits/individual_retrieve_many_benefits_params.rb +9 -1
  28. data/lib/finch_api/models/hris/benefits/individual_unenroll_many_params.rb +9 -1
  29. data/lib/finch_api/models/hris/company/pay_statement_item/rule_create_params.rb +9 -1
  30. data/lib/finch_api/models/hris/company/pay_statement_item/rule_delete_params.rb +9 -1
  31. data/lib/finch_api/models/hris/company/pay_statement_item/rule_list_params.rb +9 -1
  32. data/lib/finch_api/models/hris/company/pay_statement_item/rule_update_params.rb +10 -1
  33. data/lib/finch_api/models/hris/company/pay_statement_item_list_params.rb +9 -1
  34. data/lib/finch_api/models/hris/company_retrieve_params.rb +9 -1
  35. data/lib/finch_api/models/hris/directory_list_individuals_params.rb +9 -1
  36. data/lib/finch_api/models/hris/directory_list_params.rb +9 -1
  37. data/lib/finch_api/models/hris/document_list_params.rb +9 -1
  38. data/lib/finch_api/models/hris/document_response.rb +11 -11
  39. data/lib/finch_api/models/hris/document_retreive_params.rb +9 -1
  40. data/lib/finch_api/models/hris/employment_retrieve_many_params.rb +9 -1
  41. data/lib/finch_api/models/hris/individual_retrieve_many_params.rb +11 -1
  42. data/lib/finch_api/models/hris/pay_statement.rb +11 -15
  43. data/lib/finch_api/models/hris/pay_statement_retrieve_many_params.rb +9 -1
  44. data/lib/finch_api/models/hris/payment_list_params.rb +9 -1
  45. data/lib/finch_api/models/hris/supported_benefit.rb +1 -0
  46. data/lib/finch_api/models/hris/w42005.rb +20 -20
  47. data/lib/finch_api/models/hris/w42020.rb +30 -30
  48. data/lib/finch_api/models/introspection.rb +38 -23
  49. data/lib/finch_api/models/jobs/automated_list_params.rb +1 -14
  50. data/lib/finch_api/models/jobs/automated_retrieve_params.rb +1 -14
  51. data/lib/finch_api/models/jobs/manual_retrieve_params.rb +1 -14
  52. data/lib/finch_api/models/payroll/pay_group_list_params.rb +11 -1
  53. data/lib/finch_api/models/payroll/pay_group_retrieve_params.rb +9 -1
  54. data/lib/finch_api/models/provider.rb +42 -1092
  55. data/lib/finch_api/models/provider_list_response.rb +143 -0
  56. data/lib/finch_api/models/request_forwarding_forward_params.rb +10 -6
  57. data/lib/finch_api/models/request_forwarding_forward_response.rb +69 -48
  58. data/lib/finch_api/resources/connect/sessions.rb +12 -12
  59. data/lib/finch_api/resources/hris/benefits/individuals.rb +24 -10
  60. data/lib/finch_api/resources/hris/benefits.rb +37 -16
  61. data/lib/finch_api/resources/hris/company/pay_statement_item/rules.rb +38 -15
  62. data/lib/finch_api/resources/hris/company/pay_statement_item.rb +3 -1
  63. data/lib/finch_api/resources/hris/company.rb +6 -2
  64. data/lib/finch_api/resources/hris/directory.rb +3 -1
  65. data/lib/finch_api/resources/hris/documents.rb +9 -3
  66. data/lib/finch_api/resources/hris/employments.rb +7 -3
  67. data/lib/finch_api/resources/hris/individuals.rb +10 -4
  68. data/lib/finch_api/resources/hris/pay_statements.rb +7 -3
  69. data/lib/finch_api/resources/hris/payments.rb +3 -1
  70. data/lib/finch_api/resources/jobs/automated.rb +3 -16
  71. data/lib/finch_api/resources/jobs/manual.rb +2 -10
  72. data/lib/finch_api/resources/payroll/pay_groups.rb +12 -3
  73. data/lib/finch_api/resources/providers.rb +2 -2
  74. data/lib/finch_api/resources/request_forwarding.rb +2 -2
  75. data/lib/finch_api/version.rb +1 -1
  76. data/lib/finch_api.rb +1 -0
  77. data/rbi/finch_api/errors.rbi +29 -2
  78. data/rbi/finch_api/file_part.rbi +1 -1
  79. data/rbi/finch_api/internal/transport/base_client.rbi +4 -5
  80. data/rbi/finch_api/internal/type/base_page.rbi +1 -1
  81. data/rbi/finch_api/internal/util.rbi +1 -1
  82. data/rbi/finch_api/models/connect/session_new_params.rbi +124 -98
  83. data/rbi/finch_api/models/connect/session_reauthenticate_params.rbi +23 -23
  84. data/rbi/finch_api/models/create_access_token_response.rbi +8 -0
  85. data/rbi/finch_api/models/hris/benefit_contribution.rbi +270 -52
  86. data/rbi/finch_api/models/hris/benefit_create_params.rbi +11 -0
  87. data/rbi/finch_api/models/hris/benefit_list_params.rbi +24 -5
  88. data/rbi/finch_api/models/hris/benefit_list_supported_benefits_params.rbi +24 -5
  89. data/rbi/finch_api/models/hris/benefit_retrieve_params.rbi +24 -5
  90. data/rbi/finch_api/models/hris/benefit_update_params.rbi +15 -1
  91. data/rbi/finch_api/models/hris/benefits/individual_benefit.rbi +515 -20
  92. data/rbi/finch_api/models/hris/benefits/individual_enroll_many_params.rbi +87 -0
  93. data/rbi/finch_api/models/hris/benefits/individual_enrolled_ids_params.rbi +22 -5
  94. data/rbi/finch_api/models/hris/benefits/individual_retrieve_many_benefits_params.rbi +11 -0
  95. data/rbi/finch_api/models/hris/benefits/individual_unenroll_many_params.rbi +11 -0
  96. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_create_params.rbi +11 -0
  97. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_delete_params.rbi +22 -5
  98. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_list_params.rbi +22 -5
  99. data/rbi/finch_api/models/hris/company/pay_statement_item/rule_update_params.rbi +15 -1
  100. data/rbi/finch_api/models/hris/company/pay_statement_item_list_params.rbi +11 -0
  101. data/rbi/finch_api/models/hris/company_retrieve_params.rbi +24 -5
  102. data/rbi/finch_api/models/hris/directory_list_individuals_params.rbi +11 -0
  103. data/rbi/finch_api/models/hris/directory_list_params.rbi +11 -0
  104. data/rbi/finch_api/models/hris/document_list_params.rbi +11 -0
  105. data/rbi/finch_api/models/hris/document_response.rbi +14 -29
  106. data/rbi/finch_api/models/hris/document_retreive_params.rbi +24 -5
  107. data/rbi/finch_api/models/hris/employment_retrieve_many_params.rbi +11 -0
  108. data/rbi/finch_api/models/hris/individual_retrieve_many_params.rbi +16 -1
  109. data/rbi/finch_api/models/hris/pay_statement.rbi +9 -34
  110. data/rbi/finch_api/models/hris/pay_statement_retrieve_many_params.rbi +11 -0
  111. data/rbi/finch_api/models/hris/payment_list_params.rbi +11 -0
  112. data/rbi/finch_api/models/hris/supported_benefit.rbi +5 -0
  113. data/rbi/finch_api/models/hris/w42005.rbi +28 -38
  114. data/rbi/finch_api/models/hris/w42020.rbi +37 -43
  115. data/rbi/finch_api/models/introspection.rbi +57 -33
  116. data/rbi/finch_api/models/jobs/automated_list_params.rbi +0 -15
  117. data/rbi/finch_api/models/jobs/automated_retrieve_params.rbi +5 -25
  118. data/rbi/finch_api/models/jobs/manual_retrieve_params.rbi +5 -25
  119. data/rbi/finch_api/models/payroll/pay_group_list_params.rbi +11 -0
  120. data/rbi/finch_api/models/payroll/pay_group_retrieve_params.rbi +24 -5
  121. data/rbi/finch_api/models/provider.rbi +75 -2507
  122. data/rbi/finch_api/models/provider_list_response.rbi +280 -0
  123. data/rbi/finch_api/models/request_forwarding_forward_params.rbi +6 -6
  124. data/rbi/finch_api/models/request_forwarding_forward_response.rbi +93 -60
  125. data/rbi/finch_api/resources/connect/sessions.rbi +22 -14
  126. data/rbi/finch_api/resources/hris/benefits/individuals.rbi +20 -3
  127. data/rbi/finch_api/resources/hris/benefits.rbi +39 -12
  128. data/rbi/finch_api/resources/hris/company/pay_statement_item/rules.rbi +35 -8
  129. data/rbi/finch_api/resources/hris/company/pay_statement_item.rbi +3 -0
  130. data/rbi/finch_api/resources/hris/company.rbi +9 -4
  131. data/rbi/finch_api/resources/hris/directory.rbi +3 -0
  132. data/rbi/finch_api/resources/hris/documents.rbi +6 -0
  133. data/rbi/finch_api/resources/hris/employments.rbi +4 -1
  134. data/rbi/finch_api/resources/hris/individuals.rbi +10 -1
  135. data/rbi/finch_api/resources/hris/pay_statements.rbi +4 -1
  136. data/rbi/finch_api/resources/hris/payments.rbi +3 -0
  137. data/rbi/finch_api/resources/jobs/automated.rbi +1 -14
  138. data/rbi/finch_api/resources/jobs/manual.rbi +1 -9
  139. data/rbi/finch_api/resources/payroll/pay_groups.rbi +15 -2
  140. data/rbi/finch_api/resources/providers.rbi +1 -1
  141. data/rbi/finch_api/resources/request_forwarding.rbi +2 -2
  142. data/sig/finch_api/errors.rbs +7 -0
  143. data/sig/finch_api/file_part.rbs +1 -1
  144. data/sig/finch_api/models/connect/session_new_params.rbs +45 -45
  145. data/sig/finch_api/models/connect/session_reauthenticate_params.rbs +15 -15
  146. data/sig/finch_api/models/create_access_token_response.rbs +5 -0
  147. data/sig/finch_api/models/hris/benefit_contribution.rbs +107 -21
  148. data/sig/finch_api/models/hris/benefit_create_params.rbs +7 -0
  149. data/sig/finch_api/models/hris/benefit_list_params.rbs +14 -3
  150. data/sig/finch_api/models/hris/benefit_list_supported_benefits_params.rbs +14 -3
  151. data/sig/finch_api/models/hris/benefit_retrieve_params.rbs +14 -3
  152. data/sig/finch_api/models/hris/benefit_update_params.rbs +8 -1
  153. data/sig/finch_api/models/hris/benefits/individual_benefit.rbs +201 -8
  154. data/sig/finch_api/models/hris/benefits/individual_enroll_many_params.rbs +30 -1
  155. data/sig/finch_api/models/hris/benefits/individual_enrolled_ids_params.rbs +14 -3
  156. data/sig/finch_api/models/hris/benefits/individual_retrieve_many_benefits_params.rbs +7 -1
  157. data/sig/finch_api/models/hris/benefits/individual_unenroll_many_params.rbs +7 -1
  158. data/sig/finch_api/models/hris/benfit_contribution.rbs +1 -1
  159. data/sig/finch_api/models/hris/company/pay_statement_item/rule_create_params.rbs +7 -0
  160. data/sig/finch_api/models/hris/company/pay_statement_item/rule_delete_params.rbs +14 -3
  161. data/sig/finch_api/models/hris/company/pay_statement_item/rule_list_params.rbs +14 -3
  162. data/sig/finch_api/models/hris/company/pay_statement_item/rule_update_params.rbs +7 -1
  163. data/sig/finch_api/models/hris/company/pay_statement_item_list_params.rbs +7 -0
  164. data/sig/finch_api/models/hris/company_retrieve_params.rbs +14 -3
  165. data/sig/finch_api/models/hris/directory_list_individuals_params.rbs +7 -1
  166. data/sig/finch_api/models/hris/directory_list_params.rbs +7 -1
  167. data/sig/finch_api/models/hris/document_list_params.rbs +7 -0
  168. data/sig/finch_api/models/hris/document_response.rbs +11 -19
  169. data/sig/finch_api/models/hris/document_retreive_params.rbs +14 -3
  170. data/sig/finch_api/models/hris/employment_retrieve_many_params.rbs +8 -1
  171. data/sig/finch_api/models/hris/individual_retrieve_many_params.rbs +7 -0
  172. data/sig/finch_api/models/hris/pay_statement.rbs +12 -12
  173. data/sig/finch_api/models/hris/pay_statement_retrieve_many_params.rbs +8 -1
  174. data/sig/finch_api/models/hris/payment_list_params.rbs +7 -1
  175. data/sig/finch_api/models/hris/supported_benefit.rbs +2 -1
  176. data/sig/finch_api/models/hris/w42005.rbs +23 -37
  177. data/sig/finch_api/models/hris/w42020.rbs +35 -45
  178. data/sig/finch_api/models/introspection.rbs +29 -20
  179. data/sig/finch_api/models/jobs/automated_list_params.rbs +1 -7
  180. data/sig/finch_api/models/jobs/automated_retrieve_params.rbs +3 -13
  181. data/sig/finch_api/models/jobs/manual_retrieve_params.rbs +3 -13
  182. data/sig/finch_api/models/payroll/pay_group_list_params.rbs +11 -1
  183. data/sig/finch_api/models/payroll/pay_group_retrieve_params.rbs +14 -3
  184. data/sig/finch_api/models/provider.rbs +31 -1366
  185. data/sig/finch_api/models/provider_list_response.rbs +128 -0
  186. data/sig/finch_api/models/request_forwarding_forward_params.rbs +8 -8
  187. data/sig/finch_api/models/request_forwarding_forward_response.rbs +40 -30
  188. data/sig/finch_api/resources/connect/sessions.rbs +9 -9
  189. data/sig/finch_api/resources/hris/benefits/individuals.rbs +4 -0
  190. data/sig/finch_api/resources/hris/benefits.rbs +5 -0
  191. data/sig/finch_api/resources/hris/company/pay_statement_item/rules.rbs +4 -0
  192. data/sig/finch_api/resources/hris/company/pay_statement_item.rbs +1 -0
  193. data/sig/finch_api/resources/hris/company.rbs +1 -0
  194. data/sig/finch_api/resources/hris/directory.rbs +1 -0
  195. data/sig/finch_api/resources/hris/documents.rbs +2 -0
  196. data/sig/finch_api/resources/hris/employments.rbs +1 -0
  197. data/sig/finch_api/resources/hris/individuals.rbs +1 -0
  198. data/sig/finch_api/resources/hris/pay_statements.rbs +1 -0
  199. data/sig/finch_api/resources/hris/payments.rbs +1 -0
  200. data/sig/finch_api/resources/jobs/automated.rbs +0 -2
  201. data/sig/finch_api/resources/jobs/manual.rbs +0 -1
  202. data/sig/finch_api/resources/payroll/pay_groups.rbs +2 -0
  203. data/sig/finch_api/resources/providers.rbs +1 -1
  204. data/sig/finch_api/resources/request_forwarding.rbs +2 -2
  205. metadata +5 -2
@@ -10,21 +10,18 @@ module FinchAPI
10
10
  end
11
11
 
12
12
  # Detailed information specific to the 2020 W4 form.
13
- sig { returns(T.nilable(FinchAPI::HRIS::W42020::Data)) }
13
+ sig { returns(FinchAPI::HRIS::W42020::Data) }
14
14
  attr_reader :data
15
15
 
16
16
  sig { params(data: FinchAPI::HRIS::W42020::Data::OrHash).void }
17
17
  attr_writer :data
18
18
 
19
19
  # Specifies the form type, indicating that this document is a 2020 W4 form.
20
- sig { returns(T.nilable(FinchAPI::HRIS::W42020::Type::TaggedSymbol)) }
21
- attr_reader :type
22
-
23
- sig { params(type: FinchAPI::HRIS::W42020::Type::OrSymbol).void }
24
- attr_writer :type
20
+ sig { returns(FinchAPI::HRIS::W42020::Type::TaggedSymbol) }
21
+ attr_accessor :type
25
22
 
26
23
  # The tax year this W4 document applies to.
27
- sig { returns(T.nilable(Float)) }
24
+ sig { returns(Float) }
28
25
  attr_accessor :year
29
26
 
30
27
  # A 2020 version of the W-4 tax form containing information on an individual's
@@ -33,16 +30,16 @@ module FinchAPI
33
30
  params(
34
31
  data: FinchAPI::HRIS::W42020::Data::OrHash,
35
32
  type: FinchAPI::HRIS::W42020::Type::OrSymbol,
36
- year: T.nilable(Float)
33
+ year: Float
37
34
  ).returns(T.attached_class)
38
35
  end
39
36
  def self.new(
40
37
  # Detailed information specific to the 2020 W4 form.
41
- data: nil,
38
+ data:,
42
39
  # Specifies the form type, indicating that this document is a 2020 W4 form.
43
- type: nil,
40
+ type:,
44
41
  # The tax year this W4 document applies to.
45
- year: nil
42
+ year:
46
43
  )
47
44
  end
48
45
 
@@ -51,7 +48,7 @@ module FinchAPI
51
48
  {
52
49
  data: FinchAPI::HRIS::W42020::Data,
53
50
  type: FinchAPI::HRIS::W42020::Type::TaggedSymbol,
54
- year: T.nilable(Float)
51
+ year: Float
55
52
  }
56
53
  )
57
54
  end
@@ -66,19 +63,19 @@ module FinchAPI
66
63
 
67
64
  # Amount claimed for dependents other than qualifying children under 17 (in
68
65
  # cents).
69
- sig { returns(T.nilable(Integer)) }
66
+ sig { returns(Integer) }
70
67
  attr_accessor :amount_for_other_dependents
71
68
 
72
69
  # Amount claimed for dependents under 17 years old (in cents).
73
- sig { returns(T.nilable(Integer)) }
70
+ sig { returns(Integer) }
74
71
  attr_accessor :amount_for_qualifying_children_under_17
75
72
 
76
73
  # Deductible expenses (in cents).
77
- sig { returns(T.nilable(Integer)) }
74
+ sig { returns(Integer) }
78
75
  attr_accessor :deductions
79
76
 
80
77
  # Additional withholding amount (in cents).
81
- sig { returns(T.nilable(Integer)) }
78
+ sig { returns(Integer) }
82
79
  attr_accessor :extra_withholding
83
80
 
84
81
  # The individual's filing status for tax purposes.
@@ -92,69 +89,66 @@ module FinchAPI
92
89
  attr_accessor :filing_status
93
90
 
94
91
  # The unique identifier for the individual associated with this document.
95
- sig { returns(T.nilable(String)) }
96
- attr_reader :individual_id
97
-
98
- sig { params(individual_id: String).void }
99
- attr_writer :individual_id
92
+ sig { returns(String) }
93
+ attr_accessor :individual_id
100
94
 
101
95
  # Additional income from sources outside of primary employment (in cents).
102
- sig { returns(T.nilable(Integer)) }
96
+ sig { returns(Integer) }
103
97
  attr_accessor :other_income
104
98
 
105
99
  # Total amount claimed for dependents and other credits (in cents).
106
- sig { returns(T.nilable(Integer)) }
100
+ sig { returns(Integer) }
107
101
  attr_accessor :total_claim_dependent_and_other_credits
108
102
 
109
103
  # Detailed information specific to the 2020 W4 form.
110
104
  sig do
111
105
  params(
112
- amount_for_other_dependents: T.nilable(Integer),
113
- amount_for_qualifying_children_under_17: T.nilable(Integer),
114
- deductions: T.nilable(Integer),
115
- extra_withholding: T.nilable(Integer),
106
+ amount_for_other_dependents: Integer,
107
+ amount_for_qualifying_children_under_17: Integer,
108
+ deductions: Integer,
109
+ extra_withholding: Integer,
116
110
  filing_status:
117
111
  T.nilable(FinchAPI::HRIS::W42020::Data::FilingStatus::OrSymbol),
118
112
  individual_id: String,
119
- other_income: T.nilable(Integer),
120
- total_claim_dependent_and_other_credits: T.nilable(Integer)
113
+ other_income: Integer,
114
+ total_claim_dependent_and_other_credits: Integer
121
115
  ).returns(T.attached_class)
122
116
  end
123
117
  def self.new(
124
118
  # Amount claimed for dependents other than qualifying children under 17 (in
125
119
  # cents).
126
- amount_for_other_dependents: nil,
120
+ amount_for_other_dependents:,
127
121
  # Amount claimed for dependents under 17 years old (in cents).
128
- amount_for_qualifying_children_under_17: nil,
122
+ amount_for_qualifying_children_under_17:,
129
123
  # Deductible expenses (in cents).
130
- deductions: nil,
124
+ deductions:,
131
125
  # Additional withholding amount (in cents).
132
- extra_withholding: nil,
126
+ extra_withholding:,
133
127
  # The individual's filing status for tax purposes.
134
- filing_status: nil,
128
+ filing_status:,
135
129
  # The unique identifier for the individual associated with this document.
136
- individual_id: nil,
130
+ individual_id:,
137
131
  # Additional income from sources outside of primary employment (in cents).
138
- other_income: nil,
132
+ other_income:,
139
133
  # Total amount claimed for dependents and other credits (in cents).
140
- total_claim_dependent_and_other_credits: nil
134
+ total_claim_dependent_and_other_credits:
141
135
  )
142
136
  end
143
137
 
144
138
  sig do
145
139
  override.returns(
146
140
  {
147
- amount_for_other_dependents: T.nilable(Integer),
148
- amount_for_qualifying_children_under_17: T.nilable(Integer),
149
- deductions: T.nilable(Integer),
150
- extra_withholding: T.nilable(Integer),
141
+ amount_for_other_dependents: Integer,
142
+ amount_for_qualifying_children_under_17: Integer,
143
+ deductions: Integer,
144
+ extra_withholding: Integer,
151
145
  filing_status:
152
146
  T.nilable(
153
147
  FinchAPI::HRIS::W42020::Data::FilingStatus::TaggedSymbol
154
148
  ),
155
149
  individual_id: String,
156
- other_income: T.nilable(Integer),
157
- total_claim_dependent_and_other_credits: T.nilable(Integer)
150
+ other_income: Integer,
151
+ total_claim_dependent_and_other_credits: Integer
158
152
  }
159
153
  )
160
154
  end
@@ -95,23 +95,15 @@ module FinchAPI
95
95
  sig { returns(T.nilable(String)) }
96
96
  attr_accessor :customer_name
97
97
 
98
- # Array of entity IDs associated with this connection.
99
- sig { returns(T.nilable(T::Array[String])) }
100
- attr_reader :entity_ids
101
-
102
- sig { params(entity_ids: T::Array[String]).void }
103
- attr_writer :entity_ids
104
-
105
- # Indicates whether this connection manages a single entity or multiple entities.
106
- sig do
107
- returns(T.nilable(FinchAPI::Introspection::EntityMode::TaggedSymbol))
108
- end
109
- attr_reader :entity_mode
98
+ # Array of detailed entity information for each connected account in multi-account
99
+ # mode
100
+ sig { returns(T.nilable(T::Array[FinchAPI::Introspection::Entity])) }
101
+ attr_reader :entities
110
102
 
111
103
  sig do
112
- params(entity_mode: FinchAPI::Introspection::EntityMode::OrSymbol).void
104
+ params(entities: T::Array[FinchAPI::Introspection::Entity::OrHash]).void
113
105
  end
114
- attr_writer :entity_mode
106
+ attr_writer :entities
115
107
 
116
108
  # Whether the connection associated with the `access_token` uses the Assisted
117
109
  # Connect Flow. (`true` if using Assisted Connect, `false` if connection is
@@ -151,8 +143,7 @@ module FinchAPI
151
143
  customer_email: T.nilable(String),
152
144
  customer_id: T.nilable(String),
153
145
  customer_name: T.nilable(String),
154
- entity_ids: T::Array[String],
155
- entity_mode: FinchAPI::Introspection::EntityMode::OrSymbol,
146
+ entities: T::Array[FinchAPI::Introspection::Entity::OrHash],
156
147
  manual: T::Boolean,
157
148
  payroll_provider_id: String,
158
149
  username: T.nilable(String)
@@ -193,10 +184,9 @@ module FinchAPI
193
184
  # The name of your customer you provided to Finch when a connect session was
194
185
  # created for this connection
195
186
  customer_name: nil,
196
- # Array of entity IDs associated with this connection.
197
- entity_ids: nil,
198
- # Indicates whether this connection manages a single entity or multiple entities.
199
- entity_mode: nil,
187
+ # Array of detailed entity information for each connected account in multi-account
188
+ # mode
189
+ entities: nil,
200
190
  # Whether the connection associated with the `access_token` uses the Assisted
201
191
  # Connect Flow. (`true` if using Assisted Connect, `false` if connection is
202
192
  # automated)
@@ -228,8 +218,7 @@ module FinchAPI
228
218
  customer_email: T.nilable(String),
229
219
  customer_id: T.nilable(String),
230
220
  customer_name: T.nilable(String),
231
- entity_ids: T::Array[String],
232
- entity_mode: FinchAPI::Introspection::EntityMode::TaggedSymbol,
221
+ entities: T::Array[FinchAPI::Introspection::Entity],
233
222
  manual: T::Boolean,
234
223
  payroll_provider_id: String,
235
224
  username: T.nilable(String)
@@ -571,24 +560,59 @@ module FinchAPI
571
560
  end
572
561
  end
573
562
 
574
- # Indicates whether this connection manages a single entity or multiple entities.
575
- module EntityMode
576
- extend FinchAPI::Internal::Type::Enum
563
+ class Entity < FinchAPI::Internal::Type::BaseModel
564
+ OrHash =
565
+ T.type_alias do
566
+ T.any(FinchAPI::Introspection::Entity, FinchAPI::Internal::AnyHash)
567
+ end
577
568
 
578
- TaggedSymbol =
579
- T.type_alias { T.all(Symbol, FinchAPI::Introspection::EntityMode) }
580
- OrSymbol = T.type_alias { T.any(Symbol, String) }
569
+ # The connection account ID for this entity
570
+ sig { returns(String) }
571
+ attr_accessor :id
581
572
 
582
- SINGLE =
583
- T.let(:single, FinchAPI::Introspection::EntityMode::TaggedSymbol)
584
- MULTI = T.let(:multi, FinchAPI::Introspection::EntityMode::TaggedSymbol)
573
+ # The name of the entity (payroll provider company name)
574
+ sig { returns(T.nilable(String)) }
575
+ attr_accessor :name
576
+
577
+ # The source ID of the entity
578
+ sig { returns(T.nilable(String)) }
579
+ attr_accessor :source_id
580
+
581
+ # The type of entity
582
+ sig { returns(T.nilable(String)) }
583
+ attr_accessor :type
584
+
585
+ sig do
586
+ params(
587
+ id: String,
588
+ name: T.nilable(String),
589
+ source_id: T.nilable(String),
590
+ type: T.nilable(String)
591
+ ).returns(T.attached_class)
592
+ end
593
+ def self.new(
594
+ # The connection account ID for this entity
595
+ id:,
596
+ # The name of the entity (payroll provider company name)
597
+ name:,
598
+ # The source ID of the entity
599
+ source_id:,
600
+ # The type of entity
601
+ type:
602
+ )
603
+ end
585
604
 
586
605
  sig do
587
606
  override.returns(
588
- T::Array[FinchAPI::Introspection::EntityMode::TaggedSymbol]
607
+ {
608
+ id: String,
609
+ name: T.nilable(String),
610
+ source_id: T.nilable(String),
611
+ type: T.nilable(String)
612
+ }
589
613
  )
590
614
  end
591
- def self.values
615
+ def to_hash
592
616
  end
593
617
  end
594
618
  end
@@ -15,15 +15,6 @@ module FinchAPI
15
15
  )
16
16
  end
17
17
 
18
- # The entity ID to use when authenticating with a multi-account token. Required
19
- # when using a multi-account token to specify which entity's data to access.
20
- # Example: `123e4567-e89b-12d3-a456-426614174000`
21
- sig { returns(T.nilable(String)) }
22
- attr_reader :entity_id
23
-
24
- sig { params(entity_id: String).void }
25
- attr_writer :entity_id
26
-
27
18
  # Number of items to return
28
19
  sig { returns(T.nilable(Integer)) }
29
20
  attr_reader :limit
@@ -40,17 +31,12 @@ module FinchAPI
40
31
 
41
32
  sig do
42
33
  params(
43
- entity_id: String,
44
34
  limit: Integer,
45
35
  offset: Integer,
46
36
  request_options: FinchAPI::RequestOptions::OrHash
47
37
  ).returns(T.attached_class)
48
38
  end
49
39
  def self.new(
50
- # The entity ID to use when authenticating with a multi-account token. Required
51
- # when using a multi-account token to specify which entity's data to access.
52
- # Example: `123e4567-e89b-12d3-a456-426614174000`
53
- entity_id: nil,
54
40
  # Number of items to return
55
41
  limit: nil,
56
42
  # Index to start from (defaults to 0)
@@ -62,7 +48,6 @@ module FinchAPI
62
48
  sig do
63
49
  override.returns(
64
50
  {
65
- entity_id: String,
66
51
  limit: Integer,
67
52
  offset: Integer,
68
53
  request_options: FinchAPI::RequestOptions
@@ -15,35 +15,15 @@ module FinchAPI
15
15
  )
16
16
  end
17
17
 
18
- # The entity ID to use when authenticating with a multi-account token. Required
19
- # when using a multi-account token to specify which entity's data to access.
20
- # Example: `123e4567-e89b-12d3-a456-426614174000`
21
- sig { returns(T.nilable(String)) }
22
- attr_reader :entity_id
23
-
24
- sig { params(entity_id: String).void }
25
- attr_writer :entity_id
26
-
27
18
  sig do
28
- params(
29
- entity_id: String,
30
- request_options: FinchAPI::RequestOptions::OrHash
31
- ).returns(T.attached_class)
19
+ params(request_options: FinchAPI::RequestOptions::OrHash).returns(
20
+ T.attached_class
21
+ )
32
22
  end
33
- def self.new(
34
- # The entity ID to use when authenticating with a multi-account token. Required
35
- # when using a multi-account token to specify which entity's data to access.
36
- # Example: `123e4567-e89b-12d3-a456-426614174000`
37
- entity_id: nil,
38
- request_options: {}
39
- )
23
+ def self.new(request_options: {})
40
24
  end
41
25
 
42
- sig do
43
- override.returns(
44
- { entity_id: String, request_options: FinchAPI::RequestOptions }
45
- )
46
- end
26
+ sig { override.returns({ request_options: FinchAPI::RequestOptions }) }
47
27
  def to_hash
48
28
  end
49
29
  end
@@ -15,35 +15,15 @@ module FinchAPI
15
15
  )
16
16
  end
17
17
 
18
- # The entity ID to use when authenticating with a multi-account token. Required
19
- # when using a multi-account token to specify which entity's data to access.
20
- # Example: `123e4567-e89b-12d3-a456-426614174000`
21
- sig { returns(T.nilable(String)) }
22
- attr_reader :entity_id
23
-
24
- sig { params(entity_id: String).void }
25
- attr_writer :entity_id
26
-
27
18
  sig do
28
- params(
29
- entity_id: String,
30
- request_options: FinchAPI::RequestOptions::OrHash
31
- ).returns(T.attached_class)
19
+ params(request_options: FinchAPI::RequestOptions::OrHash).returns(
20
+ T.attached_class
21
+ )
32
22
  end
33
- def self.new(
34
- # The entity ID to use when authenticating with a multi-account token. Required
35
- # when using a multi-account token to specify which entity's data to access.
36
- # Example: `123e4567-e89b-12d3-a456-426614174000`
37
- entity_id: nil,
38
- request_options: {}
39
- )
23
+ def self.new(request_options: {})
40
24
  end
41
25
 
42
- sig do
43
- override.returns(
44
- { entity_id: String, request_options: FinchAPI::RequestOptions }
45
- )
46
- end
26
+ sig { override.returns({ request_options: FinchAPI::RequestOptions }) }
47
27
  def to_hash
48
28
  end
49
29
  end
@@ -15,6 +15,13 @@ module FinchAPI
15
15
  )
16
16
  end
17
17
 
18
+ # The entity IDs to specify which entities' data to access.
19
+ sig { returns(T.nilable(T::Array[String])) }
20
+ attr_reader :entity_ids
21
+
22
+ sig { params(entity_ids: T::Array[String]).void }
23
+ attr_writer :entity_ids
24
+
18
25
  sig { returns(T.nilable(String)) }
19
26
  attr_reader :individual_id
20
27
 
@@ -29,12 +36,15 @@ module FinchAPI
29
36
 
30
37
  sig do
31
38
  params(
39
+ entity_ids: T::Array[String],
32
40
  individual_id: String,
33
41
  pay_frequencies: T::Array[String],
34
42
  request_options: FinchAPI::RequestOptions::OrHash
35
43
  ).returns(T.attached_class)
36
44
  end
37
45
  def self.new(
46
+ # The entity IDs to specify which entities' data to access.
47
+ entity_ids: nil,
38
48
  individual_id: nil,
39
49
  pay_frequencies: nil,
40
50
  request_options: {}
@@ -44,6 +54,7 @@ module FinchAPI
44
54
  sig do
45
55
  override.returns(
46
56
  {
57
+ entity_ids: T::Array[String],
47
58
  individual_id: String,
48
59
  pay_frequencies: T::Array[String],
49
60
  request_options: FinchAPI::RequestOptions
@@ -15,15 +15,34 @@ module FinchAPI
15
15
  )
16
16
  end
17
17
 
18
+ # The entity IDs to specify which entities' data to access.
19
+ sig { returns(T.nilable(T::Array[String])) }
20
+ attr_reader :entity_ids
21
+
22
+ sig { params(entity_ids: T::Array[String]).void }
23
+ attr_writer :entity_ids
24
+
18
25
  sig do
19
- params(request_options: FinchAPI::RequestOptions::OrHash).returns(
20
- T.attached_class
21
- )
26
+ params(
27
+ entity_ids: T::Array[String],
28
+ request_options: FinchAPI::RequestOptions::OrHash
29
+ ).returns(T.attached_class)
22
30
  end
23
- def self.new(request_options: {})
31
+ def self.new(
32
+ # The entity IDs to specify which entities' data to access.
33
+ entity_ids: nil,
34
+ request_options: {}
35
+ )
24
36
  end
25
37
 
26
- sig { override.returns({ request_options: FinchAPI::RequestOptions }) }
38
+ sig do
39
+ override.returns(
40
+ {
41
+ entity_ids: T::Array[String],
42
+ request_options: FinchAPI::RequestOptions
43
+ }
44
+ )
45
+ end
27
46
  def to_hash
28
47
  end
29
48
  end