finch-api 0.1.0.pre.alpha.1

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 (479) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +124 -0
  3. data/lib/finch-api/base_client.rb +464 -0
  4. data/lib/finch-api/base_model.rb +1188 -0
  5. data/lib/finch-api/base_page.rb +40 -0
  6. data/lib/finch-api/client.rb +145 -0
  7. data/lib/finch-api/errors.rb +188 -0
  8. data/lib/finch-api/extern.rb +10 -0
  9. data/lib/finch-api/individuals_page.rb +98 -0
  10. data/lib/finch-api/models/access_token_create_params.rb +54 -0
  11. data/lib/finch-api/models/account_disconnect_params.rb +18 -0
  12. data/lib/finch-api/models/account_introspect_params.rb +18 -0
  13. data/lib/finch-api/models/account_update_event.rb +1978 -0
  14. data/lib/finch-api/models/base_webhook_event.rb +41 -0
  15. data/lib/finch-api/models/company_event.rb +49 -0
  16. data/lib/finch-api/models/connect/session_new_params.rb +203 -0
  17. data/lib/finch-api/models/connect/session_new_response.rb +29 -0
  18. data/lib/finch-api/models/connect/session_reauthenticate_params.rb +90 -0
  19. data/lib/finch-api/models/connect/session_reauthenticate_response.rb +29 -0
  20. data/lib/finch-api/models/connection_status_type.rb +40 -0
  21. data/lib/finch-api/models/create_access_token_response.rb +163 -0
  22. data/lib/finch-api/models/directory_event.rb +78 -0
  23. data/lib/finch-api/models/disconnect_response.rb +20 -0
  24. data/lib/finch-api/models/employment_event.rb +78 -0
  25. data/lib/finch-api/models/hris/benefit_contribution.rb +54 -0
  26. data/lib/finch-api/models/hris/benefit_create_params.rb +46 -0
  27. data/lib/finch-api/models/hris/benefit_features_and_operations.rb +199 -0
  28. data/lib/finch-api/models/hris/benefit_frequency.rb +33 -0
  29. data/lib/finch-api/models/hris/benefit_list_params.rb +20 -0
  30. data/lib/finch-api/models/hris/benefit_list_supported_benefits_params.rb +20 -0
  31. data/lib/finch-api/models/hris/benefit_retrieve_params.rb +20 -0
  32. data/lib/finch-api/models/hris/benefit_type.rb +57 -0
  33. data/lib/finch-api/models/hris/benefit_update_params.rb +31 -0
  34. data/lib/finch-api/models/hris/benefits/enrolled_individual.rb +108 -0
  35. data/lib/finch-api/models/hris/benefits/individual_benefit.rb +127 -0
  36. data/lib/finch-api/models/hris/benefits/individual_enroll_many_params.rb +268 -0
  37. data/lib/finch-api/models/hris/benefits/individual_enrolled_ids_params.rb +22 -0
  38. data/lib/finch-api/models/hris/benefits/individual_enrolled_ids_response.rb +29 -0
  39. data/lib/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rb +34 -0
  40. data/lib/finch-api/models/hris/benefits/individual_unenroll_many_params.rb +33 -0
  41. data/lib/finch-api/models/hris/benefits/unenrolled_individual.rb +77 -0
  42. data/lib/finch-api/models/hris/benefits_support.rb +106 -0
  43. data/lib/finch-api/models/hris/benfit_contribution.rb +9 -0
  44. data/lib/finch-api/models/hris/company.rb +290 -0
  45. data/lib/finch-api/models/hris/company_benefit.rb +40 -0
  46. data/lib/finch-api/models/hris/company_retrieve_params.rb +20 -0
  47. data/lib/finch-api/models/hris/create_company_benefits_response.rb +21 -0
  48. data/lib/finch-api/models/hris/directory_list_individuals_params.rb +42 -0
  49. data/lib/finch-api/models/hris/directory_list_params.rb +42 -0
  50. data/lib/finch-api/models/hris/document_list_params.rb +89 -0
  51. data/lib/finch-api/models/hris/document_list_response.rb +27 -0
  52. data/lib/finch-api/models/hris/document_response.rb +89 -0
  53. data/lib/finch-api/models/hris/document_retreive_params.rb +20 -0
  54. data/lib/finch-api/models/hris/document_retreive_response.rb +41 -0
  55. data/lib/finch-api/models/hris/employment_data.rb +380 -0
  56. data/lib/finch-api/models/hris/employment_data_response.rb +45 -0
  57. data/lib/finch-api/models/hris/employment_retrieve_many_params.rb +45 -0
  58. data/lib/finch-api/models/hris/individual.rb +290 -0
  59. data/lib/finch-api/models/hris/individual_in_directory.rb +117 -0
  60. data/lib/finch-api/models/hris/individual_response.rb +45 -0
  61. data/lib/finch-api/models/hris/individual_retrieve_many_params.rb +73 -0
  62. data/lib/finch-api/models/hris/pay_statement.rb +587 -0
  63. data/lib/finch-api/models/hris/pay_statement_response.rb +45 -0
  64. data/lib/finch-api/models/hris/pay_statement_response_body.rb +36 -0
  65. data/lib/finch-api/models/hris/pay_statement_retrieve_many_params.rb +65 -0
  66. data/lib/finch-api/models/hris/payment.rb +174 -0
  67. data/lib/finch-api/models/hris/payment_list_params.rb +36 -0
  68. data/lib/finch-api/models/hris/support_per_benefit_type.rb +35 -0
  69. data/lib/finch-api/models/hris/supported_benefit.rb +166 -0
  70. data/lib/finch-api/models/hris/update_company_benefit_response.rb +21 -0
  71. data/lib/finch-api/models/hris/w42005.rb +188 -0
  72. data/lib/finch-api/models/hris/w42020.rb +180 -0
  73. data/lib/finch-api/models/income.rb +87 -0
  74. data/lib/finch-api/models/individual_event.rb +78 -0
  75. data/lib/finch-api/models/introspection.rb +342 -0
  76. data/lib/finch-api/models/job_completion_event.rb +90 -0
  77. data/lib/finch-api/models/jobs/automated_async_job.rb +162 -0
  78. data/lib/finch-api/models/jobs/automated_create_params.rb +70 -0
  79. data/lib/finch-api/models/jobs/automated_create_response.rb +43 -0
  80. data/lib/finch-api/models/jobs/automated_list_params.rb +42 -0
  81. data/lib/finch-api/models/jobs/automated_retrieve_params.rb +20 -0
  82. data/lib/finch-api/models/jobs/manual_async_job.rb +63 -0
  83. data/lib/finch-api/models/jobs/manual_retrieve_params.rb +20 -0
  84. data/lib/finch-api/models/location.rb +79 -0
  85. data/lib/finch-api/models/money.rb +30 -0
  86. data/lib/finch-api/models/operation_support.rb +42 -0
  87. data/lib/finch-api/models/operation_support_matrix.rb +81 -0
  88. data/lib/finch-api/models/paging.rb +35 -0
  89. data/lib/finch-api/models/pay_statement_event.rb +89 -0
  90. data/lib/finch-api/models/payment_event.rb +81 -0
  91. data/lib/finch-api/models/payroll/pay_group_list_params.rb +40 -0
  92. data/lib/finch-api/models/payroll/pay_group_list_response.rb +87 -0
  93. data/lib/finch-api/models/payroll/pay_group_retrieve_params.rb +20 -0
  94. data/lib/finch-api/models/payroll/pay_group_retrieve_response.rb +81 -0
  95. data/lib/finch-api/models/provider.rb +2039 -0
  96. data/lib/finch-api/models/provider_list_params.rb +18 -0
  97. data/lib/finch-api/models/request_forwarding_forward_params.rb +60 -0
  98. data/lib/finch-api/models/request_forwarding_forward_response.rb +97 -0
  99. data/lib/finch-api/models/sandbox/company_update_params.rb +294 -0
  100. data/lib/finch-api/models/sandbox/company_update_response.rb +276 -0
  101. data/lib/finch-api/models/sandbox/connection_create_params.rb +90 -0
  102. data/lib/finch-api/models/sandbox/connection_create_response.rb +113 -0
  103. data/lib/finch-api/models/sandbox/connections/account_create_params.rb +87 -0
  104. data/lib/finch-api/models/sandbox/connections/account_create_response.rb +93 -0
  105. data/lib/finch-api/models/sandbox/connections/account_update_params.rb +32 -0
  106. data/lib/finch-api/models/sandbox/connections/account_update_response.rb +91 -0
  107. data/lib/finch-api/models/sandbox/directory_create_params.rb +642 -0
  108. data/lib/finch-api/models/sandbox/directory_create_response.rb +9 -0
  109. data/lib/finch-api/models/sandbox/employment_update_params.rb +372 -0
  110. data/lib/finch-api/models/sandbox/employment_update_response.rb +378 -0
  111. data/lib/finch-api/models/sandbox/individual_update_params.rb +292 -0
  112. data/lib/finch-api/models/sandbox/individual_update_response.rb +300 -0
  113. data/lib/finch-api/models/sandbox/job_create_params.rb +49 -0
  114. data/lib/finch-api/models/sandbox/job_create_response.rb +43 -0
  115. data/lib/finch-api/models/sandbox/jobs/configuration_retrieve_params.rb +22 -0
  116. data/lib/finch-api/models/sandbox/jobs/configuration_retrieve_response.rb +11 -0
  117. data/lib/finch-api/models/sandbox/jobs/configuration_update_params.rb +22 -0
  118. data/lib/finch-api/models/sandbox/jobs/sandbox_job_configuration.rb +79 -0
  119. data/lib/finch-api/models/sandbox/payment_create_params.rb +646 -0
  120. data/lib/finch-api/models/sandbox/payment_create_response.rb +29 -0
  121. data/lib/finch-api/models/webhook_event.rb +48 -0
  122. data/lib/finch-api/page.rb +98 -0
  123. data/lib/finch-api/pooled_net_requester.rb +175 -0
  124. data/lib/finch-api/request_options.rb +115 -0
  125. data/lib/finch-api/resources/access_tokens.rb +40 -0
  126. data/lib/finch-api/resources/account.rb +47 -0
  127. data/lib/finch-api/resources/connect/sessions.rb +81 -0
  128. data/lib/finch-api/resources/connect.rb +17 -0
  129. data/lib/finch-api/resources/hris/benefits/individuals.rb +112 -0
  130. data/lib/finch-api/resources/hris/benefits.rb +125 -0
  131. data/lib/finch-api/resources/hris/company.rb +32 -0
  132. data/lib/finch-api/resources/hris/directory.rb +65 -0
  133. data/lib/finch-api/resources/hris/documents.rb +65 -0
  134. data/lib/finch-api/resources/hris/employments.rb +37 -0
  135. data/lib/finch-api/resources/hris/individuals.rb +39 -0
  136. data/lib/finch-api/resources/hris/pay_statements.rb +40 -0
  137. data/lib/finch-api/resources/hris/payments.rb +41 -0
  138. data/lib/finch-api/resources/hris.rb +45 -0
  139. data/lib/finch-api/resources/jobs/automated.rb +96 -0
  140. data/lib/finch-api/resources/jobs/manual.rb +35 -0
  141. data/lib/finch-api/resources/jobs.rb +21 -0
  142. data/lib/finch-api/resources/payroll/pay_groups.rb +58 -0
  143. data/lib/finch-api/resources/payroll.rb +17 -0
  144. data/lib/finch-api/resources/providers.rb +31 -0
  145. data/lib/finch-api/resources/request_forwarding.rb +52 -0
  146. data/lib/finch-api/resources/sandbox/company.rb +50 -0
  147. data/lib/finch-api/resources/sandbox/connections/accounts.rb +67 -0
  148. data/lib/finch-api/resources/sandbox/connections.rb +48 -0
  149. data/lib/finch-api/resources/sandbox/directory.rb +37 -0
  150. data/lib/finch-api/resources/sandbox/employment.rb +76 -0
  151. data/lib/finch-api/resources/sandbox/individual.rb +65 -0
  152. data/lib/finch-api/resources/sandbox/jobs/configuration.rb +57 -0
  153. data/lib/finch-api/resources/sandbox/jobs.rb +40 -0
  154. data/lib/finch-api/resources/sandbox/payment.rb +40 -0
  155. data/lib/finch-api/resources/sandbox.rb +41 -0
  156. data/lib/finch-api/resources/webhooks.rb +13 -0
  157. data/lib/finch-api/responses_page.rb +84 -0
  158. data/lib/finch-api/single_page.rb +82 -0
  159. data/lib/finch-api/util.rb +636 -0
  160. data/lib/finch-api/version.rb +5 -0
  161. data/lib/finch-api.rb +178 -0
  162. data/manifest.yaml +13 -0
  163. data/rbi/lib/finch-api/base_client.rbi +173 -0
  164. data/rbi/lib/finch-api/base_model.rbi +476 -0
  165. data/rbi/lib/finch-api/base_page.rbi +39 -0
  166. data/rbi/lib/finch-api/client.rbi +102 -0
  167. data/rbi/lib/finch-api/errors.rbi +146 -0
  168. data/rbi/lib/finch-api/extern.rbi +7 -0
  169. data/rbi/lib/finch-api/individuals_page.rbi +37 -0
  170. data/rbi/lib/finch-api/models/access_token_create_params.rbi +70 -0
  171. data/rbi/lib/finch-api/models/account_disconnect_params.rbi +18 -0
  172. data/rbi/lib/finch-api/models/account_introspect_params.rbi +18 -0
  173. data/rbi/lib/finch-api/models/account_update_event.rbi +2479 -0
  174. data/rbi/lib/finch-api/models/base_webhook_event.rbi +39 -0
  175. data/rbi/lib/finch-api/models/company_event.rbi +43 -0
  176. data/rbi/lib/finch-api/models/connect/session_new_params.rbi +203 -0
  177. data/rbi/lib/finch-api/models/connect/session_new_response.rbi +33 -0
  178. data/rbi/lib/finch-api/models/connect/session_reauthenticate_params.rbi +95 -0
  179. data/rbi/lib/finch-api/models/connect/session_reauthenticate_response.rbi +33 -0
  180. data/rbi/lib/finch-api/models/connection_status_type.rbi +20 -0
  181. data/rbi/lib/finch-api/models/create_access_token_response.rbi +159 -0
  182. data/rbi/lib/finch-api/models/directory_event.rbi +61 -0
  183. data/rbi/lib/finch-api/models/disconnect_response.rbi +23 -0
  184. data/rbi/lib/finch-api/models/employment_event.rbi +61 -0
  185. data/rbi/lib/finch-api/models/hris/benefit_contribution.rbi +44 -0
  186. data/rbi/lib/finch-api/models/hris/benefit_create_params.rbi +62 -0
  187. data/rbi/lib/finch-api/models/hris/benefit_features_and_operations.rbi +190 -0
  188. data/rbi/lib/finch-api/models/hris/benefit_frequency.rbi +19 -0
  189. data/rbi/lib/finch-api/models/hris/benefit_list_params.rbi +20 -0
  190. data/rbi/lib/finch-api/models/hris/benefit_list_supported_benefits_params.rbi +20 -0
  191. data/rbi/lib/finch-api/models/hris/benefit_retrieve_params.rbi +20 -0
  192. data/rbi/lib/finch-api/models/hris/benefit_type.rbi +35 -0
  193. data/rbi/lib/finch-api/models/hris/benefit_update_params.rbi +37 -0
  194. data/rbi/lib/finch-api/models/hris/benefits/enrolled_individual.rbi +115 -0
  195. data/rbi/lib/finch-api/models/hris/benefits/individual_benefit.rbi +153 -0
  196. data/rbi/lib/finch-api/models/hris/benefits/individual_enroll_many_params.rbi +281 -0
  197. data/rbi/lib/finch-api/models/hris/benefits/individual_enrolled_ids_params.rbi +22 -0
  198. data/rbi/lib/finch-api/models/hris/benefits/individual_enrolled_ids_response.rbi +35 -0
  199. data/rbi/lib/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rbi +36 -0
  200. data/rbi/lib/finch-api/models/hris/benefits/individual_unenroll_many_params.rbi +38 -0
  201. data/rbi/lib/finch-api/models/hris/benefits/unenrolled_individual.rbi +102 -0
  202. data/rbi/lib/finch-api/models/hris/benefits_support.rbi +196 -0
  203. data/rbi/lib/finch-api/models/hris/benfit_contribution.rbi +9 -0
  204. data/rbi/lib/finch-api/models/hris/company.rbi +338 -0
  205. data/rbi/lib/finch-api/models/hris/company_benefit.rbi +67 -0
  206. data/rbi/lib/finch-api/models/hris/company_retrieve_params.rbi +20 -0
  207. data/rbi/lib/finch-api/models/hris/create_company_benefits_response.rbi +25 -0
  208. data/rbi/lib/finch-api/models/hris/directory_list_individuals_params.rbi +43 -0
  209. data/rbi/lib/finch-api/models/hris/directory_list_params.rbi +43 -0
  210. data/rbi/lib/finch-api/models/hris/document_list_params.rbi +83 -0
  211. data/rbi/lib/finch-api/models/hris/document_list_response.rbi +42 -0
  212. data/rbi/lib/finch-api/models/hris/document_response.rbi +86 -0
  213. data/rbi/lib/finch-api/models/hris/document_retreive_params.rbi +20 -0
  214. data/rbi/lib/finch-api/models/hris/document_retreive_response.rbi +15 -0
  215. data/rbi/lib/finch-api/models/hris/employment_data.rbi +393 -0
  216. data/rbi/lib/finch-api/models/hris/employment_data_response.rbi +41 -0
  217. data/rbi/lib/finch-api/models/hris/employment_retrieve_many_params.rbi +63 -0
  218. data/rbi/lib/finch-api/models/hris/individual.rbi +281 -0
  219. data/rbi/lib/finch-api/models/hris/individual_in_directory.rbi +147 -0
  220. data/rbi/lib/finch-api/models/hris/individual_response.rbi +41 -0
  221. data/rbi/lib/finch-api/models/hris/individual_retrieve_many_params.rbi +94 -0
  222. data/rbi/lib/finch-api/models/hris/pay_statement.rbi +691 -0
  223. data/rbi/lib/finch-api/models/hris/pay_statement_response.rbi +47 -0
  224. data/rbi/lib/finch-api/models/hris/pay_statement_response_body.rbi +44 -0
  225. data/rbi/lib/finch-api/models/hris/pay_statement_retrieve_many_params.rbi +79 -0
  226. data/rbi/lib/finch-api/models/hris/payment.rbi +207 -0
  227. data/rbi/lib/finch-api/models/hris/payment_list_params.rbi +45 -0
  228. data/rbi/lib/finch-api/models/hris/support_per_benefit_type.rbi +47 -0
  229. data/rbi/lib/finch-api/models/hris/supported_benefit.rbi +155 -0
  230. data/rbi/lib/finch-api/models/hris/update_company_benefit_response.rbi +25 -0
  231. data/rbi/lib/finch-api/models/hris/w42005.rbi +150 -0
  232. data/rbi/lib/finch-api/models/hris/w42020.rbi +177 -0
  233. data/rbi/lib/finch-api/models/income.rbi +83 -0
  234. data/rbi/lib/finch-api/models/individual_event.rbi +61 -0
  235. data/rbi/lib/finch-api/models/introspection.rbi +350 -0
  236. data/rbi/lib/finch-api/models/job_completion_event.rbi +72 -0
  237. data/rbi/lib/finch-api/models/jobs/automated_async_job.rbi +174 -0
  238. data/rbi/lib/finch-api/models/jobs/automated_create_params.rbi +83 -0
  239. data/rbi/lib/finch-api/models/jobs/automated_create_response.rbi +64 -0
  240. data/rbi/lib/finch-api/models/jobs/automated_list_params.rbi +43 -0
  241. data/rbi/lib/finch-api/models/jobs/automated_retrieve_params.rbi +20 -0
  242. data/rbi/lib/finch-api/models/jobs/manual_async_job.rbi +54 -0
  243. data/rbi/lib/finch-api/models/jobs/manual_retrieve_params.rbi +20 -0
  244. data/rbi/lib/finch-api/models/location.rbi +114 -0
  245. data/rbi/lib/finch-api/models/money.rbi +31 -0
  246. data/rbi/lib/finch-api/models/operation_support.rbi +18 -0
  247. data/rbi/lib/finch-api/models/operation_support_matrix.rbi +47 -0
  248. data/rbi/lib/finch-api/models/paging.rbi +31 -0
  249. data/rbi/lib/finch-api/models/pay_statement_event.rbi +69 -0
  250. data/rbi/lib/finch-api/models/payment_event.rbi +69 -0
  251. data/rbi/lib/finch-api/models/payroll/pay_group_list_params.rbi +52 -0
  252. data/rbi/lib/finch-api/models/payroll/pay_group_list_response.rbi +59 -0
  253. data/rbi/lib/finch-api/models/payroll/pay_group_retrieve_params.rbi +20 -0
  254. data/rbi/lib/finch-api/models/payroll/pay_group_retrieve_response.rbi +82 -0
  255. data/rbi/lib/finch-api/models/provider.rbi +2369 -0
  256. data/rbi/lib/finch-api/models/provider_list_params.rbi +18 -0
  257. data/rbi/lib/finch-api/models/request_forwarding_forward_params.rbi +80 -0
  258. data/rbi/lib/finch-api/models/request_forwarding_forward_response.rbi +138 -0
  259. data/rbi/lib/finch-api/models/sandbox/company_update_params.rbi +336 -0
  260. data/rbi/lib/finch-api/models/sandbox/company_update_response.rbi +330 -0
  261. data/rbi/lib/finch-api/models/sandbox/connection_create_params.rbi +91 -0
  262. data/rbi/lib/finch-api/models/sandbox/connection_create_response.rbi +129 -0
  263. data/rbi/lib/finch-api/models/sandbox/connections/account_create_params.rbi +93 -0
  264. data/rbi/lib/finch-api/models/sandbox/connections/account_create_response.rbi +120 -0
  265. data/rbi/lib/finch-api/models/sandbox/connections/account_update_params.rbi +36 -0
  266. data/rbi/lib/finch-api/models/sandbox/connections/account_update_response.rbi +109 -0
  267. data/rbi/lib/finch-api/models/sandbox/directory_create_params.rbi +629 -0
  268. data/rbi/lib/finch-api/models/sandbox/directory_create_response.rbi +9 -0
  269. data/rbi/lib/finch-api/models/sandbox/employment_update_params.rbi +377 -0
  270. data/rbi/lib/finch-api/models/sandbox/employment_update_response.rbi +382 -0
  271. data/rbi/lib/finch-api/models/sandbox/individual_update_params.rbi +276 -0
  272. data/rbi/lib/finch-api/models/sandbox/individual_update_response.rbi +283 -0
  273. data/rbi/lib/finch-api/models/sandbox/job_create_params.rbi +46 -0
  274. data/rbi/lib/finch-api/models/sandbox/job_create_response.rbi +64 -0
  275. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_retrieve_params.rbi +22 -0
  276. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_retrieve_response.rbi +11 -0
  277. data/rbi/lib/finch-api/models/sandbox/jobs/configuration_update_params.rbi +22 -0
  278. data/rbi/lib/finch-api/models/sandbox/jobs/sandbox_job_configuration.rbi +58 -0
  279. data/rbi/lib/finch-api/models/sandbox/payment_create_params.rbi +876 -0
  280. data/rbi/lib/finch-api/models/sandbox/payment_create_response.rbi +33 -0
  281. data/rbi/lib/finch-api/models/webhook_event.rbi +18 -0
  282. data/rbi/lib/finch-api/page.rbi +37 -0
  283. data/rbi/lib/finch-api/pooled_net_requester.rbi +36 -0
  284. data/rbi/lib/finch-api/request_options.rbi +84 -0
  285. data/rbi/lib/finch-api/resources/access_tokens.rbi +24 -0
  286. data/rbi/lib/finch-api/resources/account.rbi +25 -0
  287. data/rbi/lib/finch-api/resources/connect/sessions.rbi +61 -0
  288. data/rbi/lib/finch-api/resources/connect.rbi +15 -0
  289. data/rbi/lib/finch-api/resources/hris/benefits/individuals.rbi +58 -0
  290. data/rbi/lib/finch-api/resources/hris/benefits.rbi +64 -0
  291. data/rbi/lib/finch-api/resources/hris/company.rbi +20 -0
  292. data/rbi/lib/finch-api/resources/hris/directory.rbi +35 -0
  293. data/rbi/lib/finch-api/resources/hris/documents.rbi +36 -0
  294. data/rbi/lib/finch-api/resources/hris/employments.rbi +23 -0
  295. data/rbi/lib/finch-api/resources/hris/individuals.rbi +24 -0
  296. data/rbi/lib/finch-api/resources/hris/pay_statements.rbi +23 -0
  297. data/rbi/lib/finch-api/resources/hris/payments.rbi +24 -0
  298. data/rbi/lib/finch-api/resources/hris.rbi +43 -0
  299. data/rbi/lib/finch-api/resources/jobs/automated.rbi +45 -0
  300. data/rbi/lib/finch-api/resources/jobs/manual.rbi +23 -0
  301. data/rbi/lib/finch-api/resources/jobs.rbi +19 -0
  302. data/rbi/lib/finch-api/resources/payroll/pay_groups.rbi +34 -0
  303. data/rbi/lib/finch-api/resources/payroll.rbi +15 -0
  304. data/rbi/lib/finch-api/resources/providers.rbi +18 -0
  305. data/rbi/lib/finch-api/resources/request_forwarding.rbi +25 -0
  306. data/rbi/lib/finch-api/resources/sandbox/company.rbi +40 -0
  307. data/rbi/lib/finch-api/resources/sandbox/connections/accounts.rbi +38 -0
  308. data/rbi/lib/finch-api/resources/sandbox/connections.rbi +36 -0
  309. data/rbi/lib/finch-api/resources/sandbox/directory.rbi +23 -0
  310. data/rbi/lib/finch-api/resources/sandbox/employment.rbi +62 -0
  311. data/rbi/lib/finch-api/resources/sandbox/individual.rbi +50 -0
  312. data/rbi/lib/finch-api/resources/sandbox/jobs/configuration.rbi +33 -0
  313. data/rbi/lib/finch-api/resources/sandbox/jobs.rbi +27 -0
  314. data/rbi/lib/finch-api/resources/sandbox/payment.rbi +25 -0
  315. data/rbi/lib/finch-api/resources/sandbox.rbi +39 -0
  316. data/rbi/lib/finch-api/resources/webhooks.rbi +11 -0
  317. data/rbi/lib/finch-api/responses_page.rbi +29 -0
  318. data/rbi/lib/finch-api/single_page.rbi +33 -0
  319. data/rbi/lib/finch-api/util.rbi +167 -0
  320. data/rbi/lib/finch-api/version.rbi +5 -0
  321. data/sig/finch-api/base_client.rbs +101 -0
  322. data/sig/finch-api/base_model.rbs +242 -0
  323. data/sig/finch-api/base_page.rbs +20 -0
  324. data/sig/finch-api/client.rbs +54 -0
  325. data/sig/finch-api/errors.rbs +99 -0
  326. data/sig/finch-api/extern.rbs +4 -0
  327. data/sig/finch-api/individuals_page.rbs +16 -0
  328. data/sig/finch-api/models/access_token_create_params.rbs +46 -0
  329. data/sig/finch-api/models/account_disconnect_params.rbs +19 -0
  330. data/sig/finch-api/models/account_introspect_params.rbs +19 -0
  331. data/sig/finch-api/models/account_update_event.rbs +1448 -0
  332. data/sig/finch-api/models/base_webhook_event.rbs +24 -0
  333. data/sig/finch-api/models/company_event.rbs +36 -0
  334. data/sig/finch-api/models/connect/session_new_params.rbs +129 -0
  335. data/sig/finch-api/models/connect/session_new_response.rbs +22 -0
  336. data/sig/finch-api/models/connect/session_reauthenticate_params.rbs +65 -0
  337. data/sig/finch-api/models/connect/session_reauthenticate_response.rbs +23 -0
  338. data/sig/finch-api/models/connection_status_type.rbs +22 -0
  339. data/sig/finch-api/models/create_access_token_response.rbs +80 -0
  340. data/sig/finch-api/models/directory_event.rbs +61 -0
  341. data/sig/finch-api/models/disconnect_response.rbs +17 -0
  342. data/sig/finch-api/models/employment_event.rbs +61 -0
  343. data/sig/finch-api/models/hris/benefit_contribution.rbs +38 -0
  344. data/sig/finch-api/models/hris/benefit_create_params.rbs +40 -0
  345. data/sig/finch-api/models/hris/benefit_features_and_operations.rbs +112 -0
  346. data/sig/finch-api/models/hris/benefit_frequency.rbs +15 -0
  347. data/sig/finch-api/models/hris/benefit_list_params.rbs +21 -0
  348. data/sig/finch-api/models/hris/benefit_list_supported_benefits_params.rbs +22 -0
  349. data/sig/finch-api/models/hris/benefit_retrieve_params.rbs +21 -0
  350. data/sig/finch-api/models/hris/benefit_type.rbs +50 -0
  351. data/sig/finch-api/models/hris/benefit_update_params.rbs +26 -0
  352. data/sig/finch-api/models/hris/benefits/enrolled_individual.rbs +75 -0
  353. data/sig/finch-api/models/hris/benefits/individual_benefit.rbs +91 -0
  354. data/sig/finch-api/models/hris/benefits/individual_enroll_many_params.rbs +203 -0
  355. data/sig/finch-api/models/hris/benefits/individual_enrolled_ids_params.rbs +24 -0
  356. data/sig/finch-api/models/hris/benefits/individual_enrolled_ids_response.rbs +25 -0
  357. data/sig/finch-api/models/hris/benefits/individual_retrieve_many_benefits_params.rbs +31 -0
  358. data/sig/finch-api/models/hris/benefits/individual_unenroll_many_params.rbs +31 -0
  359. data/sig/finch-api/models/hris/benefits/unenrolled_individual.rbs +62 -0
  360. data/sig/finch-api/models/hris/benefits_support.rbs +68 -0
  361. data/sig/finch-api/models/hris/benfit_contribution.rbs +8 -0
  362. data/sig/finch-api/models/hris/company.rbs +195 -0
  363. data/sig/finch-api/models/hris/company_benefit.rbs +36 -0
  364. data/sig/finch-api/models/hris/company_retrieve_params.rbs +21 -0
  365. data/sig/finch-api/models/hris/create_company_benefits_response.rbs +20 -0
  366. data/sig/finch-api/models/hris/directory_list_individuals_params.rbs +34 -0
  367. data/sig/finch-api/models/hris/directory_list_params.rbs +34 -0
  368. data/sig/finch-api/models/hris/document_list_params.rbs +61 -0
  369. data/sig/finch-api/models/hris/document_list_response.rbs +29 -0
  370. data/sig/finch-api/models/hris/document_response.rbs +58 -0
  371. data/sig/finch-api/models/hris/document_retreive_params.rbs +21 -0
  372. data/sig/finch-api/models/hris/document_retreive_response.rbs +12 -0
  373. data/sig/finch-api/models/hris/employment_data.rbs +228 -0
  374. data/sig/finch-api/models/hris/employment_data_response.rbs +41 -0
  375. data/sig/finch-api/models/hris/employment_retrieve_many_params.rbs +45 -0
  376. data/sig/finch-api/models/hris/individual.rbs +176 -0
  377. data/sig/finch-api/models/hris/individual_in_directory.rbs +83 -0
  378. data/sig/finch-api/models/hris/individual_response.rbs +41 -0
  379. data/sig/finch-api/models/hris/individual_retrieve_many_params.rbs +72 -0
  380. data/sig/finch-api/models/hris/pay_statement.rbs +445 -0
  381. data/sig/finch-api/models/hris/pay_statement_response.rbs +41 -0
  382. data/sig/finch-api/models/hris/pay_statement_response_body.rbs +35 -0
  383. data/sig/finch-api/models/hris/pay_statement_retrieve_many_params.rbs +53 -0
  384. data/sig/finch-api/models/hris/payment.rbs +112 -0
  385. data/sig/finch-api/models/hris/payment_list_params.rbs +30 -0
  386. data/sig/finch-api/models/hris/support_per_benefit_type.rbs +37 -0
  387. data/sig/finch-api/models/hris/supported_benefit.rbs +84 -0
  388. data/sig/finch-api/models/hris/update_company_benefit_response.rbs +20 -0
  389. data/sig/finch-api/models/hris/w42005.rbs +111 -0
  390. data/sig/finch-api/models/hris/w42020.rbs +108 -0
  391. data/sig/finch-api/models/income.rbs +57 -0
  392. data/sig/finch-api/models/individual_event.rbs +61 -0
  393. data/sig/finch-api/models/introspection.rbs +204 -0
  394. data/sig/finch-api/models/job_completion_event.rbs +70 -0
  395. data/sig/finch-api/models/jobs/automated_async_job.rbs +102 -0
  396. data/sig/finch-api/models/jobs/automated_create_params.rbs +57 -0
  397. data/sig/finch-api/models/jobs/automated_create_response.rbs +37 -0
  398. data/sig/finch-api/models/jobs/automated_list_params.rbs +34 -0
  399. data/sig/finch-api/models/jobs/automated_retrieve_params.rbs +21 -0
  400. data/sig/finch-api/models/jobs/manual_async_job.rbs +43 -0
  401. data/sig/finch-api/models/jobs/manual_retrieve_params.rbs +21 -0
  402. data/sig/finch-api/models/location.rbs +48 -0
  403. data/sig/finch-api/models/money.rbs +19 -0
  404. data/sig/finch-api/models/operation_support.rbs +18 -0
  405. data/sig/finch-api/models/operation_support_matrix.rbs +50 -0
  406. data/sig/finch-api/models/paging.rbs +21 -0
  407. data/sig/finch-api/models/pay_statement_event.rbs +68 -0
  408. data/sig/finch-api/models/payment_event.rbs +59 -0
  409. data/sig/finch-api/models/payroll/pay_group_list_params.rbs +35 -0
  410. data/sig/finch-api/models/payroll/pay_group_list_response.rbs +66 -0
  411. data/sig/finch-api/models/payroll/pay_group_retrieve_params.rbs +21 -0
  412. data/sig/finch-api/models/payroll/pay_group_retrieve_response.rbs +62 -0
  413. data/sig/finch-api/models/provider.rbs +1455 -0
  414. data/sig/finch-api/models/provider_list_params.rbs +18 -0
  415. data/sig/finch-api/models/request_forwarding_forward_params.rbs +44 -0
  416. data/sig/finch-api/models/request_forwarding_forward_response.rbs +71 -0
  417. data/sig/finch-api/models/sandbox/company_update_params.rbs +197 -0
  418. data/sig/finch-api/models/sandbox/company_update_response.rbs +192 -0
  419. data/sig/finch-api/models/sandbox/connection_create_params.rbs +61 -0
  420. data/sig/finch-api/models/sandbox/connection_create_response.rbs +66 -0
  421. data/sig/finch-api/models/sandbox/connections/account_create_params.rbs +62 -0
  422. data/sig/finch-api/models/sandbox/connections/account_create_response.rbs +63 -0
  423. data/sig/finch-api/models/sandbox/connections/account_update_params.rbs +34 -0
  424. data/sig/finch-api/models/sandbox/connections/account_update_response.rbs +61 -0
  425. data/sig/finch-api/models/sandbox/directory_create_params.rbs +392 -0
  426. data/sig/finch-api/models/sandbox/directory_create_response.rbs +9 -0
  427. data/sig/finch-api/models/sandbox/employment_update_params.rbs +228 -0
  428. data/sig/finch-api/models/sandbox/employment_update_response.rbs +229 -0
  429. data/sig/finch-api/models/sandbox/individual_update_params.rbs +178 -0
  430. data/sig/finch-api/models/sandbox/individual_update_response.rbs +179 -0
  431. data/sig/finch-api/models/sandbox/job_create_params.rbs +36 -0
  432. data/sig/finch-api/models/sandbox/job_create_response.rbs +37 -0
  433. data/sig/finch-api/models/sandbox/jobs/configuration_retrieve_params.rbs +23 -0
  434. data/sig/finch-api/models/sandbox/jobs/configuration_retrieve_response.rbs +12 -0
  435. data/sig/finch-api/models/sandbox/jobs/configuration_update_params.rbs +23 -0
  436. data/sig/finch-api/models/sandbox/jobs/sandbox_job_configuration.rbs +51 -0
  437. data/sig/finch-api/models/sandbox/payment_create_params.rbs +487 -0
  438. data/sig/finch-api/models/sandbox/payment_create_response.rbs +22 -0
  439. data/sig/finch-api/models/webhook_event.rbs +17 -0
  440. data/sig/finch-api/page.rbs +16 -0
  441. data/sig/finch-api/pooled_net_requester.rbs +28 -0
  442. data/sig/finch-api/request_options.rbs +40 -0
  443. data/sig/finch-api/resources/access_tokens.rbs +19 -0
  444. data/sig/finch-api/resources/account.rbs +25 -0
  445. data/sig/finch-api/resources/connect/sessions.rbs +40 -0
  446. data/sig/finch-api/resources/connect.rbs +9 -0
  447. data/sig/finch-api/resources/hris/benefits/individuals.rbs +58 -0
  448. data/sig/finch-api/resources/hris/benefits.rbs +64 -0
  449. data/sig/finch-api/resources/hris/company.rbs +18 -0
  450. data/sig/finch-api/resources/hris/directory.rbs +31 -0
  451. data/sig/finch-api/resources/hris/documents.rbs +33 -0
  452. data/sig/finch-api/resources/hris/employments.rbs +19 -0
  453. data/sig/finch-api/resources/hris/individuals.rbs +20 -0
  454. data/sig/finch-api/resources/hris/pay_statements.rbs +19 -0
  455. data/sig/finch-api/resources/hris/payments.rbs +20 -0
  456. data/sig/finch-api/resources/hris.rbs +23 -0
  457. data/sig/finch-api/resources/jobs/automated.rbs +42 -0
  458. data/sig/finch-api/resources/jobs/manual.rbs +20 -0
  459. data/sig/finch-api/resources/jobs.rbs +11 -0
  460. data/sig/finch-api/resources/payroll/pay_groups.rbs +31 -0
  461. data/sig/finch-api/resources/payroll.rbs +9 -0
  462. data/sig/finch-api/resources/providers.rbs +15 -0
  463. data/sig/finch-api/resources/request_forwarding.rbs +21 -0
  464. data/sig/finch-api/resources/sandbox/company.rbs +26 -0
  465. data/sig/finch-api/resources/sandbox/connections/accounts.rbs +34 -0
  466. data/sig/finch-api/resources/sandbox/connections.rbs +24 -0
  467. data/sig/finch-api/resources/sandbox/directory.rbs +19 -0
  468. data/sig/finch-api/resources/sandbox/employment.rbs +38 -0
  469. data/sig/finch-api/resources/sandbox/individual.rbs +32 -0
  470. data/sig/finch-api/resources/sandbox/jobs/configuration.rbs +31 -0
  471. data/sig/finch-api/resources/sandbox/jobs.rbs +21 -0
  472. data/sig/finch-api/resources/sandbox/payment.rbs +21 -0
  473. data/sig/finch-api/resources/sandbox.rbs +21 -0
  474. data/sig/finch-api/resources/webhooks.rbs +7 -0
  475. data/sig/finch-api/responses_page.rbs +14 -0
  476. data/sig/finch-api/single_page.rbs +18 -0
  477. data/sig/finch-api/util.rbs +109 -0
  478. data/sig/finch-api/version.rbs +3 -0
  479. metadata +536 -0
