> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://developer.deel.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developer.deel.com/_mcp/server.

# Retrieve Benefits for Employee

GET https://api.letsdeel.com/rest/eor/worker/benefits

Returns the benefits for the authenticated employee. The employee identity is inferred from the auth token, so this endpoint must be called with an employee-scoped token rather than a client token.

 **Token scopes**: `benefits:read`

Reference: https://developer.deel.com/api/eor-worker-endpoints/eor-worker-benefits/get-eor-worker-benefits

## Authentication

- `Authorization` header (bearer token, required) — ## Authentication The Deel API uses bearer tokens to authenticate requests. All API calls must be made over HTTPS — calls over plain HTTP or without authentication will fail. ```curl curl -X GET 'https://api.letsdeel.com/rest/v2/contracts' \ -H 'Authorization: Bearer YOUR-TOKEN-HERE' ``` [Learn more about authentication](/api/authentication)
- `Authorization` header (bearer token, required) — Standard OAuth2 security scheme based on https://swagger.io/docs/specification/authentication/

## Servers

- `https://api.letsdeel.com/rest` (Production, default)
- `https://api-staging.letsdeel.com/rest` (Demo)

## Response

### 200

Successful operation.

- `data` (list of EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItems, required) — List of contracts with their associated benefits. An employee may have benefits across multiple contracts if they have more than one active engagement.

## Errors

### 400 Bad Request Error

Operation failed.

- `errors` (list of EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaErrorsItems, optional)
- `request` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaRequest, optional)

### 401 Unauthorized Error

Operation failed.

- `request` (ApiErrorRequest, optional)
- `errors` (list of ApiError, optional)

### 403 Forbidden Error

Operation failed.

- `request` (ApiErrorRequest, optional)
- `errors` (list of ApiError, optional)

### 404 Not Found Error

Operation failed.

- `request` (ApiErrorRequest, optional)
- `errors` (list of ApiError, optional)

### 500 Internal Server Error

Operation failed.

- `request` (ApiErrorRequest, optional)
- `errors` (list of ApiError, optional)

## Types

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItems

- `benefits` (list of EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItems, required) — All benefits associated with this contract, regardless of enrollment status. Includes benefits the employee is enrolled in, has opted out of, or is pending enrollment for.
- `currency` (string, required) — ISO 4217 currency code for all monetary amounts within this contract's benefits (e.g. 'USD', 'CAD', 'GBP'). Applies to all cost and contribution fields in this contract grouping.
- `contract_id` (string, required) — Unique identifier for the employment contract these benefits are associated with. Use to correlate benefits with a specific contract when the employee has multiple active engagements.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaErrorsItems

- `path` (string, optional) — The JSON path where input validation failed
- `message` (string, optional) — A description of the returned error

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaRequest

- `url` (string, optional) — The relative URL of the failed request
- `code` (double, optional) — The code of the source handler which produced the returned error
- `docs` (string, optional) — A link to the official documentation for the requested endpoint resource
- `method` (string, optional) — The HTTP method of the failed request
- `source` (string, optional) — The source handler which produced the returned error
- `status` (double, optional) — The status code of the response
- `api_req_id` (string, optional) — The request ID of the failed request

### ApiErrorRequest

- `method` (string, optional) — The HTTP method of the failed request
- `url` (string, optional) — The relative URL of the failed request
- `status` (double, optional) — The status code of the response
- `api_req_id` (string, optional) — The request ID of the failed request
- `docs` (string, optional) — A link to the official documentation for the requested endpoint resource
- `source` (string, optional) — The source handler which produced the returned error
- `code` (double, optional) — The code of the source handler which produced the returned error

### ApiError

- `message` (string, optional) — A description of the returned error
- `path` (string, optional) — The JSON path where input validation failed

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItems

