Skip to content

Search destinations

GET
/api/public/{managingEntityIdentifier}/search
curl --request GET \
--url 'https://api.wink.travel/api/public/d5b8a3c2-9e6f-4a1b-8d34-7c2e1f0a5b69/search?term=Bangkok' \
--header 'Authorization: Bearer <token>' \
--header 'Wink-Version: 2.0'

Returns matching hotels, cities, countries, and attractions for the given search term, filtered by the managing entity. Matches names beginning with the term, case-insensitively. The term must be at least 3 characters, and at most 50 suggestions are returned, ordered by name.

managingEntityIdentifier
required
string

Managing entity identifier (e.g., account or distribution channel ID)

Example
d5b8a3c2-9e6f-4a1b-8d34-7c2e1f0a5b69
term
required
string
>= 3 characters <= 2147483647 characters

Search term (e.g., city, hotel name, activity name). Matches names starting with the term; minimum 3 characters.

Example
Bangkok
Wink-Version
string
default: 2.0.0
Allowed values: 2.0

Up to 50 matching lookup entries, name-ascending (may be empty if no matches)

Media typeapplication/json
Array<object>

Lightweight representation of a lookup entry used for search auto-complete and inventory discovery

object
cityName

Name of the closest city where this lookup entry is located

string
countryCode

ISO 3166-1 alpha-2 country code

string
countryName

Country name where this lookup entry is located

string
createdDate

Datetime this record was first created

string | null format: date-time
id

Unique identifier for this record.

string format: uuid
languageCode

Language code for the lookup name (ISO 639-1 format)

string
lastUpdate

Datetime this record was last updated

string | null format: date-time
location
required

Geo-location

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

Human-readable name of the lookup entry

string
ownerName

Name of the owner (supplier) that created this lookup entry

string
subCountryName

State or province where this lookup entry is located

string
subSubCountryName

County or district where this lookup entry is located

string
type

Type of lookup (CITY, HOTEL, ACTIVITY, SPA, RESTAURANT, ATTRACTION, ISLAND, COUNTRY, PLACE, MEETING_ROOM)

string
Allowed values: CITY ISLAND HOTEL SPA MEETING_ROOM RESTAURANT ATTRACTION ACTIVITY PLACE COUNTRY
typeIdentifier

Unique identifier for the lookup type resource (e.g., hotel ID, city geoname ID)

string format: uuid
urlName

URL-friendly slug that uniquely identifies this lookup within its type and location

string
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
Example
[
{
"cityName": "Bangkok",
"countryCode": "TH",
"countryName": "Thailand",
"id": "b7e4c1a2-3f5d-4e8a-9c21-6f0b5d8e3a47",
"languageCode": "en",
"location": {
"coordinates": [
100.5581533,
13.7370197
],
"type": "Point"
},
"name": "The Siam Residences",
"ownerName": "The Siam Residences",
"subCountryName": "Bangkok",
"subSubCountryName": "Khlong San District",
"type": "HOTEL",
"typeIdentifier": "a1f3c9d2-7e4b-4a0c-8d5e-2b9f1a6c3e78",
"urlName": "the-siam-residences-bangkok-thailand"
}
]

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
Examplegenerated
{
"detail": "example",
"instance": "https://example.com",
"properties": {
"additionalProperty": "example"
},
"status": 1,
"title": "example",
"type": "https://example.com"
}

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
Examplegenerated
{
"detail": "example",
"instance": "https://example.com",
"properties": {
"additionalProperty": "example"
},
"status": 1,
"title": "example",
"type": "https://example.com"
}

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
Examplegenerated
{
"detail": "example",
"instance": "https://example.com",
"properties": {
"additionalProperty": "example"
},
"status": 1,
"title": "example",
"type": "https://example.com"
}

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
Examplegenerated
{
"detail": "example",
"instance": "https://example.com",
"properties": {
"additionalProperty": "example"
},
"status": 1,
"title": "example",
"type": "https://example.com"
}

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
Examplegenerated
{
"detail": "example",
"instance": "https://example.com",
"properties": {
"additionalProperty": "example"
},
"status": 1,
"title": "example",
"type": "https://example.com"
}

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
Examplegenerated
{
"detail": "example",
"instance": "https://example.com",
"properties": {
"additionalProperty": "example"
},
"status": 1,
"title": "example",
"type": "https://example.com"
}

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
Examplegenerated
{
"detail": "example",
"instance": "https://example.com",
"properties": {
"additionalProperty": "example"
},
"status": 1,
"title": "example",
"type": "https://example.com"
}

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
Examplegenerated
{
"detail": "example",
"instance": "https://example.com",
"properties": {
"additionalProperty": "example"
},
"status": 1,
"title": "example",
"type": "https://example.com"
}

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
Examplegenerated
{
"detail": "example",
"instance": "https://example.com",
"properties": {
"additionalProperty": "example"
},
"status": 1,
"title": "example",
"type": "https://example.com"
}