Skip to content

Create Curated List

POST
/api/managing-entity/{managingEntityIdentifier}/studio/static-list
curl --request POST \
--url https://api.wink.travel/api/managing-entity/owner-1/studio/static-list \
--header 'Content-Type: application/json' \
--header 'Wink-Version: 2.0' \
--data '{ "name": "", "channelInventoryIdentifiers": [ "" ] }'

Create a new curated list

managingEntityIdentifier
required
string
""

Create curated list owned by this owner identifier.

Example
owner-1
Wink-Version
string
default: 2.0.0
Allowed values: 2.0
Media type application/json
object
name
required

Name of curated list

string
"" >= 1 characters
Example
Top 3 Hotels in Chiang Mai
channelInventoryIdentifiers
Array<string>

Created

Media type application/json

Contains both the curated list and all its items.

object
list
required

Curated list object

object
id

Document UUID

string
""
createdDate

Datetime this record was first created

string format: date-time
""
lastUpdate

Datetime this record was last updated

string format: date-time
""
version

Version property that shows how many times this document has been persisted. Document will not persist if the version property is less than current version property in the system. Result in an optimistic locking exception.

integer format: int64
""
ownerIdentifier
required

List creator

string format: uuid
"" >= 1 characters
name
required

Name of curated list

string
"" >= 1 characters
type
required

Every affiliate starts out with a Favorite list. All other lists will be of type NORMAL

string
""
Allowed values: FAVORITE NORMAL
items

Travel inventory items contained in list

Array<object>
object
id

Document UUID

string
""
createdDate

Datetime this record was first created

string format: date-time
""
lastUpdate

Datetime this record was last updated

string format: date-time
""
version

Version property that shows how many times this document has been persisted. Document will not persist if the version property is less than current version property in the system. Result in an optimistic locking exception.

integer format: int64
""
parent
required

Parent list

object
identifier
required

Unique record identifier

string format: uuid
"" >= 1 characters
ownerIdentifier
required

List creator

string format: uuid
"" >= 1 characters
name
required

Name of curated list

string
"" >= 1 characters
type
required

Every affiliate starts out with a Favorite list. All other lists will be of type NORMAL

string
""
Allowed values: FAVORITE NORMAL
item
required

Channel inventory

object
identifier
required

Channel Inventory identifier

string format: uuid
""
salesChannel
required

Parent sales channel

object
identifier
required

Unique record identifier of this segment / account

string format: uuid
"" >= 1 characters
supplierIdentifier
required

Channel is owned by this supplier identifier.

string format: uuid
"" >= 1 characters
supplierName
required

Name of property / supplier that owns this channel

string
"" >= 1 characters
supplierAvailable
required

Flag when supplier not available. E.g. Hotel disables property

boolean
default: true
subType
required

What type of segment of channel is this.

string
""
Allowed values: TRIP_PAY FACILITATOR DIRECT APPLICATION HOTEL TRAVELIKO CORPORATE TRAVEL_AGENT INFLUENCER BLOGGER DESTINATION CHANNEL_MANAGER PROPERTY_MANAGEMENT_SYSTEM CENTRAL_RESERVATION_SYSTEM GOOGLE_HOTEL_API MANAGEMENT_COMPANY CHAIN BRAND EVENT_ORGANIZER OTHER
ownerIdentifier

A specific identifier for the company / corporation / travel agency that is retrieving the rates

string format: uuid
""
ownerName

Name of the owner / affiliate. Hotel booking customization when it’s the booking customization.

string
""
enabled

Flag the supplier can use to enable / disable this channel

boolean
default: true
channelDisabled

System override by supplier to disable channel. E.g. Platform disables supplier.

boolean
blacklisted
required

A way to blacklist a specific channel a property doesn’t want to send blocking to.

boolean
percentDiscount

Percent discount on this channel and all its children [unless configured at the child level].

number format: float
"" <= 1
commission

Amount of sales commission earned through this channel and all its children [unless configured at the child level].

number format: float
"" <= 1
rateModifiers

Promotions for this channel

Array<object>
""
object
identifier
required

Unique record identifier

string format: uuid
"" >= 1 characters
hotelIdentifier
required

Hotel identifier.

string format: uuid
"" >= 1 characters
name
required

Internal name of promotion.

string
"" >= 1 characters
type
required