- `name` (string, required) — Human-readable display name of the benefit (e.g. 'Healthcare', 'Dental', '401(k)'). Suitable for display in UI.
- `type` (string, required, nullable) — High-level category of the benefit (e.g. HEALTHCARE, DENTAL, VISION). May be null if uncategorized. Use benefit_type_code for a more specific, jurisdiction-aware value.
- `status` (string, required) — Enrollment lifecycle state for this benefit. Populated with the same value as `enrollment_status` (both fields are returned for backward compatibility). ENROLLED = active, claimable coverage. OPTED_OUT = employee stopped or waived the coverage. TERMINATED = cancelled mid-contract. EXPIRED = coverage period ended. PENDING, AWAITING_ENROLLMENT, AWAITING_CARRIER_CONFIRMATION, and AWAITING_CONTRACT_ACTIVATION indicate transitional or pre-active states; see `enrollment_status` for the same enumeration and definitions.
- `description` (string, required) — Plain-text explanation of what this benefit covers and why it matters to the employee. Suitable for display in a benefits overview UI or summary card.
- `enrollment_details` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentDetails, required) — Details about the specific plan and provider the employee is currently enrolled in, along with the cost breakdown for the current billing cycle. Reflects the employee's actual enrollment, which may differ from organization_selection if the employee made their own plan choice.
- `organization_selection` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsOrganizationSelection, required) — The plan and provider the client organization has configured as the default offering for this benefit type. This reflects the employer's choice, which may differ from enrollment_details if the employee hasn't enrolled yet or selected a different option during open enrollment.
- `id` (string, optional) — Unique identifier (UUID) for this benefit instance. Use this when referencing the benefit in subsequent API calls.
- `end_date` (string, optional) — Date on which this benefit's coverage ends (ISO 8601, `YYYY-MM-DD`). Benefit record's effective end, termination, or offer end where applicable. Null or absent when no definitive end date is set on this record (coverage may still change if the contract or offering is updated).
- `plan_url` (string, optional) — URL to this specific plan's portal or documentation — for example, a plan summary PDF, carrier-hosted plan detail page, or plan materials. Distinct from `provider_website_url` (the provider organization as a whole) and `home_page_url` (employee portal for claims and ID cards).
- `contract_type` (string, optional) — Workforce product for the contract this benefit belongs to. EOR — Employer of Record; Deel is the legal employer. GP — Global Payroll; the client is the legal employer and Deel runs payroll. PEO — Professional Employer Organization (US co-employment). EMBEDDED — payroll or HR through an embedded partner integration.
- `provider_name` (string, optional) — Display name of the insurance carrier or benefit provider administering this plan (for example Allianz, Cigna, ManuLife).
- `coverage_group` (string, optional) — Who is covered under this benefit, derived from enrolled dependents on the contract benefit. EMPLOYEE = employee only. EMPLOYEE_AND_SPOUSE = employee plus legal spouse. EMPLOYEE_AND_DOMESTIC_PARTNER = employee plus registered domestic partner where applicable. EMPLOYEE_AND_CHILD = employee plus dependent child coverage structured as a single-child tier. EMPLOYEE_AND_CHILDREN = employee plus all enrolled children. EMPLOYEE_AND_FAMILY = employee plus spouse or partner and children (full family tier) per plan rules.
- `effective_date` (string, optional) — Date from which this benefit offering is in effect for this employee in this response (ISO 8601, `YYYY-MM-DD`). The benefit offering's offered-at date when present — not the same as contract coverage start or plan-specific coverage start dates inside enrollment.
- `benefit_type_code` (string, optional) — Jurisdiction-aware classification code for this benefit. Use this (not only `type`) when product logic must differ by country — for example retirement: `401_K` in the US versus `OCCUPATIONAL_PENSION` in the UK and Ireland. Other common values include HEALTHCARE, DENTAL, VISION, LIFE_INSURANCE, ACCIDENT_INSURANCE, and CRITICAL_ILLNESS; the full set may expand as new benefit types are added.
- `enrollment_status` (string, optional) — Enrollment lifecycle state for this benefit. Always matches `status` in this API version; both are returned so integrations can use the explicit `enrollment_status` name. PENDING = benefit exists but no enrollment action yet. AWAITING_ENROLLMENT = employee must complete enrollment while an enrollment window applies. AWAITING_CARRIER_CONFIRMATION = submission received; awaiting carrier or administrator confirmation. AWAITING_CONTRACT_ACTIVATION = enrollment cannot complete until the underlying employment contract is active. ENROLLED = active coverage. OPTED_OUT = employee stopped or waived the coverage. TERMINATED = stopped before natural expiry. EXPIRED = coverage window has ended.
- `enrollment_window` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentWindow, optional) — Calendar window during which the employee may enroll in, change, or opt out of this benefit. Omitted when no window is returned (enrollment changes are then not accepted until a new window opens, for example open enrollment, a qualifying life event, or a new-hire cycle per employer configuration).
- `provider_website_url` (string, optional) — Public marketing or corporate website for the carrier or administrator. For the employee-facing portal (claims, ID cards, provider search), use `home_page_url` when enrolled.
- `employee_contribution` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEmployeeContribution, optional) — Recurring portion of plan cost collected from the employee's pay for this benefit. Expressed with calculation metadata (`type`, `value`), resolved `amount`, `currency`, and `frequency`. For a given period, `employee_contribution.amount` plus `employer_contribution.amount` reflects the split of premium or plan cost represented here; use `enrollment_details` cycle fields when you need billed totals for the current cycle.
- `employer_contribution` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEmployerContribution, optional) — Recurring employer-paid portion for this benefit, same shape as `employee_contribution`. Together with `employee_contribution.amount`, describes how premium or plan cost is split for the modeled period; billed totals for the active cycle may also appear under `enrollment_details`.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentDetails

