Brands
Brands are the core resource of the Brandsearch API. Each brand represents an e-commerce store with rich data including traffic metrics, social media presence, ad activity, product catalogs, reviews, revenue estimates, and more. On this page, we will look at the endpoints to discover trending brands, list and search the catalogue, and retrieve a single brand.
The brand model
The brand model contains over 100 fields grouped by category. Use the fields parameter to select exactly which fields you need, or exclude_fields to remove specific fields from the default response.
Default fields
When neither fields nor exclude_fields is specified, the following fields are returned:
id, name, title, description, status, platform, rank, monthly_visits, last_meta_active_count, last_meta_total_count, product_count, country_code, niche, brand_type, created_at, emails
Core identity
- Name
id- Type
- string
- Description
Unique identifier for the brand. The
idIS the cleaned domain (lowercase, no protocol, nowww.) — for example"nike.com". There is no separatedomainfield on brand responses.idis always present, even when not requested viafields=. Pass it as:brand_idto any/v1/brands/{brand_id}/...endpoint.
- Name
name- Type
- string
- Description
The brand name.
- Name
title- Type
- string
- Description
The brand's website title tag.
- Name
description- Type
- string
- Description
The brand's meta description.
- Name
merchant_name- Type
- string
- Description
The merchant or legal business name.
- Name
domain_tld- Type
- string
- Description
The domain top-level domain (e.g.,
"com","co.uk").
- Name
platform- Type
- string
- Description
E-commerce platform (e.g.,
"shopify","woocommerce").
- Name
platform_domain- Type
- string
- Description
The platform-specific domain or subdomain.
- Name
status- Type
- string
- Description
The brand's indexing status.
- Name
language_code- Type
- string
- Description
Primary language code (e.g.,
"en","fr").
- Name
created_at- Type
- timestamp
- Description
When the brand was first added.
- Name
updated_at- Type
- timestamp
- Description
When the brand was last updated.
Location
- Name
location- Type
- string
- Description
Full location string.
- Name
country_code- Type
- string
- Description
ISO country code.
- Name
city- Type
- string
- Description
City.
- Name
state_region- Type
- string
- Description
State or region.
- Name
region- Type
- string
- Description
Broader region.
- Name
subregion- Type
- string
- Description
Sub-region.
- Name
postal_code- Type
- string
- Description
Postal/ZIP code.
- Name
ships_to_countries- Type
- array
- Description
Array of ISO country codes the brand ships to.
Contact
- Name
emails- Type
- array
- Description
Array of contact email addresses.
- Name
phones- Type
- array
- Description
Array of contact phone numbers.
Traffic metrics
- Name
monthly_visits- Type
- integer
- Description
Estimated monthly website visits.
- Name
rank- Type
- integer
- Description
Traffic rank.
- Name
bounce_rate- Type
- number
- Description
Bounce rate as a percentage.
- Name
pages_per_visit- Type
- number
- Description
Average pages viewed per visit.
- Name
visit_duration- Type
- number
- Description
Average visit duration in seconds.
Social URLs
- Name
facebook_url- Type
- string
- Description
Facebook page URL.
- Name
instagram_url- Type
- string
- Description
Instagram profile URL.
- Name
instagram_username- Type
- string
- Description
Instagram handle.
- Name
tiktok_url- Type
- string
- Description
TikTok profile URL.
- Name
tiktok_username- Type
- string
- Description
TikTok handle.
- Name
twitter_url- Type
- string
- Description
Twitter/X profile URL.
- Name
linkedin_url- Type
- string
- Description
LinkedIn page URL.
- Name
pinterest_url- Type
- string
- Description
Pinterest profile URL.
- Name
youtube_url- Type
- string
- Description
YouTube channel URL.
- Name
whatsapp_url- Type
- string
- Description
WhatsApp contact URL.
Social metrics
- Name
tiktok_followers- Type
- integer
- Description
TikTok followers (legacy field).
- Name
tiktok_follower_count- Type
- integer
- Description
Current TikTok follower count.
- Name
tiktok_heart_count- Type
- integer
- Description
Total TikTok hearts/likes.
- Name
tiktok_video_count- Type
- integer
- Description
Number of TikTok videos posted.
- Name
tiktok_total_views- Type
- integer
- Description
Total TikTok video views.
- Name
tiktok_popularity- Type
- number
- Description
TikTok popularity score.
- Name
instagram_follower_count- Type
- integer
- Description
Instagram follower count.
- Name
instagram_following_count- Type
- integer
- Description
Instagram following count.
- Name
instagram_media_count- Type
- integer
- Description
Number of Instagram posts.
- Name
instagram_engagement_rate- Type
- number
- Description
Instagram engagement rate (%).
- Name
instagram_popularity- Type
- number
- Description
Instagram popularity score.
- Name
pinterest_followers- Type
- integer
- Description
Pinterest follower count.
- Name
twitter_followers- Type
- integer
- Description
Twitter/X follower count.
- Name
youtube_followers- Type
- integer
- Description
YouTube subscriber count.
Product catalog
- Name
product_count- Type
- integer
- Description
Total number of products.
- Name
variant_count- Type
- integer
- Description
Total number of product variants.
- Name
vendor_count- Type
- integer
- Description
Number of distinct vendors.
- Name
collections- Type
- array
- Description
Array of collection names.
- Name
shopify_bestsellers_count- Type
- integer
- Description
Number of bestseller products.
Pricing
- Name
avg_price- Type
- number
- Description
Average product price in original currency.
- Name
avg_price_usd- Type
- number
- Description
Average product price in USD.
- Name
avg_price_formatted- Type
- string
- Description
Formatted average price string.
- Name
min_price- Type
- number
- Description
Minimum product price.
- Name
max_price- Type
- number
- Description
Maximum product price.
- Name
min_price_usd- Type
- number
- Description
Minimum product price in USD.
- Name
max_price_usd- Type
- number
- Description
Maximum product price in USD.
- Name
currency_code- Type
- string
- Description
Currency code (e.g.,
"USD","EUR").
Meta ads metrics
- Name
last_meta_active_count- Type
- integer
- Description
Currently active Meta ads.
- Name
last_meta_inactive_count- Type
- integer
- Description
Currently inactive Meta ads.
- Name
last_meta_total_count- Type
- integer
- Description
Total Meta ads ever created.
- Name
exact_meta_ads_count- Type
- integer
- Description
Exact Meta ads count.
- Name
last_exact_meta_active_count- Type
- integer
- Description
Exact count of currently active Meta ads.
- Name
last_exact_meta_inactive_count- Type
- integer
- Description
Exact count of inactive Meta ads.
- Name
last_exact_meta_total_count- Type
- integer
- Description
Exact total Meta ads.
- Name
meta_page- Type
- string
- Description
Associated Meta page.
- Name
meta_image_ads_count- Type
- integer
- Description
Number of image-based Meta ads.
- Name
meta_video_ads_count- Type
- integer
- Description
Number of video-based Meta ads.
- Name
meta_image_perc- Type
- number
- Description
Percentage of ads that are images.
- Name
has_meta_logo- Type
- boolean
- Description
Whether the brand has a Meta logo.
- Name
latest_meta_ads_start_date- Type
- timestamp
- Description
Start date of most recent Meta ad.
- Name
active_growth_percentage- Type
- number
- Description
Active ads growth percentage.
- Name
active_growth_percentage_3d- Type
- number
- Description
3-day active ads growth.
- Name
active_growth_percentage_7d- Type
- number
- Description
7-day active ads growth.
- Name
inactive_growth_percentage- Type
- number
- Description
Inactive ads growth percentage.
- Name
total_growth_percentage- Type
- number
- Description
Total ads growth percentage.
- Name
eu_total_spend- Type
- number
- Description
Total EU ad spend in euros.
- Name
eu_daily_spend- Type
- number
- Description
Daily EU ad spend in euros.
- Name
spend_3d- Type
- number
- Description
3-day ad spend.
- Name
spend_7d- Type
- number
- Description
7-day ad spend.
- Name
spend_30d- Type
- number
- Description
30-day ad spend.
- Name
spend_60d- Type
- number
- Description
60-day ad spend.
Google ads metrics
- Name
google_ads_total- Type
- integer
- Description
Total Google ads ever created.
- Name
google_ads_active- Type
- integer
- Description
Currently active Google ads.
- Name
last_google_ads- Type
- timestamp
- Description
Last Google ads activity.
Reviews
- Name
judgeme_avg_rating- Type
- number
- Description
Average Judge.me rating.
- Name
judgeme_review_count- Type
- integer
- Description
Judge.me review count.
- Name
loox_avg_rating- Type
- number
- Description
Average Loox rating.
- Name
loox_review_count- Type
- integer
- Description
Loox review count.
- Name
reviews_io_avg_rating- Type
- number
- Description
Average Reviews.io rating.
- Name
reviews_io_review_count- Type
- integer
- Description
Reviews.io review count.
- Name
trustpilot_avg_rating- Type
- number
- Description
Average Trustpilot rating.
- Name
trustpilot_review_count- Type
- integer
- Description
Trustpilot review count.
- Name
yotpo_avg_rating- Type
- number
- Description
Average Yotpo rating.
- Name
yotpo_review_count- Type
- integer
- Description
Yotpo review count.
Revenue estimates
- Name
min_revenue- Type
- number
- Description
Minimum revenue estimate (conservative).
- Name
max_revenue- Type
- number
- Description
Maximum revenue estimate (optimistic).
- Name
growth_30d- Type
- number
- Description
30-day growth percentage.
Brand analysis
- Name
niche- Type
- string
- Description
Primary niche. One of the values in the niche taxonomy below.
- Name
generic_products- Type
- array
- Description
Generic product categorization.
- Name
price_tier- Type
- string
- Description
Price tier (e.g.,
"budget","mid","premium").
- Name
target_persona- Type
- string
- Description
Target customer persona.
- Name
ad_angle_taxonomy- Type
- array
- Description
Ad angle classifications.
- Name
interest_score- Type
- number
- Description
Overall interest score.
- Name
keywords- Type
- array
- Description
Brand keywords.
- Name
tags- Type
- array
- Description
Brand tags.
Theme & tech
- Name
theme- Type
- string
- Description
Shopify theme name.
- Name
theme_style- Type
- string
- Description
Theme style classification.
- Name
theme_vendor- Type
- string
- Description
Theme vendor/developer.
- Name
theme_spend- Type
- number
- Description
Money spent on theme.
- Name
theme_change_30- Type
- boolean
- Description
Theme changed in last 30 days.
- Name
theme_change_90- Type
- boolean
- Description
Theme changed in last 90 days.
- Name
shopify_theme- Type
- string
- Description
Shopify-specific theme info.
- Name
technologies- Type
- array
- Description
Array of detected technologies.
- Name
monthly_app_spend- Type
- number
- Description
Estimated monthly app spend (USD).
Sales channels & misc
- Name
sales_channels- Type
- array
- Description
Array of sales channel names.
- Name
amazon_url- Type
- string
- Description
Amazon storefront URL.
- Name
etsy_url- Type
- string
- Description
Etsy shop URL.
- Name
ebay_url- Type
- string
- Description
eBay store URL.
- Name
has_screenshot- Type
- boolean
- Description
Whether a screenshot is available.
- Name
og_image- Type
- string
- Description
Open Graph image URL.
- Name
dashboard_url- Type
- string
- Description
Direct link to the brand's analysis page in the Brandsearch dashboard (e.g.,
https://app.brandsearch.co/brand-analysis/nike.com). Always present.
Website screenshots
When has_screenshot is true, the following screenshot URLs are automatically attached to the brand response. You do not need to request these via the fields parameter — they are always present when available.
Image URLs are time-limited. Screenshot URLs (and any other image URL we return — og_image, etc.) are signed and expire 3 days after the response is issued. After that, the URL returns 404 Expired. Don't cache or hotlink them long-term: re-fetch the brand record when you need fresh URLs.
- Name
screenshot_url- Type
- string
- Description
Desktop homepage screenshot (alias for
screenshot_desktop_url).
- Name
screenshot_desktop_url- Type
- string
- Description
Desktop-viewport screenshot.
- Name
screenshot_desktop_full_url- Type
- string
- Description
Full-page desktop screenshot.
- Name
screenshot_mobile_url- Type
- string
- Description
Mobile-viewport screenshot.
- Name
screenshot_mobile_full_url- Type
- string
- Description
Full-page mobile screenshot.
Niche taxonomy
Brands are classified into one of 20 fixed niches. Use the values exactly as written (case-sensitive) when filtering with niche or niche_exclude.
FashionBeauty & SkincareHealth & SupplementsHome DecorPet SuppliesBaby & KidsKitchenHome & GardenJewelryFood & DrinkSports & OutdoorsToys & GamesArts & CraftsBooks & EducationMusic & InstrumentsElectronics & TechGamingFurnitureAutomotiveOtherFilter example:
Filter by niche
curl -G https://api.brandsearch.co/v1/brands \
-H "X-API-Key: bsk_your_api_key" \
-d niche="Fashion,Beauty & Skincare" \
-d niche_exclude="Other"
Discover trending brands
The fastest way to surface fresh, scaling brands worth looking at — a random sample of trending DTC stores from the catalogue, perfect for powering a "Discover" tab, daily inspiration feed, or onboarding flow. A brand qualifies for the trending slice if either:
- It has at least 100 monthly visits and is in a top market (
US,CA,GB,AU,DE,FR,IE,NL,IT,ES,NZ,CH,BE,LU) and transacts in a top currency (USD,CAD,GBP,AUD,EUR,CHF,NZD); or - It was added in the last 90 days.
All filters from GET /v1/brands apply on top of this prefilter (e.g., niche, meta_ads_active, monthly_visits_min) — narrow the trending slice to whatever angle you care about.
Charges 1 credit per returned brand.
Optional attributes
- Name
seed- Type
- string
- Description
Reproducibility seed (max 64 chars). Same seed + same filters = same sample. Different seed re-shuffles. Useful for caching and A/B tests.
- Name
limit- Type
- integer
- Description
Sample size (1-50). Default
10.
Plus all filters from GET /v1/brands (monthly_visits_min/max, meta_ads_active, meta_active_min/max, meta_total_min/max, product_count_min/max, niche, niche_exclude, apps, apps_exclude, techs, techs_exclude, country_code, country_code_exclude, markets, markets_exclude, currency_code, currency_code_exclude, min_revenue_min/max, max_revenue_min/max, fields, exclude_fields).
Response
- Name
data- Type
- array
- Description
Array of brand objects.
- Name
seed- Type
- string
- Description
The seed used (echoes the input, or
nullif none was provided).
- Name
count- Type
- integer
- Description
Number of brands returned.
Request
curl -G https://api.brandsearch.co/v1/brands/discover \
-H "X-API-Key: bsk_your_api_key" \
-d niche="Beauty & Skincare" \
-d meta_ads_active=true \
-d limit=10 \
-d seed=daily-2026-04-30
Response
{
"data": [
{ "id": "glowrecipe.com", "name": "Glow Recipe", "monthly_visits": 1240000, "niche": "Beauty & Skincare", "country_code": "US", "...": "..." },
{ "id": "topicals.com", "name": "Topicals", "monthly_visits": 320000, "niche": "Beauty & Skincare", "country_code": "US", "...": "..." }
],
"seed": "daily-2026-04-30",
"count": 10
}
List all brands
This endpoint allows you to list and search brands with filtering, sorting, and pagination. By default, 20 brands are returned per page.
Optional attributes
- Name
page- Type
- integer
- Description
Page number (1-1000). Default
1.
- Name
page_size- Type
- integer
- Description
Results per page (1-100). Default
20.
- Name
monthly_visits_min- Type
- integer
- Description
Minimum monthly visits filter.
- Name
monthly_visits_max- Type
- integer
- Description
Maximum monthly visits filter.
- Name
meta_ads_active- Type
- boolean
- Description
Filter brands with active Meta ads (
true) or without (false).
- Name
meta_active_min- Type
- integer
- Description
Minimum active Meta ads count (
last_meta_active_count).
- Name
meta_active_max- Type
- integer
- Description
Maximum active Meta ads count.
- Name
meta_total_min- Type
- integer
- Description
Minimum total Meta ads count.
- Name
meta_total_max- Type
- integer
- Description
Maximum total Meta ads count.
- Name
product_count_min- Type
- integer
- Description
Minimum product count.
- Name
product_count_max- Type
- integer
- Description
Maximum product count.
- Name
niche- Type
- string
- Description
Comma-separated list of niches to include. Values are validated against the niche taxonomy below.
- Name
niche_exclude- Type
- string
- Description
Comma-separated list of niches to exclude.
- Name
apps- Type
- string
- Description
Comma-separated list of apps. Returns brands that have installed at least one of the listed apps (e.g.,
Klaviyo,Judge.me). Use canonical names fromGET /v1/facets/apps.
- Name
apps_exclude- Type
- string
- Description
Comma-separated list of apps. Drops brands that have installed any of the listed apps.
- Name
techs- Type
- string
- Description
Comma-separated list of technologies. Returns brands that use at least one of the listed techs (e.g.,
Shopify,Stripe). Use canonical names fromGET /v1/facets/technologies.
- Name
techs_exclude- Type
- string
- Description
Comma-separated list of technologies. Drops brands that use any of the listed techs.
- Name
country_code- Type
- string
- Description
Comma-separated list of ISO-3166 alpha-2 country codes (e.g.,
US,CA,GB). Returns brands whosecountry_code(HQ origin) is in the list. Case-insensitive —frandFRbehave identically.
- Name
country_code_exclude- Type
- string
- Description
Comma-separated list of country codes. Drops brands in any of the listed countries. Case-insensitive.
- Name
markets- Type
- string
- Description
Comma-separated list of full country names (e.g.,
United States,Canada,France) — matches the brand'sships_to_countries. Distinct fromcountry_code:marketsis where the brand sells,country_codeis where the brand is headquartered. Case-sensitive. Use canonical names fromGET /v1/facets/country-names.
- Name
markets_exclude- Type
- string
- Description
Comma-separated list of full country names — drops brands that ship to any of the listed markets.
- Name
currency_code- Type
- string
- Description
Comma-separated list of ISO-4217 currency codes (e.g.,
USD,EUR,GBP). Returns brands whosecurrency_codeis in the list. Case-insensitive. Use canonical values fromGET /v1/facets/currencies.
- Name
currency_code_exclude- Type
- string
- Description
Comma-separated list of currency codes — drops brands in any of the listed currencies. Case-insensitive.
- Name
min_revenue_min- Type
- number
- Description
Minimum value of
min_revenue(the conservative revenue estimate). Combine withmin_revenue_maxto bracket the lower bound of the band, or use alongsidemax_revenue_*to constrain the whole band.
- Name
min_revenue_max- Type
- number
- Description
Maximum value of
min_revenue.
- Name
max_revenue_min- Type
- number
- Description
Minimum value of
max_revenue(the optimistic revenue estimate).
- Name
max_revenue_max- Type
- number
- Description
Maximum value of
max_revenue.
- Name
sort_by- Type
- string
- Description
Sort field. Traffic / activity / growth:
monthly_visits,last_meta_active_count,last_meta_total_count,created_at,rank,estimated_sales,interest_score,google_ads_total,combined_followers,active_growth_percentage,active_growth_percentage_3d,active_growth_percentage_7d,inactive_growth_percentage,total_growth_percentage,growth_30d. Spend signals:spend_3d,spend_7d,spend_30d,spend_60d,eu_total_spend,eu_daily_spend,monthly_app_spend. Revenue band:min_revenue,max_revenue. Catalogue volume:product_count,variant_count,shopify_bestsellers_count. Pricing:avg_price_usd. Social followers:instagram_follower_count,tiktok_follower_count,pinterest_followers,twitter_followers,youtube_followers. Social engagement / volume / popularity:instagram_media_count,instagram_engagement_rate,instagram_popularity,tiktok_video_count,tiktok_heart_count,tiktok_total_views,tiktok_popularity. Review volume:judgeme_review_count,loox_review_count,trustpilot_review_count,yotpo_review_count,reviews_io_review_count. Use the growth/spend keys to find what's scaling vs. decaying.
- Name
sort_order- Type
- string
- Description
ascordesc(defaultdesc).
- Name
fields- Type
- string
- Description
Comma-separated list of fields to include in the response.
- Name
exclude_fields- Type
- string
- Description
Comma-separated list of fields to exclude from the default response.
Request
curl -G https://api.brandsearch.co/v1/brands \
-H "X-API-Key: bsk_your_api_key" \
-d page_size=2 \
-d sort_by=monthly_visits \
-d meta_ads_active=true
Response
{
"data": [
{
"id": "nike.com",
"name": "Nike",
"title": "Nike. Just Do It.",
"description": "Inspiring the world's athletes.",
"status": "active",
"platform": "shopify",
"rank": 120,
"monthly_visits": 150000000,
"last_meta_active_count": 245,
"last_meta_total_count": 12340,
"product_count": 2800,
"country_code": "US",
"niche": "Athletic Apparel",
"brand_type": "DTC",
"created_at": "2024-01-15T00:00:00Z",
"emails": ["support@nike.com"]
}
],
"pagination": {
"page": 1,
"page_size": 2,
"total": 85420,
"total_pages": 42710
}
}
Get a brand by URL
This endpoint allows you to retrieve a single brand by its domain URL. You can pass the bare domain (e.g., nike.com) or a full URL (e.g., https://www.nike.com). The URL must be between 3 and 255 characters.
Optional attributes
- Name
fields- Type
- string
- Description
Comma-separated list of fields to include.
- Name
exclude_fields- Type
- string
- Description
Comma-separated list of fields to exclude.
Request
curl https://api.brandsearch.co/v1/brands/by-url/nike.com \
-H "X-API-Key: bsk_your_api_key"
Response
{
"id": "nike.com",
"name": "Nike",
"title": "Nike. Just Do It.",
"description": "Inspiring the world's athletes.",
"status": "active",
"platform": "shopify",
"rank": 120,
"monthly_visits": 150000000,
"last_meta_active_count": 245,
"last_meta_total_count": 12340,
"product_count": 2800,
"country_code": "US",
"niche": "Athletic Apparel",
"brand_type": "DTC",
"created_at": "2024-01-15T00:00:00Z",
"emails": ["support@nike.com"]
}
Get a brand by ID
This endpoint allows you to retrieve a single brand by its ID. The brand ID is typically the domain (e.g., nike.com). Must be between 1 and 255 characters.
Returns 404 brand_not_found if the brand does not exist.
Optional attributes
- Name
fields- Type
- string
- Description
Comma-separated list of fields to include.
- Name
exclude_fields- Type
- string
- Description
Comma-separated list of fields to exclude.
Request
curl https://api.brandsearch.co/v1/brands/nike.com \
-H "X-API-Key: bsk_your_api_key" \
-G -d fields=name,monthly_visits,product_count,avg_price_usd,trustpilot_avg_rating
Response
{
"id": "nike.com",
"name": "Nike",
"monthly_visits": 150000000,
"product_count": 2800,
"avg_price_usd": 89.99,
"trustpilot_avg_rating": 4.2
}
Note: id is always returned even when it isn't listed in fields= — it's the brand's canonical identifier (the cleaned domain).
Query brands (JSON body)
A JSON-body counterpart to GET /v1/brands. Same filter shape, but page and page_size go in the body, and list-shaped fields (niche, niche_exclude, apps, apps_exclude, techs, techs_exclude, country_code, country_code_exclude, markets, markets_exclude, currency_code, currency_code_exclude) accept either a comma-separated string or a JSON array. Useful when your filter set is too long for a query string.
All filters from the GET endpoint are supported. Unknown fields are rejected with 400 validation_error — common typos: niches → niche, country → country_code, language → languages.
Request
curl -X POST https://api.brandsearch.co/v1/brands/query \
-H "X-API-Key: bsk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"niche": ["Fashion", "Beauty & Skincare"],
"monthly_visits_min": 100000,
"meta_ads_active": true,
"sort_by": "growth_30d",
"sort_order": "desc",
"page": 1,
"page_size": 20
}'
Response shape is identical to GET /v1/brands.
Multi-fetch by IDs
Fetch up to 100 brands by ID in a single round trip. Useful when you have a list of brand IDs (e.g., from /v1/lookup or stored in your own database) and want to hydrate them all at once.
Charges 1 credit per returned brand — IDs that aren't found don't cost anything.
Body
- Name
ids- Type
- array
- Description
Array of brand IDs (1-100). Typically domains like
"nike.com".
- Name
fields- Type
- string
- Description
Comma-separated fields to include.
- Name
exclude_fields- Type
- string
- Description
Comma-separated fields to exclude.
Response
- Name
found- Type
- array
- Description
Brand objects that matched.
- Name
not_found- Type
- array
- Description
Array of IDs that did not match any brand.
Request
curl -X POST https://api.brandsearch.co/v1/brands/by-ids \
-H "X-API-Key: bsk_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"ids": ["nike.com", "adidas.com", "doesnotexist.xyz"],
"fields": "name,monthly_visits,niche"
}'
Response
{
"found": [
{ "id": "nike.com", "name": "Nike", "monthly_visits": 150000000, "niche": "Fashion" },
{ "id": "adidas.com", "name": "Adidas", "monthly_visits": 89000000, "niche": "Fashion" }
],
"not_found": ["doesnotexist.xyz"]
}
List a brand's advertisers
Returns the Facebook pages observed running Meta ads for a brand, sorted by ad count descending. A brand can have multiple pages (regional duplicates, A/B test pages, etc.) — this endpoint rolls them up so you can see which page is doing the most spending.
Charges 1 credit per returned page.
Optional attributes
- Name
limit- Type
- integer
- Description
Maximum pages to return (1-100). Default
50.
Response — each page entry
- Name
page_id- Type
- string
- Description
Meta page ID.
- Name
page_name- Type
- string
- Description
Page display name.
- Name
country_code- Type
- string
- Description
ISO country code declared by the page.
- Name
page_likes- Type
- integer
- Description
Page like count.
- Name
page_created_at_unix- Type
- integer
- Description
When the page was created (unix seconds).
- Name
ad_count- Type
- integer
- Description
Number of ads observed running from this page for the brand.
- Name
active_ad_count- Type
- integer
- Description
Number of currently active ads.
- Name
total_eu_spend- Type
- number
- Description
Sum of EU spend across all ads from this page (EUR).
- Name
total_eu_reach- Type
- number
- Description
Sum of EU reach across all ads from this page.
Request
curl -G https://api.brandsearch.co/v1/brands/nike.com/advertisers \
-H "X-API-Key: bsk_your_api_key" \
-d limit=10
Response
{
"brand_id": "nike.com",
"count": 5,
"data": [
{
"page_id": "15087023444",
"page_name": "Nike",
"country_code": "US",
"page_likes": 38400000,
"page_created_at_unix": 1077062400,
"ad_count": 1842,
"active_ad_count": 245,
"total_eu_spend": 8240000.0,
"total_eu_reach": 412000000
}
]
}
Aggregate a brand's TikTok or Instagram posts
Per-brand counterpart of the global TikTok and Instagram aggregates endpoints. Returns a multi-dimension dashboard for a single brand's posts. The required platform parameter picks the source.
For Meta use the dedicated /v1/brands/:brand_id/ads/aggregates endpoint — it carries Meta-only dimensions (funnel, CTA, demography) that don't apply to TikTok or Instagram.
Charges 1 credit flat.
Required attributes
- Name
platform- Type
- string
- Description
tiktokorinstagram.
Response
Same shape as the corresponding POST aggregates endpoint on the Ads page, wrapped with brand_id, platform, and window fields.
Request
curl -G https://api.brandsearch.co/v1/brands/glowrecipe.com/posts/aggregates \
-H "X-API-Key: bsk_your_api_key" \
-d platform=tiktok
{
"brand_id": "glowrecipe.com",
"platform": "tiktok",
"window": {"ad_count": 184},
"media_mix": {"video": 178, "image": 6, "carousel": 0},
"language_mix": {"en": 162, "es": 12, "fr": 10},
"engagement_summary": "..."
}