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,31 +4,51 @@ module FinchAPI
4
4
  module Resources
5
5
  class HRIS
6
6
  class Documents
7
+ # **Beta:** This endpoint is in beta and may change. Retrieve a list of
8
+ # company-wide documents.
7
9
  sig do
8
10
  params(
9
11
  individual_ids: T::Array[String],
10
12
  limit: Integer,
11
13
  offset: Integer,
12
- types: T::Array[Symbol],
13
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
14
+ types: T::Array[FinchAPI::Models::HRIS::DocumentListParams::Type::OrSymbol],
15
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
14
16
  )
15
17
  .returns(FinchAPI::Models::HRIS::DocumentListResponse)
16
18
  end
17
- def list(individual_ids: nil, limit: nil, offset: nil, types: nil, request_options: {})
19
+ def list(
20
+ # Comma-delimited list of stable Finch uuids for each individual. If empty,
21
+ # defaults to all individuals
22
+ individual_ids: nil,
23
+ # Number of documents to return (defaults to all)
24
+ limit: nil,
25
+ # Index to start from (defaults to 0)
26
+ offset: nil,
27
+ # Comma-delimited list of document types to filter on. If empty, defaults to all
28
+ # types
29
+ types: nil,
30
+ request_options: {}
31
+ )
18
32
  end
19
33
 
34
+ # **Beta:** This endpoint is in beta and may change. Retrieve details of a
35
+ # specific document by its ID.
20
36
  sig do
21
37
  params(
22
38
  document_id: String,
23
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
39
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
24
40
  )
25
41
  .returns(T.any(FinchAPI::Models::HRIS::W42020, FinchAPI::Models::HRIS::W42005))
26
42
  end
27
- def retreive(document_id, request_options: {})
43
+ def retreive(
44
+ # The unique identifier of the document.
45
+ document_id,
46
+ request_options: {}
47
+ )
28
48
  end
29
49
 
30
- sig { params(client: FinchAPI::Client).void }
31
- def initialize(client:)
50
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
51
+ def self.new(client:)
32
52
  end
33
53
  end
34
54
  end
@@ -4,18 +4,23 @@ module FinchAPI
4
4
  module Resources
5
5
  class HRIS
6
6
  class Employments
7
+ # Read individual employment and income data
7
8
  sig do
8
9
  params(
9
- requests: T::Array[FinchAPI::Models::HRIS::EmploymentRetrieveManyParams::Request],
10
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
10
+ requests: T::Array[T.any(FinchAPI::Models::HRIS::EmploymentRetrieveManyParams::Request, FinchAPI::Util::AnyHash)],
11
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
11
12
  )
12
13
  .returns(FinchAPI::ResponsesPage[FinchAPI::Models::HRIS::EmploymentDataResponse])
13
14
  end
14
- def retrieve_many(requests:, request_options: {})
15
+ def retrieve_many(
16
+ # The array of batch requests.
17
+ requests:,
18
+ request_options: {}
19
+ )
15
20
  end
16
21
 
17
- sig { params(client: FinchAPI::Client).void }
18
- def initialize(client:)
22
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
23
+ def self.new(client:)
19
24
  end
20
25
  end
21
26
  end
@@ -4,19 +4,20 @@ module FinchAPI
4
4
  module Resources
5
5
  class HRIS
6
6
  class Individuals
7
+ # Read individual data, excluding income and employment data
7
8
  sig do
8
9
  params(
9
- options: T.nilable(FinchAPI::Models::HRIS::IndividualRetrieveManyParams::Options),
10
- requests: T::Array[FinchAPI::Models::HRIS::IndividualRetrieveManyParams::Request],
11
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
10
+ options: T.nilable(T.any(FinchAPI::Models::HRIS::IndividualRetrieveManyParams::Options, FinchAPI::Util::AnyHash)),
11
+ requests: T::Array[T.any(FinchAPI::Models::HRIS::IndividualRetrieveManyParams::Request, FinchAPI::Util::AnyHash)],
12
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
12
13
  )
