vitable-connect 0.5.0 → 0.6.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 (216) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +36 -0
  3. data/README.md +9 -9
  4. data/lib/vitable_connect/client.rb +19 -5
  5. data/lib/vitable_connect/internal/transport/base_client.rb +24 -3
  6. data/lib/vitable_connect/internal/type/enum.rb +13 -9
  7. data/lib/vitable_connect/models/auth_issue_access_token_params.rb +17 -3
  8. data/lib/vitable_connect/models/auth_issue_access_token_response.rb +17 -3
  9. data/lib/vitable_connect/models/employee.rb +90 -22
  10. data/lib/vitable_connect/models/employee_update_params.rb +185 -0
  11. data/lib/vitable_connect/models/employee_update_response.rb +18 -0
  12. data/lib/vitable_connect/models/employer.rb +36 -2
  13. data/lib/vitable_connect/models/employer_ensure_payroll_integration_email_params.rb +22 -0
  14. data/lib/vitable_connect/models/employer_ensure_payroll_integration_email_response.rb +29 -0
  15. data/lib/vitable_connect/models/employer_list_benefit_plan_year_enrollments_params.rb +80 -0
  16. data/lib/vitable_connect/models/employer_list_benefit_plan_year_enrollments_response.rb +175 -0
  17. data/lib/vitable_connect/models/employer_list_benefit_plan_years_params.rb +22 -0
  18. data/lib/vitable_connect/models/employer_list_benefit_plan_years_response.rb +301 -0
  19. data/lib/vitable_connect/models/employer_list_employees_params.rb +28 -1
  20. data/lib/vitable_connect/models/employer_list_hris_providers_params.rb +14 -0
  21. data/lib/vitable_connect/models/employer_list_hris_providers_response.rb +30 -0
  22. data/lib/vitable_connect/models/employer_list_invoices_params.rb +38 -0
  23. data/lib/vitable_connect/models/employer_list_invoices_response.rb +77 -0
  24. data/lib/vitable_connect/models/employer_list_params.rb +118 -5
  25. data/lib/vitable_connect/models/employer_list_payroll_deduction_statements_params.rb +38 -0
  26. data/lib/vitable_connect/models/employer_list_payroll_deduction_statements_response.rb +113 -0
  27. data/lib/vitable_connect/models/employer_list_response.rb +283 -0
  28. data/lib/vitable_connect/models/employer_retrieve_benefit_plan_year_params.rb +30 -0
  29. data/lib/vitable_connect/models/employer_retrieve_benefit_plan_year_response.rb +813 -0
  30. data/lib/vitable_connect/models/employer_retrieve_hris_params.rb +22 -0
  31. data/lib/vitable_connect/models/employer_retrieve_hris_response.rb +55 -0
  32. data/lib/vitable_connect/models/employer_retrieve_invoice_pdf_params.rb +30 -0
  33. data/lib/vitable_connect/models/employer_retrieve_invoice_pdf_response.rb +17 -0
  34. data/lib/vitable_connect/models/employer_retrieve_payroll_access_setup_params.rb +22 -0
  35. data/lib/vitable_connect/models/employer_retrieve_payroll_access_setup_response.rb +35 -0
  36. data/lib/vitable_connect/models/employer_submit_census_sync_params.rb +9 -8
  37. data/lib/vitable_connect/models/employer_submit_payroll_access_setup_params.rb +267 -0
  38. data/lib/vitable_connect/models/employer_submit_payroll_access_setup_response.rb +35 -0
  39. data/lib/vitable_connect/models/employer_update_params.rb +99 -0
  40. data/lib/vitable_connect/models/employer_update_settings_params.rb +9 -9
  41. data/lib/vitable_connect/models/employer_update_settings_response.rb +4 -4
  42. data/lib/vitable_connect/models/enrollment_reissue_params.rb +50 -0
  43. data/lib/vitable_connect/models/enrollment_reissue_response.rb +30 -0
  44. data/lib/vitable_connect/models/enrollment_terminate_params.rb +50 -0
  45. data/lib/vitable_connect/models/groups/members/sync_submit_params.rb +7 -7
  46. data/lib/vitable_connect/models/member_list_dependents_params.rb +20 -0
  47. data/lib/vitable_connect/models/member_list_dependents_response.rb +132 -0
  48. data/lib/vitable_connect/models/member_list_employments_params.rb +20 -0
  49. data/lib/vitable_connect/models/member_list_employments_response.rb +18 -0
  50. data/lib/vitable_connect/models/member_list_enrollments_params.rb +20 -0
  51. data/lib/vitable_connect/models/member_list_enrollments_response.rb +319 -0
  52. data/lib/vitable_connect/models/member_list_id_cards_params.rb +20 -0
  53. data/lib/vitable_connect/models/member_list_id_cards_response.rb +368 -0
  54. data/lib/vitable_connect/models/member_list_params.rb +38 -0
  55. data/lib/vitable_connect/models/member_list_qualifying_life_events_params.rb +57 -0
  56. data/lib/vitable_connect/models/member_list_qualifying_life_events_response.rb +96 -0
  57. data/lib/vitable_connect/models/member_list_response.rb +108 -0
  58. data/lib/vitable_connect/models/member_retrieve_household_params.rb +20 -0
  59. data/lib/vitable_connect/models/member_retrieve_household_response.rb +128 -0
  60. data/lib/vitable_connect/models/member_retrieve_params.rb +20 -0
  61. data/lib/vitable_connect/models/member_retrieve_response.rb +195 -0
  62. data/lib/vitable_connect/models/organization_create_params.rb +57 -0
  63. data/lib/vitable_connect/models/organization_create_response.rb +104 -0
  64. data/lib/vitable_connect/models/organization_list_params.rb +14 -0
  65. data/lib/vitable_connect/models/organization_list_response.rb +128 -0
  66. data/lib/vitable_connect/models/webhook_event_list_params.rb +3 -0
  67. data/lib/vitable_connect/models.rb +54 -2
  68. data/lib/vitable_connect/resources/employees.rb +49 -3
  69. data/lib/vitable_connect/resources/employers.rb +418 -14
  70. data/lib/vitable_connect/resources/enrollments.rb +75 -0
  71. data/lib/vitable_connect/resources/members.rb +231 -0
  72. data/lib/vitable_connect/resources/organizations.rb +66 -0
  73. data/lib/vitable_connect/version.rb +1 -1
  74. data/lib/vitable_connect.rb +51 -2
  75. data/rbi/vitable_connect/client.rbi +18 -5
  76. data/rbi/vitable_connect/internal/transport/base_client.rbi +4 -1
  77. data/rbi/vitable_connect/models/auth_issue_access_token_params.rbi +53 -5
  78. data/rbi/vitable_connect/models/auth_issue_access_token_response.rbi +51 -5
  79. data/rbi/vitable_connect/models/employee.rbi +130 -29
  80. data/rbi/vitable_connect/models/employee_update_params.rbi +323 -0
  81. data/rbi/vitable_connect/models/employee_update_response.rbi +32 -0
  82. data/rbi/vitable_connect/models/employer.rbi +58 -0
  83. data/rbi/vitable_connect/models/employer_ensure_payroll_integration_email_params.rbi +46 -0
  84. data/rbi/vitable_connect/models/employer_ensure_payroll_integration_email_response.rbi +72 -0
  85. data/rbi/vitable_connect/models/employer_list_benefit_plan_year_enrollments_params.rbi +165 -0
  86. data/rbi/vitable_connect/models/employer_list_benefit_plan_year_enrollments_response.rbi +278 -0
  87. data/rbi/vitable_connect/models/employer_list_benefit_plan_years_params.rbi +46 -0
  88. data/rbi/vitable_connect/models/employer_list_benefit_plan_years_response.rbi +539 -0
  89. data/rbi/vitable_connect/models/employer_list_employees_params.rbi +70 -0
  90. data/rbi/vitable_connect/models/employer_list_hris_providers_params.rbi +32 -0
  91. data/rbi/vitable_connect/models/employer_list_hris_providers_response.rbi +74 -0
  92. data/rbi/vitable_connect/models/employer_list_invoices_params.rbi +65 -0
  93. data/rbi/vitable_connect/models/employer_list_invoices_response.rbi +151 -0
  94. data/rbi/vitable_connect/models/employer_list_params.rbi +292 -4
  95. data/rbi/vitable_connect/models/employer_list_payroll_deduction_statements_params.rbi +68 -0
  96. data/rbi/vitable_connect/models/employer_list_payroll_deduction_statements_response.rbi +169 -0
  97. data/rbi/vitable_connect/models/employer_list_response.rbi +426 -0
  98. data/rbi/vitable_connect/models/employer_retrieve_benefit_plan_year_params.rbi +54 -0
  99. data/rbi/vitable_connect/models/employer_retrieve_benefit_plan_year_response.rbi +1574 -0
  100. data/rbi/vitable_connect/models/employer_retrieve_hris_params.rbi +46 -0
  101. data/rbi/vitable_connect/models/employer_retrieve_hris_response.rbi +120 -0
  102. data/rbi/vitable_connect/models/employer_retrieve_invoice_pdf_params.rbi +54 -0
  103. data/rbi/vitable_connect/models/employer_retrieve_invoice_pdf_response.rbi +30 -0
  104. data/rbi/vitable_connect/models/employer_retrieve_payroll_access_setup_params.rbi +46 -0
  105. data/rbi/vitable_connect/models/employer_retrieve_payroll_access_setup_response.rbi +83 -0
  106. data/rbi/vitable_connect/models/employer_submit_census_sync_params.rbi +8 -6
  107. data/rbi/vitable_connect/models/employer_submit_payroll_access_setup_params.rbi +441 -0
  108. data/rbi/vitable_connect/models/employer_submit_payroll_access_setup_response.rbi +83 -0
  109. data/rbi/vitable_connect/models/employer_update_params.rbi +155 -0
  110. data/rbi/vitable_connect/models/employer_update_settings_params.rbi +12 -12
  111. data/rbi/vitable_connect/models/employer_update_settings_response.rbi +6 -6
  112. data/rbi/vitable_connect/models/enrollment_reissue_params.rbi +72 -0
  113. data/rbi/vitable_connect/models/enrollment_reissue_response.rbi +67 -0
  114. data/rbi/vitable_connect/models/enrollment_terminate_params.rbi +72 -0
  115. data/rbi/vitable_connect/models/groups/members/sync_submit_params.rbi +9 -9
  116. data/rbi/vitable_connect/models/member_list_dependents_params.rbi +38 -0
  117. data/rbi/vitable_connect/models/member_list_dependents_response.rbi +249 -0
  118. data/rbi/vitable_connect/models/member_list_employments_params.rbi +38 -0
  119. data/rbi/vitable_connect/models/member_list_employments_response.rbi +31 -0
  120. data/rbi/vitable_connect/models/member_list_enrollments_params.rbi +38 -0
  121. data/rbi/vitable_connect/models/member_list_enrollments_response.rbi +579 -0
  122. data/rbi/vitable_connect/models/member_list_id_cards_params.rbi +38 -0
  123. data/rbi/vitable_connect/models/member_list_id_cards_response.rbi +624 -0
  124. data/rbi/vitable_connect/models/member_list_params.rbi +71 -0
  125. data/rbi/vitable_connect/models/member_list_qualifying_life_events_params.rbi +130 -0
  126. data/rbi/vitable_connect/models/member_list_qualifying_life_events_response.rbi +192 -0
  127. data/rbi/vitable_connect/models/member_list_response.rbi +166 -0
  128. data/rbi/vitable_connect/models/member_retrieve_household_params.rbi +38 -0
  129. data/rbi/vitable_connect/models/member_retrieve_household_response.rbi +251 -0
  130. data/rbi/vitable_connect/models/member_retrieve_params.rbi +38 -0
  131. data/rbi/vitable_connect/models/member_retrieve_response.rbi +312 -0
  132. data/rbi/vitable_connect/models/organization_create_params.rbi +127 -0
  133. data/rbi/vitable_connect/models/organization_create_response.rbi +212 -0
  134. data/rbi/vitable_connect/models/organization_list_params.rbi +32 -0
  135. data/rbi/vitable_connect/models/organization_list_response.rbi +266 -0
  136. data/rbi/vitable_connect/models/webhook_event_list_params.rbi +8 -0
  137. data/rbi/vitable_connect/models.rbi +66 -2
  138. data/rbi/vitable_connect/resources/employees.rbi +62 -3
  139. data/rbi/vitable_connect/resources/employers.rbi +384 -14
  140. data/rbi/vitable_connect/resources/enrollments.rbi +61 -0
  141. data/rbi/vitable_connect/resources/members.rbi +169 -0
  142. data/rbi/vitable_connect/resources/organizations.rbi +48 -0
  143. data/rbi/vitable_connect/resources/webhook_events.rbi +1 -0
  144. data/sig/vitable_connect/client.rbs +9 -3
  145. data/sig/vitable_connect/internal/transport/base_client.rbs +2 -0
  146. data/sig/vitable_connect/models/auth_issue_access_token_params.rbs +22 -4
  147. data/sig/vitable_connect/models/auth_issue_access_token_response.rbs +22 -4
  148. data/sig/vitable_connect/models/employee.rbs +60 -13
  149. data/sig/vitable_connect/models/employee_update_params.rbs +140 -0
  150. data/sig/vitable_connect/models/employee_update_response.rbs +13 -0
  151. data/sig/vitable_connect/models/employer.rbs +17 -0
  152. data/sig/vitable_connect/models/employer_ensure_payroll_integration_email_params.rbs +24 -0
  153. data/sig/vitable_connect/models/employer_ensure_payroll_integration_email_response.rbs +30 -0
  154. data/sig/vitable_connect/models/employer_list_benefit_plan_year_enrollments_params.rbs +74 -0
  155. data/sig/vitable_connect/models/employer_list_benefit_plan_year_enrollments_response.rbs +111 -0
  156. data/sig/vitable_connect/models/employer_list_benefit_plan_years_params.rbs +24 -0
  157. data/sig/vitable_connect/models/employer_list_benefit_plan_years_response.rbs +197 -0
  158. data/sig/vitable_connect/models/employer_list_employees_params.rbs +32 -1
  159. data/sig/vitable_connect/models/employer_list_hris_providers_params.rbs +15 -0
  160. data/sig/vitable_connect/models/employer_list_hris_providers_response.rbs +30 -0
  161. data/sig/vitable_connect/models/employer_list_invoices_params.rbs +34 -0
  162. data/sig/vitable_connect/models/employer_list_invoices_response.rbs +62 -0
  163. data/sig/vitable_connect/models/employer_list_params.rbs +94 -1
  164. data/sig/vitable_connect/models/employer_list_payroll_deduction_statements_params.rbs +36 -0
  165. data/sig/vitable_connect/models/employer_list_payroll_deduction_statements_response.rbs +73 -0
  166. data/sig/vitable_connect/models/employer_list_response.rbs +179 -0
  167. data/sig/vitable_connect/models/employer_retrieve_benefit_plan_year_params.rbs +28 -0
  168. data/sig/vitable_connect/models/employer_retrieve_benefit_plan_year_response.rbs +540 -0
  169. data/sig/vitable_connect/models/employer_retrieve_hris_params.rbs +24 -0
  170. data/sig/vitable_connect/models/employer_retrieve_hris_response.rbs +50 -0
  171. data/sig/vitable_connect/models/employer_retrieve_invoice_pdf_params.rbs +28 -0
  172. data/sig/vitable_connect/models/employer_retrieve_invoice_pdf_response.rbs +13 -0
  173. data/sig/vitable_connect/models/employer_retrieve_payroll_access_setup_params.rbs +24 -0
  174. data/sig/vitable_connect/models/employer_retrieve_payroll_access_setup_response.rbs +32 -0
  175. data/sig/vitable_connect/models/employer_submit_census_sync_params.rbs +5 -5
  176. data/sig/vitable_connect/models/employer_submit_payroll_access_setup_params.rbs +198 -0
  177. data/sig/vitable_connect/models/employer_submit_payroll_access_setup_response.rbs +32 -0
  178. data/sig/vitable_connect/models/employer_update_params.rbs +83 -0
  179. data/sig/vitable_connect/models/enrollment_reissue_params.rbs +41 -0
  180. data/sig/vitable_connect/models/enrollment_reissue_response.rbs +28 -0
  181. data/sig/vitable_connect/models/enrollment_terminate_params.rbs +41 -0
  182. data/sig/vitable_connect/models/groups/members/sync_submit_params.rbs +8 -8
  183. data/sig/vitable_connect/models/member_list_dependents_params.rbs +23 -0
  184. data/sig/vitable_connect/models/member_list_dependents_response.rbs +96 -0
  185. data/sig/vitable_connect/models/member_list_employments_params.rbs +23 -0
  186. data/sig/vitable_connect/models/member_list_employments_response.rbs +14 -0
  187. data/sig/vitable_connect/models/member_list_enrollments_params.rbs +23 -0
  188. data/sig/vitable_connect/models/member_list_enrollments_response.rbs +215 -0
  189. data/sig/vitable_connect/models/member_list_id_cards_params.rbs +23 -0
  190. data/sig/vitable_connect/models/member_list_id_cards_response.rbs +256 -0
  191. data/sig/vitable_connect/models/member_list_params.rbs +38 -0
  192. data/sig/vitable_connect/models/member_list_qualifying_life_events_params.rbs +61 -0
  193. data/sig/vitable_connect/models/member_list_qualifying_life_events_response.rbs +67 -0
  194. data/sig/vitable_connect/models/member_list_response.rbs +82 -0
  195. data/sig/vitable_connect/models/member_retrieve_household_params.rbs +23 -0
  196. data/sig/vitable_connect/models/member_retrieve_household_response.rbs +92 -0
  197. data/sig/vitable_connect/models/member_retrieve_params.rbs +23 -0
  198. data/sig/vitable_connect/models/member_retrieve_response.rbs +143 -0
  199. data/sig/vitable_connect/models/organization_create_params.rbs +52 -0
  200. data/sig/vitable_connect/models/organization_create_response.rbs +77 -0
  201. data/sig/vitable_connect/models/organization_list_params.rbs +15 -0
  202. data/sig/vitable_connect/models/organization_list_response.rbs +99 -0
  203. data/sig/vitable_connect/models/webhook_event_list_params.rbs +2 -0
  204. data/sig/vitable_connect/models.rbs +50 -2
  205. data/sig/vitable_connect/resources/employees.rbs +13 -0
  206. data/sig/vitable_connect/resources/employers.rbs +106 -1
  207. data/sig/vitable_connect/resources/enrollments.rbs +16 -0
  208. data/sig/vitable_connect/resources/members.rbs +52 -0
  209. data/sig/vitable_connect/resources/organizations.rbs +17 -0
  210. metadata +155 -8
  211. data/lib/vitable_connect/models/type.rb +0 -17
  212. data/lib/vitable_connect/resources/benefit_eligibility_policies.rb +0 -14
  213. data/rbi/vitable_connect/models/type.rbi +0 -21
  214. data/rbi/vitable_connect/resources/benefit_eligibility_policies.rbi +0 -12
  215. data/sig/vitable_connect/models/type.rbs +0 -14
  216. data/sig/vitable_connect/resources/benefit_eligibility_policies.rbs +0 -7