Details about the specific plan and provider the employee is currently enrolled in, along with the cost breakdown for the current billing cycle. Reflects the employee's actual enrollment, which may differ from organization_selection if the employee made their own plan choice.

- `selected_plan` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentDetailsSelectedPlan, required) — The specific benefit plan the employee is enrolled in (e.g. 'Gold', 'Silver', 'Bronze'). Contains the plan's ID, display name, and downloadable plan documents.
- `selected_provider` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentDetailsSelectedProvider, required) — The insurance carrier or benefit administrator managing the employee's currently enrolled plan. Includes portal access URL and provider-level documents.
- `current_cycle_plan_cost` (double, required) — Total cost of the selected plan for the current billing cycle, in the contract's currency. This is the gross plan cost before employer contributions are applied. Subtract current_cycle_employer_contribution to get the employee's net out-of-pocket cost.
- `current_cycle_employer_contribution` (double, required) — Amount the employer contributes toward the plan cost for the current billing cycle, in the contract's currency. This is the portion the company pays on the employee's behalf. The employee's actual cost is current_cycle_plan_cost minus this value.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsOrganizationSelection

The plan and provider the client organization has configured as the default offering for this benefit type. This reflects the employer's choice, which may differ from enrollment_details if the employee hasn't enrolled yet or selected a different option during open enrollment.

- `selected_plan` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsOrganizationSelectionSelectedPlan, required) — The plan tier the organization has chosen to offer employees by default for this benefit.
- `selected_provider` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsOrganizationSelectionSelectedProvider, required) — The insurance carrier or benefit provider the organization has contracted with to administer this benefit.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentWindow

Calendar window during which the employee may enroll in, change, or opt out of this benefit. Omitted when no window is returned (enrollment changes are then not accepted until a new window opens, for example open enrollment, a qualifying life event, or a new-hire cycle per employer configuration).

- `ends_at` (string, required) — Last date the enrollment window is open (ISO 8601, `YYYY-MM-DD`). After this date, enrollment is locked until a new window is triggered.
- `trigger` (string, required) — Business reason this window was opened. new_hire = initial enrollment after onboarding completes. open_enrollment = scheduled annual election period. qualifying_life_event = permitted mid-year change after a life event (for example marriage, birth, divorce) per plan rules. termination = window tied to offboarding, often for continuation or COBRA-style elections in applicable jurisdictions.
- `starts_at` (string, required) — First date the enrollment window is open (ISO 8601, `YYYY-MM-DD`). Enrollment actions are accepted on or after this date only.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEmployeeContribution

