Rising on TikTokRisingSee all trendsAll trends

Source: TikTok Creator Search Insights via TokConnect, 28 October 2026. Search counts are TikTok's figure for the last 7 days; the arrow compares the latest reading with the average of the previous six days. TikTok Shop items: estimated revenue, TikTok Shop US, 30 days to 18 October 2026, growth against the 30 days before.

Research your niche
DevelopersAPIRankings
API reference

Rankings

The best-selling TikTok Shop products, shops, creators, videos and LIVEs in any of 17 markets, ranked by revenue, units or growth.

  • 5 routes
  • 1 credit per call
  • Base URL https://api.tokconnect.com/v1

Top-selling TikTok Shop products

Shop Analytics

Products ranked by estimated sales over a date range: revenue, units, video/LIVE/showcase split, growth, price, commission, creators, launch date, daily trend. keyword = words in product titles; category = a category name or id (levels 1-3, several allowed; no keyword needed); both together narrow further. With neither, the result is the top 10 products for the most recent days (about 6). Up to 100 rows per page with cursor paging, about 700 rows per keyword (max_rows up to 3,000 in the US). sort: revenue, units, price, growth or creators; order=asc lists lowest first. Filters: revenue, units, growth, price, commission, creators, launch date, channel, rating, seller type, shipping. region picks the market (default US). Shopper's live view: shop_browse. Examples: {"category":"Skincare","launched_within_days":"30"}, {"keyword":"lip oil","region":"DE","sort":"units"}.

GET/v1/products/top

Products ranked by sales

  • 1 credit per call
  • Shop Analytics
  • Paged
  • 17 markets

Parameters

  • keywordstring

    Words from product titles, e.g. 'vitamin c serum' or 'lip oil'. Ranks every matching product over your window. If keyword and category are both omitted, the result is the top 10 products for the most recent days (about 6), whatever window is set: pass a keyword or category when the user wants more than 10 rows or a specific window.

  • limitinteger

    Results per page. Max 100 per page; pass next as cursor for the following page. Up to about 700 rows per keyword (max_rows scans up to 3,000 in the US). Without a keyword or category: 10 rows. Values above a method's maximum are lowered and reported in notes.

23 more optional parameters
  • affiliatestring

    Filter. PUBLIC_PLAN = open affiliate plan; NON_AFFILIATE = not open to affiliates.

    One ofPUBLIC_PLANNON_AFFILIATE

  • categoryarray of string

    Narrow to one or more Shop categories (up to 5), by name or numeric id, levels 1 to 3: "Skincare", "Pet Supplies", "Beauty & Personal Care","Health" or "601450". Without a keyword the products of the category are found by merging several generic keyword searches (the source needs a keyword), and the result says how many keyword sweeps and distinct rows that gave. Find names and ids with category_trends method=tree.

  • commissionstring

    Filter. Affiliate commission percent, e.g. 15-35.

  • creator_conversionstring

    Filter. Percent of creators who made a sale, e.g. >45.

  • creatorsstring

    Filter. Number of creators selling it, e.g. 10-50.

  • cursorstring

    Paging: pass the next value from the previous response unchanged. Omit on the first page.

  • detailstring

    compact (default) returns the useful fields; full adds the raw upstream payload (large).

    Defaultcompact   One ofcompactfull

  • endstring

    Shop Analytics methods: custom range end, YYYY-MM-DD (capped at the last complete day).

  • launched_within_daysstring

    Filter. Only products launched in the last N days.

    One of3730180365

  • max_rowsinteger

    Scan up to this many matching products (101-3000) before sorting, to go past the 700-row cap; the top limit rows are returned. Needs keyword; US market only; not with category.

  • orderstring

    desc (default, highest first) or asc (lowest first among the matching rows; pair it with a revenue or units filter to skip dead listings). Applies with a keyword or category.

    One ofdescasc

  • pricestring

    Filter. Average selling price in the market's currency, e.g. <20 or 20-100.

  • ratingstring

    Filter. Product rating, e.g. >4.5.

  • regionstring

    Market as an ISO country code, default US. Shop Analytics methods: sales data for that market, amounts in its currency. Live methods that take it (search, video detail, creator posts, Shop pages): TikTok as seen in that market where TikTok serves it. Core: US, GB, DE, FR, ES, JP, TH, VN, ID, MY, PH, BR, MX. Extended: PL, IT, NL, IE. Other countries are refused. See shop_regions.

  • revenuestring

    Filter. Revenue in the market's currency over the window: a-b, <a or >b, e.g. 1000-10000.

  • revenue_growthstring

    Filter. Revenue growth vs the previous equal window, percent, e.g. >30.

  • sales_channelstring

    Filter. Where the revenue came from: VIDEO, LIVE or SHOWCASE (shop tab and search). Several: comma separated, e.g. VIDEO,LIVE. Values: VIDEO, LIVE, SHOWCASE.

  • seller_typestring

    Filter. Who sold it: the seller's own accounts, independent affiliates, or the Shop mall.

    One ofBELONGED_TO_SELLERINDEPENDENTSHOPPING_MALL

  • shippingstring

    Filter. local = ships from warehouses in the market; global = cross-border.

    One oflocalglobal

  • sortstring

    Ranking metric: creators, growth, price, revenue, units. Default revenue. growth favours brand-new items (shown as >999.9%); pair it with a revenue or units filter. Applies with a keyword or category.

    One ofcreatorsgrowthpricerevenueunits

  • startstring

    Shop Analytics methods: custom range start, YYYY-MM-DD.

  • unitsstring

    Filter. Units sold over the window, e.g. 500-5000 or >10000.

  • windowstring

    Shop Analytics methods: date range ending at the last complete day (about 2 days ago). Default 30d. Use start/end for a custom range.

    One of7d30d90d180d365d

Use it in Claude or ChatGPT

