## List an employer's benefit plan years `employers.list_benefit_plan_years(stremployer_id) -> EmployerListBenefitPlanYearsResponse` **get** `/v1/employers/{employer_id}/benefit-plan-years` Returns the employer's benefit plan years (all years, or one when `year` is given), each with its benefits, offered states, benefit families, and the year-level enrollment roll-up. The caller must be authorized for the employer; an unknown or unauthorized employer returns 404. ### Parameters - `employer_id: str` Unique employer identifier (empr_*) ### Returns - `class EmployerListBenefitPlanYearsResponse: …` - `data: List[Data]` - `benefit_id: str` Prefixed benefit identifier (`bprd_*`). - `benefit_plan_year_id: str` Prefixed plan-year identifier (`plyr_*`). - `carrier: Optional[str]` Carrier name, or null (e.g. ICHRA). - `coverage_end: Optional[date]` Coverage end. - `coverage_start: date` Coverage start. - `employee_contribution: Optional[DataEmployeeContribution]` Employee contribution range. - `max_cents: int` Highest per-tier contribution in cents. - `min_cents: int` Lowest per-tier contribution in cents. - `employer_contribution: Optional[DataEmployerContribution]` Employer contribution range. - `max_cents: int` Highest per-tier contribution in cents. - `min_cents: int` Lowest per-tier contribution in cents. - `enrollment_rate: DataEnrollmentRate` Enrolled/eligible rate for this plan year. - `eligible: int` Employees eligible for this plan year. - `enrolled: int` Employees enrolled in this plan year. - `percentage: int` `enrolled / eligible` whole-number percent (0 when none). - `family: Literal["mec", "mvp", "ichra", 3 more]` * `mec` - Mec * `mvp` - Mvp * `ichra` - Ichra * `vpc` - Vpc * `dental` - Dental * `vision` - Vision - `"mec"` - `"mvp"` - `"ichra"` - `"vpc"` - `"dental"` - `"vision"` - `is_current: bool` Whether this is the current plan year. - `network_names: List[str]` Displayed networks: ["multi"] for ICHRA, otherwise the plan year's distinct network names. - `offered_states: List[str]` Distinct offered state codes. - `open_enrollment_end: Optional[date]` Open-enrollment end. - `open_enrollment_start: date` Open-enrollment start. - `premium_in_cents: Optional[int]` Monthly premium in cents; only for an ICHRA benefit with effective coverage. - `product_name: str` Benefit/product display name. - `status: Literal["active", "upcoming", "open_enrollment", "inactive"]` * `active` - Active * `upcoming` - Upcoming * `open_enrollment` - Open Enrollment * `inactive` - Inactive - `"active"` - `"upcoming"` - `"open_enrollment"` - `"inactive"` - `year: int` Calendar coverage year. ### Example ```python import os from vitable_connect import VitableConnect client = VitableConnect( api_key=os.environ.get("VITABLE_CONNECT_API_KEY"), # This is the default and can be omitted ) response = client.employers.list_benefit_plan_years( "empr_abc123def456", ) print(response.data) ``` #### Response ```json { "data": [ { "benefit_id": "benefit_id", "benefit_plan_year_id": "benefit_plan_year_id", "carrier": "carrier", "coverage_end": "2019-12-27", "coverage_start": "2019-12-27", "employee_contribution": { "max_cents": 0, "min_cents": 0 }, "employer_contribution": { "max_cents": 0, "min_cents": 0 }, "enrollment_rate": { "eligible": 0, "enrolled": 0, "percentage": 0 }, "family": "mec", "is_current": true, "network_names": [ "string" ], "offered_states": [ "string" ], "open_enrollment_end": "2019-12-27", "open_enrollment_start": "2019-12-27", "premium_in_cents": 0, "product_name": "product_name", "status": "active", "year": 0 } ] } ```