finch-api 0.1.0.pre.alpha.1 → 0.1.0.pre.alpha.2

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 (417) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +63 -20
  3. data/lib/finch-api/base_client.rb +52 -59
  4. data/lib/finch-api/base_model.rb +453 -415
  5. data/lib/finch-api/base_page.rb +34 -15
  6. data/lib/finch-api/client.rb +3 -7
  7. data/lib/finch-api/errors.rb +12 -17
  8. data/lib/finch-api/extern.rb +1 -4
  9. data/lib/finch-api/individuals_page.rb +28 -34
  10. data/lib/finch-api/models/account_update_event.rb +6 -31
  11. data/lib/finch-api/models/company_event.rb +3 -11
  12. data/lib/finch-api/models/connect/session_new_params.rb +9 -52
  13. data/lib/finch-api/models/connect/session_reauthenticate_params.rb +3 -22
  14. data/lib/finch-api/models/connection_status_type.rb +3 -21
  15. data/lib/finch-api/models/create_access_token_response.rb +6 -30
  16. data/lib/finch-api/models/directory_event.rb +3 -15
  17. data/lib/finch-api/models/employment_event.rb +3 -15
  18. data/lib/finch-api/models/hris/benefit_contribution.rb +3 -14
  19. data/lib/finch-api/models/hris/benefit_features_and_operations.rb +9 -39
  20. data/lib/finch-api/models/hris/benefit_frequency.rb +3 -15
  21. data/lib/finch-api/models/hris/benefit_type.rb +3 -22
  22. data/lib/finch-api/models/hris/benefits/enrolled_individual.rb +3 -18
  23. data/lib/finch-api/models/hris/benefits/individual_benefit.rb +3 -14
  24. data/lib/finch-api/models/hris/benefits/individual_enroll_many_params.rb +9 -40
  25. data/lib/finch-api/models/hris/company.rb +9 -52
  26. data/lib/finch-api/models/hris/document_list_params.rb +3 -13
  27. data/lib/finch-api/models/hris/document_response.rb +3 -14
  28. data/lib/finch-api/models/hris/document_retreive_response.rb +7 -23
  29. data/lib/finch-api/models/hris/employment_data.rb +9 -58
  30. data/lib/finch-api/models/hris/individual.rb +12 -66
  31. data/lib/finch-api/models/hris/pay_statement.rb +12 -70
  32. data/lib/finch-api/models/hris/payment.rb +3 -21
  33. data/lib/finch-api/models/hris/supported_benefit.rb +9 -39
  34. data/lib/finch-api/models/hris/w42005.rb +12 -49
  35. data/lib/finch-api/models/hris/w42020.rb +8 -29
  36. data/lib/finch-api/models/income.rb +3 -22
  37. data/lib/finch-api/models/individual_event.rb +3 -15
  38. data/lib/finch-api/models/introspection.rb +9 -50
  39. data/lib/finch-api/models/job_completion_event.rb +3 -21
  40. data/lib/finch-api/models/jobs/automated_async_job.rb +6 -35
  41. data/lib/finch-api/models/jobs/automated_create_params.rb +3 -12
  42. data/lib/finch-api/models/jobs/automated_list_response.rb +100 -0
  43. data/lib/finch-api/models/jobs/manual_async_job.rb +3 -17
  44. data/lib/finch-api/models/operation_support.rb +3 -18
  45. data/lib/finch-api/models/pay_statement_event.rb +3 -15
  46. data/lib/finch-api/models/payment_event.rb +3 -15
  47. data/lib/finch-api/models/payroll/pay_group_list_response.rb +3 -21
  48. data/lib/finch-api/models/payroll/pay_group_retrieve_response.rb +3 -21
  49. data/lib/finch-api/models/provider.rb +3 -20
  50. data/lib/finch-api/models/sandbox/company_update_params.rb +9 -52
  51. data/lib/finch-api/models/sandbox/company_update_response.rb +9 -52
  52. data/lib/finch-api/models/sandbox/connection_create_params.rb +3 -17
  53. data/lib/finch-api/models/sandbox/connection_create_response.rb +3 -17
  54. data/lib/finch-api/models/sandbox/connections/account_create_params.rb +3 -17
  55. data/lib/finch-api/models/sandbox/connections/account_create_response.rb +3 -17
  56. data/lib/finch-api/models/sandbox/connections/account_update_response.rb +3 -17
  57. data/lib/finch-api/models/sandbox/directory_create_params.rb +21 -124
  58. data/lib/finch-api/models/sandbox/employment_update_params.rb +9 -58
  59. data/lib/finch-api/models/sandbox/employment_update_response.rb +9 -58
  60. data/lib/finch-api/models/sandbox/individual_update_params.rb +12 -66
  61. data/lib/finch-api/models/sandbox/individual_update_response.rb +12 -66
  62. data/lib/finch-api/models/sandbox/job_create_params.rb +3 -12
  63. data/lib/finch-api/models/sandbox/jobs/configuration_retrieve_response.rb +2 -1
  64. data/lib/finch-api/models/sandbox/jobs/sandbox_job_configuration.rb +6 -28
  65. data/lib/finch-api/models/sandbox/payment_create_params.rb +12 -70
  66. data/lib/finch-api/models/webhook_event.rb +10 -27
  67. data/lib/finch-api/page.rb +28 -34
  68. data/lib/finch-api/pooled_net_requester.rb +51 -46
  69. data/lib/finch-api/request_options.rb +5 -12
  70. data/lib/finch-api/resources/access_tokens.rb +0 -2
  71. data/lib/finch-api/resources/account.rb +0 -3
  72. data/lib/finch-api/resources/connect/sessions.rb +0 -3
  73. data/lib/finch-api/resources/connect.rb +0 -1
  74. data/lib/finch-api/resources/hris/benefits/individuals.rb +2 -6
  75. data/lib/finch-api/resources/hris/benefits.rb +0 -6
  76. data/lib/finch-api/resources/hris/company.rb +0 -2
  77. data/lib/finch-api/resources/hris/directory.rb +1 -24
  78. data/lib/finch-api/resources/hris/documents.rb +4 -7
  79. data/lib/finch-api/resources/hris/employments.rb +0 -2
  80. data/lib/finch-api/resources/hris/individuals.rb +0 -2
  81. data/lib/finch-api/resources/hris/pay_statements.rb +0 -2
  82. data/lib/finch-api/resources/hris/payments.rb +0 -2
  83. data/lib/finch-api/resources/hris.rb +0 -1
  84. data/lib/finch-api/resources/jobs/automated.rb +2 -7
  85. data/lib/finch-api/resources/jobs/manual.rb +0 -2
  86. data/lib/finch-api/resources/jobs.rb +0 -1
  87. data/lib/finch-api/resources/payroll/pay_groups.rb +0 -3
  88. data/lib/finch-api/resources/payroll.rb +0 -1
  89. data/lib/finch-api/resources/providers.rb +0 -2
  90. data/lib/finch-api/resources/request_forwarding.rb +0 -2
  91. data/lib/finch-api/resources/sandbox/company.rb +0 -2
  92. data/lib/finch-api/resources/sandbox/connections/accounts.rb +0 -3
  93. data/lib/finch-api/resources/sandbox/connections.rb +0 -2
  94. data/lib/finch-api/resources/sandbox/directory.rb +0 -2
  95. data/lib/finch-api/resources/sandbox/employment.rb +0 -2
  96. data/lib/finch-api/resources/sandbox/individual.rb +0 -2
  97. data/lib/finch-api/resources/sandbox/jobs/configuration.rb +0 -3
  98. data/lib/finch-api/resources/sandbox/jobs.rb +0 -2
  99. data/lib/finch-api/resources/sandbox/payment.rb +0 -2
  100. data/lib/finch-api/resources/sandbox.rb +0 -1
  101. data/lib/finch-api/resources/webhooks.rb +0 -1
  102. data/lib/finch-api/responses_page.rb +24 -31
  103. data/lib/finch-api/single_page.rb +23 -31
  104. data/lib/finch-api/util.rb +216 -124
  105. data/lib/finch-api/version.rb +1 -1
  106. data/lib/finch-api.rb +17 -0
  107. data/manifest.yaml +1 -0
  108. data/rbi/lib/finch-api/base_client.rbi +89 -66
  109. data/rbi/lib/finch-api/base_model.rbi +403 -236
  110. data/rbi/lib/finch-api/base_page.rbi +3 -6
  111. data/rbi/lib/finch-api/client.rbi +23 -28
  112. data/rbi/lib/finch-api/errors.rbi +20 -22
  113. data/rbi/lib/finch-api/extern.rbi +1 -1
  114. data/rbi/lib/finch-api/individuals_page.rbi +5 -23
  115. data/rbi/lib/finch-api/models/access_token_create_params.rbi +13 -24
  116. data/rbi/lib/finch-api/models/account_disconnect_params.rbi +9 -2
  117. data/rbi/lib/finch-api/models/account_introspect_params.rbi +9 -2
  118. data/rbi/lib/finch-api/models/account_update_event.rbi +871 -983
  119. data/rbi/lib/finch-api/models/base_webhook_event.rbi +13 -19
  120. data/rbi/lib/finch-api/models/company_event.rbi +28 -20
  121. data/rbi/lib/finch-api/models/connect/session_new_params.rbi +90 -104
  122. data/rbi/lib/finch-api/models/connect/session_new_response.rbi +6 -14
  123. data/rbi/lib/finch-api/models/connect/session_reauthenticate_params.rbi +37 -47
  124. data/rbi/lib/finch-api/models/connect/session_reauthenticate_response.rbi +6 -14
  125. data/rbi/lib/finch-api/models/connection_status_type.rbi +13 -9
  126. data/rbi/lib/finch-api/models/create_access_token_response.rbi +61 -78
  127. data/rbi/lib/finch-api/models/directory_event.rbi +42 -27
  128. data/rbi/lib/finch-api/models/disconnect_response.rbi +4 -8
  129. data/rbi/lib/finch-api/models/employment_event.rbi +42 -27
  130. data/rbi/lib/finch-api/models/hris/benefit_contribution.rbi +29 -21
  131. data/rbi/lib/finch-api/models/hris/benefit_create_params.rbi +18 -26
  132. data/rbi/lib/finch-api/models/hris/benefit_features_and_operations.rbi +199 -86
  133. data/rbi/lib/finch-api/models/hris/benefit_frequency.rbi +9 -6
  134. data/rbi/lib/finch-api/models/hris/benefit_list_params.rbi +9 -2
  135. data/rbi/lib/finch-api/models/hris/benefit_list_supported_benefits_params.rbi +9 -2
  136. data/rbi/lib/finch-api/models/hris/benefit_retrieve_params.rbi +9 -2
  137. data/rbi/lib/finch-api/models/hris/benefit_type.rbi +26 -22
  138. data/rbi/lib/finch-api/models/hris/benefit_update_params.rbi +7 -11
  139. data/rbi/lib/finch-api/models/hris/benefits/enrolled_individual.rbi +43 -49
  140. data/rbi/lib/finch-api/models/hris/benefits/individual_benefit.rbi +74 -63
  141. data/rbi/lib/finch-api/models/hris/benefits/individual_enroll_many_params.rbi +249 -104
  142. data/rbi/lib/finch-api/models/hris/benefits/individual_enrolled_ids_params.rbi +9 -2
  143. data/rbi/lib/finch-api/models/hris/benefits/individual_enrolled_ids_response.rbi +4 -14
  144. data/rbi/lib/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rbi +11 -8
  145. data/rbi/lib/finch-api/models/hris/benefits/individual_unenroll_many_params.rbi +7 -8
  146. data/rbi/lib/finch-api/models/hris/benefits/unenrolled_individual.rbi +23 -39
  147. data/rbi/lib/finch-api/models/hris/benefits_support.rbi +88 -86
  148. data/rbi/lib/finch-api/models/hris/benfit_contribution.rbi +1 -1
  149. data/rbi/lib/finch-api/models/hris/company.rbi +119 -171
  150. data/rbi/lib/finch-api/models/hris/company_benefit.rbi +13 -32
  151. data/rbi/lib/finch-api/models/hris/company_retrieve_params.rbi +9 -2
  152. data/rbi/lib/finch-api/models/hris/create_company_benefits_response.rbi +3 -8
  153. data/rbi/lib/finch-api/models/hris/directory_list_individuals_params.rbi +11 -13
  154. data/rbi/lib/finch-api/models/hris/directory_list_params.rbi +11 -13
  155. data/rbi/lib/finch-api/models/hris/document_list_params.rbi +32 -31
  156. data/rbi/lib/finch-api/models/hris/document_list_response.rbi +10 -17
  157. data/rbi/lib/finch-api/models/hris/document_response.rbi +40 -43
  158. data/rbi/lib/finch-api/models/hris/document_retreive_params.rbi +9 -2
  159. data/rbi/lib/finch-api/models/hris/document_retreive_response.rbi +6 -4
  160. data/rbi/lib/finch-api/models/hris/employment_data.rbi +163 -205
  161. data/rbi/lib/finch-api/models/hris/employment_data_response.rbi +18 -17
  162. data/rbi/lib/finch-api/models/hris/employment_retrieve_many_params.rbi +12 -21
  163. data/rbi/lib/finch-api/models/hris/individual.rbi +126 -151
  164. data/rbi/lib/finch-api/models/hris/individual_in_directory.rbi +42 -68
  165. data/rbi/lib/finch-api/models/hris/individual_response.rbi +18 -17
  166. data/rbi/lib/finch-api/models/hris/individual_retrieve_many_params.rbi +27 -31
  167. data/rbi/lib/finch-api/models/hris/pay_statement.rbi +290 -341
  168. data/rbi/lib/finch-api/models/hris/pay_statement_response.rbi +18 -20
  169. data/rbi/lib/finch-api/models/hris/pay_statement_response_body.rbi +13 -16
  170. data/rbi/lib/finch-api/models/hris/pay_statement_retrieve_many_params.rbi +18 -31
  171. data/rbi/lib/finch-api/models/hris/payment.rbi +63 -103
  172. data/rbi/lib/finch-api/models/hris/payment_list_params.rbi +9 -15
  173. data/rbi/lib/finch-api/models/hris/support_per_benefit_type.rbi +10 -14
  174. data/rbi/lib/finch-api/models/hris/supported_benefit.rbi +83 -79
  175. data/rbi/lib/finch-api/models/hris/update_company_benefit_response.rbi +3 -8
  176. data/rbi/lib/finch-api/models/hris/w42005.rbi +86 -70
  177. data/rbi/lib/finch-api/models/hris/w42020.rbi +84 -86
  178. data/rbi/lib/finch-api/models/income.rbi +34 -41
  179. data/rbi/lib/finch-api/models/individual_event.rbi +42 -27
  180. data/rbi/lib/finch-api/models/introspection.rbi +138 -178
  181. data/rbi/lib/finch-api/models/job_completion_event.rbi +48 -37
  182. data/rbi/lib/finch-api/models/jobs/automated_async_job.rbi +66 -94
  183. data/rbi/lib/finch-api/models/jobs/automated_create_params.rbi +26 -33
  184. data/rbi/lib/finch-api/models/jobs/automated_create_response.rbi +11 -31
  185. data/rbi/lib/finch-api/models/jobs/automated_list_params.rbi +11 -13
  186. data/rbi/lib/finch-api/models/jobs/automated_list_response.rbi +126 -0
  187. data/rbi/lib/finch-api/models/jobs/automated_retrieve_params.rbi +9 -2
  188. data/rbi/lib/finch-api/models/jobs/manual_async_job.rbi +32 -27
  189. data/rbi/lib/finch-api/models/jobs/manual_retrieve_params.rbi +9 -2
  190. data/rbi/lib/finch-api/models/location.rbi +16 -59
  191. data/rbi/lib/finch-api/models/money.rbi +7 -13
  192. data/rbi/lib/finch-api/models/operation_support.rbi +18 -7
  193. data/rbi/lib/finch-api/models/operation_support_matrix.rbi +65 -27
  194. data/rbi/lib/finch-api/models/paging.rbi +10 -12
  195. data/rbi/lib/finch-api/models/pay_statement_event.rbi +46 -32
  196. data/rbi/lib/finch-api/models/payment_event.rbi +39 -34
  197. data/rbi/lib/finch-api/models/payroll/pay_group_list_params.rbi +9 -13
  198. data/rbi/lib/finch-api/models/payroll/pay_group_list_response.rbi +55 -30
  199. data/rbi/lib/finch-api/models/payroll/pay_group_retrieve_params.rbi +9 -2
  200. data/rbi/lib/finch-api/models/payroll/pay_group_retrieve_response.rbi +45 -46
  201. data/rbi/lib/finch-api/models/provider.rbi +873 -964
  202. data/rbi/lib/finch-api/models/provider_list_params.rbi +9 -2
  203. data/rbi/lib/finch-api/models/request_forwarding_forward_params.rbi +20 -33
  204. data/rbi/lib/finch-api/models/request_forwarding_forward_response.rbi +40 -59
  205. data/rbi/lib/finch-api/models/sandbox/company_update_params.rbi +144 -166
  206. data/rbi/lib/finch-api/models/sandbox/company_update_response.rbi +145 -174
  207. data/rbi/lib/finch-api/models/sandbox/connection_create_params.rbi +43 -39
  208. data/rbi/lib/finch-api/models/sandbox/connection_create_response.rbi +38 -59
  209. data/rbi/lib/finch-api/models/sandbox/connections/account_create_params.rbi +62 -39
  210. data/rbi/lib/finch-api/models/sandbox/connections/account_create_response.rbi +54 -62
  211. data/rbi/lib/finch-api/models/sandbox/connections/account_update_params.rbi +17 -11
  212. data/rbi/lib/finch-api/models/sandbox/connections/account_update_response.rbi +55 -54
  213. data/rbi/lib/finch-api/models/sandbox/directory_create_params.rbi +380 -332
  214. data/rbi/lib/finch-api/models/sandbox/directory_create_response.rbi +1 -1
  215. data/rbi/lib/finch-api/models/sandbox/employment_update_params.rbi +190 -194
  216. data/rbi/lib/finch-api/models/sandbox/employment_update_response.rbi +195 -198
  217. data/rbi/lib/finch-api/models/sandbox/individual_update_params.rbi +151 -145
  218. data/rbi/lib/finch-api/models/sandbox/individual_update_response.rbi +163 -151
  219. data/rbi/lib/finch-api/models/sandbox/job_create_params.rbi +22 -19
  220. data/rbi/lib/finch-api/models/sandbox/job_create_response.rbi +11 -31
  221. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_retrieve_params.rbi +9 -2
  222. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_retrieve_response.rbi +2 -1
  223. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_update_params.rbi +9 -2
  224. data/rbi/lib/finch-api/models/sandbox/jobs/sandbox_job_configuration.rbi +56 -26
  225. data/rbi/lib/finch-api/models/sandbox/payment_create_params.rbi +409 -393
  226. data/rbi/lib/finch-api/models/sandbox/payment_create_response.rbi +6 -14
  227. data/rbi/lib/finch-api/models/webhook_event.rbi +4 -4
  228. data/rbi/lib/finch-api/page.rbi +5 -23
  229. data/rbi/lib/finch-api/pooled_net_requester.rbi +39 -16
  230. data/rbi/lib/finch-api/request_options.rbi +33 -54
  231. data/rbi/lib/finch-api/resources/access_tokens.rbi +4 -3
  232. data/rbi/lib/finch-api/resources/account.rbi +6 -4
  233. data/rbi/lib/finch-api/resources/connect/sessions.rbi +17 -8
  234. data/rbi/lib/finch-api/resources/connect.rbi +3 -4
  235. data/rbi/lib/finch-api/resources/hris/benefits/individuals.rbi +33 -10
  236. data/rbi/lib/finch-api/resources/hris/benefits.rbi +32 -13
  237. data/rbi/lib/finch-api/resources/hris/company.rbi +4 -3
  238. data/rbi/lib/finch-api/resources/hris/directory.rbi +11 -15
  239. data/rbi/lib/finch-api/resources/hris/documents.rbi +27 -7
  240. data/rbi/lib/finch-api/resources/hris/employments.rbi +10 -5
  241. data/rbi/lib/finch-api/resources/hris/individuals.rbi +6 -5
  242. data/rbi/lib/finch-api/resources/hris/pay_statements.rbi +13 -5
  243. data/rbi/lib/finch-api/resources/hris/payments.rbi +13 -4
  244. data/rbi/lib/finch-api/resources/hris.rbi +10 -18
  245. data/rbi/lib/finch-api/resources/jobs/automated.rbi +39 -10
  246. data/rbi/lib/finch-api/resources/jobs/manual.rbi +5 -3
  247. data/rbi/lib/finch-api/resources/jobs.rbi +4 -6
  248. data/rbi/lib/finch-api/resources/payroll/pay_groups.rbi +6 -4
  249. data/rbi/lib/finch-api/resources/payroll.rbi +3 -4
  250. data/rbi/lib/finch-api/resources/providers.rbi +4 -3
  251. data/rbi/lib/finch-api/resources/request_forwarding.rbi +27 -4
  252. data/rbi/lib/finch-api/resources/sandbox/company.rbi +19 -7
  253. data/rbi/lib/finch-api/resources/sandbox/connections/accounts.rbi +19 -7
  254. data/rbi/lib/finch-api/resources/sandbox/connections.rbi +10 -6
  255. data/rbi/lib/finch-api/resources/sandbox/directory.rbi +12 -6
  256. data/rbi/lib/finch-api/resources/sandbox/employment.rbi +30 -11
  257. data/rbi/lib/finch-api/resources/sandbox/individual.rbi +26 -8
  258. data/rbi/lib/finch-api/resources/sandbox/jobs/configuration.rbi +9 -7
  259. data/rbi/lib/finch-api/resources/sandbox/jobs.rbi +11 -7
  260. data/rbi/lib/finch-api/resources/sandbox/payment.rbi +5 -4
  261. data/rbi/lib/finch-api/resources/sandbox.rbi +9 -16
  262. data/rbi/lib/finch-api/resources/webhooks.rbi +2 -2
  263. data/rbi/lib/finch-api/responses_page.rbi +4 -17
  264. data/rbi/lib/finch-api/single_page.rbi +4 -12
  265. data/rbi/lib/finch-api/util.rbi +228 -115
  266. data/rbi/lib/finch-api/version.rbi +1 -1
  267. data/sig/finch-api/base_client.rbs +20 -15
  268. data/sig/finch-api/base_model.rbs +36 -18
  269. data/sig/finch-api/base_page.rbs +1 -1
  270. data/sig/finch-api/client.rbs +8 -8
  271. data/sig/finch-api/errors.rbs +21 -21
  272. data/sig/finch-api/individuals_page.rbs +2 -7
  273. data/sig/finch-api/models/access_token_create_params.rbs +7 -12
  274. data/sig/finch-api/models/account_disconnect_params.rbs +1 -6
  275. data/sig/finch-api/models/account_introspect_params.rbs +1 -6
  276. data/sig/finch-api/models/account_update_event.rbs +204 -361
  277. data/sig/finch-api/models/base_webhook_event.rbs +5 -5
  278. data/sig/finch-api/models/company_event.rbs +13 -11
  279. data/sig/finch-api/models/connect/session_new_params.rbs +28 -32
  280. data/sig/finch-api/models/connect/session_new_response.rbs +1 -6
  281. data/sig/finch-api/models/connect/session_reauthenticate_params.rbs +11 -14
  282. data/sig/finch-api/models/connect/session_reauthenticate_response.rbs +1 -6
  283. data/sig/finch-api/models/connection_status_type.rbs +4 -2
  284. data/sig/finch-api/models/create_access_token_response.rbs +20 -21
  285. data/sig/finch-api/models/directory_event.rbs +13 -19
  286. data/sig/finch-api/models/disconnect_response.rbs +1 -5
  287. data/sig/finch-api/models/employment_event.rbs +13 -19
  288. data/sig/finch-api/models/hris/benefit_contribution.rbs +8 -11
  289. data/sig/finch-api/models/hris/benefit_create_params.rbs +6 -11
  290. data/sig/finch-api/models/hris/benefit_features_and_operations.rbs +25 -29
  291. data/sig/finch-api/models/hris/benefit_frequency.rbs +4 -2
  292. data/sig/finch-api/models/hris/benefit_list_params.rbs +1 -6
  293. data/sig/finch-api/models/hris/benefit_list_supported_benefits_params.rbs +1 -6
  294. data/sig/finch-api/models/hris/benefit_retrieve_params.rbs +1 -6
  295. data/sig/finch-api/models/hris/benefit_type.rbs +4 -2
  296. data/sig/finch-api/models/hris/benefit_update_params.rbs +4 -6
  297. data/sig/finch-api/models/hris/benefits/enrolled_individual.rbs +14 -18
  298. data/sig/finch-api/models/hris/benefits/individual_benefit.rbs +16 -25
  299. data/sig/finch-api/models/hris/benefits/individual_enroll_many_params.rbs +35 -54
  300. data/sig/finch-api/models/hris/benefits/individual_enrolled_ids_params.rbs +1 -6
  301. data/sig/finch-api/models/hris/benefits/individual_enrolled_ids_response.rbs +4 -6
  302. data/sig/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rbs +4 -9
  303. data/sig/finch-api/models/hris/benefits/individual_unenroll_many_params.rbs +4 -9
  304. data/sig/finch-api/models/hris/benefits/unenrolled_individual.rbs +10 -16
  305. data/sig/finch-api/models/hris/benefits_support.rbs +14 -18
  306. data/sig/finch-api/models/hris/benfit_contribution.rbs +0 -1
  307. data/sig/finch-api/models/hris/company.rbs +39 -57
  308. data/sig/finch-api/models/hris/company_benefit.rbs +6 -10
  309. data/sig/finch-api/models/hris/company_retrieve_params.rbs +1 -6
  310. data/sig/finch-api/models/hris/create_company_benefits_response.rbs +1 -6
  311. data/sig/finch-api/models/hris/directory_list_individuals_params.rbs +5 -10
  312. data/sig/finch-api/models/hris/directory_list_params.rbs +5 -10
  313. data/sig/finch-api/models/hris/document_list_params.rbs +11 -14
  314. data/sig/finch-api/models/hris/document_list_response.rbs +4 -9
  315. data/sig/finch-api/models/hris/document_response.rbs +11 -14
  316. data/sig/finch-api/models/hris/document_retreive_params.rbs +1 -6
  317. data/sig/finch-api/models/hris/document_retreive_response.rbs +4 -2
  318. data/sig/finch-api/models/hris/employment_data.rbs +41 -59
  319. data/sig/finch-api/models/hris/employment_data_response.rbs +5 -10
  320. data/sig/finch-api/models/hris/employment_retrieve_many_params.rbs +5 -15
  321. data/sig/finch-api/models/hris/individual.rbs +39 -45
  322. data/sig/finch-api/models/hris/individual_in_directory.rbs +11 -26
  323. data/sig/finch-api/models/hris/individual_response.rbs +5 -10
  324. data/sig/finch-api/models/hris/individual_retrieve_many_params.rbs +7 -22
  325. data/sig/finch-api/models/hris/pay_statement.rbs +75 -131
  326. data/sig/finch-api/models/hris/pay_statement_response.rbs +5 -10
  327. data/sig/finch-api/models/hris/pay_statement_response_body.rbs +4 -9
  328. data/sig/finch-api/models/hris/pay_statement_retrieve_many_params.rbs +9 -15
  329. data/sig/finch-api/models/hris/payment.rbs +19 -26
  330. data/sig/finch-api/models/hris/payment_list_params.rbs +5 -10
  331. data/sig/finch-api/models/hris/support_per_benefit_type.rbs +4 -9
  332. data/sig/finch-api/models/hris/supported_benefit.rbs +22 -21
  333. data/sig/finch-api/models/hris/update_company_benefit_response.rbs +1 -6
  334. data/sig/finch-api/models/hris/w42005.rbs +26 -30
  335. data/sig/finch-api/models/hris/w42020.rbs +23 -25
  336. data/sig/finch-api/models/income.rbs +10 -10
  337. data/sig/finch-api/models/individual_event.rbs +13 -19
  338. data/sig/finch-api/models/introspection.rbs +43 -54
  339. data/sig/finch-api/models/job_completion_event.rbs +13 -20
  340. data/sig/finch-api/models/jobs/automated_async_job.rbs +20 -26
  341. data/sig/finch-api/models/jobs/automated_create_params.rbs +10 -18
  342. data/sig/finch-api/models/jobs/automated_create_response.rbs +6 -11
  343. data/sig/finch-api/models/jobs/automated_list_params.rbs +5 -10
  344. data/sig/finch-api/models/jobs/automated_list_response.rbs +82 -0
  345. data/sig/finch-api/models/jobs/automated_retrieve_params.rbs +1 -6
  346. data/sig/finch-api/models/jobs/manual_async_job.rbs +9 -11
  347. data/sig/finch-api/models/jobs/manual_retrieve_params.rbs +1 -6
  348. data/sig/finch-api/models/location.rbs +10 -12
  349. data/sig/finch-api/models/money.rbs +1 -3
  350. data/sig/finch-api/models/operation_support.rbs +4 -2
  351. data/sig/finch-api/models/operation_support_matrix.rbs +6 -10
  352. data/sig/finch-api/models/paging.rbs +1 -3
  353. data/sig/finch-api/models/pay_statement_event.rbs +13 -20
  354. data/sig/finch-api/models/payment_event.rbs +13 -17
  355. data/sig/finch-api/models/payroll/pay_group_list_params.rbs +5 -10
  356. data/sig/finch-api/models/payroll/pay_group_list_response.rbs +9 -12
  357. data/sig/finch-api/models/payroll/pay_group_retrieve_params.rbs +1 -6
  358. data/sig/finch-api/models/payroll/pay_group_retrieve_response.rbs +10 -13
  359. data/sig/finch-api/models/provider.rbs +200 -347
  360. data/sig/finch-api/models/provider_list_params.rbs +1 -5
  361. data/sig/finch-api/models/request_forwarding_forward_params.rbs +8 -13
  362. data/sig/finch-api/models/request_forwarding_forward_response.rbs +13 -23
  363. data/sig/finch-api/models/sandbox/company_update_params.rbs +39 -58
  364. data/sig/finch-api/models/sandbox/company_update_response.rbs +38 -57
  365. data/sig/finch-api/models/sandbox/connection_create_params.rbs +11 -14
  366. data/sig/finch-api/models/sandbox/connection_create_response.rbs +14 -17
  367. data/sig/finch-api/models/sandbox/connections/account_create_params.rbs +11 -14
  368. data/sig/finch-api/models/sandbox/connections/account_create_response.rbs +13 -16
  369. data/sig/finch-api/models/sandbox/connections/account_update_params.rbs +4 -9
  370. data/sig/finch-api/models/sandbox/connections/account_update_response.rbs +12 -15
  371. data/sig/finch-api/models/sandbox/directory_create_params.rbs +76 -102
  372. data/sig/finch-api/models/sandbox/employment_update_params.rbs +40 -59
  373. data/sig/finch-api/models/sandbox/employment_update_response.rbs +40 -59
  374. data/sig/finch-api/models/sandbox/individual_update_params.rbs +39 -46
  375. data/sig/finch-api/models/sandbox/individual_update_response.rbs +39 -46
  376. data/sig/finch-api/models/sandbox/job_create_params.rbs +8 -11
  377. data/sig/finch-api/models/sandbox/job_create_response.rbs +6 -11
  378. data/sig/finch-api/models/sandbox/jobs/configuration_retrieve_params.rbs +1 -6
  379. data/sig/finch-api/models/sandbox/jobs/configuration_update_params.rbs +1 -6
  380. data/sig/finch-api/models/sandbox/jobs/sandbox_job_configuration.rbs +12 -13
  381. data/sig/finch-api/models/sandbox/payment_create_params.rbs +81 -143
  382. data/sig/finch-api/models/sandbox/payment_create_response.rbs +1 -6
  383. data/sig/finch-api/models/webhook_event.rbs +5 -3
  384. data/sig/finch-api/page.rbs +2 -7
  385. data/sig/finch-api/pooled_net_requester.rbs +13 -4
  386. data/sig/finch-api/request_options.rbs +6 -2
  387. data/sig/finch-api/resources/access_tokens.rbs +7 -11
  388. data/sig/finch-api/resources/account.rbs +6 -16
  389. data/sig/finch-api/resources/connect/sessions.rbs +19 -29
  390. data/sig/finch-api/resources/hris/benefits/individuals.rbs +19 -43
  391. data/sig/finch-api/resources/hris/benefits.rbs +21 -48
  392. data/sig/finch-api/resources/hris/company.rbs +3 -8
  393. data/sig/finch-api/resources/hris/directory.rbs +6 -20
  394. data/sig/finch-api/resources/hris/documents.rbs +11 -22
  395. data/sig/finch-api/resources/hris/employments.rbs +4 -9
  396. data/sig/finch-api/resources/hris/individuals.rbs +5 -10
  397. data/sig/finch-api/resources/hris/pay_statements.rbs +4 -9
  398. data/sig/finch-api/resources/hris/payments.rbs +5 -10
  399. data/sig/finch-api/resources/jobs/automated.rbs +14 -30
  400. data/sig/finch-api/resources/jobs/manual.rbs +4 -10
  401. data/sig/finch-api/resources/payroll/pay_groups.rbs +9 -20
  402. data/sig/finch-api/resources/providers.rbs +3 -7
  403. data/sig/finch-api/resources/request_forwarding.rbs +8 -13
  404. data/sig/finch-api/resources/sandbox/company.rbs +11 -16
  405. data/sig/finch-api/resources/sandbox/connections/accounts.rbs +11 -21
  406. data/sig/finch-api/resources/sandbox/connections.rbs +7 -12
  407. data/sig/finch-api/resources/sandbox/directory.rbs +4 -9
  408. data/sig/finch-api/resources/sandbox/employment.rbs +22 -28
  409. data/sig/finch-api/resources/sandbox/individual.rbs +16 -22
  410. data/sig/finch-api/resources/sandbox/jobs/configuration.rbs +8 -18
  411. data/sig/finch-api/resources/sandbox/jobs.rbs +4 -9
  412. data/sig/finch-api/resources/sandbox/payment.rbs +6 -11
  413. data/sig/finch-api/responses_page.rbs +2 -7
  414. data/sig/finch-api/single_page.rbs +2 -7
  415. data/sig/finch-api/util.rbs +37 -12
  416. data/sig/finch-api/version.rbs +1 -1
  417. metadata +7 -4
