---
title: "Get benefit fields requirements by benefit type"
method: GET
path: "/v1/benefits/{benefit_id}/requirements"
tags: ["Company Benefits"]
---

# Get benefit fields requirements by benefit type

`GET /v1/benefits/{benefit_id}/requirements`

## Request

- Base URL: `https://api.gusto-demo.com`
- URL: `https://api.gusto-demo.com/v1/benefits/{benefit_id}/requirements`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/gusto/apis/gusto-api/docs/v1/benefits/:benefit_id/requirements/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns the field requirements for a given benefit type.

scope: `benefits:read`

## Path parameters

- `benefit_id` string, required

## Headers

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

## Response `200`

Successful

- BenefitTypeRequirements
  - `employee_deduction` object: The amount to be deducted, per pay period, from the employee's pay.
    - `required` boolean
    - `editable` boolean
    - `default_value` object, nullable
      - `value` string
      - `type` string
    - `choices` string[], nullable
  - `contribution` object: An object representing the type and value of the company contribution.
    - `required` boolean
    - `editable` boolean
    - `default_value` object, nullable
      - `value` string
      - `type` string
    - `choices` string[], nullable
  - `deduct_as_percentage` object: Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll.
    - `required` boolean
    - `editable` boolean
    - `default_value` object, nullable
      - `value` string
      - `type` string
    - `choices` string[], nullable
  - `catch_up` object: Whether the employee should use a benefit’s 'catch up' rate. Only Roth 401k and 401k benefits use this value for employees over 50.
    - `required` boolean
    - `editable` boolean
    - `default_value` object, nullable
      - `value` string
      - `type` string
    - `choices` string[], nullable
  - `limit_option` object: Some benefits require additional information to determine their limit. For example, for an HSA benefit, the limit option should be either 'Family' or 'Individual'. For a Dependent Care FSA benefit, the limit option should be either 'Joint Filing or Single' or 'Married and Filing Separately'.
    - `required` boolean
    - `editable` boolean
    - `default_value` object, nullable
      - `value` string
      - `type` string
    - `choices` string[], nullable
  - `company_contribution_annual_maximum` object: The maximum company contribution amount per year. A null value signifies no limit.
    - `required` boolean
    - `editable` boolean
    - `default_value` object, nullable
      - `value` string
      - `type` string
    - `choices` string[], nullable
  - `coverage_salary_multiplier` object: 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.
    - `required` boolean
    - `editable` boolean
    - `default_value` object, nullable
      - `value` string
      - `type` string
    - `choices` string[], nullable
  - `coverage_amount` object: The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.
    - `required` boolean
    - `editable` boolean
    - `default_value` object, nullable
      - `value` string
      - `type` string
    - `choices` string[], nullable

## Other responses

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

---

[API](https://skmtc.dev/gusto/apis/gusto-api.md) - [All operations](https://skmtc.dev/gusto/apis/gusto-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gusto/apis/gusto-api/revisions/f98575fa2a5e?raw)
