---
title: "List Benefit Offers By Employment"
method: GET
path: "/v1/benefit-offers"
tags: ["Benefit Offers By Employment"]
---

# List Benefit Offers By Employment

`GET /v1/benefit-offers`

## Request

- Base URL: `https://gateway.remote.com`
- URL: `https://gateway.remote.com/v1/benefit-offers`
- Auth: one of:
  - OAuth 2
    - Authorization code: `/auth/oauth2/authorize`
    - Token URL: `/auth/oauth2/token` scopes: `https://gateway.remote.com/company.manage`
  - OAuth 2
    - Authorization code: `/auth/oauth2/authorize`
    - Token URL: `/auth/oauth2/token` scopes: `benefit_offer:read`
  - OAuth 2
    - Authorization code: `/auth/oauth2/authorize`
    - Token URL: `/auth/oauth2/token` scopes: `all:read`
  - OAuth 2
    - Authorization code: `/auth/oauth2/authorize`
    - Token URL: `/auth/oauth2/token` scopes: `all:write`
  - OAuth 2
    - Client credentials
    - Token URL: `/auth/oauth2/token` scopes: `benefit_offer:read`
  - OAuth 2
    - Client credentials
    - Token URL: `/auth/oauth2/token` scopes: `all:read`
  - OAuth 2
    - Client credentials
    - Token URL: `/auth/oauth2/token` scopes: `all:write`
  - HTTP bearer

List benefit offers by employment.

## Authentication

This endpoint accepts any one of the following token types:

- **Company-scoped access token** (`OAuth2AuthorizationCode`) — obtained by a company manager through the Authorization Code flow or the Refresh Token flow. See [Authentication for partners](https://developer.remote.com/docs/authentication-for-partners).
- **Company-scoped access token (assertion)** (`OAuth2CompanyManagerAssertion`) — obtained through the `urn:ietf:params:oauth:grant-type:jwt-bearer` grant for a company manager. See [OAuth Assertion](https://developer.remote.com/docs/authorization-method-oauth-assertion).
- **Customer API token** (`CustomerAPIToken`) — generated by the customer on their Integration Settings page, with the scopes they choose there. See [Authorization for customers](https://developer.remote.com/docs/authorization-for-customers).

## Scopes

Any one of the scopes in a token type's row is enough. `all:read` and `all:write` work too.

| Token type | Category | Read only Scope | Write only Scope (read access implicit) |
|---|---|---|---|
| Company-scoped access token | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) |
| Company-scoped access token (assertion) | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) |
| Customer API token | Manage company resources (`company_admin`) | View benefit offers (`benefit_offer:read`) | Manage benefit offers (`benefit_offer:write`) |

## Headers

- `Authorization` string, required

## Response `200`

Success

- BenefitOfferByEmploymentResponse
  - `data` object, required
    - `benefit_offers_by_employment` BenefitOffersByEmployment[], required
      - `benefit_offers` BenefitOffer[], required
        - `benefit_group` BenefitGroup, required: A category of benefits (e.g., "Health", "Dental", "Life Insurance") with a defined policy period. Each group contains one or more tiers representing different coverage levels.
          - `id` string, required: The unique identifier (UUID) of the benefit group.
          - `name` string, required: The name of the benefit category (e.g., "Health", "Dental", "Life Insurance").
          - `policy_end_date` string, date, required: The date when the policy period ends for this benefit group (ISO 8601 format). Benefits may need to be renewed after this date.
          - `policy_start_date` string, date, required: The date when the policy period begins for this benefit group (ISO 8601 format).
        - `benefit_tier` BenefitTier, required: A specific coverage level within a benefit group. For example, a "Health" benefit group might have tiers like "Basic", "Standard", and "Premium", each with different coverage and providers.
          - `description` string, required: A detailed description of what this tier covers, including the types of benefits included.
          - `id` string, required: The unique identifier (UUID) of the benefit tier.
          - `name` string, required: The name of this tier (e.g., "Premium 2024 (Medical, Dental and Vision)").
          - `providers` BenefitProvider[], required: The insurance carriers or providers associated with this tier.
            - `id` string, required: The unique identifier (UUID) of the benefit provider.
            - `name` string, required: The name of the insurance carrier or benefit provider (e.g., "Allianz", "Bupa").
        - `benefits` Benefit[], required
          - `costs` Costs, nullable, required: The cost breakdown between employee and employer for a benefit. Amounts are in the company's billing currency, in cents.
            - `employee_cost` integer, required: The employee's portion of the benefit cost, in cents.
            - `employer_cost` integer, required: The employer's portion of the benefit cost, in cents.
          - `coverage_end_date` string, date, required: The date when benefit coverage ends (ISO 8601).
          - `coverage_start_date` string, date, required: The date when benefit coverage begins (ISO 8601).
          - `id` string, required: The unique identifier (UUID) of the benefit.
          - `name` string, required: The name of the benefit (e.g., "Health Insurance", "Dental Plan").
          - `projected_costs` Costs, nullable, required: The cost breakdown between employee and employer for a benefit. Amounts are in the company's billing currency, in cents.
            - `employee_cost` integer, required: The employee's portion of the benefit cost, in cents.
            - `employer_cost` integer, required: The employer's portion of the benefit cost, in cents.
          - `provider` BenefitProvider, nullable, required: The insurance carrier or provider that underwrites a benefit tier. May be null if the benefit tier does not have a specific external provider assigned.
            - `id` string, required: The unique identifier (UUID) of the benefit provider.
            - `name` string, required: The name of the insurance carrier or benefit provider (e.g., "Allianz", "Bupa").
          - `status` 'offered' | 'enrolled' | 'waived', required: The enrollment status of this benefit for the employee. - `offered`: The benefit has been offered but the employee has not yet enrolled. - `enrolled`: The employee is actively enrolled in this benefit. - `waived`: The employee declined or opted out of this benefit.
          - `type` string, required: The type/category of the benefit.
        - `costs` Costs, nullable, required: The cost breakdown between employee and employer for a benefit. Amounts are in the company's billing currency, in cents.
          - `employee_cost` integer, required: The employee's portion of the benefit cost, in cents.
          - `employer_cost` integer, required: The employer's portion of the benefit cost, in cents.
      - `costs` Costs, nullable, required: The cost breakdown between employee and employer for a benefit. Amounts are in the company's billing currency, in cents.
        - `employee_cost` integer, required: The employee's portion of the benefit cost, in cents.
        - `employer_cost` integer, required: The employer's portion of the benefit cost, in cents.
      - `employment` BenefitOffersEmployment, required: A lightweight employment representation used in benefit offer listings.
        - `country` Country, required: A supported country on Remote
          - `alpha_2_code` string, required: The ISO 3166-1 alpha-2 country code (e.g., "PT").
          - `code` string, required: The ISO 3166-1 alpha-3 country code (e.g., "PRT"). This is the primary code used across the Remote API.
          - `contractor_products_available` string[]: Contractor product names available for this country
          - `country_subdivisions` CountrySubdivision[], nullable: Administrative subdivisions of the country (e.g., states, provinces, districts). Null if the country has no subdivisions relevant to Remote's services.
            - `code` string: The ISO 3166-2 subdivision code (e.g., "PT-11" for Lisboa).
            - `name` string, required: The subdivision's name (e.g., "Lisboa", "California").
            - `subdivision_type` string: The type of subdivision (e.g., "District", "State", "Province").
          - `employment_agreement_preview_available` boolean: Whether an Employment Agreement preview is available for this country.
          - `eor_onboarding` boolean: Whether EOR (Employer of Record) onboarding is available in this country.
          - `global_payroll_supported` boolean: Whether Global Payroll employments can be onboarded in this country. When true, the "global_payroll_administrative_details", "global_payroll_contract_details" and "global_payroll_personal_details" forms are available from the Show form schema endpoint.
          - `locked_benefits` string: When benefit plan selections become locked for this country (e.g., "after_first_hire" means benefits cannot be changed after the first employee is hired).
          - `name` string, required: The country's full English name.
          - `region` string: The geographic region the country belongs to (e.g., "Europe", "Asia", "Americas").
          - `subregion` string, nullable: The geographic subregion (e.g., "Southern Europe", "Southeast Asia"). Null for some countries.
          - `supported_json_schemas` string[]: The list of JSON schema form names available for this country (e.g., "address_details", "contract_details", "global_payroll_contract_details"). Use these with the Show form schema endpoint to get country-specific field requirements.
        - `given_name` string, nullable, required: The employee's given (first) name. Null if not available.
        - `id` string, required: The unique identifier (UUID) of the employment.
        - `name` string, required: The employee's full name.
        - `surname` string, nullable, required: The employee's surname (last name). Null if not available.
    - `company_id` string, required: The unique identifier (UUID) of the company.
    - `currency` Currency, required: The type of money in general use in a particular country
      - `code` string, required
      - `name` string
      - `slug` string, required
      - `symbol` string, required

## Other responses

- `404`: Not Found

---

[API](https://skmtc.dev/remote-com/apis/benefits.md) - [All operations](https://skmtc.dev/remote-com/apis/benefits/llms.txt) - [OpenAPI document](https://skmtc.dev/remote-com/apis/benefits/revisions/fca458a33455?raw)