@@ -4,24 +4,16 @@ module FinchAPI
4
4
  module Models
5
5
  module Sandbox
6
6
  class PaymentCreateResponse < FinchAPI::BaseModel
7
+ # The date of the payment.
7
8
  sig { returns(String) }
8
- def pay_date
9
- end
10
-
11
- sig { params(_: String).returns(String) }
12
- def pay_date=(_)
13
- end
9
+ attr_accessor :pay_date
14
10
 
11
+ # The ID of the payment.
15
12
  sig { returns(String) }
16
- def payment_id
17
- end
18
-
19
- sig { params(_: String).returns(String) }
20
- def payment_id=(_)
21
- end
13
+ attr_accessor :payment_id
22
14
 
23
- sig { params(pay_date: String, payment_id: String).void }
24
- def initialize(pay_date:, payment_id:)
15
+ sig { params(pay_date: String, payment_id: String).returns(T.attached_class) }
16
+ def self.new(pay_date:, payment_id:)
25
17
  end
26
18
 
27
19
  sig { override.returns({pay_date: String, payment_id: String}) }
@@ -2,16 +2,16 @@
2
2
 
3
3
  module FinchAPI
4
4
  module Models
5
- class WebhookEvent < FinchAPI::Union
6
- abstract!
5
+ module WebhookEvent
6
+ extend FinchAPI::Union
7
7
 
