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 id IS the cleaned domain (lowercase, no protocol, no www.) — for example "nike.com". There is no separate domain field on brand responses. id is always present, even when not requested via fields=. Pass it as :brand_id to 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.

  • 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 & TechGamingFurnitureAutomotiveOther

Filter 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"

GET/v1/brands/discover

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:

  1. 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
  2. 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 null if none was provided).

  • Name
    count
    Type
    integer
    Description

    Number of brands returned.

Request

GET
/v1/brands/discover
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
}

GET/v1/brands

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 from GET /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 from GET /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 whose country_code (HQ origin) is in the list. Case-insensitive — fr and FR behave 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's ships_to_countries. Distinct from country_code: markets is where the brand sells, country_code is where the brand is headquartered. Case-sensitive. Use canonical names from GET /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 whose currency_code is in the list. Case-insensitive. Use canonical values from GET /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 with min_revenue_max to bracket the lower bound of the band, or use alongside max_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

    asc or desc (default desc).

  • 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

GET
/v1/brands
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/v1/brands/by-url/:url

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

GET
/v1/brands/by-url/nike.com
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/v1/brands/:brand_id

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

GET
/v1/brands/nike.com
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).


POST/v1/brands/query

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: nichesniche, countrycountry_code, languagelanguages.

Request

POST
/v1/brands/query
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.


POST/v1/brands/by-ids

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

POST
/v1/brands/by-ids
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"]
}


GET/v1/brands/:brand_id/advertisers

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

GET
/v1/brands/nike.com/advertisers
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
    }
  ]
}

GET/v1/brands/:brand_id/posts/aggregates

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

    tiktok or instagram.

Response

Same shape as the corresponding POST aggregates endpoint on the Ads page, wrapped with brand_id, platform, and window fields.

Request

GET
/v1/brands/glowrecipe.com/posts/aggregates
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": "..."
}

Was this page helpful?