Skip to content

Update

PUT
/api/managing-entity/{managingEntityIdentifier}/studio/grids/{listIdentifier}
curl --request PUT \
--url https://api.wink.travel/api/managing-entity/d5b8a3c2-9e6f-4a1b-8d34-7c2e1f0a5b69/studio/grids/3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51 \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'Wink-Version: 2.0' \
--data null

Updates the identified curated or saved-search grid owned by the managing entity with the values in the request body. Returns the updated grid.

managingEntityIdentifier
required
string
""

Managing entity identifier that owns the grid.

Example
d5b8a3c2-9e6f-4a1b-8d34-7c2e1f0a5b69
listIdentifier
required
string
""

Grid identifier to update.

Example
3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51
Wink-Version
string
default: 2.0.0
Allowed values: 2.0

Updated grid definition with revised name, display settings, or inventory/search configuration

Media typeapplication/json

Request payload for creating or updating a sellable list configuration, supplying all display, localization, and inventory settings

object
name
required

Descriptive name of this grid for seller use only

string
"" >= 1 characters
Example
Luxury Bangkok Properties
customizationIdentifier
required

Customization configuration identifier

string format: uuid
"" >= 1 characters
Example
3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51
descriptions
required

Localized title and description of grid (at least one entry in English required)

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

Use as title or short text description

string
""
Example
An example title
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
creator

Whether it was user or system generated.

string
default: USER
Allowed values: SYSTEM USER
Example
SYSTEM
md5ContentHash

The md5 hash of the name, description and language.

string
""
Example
d41d8cd98f00b204e9800998ecf8427e
hashMismatch
boolean
Example
{
"name": "Deluxe River View Suite",
"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",
"creator": "USER",
"md5ContentHash": "a3f1c8e2d74b60912a5c3e9b1d7f4e82"
}
keywords
required

Keywords and metadata tags for SEO and filtering

Array<string>
"" >= 1 items <= 2147483647 items
Example
[
"bangkok",
"luxury"
]
listType
required

Type of inventory being curated (LIST, SEARCH, CHANNEL)

string
""
Allowed values: SINGLE LIST SEARCH
Example
LIST
listIdentifier
required

Inventory record identifier for the curated list, saved search, or channel

string format: uuid
"" >= 1 characters
Example
8b1d6e0f-3a7c-4d2b-9e5a-1c8f0b4d6e29
animate

Generate an animated GIF from multiple images instead of a static grid (requires at least 2 images)

boolean
Example
false
animateDelay

Delay between animation frames in milliseconds; -1 disables animation

integer format: int32
default: -1
Example
500
sort

Badge type and sort order for display on web component (MEMBER, BEST_VALUE, TOP_RATED, etc.)

string
""
Allowed values: RECOMMENDED PRICE_LOW_TO_HIGH PRICE_HIGH_TO_LOW ECO MEMBER PRICE POPULARITY EXPERIENCE PERK LOYALTY ADD_ON
Example
MEMBER
displayType
required

Initial display format on the front-facing card (NATIVE or alternative format)

string
default: NATIVE
Allowed values: NATIVE HOTEL ROOM
Example
NATIVE
Example
{
"name": "Luxury Bangkok Properties",
"customizationIdentifier": "3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51",
"descriptions": [
{
"name": "Deluxe River View Suite",
"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",
"creator": "USER",
"md5ContentHash": "a3f1c8e2d74b60912a5c3e9b1d7f4e82"
}
],
"keywords": [
"bangkok",
"luxury"
],
"listType": "LIST",
"listIdentifier": "8b1d6e0f-3a7c-4d2b-9e5a-1c8f0b4d6e29",
"animate": false,
"animateDelay": 500,
"sort": "MEMBER",
"displayType": "NATIVE"
}

The curated or saved-search grid after applying the requested updates.

Media typeapplication/json

Lightweight projection of a sellable list used in listings and event payloads, containing all display and configuration fields without audit metadata

object
id

Unique identifier for this record.

string format: uuid
""
createdDate

Datetime this record was first created

string | null format: date-time
""
lastUpdate

Datetime this record was last updated

string | null format: date-time
""
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
""
sellerIdentifier
required

Managing entity (account owner) identifier

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

Descriptive name of this grid for seller use only

string
"" >= 1 characters
customizationIdentifier
required

Customization configuration identifier

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

Localized title and description of grid (at least one entry in English required)

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
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 /^[a-z]{2}(-[A-Z]{2})?$/
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
keywords
required

Keywords and metadata tags for SEO and filtering

Array<string>
"" >= 1 items <= 2147483647 items
status
required

Current status of the grid (ACTIVE, INACTIVE, ARCHIVED)

string
default: ACTIVE
Allowed values: ACTIVE INACTIVE REMOVED
listType
required

Type of inventory being curated (LIST, SEARCH, CHANNEL)

string
""
Allowed values: SINGLE LIST SEARCH
listIdentifier
required

Inventory record identifier for the curated list, saved search, or channel

string format: uuid
"" >= 1 characters
animate

Generate an animated GIF from multiple images instead of a static grid (requires at least 2 images)

boolean
animateDelay

Delay between animation frames in milliseconds; -1 disables animation

integer format: int32
default: -1
sort

Badge type and sort order for display on web component (MEMBER, BEST_VALUE, TOP_RATED, etc.)

string
""
Allowed values: RECOMMENDED PRICE_LOW_TO_HIGH PRICE_HIGH_TO_LOW ECO MEMBER PRICE POPULARITY EXPERIENCE PERK LOYALTY ADD_ON
displayType
required

Initial display format on the front-facing card (NATIVE or alternative format)

string
default: NATIVE
Allowed values: NATIVE HOTEL ROOM
key
additional properties
""
Example
{
"id": "b7e4c1a2-3f5d-4e8a-9c21-6f0b5d8e3a47",
"createdDate": "2026-01-14T09:30:00",
"lastUpdate": "2026-02-03T16:45:12",
"version": 3,
"sellerIdentifier": "d5b8a3c2-9e6f-4a1b-8d34-7c2e1f0a5b69",
"name": "Luxury Bangkok Properties",
"customizationIdentifier": "3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51",
"descriptions": [
{
"name": "Deluxe River View Suite",
"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",
"creator": "USER",
"md5ContentHash": "a3f1c8e2d74b60912a5c3e9b1d7f4e82"
}
],
"keywords": [
"bangkok",
"luxury"
],
"status": "ACTIVE",
"listType": "LIST",
"listIdentifier": "8b1d6e0f-3a7c-4d2b-9e5a-1c8f0b4d6e29",
"animate": false,
"animateDelay": 500,
"sort": "MEMBER",
"displayType": "NATIVE"
}

Bad Request — missing or invalid request parameter or body

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

Unauthorized — authentication is required or the session has expired

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

Forbidden — authenticated but lacking the required permission or scope

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

Not Found — the requested resource does not exist

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

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

Media typeapplication/problem+json
object
type
string format: uri
title
string
status
integer format: int32
detail
string
instance
string format: uri
properties
object
key
additional properties
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
type
string format: uri
title
string
status
integer format: int32
detail
string
instance
string format: uri
properties
object
key
additional properties
key
additional properties
""
Example

Unsupported Media Type — use application/json

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

Internal Server Error — an unexpected failure occurred on the server

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

Service Unavailable — a downstream dependency is unreachable

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