@@ -0,0 +1,112 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class HRIS
6
+ class Benefits
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.
12
+ #
13
+ # @param benefit_id [String]
14
+ #
15
+ # @param params [FinchAPI::Models::HRIS::Benefits::IndividualEnrollManyParams, Hash{Symbol=>Object}] .
16
+ #
17
+ # @option params [Array<FinchAPI::Models::HRIS::Benefits::IndividualEnrollManyParams::Individual>] :individuals Array of the individual_id to enroll and a configuration object.
18
+ #
19
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
20
+ #
21
+ # @return [FinchAPI::SinglePage<FinchAPI::Models::HRIS::Benefits::EnrolledIndividual>]
22
+ #
23
+ def enroll_many(benefit_id, params = {})
24
+ parsed, options = FinchAPI::Models::HRIS::Benefits::IndividualEnrollManyParams.dump_request(params)
25
+ @client.request(
26
+ method: :post,
27
+ path: ["employer/benefits/%0s/individuals", benefit_id],
28
+ body: parsed[:individuals],
29
+ page: FinchAPI::SinglePage,
30
+ model: FinchAPI::Models::HRIS::Benefits::EnrolledIndividual,
31
+ options: options
32
+ )
33
+ end
34
+
35
+ # Lists individuals currently enrolled in a given deduction.
36
+ #
37
+ # @param benefit_id [String]
38
+ #
39
+ # @param params [FinchAPI::Models::HRIS::Benefits::IndividualEnrolledIDsParams, Hash{Symbol=>Object}] .
40
+ #
41
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
42
+ #
43
+ # @return [FinchAPI::Models::HRIS::Benefits::IndividualEnrolledIDsResponse]
44
+ #
45
+ def enrolled_ids(benefit_id, params = {})
46
+ @client.request(
47
+ method: :get,
48
+ path: ["employer/benefits/%0s/enrolled", benefit_id],
49
+ model: FinchAPI::Models::HRIS::Benefits::IndividualEnrolledIDsResponse,
50
+ options: params[:request_options]
51
+ )
52
+ end
53
+
54
+ # Get enrollment information for the given individuals.
55
+ #
56
+ # @param benefit_id [String]
57
+ #
58
+ # @param params [FinchAPI::Models::HRIS::Benefits::IndividualRetrieveManyBenefitsParams, Hash{Symbol=>Object}] .
59
+ #
60
+ # @option params [String] :individual_ids comma-delimited list of stable Finch uuids for each individual. If empty,
61
+ # defaults to all individuals
62
+ #
63
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
64
+ #
65
+ # @return [FinchAPI::SinglePage<FinchAPI::Models::HRIS::Benefits::IndividualBenefit>]
66
+ #
67
+ def retrieve_many_benefits(benefit_id, params = {})
68
+ parsed, options = FinchAPI::Models::HRIS::Benefits::IndividualRetrieveManyBenefitsParams.dump_request(params)
69
+ @client.request(
70
+ method: :get,
71
+ path: ["employer/benefits/%0s/individuals", benefit_id],
72
+ query: parsed,
73
+ page: FinchAPI::SinglePage,
74
+ model: FinchAPI::Models::HRIS::Benefits::IndividualBenefit,
75
+ options: options
76
+ )
77
+ end
78
+
79
+ # Unenroll individuals from a deduction or contribution
80
+ #
81
+ # @param benefit_id [String]
82
+ #
83
+ # @param params [FinchAPI::Models::HRIS::Benefits::IndividualUnenrollManyParams, Hash{Symbol=>Object}] .
84
+ #
85
+ # @option params [Array<String>] :individual_ids Array of individual_ids to unenroll.
86
+ #
87
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
88
+ #
89
+ # @return [FinchAPI::SinglePage<FinchAPI::Models::HRIS::Benefits::UnenrolledIndividual>]
90
+ #
91
+ def unenroll_many(benefit_id, params = {})
92
+ parsed, options = FinchAPI::Models::HRIS::Benefits::IndividualUnenrollManyParams.dump_request(params)
93
+ @client.request(
94
+ method: :delete,
95
+ path: ["employer/benefits/%0s/individuals", benefit_id],
96
+ body: parsed,
97
+ page: FinchAPI::SinglePage,
98
+ model: FinchAPI::Models::HRIS::Benefits::UnenrolledIndividual,
99
+ options: options
100
+ )
101
+ end
102
+
103
+ # @param client [FinchAPI::Client]
104
+ #
105
+ def initialize(client:)
106
+ @client = client
107
+ end
108
+ end
109
+ end
110
+ end
111
+ end
112
+ end
@@ -0,0 +1,125 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class HRIS
6
+ class Benefits
7
+ # @return [FinchAPI::Resources::HRIS::Benefits::Individuals]
8
+ attr_reader :individuals
9
+
10
+ # Creates a new company-wide deduction or contribution. Please use the
11
+ # `/providers` endpoint to view available types for each provider.
12
+ #
13
+ # @param params [FinchAPI::Models::HRIS::BenefitCreateParams, Hash{Symbol=>Object}] .
14
+ #
15
+ # @option params [String] :description Name of the benefit as it appears in the provider and pay statements. Recommend
16
+ # limiting this to <30 characters due to limitations in specific providers (e.g.
17
+ # Justworks).
18
+ #
19
+ # @option params [Symbol, FinchAPI::Models::HRIS::BenefitFrequency, nil] :frequency
20
+ #
21
+ # @option params [Symbol, FinchAPI::Models::HRIS::BenefitType, nil] :type Type of benefit.
22
+ #
23
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
24
+ #
25
+ # @return [FinchAPI::Models::HRIS::CreateCompanyBenefitsResponse]
26
+ #
27
+ def create(params = {})
28
+ parsed, options = FinchAPI::Models::HRIS::BenefitCreateParams.dump_request(params)
29
+ @client.request(
30
+ method: :post,
31
+ path: "employer/benefits",
32
+ body: parsed,
33
+ model: FinchAPI::Models::HRIS::CreateCompanyBenefitsResponse,
34
+ options: options
35
+ )
36
+ end
37
+
38
+ # Lists deductions and contributions information for a given item
39
+ #
40
+ # @param benefit_id [String]
41
+ #
42
+ # @param params [FinchAPI::Models::HRIS::BenefitRetrieveParams, Hash{Symbol=>Object}] .
43
+ #
44
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
45
+ #
46
+ # @return [FinchAPI::Models::HRIS::CompanyBenefit]
47
+ #
48
+ def retrieve(benefit_id, params = {})
49
+ @client.request(
50
+ method: :get,
51
+ path: ["employer/benefits/%0s", benefit_id],
52
+ model: FinchAPI::Models::HRIS::CompanyBenefit,
53
+ options: params[:request_options]
54
+ )
55
+ end
56
+
57
+ # Updates an existing company-wide deduction or contribution
58
+ #
59
+ # @param benefit_id [String]
60
+ #
61
+ # @param params [FinchAPI::Models::HRIS::BenefitUpdateParams, Hash{Symbol=>Object}] .
62
+ #
63
+ # @option params [String] :description Updated name or description.
64
+ #
65
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
66
+ #
67
+ # @return [FinchAPI::Models::HRIS::UpdateCompanyBenefitResponse]
68
+ #
69
+ def update(benefit_id, params = {})
70
+ parsed, options = FinchAPI::Models::HRIS::BenefitUpdateParams.dump_request(params)
71
+ @client.request(
72
+ method: :post,
73
+ path: ["employer/benefits/%0s", benefit_id],
74
+ body: parsed,
75
+ model: FinchAPI::Models::HRIS::UpdateCompanyBenefitResponse,
76
+ options: options
77
+ )
78
+ end
79
+
80
+ # List all company-wide deductions and contributions.
81
+ #
82
+ # @param params [FinchAPI::Models::HRIS::BenefitListParams, Hash{Symbol=>Object}] .
83
+ #
84
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
85
+ #
86
+ # @return [FinchAPI::SinglePage<FinchAPI::Models::HRIS::CompanyBenefit>]
87
+ #
88
+ def list(params = {})
89
+ @client.request(
90
+ method: :get,
91
+ path: "employer/benefits",
92
+ page: FinchAPI::SinglePage,
93
+ model: FinchAPI::Models::HRIS::CompanyBenefit,
94
+ options: params[:request_options]
95
+ )
96
+ end
97
+
98
+ # Get deductions metadata
99
+ #
100
+ # @param params [FinchAPI::Models::HRIS::BenefitListSupportedBenefitsParams, Hash{Symbol=>Object}] .
101
+ #
102
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
103
+ #
104
+ # @return [FinchAPI::SinglePage<FinchAPI::Models::HRIS::SupportedBenefit>]
105
+ #
106
+ def list_supported_benefits(params = {})
107
+ @client.request(
108
+ method: :get,
109
+ path: "employer/benefits/meta",
110
+ page: FinchAPI::SinglePage,
111
+ model: FinchAPI::Models::HRIS::SupportedBenefit,
112
+ options: params[:request_options]
113
+ )
114
+ end
115
+
116
+ # @param client [FinchAPI::Client]
117
+ #
118
+ def initialize(client:)
119
+ @client = client
120
+ @individuals = FinchAPI::Resources::HRIS::Benefits::Individuals.new(client: client)
121
+ end
122
+ end
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class HRIS
6
+ class Company
7
+ # Read basic company data
8
+ #
9
+ # @param params [FinchAPI::Models::HRIS::CompanyRetrieveParams, Hash{Symbol=>Object}] .
10
+ #
11
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
12
+ #
13
+ # @return [FinchAPI::Models::HRIS::HRISCompany]
14
+ #
15
+ def retrieve(params = {})
16
+ @client.request(
17
+ method: :get,
18
+ path: "employer/company",
19
+ model: FinchAPI::Models::HRIS::HRISCompany,
20
+ options: params[:request_options]
21
+ )
22
+ end
23
+
24
+ # @param client [FinchAPI::Client]
25
+ #
26
+ def initialize(client:)
27
+ @client = client
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class HRIS
6
+ class Directory
7
+ # Read company directory and organization structure
8
+ #
9
+ # @param params [FinchAPI::Models::HRIS::DirectoryListParams, Hash{Symbol=>Object}] .
10
+ #
11
+ # @option params [Integer] :limit Number of employees to return (defaults to all)
12
+ #
13
+ # @option params [Integer] :offset Index to start from (defaults to 0)
14
+ #
15
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
16
+ #
17
+ # @return [FinchAPI::IndividualsPage<FinchAPI::Models::HRIS::IndividualInDirectory>]
18
+ #
19
+ def list(params = {})
20
+ parsed, options = FinchAPI::Models::HRIS::DirectoryListParams.dump_request(params)
21
+ @client.request(
22
+ method: :get,
23
+ path: "employer/directory",
24
+ query: parsed,
25
+ page: FinchAPI::IndividualsPage,
26
+ model: FinchAPI::Models::HRIS::IndividualInDirectory,
27
+ options: options
28
+ )
29
+ end
30
+
31
+ # @deprecated use `list` instead
32
+ #
33
+ # Read company directory and organization structure
34
+ #
35
+ # @param params [FinchAPI::Models::HRIS::DirectoryListIndividualsParams, Hash{Symbol=>Object}] .
36
+ #
37
+ # @option params [Integer] :limit Number of employees to return (defaults to all)
38
+ #
39
+ # @option params [Integer] :offset Index to start from (defaults to 0)
40
+ #
41
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
42
+ #
43
+ # @return [FinchAPI::IndividualsPage<FinchAPI::Models::HRIS::IndividualInDirectory>]
44
+ #
45
+ def list_individuals(params = {})
46
+ parsed, options = FinchAPI::Models::HRIS::DirectoryListIndividualsParams.dump_request(params)
47
+ @client.request(
48
+ method: :get,
49
+ path: "employer/directory",
50
+ query: parsed,
51
+ page: FinchAPI::IndividualsPage,
52
+ model: FinchAPI::Models::HRIS::IndividualInDirectory,
53
+ options: options
54
+ )
55
+ end
56
+
57
+ # @param client [FinchAPI::Client]
58
+ #
59
+ def initialize(client:)
60
+ @client = client
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class HRIS
6
+ class Documents
7
+ # **Beta:** This endpoint is in beta and may change.
8
+ # Retrieve a list of company-wide documents.
9
+ #
10
+ # @param params [FinchAPI::Models::HRIS::DocumentListParams, Hash{Symbol=>Object}] .
11
+ #
12
+ # @option params [Array<String>] :individual_ids Comma-delimited list of stable Finch uuids for each individual. If empty,
13
+ # defaults to all individuals
14
+ #
15
+ # @option params [Integer] :limit Number of documents to return (defaults to all)
16
+ #
17
+ # @option params [Integer] :offset Index to start from (defaults to 0)
18
+ #
19
+ # @option params [Array<Symbol, FinchAPI::Models::HRIS::DocumentListParams::Type>] :types Comma-delimited list of document types to filter on. If empty, defaults to all
20
+ # types
21
+ #
22
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
23
+ #
24
+ # @return [FinchAPI::Models::HRIS::DocumentListResponse]
25
+ #
26
+ def list(params = {})
27
+ parsed, options = FinchAPI::Models::HRIS::DocumentListParams.dump_request(params)
28
+ @client.request(
29
+ method: :get,
30
+ path: "employer/documents",
31
+ query: parsed,
32
+ model: FinchAPI::Models::HRIS::DocumentListResponse,
33
+ options: options
34
+ )
35
+ end
36
+
37
+ # **Beta:** This endpoint is in beta and may change.
38
+ # Retrieve details of a specific document by its ID.
39
+ #
40
+ # @param document_id [String] The unique identifier of the document.
41
+ #
42
+ # @param params [FinchAPI::Models::HRIS::DocumentRetreiveParams, Hash{Symbol=>Object}] .
43
+ #
44
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
45
+ #
46
+ # @return [FinchAPI::Models::HRIS::W42020, FinchAPI::Models::HRIS::W42005]
47
+ #
48
+ def retreive(document_id, params = {})
49
+ @client.request(
50
+ method: :get,
51
+ path: ["employer/documents/%0s", document_id],
52
+ model: FinchAPI::Models::HRIS::DocumentRetreiveResponse,
53
+ options: params[:request_options]
54
+ )
55
+ end
56
+
57
+ # @param client [FinchAPI::Client]
58
+ #
59
+ def initialize(client:)
60
+ @client = client
61
+ end
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class HRIS
6
+ class Employments
7
+ # Read individual employment and income data
8
+ #
9
+ # @param params [FinchAPI::Models::HRIS::EmploymentRetrieveManyParams, Hash{Symbol=>Object}] .
10
+ #
11
+ # @option params [Array<FinchAPI::Models::HRIS::EmploymentRetrieveManyParams::Request>] :requests The array of batch requests.
12
+ #
13
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
14
+ #
15
+ # @return [FinchAPI::ResponsesPage<FinchAPI::Models::HRIS::EmploymentDataResponse>]
16
+ #
17
+ def retrieve_many(params)
18
+ parsed, options = FinchAPI::Models::HRIS::EmploymentRetrieveManyParams.dump_request(params)
19
+ @client.request(
20
+ method: :post,
21
+ path: "employer/employment",
22
+ body: parsed,
23
+ page: FinchAPI::ResponsesPage,
24
+ model: FinchAPI::Models::HRIS::EmploymentDataResponse,
25
+ options: options
26
+ )
27
+ end
28
+
29
+ # @param client [FinchAPI::Client]
30
+ #
31
+ def initialize(client:)
32
+ @client = client
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class HRIS
6
+ class Individuals
7
+ # Read individual data, excluding income and employment data
8
+ #
9
+ # @param params [FinchAPI::Models::HRIS::IndividualRetrieveManyParams, Hash{Symbol=>Object}] .
10
+ #
11
+ # @option params [FinchAPI::Models::HRIS::IndividualRetrieveManyParams::Options, nil] :options
12
+ #
13
+ # @option params [Array<FinchAPI::Models::HRIS::IndividualRetrieveManyParams::Request>] :requests
14
+ #
15
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
16
+ #
17
+ # @return [FinchAPI::ResponsesPage<FinchAPI::Models::HRIS::IndividualResponse>]
18
+ #
19
+ def retrieve_many(params = {})
20
+ parsed, options = FinchAPI::Models::HRIS::IndividualRetrieveManyParams.dump_request(params)
21
+ @client.request(
22
+ method: :post,
23
+ path: "employer/individual",
24
+ body: parsed,
25
+ page: FinchAPI::ResponsesPage,
26
+ model: FinchAPI::Models::HRIS::IndividualResponse,
27
+ options: options
28
+ )
29
+ end
30
+
31
+ # @param client [FinchAPI::Client]
32
+ #
33
+ def initialize(client:)
34
+ @client = client
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class HRIS
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.
11
+ #
12
+ # @param params [FinchAPI::Models::HRIS::PayStatementRetrieveManyParams, Hash{Symbol=>Object}] .
13
+ #
14
+ # @option params [Array<FinchAPI::Models::HRIS::PayStatementRetrieveManyParams::Request>] :requests The array of batch requests.
15
+ #
16
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
17
+ #
18
+ # @return [FinchAPI::ResponsesPage<FinchAPI::Models::HRIS::PayStatementResponse>]
19
+ #
20
+ def retrieve_many(params)
21
+ parsed, options = FinchAPI::Models::HRIS::PayStatementRetrieveManyParams.dump_request(params)
22
+ @client.request(
23
+ method: :post,
24
+ path: "employer/pay-statement",
25
+ body: parsed,
26
+ page: FinchAPI::ResponsesPage,
27
+ model: FinchAPI::Models::HRIS::PayStatementResponse,
28
+ options: options
29
+ )
30
+ end
31
+
32
+ # @param client [FinchAPI::Client]
33
+ #
34
+ def initialize(client:)
35
+ @client = client
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class HRIS
6
+ class Payments
7
+ # Read payroll and contractor related payments by the company.
8
+ #
9
+ # @param params [FinchAPI::Models::HRIS::PaymentListParams, Hash{Symbol=>Object}] .
10
+ #
11
+ # @option params [Date] :end_date The end date to retrieve payments by a company (inclusive) in `YYYY-MM-DD`
12
+ # format.
13
+ #
14
+ # @option params [Date] :start_date The start date to retrieve payments by a company (inclusive) in `YYYY-MM-DD`
15
+ # format.
16
+ #
17
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
18
+ #
19
+ # @return [FinchAPI::SinglePage<FinchAPI::Models::HRIS::Payment>]
20
+ #
21
+ def list(params)
22
+ parsed, options = FinchAPI::Models::HRIS::PaymentListParams.dump_request(params)
23
+ @client.request(
24
+ method: :get,
25
+ path: "employer/payment",
26
+ query: parsed,
27
+ page: FinchAPI::SinglePage,
28
+ model: FinchAPI::Models::HRIS::Payment,
29
+ options: options
30
+ )
31
+ end
32
+
33
+ # @param client [FinchAPI::Client]
34
+ #
35
+ def initialize(client:)
36
+ @client = client
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class HRIS
6
+ # @return [FinchAPI::Resources::HRIS::Company]
7
+ attr_reader :company
8
+
9
+ # @return [FinchAPI::Resources::HRIS::Directory]
10
+ attr_reader :directory
11
+
12
+ # @return [FinchAPI::Resources::HRIS::Individuals]
13
+ attr_reader :individuals
14
+
15
+ # @return [FinchAPI::Resources::HRIS::Employments]
16
+ attr_reader :employments
17
+
18
+ # @return [FinchAPI::Resources::HRIS::Payments]
19
+ attr_reader :payments
20
+
21
+ # @return [FinchAPI::Resources::HRIS::PayStatements]
22
+ attr_reader :pay_statements
23
+
24
+ # @return [FinchAPI::Resources::HRIS::Documents]
25
+ attr_reader :documents
26
+
27
+ # @return [FinchAPI::Resources::HRIS::Benefits]
28
+ attr_reader :benefits
29
+
30
+ # @param client [FinchAPI::Client]
31
+ #
32
+ def initialize(client:)
33
+ @client = client
34
+ @company = FinchAPI::Resources::HRIS::Company.new(client: client)
35
+ @directory = FinchAPI::Resources::HRIS::Directory.new(client: client)
36
+ @individuals = FinchAPI::Resources::HRIS::Individuals.new(client: client)
37
+ @employments = FinchAPI::Resources::HRIS::Employments.new(client: client)
38
+ @payments = FinchAPI::Resources::HRIS::Payments.new(client: client)
39
+ @pay_statements = FinchAPI::Resources::HRIS::PayStatements.new(client: client)
40
+ @documents = FinchAPI::Resources::HRIS::Documents.new(client: client)
41
+ @benefits = FinchAPI::Resources::HRIS::Benefits.new(client: client)
42
+ end
43
+ end
44
+ end
45
+ end