8
8
  sig do
9
9
  override
10
10
  .returns(
11
- [[NilClass, FinchAPI::Models::AccountUpdateEvent], [NilClass, FinchAPI::Models::JobCompletionEvent], [NilClass, FinchAPI::Models::CompanyEvent], [NilClass, FinchAPI::Models::DirectoryEvent], [NilClass, FinchAPI::Models::EmploymentEvent], [NilClass, FinchAPI::Models::IndividualEvent], [NilClass, FinchAPI::Models::PaymentEvent], [NilClass, FinchAPI::Models::PayStatementEvent]]
11
+ [FinchAPI::Models::AccountUpdateEvent, FinchAPI::Models::CompanyEvent, FinchAPI::Models::JobCompletionEvent, FinchAPI::Models::DirectoryEvent, FinchAPI::Models::EmploymentEvent, FinchAPI::Models::IndividualEvent, FinchAPI::Models::PaymentEvent, FinchAPI::Models::PayStatementEvent]
12
12
  )
13
13
  end
14
- private_class_method def self.variants
14
+ def self.variants
15
15
  end
16
16
  end
17
17
  end
@@ -6,32 +6,14 @@ module FinchAPI
6
6
 
7
7
  Elem = type_member
8
8
 
9
- sig { returns(T::Array[Elem]) }
10
- def data
11
- end
12
-
13
- sig { params(_: T::Array[Elem]).returns(T::Array[Elem]) }
14
- def data=(_)
15
- end
9
+ sig { returns(T.nilable(T::Array[Elem])) }
10
+ attr_accessor :data
16
11
 