13
14
  .returns(FinchAPI::ResponsesPage[FinchAPI::Models::HRIS::IndividualResponse])
14
15
  end
15
16
  def retrieve_many(options: nil, requests: nil, request_options: {})
16
17
  end
17
18
 
18
- sig { params(client: FinchAPI::Client).void }
19
- def initialize(client:)
19
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
20
+ def self.new(client:)
20
21
  end
21
22
  end
22
23
  end
@@ -4,18 +4,26 @@ module FinchAPI
4
4
  module Resources
5
5
  class HRIS
6
6
  class PayStatements
7
+ # Read detailed pay statements for each individual.
8
+ #
9
+ # Deduction and contribution types are supported by the payroll systems that
10
+ # supports Benefits.
7
11
  sig do
8
12
  params(
9
- requests: T::Array[FinchAPI::Models::HRIS::PayStatementRetrieveManyParams::Request],
10
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
13
+ requests: T::Array[T.any(FinchAPI::Models::HRIS::PayStatementRetrieveManyParams::Request, FinchAPI::Util::AnyHash)],
14
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
11
15
  )
12
16
  .returns(FinchAPI::ResponsesPage[FinchAPI::Models::HRIS::PayStatementResponse])
13
17
  end
14
- def retrieve_many(requests:, request_options: {})
18
+ def retrieve_many(
19
+ # The array of batch requests.
20
+ requests:,
21
+ request_options: {}
22
+ )
15
23
  end
16
24
 
17
- sig { params(client: FinchAPI::Client).void }
18
- def initialize(client:)
25
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
26
+ def self.new(client:)
19
27
  end
20
28
  end
21
29
  end
@@ -4,19 +4,28 @@ module FinchAPI
4
4
  module Resources
5
5
  class HRIS
6
6
  class Payments
7
+ # Read payroll and contractor related payments by the company.
7
8
  sig do
8
9
  params(
9
10
  end_date: Date,
10
11
  start_date: Date,
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::SinglePage[FinchAPI::Models::HRIS::Payment])
14
15
  end
15
- def list(end_date:, start_date:, request_options: {})
16
+ def list(
17
+ # The end date to retrieve payments by a company (inclusive) in `YYYY-MM-DD`
18
+ # format.
19
+ end_date:,
20
+ # The start date to retrieve payments by a company (inclusive) in `YYYY-MM-DD`
21
+ # format.
22
+ start_date:,
23
+ request_options: {}
24
+ )
16
25
  end
17
26
 
18
- sig { params(client: FinchAPI::Client).void }
19
- def initialize(client:)
27
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
28
+ def self.new(client:)
20
29
  end
21
30
  end
22
31
  end
@@ -4,39 +4,31 @@ module FinchAPI
4
4
  module Resources
5
5
  class HRIS
6
6
  sig { returns(FinchAPI::Resources::HRIS::Company) }
7
- def company
8
- end
7
+ attr_reader :company
9
8
 
10
9
  sig { returns(FinchAPI::Resources::HRIS::Directory) }
11
- def directory
12
- end
10
+ attr_reader :directory
13
11
 
14
12
  sig { returns(FinchAPI::Resources::HRIS::Individuals) }
15
- def individuals
16
- end
13
+ attr_reader :individuals
17
14
 
18
15
  sig { returns(FinchAPI::Resources::HRIS::Employments) }
19
- def employments
20
- end
16
+ attr_reader :employments
21
17
 
22
18
  sig { returns(FinchAPI::Resources::HRIS::Payments) }
23
- def payments
24
- end
19
+ attr_reader :payments
25
20
 
26
21
  sig { returns(FinchAPI::Resources::HRIS::PayStatements) }
27
- def pay_statements
28
- end
22
+ attr_reader :pay_statements
29
23
 
30
24
  sig { returns(FinchAPI::Resources::HRIS::Documents) }
31
- def documents
32
- end
25
+ attr_reader :documents
33
26
 
34
27
  sig { returns(FinchAPI::Resources::HRIS::Benefits) }
35
- def benefits
36
- end
28
+ attr_reader :benefits
37
29
 
