Options

Options are a variations of an experience. A customer must select an option to complete a booking.

Create option for experience

SecuritySupplier-production or Supplier-sandbox
Request
path Parameters
experience_id
required
string^(?!\-|\.|\_)[0-9a-z\-\.\_]{1,50}$

The experience ID.

header Parameters
accept
required
string

Specify the format of the response.

Value: "application/json"
accept-version
required
string (PORTA version)

The version of PORTA for the request.

Value: Description
vnd.porta-api.v1

Version 1.0.0

Request Body schema: application/json
required
Array of objects (Holder category) unique

The holder categories for the option.

label
required
string

The human-friendly label for the option.

main_option
boolean

When true, the main option appears first in the list of options.

If no option is defined as the default, then the first option is automatically made the default.

max_booking_quantity
integer <int32>

The maximum quantity allowed per booking.

min_booking_quantity
integer <int32>

The minimum quantity required for a valid booking.

option_id
required
string^(?!\-|\.|\_)[0-9a-z\-\.\_]{1,50}$

The option ID, assigned by the supplier.

Responses
200

Option

default

Error response

post/supplier/catalog/experiences/{experience_id}/options
Request samples
application/json
{
  • "holder_categories": [
    ],
  • "label": "string",
  • "main_option": true,
  • "max_booking_quantity": 0,
  • "min_booking_quantity": 0,
  • "option_id": "string"
}
Response samples
application/json
{
  • "holder_categories": [
    ],
  • "label": "string",
  • "main_option": true,
  • "max_booking_quantity": 0,
  • "min_booking_quantity": 0,
  • "option_id": "string"
}

Remove option from experience

SecuritySupplier-production or Supplier-sandbox
Request
path Parameters
experience_id
required
string^(?!\-|\.|\_)[0-9a-z\-\.\_]{1,50}$

The experience ID.

option_id
required
string^(?!\-|\.|\_)[0-9a-z\-\.\_]{1,50}$

The option ID.

header Parameters
accept
required
string

Specify the format of the response.

Value: "application/json"
accept-version
required
string (PORTA version)

The version of PORTA for the request.

Value: Description
vnd.porta-api.v1

Version 1.0.0

Responses
204

Option removed successfully

default

Error response

delete/supplier/catalog/experiences/{experience_id}/options/{option_id}
Request samples
Response samples
application/json
{
  • "code": "400",
  • "id": "3ecae132-a32d-41f9-8f7d-586f34cc29ce",
  • "message": "Check the request for errors."
}

Update option for experience

SecuritySupplier-production or Supplier-sandbox
Request
path Parameters
experience_id
required
string^(?!\-|\.|\_)[0-9a-z\-\.\_]{1,50}$

The experience ID.

option_id
required
string^(?!\-|\.|\_)[0-9a-z\-\.\_]{1,50}$

The option ID.

header Parameters
accept
required
string

Specify the format of the response.

Value: "application/json"
accept-version
required
string (PORTA version)

The version of PORTA for the request.

Value: Description
vnd.porta-api.v1

Version 1.0.0

Request Body schema: application/json
required
Array of objects (Holder category) unique

The holder categories for the option.

label
required
string

The human-friendly label for the option.

main_option
boolean

When true, the main option appears first in the list of options.

If no option is defined as the default, then the first option is automatically made the default.

max_booking_quantity
integer <int32>

The maximum quantity allowed per booking.

min_booking_quantity
integer <int32>

The minimum quantity required for a valid booking.

option_id
required
string^(?!\-|\.|\_)[0-9a-z\-\.\_]{1,50}$

The option ID, assigned by the supplier.

Responses
200

Option

409

Conflict: request conflicts with target resource

default

Error response

put/supplier/catalog/experiences/{experience_id}/options/{option_id}
Request samples
application/json
{
  • "holder_categories": [
    ],
  • "label": "string",
  • "main_option": true,
  • "max_booking_quantity": 0,
  • "min_booking_quantity": 0,
  • "option_id": "string"
}
Response samples
application/json
{
  • "holder_categories": [
    ],
  • "label": "string",
  • "main_option": true,
  • "max_booking_quantity": 0,
  • "min_booking_quantity": 0,
  • "option_id": "string"
}
Copyright © TUI Musement. All rights reserved.