Patch activity distribution
const url = 'https://api.wink.travel/api/managing-entity/d5b8a3c2-9e6f-4a1b-8d34-7c2e1f0a5b69/extranet/experience/activity/3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51/distribution';const options = { method: 'PATCH', headers: { 'If-Match': '', 'Wink-Version': '2.0', Authorization: 'Bearer <token>', 'Content-Type': 'application/json' }, body: 'null'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://api.wink.travel/api/managing-entity/d5b8a3c2-9e6f-4a1b-8d34-7c2e1f0a5b69/extranet/experience/activity/3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51/distribution \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'If-Match: ' \ --header 'Wink-Version: 2.0' \ --data nullIncrementally updates only the distribution section (bookability, commission eligibility, price point, transactional inventory) of an activity. Draft-friendly. Send the activity’s current version as If-Match for optimistic concurrency. Requires INVENTORY:WRITE.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Property (managing entity) identifier — the activity must belong to this property.
Example
d5b8a3c2-9e6f-4a1b-8d34-7c2e1f0a5b69Activity identifier to patch.
Example
3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51Header Parameters
Section titled “Header Parameters”The activity’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 *.
Request Bodyrequired
Section titled “Request Bodyrequired”Distribution section.
Request payload for patching the distribution section of an activity.
object
Indicates if this activity can be added to a booking or if it is read-only marketing material only.
Example
trueIndicate whether sales channels receive commission for selling this activity.
Example
trueLevel of expensiveness.
Example
THREEPurchasable items for this activity.
This is one bookable item that can stand alongside a restaurant / meeting room etc.
object
Base price of booking this inventory.
object
Monetary amount value
Example
1250ISO 4217 currency code
Example
USDExample
{ "amount": 1250, "currency": "USD"}Localized descriptions describing inventory.
Foundation class for storing multi-language content (names and descriptions) with content change detection throughout the Wink Platform.
object
Whether it was user or system generated.
Example
SYSTEMLonger text description
Example
This is a longer description in the specified language.Indicate which language this description is written in.
Example
enThe md5 hash of the name, description and language.
Example
d41d8cd98f00b204e9800998ecf8427eUse as title or short text description
Example
An example titleExample
{ "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"}If you are selling this inventory at a discount, indicate the discounted selling price. Leave empty if there is no discount.
object
Monetary amount value
Example
1250ISO 4217 currency code
Example
USDExample
{ "amount": 1250, "currency": "USD"}Unique transactional identifier
Example
3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51Whether there is a limit to maximum group size.
Example
10Whether there is a limit to minimum group size.
Example
2List of images / videos of item.
Multimedia that contains less information than Multimedia object
object
Media angle
Example
-90Whether image has attribution properties
object
Name of contributor
Example
Samuel AdamsURL to contributor
Example
https://maps.google.com/maps/contrib/111628493169070103594Example
{ "name": "Samuel Adams", "url": "https://maps.google.com/maps/contrib/111628493169070103594"}Localized media captions to give user some context about where this media was taken.
Foundation class for storing multi-language content (names and descriptions) with content change detection throughout the Wink Platform.
object
Whether it was user or system generated.
Example
SYSTEMLonger text description
Example
This is a longer description in the specified language.Indicate which language this description is written in.
Example
enThe md5 hash of the name, description and language.
Example
d41d8cd98f00b204e9800998ecf8427eUse as title or short text description
Example
An example titleExample
{ "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"}Media height in pixels.
Example
1600Use this identifier to communicate with Cloudinary.
Example
cloudinary-image-1True if media width is greater or equal to height
Example
trueAssociate this media with a specific lifestyle type. A user searching and filtering inventory based on lifestyles can be shown relevant media first.
Example
LIFESTYLE_HEALTH_FITNESSDocument identifier
Example
3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51Instead of deleting the media, choose to un-publish it instead for later re-use. Could be you keep seasonal images of the property.
Example
trueSort allows you to control how you want to sort this record in a list of media records.
Example
10Currently ONLY using Cloudinary to store all image / video assets.
Example
CLOUDINARYWhether Cloudinary media is a VIDEO or IMAGE.
Example
IMAGEMedia width in pixels.
Example
2560Example
{ "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}Internal name of transactional blocking.
Example
1 hour sessionCalculates the percent difference between basePrice and discountedPrice.
Example
0.1Calculates the percent difference between basePrice and discountedPrice.
Example
0.1How this inventory item should be priced.
Example
PER_NIGHTExample
{ "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"}Example
{ "bookable": true, "commissionable": true, "pricePoint": "THREE", "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" } ]}Responses
Section titled “Responses”Activity distribution patched successfully.
Lightweight projection of an activity, used in search results and list responses, containing the core fields needed to display and book the activity.
object
Modify blocking availability with this flag.
Defaults to property address.
object
Address line 1
Address line 2
City name
Country
Country
County
Address 1, Address 2, City, State, Postal / Zip code, Country
Postal / zip code
State
Supported OTA specification REC code. See OTA geoname data.
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.
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.
Indicates if this inventory can be added to a booking or if it is read-only marketing material only.
Closing time of blocking (if applicable). Leave empty if blocking is always available.
Indicate whether sales channels receive commission for selling this inventory.
Associate a contact person for this inventory (if applicable).
object
Contact E-mail
Contact first name
First and last name
Contact last name
Contact phone number
Contact secondary Email
Summary
Datetime this record was first created
Indicate which days this inventory is open.
object
Convenience property to quickly determine if this existing object has any active days enabled.
Set to true to enable Friday.
Set to true to enable Monday.
Set to true to enable Saturday.
Set to true to enable Sunday.
Set to true to enable Thursday.
Set to true to enable Tuesday.
Set to true to enable Wednesday.
Localized descriptions describing inventory.
Foundation class for storing multi-language content (names and descriptions) with content change detection throughout the Wink Platform.
object
Whether it was user or system generated.
Longer text description
Indicate which language this description is written in.
The md5 hash of the name, description and language.
Use as title or short text description
Supported OTA specification PHY code. See OTA geoname data
Indicates whether this inventory is featured. Use this flag as a way to signify that this inventory is special.
Hotel identifier.
Unique identifier for this record.
Datetime this record was last updated
Indicate the type of lifestyle this inventory should be associated with.
Geo-location point where blocking takes place. Defaults to location of property.
object
Supported OTA specification AQC code. See OTA geoname data
List of images / videos of blocking.
Multimedia that contains less information than Multimedia object
object
Media angle
Whether image has attribution properties
object
Name of contributor
URL to contributor
Supported OTA specification PIC code. See OTA geoname data
Localized media captions to give user some context about where this media was taken.
Foundation class for storing multi-language content (names and descriptions) with content change detection throughout the Wink Platform.
object
Whether it was user or system generated.
Longer text description
Indicate which language this description is written in.
The md5 hash of the name, description and language.
Use as title or short text description
Media height in pixels.
Use this identifier to communicate with Cloudinary.
True if media width is greater or equal to height
Associate this media with a specific lifestyle type. A user searching and filtering inventory based on lifestyles can be shown relevant media first.
Document identifier
Instead of deleting the media, choose to un-publish it instead for later re-use. Could be you keep seasonal images of the property.
Sort allows you to control how you want to sort this record in a list of media records.
Currently ONLY using Cloudinary to store all image / video assets.
Whether Cloudinary media is a VIDEO or IMAGE.
Media width in pixels.
Internal name of inventory.
Opening time of blocking (if applicable). Leave empty if blocking is always available.
Level of expensiveness.
Supported OTA specification PRX code. See OTA geoname data
Publish lifecycle state: DRAFT (incomplete, not announced) or PUBLISHED (complete/live).
Inventory-level recognition.
Recognition for the ancillary blocking.
object
Recognition category.
The date the award was received
Recognition identifier.
Use this to let hotels indicate what the total score for this award is.
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.
The name of the entity that administers this recognition.
The actual award or rating received by the hotel facility.
Provides the symbol used in the rating. Used in conjunction with the Rating.
Type of rating system the recognition operated on. This allows us to display the score properly.
Supported OTA specification RST code. See OTA geoname data
Indicates whether a reservation is required to participate in this inventory.
Supported OTA specification SEC code. See OTA geoname data
Social network accounts for blocking (if applicable).
Social network
object
URL or social network identifier to social network profile
Type of social network.
Use this property to sort an blocking in a list of activities.
Purchasable items for this inventory.
This is one bookable item that can stand alongside a restaurant / meeting room etc.
object
Base price of booking this inventory.
object
Monetary amount value
ISO 4217 currency code
Localized descriptions describing inventory.
Foundation class for storing multi-language content (names and descriptions) with content change detection throughout the Wink Platform.
object
Whether it was user or system generated.
Longer text description
Indicate which language this description is written in.
The md5 hash of the name, description and language.
Use as title or short text description
If you are selling this inventory at a discount, indicate the discounted selling price. Leave empty if there is no discount.
object
Monetary amount value
ISO 4217 currency code
Unique transactional identifier
Whether there is a limit to maximum group size.
Whether there is a limit to minimum group size.
List of images / videos of item.
Multimedia that contains less information than Multimedia object
object
Media angle
Whether image has attribution properties
object
Name of contributor
URL to contributor
Supported OTA specification PIC code. See OTA geoname data
Localized media captions to give user some context about where this media was taken.
Foundation class for storing multi-language content (names and descriptions) with content change detection throughout the Wink Platform.
object
Whether it was user or system generated.
Longer text description
Indicate which language this description is written in.
The md5 hash of the name, description and language.
Use as title or short text description
Media height in pixels.
Use this identifier to communicate with Cloudinary.
True if media width is greater or equal to height
Associate this media with a specific lifestyle type. A user searching and filtering inventory based on lifestyles can be shown relevant media first.
Document identifier
Instead of deleting the media, choose to un-publish it instead for later re-use. Could be you keep seasonal images of the property.
Sort allows you to control how you want to sort this record in a list of media records.
Currently ONLY using Cloudinary to store all image / video assets.
Whether Cloudinary media is a VIDEO or IMAGE.
Media width in pixels.
Internal name of transactional blocking.
Calculates the percent difference between basePrice and discountedPrice.
Calculates the percent difference between basePrice and discountedPrice.
How this inventory item should be priced.
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.
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": { "firstName": "Alexandra", "fullName": "Alexandra Beaumont", "lastName": "Beaumont", "phoneNumber": "+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" } ], "recreationCategoryCode": "01", "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
object
object
Example
Unauthorized — authentication is required or the session has expired
object
object
Example
Forbidden — authenticated but lacking the required permission or scope
object
object
Example
Not Found — the requested resource does not exist
object
object
Example
Method Not Allowed — the HTTP verb is not supported on this endpoint
object
object
Example
Conflict — the resource was modified by someone else since you read it; re-read it and retry with the new version
object
object
Example
Unsupported Media Type — use application/json
object
object
Example
Internal Server Error — an unexpected failure occurred on the server
object
object
Example
Service Unavailable — a downstream dependency is unreachable
