Skip to content

Patch place descriptions

PATCH
/api/managing-entity/{managingEntityIdentifier}/extranet/experience/place/{placeIdentifier}/descriptions
curl --request PATCH \
--url https://api.wink.travel/api/managing-entity/e2c7b4d3-1a8f-4e9c-b5d6-3a9f0e7c2b18/extranet/experience/place/3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51/descriptions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'If-Match: ' \
--header 'Wink-Version: 2.0' \
--data null

Incrementally updates only the localized descriptions section of a place. Draft-friendly; promotes a DRAFT to PUBLISHED once the place becomes complete. Send the place’s current version as If-Match for optimistic concurrency. Requires INVENTORY:WRITE.

managingEntityIdentifier
required
string format: uuid
""

Property (managing entity) identifier — the place must belong to this property.

Example
e2c7b4d3-1a8f-4e9c-b5d6-3a9f0e7c2b18
placeIdentifier
required
string format: uuid
""

Place identifier to patch.

Example
3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51
If-Match
string
""

The place’s last-seen version, for optimistic concurrency. Optional; a stale value is rejected with 409. Accepts a bare version (3), a quoted entity-tag (“3”), W/“3”, or *.

Wink-Version
string
default: 2.0.0
Allowed values: 2.0

Descriptions section: the localized descriptions list.

Media typeapplication/json

Request payload for patching the localized descriptions section of a place.

object
descriptions

Localized descriptions for the place.

Array<object>
""
object
description
required

Longer text description

string
"" >= 1 characters <= 2147483647 characters
Example
This is a longer description in the specified language.
language
required

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters /^[a-z]{2}(-[A-Z]{2})?$/
Example
en
name
required

Use as title or short text description

string
""
Example
An example title
Example
{
"description": "This is a longer description in the specified language.",
"language": "en",
"name": "An example title"
}
Example
{
"descriptions": [
{
"description": "This is a longer description in the specified language.",
"language": "en",
"name": "An example title"
}
]
}

Place descriptions patched successfully.

Media typeapplication/json

Lightweight projection of a Place, suitable for list views and search results without full detail payload.

object
active
required

Modify blocking availability with this flag.

boolean
default: true
address
required

Defaults to property address.

object
address1

Address line 1

string
""
address2

Address line 2

string
""
city

City name

string
""
country

Country

string
""
countryCode

Country

string
"" /^[A-Z]{2}$/
county

County

string
""
fullAddress

Address 1, Address 2, City, State, Postal / Zip code, Country

string
""
postalCode

Postal / zip code

string
""
state

State

string
""
applicableEnd

End month and day or date for which the attraction (e.g. the start of a season) is available. This date property signifies that the blocking is recurring and / or seasonal. If the date is in the past, only day and month will be used to infer seasonality. If the date is a future date, it will be interpreted as a ending date.

string format: date
""
applicableStart

Start month and day or date for which the attraction (e.g. the start of a season) is available. This date property signifies that the blocking is recurring and / or seasonal. If the date is in the past, only day and month will be used to infer seasonality. If the date is a future date, it will be interpreted as a starting date.

string format: date
""
bookable
required

Indicates if this inventory can be added to a booking or if it is read-only marketing material only.

boolean
default: true
closes

Closing time of blocking (if applicable). Leave empty if blocking is always available.

string
""
commissionable
required

Indicate whether sales channels receive commission for selling this inventory.

boolean
default: true
contact
required

Associate a contact person for this inventory (if applicable).

object
email

Contact E-mail

string format: email
""
firstName

Contact first name

string
""
fullName

First and last name

string
""
lastName

Contact last name

string
""
phoneNumber

Contact phone number

string
"" /^\+?[1-9]\d{1,14}$/
secondaryEmail

Contact secondary Email

string format: email
""
summary

Summary

string
""
createdDate

Datetime this record was first created

string | null format: date-time
""
daysOfWeek

Indicate which days this inventory is open.

object
disabled

Convenience property to quickly determine if this existing object has any active days enabled.

boolean
fri

Set to true to enable Friday.

boolean
mon

Set to true to enable Monday.

boolean
sat

Set to true to enable Saturday.

boolean
sun

Set to true to enable Sunday.

boolean
thu

Set to true to enable Thursday.

boolean
tue

Set to true to enable Tuesday.

boolean
wed

Set to true to enable Wednesday.

boolean
descriptions
required

Localized descriptions describing inventory.

Array<object>
>= 1 items

Foundation class for storing multi-language content (names and descriptions) with content change detection throughout the Wink Platform.

object
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
description
required