Set whether you want the price to go up or down when the rules of this promotion have been satisfied.

string
""
Allowed values: PREMIUM DISCOUNT
modifier
required
enabled
required

Whether this promotion is enabled or not.

boolean
default: true
pricingType
required

This determines whether this discount should be applied per night, per stay or per person - per night

string
""
Allowed values: PER_STAY PER_DAY PER_NIGHT PER_USE PER_HOUR PER_PERSON PER_PERSON_PER_NIGHT PER_PERSON_PER_HOUR PER_ADULT PER_ADULT_PER_NIGHT PER_ADULT_PER_HOUR PER_CHILD PER_CHILD_PER_NIGHT PER_CHILD_PER_HOUR
descriptions
required

Localized descriptions describing promotion. At least one English entry is required.

Array<object>
"" >= 1 items
object
description
required

Longer text description

string
"" >= 1 characters <= 2147483647 characters
language
required

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
md5ContentHash

The md5 hash of the name, description and language.

string
""
hashMismatch
boolean
cityRateQualifiers

Restrict promotion to specific cities. See Geo-IP city geoname data

Array
""
continentRateQualifiers

Restrict promotion to specific continents. See Geo-IP continent geoname data

Array
""
countryRateQualifiers

Restrict promotion to specific countries. See Geo-IP country geoname data

Array
""
promotionRateQualifiers

Restrict promotion by requiring users to enter a promo code.

Array
""
ipRangeRateQualifiers

Restrict promotion to specific IP ranges.

Array
""
roomRangeRateQualifier

Restrict promotion by restricting to how many rooms the user wants.

""
prepayRateQualifier

Restrict promotion to either prepaid / non-prepaid rates.

""
refundableRateQualifier

Restrict promotion to either refundable / non-refundable rates.

""
timezoneRateQualifiers

Restrict promotion to specific time zones. See Geo-IP timezone geoname data

Array
""
lastMinuteRateQualifier

Restrict promotion to users who want to book a room close to the date.

""
lengthOfStayRateQualifier

Restrict promotion to users who want to stay a certain number of days.

""
advanceBookingRateQualifier

Restrict promotion to users who want to book in advance.

""
stayDateRateQualifiers

Restrict promotion to specific stay dates the user wants to arrive.

Array
""
sellDateRateQualifiers

Restrict promotion to specific dates the booking is made.

Array
""
availableDaysOfWeekRateQualifier

Restrict promotion to specific days of the week the promotion is available.

""
arrivalDaysOfWeekRateQualifier

Restrict promotion to specific days of the week the guest is arriving.

""
departureDaysOfWeekRateQualifier

Restrict promotion to specific days of the week the guest is departing.

""
requiredDaysOfWeekRateQualifier

Restrict promotion to specific days of the week the guest has to stay.

""
masterRateIdentifiers

Restrict on specific master rates.

Array<string>
""
addOnIdentifiers

Restrict on specific add-ons.

Array<string>
""
ratePlanIdentifiers

Restrict on specific rate plans.

Array<string>
""
blackoutDates

Exclude this promotion from specific date ranges.

Array
""
rateModifierBundles

Promotion bundles for this channel

Array<object>
""
object
identifier
required

Unique record identifier

string format: uuid
"" >= 1 characters
hotelIdentifier
required

Hotel identifier.

string format: uuid
"" >= 1 characters
name
required

Internal name of promotion ancillary.

string
"" >= 1 characters
enabled
required

Whether this promotion ancillary is enabled or not.

boolean
default: true
items
required
Array<object>
>= 1 items

Promotions that go together to make up this ancillary.

object
identifier
required

Unique record identifier

string format: uuid
"" >= 1 characters
hotelIdentifier
required

Hotel identifier.

string format: uuid
"" >= 1 characters
name
required

Internal name of promotion.

string
"" >= 1 characters
type
required

Set whether you want the price to go up or down when the rules of this promotion have been satisfied.

string
""
Allowed values: PREMIUM DISCOUNT
modifier
required
enabled
required

Whether this promotion is enabled or not.

boolean
default: true
pricingType
required

This determines whether this discount should be applied per night, per stay or per person - per night

