Brand Demand Index#

Public intelligence about companies, brands, and competitive categories in a market: modeled branded-search demand, Share of Search inside a defined set, rank changes over time, and the sources behind each figure.

Authentication required

All endpoints require a Bearer token in the Authorization header. See the Authentication guide for setup instructions.

GET /v1/brand-demand-index/overview#

Retrieve a summary of the whole public Brand Demand Index in one call: how many markets, brands, competitive sets, and multi-brand company portfolios Brandwave publishes, the earliest and latest months measured, and the strongest branded-search movements across every market. Use this to see what changed recently anywhere in the dataset before drilling into a single market.

bash
GET /v1/brand-demand-index/overview
Authorization: Bearer {token}

Response#

Returns { data, _meta } with the result.

GET /v1/brand-demand-index/markets#

List every country and region covered by the public Brand Demand Index, such as New Zealand, with how many competitive sets, brands, and multi-brand company portfolios each one publishes and how recent the data is. Use this to discover which market keys are available before requesting a market, brand, category, or company.

bash
GET /v1/brand-demand-index/markets
Authorization: Bearer {token}

Response#

Returns { items, totalCount, facets, _meta } with paginated results.

GET /v1/brand-demand-index/markets/:marketKey#

Retrieve the public Brand Demand Index for one market key, such as "nz" for New Zealand: the market's totals, its largest competitive sets with their current Share of Search leaders, multi-brand company portfolios, and one page of the market's sets. Search the sets by name, filter them by size band (total estimated monthly searches), sort them by name, brand count, or total, and page through them.

bash
GET /v1/brand-demand-index/markets/:marketKey
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
marketKeystringRequiredGeographic market key, e.g. "nz", "au", or "global-en" (worldwide English-curated terms).
setsSearchstring—Only list competitive sets whose name, description, or a member brand contains this.
setsSize'major' | 'large' | 'medium' | 'small'—Only list sets of this size by total estimated monthly searches: major (1M+), large (100K to 1M), medium (10K to 100K), or small (under 10K).
setsSort'name' | 'volume' | 'brands'—Order sets by name, total estimated searches (volume), or brand count. Without it, sets are listed largest first.
setsDirection'asc' | 'desc'—Direction for setsSort. Names open A to Z; totals and brand counts open largest first.
setsPageinteger—Zero-based page of sets.
setsPageSizeinteger—Competitive sets per page, 1-100 (20 when omitted).

Response#

Returns { data, _meta } with the result.

GET /v1/brand-demand-index/markets/:marketKey/categories/:categorySlug#

Retrieve one public competitive category in a market by market key and category slug: twelve months of modeled branded-search demand for each member brand, Share of Search inside the set, rank and share movement, exact search terms, sources, and limitations.

bash
GET /v1/brand-demand-index/markets/:marketKey/categories/:categorySlug
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
marketKeystringRequiredGeographic market key, e.g. "nz", "au", or "global-en" (worldwide English-curated terms).
categorySlugstringRequiredCategory slug, e.g. "accounting-software".

Response#

Returns { data, _meta } with the result.

GET /v1/brand-demand-index/markets/:marketKey/brands/:brandSlug#

Retrieve a public brand profile from the Brand Demand Index by market key and brand slug, such as "new-world": twelve months of modeled branded-search demand, its Share of Search position in each competitive set, the branded search terms measured, and the company that owns it. The brand does not need to be a Brandwave customer.

bash
GET /v1/brand-demand-index/markets/:marketKey/brands/:brandSlug
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
marketKeystringRequiredGeographic market key, e.g. "nz", "au", or "global-en" (worldwide English-curated terms).
brandSlugstringRequiredBrand slug, e.g. "new-world".

Response#

Returns { data, _meta } with the result.

GET /v1/brand-demand-index/markets/:marketKey/compare/:brandSlug/:otherBrandSlug#

Retrieve a head-to-head comparison of two brands inside a shared competitive set in one market: twelve months of branded-search demand, Share of Search, rank, and lead changes. Set categorySlug to compare the pair inside a particular shared set; without it, the set with the most measured demand is used. Returns not found when the pair does not share the requested set.

bash
GET /v1/brand-demand-index/markets/:marketKey/compare/:brandSlug/:otherBrandSlug
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
marketKeystringRequiredGeographic market key, e.g. "nz", "au", or "global-en" (worldwide English-curated terms).
brandSlugstringRequiredFirst brand slug, e.g. "asb".
otherBrandSlugstringRequiredSecond brand slug, e.g. "anz".
categorySlugstring—Optional competitive set when the pair shares more than one set in this market.