Longer text description

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

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters /^[a-z]{2}(-[A-Z]{2})?$/
md5ContentHash

The md5 hash of the name, description and language.

string
""
name
required

Use as title or short text description

string
""
disabilityFeatures

Supported OTA specification PHY code. See OTA geoname data

Array<string>
featuredInd
required

Indicates whether this inventory is featured. Use this flag as a way to signify that this inventory is special.

boolean
hotelIdentifier
required

Hotel identifier.

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

Unique identifier for this record.

string format: uuid
"" >= 1 characters
lastUpdate

Datetime this record was last updated

string | null format: date-time
""
lifestyleType

Indicate the type of lifestyle this inventory should be associated with.

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
location
required

Geo-location point where blocking takes place. Defaults to location of property.

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

Supported OTA specification AQC code. See OTA geoname data

string
""
multimedias
required

List of images / videos of blocking.

Array<object>
>= 1 items

Multimedia that contains less information than Multimedia object

object
angle

Media angle

string
""
attribution

Whether image has attribution properties

Array<object>
""
object
name
required

Name of contributor

string
"" >= 1 characters
url

URL to contributor

string format: uri
""
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>
""

Foundation class for storing multi-language content (names and descriptions) with content change detection throughout the Wink Platform.

object
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
description
required

Longer text description

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

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters /^[a-z]{2}(-[A-Z]{2})?$/
md5ContentHash

The md5 hash of the name, description and language.

string
""
name
required

Use as title or short text description

string
""
height
required

Media height in pixels.

integer format: int32
"" >= 1
identifier
required

Use this identifier to communicate with Cloudinary.

string
"" >= 1 characters
isLandscape

True if media width is greater or equal to height

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
multimediaIdentifier
required

Document identifier

string format: uuid
"" >= 1 characters
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
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
source
required

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

string
default: CLOUDINARY
Allowed values: YOUTUBE CLOUDINARY
type
required

Whether Cloudinary media is a VIDEO or IMAGE.

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

Media width in pixels.

integer format: int32
"" >= 1
name
required

Internal name of inventory.

string
"" >= 1 characters
opens

Opening time of blocking (if applicable). Leave empty if blocking is always available.

string
""
pricePoint
required

Level of expensiveness.

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

Supported OTA specification PRX code. See OTA geoname data

string
""
publishStatus

Publish lifecycle state: DRAFT (incomplete, not announced) or PUBLISHED (complete/live).

string
""
Allowed values: DRAFT PUBLISHED
recognitionList

Inventory-level recognition.

Array<object>

Recognition for the ancillary blocking.

object
category
required

Recognition category.

string
""
Allowed values: THIRD_PARTY_REVIEW PUBLICATION AWARD
date

The date the award was received

string format: date
""
identifier
required

Recognition identifier.

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

Use this to let hotels indicate what the total score for this award is.

number format: float
""
officialAppointmentInd

When true, this indicates the property has received official permission from the award provider to use the rating in publications and marketing materials; when false this permission has not been granted.

boolean
provider
required

The name of the entity that administers this recognition.

string
"" >= 1 characters
rating
required

The actual award or rating received by the hotel facility.

number format: float
""
ratingSymbol

Provides the symbol used in the rating. Used in conjunction with the Rating.

string
""
type
required

Type of rating system the recognition operated on. This allows us to display the score properly.

string
""
Allowed values: STAR_RATING NUMERIC_RATING PERCENT_RATING
refPointCategoryCode
required

Supported OTA specification REF code. See OTA geoname data.

string
""
reservationRequiredInd

Indicates whether a reservation is required to participate in this inventory.

boolean
securityFeatures

Supported OTA specification SEC code. See OTA geoname data

Array<string>
socials

Social network accounts for blocking (if applicable).

Array<object>

Social network

object
location

URL or social network identifier to social network profile

string
""
type

Type of social network.

string
""
Allowed values: FACEBOOK INSTAGRAM SKYPE TRIP_ADVISOR TWITTER GOOGLE_PLUS WHATSAPP LINE WECHAT VIBER SNAPCHAT WEIBO RENREN WEBSITE QQ TIKTOK
sort

Use this property to sort an blocking in a list of activities.

integer format: int32
""
transactionalInventoryList

Purchasable items for this inventory.

Array<object>

This is one bookable item that can stand alongside a restaurant / meeting room etc.

object
basePrice
required

Base price of booking this inventory.

object
amount
required

Monetary amount value

number
""
currency
required

ISO 4217 currency code

string
"" >= 1 characters /^[A-Z]{3}$/
descriptions
required

Localized descriptions describing inventory.

Array<object>
>= 1 items <= 2147483647 items

