Flex Plans¶
A Flex Plan is the purchasable Flex product for a specific departure.
There is a unique flex_plans instance per Flex Tier
per Departure, exposing the Flex price for that departure
per room and price band (e.g. ANY, ADULT, CHILD).
The plan’s name is inherited from the referenced Flex Tier
(flex_tier.name), not from the departure. Flex is priced as a
percentage of the tour cost; the resolved monetary amounts for the
departure appear under rooms[], per room, price band, and currency.
Flex Plans are discovered through the addons[] list on the
Departures resource, in the same way as other add-on
products. Purchasing a Flex Plan creates a
Flex Plan Service on the booking.
This resource is read-only.
Availability¶
There is no availability.total field on a Flex Plan - Flex is not
inventory-managed. The availability.status field exposes two values:
AVAILABLE- the plan can be purchased.NOT_BOOKABLE- the plan cannot be purchased. A plan becomesNOT_BOOKABLEonce the departure enters the Flex stop-sell window (60 days before the departure start date, or 90 days for National Geographic Signature departures), or when the plan has been superseded by a newer Flex Plan for the same tier and departure (for example after a price-percentage change).
Note that an AVAILABLE plan can still only be attached to a booking
within the 48-hour late-attach window after the original departure
confirmation - see Flex Plan Services for the
purchase constraints.
Fields
Name |
Type |
Description |
|---|---|---|
|
String |
|
|
Field |
|
|
Datetime |
The time when the resource was created, in the standard Dates & Times. |
|
String |
The name of this resource. |
|
String |
A shared code for this flex plans tier |
|
String |
A unique code for this flex plans |
|
String |
The type of this resource. |
|
String |
A brief description of the type of product. |
|
Date |
The date this product ends, in the standard Dates & Times. |
|
Reference Object |
The booking_company for this product |
|
Reference Object |
The flex tier for this plan. |
|
Reference Object |
The flex cancellation terms for this plan. |
|
Reference Object |
The departure for this plan. |
|
Nested Object |
|
|
Choice |
The availability status for this flex plans product. Can be one of ‘AVAILABLE’ or ‘NOT_BOOKABLE’ |
|
Field |
A list of available rooming options. |
|
String |
A unique code for this room that is used when creating a booking. This code will never change and can be used as an identifier. |
|
String |
The name of this room. |
|
Field |
|
|
String |
A unique code for this Pricing option. Possible values are: ‘ANY’, ‘ADULT’, ‘CHILD’, ‘INFANT’.This code will never change and can be used as an identifier. |
|
String |
The name of this Pricing option. This is usually a string representation of the minimum/maximum ages for this Pricing option (e.g. Adult, Child, Infant, etc). |
|
Integer |
The minimum age of a traveller (on the start date of this product) that can receive this Pricing option. |
|
Integer |
The maximum age of a traveller (on the start date of this product) that can receive this Pricing option. |
|
Field |
The prices for this price_band. |
|
String |
The currency ISO code, in the standard Currencies & Prices. |
|
Decimal |
The amount for this Pricing option, in the standard Currencies & Prices. |
|
Decimal |
The deposit amount needed as a payment before a booked service on this product and Pricing option can be confirmed, in the standard Currencies & Prices. |
|
Field |
A list of promotions associated with this product. As expected, a promotions Webhooks will fire when it is modified. Clients should then iterate through the list of promotion ‘products’ in order to pull new promotional pricing data. The best promotions (largest discount) are displayed first. |
|
String |
|
|
Field |
|
|
Decimal |
The promotion amount for this Pricing option, in the standard Currencies & Prices. |
Get a Flex Plan¶
- GET /flex_plans/(string: flex_plan_id)/¶
Discovering Flex Plans on a Departure¶
Flex Plans appear in the addons[] list of the
Departures resource with type set to
flex_plans and sub_type set to Flex:
{
"id": "1234567",
"href": "https://rest.gadventures.com/departures/1234567/",
"addons": [
{
"product": {
"id": "111",
"href": "https://rest.gadventures.com/flex_plans/111/",
"name": "Flexier",
"type": "flex_plans",
"sub_type": "Flex"
},
"start_date": "2026-08-01",
"finish_date": "2026-10-01",
"min_days": 0,
"max_days": 0,
"request_space_date": null,
"halt_booking_date": "2026-10-01"
}
]
}
Note
Flex is not offered where CEU (Central European (DACH) - Austria, Switzerland, or Germany) terms apply.