Skip to content

ListAccounts

POST
/wink.partner.v1.Accounts/ListAccounts
curl --request POST \
--url https://example.com/wink.partner.v1.Accounts/ListAccounts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "imageFormat": "example" }'

List the accounts you can act for

Returns every account you can actually operate on — you are its owner, or your membership has been accepted. This is the normal starting point for an integration: call it once at start-up, keep the account_id values you care about, and send them as the managing-entity-id header on your other calls. Every identifier returned here is one your token can genuinely use.

An account you have merely been INVITED to and have not accepted does not appear, and neither does a removed one. Both would otherwise be handed to you here and then rejected with PERMISSION_DENIED by every call you made with them.

The response is scoped entirely by your token; there is nothing to pass. An empty list means your token reaches no account yet, not that something went wrong.

At most 200 accounts come back. If you hold more, truncated is true and you should switch to SearchAccounts, which pages. The list is never silently cut off without that flag being set.

Free: this call is not metered.

Media typeapplication/json

Request for ListAccounts.

Which accounts come back is scoped by your token alone; there is nothing to filter on. The only field here shapes how the accounts’ logos are DELIVERED, not which ones you get.

object
imageFormat

IANA media type for image delivery URLs: image/jpeg (the default), image/png, image/webp, or image/* to let the CDN negotiate per client from its Accept header. Empty means image/jpeg.

An unrecognised value is rejected with INVALID_ARGUMENT rather than quietly falling back, so a typo like “image/jpg” (not a media type) fails loudly instead of serving you JPEG while you believe you asked for something else. Whatever is served is echoed back on MediaUrlVariant.format.

string
Examplegenerated
{
"imageFormat": "example"
}

The RPC completed with gRPC status OK.

Media typeapplication/json
object
accounts

The accounts you can act for, up to 200. May be empty.

Array<object>

One Wink account — the business entity that owns properties, receives payouts and controls team access.

This is an identity projection: enough to recognise an account, route a call to it and render it in a picker. It deliberately carries no banking, payout or team-roster detail.

object
accountId

Stable identifier for this account. Send it as the managing-entity-id metadata header on every other call in this API.

string
ownerUserId

Identifier of the user who owns this account.

string
provisionedById

Identifier of the application that provisioned this account — normally Wink itself.

string
ownerType

Whether the account is held by a company or by an individual.

string
Allowed values: ACCOUNT_OWNER_TYPE_UNSPECIFIED ACCOUNT_OWNER_TYPE_COMPANY ACCOUNT_OWNER_TYPE_INDIVIDUAL
type

What kind of business this account is.

string
Allowed values: ACCOUNT_TYPE_UNSPECIFIED ACCOUNT_TYPE_PROPERTY ACCOUNT_TYPE_APPLICATION ACCOUNT_TYPE_TRAVEL_AGENT ACCOUNT_TYPE_CORPORATE ACCOUNT_TYPE_INFLUENCER ACCOUNT_TYPE_BLOGGER ACCOUNT_TYPE_DESTINATION ACCOUNT_TYPE_CHANNEL_MANAGER ACCOUNT_TYPE_PROPERTY_MANAGEMENT_SYSTEM ACCOUNT_TYPE_CENTRAL_RESERVATION_SYSTEM ACCOUNT_TYPE_GOOGLE_HOTEL_API ACCOUNT_TYPE_MANAGEMENT_COMPANY ACCOUNT_TYPE_CHAIN ACCOUNT_TYPE_BRAND ACCOUNT_TYPE_EVENT_ORGANIZER ACCOUNT_TYPE_FACILITATOR ACCOUNT_TYPE_DIRECT ACCOUNT_TYPE_OTHER
name

Display name.

string
legalName

Registered legal name, when it differs from the display name.

string
urlName

URL-friendly slug identifying the account in public profiles and links, e.g. the-siam-residences-bangkok.

string
uniqueId

Short human-friendly identifier, used where a UUID would be unwieldy.

string
status

Where the account sits in its lifecycle. Only ACCOUNT_STATUS_ACTIVE accounts transact.

string
Allowed values: ACCOUNT_STATUS_UNSPECIFIED ACCOUNT_STATUS_PENDING_APPROVAL ACCOUNT_STATUS_ACTIVE ACCOUNT_STATUS_INACTIVE ACCOUNT_STATUS_UNDER_REVIEW ACCOUNT_STATUS_SUSPENDED ACCOUNT_STATUS_REJECTED ACCOUNT_STATUS_REMOVED
currencyCode

ISO 4217 currency the account accounts and settles in, e.g. “THB”.

string
description

Short description of the business.

string
url

Primary website or social URL.

string
address

Business address.

object
address1

Street line 1.

string
address2

Street line 2, when the property supplies one.

string
state

State, province or region.

string
postalCode

Postal or ZIP code.

string
city

City name.

string
countryCode

ISO 3166-1 alpha-2 country code, e.g. “TH”.

string
country

Country name in the requested language.

string
fullAddress

The full address pre-formatted for display, newline-free.

string
city

City the account is registered in.

object
geoNameId

Wink’s identifier for this city.

string
name

City name.

string
urlName

URL slug, e.g. bangkok-thailand. Accepted by Lookup’s Get with DESTINATION_TYPE_CITY.

string
countryCode

ISO 3166-1 alpha-2 country code, e.g. “TH”.

string
logo

The account’s logo, when it has published one.

object
mediaId

Stable identifier for this asset. Use this as your cache key.

string
entityId

Identifier of the inventory item this asset belongs to (the property, a guest room, and so on). Named entity_id rather than identifier to match the *_id convention the rest of this surface uses, and because “identifier” said nothing about WHOSE identifier it is.

string
kind

MEDIA_TYPE_IMAGE or MEDIA_TYPE_VIDEO.

string
Allowed values: MULTIMEDIA_KIND_UNSPECIFIED MULTIMEDIA_KIND_IMAGE MULTIMEDIA_KIND_VIDEO
source

Where the asset came from, e.g. the property’s own upload or a syndicated source.

string
sort

Display order within its gallery, ascending.

integer format: int32
angle

Camera angle or shot description, when the property supplied one.

string
width

Intrinsic width in pixels.

integer format: int32
height

Intrinsic height in pixels.

integer format: int32
descriptions

Localized captions.

Array<object>

A short piece of localized text.

The API returns descriptions already filtered to the language on your request, so you will normally see exactly one entry per collection. language_code is still present so you can tell which language you got when the requested one was unavailable and the property’s default was substituted.

object
name

Short label for this description.

string
description

The description body.

string
languageCode

ISO 639-1 language code of name and description.

string
lifestyleType

The lifestyle this asset is meant to illustrate, when tagged.

string
Allowed values: LIFESTYLE_TYPE_UNSPECIFIED LIFESTYLE_TYPE_HEALTH_FITNESS LIFESTYLE_TYPE_RELAX LIFESTYLE_TYPE_ADULT_ONLY LIFESTYLE_TYPE_ADVENTURE LIFESTYLE_TYPE_BUSINESS LIFESTYLE_TYPE_LGBT LIFESTYLE_TYPE_SINGLE_PARENT LIFESTYLE_TYPE_SOLO_FEMALE LIFESTYLE_TYPE_BEAUTY LIFESTYLE_TYPE_FOODIE LIFESTYLE_TYPE_FAMILY LIFESTYLE_TYPE_ROMANCE LIFESTYLE_TYPE_COUPLE LIFESTYLE_TYPE_SOLO LIFESTYLE_TYPE_BACKPACKER LIFESTYLE_TYPE_SHOPPING LIFESTYLE_TYPE_SPORTS LIFESTYLE_TYPE_MOUNTAIN LIFESTYLE_TYPE_BEACH LIFESTYLE_TYPE_CITY LIFESTYLE_TYPE_COUNTRY LIFESTYLE_TYPE_CULTURE LIFESTYLE_TYPE_ECO
urls

Ready-to-use delivery URLs, one per variant. Which variants are populated depends on whether the asset is an image, a Cloudinary video or an externally-hosted one — see MediaUrlSet.

object
original

MULTIMEDIA_KIND_IMAGE only: unscaled, best-quality delivery URL.

object
url

Ready-to-use delivery URL for this variant.

string
maxWidth

Maximum pixel width this variant is scaled to. Unset for variants with no resize (image “original”, video “stream”) — explicit presence so “not resized” is distinguishable from a literal 0px width.

integer format: int32
format

The IANA media type this URL returns: one of image/jpeg, image/png, image/webp, image/* or video/mp4, video/webm. Feed it straight to a Content-Type header or use it to pick a decoder.

This ECHOES what was served, so it reflects the image_format and video_format you sent on the request. Send neither and images are image/jpeg and video is video/mp4.

image/* is the one value that is not a concrete type: it means the CDN negotiates per client from the Accept header, so the same URL returns WebP, AVIF or JPEG to different callers. It is only ever returned if you asked for it. Everything else is deterministic — the same URL returns the same bytes to every client, which is what makes it safe to cache and re-serve.

string
large

MULTIMEDIA_KIND_IMAGE only: large variant, max width 1920px.

object
url

Ready-to-use delivery URL for this variant.

string
maxWidth

Maximum pixel width this variant is scaled to. Unset for variants with no resize (image “original”, video “stream”) — explicit presence so “not resized” is distinguishable from a literal 0px width.

integer format: int32
format

The IANA media type this URL returns: one of image/jpeg, image/png, image/webp, image/* or video/mp4, video/webm. Feed it straight to a Content-Type header or use it to pick a decoder.

This ECHOES what was served, so it reflects the image_format and video_format you sent on the request. Send neither and images are image/jpeg and video is video/mp4.

image/* is the one value that is not a concrete type: it means the CDN negotiates per client from the Accept header, so the same URL returns WebP, AVIF or JPEG to different callers. It is only ever returned if you asked for it. Everything else is deterministic — the same URL returns the same bytes to every client, which is what makes it safe to cache and re-serve.

string
medium

MULTIMEDIA_KIND_IMAGE only: medium variant, max width 1024px.

object
url

Ready-to-use delivery URL for this variant.

string
maxWidth

Maximum pixel width this variant is scaled to. Unset for variants with no resize (image “original”, video “stream”) — explicit presence so “not resized” is distinguishable from a literal 0px width.

integer format: int32
format

The IANA media type this URL returns: one of image/jpeg, image/png, image/webp, image/* or video/mp4, video/webm. Feed it straight to a Content-Type header or use it to pick a decoder.

This ECHOES what was served, so it reflects the image_format and video_format you sent on the request. Send neither and images are image/jpeg and video is video/mp4.

image/* is the one value that is not a concrete type: it means the CDN negotiates per client from the Accept header, so the same URL returns WebP, AVIF or JPEG to different callers. It is only ever returned if you asked for it. Everything else is deterministic — the same URL returns the same bytes to every client, which is what makes it safe to cache and re-serve.

string
thumbnail

MULTIMEDIA_KIND_IMAGE or MULTIMEDIA_KIND_VIDEO (Cloudinary): thumbnail variant, max width 320px. For video this is a still frame extracted from the video, so its format is an image type and follows image_format, not video_format.

object
url

Ready-to-use delivery URL for this variant.

string
maxWidth

Maximum pixel width this variant is scaled to. Unset for variants with no resize (image “original”, video “stream”) — explicit presence so “not resized” is distinguishable from a literal 0px width.

integer format: int32
format

The IANA media type this URL returns: one of image/jpeg, image/png, image/webp, image/* or video/mp4, video/webm. Feed it straight to a Content-Type header or use it to pick a decoder.

This ECHOES what was served, so it reflects the image_format and video_format you sent on the request. Send neither and images are image/jpeg and video is video/mp4.

image/* is the one value that is not a concrete type: it means the CDN negotiates per client from the Accept header, so the same URL returns WebP, AVIF or JPEG to different callers. It is only ever returned if you asked for it. Everything else is deterministic — the same URL returns the same bytes to every client, which is what makes it safe to cache and re-serve.

string
stream

MULTIMEDIA_KIND_VIDEO (Cloudinary) only: streaming delivery URL, unscaled. Delivered as video_format, which defaults to video/mp4.

object
url

Ready-to-use delivery URL for this variant.

string
maxWidth

Maximum pixel width this variant is scaled to. Unset for variants with no resize (image “original”, video “stream”) — explicit presence so “not resized” is distinguishable from a literal 0px width.

integer format: int32
format

The IANA media type this URL returns: one of image/jpeg, image/png, image/webp, image/* or video/mp4, video/webm. Feed it straight to a Content-Type header or use it to pick a decoder.

This ECHOES what was served, so it reflects the image_format and video_format you sent on the request. Send neither and images are image/jpeg and video is video/mp4.

image/* is the one value that is not a concrete type: it means the CDN negotiates per client from the Accept header, so the same URL returns WebP, AVIF or JPEG to different callers. It is only ever returned if you asked for it. Everything else is deterministic — the same URL returns the same bytes to every client, which is what makes it safe to cache and re-serve.

string
preview

MULTIMEDIA_KIND_VIDEO (Cloudinary) only: preview variant, max width 1280px. Delivered as video_format.

object
url

Ready-to-use delivery URL for this variant.

string
maxWidth

Maximum pixel width this variant is scaled to. Unset for variants with no resize (image “original”, video “stream”) — explicit presence so “not resized” is distinguishable from a literal 0px width.

integer format: int32
format

The IANA media type this URL returns: one of image/jpeg, image/png, image/webp, image/* or video/mp4, video/webm. Feed it straight to a Content-Type header or use it to pick a decoder.

This ECHOES what was served, so it reflects the image_format and video_format you sent on the request. Send neither and images are image/jpeg and video is video/mp4.

image/* is the one value that is not a concrete type: it means the CDN negotiates per client from the Accept header, so the same URL returns WebP, AVIF or JPEG to different callers. It is only ever returned if you asked for it. Everything else is deterministic — the same URL returns the same bytes to every client, which is what makes it safe to cache and re-serve.

string
poster

MULTIMEDIA_KIND_VIDEO (Cloudinary) only: poster frame at medium width. A still EXTRACTED from the video, so like thumbnail it is an image and follows image_format.

object
url

Ready-to-use delivery URL for this variant.

string
maxWidth

Maximum pixel width this variant is scaled to. Unset for variants with no resize (image “original”, video “stream”) — explicit presence so “not resized” is distinguishable from a literal 0px width.

integer format: int32
format

The IANA media type this URL returns: one of image/jpeg, image/png, image/webp, image/* or video/mp4, video/webm. Feed it straight to a Content-Type header or use it to pick a decoder.

This ECHOES what was served, so it reflects the image_format and video_format you sent on the request. Send neither and images are image/jpeg and video is video/mp4.

image/* is the one value that is not a concrete type: it means the CDN negotiates per client from the Accept header, so the same URL returns WebP, AVIF or JPEG to different callers. It is only ever returned if you asked for it. Everything else is deterministic — the same URL returns the same bytes to every client, which is what makes it safe to cache and re-serve.

string
externalUrl

MULTIMEDIA_KIND_VIDEO (YouTube) only: pass-through to the YouTube watch URL. Wink generates no variants for externally-hosted media, so no format applies and every MediaUrlVariant field above is unset.

string
otaPicCategory

OpenTravel PIC (Picture Category) code, e.g. “2” = Lobby view, “6” = Guest room. What the asset depicts, which is what you want when laying out a gallery rather than dumping it in sort order. Empty when the property never categorised the asset. Look codes up at https://wink.travel/developers/taxonomy.

string
truncated

True when you hold more than the 200 returned, so this list is incomplete. Switch to SearchAccounts, which pages. It is false in every ordinary case; the list is never shortened without setting it.

boolean
Example
{
"accounts": [
{
"ownerType": "ACCOUNT_OWNER_TYPE_UNSPECIFIED",
"type": "ACCOUNT_TYPE_UNSPECIFIED",
"status": "ACCOUNT_STATUS_UNSPECIFIED",
"logo": {
"kind": "MULTIMEDIA_KIND_UNSPECIFIED",
"lifestyleType": "LIFESTYLE_TYPE_UNSPECIFIED"
}
}
]
}