Foundation class for storing multi-language content (names and descriptions) with content change detection throughout the Wink Platform.

object
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
description
required

Longer text description

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

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters /^[a-z]{2}(-[A-Z]{2})?$/
md5ContentHash

The md5 hash of the name, description and language.

string
""
name
required

Use as title or short text description

string
""
discountedPrice
required

If you are selling this inventory at a discount, indicate the discounted selling price. Leave empty if there is no discount.

object
amount
required

Monetary amount value

number
""
currency
required

ISO 4217 currency code

string
"" >= 1 characters /^[A-Z]{3}$/
identifier
required

Unique transactional identifier

string format: uuid
"" >= 1 characters
maxPax

Whether there is a limit to maximum group size.

integer format: int32
""
minPax

Whether there is a limit to minimum group size.

integer format: int32
""
multimedias

List of images / videos of item.

Array<object>

Multimedia that contains less information than Multimedia object

object
angle

Media angle

string
""
attribution

Whether image has attribution properties

Array<object>
""
object
name
required

Name of contributor

string
"" >= 1 characters
url

URL to contributor

string format: uri
""
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>
""

Foundation class for storing multi-language content (names and descriptions) with content change detection throughout the Wink Platform.

object
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
description
required

Longer text description

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

Indicate which language this description is written in.

string
default: en >= 2 characters <= 2 characters /^[a-z]{2}(-[A-Z]{2})?$/
md5ContentHash

The md5 hash of the name, description and language.

string
""
name
required

Use as title or short text description

string
""
height
required

Media height in pixels.

integer format: int32
"" >= 1
identifier
required

Use this identifier to communicate with Cloudinary.

string
"" >= 1 characters
isLandscape

True if media width is greater or equal to height

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
multimediaIdentifier
required

Document identifier

string format: uuid
"" >= 1 characters
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
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
source
required

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

string
default: CLOUDINARY
Allowed values: YOUTUBE CLOUDINARY
type
required

Whether Cloudinary media is a VIDEO or IMAGE.

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

Media width in pixels.

integer format: int32
"" >= 1
name
required

Internal name of transactional blocking.

string
"" >= 1 characters
percentDiscount

Calculates the percent difference between basePrice and discountedPrice.

number
""
percentPremium

Calculates the percent difference between basePrice and discountedPrice.

number
""
pricingType
required

How this inventory item should be priced.

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
version

Optimistic-locking version. Echo this value back as an If-Match request header on a conditional update; the server responds 409 if the record changed in the meantime. Null when this projection has no backing versioned document, in which case no conditional update is possible.