17
12
  sig { returns(FinchAPI::Models::Paging) }
18
- def paging
19
- end
13
+ attr_accessor :paging
20
14
 
21
- sig { params(_: FinchAPI::Models::Paging).returns(FinchAPI::Models::Paging) }
22
- def paging=(_)
23
- end
24
-
25
- sig do
26
- params(
27
- client: FinchAPI::BaseClient,
28
- req: FinchAPI::BaseClient::RequestComponentsShape,
29
- headers: T.any(T::Hash[String, String], Net::HTTPHeader),
30
- unwrapped: T::Hash[Symbol, T.anything]
31
- )
32
- .void
33
- end
34
- def initialize(client:, req:, headers:, unwrapped:)
15
+ sig { returns(String) }
16
+ def inspect
35
17
  end
36
18
  end
37
19
  end
@@ -1,36 +1,59 @@
1
1
  # typed: strong
2
2
 
3
3
  module FinchAPI
4
+ # @api private
4
5
  class PooledNetRequester
5
- RequestShape = T.type_alias do
6
- {method: Symbol, url: URI::Generic, headers: T::Hash[String, String], body: T.anything, deadline: Float}
7
- end
6
+ RequestShape =
7
+ T.type_alias do
8
+ {
9
+ method: Symbol,
10
+ url: URI::Generic,
11
+ headers: T::Hash[String, String],
12
+ body: T.anything,
13
+ deadline: Float
14
+ }
15
+ end
8
16
 
