Skip to content

List a benefit plan year's enrollments

employers.list_benefit_plan_year_enrollments(benefit_plan_year_id, **kwargs) -> PageNumberPage<EmployerListBenefitPlanYearEnrollmentsResponse { carrier, dependent_count, election_status, 11 more } >
GET/v1/employers/{employer_id}/benefit-plan-years/{benefit_plan_year_id}/enrollments

Returns a paginated list of every member with an enrollment in one of an employer’s plan years, any election status: what they elected, where their coverage stands, dependent count, carrier, plan, tier, and the plan’s total monthly cost. The caller must be authorized for the employer empr_<...>; an unknown or unauthorized employer, or an unknown plan year plyr_<...>, returns 404.

ParametersExpand Collapse
employer_id: String

Unique employer identifier (empr_*)

benefit_plan_year_id: String

Unique benefit-plan-year identifier (plyr_*).

election_status: Array[:Enrolled | :Expired | :Pending | :Waived]

Filter by election status. Repeat the parameter to match several.

One of the following:
:Enrolled
:Expired
:Pending
:Waived
limit: Integer

Items per page (default: 20, max: 100)

minimum1
maximum100
page: Integer

Page number (default: 1)

minimum1
ReturnsExpand Collapse
class EmployerListBenefitPlanYearEnrollmentsResponse { carrier, dependent_count, election_status, 11 more }
carrier: String

The carrier for this enrollment: the individual-market carrier for an ICHRA plan, otherwise the benefit’s own. Null when the benefit has no carrier.

dependent_count: Integer

Dependents covered under this enrollment today. Counts the same dependents premium_in_cents is priced for, so a dependent whose termination is dated in the future still counts.

minimum0
election_status: :Enrolled | :Waived | :Pending | :Expired
  • Enrolled - Enrolled
  • Waived - Waived
  • Pending - Pending
  • Expired - Expired
One of the following:
:Enrolled
:Waived
:Pending
:Expired
employee_deduction_in_cents: Integer

What the employee is deducted monthly, in cents: premium_in_cents less employer_contribution_in_cents, floored at zero. Null when unanswered/waived.

employee_external_reference_id: String

Your own reference id for this employee, as you supplied it. Null when you have not set one.

employee_id: String

Our id for this person’s employment with this employer (empl_<...>). A person who leaves and is rehired has two.

employer_contribution_in_cents: Integer

The employer’s monthly share of premium_in_cents, in cents. Null when unanswered/waived.

member_first_name: String

The member’s first name.

member_id: String

Our id for the person (mbr_<...>). Stable across every employer they work for.

member_last_name: String

The member’s last name.

plan: String

Chosen plan name, or null when unanswered/waived.

policy_status: :"Coverage Upcoming" | :"Coverage Effective" | :"Coverage Ended" | :Cancelled
  • Coverage Upcoming - Coverage Upcoming
  • Coverage Effective - Coverage Effective
  • Coverage Ended - Coverage Ended
  • Cancelled - Cancelled
One of the following:
:"Coverage Upcoming"
:"Coverage Effective"
:"Coverage Ended"
:Cancelled
premium_in_cents: Integer

Monthly premium in cents for the chosen plan, dependents included. The plan’s own cost, not the employer’s share of it. Null when unanswered/waived.

tier: String

Chosen coverage tier, or null when unanswered/waived.

List a benefit plan year's enrollments

require "vitable_connect"

vitable_connect = VitableConnect::Client.new(
  api_key: "My API Key",
  environment: "environment_1" # defaults to "production"
)

page = vitable_connect.employers.list_benefit_plan_year_enrollments(
  "plyr_abc123def456",
  employer_id: "empr_abc123def456"
)

puts(page)
{
  "data": [
    {
      "member_id": "mbr_SGVsbG8gV29ybGQh",
      "employee_id": "empl_V2VsY29tZSB0byBBY21l",
      "employee_external_reference_id": "EXT-10023",
      "member_first_name": "Ada",
      "member_last_name": "Lovelace",
      "election_status": "Enrolled",
      "policy_status": "Coverage Effective",
      "dependent_count": 1,
      "carrier": "Vitable",
      "plan": "Vitable Dental PPO",
      "tier": "Employee Plus Spouse",
      "premium_in_cents": 12000,
      "employer_contribution_in_cents": 9000,
      "employee_deduction_in_cents": 3000
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 66,
    "total_pages": 4
  }
}
Returns Examples
{
  "data": [
    {
      "member_id": "mbr_SGVsbG8gV29ybGQh",
      "employee_id": "empl_V2VsY29tZSB0byBBY21l",
      "employee_external_reference_id": "EXT-10023",
      "member_first_name": "Ada",
      "member_last_name": "Lovelace",
      "election_status": "Enrolled",
      "policy_status": "Coverage Effective",
      "dependent_count": 1,
      "carrier": "Vitable",
      "plan": "Vitable Dental PPO",
      "tier": "Employee Plus Spouse",
      "premium_in_cents": 12000,
      "employer_contribution_in_cents": 9000,
      "employee_deduction_in_cents": 3000
    }
  ],
  "pagination": {
    "page": 1,
    "limit": 20,
    "total": 66,
    "total_pages": 4
  }
}