38
- sig { params(client: FinchAPI::Client).void }
39
- def initialize(client:)
30
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
31
+ def self.new(client:)
40
32
  end
41
33
  end
42
34
  end
@@ -4,40 +4,69 @@ module FinchAPI
4
4
  module Resources
5
5
  class Jobs
6
6
  class Automated
7
+ # Enqueue an automated job.
8
+ #
9
+ # `data_sync_all`: Enqueue a job to re-sync all data for a connection.
10
+ # `data_sync_all` has a concurrency limit of 1 job at a time per connection. This
11
+ # means that if this endpoint is called while a job is already in progress for
12
+ # this connection, Finch will return the `job_id` of the job that is currently in
13
+ # progress. Finch allows a fixed window rate limit of 1 forced refresh per hour
14
+ # per connection.
15
+ #
16
+ # `w4_form_employee_sync`: Enqueues a job for sync W-4 data for a particular
17
+ # individual, identified by `individual_id`. This feature is currently in beta.
18
+ #
19
+ # This endpoint is available for _Scale_ tier customers as an add-on. To request
20
+ # access to this endpoint, please contact your Finch account manager.
7
21
  sig do
8
22
  params(
9
- type: Symbol,
10
- params: FinchAPI::Models::Jobs::AutomatedCreateParams::Params,
11
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
23
+ type: FinchAPI::Models::Jobs::AutomatedCreateParams::Type::OrSymbol,
24
+ params: T.any(FinchAPI::Models::Jobs::AutomatedCreateParams::Params, FinchAPI::Util::AnyHash),
25
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
12
26
  )
13
27
  .returns(FinchAPI::Models::Jobs::AutomatedCreateResponse)
14
28
  end
15
- def create(type:, params:, request_options: {})
29
+ def create(
30
+ # The type of job to start.
31
+ type:,
32
+ params:,
33
+ request_options: {}
34
+ )
16
35
  end
17
36
 
37
+ # Get an automated job by `job_id`.
18
38
  sig do
19
39
  params(
20
40
  job_id: String,
21
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
41
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
22
42
  )
23
43
  .returns(FinchAPI::Models::Jobs::AutomatedAsyncJob)
24
44
  end
25
45
  def retrieve(job_id, request_options: {})
26
46
  end
27
47
 
48
+ # Get all automated jobs. Automated jobs are completed by a machine. By default,
49
+ # jobs are sorted in descending order by submission time. For scheduled jobs such
50
+ # as data syncs, only the next scheduled job is shown.
28
51
  sig do
29
52
  params(
30
53
  limit: Integer,
31
54
  offset: Integer,
32
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
55
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
33
56
  )
34
- .returns(FinchAPI::Page[FinchAPI::Models::Jobs::AutomatedAsyncJob])
57
+ .returns(FinchAPI::Models::Jobs::AutomatedListResponse)
35
58
  end
36
- def list(limit: nil, offset: nil, request_options: {})
59
+ def list(
60
+ # Number of items to return
61
+ limit: nil,
62
+ # Index to start from (defaults to 0)
63
+ offset: nil,
64
+ request_options: {}
65
+ )
37
66
  end
38
67
 
39
- sig { params(client: FinchAPI::Client).void }
40
- def initialize(client:)
68
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
69
+ def self.new(client:)
41
70
  end
42
71
  end
43
72
  end
@@ -4,18 +4,20 @@ module FinchAPI
4
4
  module Resources
5
5
  class Jobs
6
6
  class Manual
7
+ # Get a manual job by `job_id`. Manual jobs are completed by a human and include
8
+ # Assisted Benefits jobs.
7
9
  sig do
8
10
  params(
9
11
  job_id: String,
10
- 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))
11
13
  )
12
14
  .returns(FinchAPI::Models::Jobs::ManualAsyncJob)
13
15
  end
14
16
  def retrieve(job_id, request_options: {})
15
17
  end
16
18
 
17
- sig { params(client: FinchAPI::Client).void }
18
- def initialize(client:)
19
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
20
+ def self.new(client:)
19
21
  end
