vitable-connect 0.5.0 → 1.0.0

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 (497) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +16 -0
  3. data/.fernignore +7 -0
  4. data/.rubocop.yml +110 -0
  5. data/CONTRIBUTING.md +120 -0
  6. data/LICENSE +201 -0
  7. data/README.md +170 -123
  8. data/Rakefile +20 -0
  9. data/custom.gemspec.rb +16 -0
  10. data/lib/VitableConnect/auth/client.rb +52 -0
  11. data/lib/VitableConnect/auth/types/issue_access_token_request.rb +13 -0
  12. data/lib/VitableConnect/client.rb +67 -0
  13. data/lib/VitableConnect/employees/client.rb +161 -0
  14. data/lib/VitableConnect/employees/types/get_employees_request.rb +11 -0
  15. data/lib/VitableConnect/employees/types/list_enrollments_employees_request.rb +15 -0
  16. data/lib/VitableConnect/employees/types/patched_update_employee_request.rb +27 -0
  17. data/lib/VitableConnect/employers/client.rb +904 -0
  18. data/lib/VitableConnect/employers/types/census_sync_request.rb +13 -0
  19. data/lib/VitableConnect/employers/types/create_employer_request.rb +23 -0
  20. data/lib/VitableConnect/employers/types/ensure_payroll_integration_email_employers_request.rb +11 -0
  21. data/lib/VitableConnect/employers/types/get_benefit_plan_year_employers_request.rb +13 -0
  22. data/lib/VitableConnect/employers/types/get_employers_request.rb +11 -0
  23. data/lib/VitableConnect/employers/types/get_hris_employers_request.rb +11 -0
  24. data/lib/VitableConnect/employers/types/get_invoice_pdf_employers_request.rb +13 -0
  25. data/lib/VitableConnect/employers/types/get_payroll_access_setup_employers_request.rb +11 -0
  26. data/lib/VitableConnect/employers/types/list_benefit_plan_year_enrollments_employers_request.rb +21 -0
  27. data/lib/VitableConnect/employers/types/list_benefit_plan_years_employers_request.rb +11 -0
  28. data/lib/VitableConnect/employers/types/list_employees_employers_request.rb +19 -0
  29. data/lib/VitableConnect/employers/types/list_employers_request.rb +25 -0
  30. data/lib/VitableConnect/employers/types/list_invoices_employers_request.rb +15 -0
  31. data/lib/VitableConnect/employers/types/list_payroll_deduction_statements_employers_request.rb +15 -0
  32. data/lib/VitableConnect/employers/types/submit_payroll_access_setup_request.rb +57 -0
  33. data/lib/VitableConnect/employers/types/update_employer_request.rb +19 -0
  34. data/lib/VitableConnect/employers/types/update_employer_settings_request.rb +13 -0
  35. data/lib/VitableConnect/enrollments/client.rb +152 -0
  36. data/lib/VitableConnect/enrollments/types/get_enrollments_request.rb +11 -0
  37. data/lib/VitableConnect/enrollments/types/reissue_enrollment_request.rb +17 -0
  38. data/lib/VitableConnect/enrollments/types/terminate_enrollment_request.rb +17 -0
  39. data/lib/VitableConnect/environment.rb +9 -0
  40. data/lib/VitableConnect/errors/api_error.rb +8 -0
  41. data/lib/VitableConnect/errors/client_error.rb +17 -0
  42. data/lib/VitableConnect/errors/redirect_error.rb +8 -0
  43. data/lib/VitableConnect/errors/response_error.rb +42 -0
  44. data/lib/VitableConnect/errors/server_error.rb +11 -0
  45. data/lib/VitableConnect/errors/timeout_error.rb +8 -0
  46. data/lib/VitableConnect/groups/client.rb +199 -0
  47. data/lib/VitableConnect/groups/members/client.rb +21 -0
  48. data/lib/VitableConnect/groups/members/sync/client.rb +122 -0
  49. data/lib/VitableConnect/groups/members/sync/types/get_sync_request.rb +17 -0
  50. data/lib/VitableConnect/groups/members/sync/types/group_member_sync_request.rb +17 -0
  51. data/lib/VitableConnect/groups/types/create_group_request.rb +13 -0
  52. data/lib/VitableConnect/groups/types/get_groups_request.rb +11 -0
  53. data/lib/VitableConnect/groups/types/list_groups_request.rb +13 -0
  54. data/lib/VitableConnect/groups/types/patched_update_group_request.rb +15 -0
  55. data/lib/VitableConnect/internal/errors/constraint_error.rb +10 -0
  56. data/lib/VitableConnect/internal/errors/type_error.rb +10 -0
  57. data/lib/VitableConnect/internal/http/base_request.rb +51 -0
  58. data/lib/VitableConnect/internal/http/raw_client.rb +265 -0
  59. data/lib/VitableConnect/internal/iterators/cursor_item_iterator.rb +28 -0
  60. data/lib/VitableConnect/internal/iterators/cursor_page_iterator.rb +63 -0
  61. data/lib/VitableConnect/internal/iterators/item_iterator.rb +65 -0
  62. data/lib/VitableConnect/internal/iterators/offset_item_iterator.rb +30 -0
  63. data/lib/VitableConnect/internal/iterators/offset_page_iterator.rb +103 -0
  64. data/lib/VitableConnect/internal/json/request.rb +41 -0
  65. data/lib/VitableConnect/internal/json/serializable.rb +25 -0
  66. data/lib/VitableConnect/internal/multipart/multipart_encoder.rb +141 -0
  67. data/lib/VitableConnect/internal/multipart/multipart_form_data.rb +78 -0
  68. data/lib/VitableConnect/internal/multipart/multipart_form_data_part.rb +51 -0
  69. data/lib/VitableConnect/internal/multipart/multipart_request.rb +40 -0
  70. data/lib/VitableConnect/internal/types/array.rb +47 -0
  71. data/lib/VitableConnect/internal/types/boolean.rb +34 -0
  72. data/lib/VitableConnect/internal/types/enum.rb +56 -0
  73. data/lib/VitableConnect/internal/types/hash.rb +36 -0
  74. data/lib/VitableConnect/internal/types/model/field.rb +38 -0
  75. data/lib/VitableConnect/internal/types/model.rb +208 -0
  76. data/lib/VitableConnect/internal/types/type.rb +35 -0
  77. data/lib/VitableConnect/internal/types/union.rb +161 -0
  78. data/lib/VitableConnect/internal/types/unknown.rb +15 -0
  79. data/lib/VitableConnect/internal/types/utils.rb +116 -0
  80. data/lib/VitableConnect/members/client.rb +385 -0
  81. data/lib/VitableConnect/members/types/get_household_members_request.rb +11 -0
  82. data/lib/VitableConnect/members/types/get_members_request.rb +11 -0
  83. data/lib/VitableConnect/members/types/list_dependents_members_request.rb +11 -0
  84. data/lib/VitableConnect/members/types/list_employments_members_request.rb +11 -0
  85. data/lib/VitableConnect/members/types/list_enrollments_members_request.rb +11 -0
  86. data/lib/VitableConnect/members/types/list_id_cards_members_request.rb +11 -0
  87. data/lib/VitableConnect/members/types/list_members_request.rb +15 -0
  88. data/lib/VitableConnect/members/types/list_qualifying_life_events_members_request.rb +17 -0
  89. data/lib/VitableConnect/organizations/client.rb +92 -0
  90. data/lib/VitableConnect/organizations/types/create_organization_request.rb +13 -0
  91. data/lib/VitableConnect/plans/client.rb +69 -0
  92. data/lib/VitableConnect/plans/types/list_plans_request.rb +13 -0
  93. data/lib/VitableConnect/types/access_method.rb +12 -0
  94. data/lib/VitableConnect/types/access_token_response.rb +15 -0
  95. data/lib/VitableConnect/types/additional_access_method.rb +12 -0
  96. data/lib/VitableConnect/types/address.rb +22 -0
  97. data/lib/VitableConnect/types/address_request.rb +17 -0
  98. data/lib/VitableConnect/types/benefit_family.rb +16 -0
  99. data/lib/VitableConnect/types/benefit_family_param_item.rb +16 -0
  100. data/lib/VitableConnect/types/benefit_lifecycle_stage_item.rb +15 -0
  101. data/lib/VitableConnect/types/benefit_plan_network.rb +29 -0
  102. data/lib/VitableConnect/types/benefit_plan_year_detail.rb +52 -0
  103. data/lib/VitableConnect/types/benefit_plan_year_id.rb +23 -0
  104. data/lib/VitableConnect/types/benefit_plan_year_list.rb +47 -0
  105. data/lib/VitableConnect/types/benefit_status.rb +14 -0
  106. data/lib/VitableConnect/types/benefit_summary.rb +15 -0
  107. data/lib/VitableConnect/types/bound_entity.rb +11 -0
  108. data/lib/VitableConnect/types/bound_entity_response.rb +11 -0
  109. data/lib/VitableConnect/types/bound_entity_type.rb +12 -0
  110. data/lib/VitableConnect/types/card_type.rb +14 -0
  111. data/lib/VitableConnect/types/category.rb +14 -0
  112. data/lib/VitableConnect/types/census_sync_detail_response.rb +10 -0
  113. data/lib/VitableConnect/types/census_sync_employee_address_request.rb +17 -0
  114. data/lib/VitableConnect/types/census_sync_employee_request.rb +27 -0
  115. data/lib/VitableConnect/types/census_sync_response.rb +11 -0
  116. data/lib/VitableConnect/types/classification_correction_source.rb +12 -0
  117. data/lib/VitableConnect/types/compensation_type.rb +12 -0
  118. data/lib/VitableConnect/types/contribution_class_compensation.rb +13 -0
  119. data/lib/VitableConnect/types/contribution_class_employment.rb +15 -0
  120. data/lib/VitableConnect/types/contribution_class_location.rb +12 -0
  121. data/lib/VitableConnect/types/contribution_range.rb +11 -0
  122. data/lib/VitableConnect/types/contribution_strategy.rb +13 -0
  123. data/lib/VitableConnect/types/contribution_tier.rb +26 -0
  124. data/lib/VitableConnect/types/coverage_tier.rb +15 -0
  125. data/lib/VitableConnect/types/create_organization_request_type.rb +16 -0
  126. data/lib/VitableConnect/types/created_after.rb +23 -0
  127. data/lib/VitableConnect/types/created_before.rb +23 -0
  128. data/lib/VitableConnect/types/deduction_detail.rb +21 -0
  129. data/lib/VitableConnect/types/deduction_frequency.rb +14 -0
  130. data/lib/VitableConnect/types/digital_benefit_card.rb +36 -0
  131. data/lib/VitableConnect/types/election_status_item.rb +14 -0
  132. data/lib/VitableConnect/types/eligibility_policy.rb +17 -0
  133. data/lib/VitableConnect/types/eligibility_policy_rule.rb +15 -0
  134. data/lib/VitableConnect/types/eligibility_rule_compensation_type.rb +13 -0
  135. data/lib/VitableConnect/types/eligibility_rule_employee_class.rb +17 -0
  136. data/lib/VitableConnect/types/eligible_geographical_location.rb +11 -0
  137. data/lib/VitableConnect/types/eligible_geographical_location_type.rb +12 -0
  138. data/lib/VitableConnect/types/employee.rb +53 -0
  139. data/lib/VitableConnect/types/employee_address.rb +17 -0
  140. data/lib/VitableConnect/types/employee_address_input.rb +19 -0
  141. data/lib/VitableConnect/types/employee_class.rb +16 -0
  142. data/lib/VitableConnect/types/employee_id.rb +23 -0
  143. data/lib/VitableConnect/types/employee_list_response.rb +12 -0
  144. data/lib/VitableConnect/types/employee_response.rb +10 -0
  145. data/lib/VitableConnect/types/employee_search.rb +23 -0
  146. data/lib/VitableConnect/types/employee_status.rb +12 -0
  147. data/lib/VitableConnect/types/employer.rb +34 -0
  148. data/lib/VitableConnect/types/employer_address.rb +18 -0
  149. data/lib/VitableConnect/types/employer_address_input.rb +17 -0
  150. data/lib/VitableConnect/types/employer_benefit_lifecycle_stage.rb +11 -0
  151. data/lib/VitableConnect/types/employer_benefit_plan_year_response.rb +10 -0
  152. data/lib/VitableConnect/types/employer_benefit_plan_years_list_response.rb +9 -0
  153. data/lib/VitableConnect/types/employer_contact.rb +12 -0
  154. data/lib/VitableConnect/types/employer_hris.rb +9 -0
  155. data/lib/VitableConnect/types/employer_hris_response.rb +10 -0
  156. data/lib/VitableConnect/types/employer_hris_status.rb +13 -0
  157. data/lib/VitableConnect/types/employer_id.rb +23 -0
  158. data/lib/VitableConnect/types/employer_invoice_pdf.rb +9 -0
  159. data/lib/VitableConnect/types/employer_invoice_pdf_response.rb +10 -0
  160. data/lib/VitableConnect/types/employer_invoices_list_response.rb +12 -0
  161. data/lib/VitableConnect/types/employer_payroll_deduction_statement_list_response.rb +12 -0
  162. data/lib/VitableConnect/types/employer_response.rb +10 -0
  163. data/lib/VitableConnect/types/employer_search.rb +23 -0
  164. data/lib/VitableConnect/types/employer_settings.rb +9 -0
  165. data/lib/VitableConnect/types/employer_settings_response.rb +10 -0
  166. data/lib/VitableConnect/types/enrollment.rb +34 -0
  167. data/lib/VitableConnect/types/enrollment_detail.rb +39 -0
  168. data/lib/VitableConnect/types/enrollment_id.rb +23 -0
  169. data/lib/VitableConnect/types/enrollment_list_response.rb +12 -0
  170. data/lib/VitableConnect/types/enrollment_rate.rb +13 -0
  171. data/lib/VitableConnect/types/enrollment_rate_summary.rb +13 -0
  172. data/lib/VitableConnect/types/enrollment_response.rb +10 -0
  173. data/lib/VitableConnect/types/enrollment_status.rb +14 -0
  174. data/lib/VitableConnect/types/error_response.rb +17 -0
  175. data/lib/VitableConnect/types/event_id.rb +23 -0
  176. data/lib/VitableConnect/types/event_name.rb +21 -0
  177. data/lib/VitableConnect/types/gender.rb +15 -0
  178. data/lib/VitableConnect/types/grant_type.rb +11 -0
  179. data/lib/VitableConnect/types/group.rb +19 -0
  180. data/lib/VitableConnect/types/group_id.rb +23 -0
  181. data/lib/VitableConnect/types/group_list_response.rb +12 -0
  182. data/lib/VitableConnect/types/group_member_sync_detail_response.rb +10 -0
  183. data/lib/VitableConnect/types/group_member_sync_failure.rb +13 -0
  184. data/lib/VitableConnect/types/group_member_sync_member_request.rb +23 -0
  185. data/lib/VitableConnect/types/group_member_sync_request_detail.rb +17 -0
  186. data/lib/VitableConnect/types/group_member_sync_request_detail_response.rb +10 -0
  187. data/lib/VitableConnect/types/group_member_sync_response.rb +13 -0
  188. data/lib/VitableConnect/types/group_member_sync_results.rb +13 -0
  189. data/lib/VitableConnect/types/group_response.rb +10 -0
  190. data/lib/VitableConnect/types/household_member.rb +22 -0
  191. data/lib/VitableConnect/types/household_member_relationship.rb +14 -0
  192. data/lib/VitableConnect/types/household_member_type.rb +13 -0
  193. data/lib/VitableConnect/types/household_members_response.rb +10 -0
  194. data/lib/VitableConnect/types/hris_connection.rb +17 -0
  195. data/lib/VitableConnect/types/hris_status_item.rb +15 -0
  196. data/lib/VitableConnect/types/ichra_contribution_class.rb +29 -0
  197. data/lib/VitableConnect/types/idp_provider.rb +12 -0
  198. data/lib/VitableConnect/types/include_cancelled.rb +23 -0
  199. data/lib/VitableConnect/types/invoice.rb +15 -0
  200. data/lib/VitableConnect/types/invoice_id.rb +23 -0
  201. data/lib/VitableConnect/types/invoices_cursor_pagination.rb +9 -0
  202. data/lib/VitableConnect/types/limit.rb +23 -0
  203. data/lib/VitableConnect/types/list_webhook_event_deliveries_response.rb +9 -0
  204. data/lib/VitableConnect/types/marital_status.rb +12 -0
  205. data/lib/VitableConnect/types/member.rb +42 -0
  206. data/lib/VitableConnect/types/member_address.rb +17 -0
  207. data/lib/VitableConnect/types/member_dependents_response.rb +10 -0
  208. data/lib/VitableConnect/types/member_digital_benefit_cards_response.rb +10 -0
  209. data/lib/VitableConnect/types/member_employments_response.rb +10 -0
  210. data/lib/VitableConnect/types/member_enrollment.rb +58 -0
  211. data/lib/VitableConnect/types/member_enrollments_response.rb +10 -0
  212. data/lib/VitableConnect/types/member_id.rb +23 -0
  213. data/lib/VitableConnect/types/member_legal_dependent.rb +24 -0
  214. data/lib/VitableConnect/types/member_list_item.rb +20 -0
  215. data/lib/VitableConnect/types/member_list_response.rb +12 -0
  216. data/lib/VitableConnect/types/member_qualifying_life_event.rb +19 -0
  217. data/lib/VitableConnect/types/member_qualifying_life_event_list_response.rb +12 -0
  218. data/lib/VitableConnect/types/member_response.rb +10 -0
  219. data/lib/VitableConnect/types/member_search.rb +23 -0
  220. data/lib/VitableConnect/types/member_status.rb +12 -0
  221. data/lib/VitableConnect/types/missing_employee_resolution.rb +12 -0
  222. data/lib/VitableConnect/types/name_suffix.rb +17 -0
  223. data/lib/VitableConnect/types/offset.rb +23 -0
  224. data/lib/VitableConnect/types/operation.rb +12 -0
  225. data/lib/VitableConnect/types/organization.rb +19 -0
  226. data/lib/VitableConnect/types/organization_employer.rb +44 -0
  227. data/lib/VitableConnect/types/organization_employer_list_response.rb +12 -0
  228. data/lib/VitableConnect/types/organization_hris_provider.rb +11 -0
  229. data/lib/VitableConnect/types/organization_hris_providers_response.rb +10 -0
  230. data/lib/VitableConnect/types/organization_type.rb +16 -0
  231. data/lib/VitableConnect/types/organizations_list_response.rb +12 -0
  232. data/lib/VitableConnect/types/page.rb +23 -0
  233. data/lib/VitableConnect/types/pagination.rb +16 -0
  234. data/lib/VitableConnect/types/payroll_access_setup_status.rb +11 -0
  235. data/lib/VitableConnect/types/payroll_access_setup_status_response.rb +10 -0
  236. data/lib/VitableConnect/types/payroll_deduction_statement.rb +29 -0
  237. data/lib/VitableConnect/types/payroll_integration_email.rb +9 -0
  238. data/lib/VitableConnect/types/payroll_integration_email_response.rb +10 -0
  239. data/lib/VitableConnect/types/plan.rb +11 -0
  240. data/lib/VitableConnect/types/plan_list_response.rb +12 -0
  241. data/lib/VitableConnect/types/plan_year_enrollment.rb +35 -0
  242. data/lib/VitableConnect/types/plan_year_enrollment_election_status.rb +14 -0
  243. data/lib/VitableConnect/types/plan_year_enrollment_list_response.rb +12 -0
  244. data/lib/VitableConnect/types/plan_year_enrollment_policy_status.rb +14 -0
  245. data/lib/VitableConnect/types/preferred_language.rb +16 -0
  246. data/lib/VitableConnect/types/product_code.rb +25 -0
  247. data/lib/VitableConnect/types/qualifying_life_event_status.rb +13 -0
  248. data/lib/VitableConnect/types/qualifying_life_event_type.rb +31 -0
  249. data/lib/VitableConnect/types/reissue_enrollment.rb +9 -0
  250. data/lib/VitableConnect/types/reissue_enrollment_response.rb +10 -0
  251. data/lib/VitableConnect/types/relationship.rb +12 -0
  252. data/lib/VitableConnect/types/remaining_employee_action.rb +12 -0
  253. data/lib/VitableConnect/types/request_id.rb +23 -0
  254. data/lib/VitableConnect/types/resource_id.rb +23 -0
  255. data/lib/VitableConnect/types/resource_type.rb +16 -0
  256. data/lib/VitableConnect/types/search.rb +23 -0
  257. data/lib/VitableConnect/types/sex_at_birth.rb +14 -0
  258. data/lib/VitableConnect/types/state.rb +72 -0
  259. data/lib/VitableConnect/types/status.rb +13 -0
  260. data/lib/VitableConnect/types/tax_classification.rb +13 -0
  261. data/lib/VitableConnect/types/termination_rule.rb +12 -0
  262. data/lib/VitableConnect/types/update_employer_address_input.rb +17 -0
  263. data/lib/VitableConnect/types/waiting_period.rb +13 -0
  264. data/lib/VitableConnect/types/webhook_delivery.rb +25 -0
  265. data/lib/VitableConnect/types/webhook_event.rb +19 -0
  266. data/lib/VitableConnect/types/webhook_event_list_response.rb +12 -0
  267. data/lib/VitableConnect/types/webhook_event_response.rb +10 -0
  268. data/lib/{vitable_connect → VitableConnect}/version.rb +1 -1
  269. data/lib/VitableConnect/webhook_events/client.rb +156 -0
  270. data/lib/VitableConnect/webhook_events/types/get_webhook_events_request.rb +11 -0
  271. data/lib/VitableConnect/webhook_events/types/list_deliveries_webhook_events_request.rb +11 -0
  272. data/lib/VitableConnect/webhook_events/types/list_webhook_events_request.rb +23 -0
  273. data/lib/VitableConnect.rb +268 -0
  274. data/lib/vitable_connect.rb +4 -105
  275. data/reference.md +3722 -0
  276. metadata +286 -266
  277. data/.ignore +0 -2
  278. data/CHANGELOG.md +0 -133
  279. data/lib/vitable_connect/client.rb +0 -139
  280. data/lib/vitable_connect/errors.rb +0 -228
  281. data/lib/vitable_connect/file_part.rb +0 -58
  282. data/lib/vitable_connect/internal/page_number_page.rb +0 -113
  283. data/lib/vitable_connect/internal/transport/base_client.rb +0 -582
  284. data/lib/vitable_connect/internal/transport/pooled_net_requester.rb +0 -210
  285. data/lib/vitable_connect/internal/type/array_of.rb +0 -168
  286. data/lib/vitable_connect/internal/type/base_model.rb +0 -534
  287. data/lib/vitable_connect/internal/type/base_page.rb +0 -55
  288. data/lib/vitable_connect/internal/type/boolean.rb +0 -77
  289. data/lib/vitable_connect/internal/type/converter.rb +0 -327
  290. data/lib/vitable_connect/internal/type/enum.rb +0 -152
  291. data/lib/vitable_connect/internal/type/file_input.rb +0 -111
  292. data/lib/vitable_connect/internal/type/hash_of.rb +0 -188
  293. data/lib/vitable_connect/internal/type/request_parameters.rb +0 -42
  294. data/lib/vitable_connect/internal/type/union.rb +0 -245
  295. data/lib/vitable_connect/internal/type/unknown.rb +0 -81
  296. data/lib/vitable_connect/internal/util.rb +0 -966
  297. data/lib/vitable_connect/internal.rb +0 -20
  298. data/lib/vitable_connect/models/auth_issue_access_token_params.rb +0 -68
  299. data/lib/vitable_connect/models/auth_issue_access_token_response.rb +0 -70
  300. data/lib/vitable_connect/models/employee.rb +0 -310
  301. data/lib/vitable_connect/models/employee_class.rb +0 -25
  302. data/lib/vitable_connect/models/employee_list_enrollments_params.rb +0 -38
  303. data/lib/vitable_connect/models/employee_retrieve_params.rb +0 -22
  304. data/lib/vitable_connect/models/employee_retrieve_response.rb +0 -18
  305. data/lib/vitable_connect/models/employer.rb +0 -155
  306. data/lib/vitable_connect/models/employer_create_params.rb +0 -115
  307. data/lib/vitable_connect/models/employer_list_employees_params.rb +0 -38
  308. data/lib/vitable_connect/models/employer_list_params.rb +0 -30
  309. data/lib/vitable_connect/models/employer_response.rb +0 -19
  310. data/lib/vitable_connect/models/employer_retrieve_params.rb +0 -22
  311. data/lib/vitable_connect/models/employer_submit_census_sync_params.rb +0 -374
  312. data/lib/vitable_connect/models/employer_submit_census_sync_response.rb +0 -35
  313. data/lib/vitable_connect/models/employer_update_settings_params.rb +0 -52
  314. data/lib/vitable_connect/models/employer_update_settings_response.rb +0 -56
  315. data/lib/vitable_connect/models/enrollment.rb +0 -234
  316. data/lib/vitable_connect/models/enrollment_retrieve_params.rb +0 -22
  317. data/lib/vitable_connect/models/enrollment_retrieve_response.rb +0 -18
  318. data/lib/vitable_connect/models/enrollment_status.rb +0 -21
  319. data/lib/vitable_connect/models/group.rb +0 -57
  320. data/lib/vitable_connect/models/group_create_params.rb +0 -26
  321. data/lib/vitable_connect/models/group_list_params.rb +0 -30
  322. data/lib/vitable_connect/models/group_response.rb +0 -18
  323. data/lib/vitable_connect/models/group_retrieve_params.rb +0 -22
  324. data/lib/vitable_connect/models/group_update_params.rb +0 -36
  325. data/lib/vitable_connect/models/groups/members/sync_retrieve_params.rb +0 -33
  326. data/lib/vitable_connect/models/groups/members/sync_retrieve_response.rb +0 -128
  327. data/lib/vitable_connect/models/groups/members/sync_submit_params.rb +0 -121
  328. data/lib/vitable_connect/models/groups/members/sync_submit_response.rb +0 -45
  329. data/lib/vitable_connect/models/pagination.rb +0 -42
  330. data/lib/vitable_connect/models/plan_list_params.rb +0 -30
  331. data/lib/vitable_connect/models/plan_list_response.rb +0 -22
  332. data/lib/vitable_connect/models/type.rb +0 -17
  333. data/lib/vitable_connect/models/webhook_event.rb +0 -62
  334. data/lib/vitable_connect/models/webhook_event_list_deliveries_params.rb +0 -20
  335. data/lib/vitable_connect/models/webhook_event_list_deliveries_response.rb +0 -92
  336. data/lib/vitable_connect/models/webhook_event_list_params.rb +0 -132
  337. data/lib/vitable_connect/models/webhook_event_retrieve_params.rb +0 -20
  338. data/lib/vitable_connect/models/webhook_event_retrieve_response.rb +0 -18
  339. data/lib/vitable_connect/models.rb +0 -104
  340. data/lib/vitable_connect/request_options.rb +0 -78
  341. data/lib/vitable_connect/resources/auth.rb +0 -41
  342. data/lib/vitable_connect/resources/benefit_eligibility_policies.rb +0 -14
  343. data/lib/vitable_connect/resources/employees.rb +0 -65
  344. data/lib/vitable_connect/resources/employers.rb +0 -184
  345. data/lib/vitable_connect/resources/enrollments.rb +0 -35
  346. data/lib/vitable_connect/resources/groups/members/sync.rb +0 -74
  347. data/lib/vitable_connect/resources/groups/members.rb +0 -20
  348. data/lib/vitable_connect/resources/groups.rb +0 -114
  349. data/lib/vitable_connect/resources/plans.rb +0 -41
  350. data/lib/vitable_connect/resources/webhook_events.rb +0 -95
  351. data/manifest.yaml +0 -17
  352. data/rbi/vitable_connect/client.rbi +0 -93
  353. data/rbi/vitable_connect/errors.rbi +0 -205
  354. data/rbi/vitable_connect/file_part.rbi +0 -37
  355. data/rbi/vitable_connect/internal/page_number_page.rbi +0 -49
  356. data/rbi/vitable_connect/internal/transport/base_client.rbi +0 -307
  357. data/rbi/vitable_connect/internal/transport/pooled_net_requester.rbi +0 -84
  358. data/rbi/vitable_connect/internal/type/array_of.rbi +0 -108
  359. data/rbi/vitable_connect/internal/type/base_model.rbi +0 -314
  360. data/rbi/vitable_connect/internal/type/base_page.rbi +0 -43
  361. data/rbi/vitable_connect/internal/type/boolean.rbi +0 -58
  362. data/rbi/vitable_connect/internal/type/converter.rbi +0 -225
  363. data/rbi/vitable_connect/internal/type/enum.rbi +0 -82
  364. data/rbi/vitable_connect/internal/type/file_input.rbi +0 -59
  365. data/rbi/vitable_connect/internal/type/hash_of.rbi +0 -108
  366. data/rbi/vitable_connect/internal/type/request_parameters.rbi +0 -31
  367. data/rbi/vitable_connect/internal/type/union.rbi +0 -130
  368. data/rbi/vitable_connect/internal/type/unknown.rbi +0 -58
  369. data/rbi/vitable_connect/internal/util.rbi +0 -515
  370. data/rbi/vitable_connect/internal.rbi +0 -18
  371. data/rbi/vitable_connect/models/auth_issue_access_token_params.rbi +0 -147
  372. data/rbi/vitable_connect/models/auth_issue_access_token_response.rbi +0 -128
  373. data/rbi/vitable_connect/models/employee.rbi +0 -450
  374. data/rbi/vitable_connect/models/employee_class.rbi +0 -38
  375. data/rbi/vitable_connect/models/employee_list_enrollments_params.rbi +0 -68
  376. data/rbi/vitable_connect/models/employee_retrieve_params.rbi +0 -46
  377. data/rbi/vitable_connect/models/employee_retrieve_response.rbi +0 -32
  378. data/rbi/vitable_connect/models/employer.rbi +0 -197
  379. data/rbi/vitable_connect/models/employer_create_params.rbi +0 -169
  380. data/rbi/vitable_connect/models/employer_list_employees_params.rbi +0 -68
  381. data/rbi/vitable_connect/models/employer_list_params.rbi +0 -60
  382. data/rbi/vitable_connect/models/employer_response.rbi +0 -36
  383. data/rbi/vitable_connect/models/employer_retrieve_params.rbi +0 -46
  384. data/rbi/vitable_connect/models/employer_submit_census_sync_params.rbi +0 -819
  385. data/rbi/vitable_connect/models/employer_submit_census_sync_response.rbi +0 -76
  386. data/rbi/vitable_connect/models/employer_update_settings_params.rbi +0 -114
  387. data/rbi/vitable_connect/models/employer_update_settings_response.rbi +0 -147
  388. data/rbi/vitable_connect/models/enrollment.rbi +0 -401
  389. data/rbi/vitable_connect/models/enrollment_retrieve_params.rbi +0 -46
  390. data/rbi/vitable_connect/models/enrollment_retrieve_response.rbi +0 -34
  391. data/rbi/vitable_connect/models/enrollment_status.rbi +0 -32
  392. data/rbi/vitable_connect/models/group.rbi +0 -77
  393. data/rbi/vitable_connect/models/group_create_params.rbi +0 -46
  394. data/rbi/vitable_connect/models/group_list_params.rbi +0 -60
  395. data/rbi/vitable_connect/models/group_response.rbi +0 -32
  396. data/rbi/vitable_connect/models/group_retrieve_params.rbi +0 -43
  397. data/rbi/vitable_connect/models/group_update_params.rbi +0 -58
  398. data/rbi/vitable_connect/models/groups/members/sync_retrieve_params.rbi +0 -56
  399. data/rbi/vitable_connect/models/groups/members/sync_retrieve_response.rbi +0 -282
  400. data/rbi/vitable_connect/models/groups/members/sync_submit_params.rbi +0 -214
  401. data/rbi/vitable_connect/models/groups/members/sync_submit_response.rbi +0 -92
  402. data/rbi/vitable_connect/models/pagination.rbi +0 -62
  403. data/rbi/vitable_connect/models/plan_list_params.rbi +0 -60
  404. data/rbi/vitable_connect/models/plan_list_response.rbi +0 -29
  405. data/rbi/vitable_connect/models/type.rbi +0 -21
  406. data/rbi/vitable_connect/models/webhook_event.rbi +0 -81
  407. data/rbi/vitable_connect/models/webhook_event_list_deliveries_params.rbi +0 -38
  408. data/rbi/vitable_connect/models/webhook_event_list_deliveries_response.rbi +0 -147
  409. data/rbi/vitable_connect/models/webhook_event_list_params.rbi +0 -299
  410. data/rbi/vitable_connect/models/webhook_event_retrieve_params.rbi +0 -38
  411. data/rbi/vitable_connect/models/webhook_event_retrieve_response.rbi +0 -34
  412. data/rbi/vitable_connect/models.rbi +0 -70
  413. data/rbi/vitable_connect/request_options.rbi +0 -61
  414. data/rbi/vitable_connect/resources/auth.rbi +0 -36
  415. data/rbi/vitable_connect/resources/benefit_eligibility_policies.rbi +0 -12
  416. data/rbi/vitable_connect/resources/employees.rbi +0 -51
  417. data/rbi/vitable_connect/resources/employers.rbi +0 -150
  418. data/rbi/vitable_connect/resources/enrollments.rbi +0 -27
  419. data/rbi/vitable_connect/resources/groups/members/sync.rbi +0 -62
  420. data/rbi/vitable_connect/resources/groups/members.rbi +0 -17
  421. data/rbi/vitable_connect/resources/groups.rbi +0 -79
  422. data/rbi/vitable_connect/resources/plans.rbi +0 -34
  423. data/rbi/vitable_connect/resources/webhook_events.rbi +0 -83
  424. data/rbi/vitable_connect/version.rbi +0 -5
  425. data/sig/vitable_connect/client.rbs +0 -46
  426. data/sig/vitable_connect/errors.rbs +0 -117
  427. data/sig/vitable_connect/file_part.rbs +0 -21
  428. data/sig/vitable_connect/internal/page_number_page.rbs +0 -28
  429. data/sig/vitable_connect/internal/transport/base_client.rbs +0 -133
  430. data/sig/vitable_connect/internal/transport/pooled_net_requester.rbs +0 -48
  431. data/sig/vitable_connect/internal/type/array_of.rbs +0 -48
  432. data/sig/vitable_connect/internal/type/base_model.rbs +0 -104
  433. data/sig/vitable_connect/internal/type/base_page.rbs +0 -24
  434. data/sig/vitable_connect/internal/type/boolean.rbs +0 -26
  435. data/sig/vitable_connect/internal/type/converter.rbs +0 -79
  436. data/sig/vitable_connect/internal/type/enum.rbs +0 -32
  437. data/sig/vitable_connect/internal/type/file_input.rbs +0 -25
  438. data/sig/vitable_connect/internal/type/hash_of.rbs +0 -48
  439. data/sig/vitable_connect/internal/type/request_parameters.rbs +0 -20
  440. data/sig/vitable_connect/internal/type/union.rbs +0 -52
  441. data/sig/vitable_connect/internal/type/unknown.rbs +0 -26
  442. data/sig/vitable_connect/internal/util.rbs +0 -199
  443. data/sig/vitable_connect/internal.rbs +0 -10
  444. data/sig/vitable_connect/models/auth_issue_access_token_params.rbs +0 -56
  445. data/sig/vitable_connect/models/auth_issue_access_token_response.rbs +0 -50
  446. data/sig/vitable_connect/models/employee.rbs +0 -214
  447. data/sig/vitable_connect/models/employee_class.rbs +0 -24
  448. data/sig/vitable_connect/models/employee_list_enrollments_params.rbs +0 -36
  449. data/sig/vitable_connect/models/employee_retrieve_params.rbs +0 -24
  450. data/sig/vitable_connect/models/employee_retrieve_response.rbs +0 -13
  451. data/sig/vitable_connect/models/employer.rbs +0 -112
  452. data/sig/vitable_connect/models/employer_create_params.rbs +0 -93
  453. data/sig/vitable_connect/models/employer_list_employees_params.rbs +0 -36
  454. data/sig/vitable_connect/models/employer_list_params.rbs +0 -32
  455. data/sig/vitable_connect/models/employer_response.rbs +0 -13
  456. data/sig/vitable_connect/models/employer_retrieve_params.rbs +0 -24
  457. data/sig/vitable_connect/models/employer_submit_census_sync_params.rbs +0 -274
  458. data/sig/vitable_connect/models/employer_submit_census_sync_response.rbs +0 -30
  459. data/sig/vitable_connect/models/employer_update_settings_params.rbs +0 -44
  460. data/sig/vitable_connect/models/employer_update_settings_response.rbs +0 -48
  461. data/sig/vitable_connect/models/enrollment.rbs +0 -164
  462. data/sig/vitable_connect/models/enrollment_retrieve_params.rbs +0 -24
  463. data/sig/vitable_connect/models/enrollment_retrieve_response.rbs +0 -13
  464. data/sig/vitable_connect/models/enrollment_status.rbs +0 -16
  465. data/sig/vitable_connect/models/group.rbs +0 -45
  466. data/sig/vitable_connect/models/group_create_params.rbs +0 -28
  467. data/sig/vitable_connect/models/group_list_params.rbs +0 -32
  468. data/sig/vitable_connect/models/group_response.rbs +0 -13
  469. data/sig/vitable_connect/models/group_retrieve_params.rbs +0 -23
  470. data/sig/vitable_connect/models/group_update_params.rbs +0 -32
  471. data/sig/vitable_connect/models/groups/members/sync_retrieve_params.rbs +0 -32
  472. data/sig/vitable_connect/models/groups/members/sync_retrieve_response.rbs +0 -126
  473. data/sig/vitable_connect/models/groups/members/sync_submit_params.rbs +0 -124
  474. data/sig/vitable_connect/models/groups/members/sync_submit_response.rbs +0 -47
  475. data/sig/vitable_connect/models/pagination.rbs +0 -30
  476. data/sig/vitable_connect/models/plan_list_params.rbs +0 -32
  477. data/sig/vitable_connect/models/plan_list_response.rbs +0 -15
  478. data/sig/vitable_connect/models/type.rbs +0 -14
  479. data/sig/vitable_connect/models/webhook_event.rbs +0 -45
  480. data/sig/vitable_connect/models/webhook_event_list_deliveries_params.rbs +0 -23
  481. data/sig/vitable_connect/models/webhook_event_list_deliveries_response.rbs +0 -77
  482. data/sig/vitable_connect/models/webhook_event_list_params.rbs +0 -124
  483. data/sig/vitable_connect/models/webhook_event_retrieve_params.rbs +0 -23
  484. data/sig/vitable_connect/models/webhook_event_retrieve_response.rbs +0 -14
  485. data/sig/vitable_connect/models.rbs +0 -61
  486. data/sig/vitable_connect/request_options.rbs +0 -36
  487. data/sig/vitable_connect/resources/auth.rbs +0 -13
  488. data/sig/vitable_connect/resources/benefit_eligibility_policies.rbs +0 -7
  489. data/sig/vitable_connect/resources/employees.rbs +0 -19
  490. data/sig/vitable_connect/resources/employers.rbs +0 -48
  491. data/sig/vitable_connect/resources/enrollments.rbs +0 -12
  492. data/sig/vitable_connect/resources/groups/members/sync.rbs +0 -23
  493. data/sig/vitable_connect/resources/groups/members.rbs +0 -11
  494. data/sig/vitable_connect/resources/groups.rbs +0 -33
  495. data/sig/vitable_connect/resources/plans.rbs +0 -13
  496. data/sig/vitable_connect/resources/webhook_events.rbs +0 -28
  497. data/sig/vitable_connect/version.rbs +0 -3
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class CensusSyncRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :employees, -> { Internal::Types::Array[VitableConnect::Types::CensusSyncEmployeeRequest] }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class CreateEmployerRequest < Internal::Types::Model
7
+ field :name, -> { String }, optional: false, nullable: false
8
+
9
+ field :legal_name, -> { String }, optional: false, nullable: false
10
+
11
+ field :ein, -> { String }, optional: false, nullable: false
12
+
13
+ field :email, -> { String }, optional: false, nullable: false
14
+
15
+ field :address, -> { VitableConnect::Types::EmployerAddressInput }, optional: false, nullable: false
16
+
17
+ field :phone_number, -> { String }, optional: true, nullable: false
18
+
19
+ field :reference_id, -> { String }, optional: true, nullable: false
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class EnsurePayrollIntegrationEmailEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class GetBenefitPlanYearEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :benefit_plan_year_id, -> { String }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class GetEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class GetHrisEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class GetInvoicePdfEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :invoice_id, -> { String }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class GetPayrollAccessSetupEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class ListBenefitPlanYearEnrollmentsEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :benefit_plan_year_id, -> { String }, optional: false, nullable: false
10
+
11
+ field :election_status, -> { VitableConnect::Types::ElectionStatusItem }, optional: true, nullable: false
12
+
13
+ field :limit, -> { Integer }, optional: true, nullable: false
14
+
15
+ field :page, -> { Integer }, optional: true, nullable: false
16
+
17
+ field :search, -> { String }, optional: true, nullable: false
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class ListBenefitPlanYearsEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class ListEmployeesEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :employment_status, -> { VitableConnect::Types::EmployeeStatus }, optional: true, nullable: false
10
+
11
+ field :limit, -> { Integer }, optional: true, nullable: false
12
+
13
+ field :page, -> { Integer }, optional: true, nullable: false
14
+
15
+ field :search, -> { String }, optional: true, nullable: false
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class ListEmployersRequest < Internal::Types::Model
7
+ field :benefit_family, -> { VitableConnect::Types::BenefitFamilyParamItem }, optional: true, nullable: false
8
+
9
+ field :benefit_lifecycle_stage, -> { VitableConnect::Types::BenefitLifecycleStageItem }, optional: true, nullable: false
10
+
11
+ field :hris_provider, -> { String }, optional: true, nullable: false
12
+
13
+ field :hris_status, -> { VitableConnect::Types::HrisStatusItem }, optional: true, nullable: false
14
+
15
+ field :include_cancelled, -> { Internal::Types::Boolean }, optional: true, nullable: false
16
+
17
+ field :limit, -> { Integer }, optional: true, nullable: false
18
+
19
+ field :page, -> { Integer }, optional: true, nullable: false
20
+
21
+ field :search, -> { String }, optional: true, nullable: false
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class ListInvoicesEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :limit, -> { Integer }, optional: true, nullable: false
10
+
11
+ field :offset, -> { String }, optional: true, nullable: false
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class ListPayrollDeductionStatementsEmployersRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :limit, -> { Integer }, optional: true, nullable: false
10
+
11
+ field :page, -> { Integer }, optional: true, nullable: false
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,57 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class SubmitPayrollAccessSetupRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :employees_in_payroll_acknowledged, -> { Internal::Types::Boolean }, optional: false, nullable: false
10
+
11
+ field :payroll_data_impacts_eligibility_acknowledged, -> { Internal::Types::Boolean }, optional: false, nullable: false
12
+
13
+ field :classifications_accurate, -> { Internal::Types::Boolean }, optional: false, nullable: false
14
+
15
+ field :classification_correction_source, -> { VitableConnect::Types::ClassificationCorrectionSource }, optional: true, nullable: false
16
+
17
+ field :misclassified_employee_names, -> { Internal::Types::Array[String] }, optional: true, nullable: false
18
+
19
+ field :remaining_employee_action, -> { VitableConnect::Types::RemainingEmployeeAction }, optional: true, nullable: false
20
+
21
+ field :all_benefit_eligible_employees_present, -> { Internal::Types::Boolean }, optional: false, nullable: false
22
+
23
+ field :missing_employee_resolution, -> { VitableConnect::Types::MissingEmployeeResolution }, optional: true, nullable: false
24
+
25
+ field :is_controlled_group, -> { Internal::Types::Boolean }, optional: false, nullable: false
26
+
27
+ field :same_payroll_covers_other_eins, -> { Internal::Types::Boolean }, optional: true, nullable: false
28
+
29
+ field :access_method, -> { VitableConnect::Types::AccessMethod }, optional: false, nullable: false
30
+
31
+ field :login_url, -> { String }, optional: true, nullable: false
32
+
33
+ field :username, -> { String }, optional: true, nullable: false
34
+
35
+ field :phone, -> { String }, optional: true, nullable: false
36
+
37
+ field :password, -> { String }, optional: true, nullable: false
38
+
39
+ field :integration_confirmed, -> { Internal::Types::Boolean }, optional: true, nullable: false
40
+
41
+ field :has_additional_payroll_system, -> { Internal::Types::Boolean }, optional: false, nullable: false
42
+
43
+ field :additional_access_method, -> { VitableConnect::Types::AdditionalAccessMethod }, optional: true, nullable: false
44
+
45
+ field :additional_login_url, -> { String }, optional: true, nullable: false
46
+
47
+ field :additional_username, -> { String }, optional: true, nullable: false
48
+
49
+ field :additional_phone, -> { String }, optional: true, nullable: false
50
+
51
+ field :additional_password, -> { String }, optional: true, nullable: false
52
+
53
+ field :additional_integration_confirmed, -> { Internal::Types::Boolean }, optional: true, nullable: false
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class UpdateEmployerRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :name, -> { String }, optional: true, nullable: false
10
+
11
+ field :legal_name, -> { String }, optional: true, nullable: false
12
+
13
+ field :address, -> { VitableConnect::Types::UpdateEmployerAddressInput }, optional: true, nullable: false
14
+
15
+ field :active, -> { Internal::Types::Boolean }, optional: true, nullable: false
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Employers
5
+ module Types
6
+ class UpdateEmployerSettingsRequest < Internal::Types::Model
7
+ field :employer_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :pay_frequency, -> { VitableConnect::Types::DeductionFrequency }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,152 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Enrollments
5
+ class Client
6
+ # @param client [VitableConnect::Internal::Http::RawClient]
7
+ #
8
+ # @return [void]
9
+ def initialize(client:)
10
+ @client = client
11
+ end
12
+
13
+ # Retrieves a single enrollment: the employee and employer it belongs to, the benefit product, its status, the
14
+ # coverage period, the employee payroll deduction and employer contribution, and the enrolled plan's Summary of
15
+ # Benefits and Coverage document when one is on file. An enrollment the caller cannot reach is indistinguishable
16
+ # from one that does not exist.
17
+ #
18
+ # @param request_options [Hash]
19
+ # @param params [Hash]
20
+ # @option request_options [String] :base_url
21
+ # @option request_options [Hash{String => Object}] :additional_headers
22
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
23
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
24
+ # @option request_options [Integer] :timeout_in_seconds
25
+ # @option params [VitableConnect::Types::EnrollmentID] :enrollment_id
26
+ #
27
+ # @example
28
+ # client.enrollments.get(enrollment_id: "enrl_AAAAAAAAAAAAAAAAAAAAAQ")
29
+ #
30
+ # @return [VitableConnect::Types::EnrollmentResponse]
31
+ def get(request_options: {}, **params)
32
+ params = VitableConnect::Internal::Types::Utils.normalize_keys(params)
33
+ request = VitableConnect::Internal::JSON::Request.new(
34
+ base_url: request_options[:base_url],
35
+ method: "GET",
36
+ path: "v1/enrollments/#{URI.encode_uri_component(params[:enrollment_id].to_s)}",
37
+ request_options: request_options
38
+ )
39
+ begin
40
+ response = @client.send(request)
41
+ rescue Net::HTTPRequestTimeout
42
+ raise VitableConnect::Errors::TimeoutError
43
+ end
44
+ code = response.code.to_i
45
+ if code.between?(200, 299)
46
+ VitableConnect::Types::EnrollmentResponse.load(response.body)
47
+ else
48
+ error_class = VitableConnect::Errors::ResponseError.subclass_for_code(code)
49
+ raise error_class.new(response.body, code: code)
50
+ end
51
+ end
52
+
53
+ # Closes the targeted enrollment and creates a new unanswered enrollment for the same member and plan year. VPC
54
+ # never requires a qualifying life event; other products require an accepted, member-owned event outside open
55
+ # enrollment. User-backed callers must provide a reason; it is optional for organization API-key callers. Tenant
56
+ # mismatches return a non-disclosing 404 before the request body is validated.
57
+ #
58
+ # @param request_options [Hash]
59
+ # @param params [VitableConnect::Enrollments::Types::ReissueEnrollmentRequest]
60
+ # @option request_options [String] :base_url
61
+ # @option request_options [Hash{String => Object}] :additional_headers
62
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
63
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
64
+ # @option request_options [Integer] :timeout_in_seconds
65
+ # @option params [VitableConnect::Types::EnrollmentID] :enrollment_id
66
+ #
67
+ # @example
68
+ # client.enrollments.reissue(
69
+ # enrollment_id: "enrl_AAAAAAAAAAAAAAAAAAAAAQ",
70
+ # reason: "Member needs a new election after a qualifying event.",
71
+ # ticket_number: "BPT-1234",
72
+ # qualifying_life_event_id: "qle_AAAAAAAAAAAAAAAAAAAAAQ"
73
+ # )
74
+ #
75
+ # @return [VitableConnect::Types::ReissueEnrollmentResponse]
76
+ def reissue(request_options: {}, **params)
77
+ params = VitableConnect::Internal::Types::Utils.normalize_keys(params)
78
+ request_data = VitableConnect::Enrollments::Types::ReissueEnrollmentRequest.new(params).to_h
79
+ non_body_param_names = %w[enrollment_id]
80
+ body = request_data.except(*non_body_param_names)
81
+
82
+ request = VitableConnect::Internal::JSON::Request.new(
83
+ base_url: request_options[:base_url],
84
+ method: "POST",
85
+ path: "v1/enrollments/#{URI.encode_uri_component(params[:enrollment_id].to_s)}/reissue",
86
+ body: body,
87
+ request_options: request_options
88
+ )
89
+ begin
90
+ response = @client.send(request)
91
+ rescue Net::HTTPRequestTimeout
92
+ raise VitableConnect::Errors::TimeoutError
93
+ end
94
+ code = response.code.to_i
95
+ if code.between?(200, 299)
96
+ VitableConnect::Types::ReissueEnrollmentResponse.load(response.body)
97
+ else
98
+ error_class = VitableConnect::Errors::ResponseError.subclass_for_code(code)
99
+ raise error_class.new(response.body, code: code)
100
+ end
101
+ end
102
+
103
+ # Terminates enrolled coverage immediately. An accepted qualifying life event owned by the enrollment member is
104
+ # required unless the plan is VPC or ICHRA. User-backed callers must provide a reason; it is optional for
105
+ # organization API-key callers. API keys may act across the caller organization's book. Tenant mismatches return
106
+ # the same non-disclosing 404 before the request body is validated.
107
+ #
108
+ # @param request_options [Hash]
109
+ # @param params [VitableConnect::Enrollments::Types::TerminateEnrollmentRequest]
110
+ # @option request_options [String] :base_url
111
+ # @option request_options [Hash{String => Object}] :additional_headers
112
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
113
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
114
+ # @option request_options [Integer] :timeout_in_seconds
115
+ # @option params [VitableConnect::Types::EnrollmentID] :enrollment_id
116
+ #
117
+ # @example
118
+ # client.enrollments.terminate(
119
+ # enrollment_id: "enrl_AAAAAAAAAAAAAAAAAAAAAQ",
120
+ # reason: "Member requested coverage termination after a qualifying event.",
121
+ # ticket_number: "BPT-1234",
122
+ # qualifying_life_event_id: "qle_AAAAAAAAAAAAAAAAAAAAAQ"
123
+ # )
124
+ #
125
+ # @return [untyped]
126
+ def terminate(request_options: {}, **params)
127
+ params = VitableConnect::Internal::Types::Utils.normalize_keys(params)
128
+ request_data = VitableConnect::Enrollments::Types::TerminateEnrollmentRequest.new(params).to_h
129
+ non_body_param_names = %w[enrollment_id]
130
+ body = request_data.except(*non_body_param_names)
131
+
132
+ request = VitableConnect::Internal::JSON::Request.new(
133
+ base_url: request_options[:base_url],
134
+ method: "POST",
135
+ path: "v1/enrollments/#{URI.encode_uri_component(params[:enrollment_id].to_s)}/terminate",
136
+ body: body,
137
+ request_options: request_options
138
+ )
139
+ begin
140
+ response = @client.send(request)
141
+ rescue Net::HTTPRequestTimeout
142
+ raise VitableConnect::Errors::TimeoutError
143
+ end
144
+ code = response.code.to_i
145
+ return if code.between?(200, 299)
146
+
147
+ error_class = VitableConnect::Errors::ResponseError.subclass_for_code(code)
148
+ raise error_class.new(response.body, code: code)
149
+ end
150
+ end
151
+ end
152
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Enrollments
5
+ module Types
6
+ class GetEnrollmentsRequest < Internal::Types::Model
7
+ field :enrollment_id, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Enrollments
5
+ module Types
6
+ class ReissueEnrollmentRequest < Internal::Types::Model
7
+ field :enrollment_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :reason, -> { String }, optional: true, nullable: false
10
+
11
+ field :ticket_number, -> { String }, optional: true, nullable: false
12
+
13
+ field :qualifying_life_event_id, -> { String }, optional: true, nullable: false
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Enrollments
5
+ module Types
6
+ class TerminateEnrollmentRequest < Internal::Types::Model
7
+ field :enrollment_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :reason, -> { String }, optional: true, nullable: false
10
+
11
+ field :ticket_number, -> { String }, optional: true, nullable: false
12
+
13
+ field :qualifying_life_event_id, -> { String }, optional: true, nullable: false
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ class Environment
5
+ PRODUCTION = "https://api.vitablehealth.com"
6
+
7
+ UAT = "https://api.uat.vitablehealth.com"
8
+ end
9
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Errors
5
+ class ApiError < StandardError
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Errors
5
+ class ClientError < ResponseError
6
+ end
7
+
8
+ class UnauthorizedError < ClientError
9
+ end
10
+
11
+ class ForbiddenError < ClientError
12
+ end
13
+
14
+ class NotFoundError < ClientError
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Errors
5
+ class RedirectError < ResponseError
6
+ end
7
+ end
8
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Errors
5
+ class ResponseError < ApiError
6
+ attr_reader :code
7
+
8
+ def initialize(msg, code:)
9
+ @code = code
10
+ super(msg)
11
+ end
12
+
13
+ def inspect
14
+ "#<#{self.class.name} @code=#{code} @body=#{message}>"
15
+ end
16
+
17
+ # Returns the most appropriate error class for the given code.
18
+ #
19
+ # @return [Class]
20
+ def self.subclass_for_code(code)
21
+ case code
22
+ when 300..399
23
+ RedirectError
24
+ when 401
25
+ UnauthorizedError
26
+ when 403
27
+ ForbiddenError
28
+ when 404
29
+ NotFoundError
30
+ when 400..499
31
+ ClientError
32
+ when 503
33
+ ServiceUnavailableError
34
+ when 500..599
35
+ ServerError
36
+ else
37
+ ResponseError
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Errors
5
+ class ServerError < ResponseError
6
+ end
7
+
8
+ class ServiceUnavailableError < ApiError
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Errors
5
+ class TimeoutError < ApiError
6
+ end
7
+ end
8
+ end