Connect https://mcp.tokconnect.com/mcp and your AI calls this as the product_top_selling tool. Same data, same credit. MCP setup

MCP tool call
{
  "tool": "product_top_selling",
  "arguments": {
    "keyword": "lip oil",
    "limit": 3
  }
}

Request

curl "https://api.tokconnect.com/v1/products/top?keyword=lip%20oil&limit=3" \
  -H "X-API-Key: $TOKCONNECT_API_KEY"

Response

Example response
{
  "data": {
    "count": 3,
    "currency": "USD",
    "dataEnd": "2026-10-28",
    "hasMore": true,
    "items": [
      {
        "commission_rate": "13%",
        "creator_conversion_ratio": 0.47589952477936187,
        "creator_num": 1473,
        "delivery_type": "local",
        "id": "1731896769144001226",
        "is_full_service": 0,
        "is_overseas": 0,
        "is_tokopedia": 0,
        "launch_date": "2025-10-18",
        "live_revenue": "$5.19k",
        "max_real_price": "$13.92",
        "min_real_price": "$13.92",
        "pri_cate_id": 601450,
        "product_rating": 4.4,
        "product_title": "Hydrating Lip Gloss - High Shine & Tinted, Infused with Hyaluronic Acid, Jojoba Oil & Shea Butter",
        "revenue": "$285.28k",
        "revenue_grouping_rate": "16.2%",
        "revenue_trend": [
          4760,
          0,
          0
        ],
        "sale": 35660,
        "sec_cate_id": 848648,
        "shipping_fee": "$0.00",
        "showcase_revenue": "$112.00",
        "ter_cate_id": 601534,
        "total": 407,
        "unit_price": "$8.00",
        "video_revenue": "$279.98k"
      },
      {
        "commission_rate": "15%",
        "creator_conversion_ratio": 0.47819767441860467,
        "creator_num": 688,
        "delivery_type": "local",
        "id": "1732111846411833635",
        "is_full_service": 0,
        "is_overseas": 0,
        "is_tokopedia": 0,
        "launch_date": "2025-12-02",
        "live_revenue": "$2.72k",
        "max_real_price": "$14.00",
        "min_real_price": "$14.00",
        "pri_cate_id": 601450,
        "product_rating": 4.6,
        "product_title": "e.l.f. Glow Reviver Lip Oil Stick, Nourishing Lip Oil Stick Infused with Squalane Shea Butter & Jojoba Oil for Buildable Color & Soft Shine 3.3mL",
        "revenue": "$177.48k",
        "revenue_grouping_rate": "25.6%",
        "revenue_trend": [
          2700,
          5480,
          8200
        ],
        "sale": 17748,
        "sec_cate_id": 848648,
        "shipping_fee": "$0.00",
        "showcase_revenue": "$30.00",
        "ter_cate_id": 601534,
        "total": 407,
        "unit_price": "$10.00",
        "video_revenue": "$174.73k"
      },
      {
        "commission_rate": "13%",
        "creator_conversion_ratio": 0.4717948717948718,
        "creator_num": 780,
        "delivery_type": "local",
        "id": "1729440860171702516",
        "is_full_service": 0,
        "is_overseas": 0,
        "is_tokopedia": 0,
        "launch_date": "2024-04-10",
        "live_revenue": "$17.58k",
        "max_real_price": "$19.50",
        "min_real_price": "$15.00",
        "pri_cate_id": 601450,
        "product_rating": 4.2,
        "product_title": "Nooni Korean Apple Lip Oil + Lip Stain | Glossy Lip Stain, Tinting & Long Lasting, Moisturizing Lip Care (17 options) Hydrate Lipgloss Lipstick Makeup Glossy Hydrating Moisturizer Plump Transfer-proof",
        "revenue": "$169.86k",
        "revenue_grouping_rate": "-3.2%",
        "revenue_trend": [
          3795,
          4365,
          5115
        ],
        "sale": 11324,
        "sec_cate_id": 848648,
        "shipping_fee": "$0.00",
        "showcase_revenue": "$330.00",
        "ter_cate_id": 601534,
        "total": 407,
        "unit_price": "$15.00",
        "video_revenue": "$151.95k"
      }
    ],
    "keyword": "lip oil",
    "market": "US",
    "next": "eyJwYWdlIjoyLCJzaXplIjozfQ",
    "notes": [
      "Market US (United States): amounts are in USD."
    ],
    "see_also": "Pass a row's id to product: method=trend (daily), creators (who sells it), video_sales, page (live price and stock).",
    "sortedBy": "revenue",
    "source": "TokConnect Shop Analytics (TikTok Shop US). Revenue and units are estimates: units track TikTok's sold counter; revenue is units times listed price.",
    "totalMatched": 407,
    "window": {
      "days": 30,
      "end": "2026-10-28",
      "start": "2026-09-29"
    }
  },
  …
Response fields
  • dataobjectThe tool's result. Compact by default; pass detail=full for the complete record.
  • data.countinteger
  • data.currencystring
  • data.dataEndstring
  • data.hasMoreboolean
  • data.itemsarray
  • data.items[].commission_ratestring
  • data.items[].creator_conversion_rationumber
  • data.items[].creator_numinteger
  • data.items[].delivery_typestring
  • data.items[].idstring
  • data.items[].is_full_serviceinteger
  • data.items[].is_overseasinteger
  • data.items[].is_tokopediainteger
  • data.items[].launch_datestring
  • data.items[].live_revenuestring
  • data.items[].max_real_pricestring
  • data.items[].min_real_pricestring
  • data.items[].pri_cate_idinteger
  • data.items[].product_ratingnumber
  • data.items[].product_titlestring
  • data.items[].revenuestring
  • data.items[].revenue_grouping_ratestring
  • data.items[].revenue_trendarray
  • data.items[].saleinteger
  • data.items[].sec_cate_idinteger
  • data.items[].shipping_feestring
  • data.items[].showcase_revenuestring
  • data.items[].ter_cate_idinteger
  • data.items[].totalinteger
  • data.items[].unit_pricestring
  • data.items[].video_revenuestring
  • data.keywordstring
  • data.marketstring
  • data.nextstring
  • data.notesarray
  • data.see_alsostring
  • data.sortedBystring
  • data.sourcestring
  • data.totalMatchedinteger
  • data.windowobject
  • data.window.daysinteger
  • data.window.endstring
  • data.window.startstring
  • metaobject
  • meta.credits_chargedinteger1 on success.
  • meta.credits_remainingintegerCredits left this period, when known.
  • meta.request_idstringQuote it to support.
  • next_cursorstringPresent when there is another page: pass it back as cursor.

Errors

  • 400
  • 401
  • 402
  • 403
  • 404
  • 429
  • 502
  • 503
Try it Live call, 1 credit
More parameters (23)

Top-selling TikTok Shop sellers

Shop Analytics

TikTok Shop sellers ranked by estimated sales over a date range: revenue, units, growth, average price, and revenue split across own accounts, affiliates and the mall. keyword = a shop or brand name, matched loosely, e.g. 'medicube'; not a product type. For the shops behind a product type or category, rank products with product_top_selling, then product method=page on the top items gives their sellerId. Without a keyword: the top 10 shops for the most recent days (about 6). type=brands lists the top 10 brands. No category scope for shops. Up to 100 rows per page with cursor paging, about 500 rows per keyword. sort: revenue, units or growth; order=asc lists lowest first. Filters: revenue, growth, price, revenue source, seller type. region picks the market (default US). Examples: {"keyword":"medicube","window":"90d"}, {"type":"brands","region":"GB"}.

GET/v1/shops/top

Shops ranked by sales

  • 1 credit per call
  • Shop Analytics
  • Paged
  • 17 markets

Parameters

  • keywordstring

    A shop or brand NAME, matched loosely against shop names, e.g. 'medicube'. It does not match product types: 'skincare' finds shops with that word in their name. For the shops behind a product type or category, rank products with product_top_selling (category or a product keyword), call product method=page on the top items for their sellerId, then use shop or call this tool with the brand names found. If keyword is omitted, the result is the top 10 shops for the most recent days (about 6), whatever window is set: pass a shop or brand name when the user wants more than 10 rows or a specific window.

  • limitinteger

    Results per page. Max 100 per page; pass next as cursor for the following page. Up to about 500 rows per keyword. Without a keyword: 10 rows. Values above a method's maximum are lowered and reported in notes.

14 more optional parameters
  • cursorstring

    Paging: pass the next value from the previous response unchanged. Omit on the first page.

  • detailstring

    compact (default) returns the useful fields; full adds the raw upstream payload (large).

    Defaultcompact   One ofcompactfull

  • endstring

    Shop Analytics methods: custom range end, YYYY-MM-DD (capped at the last complete day).

  • orderstring

    desc (default, highest first) or asc (lowest first among the matching rows; pair it with a revenue or units filter to skip dead listings). Applies with a keyword.

    One ofdescasc

  • pricestring

    Filter. Average selling price in the market's currency, e.g. 20-100.

  • regionstring

    Market as an ISO country code, default US. Shop Analytics methods: sales data for that market, amounts in its currency. Live methods that take it (search, video detail, creator posts, Shop pages): TikTok as seen in that market where TikTok serves it. Core: US, GB, DE, FR, ES, JP, TH, VN, ID, MY, PH, BR, MX. Extended: PL, IT, NL, IE. Other countries are refused. See shop_regions.

  • revenuestring

    Filter. Shop revenue in the market's currency over the window, e.g. >100000.

  • revenue_growthstring

    Filter. Revenue growth percent vs the previous window, e.g. >30.

  • revenue_sourcestring

    Filter. Main revenue source: own accounts, affiliates, or the mall.

    One ofSELF_ACCOUNTSAFFILIATESHOPPING_MALL

  • seller_typestring

    Filter. BRAND or RETAILER.

    One ofBRANDRETAILER

  • sortstring

    Ranking metric: growth, revenue, units. Default revenue. growth favours brand-new items (shown as >999.9%); pair it with a revenue or units filter. Applies with a keyword.

    One ofgrowthrevenueunits

  • startstring

    Shop Analytics methods: custom range start, YYYY-MM-DD.

  • typestring

    shops (default) or brands (the top 10 brands for the most recent days; keyword, filters and sort do not apply).

    One ofshopsbrands

  • windowstring

    Shop Analytics methods: date range ending at the last complete day (about 2 days ago). Default 30d. Use start/end for a custom range.

    One of7d30d90d180d365d

Use it in Claude or ChatGPT

Connect https://mcp.tokconnect.com/mcp and your AI calls this as the shop_top_selling tool. Same data, same credit. MCP setup

MCP tool call
{
  "tool": "shop_top_selling",
  "arguments": {
    "keyword": "lip oil",
    "limit": 3
  }
}

Request

curl "https://api.tokconnect.com/v1/shops/top?keyword=lip%20oil&limit=3" \
  -H "X-API-Key: $TOKCONNECT_API_KEY"

Response

Example response
{
  "data": {
    "count": 3,
    "currency": "USD",
    "dataEnd": "2026-10-28",
    "hasMore": true,
    "items": [
      {
        "affiliate_revenue": "$192.14k",
        "id": "7495499730147969966",
        "is_full_service": 0,
        "live_revenue": "$38.81k",
        "main_category": "{\"pri_main_category\":[\"601450\"],\"sec_main_category\":[\"601450-856208\"],\"ter_main_category\":[\"601450-856208-856080\"]}",
        "name": "Eternal Perfume Oils",
        "region": "US",
        "revenue": "$225.43k",
        "revenue_grouping_rate": "7.3%",
        "revenue_trend": [
          6719.6,
          6453.8,
          5580.2
        ],
        "sale": 4036,
        "self_promotion_revenue": "$626.06",
        "seller_type": "BRAND",
        "shopping_mall_revenue": "$32.66k",
        "showcase_revenue": "$39.67k",
        "total": 500,
        "unit_price": "$55.85",
        "video_revenue": "$146.95k"
      },
      {
        "affiliate_revenue": "$32.13k",
        "id": "7495638404827024204",
        "is_full_service": 0,
        "live_revenue": "$13.74k",
        "main_category": "{\"pri_main_category\":[\"601450\"],\"sec_main_category\":[\"601450-848648\"],\"ter_main_category\":[\"601450-848648-601534\"]}",
        "name": "The Lip Bar",
        "region": "US",
        "revenue": "$45.24k",
        "revenue_grouping_rate": "-18.3%",
        "revenue_trend": [
          690,
          1138,
          1264
        ],
        "sale": 2784,
        "self_promotion_revenue": "$8.10k",
        "seller_type": "BRAND",
        "shopping_mall_revenue": "$5.02k",
        "showcase_revenue": "$7.76k",
        "total": 500,
        "unit_price": "$16.25",
        "video_revenue": "$23.73k"
      },
      {
        "affiliate_revenue": "$13.63k",
        "id": "8651629413806347145",
        "is_full_service": 1,
        "live_revenue": "$2.46k",
        "main_category": "{\"pri_main_category\":[\"601152\"],\"sec_main_category\":[\"601152-842888\"],\"ter_main_category\":[\"601152-842888-601262\"]}",
        "name": "KISSLIP",
        "region": "US",
        "revenue": "$40.99k",
        "revenue_grouping_rate": "8.8%",
        "revenue_trend": [
          685.4420000000001,
          828.409,
          1040.042
        ],
        "sale": 3185,
        "self_promotion_revenue": "$1.88k",
        "seller_type": "RETAILER",
        "shopping_mall_revenue": "$25.48k",
        "showcase_revenue": "$34.26k",
        "total": 500,
        "unit_price": "$12.87",
        "video_revenue": "$4.27k"
      }
    ],
    "keyword": "lip oil",
    "market": "US",
    "next": "eyJwYWdlIjoyLCJzaXplIjozfQ",
    "notes": [
      "Market US (United States): amounts are in USD."
    ],
    "see_also": "Pass a row's id (sellerId) to shop: method=sales, trend, products, creators, or store for the live storefront.",
    "sortedBy": "revenue",
    "source": "TokConnect Shop Analytics (TikTok Shop US). Revenue and units are estimates: units track TikTok's sold counter; revenue is units times listed price.",
    "totalMatched": 500,
    "window": {
      "days": 30,
      "end": "2026-10-28",
      "start": "2026-09-29"
    }
  },
  "meta": {
    "credits_charged": 1,
    "credits_remaining": 7906,
    "request_id": "req_3f9c2a1b7d4e"
  },
  "next_cursor": "eyJwYWdlIjoyLCJzaXplIjozfQ"
}
Response fields
  • dataobjectThe tool's result. Compact by default; pass detail=full for the complete record.
  • data.countinteger
  • data.currencystring
  • data.dataEndstring
  • data.hasMoreboolean
  • data.itemsarray
  • data.items[].affiliate_revenuestring
  • data.items[].idstring
  • data.items[].is_full_serviceinteger
  • data.items[].live_revenuestring
  • data.items[].main_categorystring
  • data.items[].namestring
  • data.items[].regionstring
  • data.items[].revenuestring
  • data.items[].revenue_grouping_ratestring
  • data.items[].revenue_trendarray
  • data.items[].saleinteger
  • data.items[].self_promotion_revenuestring
  • data.items[].seller_typestring
  • data.items[].shopping_mall_revenuestring
  • data.items[].showcase_revenuestring
  • data.items[].totalinteger
  • data.items[].unit_pricestring
  • data.items[].video_revenuestring
  • data.keywordstring
  • data.marketstring
  • data.nextstring
  • data.notesarray
  • data.see_alsostring
  • data.sortedBystring
  • data.sourcestring
  • data.totalMatchedinteger
  • data.windowobject
  • data.window.daysinteger
  • data.window.endstring
  • data.window.startstring
  • metaobject
  • meta.credits_chargedinteger1 on success.
  • meta.credits_remainingintegerCredits left this period, when known.
  • meta.request_idstringQuote it to support.
  • next_cursorstringPresent when there is another page: pass it back as cursor.

Errors

  • 400
  • 401
  • 402
  • 403
  • 404
  • 429
  • 502
  • 503
Try it Live call, 1 credit
More parameters (14)

Top-selling TikTok Shop creators

Shop Analytics

Creators (affiliates) ranked by the sales they drove over a date range: revenue, units, followers, engagement, views, trend. keyword = words in creator names, handles and bios (not the products they sell); category = a category name or id (levels 1-3: the creators selling in it, no keyword needed); both together narrow further. With neither, the result is the top 10 creators for the most recent days (about 6). Up to 100 rows per page with cursor paging, about 700 rows per keyword. sort: revenue, units, followers or growth; order=asc lists lowest first. Filters: revenue, followers, engagement, average views, price, growth, video or LIVE, gender, language, contact channel, MCN, audience age/language. region picks the market (default US). Examples: {"category":"Pet Supplies","followers":"10000-500000","contact":"EMAIL"}, {"keyword":"beauty","window":"7d","sort":"units"}.

GET/v1/affiliates/top

Creators ranked by sales

  • 1 credit per call
  • Shop Analytics
  • Paged
  • 17 markets

Parameters

  • keywordstring

    Matched against creator names, handles and bios (not the products they sell): 'pet' finds accounts like 'Pet Finds'. For the affiliates of a product type, pass category, or rank products with product_top_selling and call product method=creators on the top items. If keyword and category are both omitted, the result is the top 10 creators for the most recent days (about 6), whatever window is set: pass a keyword or category when the user wants more than 10 rows or a specific window.

  • limitinteger

    Results per page. Max 100 per page; pass next as cursor for the following page. Up to about 700 rows per keyword. Without a keyword or category: 10 rows. Values above a method's maximum are lowered and reported in notes.

24 more optional parameters
  • account_typestring

    Filter. BELONGED_TO_SELLER = a brand's own account; INDEPENDENT = affiliate creator.

    One ofBELONGED_TO_SELLERINDEPENDENT

  • audience_agestring

    Filter. Main follower age band.

    One of18-2425-3435-4445-5455+

  • audience_languagestring

    Filter. Main follower language.

    One ofen-USes-ESpt-BRfr-FRde-DEit-ITja-JPru-RU

  • avg_viewsstring

    Filter. Average video views, e.g. >10000.

  • categoryarray of string

    Narrow to one or more Shop categories (up to 5), by name or numeric id, levels 1 to 3: "Skincare", "Pet Supplies", "Beauty & Personal Care","Health" or "601450". Without a keyword the creators of the category are found by merging several generic keyword searches (the source needs a keyword), and the result says how many keyword sweeps and distinct rows that gave. Find names and ids with category_trends method=tree.

  • contactstring

    Filter. Only creators who list this contact channel. Several: comma separated, e.g. EMAIL,INSTAGRAM. Values: EMAIL, WHATSAPP, INSTAGRAM, YOUTUBE, FACEBOOK, TWITTER.

  • cursorstring

    Paging: pass the next value from the previous response unchanged. Omit on the first page.

  • debutstring

    Filter. Days since the creator started selling: <4, <8, <31, or >30.

    One of<4<8<31>30

  • detailstring

    compact (default) returns the useful fields; full adds the raw upstream payload (large).

    Defaultcompact   One ofcompactfull

  • endstring

    Shop Analytics methods: custom range end, YYYY-MM-DD (capped at the last complete day).

  • engagementstring

    Filter. Video engagement rate percent, e.g. >8.

  • followersstring

    Filter. Followers, e.g. 50000-500000.

  • genderstring

    Filter. Creator gender as the feed classifies it.

    One ofFemaleMale

  • growingboolean

    Filter. true = only creators whose revenue is growing.

  • languagestring

    Filter. Creator language.

    One ofenesptfrzhdeit

  • mcnstring

    Filter. Signed to an MCN (agency) or not.

    One ofSIGNEDNOT_SIGNED

  • orderstring

    desc (default, highest first) or asc (lowest first among the matching rows; pair it with a revenue or units filter to skip dead listings). Applies with a keyword or category.

    One ofdescasc

  • pricestring

    Filter. Average price of what they sell, in the market's currency, e.g. <20.

  • regionstring

    Market as an ISO country code, default US. Shop Analytics methods: sales data for that market, amounts in its currency. Live methods that take it (search, video detail, creator posts, Shop pages): TikTok as seen in that market where TikTok serves it. Core: US, GB, DE, FR, ES, JP, TH, VN, ID, MY, PH, BR, MX. Extended: PL, IT, NL, IE. Other countries are refused. See shop_regions.

  • revenuestring

    Filter. Revenue the creator drove in the market's currency over the window, e.g. >10000.

  • revenue_sourcestring

    Filter. Main revenue source: VIDEO or LIVE.

    One ofVIDEOLIVE

  • sortstring

    Ranking metric: followers, growth, revenue, units. Default revenue. growth favours brand-new items (shown as >999.9%); pair it with a revenue or units filter. Applies with a keyword or category.

    One offollowersgrowthrevenueunits

  • startstring

    Shop Analytics methods: custom range start, YYYY-MM-DD.

  • windowstring

    Shop Analytics methods: date range ending at the last complete day (about 2 days ago). Default 30d. Use start/end for a custom range.

    One of7d30d90d180d365d

Use it in Claude or ChatGPT

Connect https://mcp.tokconnect.com/mcp and your AI calls this as the creator_top_selling tool. Same data, same credit. MCP setup

MCP tool call
{
  "tool": "creator_top_selling",
  "arguments": {
    "keyword": "lip oil",
    "limit": 3
  }
}

Request

curl "https://api.tokconnect.com/v1/affiliates/top?keyword=lip%20oil&limit=3" \
  -H "X-API-Key: $TOKCONNECT_API_KEY"

Response

Example response
{
  "data": {
    "count": 3,
    "currency": "USD",
    "dataEnd": "2026-10-28",
    "hasMore": true,
    "items": [
      {
        "creatorDebut": "2024-01-01",
        "followers": "10.5k",
        "handle": "denisebw75",
        "id": "6805718817295614981",
        "main_category": "{\"pri_main_category\":[\"601352\",\"601152\",\"600154\"],\"sec_main_category\":[\"601352-900488\",\"600154-808328\",\"601450-848648\"],\"ter_main_category\":[\"601352-900488-901000\",\"600154-808328-600157\",\"601450-848648-601555\"]}",
        "new_followers": "0",
        "nickname": "TikTok’s Favorite Lips 👄",
        "revenue": "$15.23k",
        "revenue_grouping_rate": 3.1356722740088223,
        "revenue_trend": [
          29,
          317,
          123
        ],
        "sale": "558",
        "signature": "Mom/Mimi/Woman Roofer/beauty/skincare/fashion/TTS/Pop Up LIVEHOST #TTFL 👄",
        "total": 500,
        "unit_price": "$27.29",
        "video_engagement_rate": "1.37%",
        "views": "411.13k",
        "views_trend": [
          5474,
          7337,
          9372
        ]
      },
      {
        "creatorDebut": "2024-10-19",
        "followers": "7.8k",
        "handle": "drchristinbradley",
        "id": "7397862193050485802",
        "main_category": "{\"pri_main_category\":[\"601450\"],\"sec_main_category\":[\"601450-849160\",\"601450-856208\"],\"ter_main_category\":[\"601450-849160-873736\",\"601450-856208-855952\"]}",
        "new_followers": "211",
        "nickname": "Royal Alchemyst Body Oils",
        "revenue": "$9.71k",
        "revenue_grouping_rate": -0.18963460104399701,
        "revenue_trend": [
          952,
          0,
          0
        ],
        "sale": "206",
        "signature": "Squalane infused body oils💧\nJoin the ROYAL VIP LIST 👇🏾",
        "total": 500,
        "unit_price": "$47.14",
        "video_engagement_rate": "-",
        "views": "36.2k",
        "views_trend": [
          2614,
          105,
          361
        ]
      },
      {
        "creatorDebut": "2021-11-06",
        "followers": "12.8k",
        "handle": "danina73",
        "id": "6758777337975899142",
        "main_category": "{\"pri_main_category\":[\"601450\",\"603014\",\"601152\"],\"sec_main_category\":[\"601450-1086856\",\"603014-834568\",\"601152-842376\"],\"ter_main_category\":[\"601450-1086856-1004680\",\"603014-834568-836104\",\"601152-842376-601276\"]}",
        "new_followers": "0",
        "nickname": "Oil Dlr",
        "revenue": "$7.64k",
        "revenue_grouping_rate": -0.19263273734158493,
        "revenue_trend": [
          437,
          276,
          323
        ],
        "sale": "376",
        "signature": "✨Short girl approved✨\n✨Leggings I’m obsessed with✨\n✨Cute | Comfy Fits✨\n✨Wellness that Works✨",
        "total": 500,
        "unit_price": "$20.31",
        "video_engagement_rate": "0.94%",
        "views": "334.08k",
        "views_trend": [
          30886,
          14386,
          25282
        ]
      }
    ],
    "keyword": "lip oil",
    "market": "US",
    "next": "eyJwYWdlIjoyLCJzaXplIjozfQ",
    "notes": [
      "Market US (United States): amounts are in USD."
    ],
    "see_also": "Pass a row's id or handle to creator_commerce (sales, products, shops, audience) or creator (profile, posts).",
    "sortedBy": "revenue",
    "source": "TokConnect Shop Analytics (TikTok Shop US). Revenue and units are estimates: units track TikTok's sold counter; revenue is units times listed price.",
    "totalMatched": 500,
    "window": {
      "days": 30,
      "end": "2026-10-28",
      "start": "2026-09-29"
    }
  },
  "meta": {
    "credits_charged": 1,
    "credits_remaining": 7906,
    "request_id": "req_3f9c2a1b7d4e"
  },
  "next_cursor": "eyJwYWdlIjoyLCJzaXplIjozfQ"
}
Response fields
  • dataobjectThe tool's result. Compact by default; pass detail=full for the complete record.
  • data.countinteger
  • data.currencystring
  • data.dataEndstring
  • data.hasMoreboolean
  • data.itemsarray
  • data.items[].creatorDebutstring
  • data.items[].followersstring
  • data.items[].handlestring
  • data.items[].idstring
  • data.items[].main_categorystring
  • data.items[].new_followersstring
  • data.items[].nicknamestring
  • data.items[].revenuestring
  • data.items[].revenue_grouping_ratenumber
  • data.items[].revenue_trendarray
  • data.items[].salestring
  • data.items[].signaturestring
  • data.items[].totalinteger
  • data.items[].unit_pricestring
  • data.items[].video_engagement_ratestring
  • data.items[].viewsstring
  • data.items[].views_trendarray
  • data.keywordstring
  • data.marketstring
  • data.nextstring
  • data.notesarray
  • data.see_alsostring
  • data.sortedBystring
  • data.sourcestring
  • data.totalMatchedinteger
  • data.windowobject
  • data.window.daysinteger
  • data.window.endstring
  • data.window.startstring
  • metaobject
  • meta.credits_chargedinteger1 on success.
  • meta.credits_remainingintegerCredits left this period, when known.
  • meta.request_idstringQuote it to support.
  • next_cursorstringPresent when there is another page: pass it back as cursor.

Errors

  • 400
  • 401
  • 402
  • 403
  • 404
  • 429
  • 502
  • 503
Try it Live call, 1 credit
More parameters (24)

Top-selling TikTok Shop videos

Shop Analytics

The top 10 shoppable videos by estimated revenue over a date range, with revenue, units, views, GPM, ad metrics (CPA, ROAS, ad revenue share), whether it is AI-generated, and the creator. The data source applies no filters to this ranking; to study one niche, rank its products with product_top_selling, then use product method=video_sales. Pass a row's id to video method=transcript or products. Example: {"window":"7d"}.

GET/v1/videos/top-selling

Top videos by sales

  • 1 credit per call
  • Shop Analytics
  • 17 markets

Parameters

  • detailstring

    compact (default) returns the useful fields; full adds the raw upstream payload (large).

    Defaultcompact   One ofcompactfull

  • endstring

    Shop Analytics methods: custom range end, YYYY-MM-DD (capped at the last complete day).

  • regionstring

    Market as an ISO country code, default US. Shop Analytics methods: sales data for that market, amounts in its currency. Live methods that take it (search, video detail, creator posts, Shop pages): TikTok as seen in that market where TikTok serves it. Core: US, GB, DE, FR, ES, JP, TH, VN, ID, MY, PH, BR, MX. Extended: PL, IT, NL, IE. Other countries are refused. See shop_regions.

  • startstring

    Shop Analytics methods: custom range start, YYYY-MM-DD.

  • windowstring

    Shop Analytics methods: date range ending at the last complete day (about 2 days ago). Default 30d. Use start/end for a custom range.

    One of7d30d90d180d365d

Use it in Claude or ChatGPT

Connect https://mcp.tokconnect.com/mcp and your AI calls this as the video_top_selling tool. Same data, same credit. MCP setup

MCP tool call
{
  "tool": "video_top_selling",
  "arguments": {}
}

Request

curl "https://api.tokconnect.com/v1/videos/top-selling" \
  -H "X-API-Key: $TOKCONNECT_API_KEY"

Response

Example response
{
  "data": {
    "count": 10,
    "currency": "USD",
    "dataEnd": "2026-10-28",
    "hasMore": false,
    "items": [
      {
        "ad": 1,
        "ad2Cost": "$25.73k",
        "ad2Roas": 3.69,
        "ad_cpa": "$82.20",
        "ad_revenue_ratio": "80.00%",
        "ad_view_ratio": "28.88%",
        "ai_video": 0,
        "collect_day": "2026-10-25",
        "content_type": "video",
        "creator_uid": "7408927728046933038",
        "description": "I think there’s a clear winner here 😅 #vacuum #stickvacuum #petallergies #shark #sharkpowerproflex ",
        "duration": "1m 35s",
        "follower_count": "191.3k",
        "gpm": "$51.56",
        "handle": "kid.shops",
        "id": "7700682843906723103",
        "original_duration": 95.267,
        "publish_date": "2026/10/25 15:02:39",
        "revenue": "$118.63k",
        "revenueDiff": 11786900,
        "revenue_grouping_rate": -2.0203332575437685,
        "revenue_trend": [
          0,
          0,
          379
        ],
        "sale": 313,
        "views": "2.3m",
        "views_trend": [
          0,
          0,
          1681
        ]
      },
      {
        "ad": 1,
        "ad2Cost": "$23.83k",
        "ad2Roas": 3.53,
        "ad_cpa": "$77.61",
        "ad_revenue_ratio": "72.70%",
        "ad_view_ratio": "22.75%",
        "ai_video": 0,
        "collect_day": "2026-02-17",
        "content_type": "video",
        "creator_uid": "6546693901460832266",
        "description": "Changed my life. ",
        "duration": "2m 41s",
        "follower_count": "5m",
        "gpm": "$42.52",
        "handle": "_jen_hamilton_",
        "id": "7607862589363670285",
        "original_duration": 161.767,
        "publish_date": "2026/02/17 10:53:10",
        "revenue": "$115.74k",
        "revenueDiff": -9613500,
        "revenue_grouping_rate": -1.9762080055798814,
        "revenue_trend": [
          84825,
          16211,
          4901
        ],
        "sale": 307,
        "views": "2.72m",
        "views_trend": [
          778386,
          334822,
          228177
        ]
      },
      {
        "ad": 1,
        "ad2Cost": "$11.08k",
        "ad2Roas": 4.1,
        "ad_cpa": "$1.35",
        "ad_revenue_ratio": "50.33%",
        "ad_view_ratio": "20.70%",
        "ai_video": 0,
        "collect_day": "2026-10-23",
        "content_type": "multi_photo",
        "creator_uid": "7569137951294620685",
        "description": "",
        "duration": "0m",
        "follower_count": "3.19k",
        "gpm": "$10.21",
        "handle": "robertco.yuo",
        "id": "7699847369348713742",
        "original_duration": 0,
        "publish_date": "2026/10/23 09:00:36",
        "revenue": "$90.33k",
        "revenueDiff": -4719000,
        "revenue_grouping_rate": -1.9624346998710007,
        "revenue_trend": [
          11935,
          32318,
          24508
        ],
        "sale": 8212,
        "views": "8.84m",
        "views_trend": [
          1100000,
          3300000,
          2300000
        ]
      }
    ],
    "market": "US",
    "notes": [
      "Market US (United States): amounts are in USD.",
      "Without a keyword the data source returns its fixed overall top 10 for the most recent days (window below), whatever window you ask for. Add a keyword to rank more rows over your own window."
    ],
    "see_also": "Pass a row's id to video: method=detail, transcript, products, sales.",
    "source": "TokConnect Shop Analytics (TikTok Shop US). Revenue and units are estimates: units track TikTok's sold counter; revenue is units times listed price.",
  …
Response fields
  • dataobjectThe tool's result. Compact by default; pass detail=full for the complete record.
  • data.countinteger
  • data.currencystring
  • data.dataEndstring
  • data.hasMoreboolean
  • data.itemsarray
  • data.items[].adinteger
  • data.items[].ad2Coststring
  • data.items[].ad2Roasnumber
  • data.items[].ad_cpastring
  • data.items[].ad_revenue_ratiostring
  • data.items[].ad_view_ratiostring
  • data.items[].ai_videointeger
  • data.items[].collect_daystring
  • data.items[].content_typestring
  • data.items[].creator_uidstring
  • data.items[].descriptionstring
  • data.items[].durationstring
  • data.items[].follower_countstring
  • data.items[].gpmstring
  • data.items[].handlestring
  • data.items[].idstring
  • data.items[].original_durationnumber
  • data.items[].publish_datestring
  • data.items[].revenuestring
  • data.items[].revenueDiffinteger
  • data.items[].revenue_grouping_ratenumber
  • data.items[].revenue_trendarray
  • data.items[].saleinteger
  • data.items[].viewsstring
  • data.items[].views_trendarray
  • data.marketstring
  • data.notesarray
  • data.see_alsostring
  • data.sourcestring
  • data.windowobject
  • data.window.daysinteger
  • data.window.endstring
  • data.window.startstring
  • metaobject
  • meta.credits_chargedinteger1 on success.
  • meta.credits_remainingintegerCredits left this period, when known.
  • meta.request_idstringQuote it to support.
  • next_cursorstringPresent when there is another page: pass it back as cursor.

Errors

  • 400
  • 401
  • 402
  • 403
  • 404
  • 429
  • 502
  • 503
Try it Live call, 1 credit
More parameters (5)

Top-selling TikTok Shop LIVEs

Shop Analytics

The top 10 LIVE broadcasts by estimated revenue over a date range, with host, start and end time, duration, units, GPM and average price. The data source applies no filters to this ranking. Pass a row's id to live method=products, sales or history. Example: {"window":"7d"}.

GET/v1/lives/top-selling

Top LIVEs by sales

  • 1 credit per call
  • Shop Analytics
  • 17 markets

Parameters

  • detailstring

    compact (default) returns the useful fields; full adds the raw upstream payload (large).

    Defaultcompact   One ofcompactfull

  • endstring

    Shop Analytics methods: custom range end, YYYY-MM-DD (capped at the last complete day).

  • regionstring

    Market as an ISO country code, default US. Shop Analytics methods: sales data for that market, amounts in its currency. Live methods that take it (search, video detail, creator posts, Shop pages): TikTok as seen in that market where TikTok serves it. Core: US, GB, DE, FR, ES, JP, TH, VN, ID, MY, PH, BR, MX. Extended: PL, IT, NL, IE. Other countries are refused. See shop_regions.

  • startstring

    Shop Analytics methods: custom range start, YYYY-MM-DD.

  • windowstring

    Shop Analytics methods: date range ending at the last complete day (about 2 days ago). Default 30d. Use start/end for a custom range.

    One of7d30d90d180d365d

Use it in Claude or ChatGPT

Connect https://mcp.tokconnect.com/mcp and your AI calls this as the live_top_selling tool. Same data, same credit. MCP setup

MCP tool call
{
  "tool": "live_top_selling",
  "arguments": {}
}

Request

curl "https://api.tokconnect.com/v1/lives/top-selling" \
  -H "X-API-Key: $TOKCONNECT_API_KEY"

Response

Example response
{
  "data": {
    "count": 10,
    "currency": "USD",
    "dataEnd": "2026-10-28",
    "hasMore": false,
    "items": [
      {
        "create_time": "2026/10/21 06:15:53",
        "duration": "123h 56m",
        "finish_time": "2026/10/26 10:12:51",
        "gpm": "$55.39",
        "handle": "based",
        "id": "7699061230417349407",
        "main_category": [
          "601450-848904"
        ],
        "record_type": "SHORT",
        "revenue": "$169.85k",
        "sale": 5694,
        "title": "DEALS FOR YOU - Live Now!",
        "uid": "7153432386608251946",
        "unit_price": "$29.83",
        "views": "3.07m"
      },
      {
        "create_time": "2026/10/25 15:40:57",
        "duration": "11h 39m",
        "finish_time": "2026/10/26 03:20:04",
        "gpm": "$763.53",
        "handle": "glamourmodernfashion1",
        "id": "7700692389735811853",
        "main_category": [
          "601152-842376"
        ],
        "record_type": "SHORT",
        "revenue": "$89.92k",
        "sale": 1251,
        "title": "",
        "uid": "7043091206013060102",
        "unit_price": "$71.88",
        "views": "117.77k"
      },
      {
        "create_time": "2026/10/27 18:27:37",
        "duration": "5h 57m",
        "finish_time": "2026/10/28 00:25:29",
        "gpm": "$816.49",
        "handle": "noelyfajas",
        "id": "7701477528661920543",
        "main_category": [
          "601152-842888"
        ],
        "record_type": "SHORT",
        "revenue": "$82.50k",
        "sale": 969,
        "title": "Fall Deals For You LIVE",
        "uid": "6801519791112897542",
        "unit_price": "$85.13",
        "views": "101.04k"
      }
    ],
    "market": "US",
    "notes": [
      "Market US (United States): amounts are in USD.",
      "Without a keyword the data source returns its fixed overall top 10 for the most recent days (window below), whatever window you ask for. Add a keyword to rank more rows over your own window."
    ],
    "see_also": "Pass a row's id to live: method=products, sales, history.",
    "source": "TokConnect Shop Analytics (TikTok Shop US). Revenue and units are estimates: units track TikTok's sold counter; revenue is units times listed price.",
    "window": {
      "days": 8,
      "end": "2026-10-28",
      "start": "2026-10-21"
    }
  },
  "meta": {
    "credits_charged": 1,
    "credits_remaining": 7906,
    "request_id": "req_3f9c2a1b7d4e"
  }
}
Response fields
  • dataobjectThe tool's result. Compact by default; pass detail=full for the complete record.
  • data.countinteger
  • data.currencystring
  • data.dataEndstring
  • data.hasMoreboolean
  • data.itemsarray
  • data.items[].create_timestring
  • data.items[].durationstring
  • data.items[].finish_timestring
  • data.items[].gpmstring
  • data.items[].handlestring
  • data.items[].idstring
  • data.items[].main_categoryarray
  • data.items[].record_typestring
  • data.items[].revenuestring
  • data.items[].saleinteger
  • data.items[].titlestring
  • data.items[].uidstring
  • data.items[].unit_pricestring
  • data.items[].viewsstring
  • data.marketstring
  • data.notesarray
  • data.see_alsostring
  • data.sourcestring
  • data.windowobject
  • data.window.daysinteger
  • data.window.endstring
  • data.window.startstring
  • metaobject
  • meta.credits_chargedinteger1 on success.
  • meta.credits_remainingintegerCredits left this period, when known.
  • meta.request_idstringQuote it to support.
  • next_cursorstringPresent when there is another page: pass it back as cursor.

Errors

  • 400
  • 401
  • 402
  • 403
  • 404
  • 429
  • 502
  • 503
Try it Live call, 1 credit
More parameters (5)