9
- sig { params(url: URI::Generic).returns(Net::HTTP) }
10
- def self.connect(url)
11
- end
17
+ # from the golang stdlib
18
+ # https://github.com/golang/go/blob/c8eced8580028328fde7c03cbfcb720ce15b2358/src/net/http/transport.go#L49
19
+ KEEP_ALIVE_TIMEOUT = 30
12
20
 
13
- sig { params(conn: Net::HTTP, deadline: Float).void }
14
- def self.calibrate_socket_timeout(conn, deadline)
15
- end
21
+ class << self
22
+ # @api private
23
+ sig { params(url: URI::Generic).returns(Net::HTTP) }
24
+ def connect(url)
25
+ end
26
+
27
+ # @api private
28
+ sig { params(conn: Net::HTTP, deadline: Float).void }
29
+ def calibrate_socket_timeout(conn, deadline)
30
+ end
16
31
 
17
- sig { params(request: FinchAPI::PooledNetRequester::RequestShape).returns(Net::HTTPGenericRequest) }
18
- def self.build_request(request)
32
+ # @api private
33
+ sig do
34
+ params(request: FinchAPI::PooledNetRequester::RequestShape, blk: T.proc.params(arg0: String).void)
35
+ .returns(Net::HTTPGenericRequest)
36
+ end
37
+ def build_request(request, &blk)
38
+ end
19
39
  end
