---
title: "Get all benefits for an employee"
method: GET
path: "/v1/employees/{employee_id}/employee_benefits"
tags: ["Employee Benefits"]
---

# Get all benefits for an employee

`GET /v1/employees/{employee_id}/employee_benefits`

Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee’s enrollment.

Returns an array of all employee benefits for this employee

Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope.

scope: `employee_benefits:read`

## Path parameters

- `employee_id` string, required

## Query parameters

- `page` integer
- `per` integer
- `include` 'all_benefits'

## Headers

- `X-Gusto-API-Version` '2026-06-15'

## Response `200`

Example response

- EmployeeBenefit[]
  - `version` string — The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field.
  - `active` boolean — Whether the employee benefit is active.
  - `employee_deduction` string — The amount to be deducted, per pay period, from the employee's pay.
  - `deduct_as_percentage` boolean — Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll.
  - `employee_deduction_annual_maximum` string, nullable — The maximum employee deduction amount per year. A null value signifies no limit.
  - `contribution` object — An object representing the type and value of the company contribution.
    - `type` string — The company contribution scheme. "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar. "percentage": The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar. "tiered": The company contribution varies according to the size of the employee deduction.
    - `value` union — For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. For the `tiered` contribution type, an array of tiers.
      - string
      - object
        - `tiers` object[]
          - `rate` string — The percentage of employee deduction within this tier the company contribution will match.
          - `threshold` string — Specifies the upper limit (inclusive) percentage of the employee contribution that this tier applies to. Use threshold to define each tier's end point, with tiers applied cumulatively from 0% upwards. For example: If the first tier has a threshold of "3", and `rate` of "100", the company will match 100% of employee contributions from 0% up to and including 3% of payroll. If the next tier has a threshold of "5" and a rate of "50", the company will match 50% of contributions from above 3% up to and including 5% of payroll.
          - `threshold_delta` string — The step up difference between this tier's threshold and the previous tier's threshold. In the first tier, this is equivalent to threshold.
  - `elective` boolean — Whether the company contribution is elective (aka matching). For "tiered" contribution types, this is always true.
  - `company_contribution_annual_maximum` string, nullable — The maximum company contribution amount per year. A null value signifies no limit.
  - `limit_option` string, nullable — Some benefits require additional information to determine their limit. `Family` and `Individual` are applicable to HSA benefit. `Joint Filing or Single` and `Married and Filing Separately` are applicable to Dependent Care FSA benefit.
  - `catch_up` boolean, nullable — Whether the employee should use a benefit's "catch up" rate. Only Roth 401k and 401k benefits use this value for employees over 50.
  - `retirement_loan_identifier` string, nullable — Identifier for a 401(k) loan assigned by the 401(k) provider
  - `coverage_amount` string, nullable — The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.
  - `deduction_reduces_taxable_income` 'unset' | 'reduces_taxable_income' | 'does_not_reduce_taxable_income', nullable — Whether the employee deduction reduces taxable income or not. Only valid for Group Term Life benefits. Note: when the value is not "unset", coverage amount and coverage salary multiplier are ignored.
  - `coverage_salary_multiplier` string, nullable — The coverage amount as a multiple of the employee's salary. Only applicable for Group Term Life benefits. Note: cannot be set if coverage amount is also set.
  - `company_contribution` string — The amount to be paid, per pay period, by the company. This field will not appear for tiered contribution types.
  - `contribute_as_percentage` boolean — Whether the company_contribution value should be treated as a percentage to be added to each payroll. This field will not appear for tiered contribution types.
  - `effective_date` string, date — The date the employee benefit will start.
  - `expiration_date` string, date, nullable — The date the employee benefit will expire. A null value indicates the benefit will not expire.
  - `employee_uuid` string — The UUID of the employee to which the benefit belongs.
  - `company_benefit_uuid` string — The UUID of the company benefit.
  - `uuid` string, required — The UUID of the employee benefit.

## Other responses

- `404` — Not Found The requested resource does not exist. Make sure the provided UUID is valid.

---

[API](https://skmtc.net/gusto/apis/gusto-api.md) · [All operations](https://skmtc.net/gusto/apis/gusto-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gusto/gusto-api/revisions/826dfa57fb3b/schema)