string
""
Allowed values: PER_STAY PER_DAY PER_NIGHT PER_USE PER_HOUR PER_PERSON PER_PERSON_PER_NIGHT PER_PERSON_PER_HOUR PER_ADULT PER_ADULT_PER_NIGHT PER_ADULT_PER_HOUR PER_CHILD PER_CHILD_PER_NIGHT PER_CHILD_PER_HOUR
descriptions
required

Localized descriptions describing promotion. At least one English entry is required.

Array<object>
"" >= 1 items
object
description
required

Longer text description

string
"" >= 1 characters <= 2147483647 characters
language
required

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
md5ContentHash

The md5 hash of the name, description and language.

string
""
hashMismatch
boolean
cityRateQualifiers

Restrict promotion to specific cities. See Geo-IP city geoname data

Array
""
continentRateQualifiers

Restrict promotion to specific continents. See Geo-IP continent geoname data

Array
""
countryRateQualifiers

Restrict promotion to specific countries. See Geo-IP country geoname data

Array
""
promotionRateQualifiers

Restrict promotion by requiring users to enter a promo code.

Array
""
ipRangeRateQualifiers

Restrict promotion to specific IP ranges.

Array
""
roomRangeRateQualifier

Restrict promotion by restricting to how many rooms the user wants.

""
prepayRateQualifier

Restrict promotion to either prepaid / non-prepaid rates.

""
refundableRateQualifier

Restrict promotion to either refundable / non-refundable rates.

""
timezoneRateQualifiers

Restrict promotion to specific time zones. See Geo-IP timezone geoname data

Array
""
lastMinuteRateQualifier

Restrict promotion to users who want to book a room close to the date.

""
lengthOfStayRateQualifier

Restrict promotion to users who want to stay a certain number of days.

""
advanceBookingRateQualifier

Restrict promotion to users who want to book in advance.

""
stayDateRateQualifiers

Restrict promotion to specific stay dates the user wants to arrive.

Array
""
sellDateRateQualifiers

Restrict promotion to specific dates the booking is made.

Array
""
availableDaysOfWeekRateQualifier

Restrict promotion to specific days of the week the promotion is available.

""
arrivalDaysOfWeekRateQualifier

Restrict promotion to specific days of the week the guest is arriving.

""
departureDaysOfWeekRateQualifier

Restrict promotion to specific days of the week the guest is departing.

""
requiredDaysOfWeekRateQualifier

Restrict promotion to specific days of the week the guest has to stay.

""
masterRateIdentifiers

Restrict on specific master rates.

Array<string>
""
addOnIdentifiers

Restrict on specific add-ons.

Array<string>
""
ratePlanIdentifiers

Restrict on specific rate plans.

Array<string>
""
blackoutDates

Exclude this promotion from specific date ranges.

Array
""
modifierOverride
type

Required if manual override modifier is not null

string
""
Allowed values: PREMIUM DISCOUNT
pricingType

Determines whether this discount should be applied per night, per stay or per person - per night; Required if amount override is not null

string
""
Allowed values: PER_STAY PER_DAY PER_NIGHT PER_USE PER_HOUR PER_PERSON PER_PERSON_PER_NIGHT PER_PERSON_PER_HOUR PER_ADULT PER_ADULT_PER_NIGHT PER_ADULT_PER_HOUR PER_CHILD PER_CHILD_PER_NIGHT PER_CHILD_PER_HOUR
descriptions

Optional bundle-level descriptions. When populated, these replace the aggregated item descriptions in offerDetails.

Array<object>
""
object
description
required

Longer text description

string
"" >= 1 characters <= 2147483647 characters
language
required

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
md5ContentHash

The md5 hash of the name, description and language.

string
""
hashMismatch
boolean
isValid
boolean
aggregatedItemDescriptions
Array<object>
object
description
required

Longer text description

string
"" >= 1 characters <= 2147483647 characters
language
required

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
md5ContentHash

The md5 hash of the name, description and language.

string
""
hashMismatch
boolean
hasFixedDiscountModifier
boolean
hasPercentDiscountModifier
boolean
effectiveDescriptions
Array<object>
object
description
required

Longer text description

string
"" >= 1 characters <= 2147483647 characters
language
required

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
md5ContentHash

The md5 hash of the name, description and language.

string
""
hashMismatch
boolean
selfAcquires

Whether the sales channel is a self-acquiring entity.

boolean
inventoryType
required

Inventory type

