vitable-connect 0.4.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +52 -0
- data/README.md +9 -9
- data/lib/vitable_connect/client.rb +19 -6
- data/lib/vitable_connect/internal/transport/base_client.rb +28 -4
- data/lib/vitable_connect/internal/type/enum.rb +13 -9
- data/lib/vitable_connect/models/auth_issue_access_token_params.rb +17 -3
- data/lib/vitable_connect/models/auth_issue_access_token_response.rb +17 -3
- data/lib/vitable_connect/models/employee.rb +98 -30
- data/lib/vitable_connect/models/employee_update_params.rb +185 -0
- data/lib/vitable_connect/models/employee_update_response.rb +18 -0
- data/lib/vitable_connect/models/employer.rb +36 -10
- data/lib/vitable_connect/models/employer_ensure_payroll_integration_email_params.rb +22 -0
- data/lib/vitable_connect/models/employer_ensure_payroll_integration_email_response.rb +29 -0
- data/lib/vitable_connect/models/employer_list_benefit_plan_year_enrollments_params.rb +80 -0
- data/lib/vitable_connect/models/employer_list_benefit_plan_year_enrollments_response.rb +175 -0
- data/lib/vitable_connect/models/employer_list_benefit_plan_years_params.rb +22 -0
- data/lib/vitable_connect/models/employer_list_benefit_plan_years_response.rb +301 -0
- data/lib/vitable_connect/models/employer_list_employees_params.rb +28 -1
- data/lib/vitable_connect/models/employer_list_hris_providers_params.rb +14 -0
- data/lib/vitable_connect/models/employer_list_hris_providers_response.rb +30 -0
- data/lib/vitable_connect/models/employer_list_invoices_params.rb +38 -0
- data/lib/vitable_connect/models/employer_list_invoices_response.rb +77 -0
- data/lib/vitable_connect/models/employer_list_params.rb +118 -5
- data/lib/vitable_connect/models/employer_list_payroll_deduction_statements_params.rb +38 -0
- data/lib/vitable_connect/models/employer_list_payroll_deduction_statements_response.rb +113 -0
- data/lib/vitable_connect/models/employer_list_response.rb +283 -0
- data/lib/vitable_connect/models/employer_retrieve_benefit_plan_year_params.rb +30 -0
- data/lib/vitable_connect/models/employer_retrieve_benefit_plan_year_response.rb +813 -0
- data/lib/vitable_connect/models/employer_retrieve_hris_params.rb +22 -0
- data/lib/vitable_connect/models/employer_retrieve_hris_response.rb +55 -0
- data/lib/vitable_connect/models/employer_retrieve_invoice_pdf_params.rb +30 -0
- data/lib/vitable_connect/models/employer_retrieve_invoice_pdf_response.rb +17 -0
- data/lib/vitable_connect/models/employer_retrieve_payroll_access_setup_params.rb +22 -0
- data/lib/vitable_connect/models/employer_retrieve_payroll_access_setup_response.rb +35 -0
- data/lib/vitable_connect/models/employer_submit_census_sync_params.rb +9 -8
- data/lib/vitable_connect/models/employer_submit_payroll_access_setup_params.rb +267 -0
- data/lib/vitable_connect/models/employer_submit_payroll_access_setup_response.rb +35 -0
- data/lib/vitable_connect/models/employer_update_params.rb +99 -0
- data/lib/vitable_connect/models/employer_update_settings_params.rb +9 -9
- data/lib/vitable_connect/models/employer_update_settings_response.rb +4 -4
- data/lib/vitable_connect/models/enrollment_reissue_params.rb +50 -0
- data/lib/vitable_connect/models/enrollment_reissue_response.rb +30 -0
- data/lib/vitable_connect/models/enrollment_terminate_params.rb +50 -0
- data/lib/vitable_connect/models/group.rb +17 -6
- data/lib/vitable_connect/models/groups/members/sync_retrieve_response.rb +74 -3
- data/lib/vitable_connect/models/groups/members/sync_submit_params.rb +7 -7
- data/lib/vitable_connect/models/member_list_dependents_params.rb +20 -0
- data/lib/vitable_connect/models/member_list_dependents_response.rb +132 -0
- data/lib/vitable_connect/models/member_list_employments_params.rb +20 -0
- data/lib/vitable_connect/models/member_list_employments_response.rb +18 -0
- data/lib/vitable_connect/models/member_list_enrollments_params.rb +20 -0
- data/lib/vitable_connect/models/member_list_enrollments_response.rb +319 -0
- data/lib/vitable_connect/models/member_list_id_cards_params.rb +20 -0
- data/lib/vitable_connect/models/member_list_id_cards_response.rb +368 -0
- data/lib/vitable_connect/models/member_list_params.rb +38 -0
- data/lib/vitable_connect/models/member_list_qualifying_life_events_params.rb +57 -0
- data/lib/vitable_connect/models/member_list_qualifying_life_events_response.rb +96 -0
- data/lib/vitable_connect/models/member_list_response.rb +108 -0
- data/lib/vitable_connect/models/member_retrieve_household_params.rb +20 -0
- data/lib/vitable_connect/models/member_retrieve_household_response.rb +128 -0
- data/lib/vitable_connect/models/member_retrieve_params.rb +20 -0
- data/lib/vitable_connect/models/member_retrieve_response.rb +195 -0
- data/lib/vitable_connect/models/organization_create_params.rb +57 -0
- data/lib/vitable_connect/models/organization_create_response.rb +104 -0
- data/lib/vitable_connect/models/organization_list_params.rb +14 -0
- data/lib/vitable_connect/models/organization_list_response.rb +128 -0
- data/lib/vitable_connect/models/webhook_event_list_params.rb +3 -3
- data/lib/vitable_connect/models.rb +54 -11
- data/lib/vitable_connect/resources/employees.rb +49 -3
- data/lib/vitable_connect/resources/employers.rb +402 -28
- data/lib/vitable_connect/resources/enrollments.rb +75 -0
- data/lib/vitable_connect/resources/members.rb +231 -0
- data/lib/vitable_connect/resources/organizations.rb +66 -0
- data/lib/vitable_connect/version.rb +1 -1
- data/lib/vitable_connect.rb +51 -6
- data/rbi/vitable_connect/client.rbi +18 -6
- data/rbi/vitable_connect/internal/transport/base_client.rbi +4 -1
- data/rbi/vitable_connect/models/auth_issue_access_token_params.rbi +53 -5
- data/rbi/vitable_connect/models/auth_issue_access_token_response.rbi +51 -5
- data/rbi/vitable_connect/models/employee.rbi +138 -37
- data/rbi/vitable_connect/models/employee_update_params.rbi +323 -0
- data/rbi/vitable_connect/models/employee_update_response.rbi +32 -0
- data/rbi/vitable_connect/models/employer.rbi +58 -8
- data/rbi/vitable_connect/models/employer_ensure_payroll_integration_email_params.rbi +46 -0
- data/rbi/vitable_connect/models/employer_ensure_payroll_integration_email_response.rbi +72 -0
- data/rbi/vitable_connect/models/employer_list_benefit_plan_year_enrollments_params.rbi +165 -0
- data/rbi/vitable_connect/models/employer_list_benefit_plan_year_enrollments_response.rbi +278 -0
- data/rbi/vitable_connect/models/{benefit_eligibility_policy_retrieve_params.rbi → employer_list_benefit_plan_years_params.rbi} +11 -8
- data/rbi/vitable_connect/models/employer_list_benefit_plan_years_response.rbi +539 -0
- data/rbi/vitable_connect/models/employer_list_employees_params.rbi +70 -0
- data/rbi/vitable_connect/models/employer_list_hris_providers_params.rbi +32 -0
- data/rbi/vitable_connect/models/employer_list_hris_providers_response.rbi +74 -0
- data/rbi/vitable_connect/models/employer_list_invoices_params.rbi +65 -0
- data/rbi/vitable_connect/models/employer_list_invoices_response.rbi +151 -0
- data/rbi/vitable_connect/models/employer_list_params.rbi +292 -4
- data/rbi/vitable_connect/models/{employer_create_benefit_eligibility_policy_params.rbi → employer_list_payroll_deduction_statements_params.rbi} +22 -18
- data/rbi/vitable_connect/models/employer_list_payroll_deduction_statements_response.rbi +169 -0
- data/rbi/vitable_connect/models/employer_list_response.rbi +426 -0
- data/rbi/vitable_connect/models/employer_retrieve_benefit_plan_year_params.rbi +54 -0
- data/rbi/vitable_connect/models/employer_retrieve_benefit_plan_year_response.rbi +1574 -0
- data/rbi/vitable_connect/models/employer_retrieve_hris_params.rbi +46 -0
- data/rbi/vitable_connect/models/employer_retrieve_hris_response.rbi +120 -0
- data/rbi/vitable_connect/models/employer_retrieve_invoice_pdf_params.rbi +54 -0
- data/rbi/vitable_connect/models/employer_retrieve_invoice_pdf_response.rbi +30 -0
- data/rbi/vitable_connect/models/employer_retrieve_payroll_access_setup_params.rbi +46 -0
- data/rbi/vitable_connect/models/employer_retrieve_payroll_access_setup_response.rbi +83 -0
- data/rbi/vitable_connect/models/employer_submit_census_sync_params.rbi +8 -6
- data/rbi/vitable_connect/models/employer_submit_payroll_access_setup_params.rbi +441 -0
- data/rbi/vitable_connect/models/employer_submit_payroll_access_setup_response.rbi +83 -0
- data/rbi/vitable_connect/models/employer_update_params.rbi +155 -0
- data/rbi/vitable_connect/models/employer_update_settings_params.rbi +12 -12
- data/rbi/vitable_connect/models/employer_update_settings_response.rbi +6 -6
- data/rbi/vitable_connect/models/enrollment_reissue_params.rbi +72 -0
- data/rbi/vitable_connect/models/enrollment_reissue_response.rbi +67 -0
- data/rbi/vitable_connect/models/enrollment_terminate_params.rbi +72 -0
- data/rbi/vitable_connect/models/group.rbi +12 -0
- data/rbi/vitable_connect/models/groups/members/sync_retrieve_response.rbi +174 -4
- data/rbi/vitable_connect/models/groups/members/sync_submit_params.rbi +9 -9
- data/rbi/vitable_connect/models/member_list_dependents_params.rbi +38 -0
- data/rbi/vitable_connect/models/member_list_dependents_response.rbi +249 -0
- data/rbi/vitable_connect/models/member_list_employments_params.rbi +38 -0
- data/rbi/vitable_connect/models/member_list_employments_response.rbi +31 -0
- data/rbi/vitable_connect/models/member_list_enrollments_params.rbi +38 -0
- data/rbi/vitable_connect/models/member_list_enrollments_response.rbi +579 -0
- data/rbi/vitable_connect/models/member_list_id_cards_params.rbi +38 -0
- data/rbi/vitable_connect/models/member_list_id_cards_response.rbi +624 -0
- data/rbi/vitable_connect/models/member_list_params.rbi +71 -0
- data/rbi/vitable_connect/models/member_list_qualifying_life_events_params.rbi +130 -0
- data/rbi/vitable_connect/models/member_list_qualifying_life_events_response.rbi +192 -0
- data/rbi/vitable_connect/models/member_list_response.rbi +166 -0
- data/rbi/vitable_connect/models/member_retrieve_household_params.rbi +38 -0
- data/rbi/vitable_connect/models/member_retrieve_household_response.rbi +251 -0
- data/rbi/vitable_connect/models/member_retrieve_params.rbi +38 -0
- data/rbi/vitable_connect/models/member_retrieve_response.rbi +312 -0
- data/rbi/vitable_connect/models/organization_create_params.rbi +127 -0
- data/rbi/vitable_connect/models/organization_create_response.rbi +212 -0
- data/rbi/vitable_connect/models/organization_list_params.rbi +32 -0
- data/rbi/vitable_connect/models/organization_list_response.rbi +266 -0
- data/rbi/vitable_connect/models/webhook_event_list_params.rbi +8 -8
- data/rbi/vitable_connect/models.rbi +66 -13
- data/rbi/vitable_connect/resources/employees.rbi +62 -3
- data/rbi/vitable_connect/resources/employers.rbi +373 -24
- data/rbi/vitable_connect/resources/enrollments.rbi +61 -0
- data/rbi/vitable_connect/resources/members.rbi +169 -0
- data/rbi/vitable_connect/resources/organizations.rbi +48 -0
- data/rbi/vitable_connect/resources/webhook_events.rbi +1 -1
- data/sig/vitable_connect/client.rbs +9 -3
- data/sig/vitable_connect/internal/transport/base_client.rbs +2 -0
- data/sig/vitable_connect/models/auth_issue_access_token_params.rbs +22 -4
- data/sig/vitable_connect/models/auth_issue_access_token_response.rbs +22 -4
- data/sig/vitable_connect/models/employee.rbs +65 -18
- data/sig/vitable_connect/models/employee_update_params.rbs +140 -0
- data/sig/vitable_connect/models/employee_update_response.rbs +13 -0
- data/sig/vitable_connect/models/employer.rbs +17 -5
- data/sig/vitable_connect/models/employer_ensure_payroll_integration_email_params.rbs +24 -0
- data/sig/vitable_connect/models/employer_ensure_payroll_integration_email_response.rbs +30 -0
- data/sig/vitable_connect/models/employer_list_benefit_plan_year_enrollments_params.rbs +74 -0
- data/sig/vitable_connect/models/employer_list_benefit_plan_year_enrollments_response.rbs +111 -0
- data/sig/vitable_connect/models/employer_list_benefit_plan_years_params.rbs +24 -0
- data/sig/vitable_connect/models/employer_list_benefit_plan_years_response.rbs +197 -0
- data/sig/vitable_connect/models/employer_list_employees_params.rbs +32 -1
- data/sig/vitable_connect/models/employer_list_hris_providers_params.rbs +15 -0
- data/sig/vitable_connect/models/employer_list_hris_providers_response.rbs +30 -0
- data/sig/vitable_connect/models/employer_list_invoices_params.rbs +34 -0
- data/sig/vitable_connect/models/employer_list_invoices_response.rbs +62 -0
- data/sig/vitable_connect/models/employer_list_params.rbs +94 -1
- data/sig/vitable_connect/models/{employer_create_benefit_eligibility_policy_params.rbs → employer_list_payroll_deduction_statements_params.rbs} +13 -9
- data/sig/vitable_connect/models/employer_list_payroll_deduction_statements_response.rbs +73 -0
- data/sig/vitable_connect/models/employer_list_response.rbs +179 -0
- data/sig/vitable_connect/models/employer_retrieve_benefit_plan_year_params.rbs +28 -0
- data/sig/vitable_connect/models/employer_retrieve_benefit_plan_year_response.rbs +540 -0
- data/sig/vitable_connect/models/employer_retrieve_hris_params.rbs +24 -0
- data/sig/vitable_connect/models/employer_retrieve_hris_response.rbs +50 -0
- data/sig/vitable_connect/models/employer_retrieve_invoice_pdf_params.rbs +28 -0
- data/sig/vitable_connect/models/employer_retrieve_invoice_pdf_response.rbs +13 -0
- data/sig/vitable_connect/models/employer_retrieve_payroll_access_setup_params.rbs +24 -0
- data/sig/vitable_connect/models/employer_retrieve_payroll_access_setup_response.rbs +32 -0
- data/sig/vitable_connect/models/employer_submit_census_sync_params.rbs +5 -5
- data/sig/vitable_connect/models/employer_submit_payroll_access_setup_params.rbs +198 -0
- data/sig/vitable_connect/models/employer_submit_payroll_access_setup_response.rbs +32 -0
- data/sig/vitable_connect/models/employer_update_params.rbs +83 -0
- data/sig/vitable_connect/models/enrollment_reissue_params.rbs +41 -0
- data/sig/vitable_connect/models/enrollment_reissue_response.rbs +28 -0
- data/sig/vitable_connect/models/enrollment_terminate_params.rbs +41 -0
- data/sig/vitable_connect/models/groups/members/sync_retrieve_response.rbs +69 -4
- data/sig/vitable_connect/models/groups/members/sync_submit_params.rbs +8 -8
- data/sig/vitable_connect/models/{benefit_eligibility_policy_retrieve_params.rbs → member_list_dependents_params.rbs} +6 -6
- data/sig/vitable_connect/models/member_list_dependents_response.rbs +96 -0
- data/sig/vitable_connect/models/member_list_employments_params.rbs +23 -0
- data/sig/vitable_connect/models/member_list_employments_response.rbs +14 -0
- data/sig/vitable_connect/models/member_list_enrollments_params.rbs +23 -0
- data/sig/vitable_connect/models/member_list_enrollments_response.rbs +215 -0
- data/sig/vitable_connect/models/member_list_id_cards_params.rbs +23 -0
- data/sig/vitable_connect/models/member_list_id_cards_response.rbs +256 -0
- data/sig/vitable_connect/models/member_list_params.rbs +38 -0
- data/sig/vitable_connect/models/member_list_qualifying_life_events_params.rbs +61 -0
- data/sig/vitable_connect/models/member_list_qualifying_life_events_response.rbs +67 -0
- data/sig/vitable_connect/models/member_list_response.rbs +82 -0
- data/sig/vitable_connect/models/member_retrieve_household_params.rbs +23 -0
- data/sig/vitable_connect/models/member_retrieve_household_response.rbs +92 -0
- data/sig/vitable_connect/models/member_retrieve_params.rbs +23 -0
- data/sig/vitable_connect/models/member_retrieve_response.rbs +143 -0
- data/sig/vitable_connect/models/organization_create_params.rbs +52 -0
- data/sig/vitable_connect/models/organization_create_response.rbs +77 -0
- data/sig/vitable_connect/models/organization_list_params.rbs +15 -0
- data/sig/vitable_connect/models/organization_list_response.rbs +99 -0
- data/sig/vitable_connect/models/webhook_event_list_params.rbs +2 -2
- data/sig/vitable_connect/models.rbs +50 -10
- data/sig/vitable_connect/resources/employees.rbs +13 -0
- data/sig/vitable_connect/resources/employers.rbs +103 -5
- data/sig/vitable_connect/resources/enrollments.rbs +16 -0
- data/sig/vitable_connect/resources/members.rbs +52 -0
- data/sig/vitable_connect/resources/organizations.rbs +17 -0
- metadata +155 -20
- data/lib/vitable_connect/models/benefit_eligibility_policy.rb +0 -53
- data/lib/vitable_connect/models/benefit_eligibility_policy_response.rb +0 -18
- data/lib/vitable_connect/models/benefit_eligibility_policy_retrieve_params.rb +0 -22
- data/lib/vitable_connect/models/employer_create_benefit_eligibility_policy_params.rb +0 -43
- data/lib/vitable_connect/models/type.rb +0 -17
- data/lib/vitable_connect/resources/benefit_eligibility_policies.rb +0 -35
- data/rbi/vitable_connect/models/benefit_eligibility_policy.rbi +0 -74
- data/rbi/vitable_connect/models/benefit_eligibility_policy_response.rbi +0 -38
- data/rbi/vitable_connect/models/type.rbi +0 -21
- data/rbi/vitable_connect/resources/benefit_eligibility_policies.rbi +0 -27
- data/sig/vitable_connect/models/benefit_eligibility_policy.rbs +0 -50
- data/sig/vitable_connect/models/benefit_eligibility_policy_response.rbs +0 -14
- data/sig/vitable_connect/models/type.rbs +0 -14
- data/sig/vitable_connect/resources/benefit_eligibility_policies.rbs +0 -12
|
@@ -0,0 +1,813 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module VitableConnect
|
|
4
|
+
module Models
|
|
5
|
+
# @see VitableConnect::Resources::Employers#retrieve_benefit_plan_year
|
|
6
|
+
class EmployerRetrieveBenefitPlanYearResponse < VitableConnect::Internal::Type::BaseModel
|
|
7
|
+
# @!attribute data
|
|
8
|
+
# One plan year, detail view.
|
|
9
|
+
#
|
|
10
|
+
# Standalone (no shared base) so the exact detail payload is readable in one
|
|
11
|
+
# place; the list serializer is a separate class even where fields overlap. Detail
|
|
12
|
+
# carries the SPD link and omits the list-only `is_current` flag.
|
|
13
|
+
#
|
|
14
|
+
# @return [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data]
|
|
15
|
+
required :data, -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data }
|
|
16
|
+
|
|
17
|
+
# @!method initialize(data:)
|
|
18
|
+
# Some parameter documentations has been truncated, see
|
|
19
|
+
# {VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse} for more
|
|
20
|
+
# details.
|
|
21
|
+
#
|
|
22
|
+
# Response containing a single employer benefit plan year resource.
|
|
23
|
+
#
|
|
24
|
+
# @param data [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data] One plan year, detail view.
|
|
25
|
+
|
|
26
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse#data
|
|
27
|
+
class Data < VitableConnect::Internal::Type::BaseModel
|
|
28
|
+
# @!attribute benefit_id
|
|
29
|
+
# Prefixed benefit identifier (`bprd_*`).
|
|
30
|
+
#
|
|
31
|
+
# @return [String]
|
|
32
|
+
required :benefit_id, String
|
|
33
|
+
|
|
34
|
+
# @!attribute benefit_plan_year_id
|
|
35
|
+
# Prefixed plan-year identifier (`plyr_*`).
|
|
36
|
+
#
|
|
37
|
+
# @return [String]
|
|
38
|
+
required :benefit_plan_year_id, String
|
|
39
|
+
|
|
40
|
+
# @!attribute carrier
|
|
41
|
+
# Carrier name, or null (e.g. ICHRA).
|
|
42
|
+
#
|
|
43
|
+
# @return [String, nil]
|
|
44
|
+
required :carrier, String, nil?: true
|
|
45
|
+
|
|
46
|
+
# @!attribute contribution_strategy
|
|
47
|
+
# How the plan year prices contributions: exactly one collection is populated,
|
|
48
|
+
# determined by the plan year's `family` (ICHRA vs tier-priced).
|
|
49
|
+
#
|
|
50
|
+
# @return [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy]
|
|
51
|
+
required :contribution_strategy,
|
|
52
|
+
-> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy }
|
|
53
|
+
|
|
54
|
+
# @!attribute coverage_end
|
|
55
|
+
# Coverage end.
|
|
56
|
+
#
|
|
57
|
+
# @return [Date, nil]
|
|
58
|
+
required :coverage_end, Date, nil?: true
|
|
59
|
+
|
|
60
|
+
# @!attribute coverage_start
|
|
61
|
+
# Coverage start.
|
|
62
|
+
#
|
|
63
|
+
# @return [Date]
|
|
64
|
+
required :coverage_start, Date
|
|
65
|
+
|
|
66
|
+
# @!attribute eligibility_policy
|
|
67
|
+
# The plan year's active eligibility policy. Mirrors the internal
|
|
68
|
+
# `PlanYearEligibilityPolicyDTO` but exposes only the public subset (no raw ids,
|
|
69
|
+
# `active_in`, or timestamps).
|
|
70
|
+
#
|
|
71
|
+
# @return [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy, nil]
|
|
72
|
+
required :eligibility_policy,
|
|
73
|
+
-> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy },
|
|
74
|
+
nil?: true
|
|
75
|
+
|
|
76
|
+
# @!attribute employee_contribution
|
|
77
|
+
# Employee contribution range.
|
|
78
|
+
#
|
|
79
|
+
# @return [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EmployeeContribution, nil]
|
|
80
|
+
required :employee_contribution,
|
|
81
|
+
-> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EmployeeContribution },
|
|
82
|
+
nil?: true
|
|
83
|
+
|
|
84
|
+
# @!attribute employer_contribution
|
|
85
|
+
# Employer contribution range.
|
|
86
|
+
#
|
|
87
|
+
# @return [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EmployerContribution, nil]
|
|
88
|
+
required :employer_contribution,
|
|
89
|
+
-> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EmployerContribution },
|
|
90
|
+
nil?: true
|
|
91
|
+
|
|
92
|
+
# @!attribute enrollment_rate
|
|
93
|
+
# Enrolled/eligible rate for this plan year.
|
|
94
|
+
#
|
|
95
|
+
# @return [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EnrollmentRate]
|
|
96
|
+
required :enrollment_rate,
|
|
97
|
+
-> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EnrollmentRate }
|
|
98
|
+
|
|
99
|
+
# @!attribute family
|
|
100
|
+
# - `mec` - Mec
|
|
101
|
+
# - `mvp` - Mvp
|
|
102
|
+
# - `ichra` - Ichra
|
|
103
|
+
# - `vpc` - Vpc
|
|
104
|
+
# - `dental` - Dental
|
|
105
|
+
# - `vision` - Vision
|
|
106
|
+
#
|
|
107
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::Family]
|
|
108
|
+
required :family,
|
|
109
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::Family }
|
|
110
|
+
|
|
111
|
+
# @!attribute network_names
|
|
112
|
+
# Displayed networks: ["multi"] for ICHRA, otherwise the plan year's distinct
|
|
113
|
+
# network names.
|
|
114
|
+
#
|
|
115
|
+
# @return [Array<String>]
|
|
116
|
+
required :network_names, VitableConnect::Internal::Type::ArrayOf[String]
|
|
117
|
+
|
|
118
|
+
# @!attribute offered_states
|
|
119
|
+
# Distinct offered state codes.
|
|
120
|
+
#
|
|
121
|
+
# @return [Array<String>]
|
|
122
|
+
required :offered_states, VitableConnect::Internal::Type::ArrayOf[String]
|
|
123
|
+
|
|
124
|
+
# @!attribute open_enrollment_end
|
|
125
|
+
# Open-enrollment end.
|
|
126
|
+
#
|
|
127
|
+
# @return [Date, nil]
|
|
128
|
+
required :open_enrollment_end, Date, nil?: true
|
|
129
|
+
|
|
130
|
+
# @!attribute open_enrollment_start
|
|
131
|
+
# Open-enrollment start.
|
|
132
|
+
#
|
|
133
|
+
# @return [Date]
|
|
134
|
+
required :open_enrollment_start, Date
|
|
135
|
+
|
|
136
|
+
# @!attribute premium_in_cents
|
|
137
|
+
# Monthly premium in cents; only for an ICHRA benefit with effective coverage.
|
|
138
|
+
#
|
|
139
|
+
# @return [Integer, nil]
|
|
140
|
+
required :premium_in_cents, Integer, nil?: true
|
|
141
|
+
|
|
142
|
+
# @!attribute product_name
|
|
143
|
+
# Benefit/product display name.
|
|
144
|
+
#
|
|
145
|
+
# @return [String]
|
|
146
|
+
required :product_name, String
|
|
147
|
+
|
|
148
|
+
# @!attribute spd_file_url
|
|
149
|
+
# Summary Plan Description (SPD) link, or null.
|
|
150
|
+
#
|
|
151
|
+
# @return [String, nil]
|
|
152
|
+
required :spd_file_url, String, nil?: true
|
|
153
|
+
|
|
154
|
+
# @!attribute status
|
|
155
|
+
# - `active` - Active
|
|
156
|
+
# - `upcoming` - Upcoming
|
|
157
|
+
# - `open_enrollment` - Open Enrollment
|
|
158
|
+
# - `inactive` - Inactive
|
|
159
|
+
#
|
|
160
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::Status]
|
|
161
|
+
required :status,
|
|
162
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::Status }
|
|
163
|
+
|
|
164
|
+
# @!attribute year
|
|
165
|
+
# Calendar coverage year.
|
|
166
|
+
#
|
|
167
|
+
# @return [Integer]
|
|
168
|
+
required :year, Integer
|
|
169
|
+
|
|
170
|
+
# @!method initialize(benefit_id:, benefit_plan_year_id:, carrier:, contribution_strategy:, coverage_end:, coverage_start:, eligibility_policy:, employee_contribution:, employer_contribution:, enrollment_rate:, family:, network_names:, offered_states:, open_enrollment_end:, open_enrollment_start:, premium_in_cents:, product_name:, spd_file_url:, status:, year:)
|
|
171
|
+
# Some parameter documentations has been truncated, see
|
|
172
|
+
# {VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data} for more
|
|
173
|
+
# details.
|
|
174
|
+
#
|
|
175
|
+
# One plan year, detail view.
|
|
176
|
+
#
|
|
177
|
+
# Standalone (no shared base) so the exact detail payload is readable in one
|
|
178
|
+
# place; the list serializer is a separate class even where fields overlap. Detail
|
|
179
|
+
# carries the SPD link and omits the list-only `is_current` flag.
|
|
180
|
+
#
|
|
181
|
+
# @param benefit_id [String] Prefixed benefit identifier (`bprd_*`).
|
|
182
|
+
#
|
|
183
|
+
# @param benefit_plan_year_id [String] Prefixed plan-year identifier (`plyr_*`).
|
|
184
|
+
#
|
|
185
|
+
# @param carrier [String, nil] Carrier name, or null (e.g. ICHRA).
|
|
186
|
+
#
|
|
187
|
+
# @param contribution_strategy [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy] How the plan year prices contributions: exactly one collection is populated, det
|
|
188
|
+
#
|
|
189
|
+
# @param coverage_end [Date, nil] Coverage end.
|
|
190
|
+
#
|
|
191
|
+
# @param coverage_start [Date] Coverage start.
|
|
192
|
+
#
|
|
193
|
+
# @param eligibility_policy [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy, nil] The plan year's active eligibility policy. Mirrors the internal ``PlanYearEligib
|
|
194
|
+
#
|
|
195
|
+
# @param employee_contribution [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EmployeeContribution, nil] Employee contribution range.
|
|
196
|
+
#
|
|
197
|
+
# @param employer_contribution [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EmployerContribution, nil] Employer contribution range.
|
|
198
|
+
#
|
|
199
|
+
# @param enrollment_rate [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EnrollmentRate] Enrolled/eligible rate for this plan year.
|
|
200
|
+
#
|
|
201
|
+
# @param family [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::Family] - `mec` - Mec
|
|
202
|
+
#
|
|
203
|
+
# @param network_names [Array<String>] Displayed networks: ["multi"] for ICHRA, otherwise the plan year's distinct netw
|
|
204
|
+
#
|
|
205
|
+
# @param offered_states [Array<String>] Distinct offered state codes.
|
|
206
|
+
#
|
|
207
|
+
# @param open_enrollment_end [Date, nil] Open-enrollment end.
|
|
208
|
+
#
|
|
209
|
+
# @param open_enrollment_start [Date] Open-enrollment start.
|
|
210
|
+
#
|
|
211
|
+
# @param premium_in_cents [Integer, nil] Monthly premium in cents; only for an ICHRA benefit with effective coverage.
|
|
212
|
+
#
|
|
213
|
+
# @param product_name [String] Benefit/product display name.
|
|
214
|
+
#
|
|
215
|
+
# @param spd_file_url [String, nil] Summary Plan Description (SPD) link, or null.
|
|
216
|
+
#
|
|
217
|
+
# @param status [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::Status] - `active` - Active
|
|
218
|
+
#
|
|
219
|
+
# @param year [Integer] Calendar coverage year.
|
|
220
|
+
|
|
221
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data#contribution_strategy
|
|
222
|
+
class ContributionStrategy < VitableConnect::Internal::Type::BaseModel
|
|
223
|
+
# @!attribute contribution_tiers
|
|
224
|
+
# Coverage tiers and their costs; empty for ICHRA benefits.
|
|
225
|
+
#
|
|
226
|
+
# @return [Array<VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::ContributionTier>]
|
|
227
|
+
required :contribution_tiers,
|
|
228
|
+
-> do
|
|
229
|
+
VitableConnect::Internal::Type::ArrayOf[
|
|
230
|
+
VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::ContributionTier
|
|
231
|
+
]
|
|
232
|
+
end
|
|
233
|
+
|
|
234
|
+
# @!attribute ichra_contribution_classes
|
|
235
|
+
# ICHRA contribution classes; empty for tier-priced benefits.
|
|
236
|
+
#
|
|
237
|
+
# @return [Array<VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass>]
|
|
238
|
+
required :ichra_contribution_classes,
|
|
239
|
+
-> do
|
|
240
|
+
VitableConnect::Internal::Type::ArrayOf[
|
|
241
|
+
VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass
|
|
242
|
+
]
|
|
243
|
+
end
|
|
244
|
+
|
|
245
|
+
# @!method initialize(contribution_tiers:, ichra_contribution_classes:)
|
|
246
|
+
# How the plan year prices contributions: exactly one collection is populated,
|
|
247
|
+
# determined by the plan year's `family` (ICHRA vs tier-priced).
|
|
248
|
+
#
|
|
249
|
+
# @param contribution_tiers [Array<VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::ContributionTier>] Coverage tiers and their costs; empty for ICHRA benefits.
|
|
250
|
+
#
|
|
251
|
+
# @param ichra_contribution_classes [Array<VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass>] ICHRA contribution classes; empty for tier-priced benefits.
|
|
252
|
+
|
|
253
|
+
class ContributionTier < VitableConnect::Internal::Type::BaseModel
|
|
254
|
+
# @!attribute benefit_plan_id
|
|
255
|
+
# Prefixed benefit-plan identifier (`bpln_*`).
|
|
256
|
+
#
|
|
257
|
+
# @return [String]
|
|
258
|
+
required :benefit_plan_id, String
|
|
259
|
+
|
|
260
|
+
# @!attribute benefit_plan_name
|
|
261
|
+
# Benefit plan name.
|
|
262
|
+
#
|
|
263
|
+
# @return [String]
|
|
264
|
+
required :benefit_plan_name, String
|
|
265
|
+
|
|
266
|
+
# @!attribute benefit_plan_tier_name
|
|
267
|
+
# Coverage-tier name.
|
|
268
|
+
#
|
|
269
|
+
# @return [String]
|
|
270
|
+
required :benefit_plan_tier_name, String
|
|
271
|
+
|
|
272
|
+
# @!attribute cost
|
|
273
|
+
# Monthly employee deduction in cents.
|
|
274
|
+
#
|
|
275
|
+
# @return [Integer]
|
|
276
|
+
required :cost, Integer
|
|
277
|
+
|
|
278
|
+
# @!attribute cost_per_dependent
|
|
279
|
+
# Monthly employee deduction per dependent, in cents.
|
|
280
|
+
#
|
|
281
|
+
# @return [Integer]
|
|
282
|
+
required :cost_per_dependent, Integer
|
|
283
|
+
|
|
284
|
+
# @!attribute dependents_required_in
|
|
285
|
+
# Whether dependents are required for this tier.
|
|
286
|
+
#
|
|
287
|
+
# @return [Boolean]
|
|
288
|
+
required :dependents_required_in, VitableConnect::Internal::Type::Boolean
|
|
289
|
+
|
|
290
|
+
# @!attribute spouse_required_in
|
|
291
|
+
# Whether a spouse is required for this tier.
|
|
292
|
+
#
|
|
293
|
+
# @return [Boolean]
|
|
294
|
+
required :spouse_required_in, VitableConnect::Internal::Type::Boolean
|
|
295
|
+
|
|
296
|
+
# @!method initialize(benefit_plan_id:, benefit_plan_name:, benefit_plan_tier_name:, cost:, cost_per_dependent:, dependents_required_in:, spouse_required_in:)
|
|
297
|
+
# One non-ICHRA coverage tier, mirroring the internal configuration
|
|
298
|
+
# `CompanyBenefitPlanTierCostDTO` minus the tier-cost id, `pepm` and
|
|
299
|
+
# `pepm_per_dependent`; `benefit_plan_id` is the prefixed `bpln_*` form rather
|
|
300
|
+
# than a raw UUID.
|
|
301
|
+
#
|
|
302
|
+
# @param benefit_plan_id [String] Prefixed benefit-plan identifier (`bpln_*`).
|
|
303
|
+
#
|
|
304
|
+
# @param benefit_plan_name [String] Benefit plan name.
|
|
305
|
+
#
|
|
306
|
+
# @param benefit_plan_tier_name [String] Coverage-tier name.
|
|
307
|
+
#
|
|
308
|
+
# @param cost [Integer] Monthly employee deduction in cents.
|
|
309
|
+
#
|
|
310
|
+
# @param cost_per_dependent [Integer] Monthly employee deduction per dependent, in cents.
|
|
311
|
+
#
|
|
312
|
+
# @param dependents_required_in [Boolean] Whether dependents are required for this tier.
|
|
313
|
+
#
|
|
314
|
+
# @param spouse_required_in [Boolean] Whether a spouse is required for this tier.
|
|
315
|
+
end
|
|
316
|
+
|
|
317
|
+
class IchraContributionClass < VitableConnect::Internal::Type::BaseModel
|
|
318
|
+
# @!attribute amount_in_cents
|
|
319
|
+
# Monthly allowance in cents.
|
|
320
|
+
#
|
|
321
|
+
# @return [Integer]
|
|
322
|
+
required :amount_in_cents, Integer
|
|
323
|
+
|
|
324
|
+
# @!attribute compensation
|
|
325
|
+
# - `Unspecified` - Unspecified
|
|
326
|
+
# - `Salary` - Salary
|
|
327
|
+
# - `Hourly` - Hourly
|
|
328
|
+
#
|
|
329
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::Compensation]
|
|
330
|
+
required :compensation,
|
|
331
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::Compensation }
|
|
332
|
+
|
|
333
|
+
# @!attribute contribution_class_id
|
|
334
|
+
# Prefixed contribution-class identifier (`iccl_*`).
|
|
335
|
+
#
|
|
336
|
+
# @return [String]
|
|
337
|
+
required :contribution_class_id, String
|
|
338
|
+
|
|
339
|
+
# @!attribute employment
|
|
340
|
+
# - `Unspecified` - Unspecified
|
|
341
|
+
# - `Full Time` - Full Time
|
|
342
|
+
# - `Part Time` - Part Time
|
|
343
|
+
# - `Temporary` - Temporary
|
|
344
|
+
# - `Seasonal` - Seasonal
|
|
345
|
+
#
|
|
346
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::Employment]
|
|
347
|
+
required :employment,
|
|
348
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::Employment }
|
|
349
|
+
|
|
350
|
+
# @!attribute family_status
|
|
351
|
+
# - `Unspecified` - Unspecified
|
|
352
|
+
# - `EE` - Ee
|
|
353
|
+
# - `ES` - Es
|
|
354
|
+
# - `EC` - Ec
|
|
355
|
+
# - `EF` - Ef
|
|
356
|
+
#
|
|
357
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::FamilyStatus]
|
|
358
|
+
required :family_status,
|
|
359
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::FamilyStatus }
|
|
360
|
+
|
|
361
|
+
# @!attribute location
|
|
362
|
+
# - `Unspecified` - Unspecified
|
|
363
|
+
# - `State` - State
|
|
364
|
+
#
|
|
365
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::Location]
|
|
366
|
+
required :location,
|
|
367
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::Location }
|
|
368
|
+
|
|
369
|
+
# @!attribute location_value
|
|
370
|
+
# Location matcher value (CSV of state codes), or null.
|
|
371
|
+
#
|
|
372
|
+
# @return [String, nil]
|
|
373
|
+
required :location_value, String, nil?: true
|
|
374
|
+
|
|
375
|
+
# @!attribute max_age
|
|
376
|
+
# Age-band upper bound, or null.
|
|
377
|
+
#
|
|
378
|
+
# @return [Integer, nil]
|
|
379
|
+
required :max_age, Integer, nil?: true
|
|
380
|
+
|
|
381
|
+
# @!attribute min_age
|
|
382
|
+
# Age-band lower bound, or null.
|
|
383
|
+
#
|
|
384
|
+
# @return [Integer, nil]
|
|
385
|
+
required :min_age, Integer, nil?: true
|
|
386
|
+
|
|
387
|
+
# @!method initialize(amount_in_cents:, compensation:, contribution_class_id:, employment:, family_status:, location:, location_value:, max_age:, min_age:)
|
|
388
|
+
# Some parameter documentations has been truncated, see
|
|
389
|
+
# {VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass}
|
|
390
|
+
# for more details.
|
|
391
|
+
#
|
|
392
|
+
# One ICHRA contribution class, mirroring the internal configuration endpoint's
|
|
393
|
+
# `IchraContributionClassConfigurationEntitySerializer` field-for-field. Two
|
|
394
|
+
# deliberate differences for the public surface: the identifier is the opaque
|
|
395
|
+
# prefixed `iccl_*` form rather than a raw UUID, and the matcher choices come from
|
|
396
|
+
# the domain enums rather than the model's.
|
|
397
|
+
#
|
|
398
|
+
# @param amount_in_cents [Integer] Monthly allowance in cents.
|
|
399
|
+
#
|
|
400
|
+
# @param compensation [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::Compensation] - `Unspecified` - Unspecified
|
|
401
|
+
#
|
|
402
|
+
# @param contribution_class_id [String] Prefixed contribution-class identifier (`iccl_*`).
|
|
403
|
+
#
|
|
404
|
+
# @param employment [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::Employment] - `Unspecified` - Unspecified
|
|
405
|
+
#
|
|
406
|
+
# @param family_status [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::FamilyStatus] - `Unspecified` - Unspecified
|
|
407
|
+
#
|
|
408
|
+
# @param location [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass::Location] - `Unspecified` - Unspecified
|
|
409
|
+
#
|
|
410
|
+
# @param location_value [String, nil] Location matcher value (CSV of state codes), or null.
|
|
411
|
+
#
|
|
412
|
+
# @param max_age [Integer, nil] Age-band upper bound, or null.
|
|
413
|
+
#
|
|
414
|
+
# @param min_age [Integer, nil] Age-band lower bound, or null.
|
|
415
|
+
|
|
416
|
+
# - `Unspecified` - Unspecified
|
|
417
|
+
# - `Salary` - Salary
|
|
418
|
+
# - `Hourly` - Hourly
|
|
419
|
+
#
|
|
420
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass#compensation
|
|
421
|
+
module Compensation
|
|
422
|
+
extend VitableConnect::Internal::Type::Enum
|
|
423
|
+
|
|
424
|
+
UNSPECIFIED = :Unspecified
|
|
425
|
+
SALARY = :Salary
|
|
426
|
+
HOURLY = :Hourly
|
|
427
|
+
|
|
428
|
+
# @!method self.values
|
|
429
|
+
# @return [Array<Symbol>]
|
|
430
|
+
end
|
|
431
|
+
|
|
432
|
+
# - `Unspecified` - Unspecified
|
|
433
|
+
# - `Full Time` - Full Time
|
|
434
|
+
# - `Part Time` - Part Time
|
|
435
|
+
# - `Temporary` - Temporary
|
|
436
|
+
# - `Seasonal` - Seasonal
|
|
437
|
+
#
|
|
438
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass#employment
|
|
439
|
+
module Employment
|
|
440
|
+
extend VitableConnect::Internal::Type::Enum
|
|
441
|
+
|
|
442
|
+
UNSPECIFIED = :Unspecified
|
|
443
|
+
FULL_TIME = :"Full Time"
|
|
444
|
+
PART_TIME = :"Part Time"
|
|
445
|
+
TEMPORARY = :Temporary
|
|
446
|
+
SEASONAL = :Seasonal
|
|
447
|
+
|
|
448
|
+
# @!method self.values
|
|
449
|
+
# @return [Array<Symbol>]
|
|
450
|
+
end
|
|
451
|
+
|
|
452
|
+
# - `Unspecified` - Unspecified
|
|
453
|
+
# - `EE` - Ee
|
|
454
|
+
# - `ES` - Es
|
|
455
|
+
# - `EC` - Ec
|
|
456
|
+
# - `EF` - Ef
|
|
457
|
+
#
|
|
458
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass#family_status
|
|
459
|
+
module FamilyStatus
|
|
460
|
+
extend VitableConnect::Internal::Type::Enum
|
|
461
|
+
|
|
462
|
+
UNSPECIFIED = :Unspecified
|
|
463
|
+
EE = :EE
|
|
464
|
+
ES = :ES
|
|
465
|
+
EC = :EC
|
|
466
|
+
EF = :EF
|
|
467
|
+
|
|
468
|
+
# @!method self.values
|
|
469
|
+
# @return [Array<Symbol>]
|
|
470
|
+
end
|
|
471
|
+
|
|
472
|
+
# - `Unspecified` - Unspecified
|
|
473
|
+
# - `State` - State
|
|
474
|
+
#
|
|
475
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::ContributionStrategy::IchraContributionClass#location
|
|
476
|
+
module Location
|
|
477
|
+
extend VitableConnect::Internal::Type::Enum
|
|
478
|
+
|
|
479
|
+
UNSPECIFIED = :Unspecified
|
|
480
|
+
STATE = :State
|
|
481
|
+
|
|
482
|
+
# @!method self.values
|
|
483
|
+
# @return [Array<Symbol>]
|
|
484
|
+
end
|
|
485
|
+
end
|
|
486
|
+
end
|
|
487
|
+
|
|
488
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data#eligibility_policy
|
|
489
|
+
class EligibilityPolicy < VitableConnect::Internal::Type::BaseModel
|
|
490
|
+
# @!attribute rules
|
|
491
|
+
# Eligibility rules; never empty for a valid policy.
|
|
492
|
+
#
|
|
493
|
+
# @return [Array<VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule>]
|
|
494
|
+
required :rules,
|
|
495
|
+
-> { VitableConnect::Internal::Type::ArrayOf[VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule] }
|
|
496
|
+
|
|
497
|
+
# @!attribute termination_n_months
|
|
498
|
+
# Months of continued coverage; set only when `termination_rule` is
|
|
499
|
+
# `END_OF_N_MONTHS`.
|
|
500
|
+
#
|
|
501
|
+
# @return [Integer, nil]
|
|
502
|
+
required :termination_n_months, Integer, nil?: true
|
|
503
|
+
|
|
504
|
+
# @!attribute termination_rule
|
|
505
|
+
# - `END_OF_N_MONTHS` - End Of N Months
|
|
506
|
+
# - `END_OF_PLAN_YEAR` - End Of Plan Year
|
|
507
|
+
#
|
|
508
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::TerminationRule]
|
|
509
|
+
required :termination_rule,
|
|
510
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::TerminationRule }
|
|
511
|
+
|
|
512
|
+
# @!attribute waiting_period
|
|
513
|
+
# - `FIRST_OF_FOLLOWING_MONTH` - First Of Following Month
|
|
514
|
+
# - `THIRTY_DAYS` - Thirty Days
|
|
515
|
+
# - `SIXTY_DAYS` - Sixty Days
|
|
516
|
+
#
|
|
517
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::WaitingPeriod, nil]
|
|
518
|
+
required :waiting_period,
|
|
519
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::WaitingPeriod },
|
|
520
|
+
nil?: true
|
|
521
|
+
|
|
522
|
+
# @!method initialize(rules:, termination_n_months:, termination_rule:, waiting_period:)
|
|
523
|
+
# Some parameter documentations has been truncated, see
|
|
524
|
+
# {VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy}
|
|
525
|
+
# for more details.
|
|
526
|
+
#
|
|
527
|
+
# The plan year's active eligibility policy. Mirrors the internal
|
|
528
|
+
# `PlanYearEligibilityPolicyDTO` but exposes only the public subset (no raw ids,
|
|
529
|
+
# `active_in`, or timestamps).
|
|
530
|
+
#
|
|
531
|
+
# @param rules [Array<VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule>] Eligibility rules; never empty for a valid policy.
|
|
532
|
+
#
|
|
533
|
+
# @param termination_n_months [Integer, nil] Months of continued coverage; set only when `termination_rule` is `END_OF_N_MONT
|
|
534
|
+
#
|
|
535
|
+
# @param termination_rule [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::TerminationRule] - `END_OF_N_MONTHS` - End Of N Months
|
|
536
|
+
#
|
|
537
|
+
# @param waiting_period [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::WaitingPeriod, nil] - `FIRST_OF_FOLLOWING_MONTH` - First Of Following Month
|
|
538
|
+
|
|
539
|
+
class Rule < VitableConnect::Internal::Type::BaseModel
|
|
540
|
+
# @!attribute compensation_type
|
|
541
|
+
# - `Salary` - Salary
|
|
542
|
+
# - `Hourly` - Hourly
|
|
543
|
+
# - `All` - All
|
|
544
|
+
#
|
|
545
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::CompensationType]
|
|
546
|
+
required :compensation_type,
|
|
547
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::CompensationType }
|
|
548
|
+
|
|
549
|
+
# @!attribute eligible_geographical_location
|
|
550
|
+
# Geographic matcher.
|
|
551
|
+
#
|
|
552
|
+
# @return [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EligibleGeographicalLocation]
|
|
553
|
+
required :eligible_geographical_location,
|
|
554
|
+
-> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EligibleGeographicalLocation }
|
|
555
|
+
|
|
556
|
+
# @!attribute employee_class
|
|
557
|
+
# - `Full Time` - Full Time
|
|
558
|
+
# - `Part Time` - Part Time
|
|
559
|
+
# - `Temporary` - Temporary
|
|
560
|
+
# - `Intern` - Intern
|
|
561
|
+
# - `Seasonal` - Seasonal
|
|
562
|
+
# - `Individual Contractor` - Individual Contractor
|
|
563
|
+
# - `All` - All
|
|
564
|
+
#
|
|
565
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EmployeeClass]
|
|
566
|
+
required :employee_class,
|
|
567
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EmployeeClass }
|
|
568
|
+
|
|
569
|
+
# @!method initialize(compensation_type:, eligible_geographical_location:, employee_class:)
|
|
570
|
+
# Some parameter documentations has been truncated, see
|
|
571
|
+
# {VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule}
|
|
572
|
+
# for more details.
|
|
573
|
+
#
|
|
574
|
+
# One eligibility rule — the workforce slice it makes eligible. Mirrors the
|
|
575
|
+
# internal `PlanYearEligibilityPolicyRuleDTO` minus the raw ids and timestamps.
|
|
576
|
+
#
|
|
577
|
+
# @param compensation_type [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::CompensationType] - `Salary` - Salary
|
|
578
|
+
#
|
|
579
|
+
# @param eligible_geographical_location [VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EligibleGeographicalLocation] Geographic matcher.
|
|
580
|
+
#
|
|
581
|
+
# @param employee_class [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EmployeeClass] - `Full Time` - Full Time
|
|
582
|
+
|
|
583
|
+
# - `Salary` - Salary
|
|
584
|
+
# - `Hourly` - Hourly
|
|
585
|
+
# - `All` - All
|
|
586
|
+
#
|
|
587
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule#compensation_type
|
|
588
|
+
module CompensationType
|
|
589
|
+
extend VitableConnect::Internal::Type::Enum
|
|
590
|
+
|
|
591
|
+
SALARY = :Salary
|
|
592
|
+
HOURLY = :Hourly
|
|
593
|
+
ALL = :All
|
|
594
|
+
|
|
595
|
+
# @!method self.values
|
|
596
|
+
# @return [Array<Symbol>]
|
|
597
|
+
end
|
|
598
|
+
|
|
599
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule#eligible_geographical_location
|
|
600
|
+
class EligibleGeographicalLocation < VitableConnect::Internal::Type::BaseModel
|
|
601
|
+
# @!attribute state_codes
|
|
602
|
+
# States the rule is restricted to; empty when `type` is `All`.
|
|
603
|
+
#
|
|
604
|
+
# @return [Array<String>]
|
|
605
|
+
required :state_codes, VitableConnect::Internal::Type::ArrayOf[String]
|
|
606
|
+
|
|
607
|
+
# @!attribute type
|
|
608
|
+
# - `All` - All
|
|
609
|
+
# - `StateCodes` - State Codes
|
|
610
|
+
#
|
|
611
|
+
# @return [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EligibleGeographicalLocation::Type]
|
|
612
|
+
required :type,
|
|
613
|
+
enum: -> { VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EligibleGeographicalLocation::Type }
|
|
614
|
+
|
|
615
|
+
# @!method initialize(state_codes:, type:)
|
|
616
|
+
# Some parameter documentations has been truncated, see
|
|
617
|
+
# {VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EligibleGeographicalLocation}
|
|
618
|
+
# for more details.
|
|
619
|
+
#
|
|
620
|
+
# Geographic matcher.
|
|
621
|
+
#
|
|
622
|
+
# @param state_codes [Array<String>] States the rule is restricted to; empty when `type` is `All`.
|
|
623
|
+
#
|
|
624
|
+
# @param type [Symbol, VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EligibleGeographicalLocation::Type] - `All` - All
|
|
625
|
+
|
|
626
|
+
# - `All` - All
|
|
627
|
+
# - `StateCodes` - State Codes
|
|
628
|
+
#
|
|
629
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule::EligibleGeographicalLocation#type
|
|
630
|
+
module Type
|
|
631
|
+
extend VitableConnect::Internal::Type::Enum
|
|
632
|
+
|
|
633
|
+
ALL = :All
|
|
634
|
+
STATE_CODES = :StateCodes
|
|
635
|
+
|
|
636
|
+
# @!method self.values
|
|
637
|
+
# @return [Array<Symbol>]
|
|
638
|
+
end
|
|
639
|
+
end
|
|
640
|
+
|
|
641
|
+
# - `Full Time` - Full Time
|
|
642
|
+
# - `Part Time` - Part Time
|
|
643
|
+
# - `Temporary` - Temporary
|
|
644
|
+
# - `Intern` - Intern
|
|
645
|
+
# - `Seasonal` - Seasonal
|
|
646
|
+
# - `Individual Contractor` - Individual Contractor
|
|
647
|
+
# - `All` - All
|
|
648
|
+
#
|
|
649
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy::Rule#employee_class
|
|
650
|
+
module EmployeeClass
|
|
651
|
+
extend VitableConnect::Internal::Type::Enum
|
|
652
|
+
|
|
653
|
+
FULL_TIME = :"Full Time"
|
|
654
|
+
PART_TIME = :"Part Time"
|
|
655
|
+
TEMPORARY = :Temporary
|
|
656
|
+
INTERN = :Intern
|
|
657
|
+
SEASONAL = :Seasonal
|
|
658
|
+
INDIVIDUAL_CONTRACTOR = :"Individual Contractor"
|
|
659
|
+
ALL = :All
|
|
660
|
+
|
|
661
|
+
# @!method self.values
|
|
662
|
+
# @return [Array<Symbol>]
|
|
663
|
+
end
|
|
664
|
+
end
|
|
665
|
+
|
|
666
|
+
# - `END_OF_N_MONTHS` - End Of N Months
|
|
667
|
+
# - `END_OF_PLAN_YEAR` - End Of Plan Year
|
|
668
|
+
#
|
|
669
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy#termination_rule
|
|
670
|
+
module TerminationRule
|
|
671
|
+
extend VitableConnect::Internal::Type::Enum
|
|
672
|
+
|
|
673
|
+
END_OF_N_MONTHS = :END_OF_N_MONTHS
|
|
674
|
+
END_OF_PLAN_YEAR = :END_OF_PLAN_YEAR
|
|
675
|
+
|
|
676
|
+
# @!method self.values
|
|
677
|
+
# @return [Array<Symbol>]
|
|
678
|
+
end
|
|
679
|
+
|
|
680
|
+
# - `FIRST_OF_FOLLOWING_MONTH` - First Of Following Month
|
|
681
|
+
# - `THIRTY_DAYS` - Thirty Days
|
|
682
|
+
# - `SIXTY_DAYS` - Sixty Days
|
|
683
|
+
#
|
|
684
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data::EligibilityPolicy#waiting_period
|
|
685
|
+
module WaitingPeriod
|
|
686
|
+
extend VitableConnect::Internal::Type::Enum
|
|
687
|
+
|
|
688
|
+
FIRST_OF_FOLLOWING_MONTH = :FIRST_OF_FOLLOWING_MONTH
|
|
689
|
+
THIRTY_DAYS = :THIRTY_DAYS
|
|
690
|
+
SIXTY_DAYS = :SIXTY_DAYS
|
|
691
|
+
|
|
692
|
+
# @!method self.values
|
|
693
|
+
# @return [Array<Symbol>]
|
|
694
|
+
end
|
|
695
|
+
end
|
|
696
|
+
|
|
697
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data#employee_contribution
|
|
698
|
+
class EmployeeContribution < VitableConnect::Internal::Type::BaseModel
|
|
699
|
+
# @!attribute max_cents
|
|
700
|
+
# Highest per-tier contribution in cents.
|
|
701
|
+
#
|
|
702
|
+
# @return [Integer]
|
|
703
|
+
required :max_cents, Integer
|
|
704
|
+
|
|
705
|
+
# @!attribute min_cents
|
|
706
|
+
# Lowest per-tier contribution in cents.
|
|
707
|
+
#
|
|
708
|
+
# @return [Integer]
|
|
709
|
+
required :min_cents, Integer
|
|
710
|
+
|
|
711
|
+
# @!method initialize(max_cents:, min_cents:)
|
|
712
|
+
# Employee contribution range.
|
|
713
|
+
#
|
|
714
|
+
# @param max_cents [Integer] Highest per-tier contribution in cents.
|
|
715
|
+
#
|
|
716
|
+
# @param min_cents [Integer] Lowest per-tier contribution in cents.
|
|
717
|
+
end
|
|
718
|
+
|
|
719
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data#employer_contribution
|
|
720
|
+
class EmployerContribution < VitableConnect::Internal::Type::BaseModel
|
|
721
|
+
# @!attribute max_cents
|
|
722
|
+
# Highest per-tier contribution in cents.
|
|
723
|
+
#
|
|
724
|
+
# @return [Integer]
|
|
725
|
+
required :max_cents, Integer
|
|
726
|
+
|
|
727
|
+
# @!attribute min_cents
|
|
728
|
+
# Lowest per-tier contribution in cents.
|
|
729
|
+
#
|
|
730
|
+
# @return [Integer]
|
|
731
|
+
required :min_cents, Integer
|
|
732
|
+
|
|
733
|
+
# @!method initialize(max_cents:, min_cents:)
|
|
734
|
+
# Employer contribution range.
|
|
735
|
+
#
|
|
736
|
+
# @param max_cents [Integer] Highest per-tier contribution in cents.
|
|
737
|
+
#
|
|
738
|
+
# @param min_cents [Integer] Lowest per-tier contribution in cents.
|
|
739
|
+
end
|
|
740
|
+
|
|
741
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data#enrollment_rate
|
|
742
|
+
class EnrollmentRate < VitableConnect::Internal::Type::BaseModel
|
|
743
|
+
# @!attribute eligible
|
|
744
|
+
# Employees eligible for this plan year.
|
|
745
|
+
#
|
|
746
|
+
# @return [Integer]
|
|
747
|
+
required :eligible, Integer
|
|
748
|
+
|
|
749
|
+
# @!attribute enrolled
|
|
750
|
+
# Employees enrolled in this plan year.
|
|
751
|
+
#
|
|
752
|
+
# @return [Integer]
|
|
753
|
+
required :enrolled, Integer
|
|
754
|
+
|
|
755
|
+
# @!attribute percentage
|
|
756
|
+
# `enrolled / eligible` whole-number percent (0 when none).
|
|
757
|
+
#
|
|
758
|
+
# @return [Integer]
|
|
759
|
+
required :percentage, Integer
|
|
760
|
+
|
|
761
|
+
# @!method initialize(eligible:, enrolled:, percentage:)
|
|
762
|
+
# Enrolled/eligible rate for this plan year.
|
|
763
|
+
#
|
|
764
|
+
# @param eligible [Integer] Employees eligible for this plan year.
|
|
765
|
+
#
|
|
766
|
+
# @param enrolled [Integer] Employees enrolled in this plan year.
|
|
767
|
+
#
|
|
768
|
+
# @param percentage [Integer] `enrolled / eligible` whole-number percent (0 when none).
|
|
769
|
+
end
|
|
770
|
+
|
|
771
|
+
# - `mec` - Mec
|
|
772
|
+
# - `mvp` - Mvp
|
|
773
|
+
# - `ichra` - Ichra
|
|
774
|
+
# - `vpc` - Vpc
|
|
775
|
+
# - `dental` - Dental
|
|
776
|
+
# - `vision` - Vision
|
|
777
|
+
#
|
|
778
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data#family
|
|
779
|
+
module Family
|
|
780
|
+
extend VitableConnect::Internal::Type::Enum
|
|
781
|
+
|
|
782
|
+
MEC = :mec
|
|
783
|
+
MVP = :mvp
|
|
784
|
+
ICHRA = :ichra
|
|
785
|
+
VPC = :vpc
|
|
786
|
+
DENTAL = :dental
|
|
787
|
+
VISION = :vision
|
|
788
|
+
|
|
789
|
+
# @!method self.values
|
|
790
|
+
# @return [Array<Symbol>]
|
|
791
|
+
end
|
|
792
|
+
|
|
793
|
+
# - `active` - Active
|
|
794
|
+
# - `upcoming` - Upcoming
|
|
795
|
+
# - `open_enrollment` - Open Enrollment
|
|
796
|
+
# - `inactive` - Inactive
|
|
797
|
+
#
|
|
798
|
+
# @see VitableConnect::Models::EmployerRetrieveBenefitPlanYearResponse::Data#status
|
|
799
|
+
module Status
|
|
800
|
+
extend VitableConnect::Internal::Type::Enum
|
|
801
|
+
|
|
802
|
+
ACTIVE = :active
|
|
803
|
+
UPCOMING = :upcoming
|
|
804
|
+
OPEN_ENROLLMENT = :open_enrollment
|
|
805
|
+
INACTIVE = :inactive
|
|
806
|
+
|
|
807
|
+
# @!method self.values
|
|
808
|
+
# @return [Array<Symbol>]
|
|
809
|
+
end
|
|
810
|
+
end
|
|
811
|
+
end
|
|
812
|
+
end
|
|
813
|
+
end
|