20
22
  end
21
23
  end
@@ -4,15 +4,13 @@ module FinchAPI
4
4
  module Resources
5
5
  class Jobs
6
6
  sig { returns(FinchAPI::Resources::Jobs::Automated) }
7
- def automated
8
- end
7
+ attr_reader :automated
9
8
 
10
9
  sig { returns(FinchAPI::Resources::Jobs::Manual) }
11
- def manual
12
- end
10
+ attr_reader :manual
13
11
 
14
- sig { params(client: FinchAPI::Client).void }
15
- def initialize(client:)
12
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
13
+ def self.new(client:)
16
14
  end
17
15
  end
18
16
  end
@@ -4,29 +4,31 @@ module FinchAPI
4
4
  module Resources
5
5
  class Payroll
6
6
  class PayGroups
7
+ # Read information from a single pay group
7
8
  sig do
8
9
  params(
9
10
  pay_group_id: String,
10
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
11
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
11
12
  )
12
13
  .returns(FinchAPI::Models::Payroll::PayGroupRetrieveResponse)
13
14
  end
14
15
  def retrieve(pay_group_id, request_options: {})
15
16
  end
16
17
 
18
+ # Read company pay groups and frequencies
17
19
  sig do
18
20
  params(
19
21
  individual_id: String,
20
22
  pay_frequencies: T::Array[String],
21
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
23
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
22
24
  )
23
25
  .returns(FinchAPI::SinglePage[FinchAPI::Models::Payroll::PayGroupListResponse])
24
26
  end
25
27
  def list(individual_id: nil, pay_frequencies: nil, request_options: {})
26
28
  end
27
29
 
28
- sig { params(client: FinchAPI::Client).void }
29
- def initialize(client:)
30
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
31
+ def self.new(client:)
30
32
  end
31
33
  end
32
34
  end
@@ -4,11 +4,10 @@ module FinchAPI
4
4
  module Resources
5
5
  class Payroll
6
6
  sig { returns(FinchAPI::Resources::Payroll::PayGroups) }
7
- def pay_groups
8
- end
7
+ attr_reader :pay_groups
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
@@ -3,15 +3,16 @@
3
3
  module FinchAPI
4
4
  module Resources
5
5
  class Providers
6
+ # Return details on all available payroll and HR systems.
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::SinglePage[FinchAPI::Models::Provider])
9
10
  end
10
11
  def list(request_options: {})
11
12
  end
12
13
 
13
- sig { params(client: FinchAPI::Client).void }
14
- def initialize(client:)
14
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
15
+ def self.new(client:)
15
16
  end
16
17
  end
17
18
  end
@@ -3,6 +3,10 @@
3
3
  module FinchAPI
4
4
  module Resources
5
5
  class RequestForwarding
6
+ # The Forward API allows you to make direct requests to an employment system. If
7
+ # Finch’s unified API doesn’t have a data model that cleanly fits your needs, then
8
+ # Forward allows you to push or pull data models directly against an integration’s
9
+ # API.
6
10
  sig do
7
11
  params(
8
12
  method_: String,
@@ -10,15 +14,34 @@ module FinchAPI
10
14
  data: T.nilable(String),
11
15
  headers: T.nilable(T.anything),
12
16
  params: T.nilable(T.anything),
13
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
17
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
14
18
  )
15
19
  .returns(FinchAPI::Models::RequestForwardingForwardResponse)
16
20
  end
17
- def forward(method_:, route:, data: nil, headers: nil, params: nil, request_options: {})
21
+ def forward(
22
+ # The HTTP method for the forwarded request. Valid values include: `GET` , `POST`
23
+ # , `PUT` , `DELETE` , and `PATCH`.
24
+ method_:,
25
+ # The URL route path for the forwarded request. This value must begin with a
26
+ # forward-slash ( / ) and may only contain alphanumeric characters, hyphens, and
27
+ # underscores.
28
+ route:,
29
+ # The body for the forwarded request. This value must be specified as either a
30
+ # string or a valid JSON object.
31
+ data: nil,
32
+ # The HTTP headers to include on the forwarded request. This value must be
33
+ # specified as an object of key-value pairs. Example:
34
+ # `{"Content-Type": "application/xml", "X-API-Version": "v1" }`
35
+ headers: nil,
36
+ # The query parameters for the forwarded request. This value must be specified as
37
+ # a valid JSON object rather than a query string.
38
+ params: nil,
39
+ request_options: {}
40
+ )
18
41
  end
