---
uuid: f3955e18-a632-4d80-bd43-98acfa00430e
date_created: 2026-02-26T16:41:35.264Z
date_updated: 2026-04-03T17:04:05.633Z
seo_url: retrieve-resort-highlights-and-must-try-experiences
category: Resort content
tags: 
  - Product Information
  - Editorial contents
routes: 
  - GET /v2/products
  - GET /v2/products/{product_id}
  - GET /v0/products/{product_id}/highlights
  - GET /v0/products/{product_id}/highlights
---

# Retrieve resort highlights and must-try experiences

This scenario explains how to resolve a resort product, read its main product data, retrieve editorial highlights, and isolate must-try experiences from the same highlights feed.

## Flow

```mermaid
flowchart LR
    step0["Resolve the resort product_id"]
    step1["Read the product strengths"]
    step2["Retrieve the editorial highlights"]
    step3["Retrieve must-try experiences from highlights"]
    step0 --> step1
    step1 --> step2
    step2 --> step3
    classDef optional fill:transparent,stroke:#ffffff,color:#ffffff,stroke-width:1px,stroke-dasharray: 6\,4
    class step3 optional
```

## Overview

The route sequence starts by resolving the resort product, then combines generic product information with the editorial highlights feed to expose both the resort's strengths and the must-try experiences.

## Prerequisites

* A valid `product_id` must be resolved or selected.
* `accept-language` and `x-api-key` are required on the documented calls.
* Must-try experiences are retrieved from the highlights feed by filtering on `type == MUST_TRY_EXPERIENCES`.

## 1 - Resolve the resort product\_id

Use `GET /v2/products` to resolve the resort product\_id.

#### Prerequisites

Prepare the parameters required by the call. Keep `x-api-key` and, when the route is customer-scoped, a valid bearer token.

#### Calling CURL

```bash
curl -X GET \
  -H "x-api-key: YOUR_API_KEY" \
  -H "accept-language: en-US" \
  "https://api.clubmed.com/v2/products?limit=20&page=1"
```

#### Example answer

```json
[
  {
    "id": "product-1",
    "label": "Club Med Valmorel",
    "country_code": "FR",
    "type": "RESORT"
  }
]
```

> **info:** Keep the selected resort `product_id` to request its highlights and must-try experiences in the next steps.

***

**Response codes**

* `200 OK`: the expected data is returned.
* `400 Bad Request`: the request is invalid or incomplete.
* `404 Not Found`: the requested resource cannot be found.

**Related route**: [GET https://api.clubmed.com//v2/products](https://api.clubmed.com/doc?search=GET%20%2Fv2%2Fproducts)

## 2 - Read the product strengths

Use `GET /v2/products/{product_id}` to read the product strengths.

#### Prerequisites

Prepare `product_id`. Keep `x-api-key` and, when the route is customer-scoped, a valid bearer token.

#### Calling CURL

```bash
curl -X GET \
  -H "x-api-key: YOUR_API_KEY" \
  -H "accept-language: en-US" \
  "https://api.clubmed.com/v2/products/{product_id}"
```

#### Example answer

```json
{
  "id": "product-1",
  "label": "Club Med Valmorel",
  "country_code": "FR",
  "type": "RESORT",
  "description": "Family resort in the Alps"
}
```

> **info:** Réutilisez les highlights retournés pour alimenter un bloc éditorial de réassurance ou une page resort.

***

**Response codes**

* `200 OK`: the expected data is returned.
* `400 Bad Request`: the request is invalid or incomplete.
* `404 Not Found`: the requested resource cannot be found.

**Related route**: [GET https://api.clubmed.com//v2/products/{product\_id}](https://api.clubmed.com/doc?search=GET%20%2Fv2%2Fproducts%2F%7Bproduct_id%7D)

## 3 - Retrieve the editorial highlights

Use `GET /v0/products/{product_id}/highlights` to retrieve the editorial highlights that describe the main strengths of the resort.

#### Prerequisites

Prepare `product_id`. Keep `x-api-key` and, when the route is customer-scoped, a valid bearer token.

#### Calling CURL

```bash
curl -X GET \
  -H "x-api-key: YOUR_API_KEY" \
  -H "accept-language: en-US" \
  "https://api.clubmed.com/v0/products/{product_id}/highlights"
```

#### Example answer

```json
[
  {
    "id": "highlight-1",
    "title": "Ski-in / ski-out",
    "type": "RESORT_HIGHLIGHT"
  }
]
```

> **info:** Reuse highlight titles, types, and tags to build the resort editorial block or prepare the must-try filter.

***

**Response codes**

* `200 OK`: the expected data is returned.
* `400 Bad Request`: the request is invalid or incomplete.
* `404 Not Found`: the requested resource cannot be found.

**Related route**: [GET https://api.clubmed.com//v0/products/{product\_id}/highlights](https://api.clubmed.com/doc?search=GET%20%2Fv0%2Fproducts%2F%7Bproduct_id%7D%2Fhighlights)

## 4 - Retrieve must-try experiences from highlights

Use `GET /v0/products/{product_id}/highlights` to isolate items of type `MUST_TRY_EXPERIENCES` from the resort highlights feed.

#### Prerequisites

Prepare `product_id`. Send `accept-language` and `x-api-key`. Use the `type==MUST_TRY_EXPERIENCES` filter so the response only keeps the must-try experiences.

#### Calling CURL

```bash
curl -X GET \
  -H "x-api-key: YOUR_API_KEY" \
  -H "accept-language: en-US" \
  "https://api.clubmed.com/v0/products/{product_id}/highlights?filter=type==MUST_TRY_EXPERIENCES"
```

#### Example answer

```json
[
  {
    "id": "BALC_must_try_01",
    "title": "GET CRAFTY",
    "type": "MUST_TRY_EXPERIENCES",
    "description": "Experience the colours and textures of Balinese art in the newly constructed Arts & Crafts studio.",
    "image": "http://mypicture01.jpg",
    "theme": "family",
    "tags": ["tag1"]
  }
]
```

> **info:** The returned type lets you distinguish must-try experiences from the rest of the editorial highlights without relying on a deprecated dedicated endpoint.

***

**Response codes**

* `200 OK`: the filtered highlights are returned for the requested resort.
* `400 Bad Request`: `product_id` or the provided filter is invalid.
* `404 Not Found`: the requested product is unknown.

**Related route**: [GET https://api.clubmed.com//v0/products/{product\_id}/highlights](https://api.clubmed.com/doc?search=GET%20%2Fv0%2Fproducts%2F%7Bproduct_id%7D%2Fhighlights)