Recurring portion of plan cost collected from the employee's pay for this benefit. Expressed with calculation metadata (`type`, `value`), resolved `amount`, `currency`, and `frequency`. For a given period, `employee_contribution.amount` plus `employer_contribution.amount` reflects the split of premium or plan cost represented here; use `enrollment_details` cycle fields when you need billed totals for the current cycle.

- `type` (string, required) — How the employee contribution is derived. FIXED_AMOUNT = flat currency per `frequency`. PERCENTAGE = percent of an earnings or cost basis defined by the plan. Additional values (for example employer match shapes on retirement benefits) can appear for specialized products.
- `value` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEmployeeContributionValue, required) — Raw contribution input from configuration or upstream systems; may be a number or string (for example `"1.23"`). Use `amount` for display and arithmetic — it is the normalized numeric value in `currency` per `frequency`.
- `amount` (double, required) — Resolved employee contribution in `currency` for each `frequency` period (for example `100` with `USD` and `MONTHLY` means one hundred US dollars per month).
- `currency` (string, required) — ISO 4217 currency code for `amount` (for example USD, CAD, GBP). Matches the parent contract's `currency` for this benefits payload.
- `frequency` (string, required) — Payroll or billing cadence for this contribution. Typical values include MONTHLY, SEMI_MONTHLY (twice per month), BIWEEKLY, WEEKLY, and ANNUALLY; exact strings follow Deel payroll configuration.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEmployerContribution

Recurring employer-paid portion for this benefit, same shape as `employee_contribution`. Together with `employee_contribution.amount`, describes how premium or plan cost is split for the modeled period; billed totals for the active cycle may also appear under `enrollment_details`.

- `type` (string, required) — How the employer contribution is derived. FIXED_AMOUNT = flat currency per `frequency`. PERCENTAGE = percent of an earnings or cost basis. Additional values may appear for specialized products.
- `value` (EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEmployerContributionValue, required) — Raw employer contribution input; may be number or string depending on source. Prefer `amount` for calculations and UI.
- `amount` (double, required) — Resolved employer contribution in `currency` per `frequency` period.
- `currency` (string, required) — ISO 4217 currency code for `amount`. Matches the parent contract's `currency`.
- `frequency` (string, required) — Cadence at which the employer contribution is applied. Same vocabulary as `employee_contribution.frequency`.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentDetailsSelectedPlan

The specific benefit plan the employee is enrolled in (e.g. 'Gold', 'Silver', 'Bronze'). Contains the plan's ID, display name, and downloadable plan documents.

- `id` (string, required) — Unique identifier for this benefit plan. Use when referencing the plan in enrollment or amendment API calls.
- `name` (string, required) — Display name of the plan tier (e.g. 'Gold', 'Silver', 'Bronze'). Shown to employees during enrollment selection and in benefits summaries.
- `attachments` (list of EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentDetailsSelectedPlanAttachmentsItems, required) — Downloadable documents associated with this plan (e.g. Summary of Benefits and Coverage, Certificate of Coverage, plan brochure). Render each item as a labeled download link.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentDetailsSelectedProvider

The insurance carrier or benefit administrator managing the employee's currently enrolled plan. Includes portal access URL and provider-level documents.

- `id` (string, required) — Unique identifier for this provider.
- `name` (string, required) — Display name of the insurance carrier or benefit provider (e.g. 'ManuLife', 'Aetna'). Use for labeling in UI.
- `attachments` (list of EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentDetailsSelectedProviderAttachmentsItems, required) — Provider-level documents such as general coverage guides, network directories, or enrollment guides. Render each as a labeled download link.
- `home_page_url` (string, required) — URL to the employee-facing provider portal where the employee can view claims, access ID cards, find in-network providers, and manage coverage details.
- `is_unisure` (boolean, optional) — True if this benefit is administered through Unisure, a global group insurance platform Deel uses to deliver international EOR benefits. Relevant for understanding the benefit's administration model and claims process.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsOrganizationSelectionSelectedPlan

The plan tier the organization has chosen to offer employees by default for this benefit.

- `id` (string, required) — Unique identifier for the organization's selected plan.
- `name` (string, required) — Display name of the plan tier the organization has selected (e.g. 'Gold', 'Silver'). Shown to employees as the employer-offered default.
- `attachments` (list of EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsOrganizationSelectionSelectedPlanAttachmentsItems, required) — Downloadable plan documents for the organization's selected plan.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsOrganizationSelectionSelectedProvider

The insurance carrier or benefit provider the organization has contracted with to administer this benefit.

- `id` (string, required) — Unique identifier for the organization's selected provider.
- `name` (string, required) — Display name of the provider the organization has selected (e.g. 'ManuLife', 'Aetna').
- `attachments` (list of EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsOrganizationSelectionSelectedProviderAttachmentsItems, required) — Provider-level documents associated with the organization's selected provider.
- `home_page_url` (string, required) — URL to the employee-facing portal for the organization's selected provider.
- `is_unisure` (boolean, optional) — True if this provider is Unisure, a global group insurance platform used by Deel for international EOR benefits.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEmployeeContributionValue

Raw contribution input from configuration or upstream systems; may be a number or string (for example `"1.23"`). Use `amount` for display and arithmetic — it is the normalized numeric value in `currency` per `frequency`.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEmployerContributionValue

Raw employer contribution input; may be number or string depending on source. Prefer `amount` for calculations and UI.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentDetailsSelectedPlanAttachmentsItems

- `id` (string, required) — Unique identifier for this attachment document.
- `url` (string, required) — Direct URL to download or view the attachment. Typically a PDF. Use as the href for a download link.
- `label` (string, required) — Human-readable filename or label for the attachment (e.g. 'Canada_Benefits.pdf'). Use as the visible text for download links.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsEnrollmentDetailsSelectedProviderAttachmentsItems

- `id` (string, required) — Unique identifier for this attachment document.
- `url` (string, required) — Direct URL to download or view the attachment. Use as the href for a download link.
- `label` (string, required) — Human-readable filename or label for the attachment. Use as the visible text for download links.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsOrganizationSelectionSelectedPlanAttachmentsItems

- `id` (string, required) — Unique identifier for this attachment document.
- `url` (string, required) — Direct URL to download or view the attachment.
- `label` (string, required) — Human-readable filename or label for the attachment.

### EorWorkerBenefitsGetResponsesContentApplicationJsonSchemaDataItemsBenefitsItemsOrganizationSelectionSelectedProviderAttachmentsItems

- `id` (string, required) — Unique identifier for this attachment document.
- `url` (string, required) — Direct URL to download or view the attachment.
- `label` (string, required) — Human-readable filename or label for the attachment.

## Examples

**Response**