19
42
 
20
- sig { params(client: FinchAPI::Client).void }
21
- def initialize(client:)
43
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
44
+ def self.new(client:)
22
45
  end
23
46
  end
24
47
  end
@@ -4,35 +4,47 @@ module FinchAPI
4
4
  module Resources
5
5
  class Sandbox
6
6
  class Company
7
+ # Update a sandbox company's data
7
8
  sig do
8
9
  params(
9
- accounts: T.nilable(T::Array[FinchAPI::Models::Sandbox::CompanyUpdateParams::Account]),
10
- departments: T.nilable(T::Array[T.nilable(FinchAPI::Models::Sandbox::CompanyUpdateParams::Department)]),
10
+ accounts: T.nilable(
11
+ T::Array[T.any(FinchAPI::Models::Sandbox::CompanyUpdateParams::Account, FinchAPI::Util::AnyHash)]
12
+ ),
13
+ departments: T.nilable(
14
+ T::Array[T.nilable(T.any(FinchAPI::Models::Sandbox::CompanyUpdateParams::Department, FinchAPI::Util::AnyHash))]
15
+ ),
11
16
  ein: T.nilable(String),
12
- entity: T.nilable(FinchAPI::Models::Sandbox::CompanyUpdateParams::Entity),
17
+ entity: T.nilable(T.any(FinchAPI::Models::Sandbox::CompanyUpdateParams::Entity, FinchAPI::Util::AnyHash)),
13
18
  legal_name: T.nilable(String),
14
- locations: T.nilable(T::Array[T.nilable(FinchAPI::Models::Location)]),
19
+ locations: T.nilable(T::Array[T.nilable(T.any(FinchAPI::Models::Location, FinchAPI::Util::AnyHash))]),
15
20
  primary_email: T.nilable(String),
16
21
  primary_phone_number: T.nilable(String),
17
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
22
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
18
23
  )
19
24
  .returns(FinchAPI::Models::Sandbox::CompanyUpdateResponse)
20
25
  end
21
26
  def update(
27
+ # An array of bank account objects associated with the payroll/HRIS system.
22
28
  accounts:,
29
+ # The array of company departments.
23
30
  departments:,
31
+ # The employer identification number.
24
32
  ein:,
33
+ # The entity type object.
25
34
  entity:,
35
+ # The legal name of the company.
26
36
  legal_name:,
27
37
  locations:,
38
+ # The email of the main administrator on the account.
28
39
  primary_email:,
40
+ # The phone number of the main administrator on the account. Format: `XXXXXXXXXX`
29
41
  primary_phone_number:,
30
42
  request_options: {}
31
43
  )
32
44
  end
33
45
 
34
- sig { params(client: FinchAPI::Client).void }
35
- def initialize(client:)
46
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
47
+ def self.new(client:)
36
48
  end
37
49
  end
38
50
  end
@@ -5,31 +5,43 @@ module FinchAPI
5
5
  class Sandbox
6
6
  class Connections
7
7
  class Accounts
8
+ # Create a new account for an existing connection (company/provider pair)
8
9
  sig do
9
10
  params(
10
11
  company_id: String,
11
12
  provider_id: String,
12
- authentication_type: Symbol,
13
+ authentication_type: FinchAPI::Models::Sandbox::Connections::AccountCreateParams::AuthenticationType::OrSymbol,
13
14
  products: T::Array[String],
14
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
15
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
15
16
  )
16
17
  .returns(FinchAPI::Models::Sandbox::Connections::AccountCreateResponse)
17
18
  end
