---
title: "List Company Benefits"
method: GET
path: "/api/v1/benefit/company_benefit"
tags: ["Benefits", "Public API"]
---

# List Company Benefits

`GET /api/v1/benefit/company_benefit`

## Request

- Base URL: `https://companySubDomain.bamboohr.com`
- URL: `https://companySubDomain.bamboohr.com/api/v1/benefit/company_benefit`
- Auth: one of:
  - HTTP basic
  - OAuth 2
    - Authorization code: `/authorize.php`
    - Token URL: `/token.php` scopes: `benefit`
- TypeScript: <https://skmtc.dev/bamboohr/apis/bamboohr-api/docs/api/v1/benefit/company_benefit/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns all active (non-deleted) company benefit plans for the account. Each plan includes summary-level fields such as name, benefit category type, associated vendor and deduction IDs, effective date range, and catch-up eligibility flags. Deleted plans are excluded. To retrieve full detail for a specific plan (including SSO URL, description, and ACA fields), use "Get a company benefit".

OAuth Scopes: benefit

## Response `200`

An object containing a companyBenefits array of benefit plan summaries.

- object
  - `companyBenefits` CompanyBenefitSummary[]: List of company benefit plan summaries.
    - `id` string: The unique identifier of the company benefit plan.
    - `name` string: The name of the company benefit plan.
    - `type` 'health' | 'dental' | 'vision' | 'retirement' | 'hsa' | 'flex' | 'life' | 'disability' | 'reimbursement' | 'supplemental' | 'other': The benefit category type.
    - `benefitVendorId` string, nullable: The ID of the benefit vendor associated with this plan, or null if none.
    - `deductionTypeId` string, nullable: The deduction type ID for this plan, or null if not applicable.
    - `companyDeductionId` string, nullable: The company-level deduction record ID linked to this plan, or null if not set.
    - `startDate` string, date, nullable: The date the benefit plan becomes effective (YYYY-MM-DD), or null if not set.
    - `endDate` string, date, nullable: The date the benefit plan ends (YYYY-MM-DD), or null if ongoing.
    - `allowsCatchUp` boolean, nullable: Whether the plan allows catch-up contributions (e.g., for HSA plans for employees 55+), or null if not applicable to this plan type.
    - `allowsSuperCatchUp` boolean, nullable: Whether the plan allows super catch-up contributions, or null if not applicable to this plan type.
    - `isDraft` boolean: Whether the plan is still in a draft (not yet published) state.
    - `editable` boolean: Whether the plan can be edited. False when the plan has any active, archived, or future enrollments.

## Other responses

- `401`: Unauthorized. Invalid or missing authentication credentials.
- `403`: Forbidden. The user does not have permission to view company benefits.
- `500`: Internal server error.

## Changes

- **2026-11-03** `922fc15f43a7`: 3 info
  - added the non-success response with the status `403`
  - added the optional property `companyBenefits/items/editable` to the response with the `200` status
  - added the optional property `companyBenefits/items/isDraft` to the response with the `200` status

[Operation history](https://skmtc.dev/bamboohr/apis/bamboohr-api/changes/api/v1/benefit/company_benefit/get.md)

---

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