integer | null format: int64
""
key
additional properties
""
Example
{
"active": true,
"address": {
"address1": "234 Near da beach",
"address2": "Pebble #5001",
"city": "Bangkok",
"country": "United States",
"countryCode": "TH",
"county": "Alameda county",
"fullAddress": "11 At home, Suite 3C, New York City, NY 10010, United States",
"postalCode": "90210",
"state": "CA"
},
"applicableEnd": "1970-12-1",
"applicableStart": "1970-1-1",
"bookable": true,
"closes": "17:30",
"commissionable": true,
"contact": {
"email": "[email protected]",
"firstName": "Alexandra",
"fullName": "Alexandra Beaumont",
"lastName": "Beaumont",
"phoneNumber": "+12125551212",
"secondaryEmail": "[email protected]",
"summary": "John Smith ([email protected] / +12125551212)"
},
"createdDate": "2026-01-14T09:30:00",
"daysOfWeek": {
"disabled": true,
"fri": true,
"mon": true,
"sat": true,
"sun": true,
"thu": true,
"tue": true,
"wed": true
},
"descriptions": [
{
"creator": "USER",
"description": "Spacious suite with floor-to-ceiling windows overlooking the Chao Phraya River, featuring a king-size bed, private balcony, and marble bathroom.",
"language": "en",
"md5ContentHash": "a3f1c8e2d74b60912a5c3e9b1d7f4e82",
"name": "Deluxe River View Suite"
}
],
"featuredInd": false,
"hotelIdentifier": "e2c7b4d3-1a8f-4e9c-b5d6-3a9f0e7c2b18",
"id": "b7e4c1a2-3f5d-4e8a-9c21-6f0b5d8e3a47",
"lastUpdate": "2026-02-03T16:45:12",
"lifestyleType": "LIFESTYLE_HEALTH_FITNESS",
"location": {
"coordinates": [
100.5581533,
13.7370197
],
"type": "POINT"
},
"minAgeAppropriateCode": "1",
"multimedias": [
{
"angle": null,
"attribution": [],
"category": "2",
"descriptions": [
{
"description": "Elegant lobby of The Siam Residences",
"language": "en",
"title": "Lobby Entrance"
}
],
"height": 1600,
"identifier": "the-siam-residences/lobby-entrance",
"isLandscape": true,
"lifestyleType": null,
"multimediaIdentifier": "3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51",
"published": true,
"sort": 10,
"source": "CLOUDINARY",
"type": "IMAGE",
"width": 2560
}
],
"name": "Archery lesson",
"opens": "09:00",
"pricePoint": "THREE",
"proximityCode": "1",
"publishStatus": "PUBLISHED",
"recognitionList": [
{
"category": "AWARD",
"date": "2026-01-14",
"identifier": "3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51",
"maxRating": 10,
"officialAppointmentInd": true,
"provider": "Michelin",
"rating": 8.5,
"ratingSymbol": "*",
"type": "PERCENT_RATING"
}
],
"refPointCategoryCode": "16",
"reservationRequiredInd": false,
"socials": [
{
"location": "https://www.instagram.com/thesiamresidences",
"type": "INSTAGRAM"
}
],
"sort": 1,
"transactionalInventoryList": [
{
"basePrice": {
"amount": 1250,
"currency": "USD"
},
"descriptions": [
{
"creator": "USER",
"description": "Spacious suite with floor-to-ceiling windows overlooking the Chao Phraya River, featuring a king-size bed, private balcony, and marble bathroom.",
"language": "en",
"md5ContentHash": "a3f1c8e2d74b60912a5c3e9b1d7f4e82",
"name": "Deluxe River View Suite"
}
],
"discountedPrice": {
"amount": 1250,
"currency": "USD"
},
"identifier": "3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51",
"maxPax": 10,
"minPax": 2,
"multimedias": [
{
"angle": null,
"attribution": [],
"category": "2",
"descriptions": [
{
"description": "Elegant lobby of The Siam Residences",
"language": "en",
"title": "Lobby Entrance"
}
],
"height": 1600,
"identifier": "the-siam-residences/lobby-entrance",
"isLandscape": true,
"lifestyleType": null,
"multimediaIdentifier": "3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51",
"published": true,
"sort": 10,
"source": "CLOUDINARY",
"type": "IMAGE",
"width": 2560
}
],
"name": "1 hour session",
"percentDiscount": 0.1,
"percentPremium": 0.1,
"pricingType": "PER_NIGHT"
}
],
"version": 3
}

Bad Request — missing or invalid request parameter or body

Media typeapplication/problem+json
object
detail
string
instance
string format: uri
properties
object
key
additional properties
status
integer format: int32
title
string
type
string format: uri
key
additional properties
""
Example

Unauthorized — authentication is required or the session has expired

Media typeapplication/problem+json
object
detail
string
instance
string format: uri
properties
object
key
additional properties
status
integer format: int32
title
string
type
string format: uri
key
additional properties
""
Example

Forbidden — authenticated but lacking the required permission or scope

Media typeapplication/problem+json
object
detail
string
instance
string format: uri
properties
object
key
additional properties
status
integer format: int32
title
string
type
string format: uri
key
additional properties
""
Example

Not Found — the requested resource does not exist

Media typeapplication/problem+json
object
detail
string
instance
string format: uri
properties
object
key
additional properties
status
integer format: int32
title
string
type
string format: uri
key
additional properties
""
Example

Method Not Allowed — the HTTP verb is not supported on this endpoint

Media typeapplication/problem+json
object
detail
string
instance
string format: uri
properties
object
key
additional properties
status
integer format: int32
title
string
type
string format: uri
key
additional properties
""
Example

Conflict — the resource was modified by someone else since you read it; re-read it and retry with the new version

Media typeapplication/problem+json
object
detail
string
instance
string format: uri
properties
object
key
additional properties
status
integer format: int32
title
string
type
string format: uri
key
additional properties
""
Example

Unsupported Media Type — use application/json

Media typeapplication/problem+json
object
detail
string
instance
string format: uri
properties
object
key
additional properties
status
integer format: int32
title
string
type
string format: uri
key
additional properties
""
Example

Internal Server Error — an unexpected failure occurred on the server

Media typeapplication/problem+json
object
detail
string
instance
string format: uri
properties
object
key
additional properties
status
integer format: int32
title
string
type
string format: uri
key
additional properties
""
Example

Service Unavailable — a downstream dependency is unreachable

Media typeapplication/problem+json
object
detail
string
instance
string format: uri
properties
object
key
additional properties
status
integer format: int32
title
string
type
string format: uri
key
additional properties
""
Example