20
40
 
21
- sig { params(url: URI::Generic, blk: T.proc.params(arg0: Net::HTTP).void).void }
22
- private def with_pool(url, &blk)
41
+ # @api private
42
+ sig { params(url: URI::Generic, deadline: Float, blk: T.proc.params(arg0: Net::HTTP).void).void }
43
+ private def with_pool(url, deadline:, &blk)
23
44
  end
24
45
 
46
+ # @api private
25
47
  sig do
26
48
  params(request: FinchAPI::PooledNetRequester::RequestShape)
27
- .returns([Net::HTTPResponse, T::Enumerable[String]])
49
+ .returns([Integer, Net::HTTPResponse, T::Enumerable[String]])
28
50
  end
29
51
  def execute(request)
30
52
  end
31
53
 
32
- sig { void }
33
- def initialize
54
+ # @api private
55
+ sig { params(size: Integer).returns(T.attached_class) }
56
+ def self.new(size: Etc.nprocessors)
34
57
  end
35
58
  end
36
59
  end
@@ -1,84 +1,63 @@
1
1
  # typed: strong
2
2
 
3
3
  module FinchAPI
4
+ # @api private
4
5
  module RequestParameters
5
- abstract!
6
-
7
- sig { returns(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything])) }
8
- def request_options
9
- end
10
-
11
- sig do
12
- params(_: T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
13
- .returns(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
14
- end
15
- def request_options=(_)
16
- end
6
+ # Options to specify HTTP behaviour for this request.
7
+ sig { returns(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash)) }
8
+ attr_accessor :request_options
17
9
 
10
+ # @api private
18
11
  module Converter
19
- sig { params(params: T.anything).returns([T.anything, T::Hash[Symbol, T.anything]]) }
12
+ # @api private
13
+ sig { params(params: T.anything).returns([T.anything, FinchAPI::Util::AnyHash]) }
20
14
  def dump_request(params)
21
15
  end
22
16
  end
23
17
  end
24
18
 
19
+ # Specify HTTP behaviour to use for a specific request. These options supplement
20
+ # or override those provided at the client level.
21
+ #
22
+ # When making a request, you can pass an actual {RequestOptions} instance, or
23
+ # simply pass a Hash with symbol keys matching the attributes on this class.
25
24
  class RequestOptions < FinchAPI::BaseModel
25
+ # @api private
26
26
  sig { params(opts: T.any(T.self_type, T::Hash[Symbol, T.anything])).void }
27
27
  def self.validate!(opts)
28
28
  end
29
29
 
30
+ # Idempotency key to send with request and all associated retries. Will only be
31
+ # sent for write requests.
30
32
  sig { returns(T.nilable(String)) }
31
- def idempotency_key
32
- end
33
-
34
- sig { params(_: T.nilable(String)).returns(T.nilable(String)) }
35
- def idempotency_key=(_)
36
- end
33
+ attr_accessor :idempotency_key
37
34
 
35
+ # Extra query params to send with the request. These are `.merge`’d into any
36
+ # `query` given at the client level.
38
37
  sig { returns(T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))])) }
39
- def extra_query
40
- end
41
-
42
- sig do
43
- params(_: T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))]))
44
- .returns(T.nilable(T::Hash[String, T.nilable(T.any(T::Array[String], String))]))
45
- end
46
- def extra_query=(_)
47
- end
38
+ attr_accessor :extra_query
48
39
 
40
+ # Extra headers to send with the request. These are `.merged`’d into any
41
+ # `extra_headers` given at the client level.
49
42
  sig { returns(T.nilable(T::Hash[String, T.nilable(String)])) }
50
- def extra_headers
51
- end
52
-
53
- sig do
54
- params(_: T.nilable(T::Hash[String, T.nilable(String)]))
55
- .returns(T.nilable(T::Hash[String, T.nilable(String)]))
56
- end
57
- def extra_headers=(_)
58
- end
43
+ attr_accessor :extra_headers
59
44
 
