Leaderboard by region
const url = 'https://api.wink.travel/api/analytics/leaderboard/list';const options = { method: 'POST', headers: { '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 POST \ --url https://api.wink.travel/api/analytics/leaderboard/list \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --header 'Wink-Version: 2.0' \ --data nullReturn a paged sales leaderboard scoped to a geographic level such as continent, country or city.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Header Parameters
Section titled “Header Parameters”Request Bodyrequired
Section titled “Request Bodyrequired”Leaderboard filter criteria including geographic scope (continent, country or city), pagination and sort settings
Request parameters for retrieving a paginated booking leaderboard, filtered by currency and geographic grouping.
object
Display leaderboard values in this currency
Example
USDCan be continent, country.geoNameId or city.geoNameId
Example
654321Which page to access in the record set
Example
0Number of result set to retrieve
Example
20The type of leaderboard to display
Example
GLOBALExample
{ "currencyCode": "USD", "groupingIdentifier": "654321", "page": 0, "size": 20, "type": "GLOBAL"}Responses
Section titled “Responses”Paginated leaderboard entries for the requested region. Pagination metadata (total, page, size) is in the Page wrapper.
Owned pagination envelope: a page of content plus flat page metadata.
object
The elements on this page.
A single entry on the booking leaderboard, representing a managing entity’s booking performance including volume and revenue metrics.
object
Average booking value in the display currency.
Total number of bookings for this entity.
City of the managing entity.
GeoName ID for the city.
Continent of the managing entity.
Country of the managing entity.
GeoName ID for the country.
Currency code for the monetary amounts.
Unique identifier of the managing entity (owner) on the leaderboard.
Display name of the managing entity.
Total revenue from bookings in the display currency.
Whether this is the first page.
Whether this is the last page.
Zero-based index of this page.
Number of elements on this page.
The requested page size.
Total number of elements across all pages.
Total number of pages for the current page size.
Example
{ "content": [ { "averageBookingAmount": 1500, "bookings": 42, "city": "Bangkok", "cityGeoNameId": "1609350", "continent": "Asia", "country": "Thailand", "countryGeoNameId": "1605651", "currencyCode": "THB", "ownerIdentifier": "3c6b1a5d-8e2f-4a0b-9c7d-6e4f0a8b2c51", "ownerName": "The Siam Residences", "totalPriceAmount": 63000 } ], "first": true, "last": false, "number": 0, "numberOfElements": 20, "size": 20, "totalElements": 1234, "totalPages": 62}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