18
- def create(company_id:, provider_id:, authentication_type: nil, products: nil, request_options: {})
19
+ def create(
20
+ company_id:,
21
+ # The provider associated with the `access_token`
22
+ provider_id:,
23
+ authentication_type: nil,
24
+ # Optional, defaults to Organization products (`company`, `directory`,
25
+ # `employment`, `individual`)
26
+ products: nil,
27
+ request_options: {}
28
+ )
19
29
  end
20
30
 
31
+ # Update an existing sandbox account. Change the connection status to understand
32
+ # how the Finch API responds.
21
33
  sig do
22
34
  params(
23
- connection_status: Symbol,
24
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
35
+ connection_status: FinchAPI::Models::ConnectionStatusType::OrSymbol,
36
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
25
37
  )
26
38
  .returns(FinchAPI::Models::Sandbox::Connections::AccountUpdateResponse)
27
39
  end
28
40
  def update(connection_status: nil, request_options: {})
29
41
  end
30
42
 
31
- sig { params(client: FinchAPI::Client).void }
32
- def initialize(client:)
43
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
44
+ def self.new(client:)
33
45
  end
34
46
  end
35
47
  end
@@ -5,30 +5,34 @@ module FinchAPI
5
5
  class Sandbox
6
6
  class Connections
7
7
  sig { returns(FinchAPI::Resources::Sandbox::Connections::Accounts) }
8
- def accounts
9
- end
8
+ attr_reader :accounts
10
9
 
10
+ # Create a new connection (new company/provider pair) with a new account
11
11
  sig do
12
12
  params(
13
13
  provider_id: String,
14
- authentication_type: Symbol,
14
+ authentication_type: FinchAPI::Models::Sandbox::ConnectionCreateParams::AuthenticationType::OrSymbol,
15
15
  employee_size: Integer,
16
16
  products: T::Array[String],
17
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
17
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
18
18
  )
19
19
  .returns(FinchAPI::Models::Sandbox::ConnectionCreateResponse)
20
20
  end
21
21
  def create(
22
+ # The provider associated with the connection
22
23
  provider_id:,
23
24
  authentication_type: nil,
25
+ # Optional: the size of the employer to be created with this connection. Defaults
26
+ # to 20. Note that if this is higher than 100, historical payroll data will not be
27
+ # generated, and instead only one pay period will be created.
24
28
  employee_size: nil,
25
29
  products: nil,
26
30
  request_options: {}
27
31
  )
28
32
  end
29
33
 
30
- sig { params(client: FinchAPI::Client).void }
31
- def initialize(client:)
34
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
35
+ def self.new(client:)
32
36
  end
33
37
  end
34
38
  end
@@ -4,18 +4,24 @@ module FinchAPI
4
4
  module Resources
5
5
  class Sandbox
6
6
  class Directory
7
+ # Add new individuals to a sandbox company
7
8
  sig do
8
9
  params(
9
- body: T::Array[FinchAPI::Models::Sandbox::DirectoryCreateParams::Body],
10
- request_options: T.nilable(T.any(FinchAPI::RequestOptions, T::Hash[Symbol, T.anything]))
10
+ body: T::Array[T.any(FinchAPI::Models::Sandbox::DirectoryCreateParams::Body, FinchAPI::Util::AnyHash)],
11
+ request_options: T.nilable(T.any(FinchAPI::RequestOptions, FinchAPI::Util::AnyHash))
11
12
  )
12
- .returns(FinchAPI::Models::Sandbox::DirectoryCreateResponse)
13
+ .returns(T::Array[T.anything])
13
14
  end
14
- def create(body: nil, request_options: {})
15
+ def create(
16
+ # Array of individuals to create. Takes all combined fields from `/individual` and
17
+ # `/employment` endpoints. All fields are optional.
18
+ body: nil,
19
+ request_options: {}
20
+ )
15
21
  end
16
22
 
17
- sig { params(client: FinchAPI::Client).void }
18
- def initialize(client:)
23
+ sig { params(client: FinchAPI::Client).returns(T.attached_class) }
24
+ def self.new(client:)
19
25
  end
20
26
  end
21
27
  end