60
- sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
61
- def extra_body
62
- end
63
-
64
- sig { params(_: T.nilable(T::Hash[Symbol, T.anything])).returns(T.nilable(T::Hash[Symbol, T.anything])) }
65
- def extra_body=(_)
66
- end
45
+ # Extra data to send with the request. These are deep merged into any data
46
+ # generated as part of the normal request.
47
+ sig { returns(T.nilable(T.anything)) }
48
+ attr_accessor :extra_body
67
49
 
50
+ # Maximum number of retries to attempt after a failed initial request.
68
51
  sig { returns(T.nilable(Integer)) }
69
- def max_retries
70
- end
71
-
72
- sig { params(_: T.nilable(Integer)).returns(T.nilable(Integer)) }
73
- def max_retries=(_)
74
- end
52
+ attr_accessor :max_retries
75
53
 
54
+ # Request timeout in seconds.
76
55
  sig { returns(T.nilable(Float)) }
77
- def timeout
78
- end
56
+ attr_accessor :timeout
79
57
 
80
- sig { params(_: T.nilable(Float)).returns(T.nilable(Float)) }
81
- def timeout=(_)
58
+ # Returns a new instance of RequestOptions.
59
+ sig { params(values: FinchAPI::Util::AnyHash).returns(T.attached_class) }
60
+ def self.new(values = {})
82
61
  end
83
62
  end
84
63
  end
@@ -3,21 +3,22 @@
3
3
  module FinchAPI
4
4
  module Resources
5
5
  class AccessTokens
6
+ # Exchange the authorization code for an access token
6
7
  sig do
7
8
  params(
8
9
  code: String,
9
10
  client_id: String,
10
11
  client_secret: String,
11
12
  redirect_uri: String,
12
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
13
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
13
14
  )
14
15
  .returns(FinchAPI::Models::CreateAccessTokenResponse)
15
16
  end
16
17
  def create(code:, client_id: nil, client_secret: nil, redirect_uri: nil, request_options: {})
17
18
  end
18
19
 
19
- sig { params(client: FinchAPI::Client).void }
20
- def initialize(client:)
20
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
21
+ def self.new(client:)
21
22
  end
22
23
  end
23
24
  end
@@ -3,22 +3,24 @@
3
3
  module FinchAPI
4
4
  module Resources
5
5
  class Account
6
+ # Disconnect one or more `access_token`s from your application.
6
7
  sig do
7
- params(request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything])))
8
+ params(request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash)))
8
9
  .returns(FinchAPI::Models::DisconnectResponse)
9
10
  end
10
11
  def disconnect(request_options: {})
11
12
  end
12
13
 
14
+ # Read account information associated with an `access_token`
13
15
  sig do
14
- params(request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything])))
16
+ params(request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash)))
15
17
  .returns(FinchAPI::Models::Introspection)
16
18
  end
17
19
  def introspect(request_options: {})
18
20
  end
19
21
 
20
- sig { params(client: FinchAPI::Client).void }
21
- def initialize(client:)
22
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
23
+ def self.new(client:)
22
24
  end
23
25
  end
24
26
  end
@@ -4,18 +4,19 @@ module FinchAPI
4
4
  module Resources
5
5
  class Connect
6
6
  class Sessions
7
+ # Create a new connect session for an employer
7
8
  sig do
8
9
  params(
9
10
  customer_id: String,
10
11
  customer_name: String,
11
- products: T::Array[Symbol],
12
+ products: T::Array[FinchAPI::Models::Connect::SessionNewParams::Product::OrSymbol],
12
13
  customer_email: T.nilable(String),
13
- integration: T.nilable(FinchAPI::Models::Connect::SessionNewParams::Integration),
14
+ integration: T.nilable(T.any(FinchAPI::Models::Connect::SessionNewParams::Integration, FinchAPI::Util::AnyHash)),
14
15
  manual: T.nilable(T::Boolean),
15
16
  minutes_to_expire: T.nilable(Float),
16
17
  redirect_uri: T.nilable(String),
17
- sandbox: T.nilable(Symbol),
18
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
18
+ sandbox: T.nilable(FinchAPI::Models::Connect::SessionNewParams::Sandbox::OrSymbol),
19
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
19
20
  )
20
21
  .returns(FinchAPI::Models::Connect::SessionNewResponse)
21
22
  end
@@ -26,6 +27,8 @@ module FinchAPI
26
27
  customer_email: nil,
27
28
  integration: nil,
28
29
  manual: nil,
30
+ # The number of minutes until the session expires (defaults to 43,200, which is 30
31
+ # days)
29
32
  minutes_to_expire: nil,
30
33
  redirect_uri: nil,
31
34
  sandbox: nil,
@@ -33,27 +36,33 @@ module FinchAPI
33
36
  )
34
37
  end
35
38
 
39
+ # Create a new Connect session for reauthenticating an existing connection
36
40
  sig do
37
41
  params(
38
42
  connection_id: String,
39
43
  minutes_to_expire: T.nilable(Integer),
40
- products: T.nilable(T::Array[Symbol]),
44
+ products: T.nilable(T::Array[FinchAPI::Models::Connect::SessionReauthenticateParams::Product::OrSymbol]),
41
45
  redirect_uri: T.nilable(String),
42
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
46
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
43
47
  )
44
48
  .returns(FinchAPI::Models::Connect::SessionReauthenticateResponse)
45
49
  end
46
50
  def reauthenticate(
51
+ # The ID of the existing connection to reauthenticate
47
52
  connection_id:,
53
+ # The number of minutes until the session expires (defaults to 43,200, which is 30
54
+ # days)
48
55
  minutes_to_expire: nil,
56
+ # The products to request access to (optional for reauthentication)
49
57
  products: nil,
58
+ # The URI to redirect to after the Connect flow is completed
50
59
  redirect_uri: nil,
51
60
  request_options: {}
52
61
  )
53
62
  end
54
63
 
55
- sig { params(client: FinchAPI::Client).void }
56
- def initialize(client:)
64
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
65
+ def self.new(client:)
57
66
  end
58
67
  end
59
68
  end
@@ -4,11 +4,10 @@ module FinchAPI
4
4
  module Resources
5
5
  class Connect
6
6
  sig { returns(FinchAPI::Resources::Connect::Sessions) }
7
- def sessions
8
- end
7
+ attr_reader :sessions
9
8
 
10
- sig { params(client: FinchAPI::Client).void }
11
- def initialize(client:)
9
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
10
+ def self.new(client:)
12
11
  end
13
12
  end
14
13
  end
@@ -5,51 +5,74 @@ module FinchAPI
5
5
  class HRIS
6
6
  class Benefits
7
7
  class Individuals
8
+ # Enroll an individual into a deduction or contribution. This is an overwrite
9
+ # operation. If the employee is already enrolled, the enrollment amounts will be
10
+ # adjusted. Making the same request multiple times will not create new
11
+ # enrollments, but will continue to set the state of the existing enrollment.
8
12
  sig do
9
13
  params(
10
14
  benefit_id: String,
11
- individuals: T::Array[FinchAPI::Models::HRIS::Benefits::IndividualEnrollManyParams::Individual],
12
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
15
+ individuals: T::Array[T.any(FinchAPI::Models::HRIS::Benefits::IndividualEnrollManyParams::Individual, FinchAPI::Util::AnyHash)],
16
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
13
17
  )