@@ -0,0 +1,301 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Models
5
+ # @see VitableConnect::Resources::Employers#list_benefit_plan_years
6
+ class EmployerListBenefitPlanYearsResponse < VitableConnect::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ #
9
+ # @return [Array<VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data>]
10
+ required :data,
11
+ -> { VitableConnect::Internal::Type::ArrayOf[VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data] }
12
+
13
+ # @!method initialize(data:)
14
+ # @param data [Array<VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data>]
15
+
16
+ class Data < VitableConnect::Internal::Type::BaseModel
17
+ # @!attribute benefit_id
18
+ # Prefixed benefit identifier (`bprd_*`).
19
+ #
20
+ # @return [String]
21
+ required :benefit_id, String
22
+
23
+ # @!attribute benefit_plan_year_id
24
+ # Prefixed plan-year identifier (`plyr_*`).
25
+ #
26
+ # @return [String]
27
+ required :benefit_plan_year_id, String
28
+
29
+ # @!attribute carrier
30
+ # Carrier name, or null (e.g. ICHRA).
31
+ #
32
+ # @return [String, nil]
33
+ required :carrier, String, nil?: true
34
+
35
+ # @!attribute coverage_end
36
+ # Coverage end.
37
+ #
38
+ # @return [Date, nil]
39
+ required :coverage_end, Date, nil?: true
40
+
41
+ # @!attribute coverage_start
42
+ # Coverage start.
43
+ #
44
+ # @return [Date]
45
+ required :coverage_start, Date
46
+
47
+ # @!attribute employee_contribution
48
+ # Employee contribution range.
49
+ #
50
+ # @return [VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::EmployeeContribution, nil]
51
+ required :employee_contribution,
52
+ -> { VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::EmployeeContribution },
53
+ nil?: true
54
+
55
+ # @!attribute employer_contribution
56
+ # Employer contribution range.
57
+ #
58
+ # @return [VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::EmployerContribution, nil]
59
+ required :employer_contribution,
60
+ -> { VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::EmployerContribution },
61
+ nil?: true
62
+
63
+ # @!attribute enrollment_rate
64
+ # Enrolled/eligible rate for this plan year.
65
+ #
66
+ # @return [VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::EnrollmentRate]
67
+ required :enrollment_rate,
68
+ -> { VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::EnrollmentRate }
69
+
70
+ # @!attribute family
71
+ # - `mec` - Mec
72
+ # - `mvp` - Mvp
73
+ # - `ichra` - Ichra
74
+ # - `vpc` - Vpc
75
+ # - `dental` - Dental
76
+ # - `vision` - Vision
77
+ #
78
+ # @return [Symbol, VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::Family]
79
+ required :family, enum: -> { VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::Family }
80
+
81
+ # @!attribute is_current
82
+ # Whether this is the current plan year.
83
+ #
84
+ # @return [Boolean]
85
+ required :is_current, VitableConnect::Internal::Type::Boolean
86
+
87
+ # @!attribute network_names
88
+ # Displayed networks: ["multi"] for ICHRA, otherwise the plan year's distinct
89
+ # network names.
90
+ #
91
+ # @return [Array<String>]
92
+ required :network_names, VitableConnect::Internal::Type::ArrayOf[String]
93
+
94
+ # @!attribute offered_states
95
+ # Distinct offered state codes.
96
+ #
97
+ # @return [Array<String>]
98
+ required :offered_states, VitableConnect::Internal::Type::ArrayOf[String]
99
+
100
+ # @!attribute open_enrollment_end
101
+ # Open-enrollment end.
102
+ #
103
+ # @return [Date, nil]
104
+ required :open_enrollment_end, Date, nil?: true
105
+
106
+ # @!attribute open_enrollment_start
107
+ # Open-enrollment start.
108
+ #
109
+ # @return [Date]
110
+ required :open_enrollment_start, Date
111
+
112
+ # @!attribute premium_in_cents
113
+ # Monthly premium in cents; only for an ICHRA benefit with effective coverage.
114
+ #
115
+ # @return [Integer, nil]
116
+ required :premium_in_cents, Integer, nil?: true
117
+
118
+ # @!attribute product_name
119
+ # Benefit/product display name.
120
+ #
121
+ # @return [String]
122
+ required :product_name, String
123
+
124
+ # @!attribute status
125
+ # - `active` - Active
126
+ # - `upcoming` - Upcoming
127
+ # - `open_enrollment` - Open Enrollment
128
+ # - `inactive` - Inactive
129
+ #
130
+ # @return [Symbol, VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::Status]
131
+ required :status, enum: -> { VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::Status }
132
+
133
+ # @!attribute year
134
+ # Calendar coverage year.
135
+ #
136
+ # @return [Integer]
137
+ required :year, Integer
138
+
139
+ # @!method initialize(benefit_id:, benefit_plan_year_id:, carrier:, coverage_end:, coverage_start:, employee_contribution:, employer_contribution:, enrollment_rate:, family:, is_current:, network_names:, offered_states:, open_enrollment_end:, open_enrollment_start:, premium_in_cents:, product_name:, status:, year:)
140
+ # Some parameter documentations has been truncated, see
141
+ # {VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data} for more
142
+ # details.
143
+ #
144
+ # One plan year, list view.
145
+ #
146
+ # Standalone (no shared base) so the exact list payload is readable in one place;
147
+ # the detail serializer is a separate class even where fields overlap.
148
+ #
149
+ # @param benefit_id [String] Prefixed benefit identifier (`bprd_*`).
150
+ #
151
+ # @param benefit_plan_year_id [String] Prefixed plan-year identifier (`plyr_*`).
152
+ #
153
+ # @param carrier [String, nil] Carrier name, or null (e.g. ICHRA).
154
+ #
155
+ # @param coverage_end [Date, nil] Coverage end.
156
+ #
157
+ # @param coverage_start [Date] Coverage start.
158
+ #
159
+ # @param employee_contribution [VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::EmployeeContribution, nil] Employee contribution range.
160
+ #
161
+ # @param employer_contribution [VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::EmployerContribution, nil] Employer contribution range.
162
+ #
163
+ # @param enrollment_rate [VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::EnrollmentRate] Enrolled/eligible rate for this plan year.
164
+ #
165
+ # @param family [Symbol, VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::Family] - `mec` - Mec
166
+ #
167
+ # @param is_current [Boolean] Whether this is the current plan year.
168
+ #
169
+ # @param network_names [Array<String>] Displayed networks: ["multi"] for ICHRA, otherwise the plan year's distinct netw
170
+ #
171
+ # @param offered_states [Array<String>] Distinct offered state codes.
172
+ #
173
+ # @param open_enrollment_end [Date, nil] Open-enrollment end.
174
+ #
175
+ # @param open_enrollment_start [Date] Open-enrollment start.
176
+ #
177
+ # @param premium_in_cents [Integer, nil] Monthly premium in cents; only for an ICHRA benefit with effective coverage.
178
+ #
179
+ # @param product_name [String] Benefit/product display name.
180
+ #
181
+ # @param status [Symbol, VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data::Status] - `active` - Active
182
+ #
183
+ # @param year [Integer] Calendar coverage year.
184
+
185
+ # @see VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data#employee_contribution
186
+ class EmployeeContribution < VitableConnect::Internal::Type::BaseModel
187
+ # @!attribute max_cents
188
+ # Highest per-tier contribution in cents.
189
+ #
190
+ # @return [Integer]
191
+ required :max_cents, Integer
192
+
193
+ # @!attribute min_cents
194
+ # Lowest per-tier contribution in cents.
195
+ #
196
+ # @return [Integer]
197
+ required :min_cents, Integer
198
+
199
+ # @!method initialize(max_cents:, min_cents:)
200
+ # Employee contribution range.
201
+ #
202
+ # @param max_cents [Integer] Highest per-tier contribution in cents.
203
+ #
204
+ # @param min_cents [Integer] Lowest per-tier contribution in cents.
205
+ end
206
+
207
+ # @see VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data#employer_contribution
208
+ class EmployerContribution < VitableConnect::Internal::Type::BaseModel
209
+ # @!attribute max_cents
210
+ # Highest per-tier contribution in cents.
211
+ #
212
+ # @return [Integer]
213
+ required :max_cents, Integer
214
+
215
+ # @!attribute min_cents
216
+ # Lowest per-tier contribution in cents.
217
+ #
218
+ # @return [Integer]
219
+ required :min_cents, Integer
220
+
221
+ # @!method initialize(max_cents:, min_cents:)
222
+ # Employer contribution range.
223
+ #
224
+ # @param max_cents [Integer] Highest per-tier contribution in cents.
225
+ #
226
+ # @param min_cents [Integer] Lowest per-tier contribution in cents.
227
+ end
228
+
229
+ # @see VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data#enrollment_rate
230
+ class EnrollmentRate < VitableConnect::Internal::Type::BaseModel
231
+ # @!attribute eligible
232
+ # Employees eligible for this plan year.
233
+ #
234
+ # @return [Integer]
235
+ required :eligible, Integer
236
+
237
+ # @!attribute enrolled
238
+ # Employees enrolled in this plan year.
239
+ #
240
+ # @return [Integer]
241
+ required :enrolled, Integer
242
+
243
+ # @!attribute percentage
244
+ # `enrolled / eligible` whole-number percent (0 when none).
245
+ #
246
+ # @return [Integer]
247
+ required :percentage, Integer
248
+
249
+ # @!method initialize(eligible:, enrolled:, percentage:)
250
+ # Enrolled/eligible rate for this plan year.
251
+ #
252
+ # @param eligible [Integer] Employees eligible for this plan year.
253
+ #
254
+ # @param enrolled [Integer] Employees enrolled in this plan year.
255
+ #
256
+ # @param percentage [Integer] `enrolled / eligible` whole-number percent (0 when none).
257
+ end
258
+
259
+ # - `mec` - Mec
260
+ # - `mvp` - Mvp
261
+ # - `ichra` - Ichra
262
+ # - `vpc` - Vpc
263
+ # - `dental` - Dental
264
+ # - `vision` - Vision
265
+ #
266
+ # @see VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data#family
267
+ module Family
268
+ extend VitableConnect::Internal::Type::Enum
269
+
270
+ MEC = :mec
271
+ MVP = :mvp
272
+ ICHRA = :ichra
273
+ VPC = :vpc
274
+ DENTAL = :dental
275
+ VISION = :vision
276
+
277
+ # @!method self.values
278
+ # @return [Array<Symbol>]
279
+ end
280
+
281
+ # - `active` - Active
282
+ # - `upcoming` - Upcoming
283
+ # - `open_enrollment` - Open Enrollment
284
+ # - `inactive` - Inactive
285
+ #
286
+ # @see VitableConnect::Models::EmployerListBenefitPlanYearsResponse::Data#status
287
+ module Status
288
+ extend VitableConnect::Internal::Type::Enum
289
+
290
+ ACTIVE = :active
291
+ UPCOMING = :upcoming
292
+ OPEN_ENROLLMENT = :open_enrollment
293
+ INACTIVE = :inactive
294
+
295
+ # @!method self.values
296
+ # @return [Array<Symbol>]
297
+ end
298
+ end
299
+ end
300
+ end
301
+ end
@@ -13,6 +13,12 @@ module VitableConnect
13
13
  # @return [String]
