Flex Plan Service Addons

A Flex Plan Service Addon represents the ancillary products bundled with a purchased Flex service - for example a travel eSIM or delayed-luggage protection. Addons are created automatically when a Flex Plan Service is confirmed, and are attached to the service under its flex_plan_addons[] list, one per covered customer.

Each addon exposes the delivery artifacts the traveller needs to use the bundled products: an order_url describing how to activate them, a support_url, and a terms_url. The bundled products themselves are listed under products[], each with a category (ESIM or LUGGAGE_PROTECTION) and a name. No fulfilment-provider identifiers are exposed through the API - the addon carries only the customer-facing artifacts.

This resource is read-only. Addons cannot be created, modified, or deleted directly through the API.

Fields

Name

Type

Description

id (read-only)

String

href (read-only)

Field

booking (read-only)

Reference Object

The associated booking

customer (read-only)

Reference Object

The associated customer

flex_plan_service (read-only)

Reference Object

The associated flex plan service

order_url (required)

Url

URL that contains information about how to activate the Flex add-on products

support_url (required)

Url

Support page URL for the Flex add-on products

terms_url (required)

Url

URL to the terms and conditions for the Flex add-on products

products (required)

Field

Products included in the Flex add-on

  • category (required)

Choice

The category of the Flex add-on product. One of: ESIM, LUGGAGE_PROTECTION

  • name (required)

String

The name of the Flex add-on product

Get a Flex Plan Service Addon

Addon references are found in the flex_plan_addons[] list on the Flex Plan Service resource.

GET /flex_plan_addons/(string: addon_id)/

Example response:

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "12345",
  "href": "https://rest.gadventures.com/flex_plan_addons/12345/",
  "booking": {
    "id": "999",
    "href": "https://rest.gadventures.com/bookings/999/"
  },
  "customer": {
    "id": "111",
    "href": "https://rest.gadventures.com/customers/111/"
  },
  "flex_plan_service": {
    "id": "12345",
    "href": "https://rest.gadventures.com/flex_plan_services/12345/"
  },
  "order_url": "https://example.com/orders/abc123/",
  "support_url": "https://example.com/support/",
  "terms_url": "https://example.com/terms/",
  "products": [
    {
      "category": "ESIM",
      "name": "Travel eSIM (3GB)"
    },
    {
      "category": "LUGGAGE_PROTECTION",
      "name": "Luggage Protection"
    }
  ]
}

Use cases

Travel eSIM

When a confirmed Flex service bundles a travel eSIM, the addon’s products[] includes an entry with category of ESIM. Surface the order_url to the traveller so they can claim and install the eSIM before departure, and keep the support_url handy for installation issues.

Luggage protection

For delayed-luggage protection (category of LUGGAGE_PROTECTION), the order_url is where the traveller registers their bags and files a claim if luggage is delayed. Display it prominently in pre-departure communications, along with the terms_url.

Warning

Render the addon URLs (order_url, support_url, terms_url) as HTML-safe content - escape values for your output context rather than injecting them into markup verbatim.

Lifecycle

  • Addons are created automatically when the parent Flex Plan Service is transitioned to the Confirmed status.

  • If the Flex terms are exercised (the covered departure service is cancelled), the bundled products are cancelled as part of the exercise.