14
18
  .returns(FinchAPI::SinglePage[FinchAPI::Models::HRIS::Benefits::EnrolledIndividual])
15
19
  end
16
- def enroll_many(benefit_id, individuals: nil, request_options: {})
20
+ def enroll_many(
21
+ benefit_id,
22
+ # Array of the individual_id to enroll and a configuration object.
23
+ individuals: nil,
24
+ request_options: {}
25
+ )
17
26
  end
18
27
 
28
+ # Lists individuals currently enrolled in a given deduction.
19
29
  sig do
20
30
  params(
21
31
  benefit_id: String,
22
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
32
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
23
33
  )
24
34
  .returns(FinchAPI::Models::HRIS::Benefits::IndividualEnrolledIDsResponse)
25
35
  end
26
36
  def enrolled_ids(benefit_id, request_options: {})
27
37
  end
28
38
 
39
+ # Get enrollment information for the given individuals.
29
40
  sig do
30
41
  params(
31
42
  benefit_id: String,
32
43
  individual_ids: String,
33
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
44
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
34
45
  )
35
46
  .returns(FinchAPI::SinglePage[FinchAPI::Models::HRIS::Benefits::IndividualBenefit])
36
47
  end
37
- def retrieve_many_benefits(benefit_id, individual_ids: nil, request_options: {})
48
+ def retrieve_many_benefits(
49
+ benefit_id,
50
+ # comma-delimited list of stable Finch uuids for each individual. If empty,
51
+ # defaults to all individuals
52
+ individual_ids: nil,
53
+ request_options: {}
54
+ )
38
55
  end
39
56
 
57
+ # Unenroll individuals from a deduction or contribution
40
58
  sig do
41
59
  params(
42
60
  benefit_id: String,
43
61
  individual_ids: T::Array[String],
44
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
62
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
45
63
  )
46
64
  .returns(FinchAPI::SinglePage[FinchAPI::Models::HRIS::Benefits::UnenrolledIndividual])
47
65
  end
48
- def unenroll_many(benefit_id, individual_ids: nil, request_options: {})
66
+ def unenroll_many(
67
+ benefit_id,
68
+ # Array of individual_ids to unenroll.
69
+ individual_ids: nil,
70
+ request_options: {}
71
+ )
49
72
  end
50
73
 
51
- sig { params(client: FinchAPI::Client).void }
52
- def initialize(client:)
74
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
75
+ def self.new(client:)
53
76
  end
54
77
  end
55
78
  end
@@ -5,58 +5,77 @@ module FinchAPI
5
5
  class HRIS
6
6
  class Benefits
7
7
  sig { returns(FinchAPI::Resources::HRIS::Benefits::Individuals) }
8
- def individuals
9
- end
8
+ attr_reader :individuals
10
9
 
10
+ # Creates a new company-wide deduction or contribution. Please use the
11
+ # `/providers` endpoint to view available types for each provider.
11
12
  sig do
12
13
  params(
13
14
  description: String,
14
- frequency: T.nilable(Symbol),
15
- type: T.nilable(Symbol),
16
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
15
+ frequency: T.nilable(FinchAPI::Models::HRIS::BenefitFrequency::OrSymbol),
16
+ type: T.nilable(FinchAPI::Models::HRIS::BenefitType::OrSymbol),
17
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
17
18
  )
18
19
  .returns(FinchAPI::Models::HRIS::CreateCompanyBenefitsResponse)
19
20
  end
20
- def create(description: nil, frequency: nil, type: nil, request_options: {})
21
+ def create(
22
+ # Name of the benefit as it appears in the provider and pay statements. Recommend
23
+ # limiting this to <30 characters due to limitations in specific providers (e.g.
24
+ # Justworks).
25
+ description: nil,
26
+ frequency: nil,
27
+ # Type of benefit.
28
+ type: nil,
29
+ request_options: {}
30
+ )
21
31
  end
22
32
 
33
+ # Lists deductions and contributions information for a given item
23
34
  sig do
24
35
  params(
25
36
  benefit_id: String,
26
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
37
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
27
38
  )
28
39
  .returns(FinchAPI::Models::HRIS::CompanyBenefit)
29
40
  end
30
41
  def retrieve(benefit_id, request_options: {})
31
42
  end
32
43
 
44
+ # Updates an existing company-wide deduction or contribution
33
45
  sig do
34
46
  params(
35
47
  benefit_id: String,
36
48
  description: String,
37
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
49
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
38
50
  )
39
51
  .returns(FinchAPI::Models::HRIS::UpdateCompanyBenefitResponse)
40
52
  end
41
- def update(benefit_id, description: nil, request_options: {})
53
+ def update(
54
+ benefit_id,
55
+ # Updated name or description.
56
+ description: nil,
57
+ request_options: {}
58
+ )
42
59
  end
43
60
 
61
+ # List all company-wide deductions and contributions.
44
62
  sig do
45
- params(request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything])))
63
+ params(request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash)))
46
64
  .returns(FinchAPI::SinglePage[FinchAPI::Models::HRIS::CompanyBenefit])
47
65
  end
48
66
  def list(request_options: {})
49
67
  end
50
68
 
69
+ # Get deductions metadata
51
70
  sig do
52
- params(request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything])))
71
+ params(request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash)))
53
72
  .returns(FinchAPI::SinglePage[FinchAPI::Models::HRIS::SupportedBenefit])
54
73
  end
55
74
  def list_supported_benefits(request_options: {})
56
75
  end
57
76
 
58
- sig { params(client: FinchAPI::Client).void }
59
- def initialize(client:)
77
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
78
+ def self.new(client:)
60
79
  end
61
80
  end
62
81
  end
@@ -4,15 +4,16 @@ module FinchAPI
4
4
  module Resources
5
5
  class HRIS
6
6
  class Company
7
+ # Read basic company data
7
8
  sig do
8
- params(request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything])))
9
+ params(request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash)))
9
10
  .returns(FinchAPI::Models::HRIS::HRISCompany)
10
11
  end
11
12
  def retrieve(request_options: {})
12
13
  end
13
14
 
14
- sig { params(client: FinchAPI::Client).void }
15
- def initialize(client:)
15
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
16
+ def self.new(client:)
16
17
  end
17
18
  end
18
19
  end
@@ -4,30 +4,26 @@ module FinchAPI
4
4
  module Resources
5
5
  class HRIS
6
6
  class Directory
7
+ # Read company directory and organization structure
7
8
  sig do
8
9
  params(
9
10
  limit: Integer,
10
11
  offset: Integer,
11
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
12
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
12
13
  )
13
14
  .returns(FinchAPI::IndividualsPage[FinchAPI::Models::HRIS::IndividualInDirectory])
14
15
  end
15
- def list(limit: nil, offset: nil, request_options: {})
16
+ def list(
17
+ # Number of employees to return (defaults to all)
18
+ limit: nil,
19
+ # Index to start from (defaults to 0)
20
+ offset: nil,
21
+ request_options: {}
22
+ )
16
23
  end
17
24
 
18
- sig do
19
- params(
20
- limit: Integer,
21
- offset: Integer,
22
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
23
- )
24
- .returns(FinchAPI::IndividualsPage[FinchAPI::Models::HRIS::IndividualInDirectory])
25
- end
26
- def list_individuals(limit: nil, offset: nil, request_options: {})
27
- end
28
-
29
- sig { params(client: FinchAPI::Client).void }
30
- def initialize(client:)
25
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
26
+ def self.new(client:)
31
27
  end
32
28
  end
33
29
  end