Skip to content

SearchAccounts

POST
/wink.partner.v1.Accounts/SearchAccounts
curl --request POST \
--url https://example.com/wink.partner.v1.Accounts/SearchAccounts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "skip": 1, "take": 1, "status": "ACCOUNT_STATUS_UNSPECIFIED", "type": "ACCOUNT_TYPE_UNSPECIFIED", "nameQuery": "example", "sortBy": "example", "sortDirection": "SORT_DIRECTION_UNSPECIFIED", "imageFormat": "example" }'

Search the accounts you can act for

The paged, filterable form of ListAccounts, over exactly the same set of accounts, for when you hold too many to take in one response. Filter by lifecycle status, by account type, or by the start of the name, and page with skip and take.

Every filter is optional; sending none is the same as ListAccounts with paging. Results are scoped to the accounts your token can reach — being a platform administrator does not widen it.

Free: this call is not metered.

Media typeapplication/json
object
skip

How many records to skip. Omit it to start at the beginning.

Paging is page-aligned, so this must be a whole multiple of take — 0, then take, then 2 * take, and so on. A partial offset is rejected with INVALID_ARGUMENT rather than quietly rounded down, so you can never be handed a page you did not ask for.

integer format: int32
take

How many records to return. Between 1 and 180; omit it to take the default of 30.

integer format: int32
status

Return only accounts with this lifecycle status. Omit it to return every status.

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
type

Return only accounts of this type. Omit it to return every type.

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
nameQuery

Return only accounts whose name STARTS WITH this text, case-insensitively. Matched literally — regular-expression characters carry no special meaning. At most 100 characters.

Prefix rather than substring on purpose: a substring match cannot use the name index and so reads every account on the platform on a call that costs you nothing, which is not a load we are willing to publish. Search for “Siam” to find “Siam Residences”, not for “Residences”.

string
sortBy

Field to sort on. One of name, urlName, status, type, createdDate or lastUpdate; anything else is rejected. Omit it to sort by name.

string
sortDirection

Direction for sort_by. Omit it to sort ascending. Declared in partner_common.proto and shared with the Booking surface, so ordering reads the same wherever you page.

string
Allowed values: SORT_DIRECTION_UNSPECIFIED SORT_DIRECTION_ASC SORT_DIRECTION_DESC
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

The RPC completed with gRPC status OK.

Media typeapplication/json
object
accounts

The matching accounts for this page.

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
skip

Records skipped to produce this page — echoes the skip you sent.

integer format: int32
take

Page size used — echoes the take you sent, or the default that was applied.

integer format: int32
totalCount

Total accounts matching the filters, across all pages.

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