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,96 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Jobs
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.
21
+ #
22
+ # @param params [FinchAPI::Models::Jobs::AutomatedCreateParams, Hash{Symbol=>Object}] .
23
+ #
24
+ # @option params [Symbol, FinchAPI::Models::Jobs::AutomatedCreateParams::Type] :type The type of job to start.
25
+ #
26
+ # @option params [FinchAPI::Models::Jobs::AutomatedCreateParams::Params] :params
27
+ #
28
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
29
+ #
30
+ # @return [FinchAPI::Models::Jobs::AutomatedCreateResponse]
31
+ #
32
+ def create(params)
33
+ parsed, options = FinchAPI::Models::Jobs::AutomatedCreateParams.dump_request(params)
34
+ @client.request(
35
+ method: :post,
36
+ path: "jobs/automated",
37
+ body: parsed,
38
+ model: FinchAPI::Models::Jobs::AutomatedCreateResponse,
39
+ options: options
40
+ )
41
+ end
42
+
43
+ # Get an automated job by `job_id`.
44
+ #
45
+ # @param job_id [String]
46
+ #
47
+ # @param params [FinchAPI::Models::Jobs::AutomatedRetrieveParams, Hash{Symbol=>Object}] .
48
+ #
49
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
50
+ #
51
+ # @return [FinchAPI::Models::Jobs::AutomatedAsyncJob]
52
+ #
53
+ def retrieve(job_id, params = {})
54
+ @client.request(
55
+ method: :get,
56
+ path: ["jobs/automated/%0s", job_id],
57
+ model: FinchAPI::Models::Jobs::AutomatedAsyncJob,
58
+ options: params[:request_options]
59
+ )
60
+ end
61
+
62
+ # Get all automated jobs. Automated jobs are completed by a machine. By default,
63
+ # jobs are sorted in descending order by submission time. For scheduled jobs such
64
+ # as data syncs, only the next scheduled job is shown.
65
+ #
66
+ # @param params [FinchAPI::Models::Jobs::AutomatedListParams, Hash{Symbol=>Object}] .
67
+ #
68
+ # @option params [Integer] :limit Number of items to return
69
+ #
70
+ # @option params [Integer] :offset Index to start from (defaults to 0)
71
+ #
72
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
73
+ #
74
+ # @return [FinchAPI::Page<FinchAPI::Models::Jobs::AutomatedAsyncJob>]
75
+ #
76
+ def list(params = {})
77
+ parsed, options = FinchAPI::Models::Jobs::AutomatedListParams.dump_request(params)
78
+ @client.request(
79
+ method: :get,
80
+ path: "jobs/automated",
81
+ query: parsed,
82
+ page: FinchAPI::Page,
83
+ model: FinchAPI::Models::Jobs::AutomatedAsyncJob,
84
+ options: options
85
+ )
86
+ end
87
+
88
+ # @param client [FinchAPI::Client]
89
+ #
90
+ def initialize(client:)
91
+ @client = client
92
+ end
93
+ end
94
+ end
95
+ end
96
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Jobs
6
+ class Manual
7
+ # Get a manual job by `job_id`. Manual jobs are completed by a human and include
8
+ # Assisted Benefits jobs.
9
+ #
10
+ # @param job_id [String]
11
+ #
12
+ # @param params [FinchAPI::Models::Jobs::ManualRetrieveParams, Hash{Symbol=>Object}] .
13
+ #
14
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
15
+ #
16
+ # @return [FinchAPI::Models::Jobs::ManualAsyncJob]
17
+ #
18
+ def retrieve(job_id, params = {})
19
+ @client.request(
20
+ method: :get,
21
+ path: ["jobs/manual/%0s", job_id],
22
+ model: FinchAPI::Models::Jobs::ManualAsyncJob,
23
+ options: params[:request_options]
24
+ )
25
+ end
26
+
27
+ # @param client [FinchAPI::Client]
28
+ #
29
+ def initialize(client:)
30
+ @client = client
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Jobs
6
+ # @return [FinchAPI::Resources::Jobs::Automated]
7
+ attr_reader :automated
8
+
9
+ # @return [FinchAPI::Resources::Jobs::Manual]
10
+ attr_reader :manual
11
+
12
+ # @param client [FinchAPI::Client]
13
+ #
14
+ def initialize(client:)
15
+ @client = client
16
+ @automated = FinchAPI::Resources::Jobs::Automated.new(client: client)
17
+ @manual = FinchAPI::Resources::Jobs::Manual.new(client: client)
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Payroll
6
+ class PayGroups
7
+ # Read information from a single pay group
8
+ #
9
+ # @param pay_group_id [String]
10
+ #
11
+ # @param params [FinchAPI::Models::Payroll::PayGroupRetrieveParams, Hash{Symbol=>Object}] .
12
+ #
13
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
14
+ #
15
+ # @return [FinchAPI::Models::Payroll::PayGroupRetrieveResponse]
16
+ #
17
+ def retrieve(pay_group_id, params = {})
18
+ @client.request(
19
+ method: :get,
20
+ path: ["employer/pay-groups/%0s", pay_group_id],
21
+ model: FinchAPI::Models::Payroll::PayGroupRetrieveResponse,
22
+ options: params[:request_options]
23
+ )
24
+ end
25
+
26
+ # Read company pay groups and frequencies
27
+ #
28
+ # @param params [FinchAPI::Models::Payroll::PayGroupListParams, Hash{Symbol=>Object}] .
29
+ #
30
+ # @option params [String] :individual_id
31
+ #
32
+ # @option params [Array<String>] :pay_frequencies
33
+ #
34
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
35
+ #
36
+ # @return [FinchAPI::SinglePage<FinchAPI::Models::Payroll::PayGroupListResponse>]
37
+ #
38
+ def list(params = {})
39
+ parsed, options = FinchAPI::Models::Payroll::PayGroupListParams.dump_request(params)
40
+ @client.request(
41
+ method: :get,
42
+ path: "employer/pay-groups",
43
+ query: parsed,
44
+ page: FinchAPI::SinglePage,
45
+ model: FinchAPI::Models::Payroll::PayGroupListResponse,
46
+ options: options
47
+ )
48
+ end
49
+
50
+ # @param client [FinchAPI::Client]
51
+ #
52
+ def initialize(client:)
53
+ @client = client
54
+ end
55
+ end
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Payroll
6
+ # @return [FinchAPI::Resources::Payroll::PayGroups]
7
+ attr_reader :pay_groups
8
+
9
+ # @param client [FinchAPI::Client]
10
+ #
11
+ def initialize(client:)
12
+ @client = client
13
+ @pay_groups = FinchAPI::Resources::Payroll::PayGroups.new(client: client)
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Providers
6
+ # Return details on all available payroll and HR systems.
7
+ #
8
+ # @param params [FinchAPI::Models::ProviderListParams, Hash{Symbol=>Object}] .
9
+ #
10
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
11
+ #
12
+ # @return [FinchAPI::SinglePage<FinchAPI::Models::Provider>]
13
+ #
14
+ def list(params = {})
15
+ @client.request(
16
+ method: :get,
17
+ path: "providers",
18
+ page: FinchAPI::SinglePage,
19
+ model: FinchAPI::Models::Provider,
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
@@ -0,0 +1,52 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
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.
10
+ #
11
+ # @param params [FinchAPI::Models::RequestForwardingForwardParams, Hash{Symbol=>Object}] .
12
+ #
13
+ # @option params [String] :method_ The HTTP method for the forwarded request. Valid values include: `GET` , `POST`
14
+ # , `PUT` , `DELETE` , and `PATCH`.
15
+ #
16
+ # @option params [String] :route The URL route path for the forwarded request. This value must begin with a
17
+ # forward-slash ( / ) and may only contain alphanumeric characters, hyphens, and
18
+ # underscores.
19
+ #
20
+ # @option params [String, nil] :data The body for the forwarded request. This value must be specified as either a
21
+ # string or a valid JSON object.
22
+ #
23
+ # @option params [Object, nil] :headers The HTTP headers to include on the forwarded request. This value must be
24
+ # specified as an object of key-value pairs. Example:
25
+ # `{"Content-Type": "application/xml", "X-API-Version": "v1" }`
26
+ #
27
+ # @option params [Object, nil] :params The query parameters for the forwarded request. This value must be specified as
28
+ # a valid JSON object rather than a query string.
29
+ #
30
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
31
+ #
32
+ # @return [FinchAPI::Models::RequestForwardingForwardResponse]
33
+ #
34
+ def forward(params)
35
+ parsed, options = FinchAPI::Models::RequestForwardingForwardParams.dump_request(params)
36
+ @client.request(
37
+ method: :post,
38
+ path: "forward",
39
+ body: parsed,
40
+ model: FinchAPI::Models::RequestForwardingForwardResponse,
41
+ options: options
42
+ )
43
+ end
44
+
45
+ # @param client [FinchAPI::Client]
46
+ #
47
+ def initialize(client:)
48
+ @client = client
49
+ end
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,50 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Sandbox
6
+ class Company
7
+ # Update a sandbox company's data
8
+ #
9
+ # @param params [FinchAPI::Models::Sandbox::CompanyUpdateParams, Hash{Symbol=>Object}] .
10
+ #
11
+ # @option params [Array<FinchAPI::Models::Sandbox::CompanyUpdateParams::Account>, nil] :accounts An array of bank account objects associated with the payroll/HRIS system.
12
+ #
13
+ # @option params [Array<FinchAPI::Models::Sandbox::CompanyUpdateParams::Department, nil>, nil] :departments The array of company departments.
14
+ #
15
+ # @option params [String, nil] :ein The employer identification number.
16
+ #
17
+ # @option params [FinchAPI::Models::Sandbox::CompanyUpdateParams::Entity, nil] :entity The entity type object.
18
+ #
19
+ # @option params [String, nil] :legal_name The legal name of the company.
20
+ #
21
+ # @option params [Array<FinchAPI::Models::Location, nil>, nil] :locations
22
+ #
23
+ # @option params [String, nil] :primary_email The email of the main administrator on the account.
24
+ #
25
+ # @option params [String, nil] :primary_phone_number The phone number of the main administrator on the account. Format: `XXXXXXXXXX`
26
+ #
27
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
28
+ #
29
+ # @return [FinchAPI::Models::Sandbox::CompanyUpdateResponse]
30
+ #
31
+ def update(params)
32
+ parsed, options = FinchAPI::Models::Sandbox::CompanyUpdateParams.dump_request(params)
33
+ @client.request(
34
+ method: :put,
35
+ path: "sandbox/company",
36
+ body: parsed,
37
+ model: FinchAPI::Models::Sandbox::CompanyUpdateResponse,
38
+ options: options
39
+ )
40
+ end
41
+
42
+ # @param client [FinchAPI::Client]
43
+ #
44
+ def initialize(client:)
45
+ @client = client
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,67 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Sandbox
6
+ class Connections
7
+ class Accounts
8
+ # Create a new account for an existing connection (company/provider pair)
9
+ #
10
+ # @param params [FinchAPI::Models::Sandbox::Connections::AccountCreateParams, Hash{Symbol=>Object}] .
11
+ #
12
+ # @option params [String] :company_id
13
+ #
14
+ # @option params [String] :provider_id The provider associated with the `access_token`
15
+ #
16
+ # @option params [Symbol, FinchAPI::Models::Sandbox::Connections::AccountCreateParams::AuthenticationType] :authentication_type
17
+ #
18
+ # @option params [Array<String>] :products Optional, defaults to Organization products (`company`, `directory`,
19
+ # `employment`, `individual`)
20
+ #
21
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
22
+ #
23
+ # @return [FinchAPI::Models::Sandbox::Connections::AccountCreateResponse]
24
+ #
25
+ def create(params)
26
+ parsed, options = FinchAPI::Models::Sandbox::Connections::AccountCreateParams.dump_request(params)
27
+ @client.request(
28
+ method: :post,
29
+ path: "sandbox/connections/accounts",
30
+ body: parsed,
31
+ model: FinchAPI::Models::Sandbox::Connections::AccountCreateResponse,
32
+ options: options
33
+ )
34
+ end
35
+
36
+ # Update an existing sandbox account. Change the connection status to understand
37
+ # how the Finch API responds.
38
+ #
39
+ # @param params [FinchAPI::Models::Sandbox::Connections::AccountUpdateParams, Hash{Symbol=>Object}] .
40
+ #
41
+ # @option params [Symbol, FinchAPI::Models::ConnectionStatusType] :connection_status
42
+ #
43
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
44
+ #
45
+ # @return [FinchAPI::Models::Sandbox::Connections::AccountUpdateResponse]
46
+ #
47
+ def update(params = {})
48
+ parsed, options = FinchAPI::Models::Sandbox::Connections::AccountUpdateParams.dump_request(params)
49
+ @client.request(
50
+ method: :put,
51
+ path: "sandbox/connections/accounts",
52
+ body: parsed,
53
+ model: FinchAPI::Models::Sandbox::Connections::AccountUpdateResponse,
54
+ options: options
55
+ )
56
+ end
57
+
58
+ # @param client [FinchAPI::Client]
59
+ #
60
+ def initialize(client:)
61
+ @client = client
62
+ end
63
+ end
64
+ end
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,48 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Sandbox
6
+ class Connections
7
+ # @return [FinchAPI::Resources::Sandbox::Connections::Accounts]
8
+ attr_reader :accounts
9
+
10
+ # Create a new connection (new company/provider pair) with a new account
11
+ #
12
+ # @param params [FinchAPI::Models::Sandbox::ConnectionCreateParams, Hash{Symbol=>Object}] .
13
+ #
14
+ # @option params [String] :provider_id The provider associated with the connection
15
+ #
16
+ # @option params [Symbol, FinchAPI::Models::Sandbox::ConnectionCreateParams::AuthenticationType] :authentication_type
17
+ #
18
+ # @option params [Integer] :employee_size Optional: the size of the employer to be created with this connection. Defaults
19
+ # to 20. Note that if this is higher than 100, historical payroll data will not be
20
+ # generated, and instead only one pay period will be created.
21
+ #
22
+ # @option params [Array<String>] :products
23
+ #
24
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
25
+ #
26
+ # @return [FinchAPI::Models::Sandbox::ConnectionCreateResponse]
27
+ #
28
+ def create(params)
29
+ parsed, options = FinchAPI::Models::Sandbox::ConnectionCreateParams.dump_request(params)
30
+ @client.request(
31
+ method: :post,
32
+ path: "sandbox/connections",
33
+ body: parsed,
34
+ model: FinchAPI::Models::Sandbox::ConnectionCreateResponse,
35
+ options: options
36
+ )
37
+ end
38
+
39
+ # @param client [FinchAPI::Client]
40
+ #
41
+ def initialize(client:)
42
+ @client = client
43
+ @accounts = FinchAPI::Resources::Sandbox::Connections::Accounts.new(client: client)
44
+ end
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Sandbox
6
+ class Directory
7
+ # Add new individuals to a sandbox company
8
+ #
9
+ # @param params [FinchAPI::Models::Sandbox::DirectoryCreateParams, Hash{Symbol=>Object}] .
10
+ #
11
+ # @option params [Array<FinchAPI::Models::Sandbox::DirectoryCreateParams::Body>] :body Array of individuals to create. Takes all combined fields from `/individual` and
12
+ # `/employment` endpoints. All fields are optional.
13
+ #
14
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
15
+ #
16
+ # @return [Array<Object>]
17
+ #
18
+ def create(params = {})
19
+ parsed, options = FinchAPI::Models::Sandbox::DirectoryCreateParams.dump_request(params)
20
+ @client.request(
21
+ method: :post,
22
+ path: "sandbox/directory",
23
+ body: parsed[:body],
24
+ model: FinchAPI::ArrayOf[FinchAPI::Unknown],
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,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Sandbox
6
+ class Employment
7
+ # Update sandbox employment
8
+ #
9
+ # @param individual_id [String]
10
+ #
11
+ # @param params [FinchAPI::Models::Sandbox::EmploymentUpdateParams, Hash{Symbol=>Object}] .
12
+ #
13
+ # @option params [String, nil] :class_code Worker's compensation classification code for this employee
14
+ #
15
+ # @option params [Array<FinchAPI::Models::Sandbox::EmploymentUpdateParams::CustomField>] :custom_fields Custom fields for the individual. These are fields which are defined by the
16
+ # employer in the system. Custom fields are not currently supported for assisted
17
+ # connections.
18
+ #
19
+ # @option params [FinchAPI::Models::Sandbox::EmploymentUpdateParams::Department, nil] :department The department object.
20
+ #
21
+ # @option params [FinchAPI::Models::Sandbox::EmploymentUpdateParams::Employment, nil] :employment The employment object.
22
+ #
23
+ # @option params [Symbol, FinchAPI::Models::Sandbox::EmploymentUpdateParams::EmploymentStatus, nil] :employment_status The detailed employment status of the individual.
24
+ #
25
+ # @option params [String, nil] :end_date
26
+ #
27
+ # @option params [String, nil] :first_name The legal first name of the individual.
28
+ #
29
+ # @option params [FinchAPI::Models::Income, nil] :income The employee's income as reported by the provider. This may not always be
30
+ # annualized income, but may be in units of bi-weekly, semi-monthly, daily, etc,
31
+ # depending on what information the provider returns.
32
+ #
33
+ # @option params [Array<FinchAPI::Models::Income, nil>, nil] :income_history The array of income history.
34
+ #
35
+ # @option params [Boolean, nil] :is_active `true` if the individual an an active employee or contractor at the company.
36
+ #
37
+ # @option params [String, nil] :last_name The legal last name of the individual.
38
+ #
39
+ # @option params [String, nil] :latest_rehire_date
40
+ #
41
+ # @option params [FinchAPI::Models::Location, nil] :location
42
+ #
43
+ # @option params [FinchAPI::Models::Sandbox::EmploymentUpdateParams::Manager, nil] :manager The manager object representing the manager of the individual within the org.
44
+ #
45
+ # @option params [String, nil] :middle_name The legal middle name of the individual.
46
+ #
47
+ # @option params [String] :source_id The source system's unique employment identifier for this individual
48
+ #
49
+ # @option params [String, nil] :start_date
50
+ #
51
+ # @option params [String, nil] :title The current title of the individual.
52
+ #
53
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
54
+ #
55
+ # @return [FinchAPI::Models::Sandbox::EmploymentUpdateResponse]
56
+ #
57
+ def update(individual_id, params = {})
58
+ parsed, options = FinchAPI::Models::Sandbox::EmploymentUpdateParams.dump_request(params)
59
+ @client.request(
60
+ method: :put,
61
+ path: ["sandbox/employment/%0s", individual_id],
62
+ body: parsed,
63
+ model: FinchAPI::Models::Sandbox::EmploymentUpdateResponse,
64
+ options: options
65
+ )
66
+ end
67
+
68
+ # @param client [FinchAPI::Client]
69
+ #
70
+ def initialize(client:)
71
+ @client = client
72
+ end
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ module FinchAPI
4
+ module Resources
5
+ class Sandbox
6
+ class Individual
7
+ # Update sandbox individual
8
+ #
9
+ # @param individual_id [String]
10
+ #
11
+ # @param params [FinchAPI::Models::Sandbox::IndividualUpdateParams, Hash{Symbol=>Object}] .
12
+ #
13
+ # @option params [String, nil] :dob
14
+ #
15
+ # @option params [Array<FinchAPI::Models::Sandbox::IndividualUpdateParams::Email>, nil] :emails
16
+ #
17
+ # @option params [String, nil] :encrypted_ssn Social Security Number of the individual in **encrypted** format. This field is
18
+ # only available with the `ssn` scope enabled and the
19
+ # `options: { include: ['ssn'] }` param set in the body.
20
+ #
21
+ # @option params [Symbol, FinchAPI::Models::Sandbox::IndividualUpdateParams::Ethnicity, nil] :ethnicity The EEOC-defined ethnicity of the individual.
22
+ #
23
+ # @option params [String, nil] :first_name The legal first name of the individual.
24
+ #
25
+ # @option params [Symbol, FinchAPI::Models::Sandbox::IndividualUpdateParams::Gender, nil] :gender The gender of the individual.
26
+ #
27
+ # @option params [String, nil] :last_name The legal last name of the individual.
28
+ #
29
+ # @option params [String, nil] :middle_name The legal middle name of the individual.
30
+ #
31
+ # @option params [Array<FinchAPI::Models::Sandbox::IndividualUpdateParams::PhoneNumber, nil>, nil] :phone_numbers
32
+ #
33
+ # @option params [String, nil] :preferred_name The preferred name of the individual.
34
+ #
35
+ # @option params [FinchAPI::Models::Location, nil] :residence
36
+ #
37
+ # @option params [String, nil] :ssn Social Security Number of the individual. This field is only available with the
38
+ # `ssn` scope enabled and the `options: { include: ['ssn'] }` param set in the
39
+ # body.
40
+ # [Click here to learn more about enabling the SSN field](/developer-resources/Enable-SSN-Field).
41
+ #
42
+ # @option params [FinchAPI::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
43
+ #
44
+ # @return [FinchAPI::Models::Sandbox::IndividualUpdateResponse]
45
+ #
46
+ def update(individual_id, params = {})
47
+ parsed, options = FinchAPI::Models::Sandbox::IndividualUpdateParams.dump_request(params)
48
+ @client.request(
49
+ method: :put,
50
+ path: ["sandbox/individual/%0s", individual_id],
51
+ body: parsed,
52
+ model: FinchAPI::Models::Sandbox::IndividualUpdateResponse,
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