Response#

Returns { data, _meta } with the result.

GET /v1/brand-demand-index/markets/:marketKey/selection#

Retrieve a comparison of any two to ten published brands in one market, even when they belong to different competitive sets: twelve months of branded-search demand for each brand and Share of Search computed among the chosen brands only. Pass the brand slugs comma-separated in brands. Shares here describe the selection, not a curated market set, and brands from another market cannot be combined.

bash
GET /v1/brand-demand-index/markets/:marketKey/selection?brands=...
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
marketKeystringRequiredGeographic market key, e.g. "nz", "au", or "global-en" (worldwide English-curated terms).
brandsstringRequiredComma-separated brand slugs, 2 to 10, e.g. "xero,myob,hnry".

Response#

Returns { data, _meta } with the result.

GET /v1/brand-demand-index/markets/:marketKey/companies/:companySlug#

Retrieve a public multi-brand company portfolio from the Brand Demand Index by market key and company slug: the two or more tracked brands this company owns, the branded terms each brand is measured through, and where each brand sits in its competitive categories. Demand belongs to the brands, so the company is never given a combined figure. A single-brand owner has no separate company page.

bash
GET /v1/brand-demand-index/markets/:marketKey/companies/:companySlug
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
marketKeystringRequiredGeographic market key, e.g. "nz", "au", or "global-en" (worldwide English-curated terms).
companySlugstringRequiredCompany slug, e.g. "xero".

Response#

Returns { data, _meta } with the result.

GET /v1/brand-demand-index/search#

Search the published Brand Demand Index pages that answer a name: a market, a competitive set, a brand, or a multi-brand company. Returns names, the market each belongs to, what identifies it, and the path to the page, and only ever returns a page the index already publishes and indexes, so a brand with a definition but not yet enough measured history is not offered.

bash
GET /v1/brand-demand-index/search?query=...&limit=...
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
querystringRequiredCase-insensitive search query over published markets, sets, brands, and companies.
limitintegerRequiredMaximum published pages returned (1-12).
marketKeystring—Only return pages in this market, as a market page’s own search does.
kind'market' | 'location' | 'category' | 'brand' | 'company' | 'comparison'—Only return pages of this kind, as the comparison builder’s brand picker does.

Response#

Returns { items, totalCount, facets, _meta } with paginated results.

GET /v1/brand-demand-index/markets/:marketKey/locations#

List the places in a market that have local competitive sets in the public Brand Demand Index, such as Blenheim or Queenstown in New Zealand: each place with the sets about it, for example law firms or real estate agencies in that town, and whether each set is published. Local services are measured on searches made in that place.

bash
GET /v1/brand-demand-index/markets/:marketKey/locations
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
marketKeystringRequiredGeographic market key, e.g. "nz", "au", or "global-en" (worldwide English-curated terms).

Response#

Returns { data, _meta } with the result.

GET /v1/brand-demand-index/markets/:marketKey/locations/:locationSlug#

Retrieve every local competitive set about one place in a market by market key and place slug, such as "blenheim": which law firms, real estate agencies, builders, or other local businesses lead branded search there, each set with its current leaders, member count, and latest measured month.

bash
GET /v1/brand-demand-index/markets/:marketKey/locations/:locationSlug
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
marketKeystringRequiredGeographic market key, e.g. "nz", "au", or "global-en" (worldwide English-curated terms).
locationSlugstringRequiredPlace slug, e.g. "blenheim".

Response#

Returns { data, _meta } with the result.

GET /v1/brand-demand-index/markets/:marketKey/locations/:locationSlug/sets/:topicSlug#

Retrieve the competitive set at one place and topic in a market, such as "blenheim" and "law-firms" in New Zealand or "nsw" and "car-brands" in Australia: a local set measured on searches made in that place, or a national set measured in a state, region, or metro with how its leader and shares differ from the national reading. Returns the same shape as a competitive category, with the place it was read in.

bash
GET /v1/brand-demand-index/markets/:marketKey/locations/:locationSlug/sets/:topicSlug
Authorization: Bearer {token}

Parameters#

NameTypeRequiredDescription
marketKeystringRequiredGeographic market key, e.g. "nz", "au", or "global-en" (worldwide English-curated terms).
locationSlugstringRequiredPlace slug, e.g. "blenheim" or "nsw".
topicSlugstringRequiredSet topic, e.g. "law-firms" or "car-brands".

Response#

Returns { data, _meta } with the result.