14
14
  required :employer_id, String
15
15
 
16
+ # @!attribute employment_status
17
+ # Filter by employment status (active or terminated)
18
+ #
19
+ # @return [Symbol, VitableConnect::Models::EmployerListEmployeesParams::EmploymentStatus, nil]
20
+ optional :employment_status, enum: -> { VitableConnect::EmployerListEmployeesParams::EmploymentStatus }
21
+
16
22
  # @!attribute limit
17
23
  # Items per page (default: 20, max: 100)
18
24
  #
@@ -25,14 +31,35 @@ module VitableConnect
25
31
  # @return [Integer, nil]
26
32
  optional :page, Integer
27
33
 
28
- # @!method initialize(employer_id:, limit: nil, page: nil, request_options: {})
34
+ # @!attribute search
35
+ # Case-insensitive search across employee first name, last name, and email
36
+ #
37
+ # @return [String, nil]
38
+ optional :search, String
39
+
40
+ # @!method initialize(employer_id:, employment_status: nil, limit: nil, page: nil, search: nil, request_options: {})
29
41
  # @param employer_id [String] Unique employer identifier (empr\_\*)
30
42
  #
43
+ # @param employment_status [Symbol, VitableConnect::Models::EmployerListEmployeesParams::EmploymentStatus] Filter by employment status (active or terminated)
44
+ #
31
45
  # @param limit [Integer] Items per page (default: 20, max: 100)