string
""
Allowed values: GUEST_ROOM ADD_ON MEETING_ROOM RESTAURANT SPA ATTRACTION PLACE ACTIVITY
inventoryIdentifier
required

Inventory type identifier

string format: uuid
"" >= 1 characters
inventoryNameInEnglish
required

Name of inventory as traveler is seeing it

string
"" >= 1 characters
enabled
required

Whether this inventory is enabled or not

boolean
default: true
image
required

Main image of inventory

object
multimediaIdentifier
required

Document identifier

string format: uuid
"" >= 1 characters
identifier
required

Use this identifier to communicate with Cloudinary.

string
"" >= 1 characters
type
required

Whether Cloudinary media is a VIDEO or IMAGE.

string
""
Allowed values: IMAGE VIDEO AUDIO RAW
source
required

Currently ONLY using Cloudinary to store all image / video assets.

string
default: CLOUDINARY
Allowed values: YOUTUBE CLOUDINARY
sort
required

Sort allows you to control how you want to sort this record in a list of media records.

integer format: int32
default: 999
angle

Media angle

string
""
width
required

Media width in pixels.

integer format: int32
"" >= 1
height
required

Media height in pixels.

integer format: int32
"" >= 1
published

Instead of deleting the media, choose to un-publish it instead for later re-use. Could be you keep seasonal images of the property.

boolean
category

Supported OTA specification PIC code. See OTA geoname data

string
""
descriptions

Localized media captions to give user some context about where this media was taken.

Array<object>
""
object
name
required

Use as title or short text description

string
""
description
required

Longer text description

string
"" >= 1 characters <= 2147483647 characters
language
required

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
md5ContentHash

The md5 hash of the name, description and language.

string
""
hashMismatch
boolean
lifestyleType

Associate this media with a specific lifestyle type. A user searching and filtering inventory based on lifestyles can be shown relevant media first.

string
""
Allowed values: LIFESTYLE_HEALTH_FITNESS LIFESTYLE_RELAX LIFESTYLE_ADULT_ONLY LIFESTYLE_ADVENTURE LIFESTYLE_BUSINESS LIFESTYLE_LGBT LIFESTYLE_SINGLE_PARENT LIFESTYLE_SOLO_FEMALE LIFESTYLE_BEAUTY LIFESTYLE_FOODIE LIFESTYLE_FAMILY LIFESTYLE_ROMANCE LIFESTYLE_COUPLE LIFESTYLE_SOLO LIFESTYLE_BACKPACKER LIFESTYLE_SHOPPING LIFESTYLE_SPORTS LIFESTYLE_MOUNTAIN LIFESTYLE_BEACH LIFESTYLE_CITY LIFESTYLE_COUNTRY LIFESTYLE_CULTURE LIFESTYLE_ECO
attribution

Whether image has attribution properties

Array<object>
""
object
url

URL to contributor

string
""
name
required

Name of contributor

string
"" >= 1 characters
isLandscape

True if media width is greater or equal to height

boolean
location
required

Location

object
x
number format: double
y
number format: double
type
string
coordinates
Array<number>
commissionable
required

Whether this is commissionable or not

boolean
lowestPrice

Best price of the room type or facility ancillary

object
amount
required
number
currency
required
string
>= 1 characters
lowestDisplayPrice

Best price of the room type or facility ancillary in platform currency

object
amount
required
number
currency
required
string
>= 1 characters
pricePoint
required

Level of expensiveness.

string
default: THREE
Allowed values: HALF ONE ONE_HALF TWO TWO_HALF THREE THREE_HALF FOUR FOUR_HALF FIVE
sort

Sort key

integer format: int32
""
status

Status

string
""
Allowed values: ACTIVE INACTIVE REMOVED
Example
null

Bad Request

object
type
string format: uri
title
string
status
integer format: int32
detail
string
instance
string format: uri
properties
object
key
additional properties
Example generated
{
"type": "https://example.com",
"title": "example",
"status": 1,
"detail": "example",
"instance": "https://example.com",
"properties": {
"additionalProperty": "example"
}
}

Unauthorized

Media type */*
object
type
string format: uri
title
string
status
integer format: int32
detail
string
instance
string format: uri
properties
object
key
additional properties

Forbidden

Media type */*
object
type
string format: uri
title
string
status
integer format: int32
detail
string
instance
string format: uri
properties
object
key
additional properties

Internal Server Error

object
Example generated
{}