```json
{
  "data": [
    {
      "benefits": [
        {
          "name": "Healthcare",
          "type": "HEALTHCARE",
          "status": "ENROLLED",
          "description": "Ensure the employee is covered by a healthcare option.",
          "enrollment_details": {
            "selected_plan": {
              "id": "c6f6fa50-badf-4950-88ee-2849e76aac8c",
              "name": "Gold",
              "attachments": [
                {
                  "id": "ce022a6d-c24b-48c5-a1a7-ac91e85035f2",
                  "url": "[https://www.provider-a.com/attachments/Canada_Benefits.pdf](https://www.provider-a.com/attachments/Canada_Benefits.pdf)",
                  "label": "Canada_Benefits.pdf"
                }
              ]
            },
            "selected_provider": {
              "id": "a8cbeb12-32e3-44e3-3e1d-2a41c014d0b4",
              "name": "ManuLife",
              "attachments": [
                {
                  "id": "ce022a6d-c24b-48c5-a1a7-ac91e85035f2",
                  "url": "[https://www.provider-a.com/attachments/Canada_Benefits.pdf](https://www.provider-a.com/attachments/Canada_Benefits.pdf)",
                  "label": "Canada_Benefits.pdf"
                }
              ],
              "home_page_url": "[https://wwwec7.manulife.com/signin/#benefits](https://wwwec7.manulife.com/signin/#benefits)",
              "is_unisure": true
            },
            "current_cycle_plan_cost": 100,
            "current_cycle_employer_contribution": 50
          },
          "organization_selection": {
            "selected_plan": {
              "id": "c6f6fa50-badf-4950-88ee-2849e76aac8c",
              "name": "Gold",
              "attachments": [
                {
                  "id": "ce022a6d-c24b-48c5-a1a7-ac91e85035f2",
                  "url": "[https://www.provider-a.com/attachments/Canada_Benefits.pdf](https://www.provider-a.com/attachments/Canada_Benefits.pdf)",
                  "label": "Canada_Benefits.pdf"
                }
              ]
            },
            "selected_provider": {
              "id": "f8cbeb32-14e3-44e3-3e1d-2a41c014d0b4",
              "name": "ManuLife",
              "attachments": [
                {
                  "id": "ce022a6d-c24b-48c5-a1a7-ac91e85035f2",
                  "url": "[https://www.provider-a.com/attachments/Canada_Benefits.pdf](https://www.provider-a.com/attachments/Canada_Benefits.pdf)",
                  "label": "Canada_Benefits.pdf"
                }
              ],
              "home_page_url": "[https://wwwec7.manulife.com/signin/#benefits](https://wwwec7.manulife.com/signin/#benefits)",
              "is_unisure": true
            }
          },
          "id": "5f4d1f3f-4b3b-4b1e-8f4f-3b1f4f1b3b4b",
          "end_date": "2025-12-31",
          "plan_url": "https://plan.example",
          "contract_type": "EOR",
          "provider_name": "ManuLife",
          "coverage_group": "EMPLOYEE",
          "effective_date": "2025-02-01",
          "benefit_type_code": "HEALTHCARE",
          "enrollment_status": "AWAITING_ENROLLMENT",
          "enrollment_window": {
            "ends_at": "2025-01-31",
            "trigger": "open_enrollment",
            "starts_at": "2025-01-01"
          },
          "provider_website_url": "https://provider.example",
          "employee_contribution": {
            "type": "FIXED_AMOUNT",
            "value": "1.23",
            "amount": 100,
            "currency": "USD",
            "frequency": "MONTHLY"
          },
          "employer_contribution": {
            "type": "FIXED_AMOUNT",
            "value": 50,
            "amount": 50,
            "currency": "USD",
            "frequency": "MONTHLY"
          }
        }
      ],
      "currency": "USD",
      "contract_id": "m7yg6zp"
    }
  ]
}
```

**SDK Code**

```python
import requests

url = "https://api.letsdeel.com/rest/eor/worker/benefits"

headers = {"Authorization": "Bearer <token>"}

response = requests.get(url, headers=headers)

print(response.json())
```

```javascript
const url = 'https://api.letsdeel.com/rest/eor/worker/benefits';
const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"net/http"
	"io"
)

func main() {

	url := "https://api.letsdeel.com/rest/eor/worker/benefits"

	req, _ := http.NewRequest("GET", url, nil)

	req.Header.Add("Authorization", "Bearer <token>")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.letsdeel.com/rest/eor/worker/benefits")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.get("https://api.letsdeel.com/rest/eor/worker/benefits")
  .header("Authorization", "Bearer <token>")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('GET', 'https://api.letsdeel.com/rest/eor/worker/benefits', [
  'headers' => [
    'Authorization' => 'Bearer <token>',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.letsdeel.com/rest/eor/worker/benefits");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "Bearer <token>");
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = ["Authorization": "Bearer <token>"]

let request = NSMutableURLRequest(url: NSURL(string: "https://api.letsdeel.com/rest/eor/worker/benefits")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "GET"
request.allHTTPHeaderFields = headers

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```