32
46
  #
33
47
  # @param page [Integer] Page number (default: 1)
34
48
  #
49
+ # @param search [String] Case-insensitive search across employee first name, last name, and email
50
+ #
35
51
  # @param request_options [VitableConnect::RequestOptions, Hash{Symbol=>Object}]
52
+
53
+ # Filter by employment status (active or terminated)
54
+ module EmploymentStatus
55
+ extend VitableConnect::Internal::Type::Enum
56
+
57
+ ACTIVE = :active
58
+ TERMINATED = :terminated
59
+
60
+ # @!method self.values
61
+ # @return [Array<Symbol>]
62
+ end
36
63
  end
37
64
  end
38
65
  end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Models
5
+ # @see VitableConnect::Resources::Employers#list_hris_providers
6
+ class EmployerListHRISProvidersParams < VitableConnect::Internal::Type::BaseModel
7
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
8
+ include VitableConnect::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [VitableConnect::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Models
5
+ # @see VitableConnect::Resources::Employers#list_hris_providers
6
+ class EmployerListHRISProvidersResponse < VitableConnect::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ #
9
+ # @return [Array<VitableConnect::Models::EmployerListHRISProvidersResponse::Data>]
10
+ required :data,
11
+ -> { VitableConnect::Internal::Type::ArrayOf[VitableConnect::Models::EmployerListHRISProvidersResponse::Data] }
12
+
13
+ # @!method initialize(data:)
14
+ # Unpaginated `{"data": [...]}` list of organization hris providers.
15
+ #
16
+ # @param data [Array<VitableConnect::Models::EmployerListHRISProvidersResponse::Data>]
17
+
18
+ class Data < VitableConnect::Internal::Type::BaseModel
19
+ # @!attribute provider
20
+ # HRIS/payroll provider name, as stored on the connection (e.g. `ADP RUN`).
21
+ #
22
+ # @return [String]
23
+ required :provider, String
24
+
25
+ # @!method initialize(provider:)
26
+ # @param provider [String] HRIS/payroll provider name, as stored on the connection (e.g. `ADP RUN`).
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Models
5
+ # @see VitableConnect::Resources::Employers#list_invoices
6
+ class EmployerListInvoicesParams < VitableConnect::Internal::Type::BaseModel
7
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
8
+ include VitableConnect::Internal::Type::RequestParameters
9
+
10
+ # @!attribute employer_id
11
+ # Unique employer identifier (empr\_\*)
12
+ #
13
+ # @return [String]
14
+ required :employer_id, String
15
+
16
+ # @!attribute limit
17
+ # Maximum number of invoices per page
18
+ #
19
+ # @return [Integer, nil]
20
+ optional :limit, Integer
21
+
22
+ # @!attribute offset
23
+ # Opaque cursor from a previous page's next_offset
24
+ #
25
+ # @return [String, nil]
26
+ optional :offset, String, nil?: true
27
+
28
+ # @!method initialize(employer_id:, limit: nil, offset: nil, request_options: {})
29
+ # @param employer_id [String] Unique employer identifier (empr\_\*)
30
+ #
31
+ # @param limit [Integer] Maximum number of invoices per page
32
+ #
33
+ # @param offset [String, nil] Opaque cursor from a previous page's next_offset
34
+ #
35
+ # @param request_options [VitableConnect::RequestOptions, Hash{Symbol=>Object}]
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,77 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Models
5
+ # @see VitableConnect::Resources::Employers#list_invoices
6
+ class EmployerListInvoicesResponse < VitableConnect::Internal::Type::BaseModel
7
+ # @!attribute data
8
+ #
9
+ # @return [Array<VitableConnect::Models::EmployerListInvoicesResponse::Data>]
10
+ required :data,
11
+ -> { VitableConnect::Internal::Type::ArrayOf[VitableConnect::Models::EmployerListInvoicesResponse::Data] }
12
+
13
+ # @!attribute pagination
14
+ #
15
+ # @return [VitableConnect::Models::EmployerListInvoicesResponse::Pagination]
16
+ required :pagination, -> { VitableConnect::Models::EmployerListInvoicesResponse::Pagination }
17
+
18
+ # @!method initialize(data:, pagination:)
19
+ # Cursor-paginated invoices envelope:
20
+ # `{ "data": [...], "pagination": { "next_offset": ... } }`.
21
+ #
22
+ # @param data [Array<VitableConnect::Models::EmployerListInvoicesResponse::Data>]
23
+ # @param pagination [VitableConnect::Models::EmployerListInvoicesResponse::Pagination]
24
+
25
+ class Data < VitableConnect::Internal::Type::BaseModel
26
+ # @!attribute invoice_id
27
+ # Chargebee invoice id (external id, not a prefixed UUID).
28
+ #
29
+ # @return [String]
30
+ required :invoice_id, String
31
+
32
+ # @!attribute period
33
+ # Invoice date as an ISO string, or null.
34
+ #
35
+ # @return [String, nil]
36
+ required :period, String, nil?: true
37
+
38
+ # @!attribute status
39
+ # Chargebee invoice status (e.g. `paid`), or null.
40
+ #
41
+ # @return [String, nil]
42
+ required :status, String, nil?: true
43
+
44
+ # @!attribute total
45
+ # Invoice total in dollars, or null.
46
+ #
47
+ # @return [Float, nil]
48
+ required :total, Float, nil?: true
49
+
50
+ # @!method initialize(invoice_id:, period:, status:, total:)
51
+ # @param invoice_id [String] Chargebee invoice id (external id, not a prefixed UUID).
52
+ #
53
+ # @param period [String, nil] Invoice date as an ISO string, or null.
54
+ #
55
+ # @param status [String, nil] Chargebee invoice status (e.g. `paid`), or null.
56
+ #
57
+ # @param total [Float, nil] Invoice total in dollars, or null.
58
+ end
59
+
60
+ # @see VitableConnect::Models::EmployerListInvoicesResponse#pagination
61
+ class Pagination < VitableConnect::Internal::Type::BaseModel
62
+ # @!attribute next_offset
63
+ # Opaque JSON-encoded cursor for the next page; null when there are no more pages.
64
+ #
65
+ # @return [String, nil]
66
+ required :next_offset, String, nil?: true
67
+
68
+ # @!method initialize(next_offset:)
69
+ # Some parameter documentations has been truncated, see
70
+ # {VitableConnect::Models::EmployerListInvoicesResponse::Pagination} for more
71
+ # details.
72
+ #
73
+ # @param next_offset [String, nil] Opaque JSON-encoded cursor for the next page; null when there are no more pages.
74
+ end
75
+ end
76
+ end
77
+ end
@@ -7,24 +7,137 @@ module VitableConnect
7
7
  extend VitableConnect::Internal::Type::RequestParameters::Converter
8
8
  include VitableConnect::Internal::Type::RequestParameters
9
9
 
10
+ # @!attribute benefit_family
11
+ # Filter to employers with at least one active benefit in these families.
12
+ #
13
+ # @return [Array<Symbol, VitableConnect::Models::EmployerListParams::BenefitFamily>, nil]
14
+ optional :benefit_family,
15
+ -> { VitableConnect::Internal::Type::ArrayOf[enum: VitableConnect::EmployerListParams::BenefitFamily] }
16
+
17
+ # @!attribute benefit_lifecycle_stage
18
+ # Filter to employers in one of these computed benefit-lifecycle stages.
19
+ #
20
+ # @return [Array<Symbol, VitableConnect::Models::EmployerListParams::BenefitLifecycleStage>, nil]
21
+ optional :benefit_lifecycle_stage,
22
+ -> { VitableConnect::Internal::Type::ArrayOf[enum: VitableConnect::EmployerListParams::BenefitLifecycleStage] }
23
+
24
+ # @!attribute hris_provider
25
+ # Filter to employers whose HRIS connection is with one of these payroll providers
26
+ # (e.g. `ADP RUN`). Matched case-insensitively; free text, so read the available
27
+ # values from the HRIS-providers endpoint rather than assuming a fixed set.
28
+ #
29
+ # @return [Array<String>, nil]
30
+ optional :hris_provider, VitableConnect::Internal::Type::ArrayOf[String]
31
+
32
+ # @!attribute hris_status
33
+ # Filter to employers whose HRIS connection is in one of these statuses.
34
+ #
35
+ # @return [Array<Symbol, VitableConnect::Models::EmployerListParams::HRISStatus>, nil]
36
+ optional :hris_status,
37
+ -> { VitableConnect::Internal::Type::ArrayOf[enum: VitableConnect::EmployerListParams::HRISStatus] }
38
+
39
+ # @!attribute include_cancelled
40
+ # Include cancelled employers (hidden by default unless their stage is explicitly
41
+ # requested).
42
+ #
43
+ # @return [Boolean, nil]
44
+ optional :include_cancelled, VitableConnect::Internal::Type::Boolean
45
+
10
46
  # @!attribute limit
11
- # Items per page (default: 20, max: 100)
47
+ # Items per page.
12
48
  #
13
49
  # @return [Integer, nil]
14
50
  optional :limit, Integer
15
51
 
16
52
  # @!attribute page
17
- # Page number (default: 1)
53
+ # Page number.
18
54
  #
19
55
  # @return [Integer, nil]
20
56
  optional :page, Integer
21
57
 
22
- # @!method initialize(limit: nil, page: nil, request_options: {})
23
- # @param limit [Integer] Items per page (default: 20, max: 100)
58
+ # @!attribute search
59
+ # Case-insensitive employer-name substring filter.
60
+ #
61
+ # @return [String, nil]
62
+ optional :search, String, nil?: true
63
+
64
+ # @!method initialize(benefit_family: nil, benefit_lifecycle_stage: nil, hris_provider: nil, hris_status: nil, include_cancelled: nil, limit: nil, page: nil, search: nil, request_options: {})
65
+ # Some parameter documentations has been truncated, see
66
+ # {VitableConnect::Models::EmployerListParams} for more details.
67
+ #
68
+ # @param benefit_family [Array<Symbol, VitableConnect::Models::EmployerListParams::BenefitFamily>] Filter to employers with at least one active benefit in these families.
69
+ #
70
+ # @param benefit_lifecycle_stage [Array<Symbol, VitableConnect::Models::EmployerListParams::BenefitLifecycleStage>] Filter to employers in one of these computed benefit-lifecycle stages.
24
71
  #
25
- # @param page [Integer] Page number (default: 1)
72
+ # @param hris_provider [Array<String>] Filter to employers whose HRIS connection is with one of these payroll providers
73
+ #
74
+ # @param hris_status [Array<Symbol, VitableConnect::Models::EmployerListParams::HRISStatus>] Filter to employers whose HRIS connection is in one of these statuses.
75
+ #
76
+ # @param include_cancelled [Boolean] Include cancelled employers (hidden by default unless their stage is explicitly
77
+ #
78
+ # @param limit [Integer] Items per page.
79
+ #
80
+ # @param page [Integer] Page number.
81
+ #
82
+ # @param search [String, nil] Case-insensitive employer-name substring filter.
26
83
  #
27
84
  # @param request_options [VitableConnect::RequestOptions, Hash{Symbol=>Object}]
85
+
86
+ # - `mec` - mec
87
+ # - `mvp` - mvp
88
+ # - `ichra` - ichra
89
+ # - `vpc` - vpc
90
+ # - `dental` - dental
91
+ # - `vision` - vision
92
+ module BenefitFamily
93
+ extend VitableConnect::Internal::Type::Enum
94
+
95
+ MEC = :mec
96
+ MVP = :mvp
97
+ ICHRA = :ichra
98
+ VPC = :vpc
99
+ DENTAL = :dental
100
+ VISION = :vision
101
+
102
+ # @!method self.values
103
+ # @return [Array<Symbol>]
104
+ end
105
+
106
+ # - `open_enrollment` - open_enrollment
107
+ # - `renewal` - renewal
108
+ # - `active` - active
109
+ # - `onboarding` - onboarding
110
+ # - `cancelled` - cancelled
111
+ module BenefitLifecycleStage
112
+ extend VitableConnect::Internal::Type::Enum
113
+
114
+ OPEN_ENROLLMENT = :open_enrollment
115
+ RENEWAL = :renewal
116
+ ACTIVE = :active
117
+ ONBOARDING = :onboarding
118
+ CANCELLED = :cancelled
119
+
120
+ # @!method self.values
121
+ # @return [Array<Symbol>]
122
+ end
123
+
124
+ # - `Pending` - Pending
125
+ # - `Active` - Active
126
+ # - `Inactive` - Inactive
127
+ # - `Paused` - Paused
128
+ # - `Terminated` - Terminated
129
+ module HRISStatus
130
+ extend VitableConnect::Internal::Type::Enum
131
+
132
+ PENDING = :Pending
133
+ ACTIVE = :Active
134
+ INACTIVE = :Inactive
135
+ PAUSED = :Paused
136
+ TERMINATED = :Terminated
137
+
138
+ # @!method self.values
139
+ # @return [Array<Symbol>]
140
+ end
28
141
  end
29
142
  end
30
143
  end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module VitableConnect
4
+ module Models
5
+ # @see VitableConnect::Resources::Employers#list_payroll_deduction_statements
6
+ class EmployerListPayrollDeductionStatementsParams < VitableConnect::Internal::Type::BaseModel
7
+ extend VitableConnect::Internal::Type::RequestParameters::Converter
8
+ include VitableConnect::Internal::Type::RequestParameters
9
+
10
+ # @!attribute employer_id
11
+ # Unique employer identifier (empr\_\*)
12
+ #
13
+ # @return [String]
14
+ required :employer_id, String
15
+
16
+ # @!attribute limit
17
+ # Maximum number of statements per page
18
+ #
19
+ # @return [Integer, nil]
20
+ optional :limit, Integer
21
+
22
+ # @!attribute page
23
+ # Page number to retrieve (starts at 1)
24
+ #
25
+ # @return [Integer, nil]
26
+ optional :page, Integer
27
+
28
+ # @!method initialize(employer_id:, limit: nil, page: nil, request_options: {})
29
+ # @param employer_id [String] Unique employer identifier (empr\_\*)
30
+ #
31
+ # @param limit [Integer] Maximum number of statements per page
32
+ #
33
+ # @param page [Integer] Page number to retrieve (starts at 1)
34
+ #
35
+ # @param request_options [VitableConnect::RequestOptions, Hash{Symbol=>Object}]
36
+ end
37
+ end
38
+ end