> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scrapebadger.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Shop Best Sellers

> TikTok Shop's official best sellers of the past 30 days, ranked, with price, discount, rating, sold count and seller.

<Note>
  The storefront's own **"Best sellers in past 30 days"** ranking — `rank` is the 1-based position and `promo` carries the active deal label (`Flash sale`, `Limited time deal`) when there is one.
</Note>

<Note>
  **US market only** — TikTok Shop resolves the market from the visitor's location and these endpoints read the US storefront (prices in USD). Lists return what the storefront page renders; there is no further pagination.
</Note>

<Note>
  Each request costs **5 credits**. Failed requests are not charged.
</Note>


## OpenAPI

````yaml GET /v1/tiktok/shop/ranking
openapi: 3.1.0
info:
  title: ScrapeBadger TikTok API
  version: 1.0.0
  description: >-
    TikTok scraping API for user profiles, videos, comments, transcripts,
    hashtags, music/sounds, search, trending, and the EU Commercial Content (ad
    transparency) library. Returns clean structured JSON; handles signing,
    anti-bot bypass, and regional proxy routing automatically.
servers:
  - url: https://scrapebadger.com
    description: Production
security:
  - apiKeyAuth: []
paths:
  /v1/tiktok/shop/ranking:
    get:
      tags:
        - TikTok Shop
      summary: Shop Best Sellers
      description: >-
        TikTok Shop's own ranking of the best-selling products of the past 30
        days, with price, discount, rating, sold count, seller and deal labels.
        US market only (prices in USD); lists carry what the storefront page
        renders, with no further pagination.
      operationId: getTikTokShopRanking
      parameters:
        - name: count
          in: query
          schema:
            type: integer
            default: 20
            minimum: 1
            maximum: 50
          description: Maximum number of products to return (the page carries about 18).
      responses:
        '200':
          description: Shop Best Sellers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ShopRankingResponse'
              example:
                products:
                  - product_id: '1729448464509734958'
                    title: Toplux Magnesium Complex 8 Essential Magnesium Supplement
                    url: >-
                      https://shop.tiktok.com/us/pdp/magnesium-complex-by-toplux-8-essential-magnesium-forms-in-one-capsule/1729448464509734958
                    image: >-
                      https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/0b7d3556b58d451da...
                    price:
                      amount: 16.97
                      original: 49.97
                      discount: 66%
                      currency: USD
                      symbol: $
                    rating: 4.6
                    review_count: null
                    sold_count: 2000000
                    seller:
                      id: null
                      name: Toplux Nutrition
                      logo: null
                    brand: null
                    labels:
                      - Free shipping
                    promo: Limited time deal
                    video: null
                    rank: 1
                  - product_id: '1731997246433955867'
                    title: >-
                      [Dr.Melaxin Official] Gifted Collagen Boost Set Pore Spot
                      Skin Care Calcium Collagen Volume Firming Balm for
                      Enhanced Skin Health routine
                    url: >-
                      https://shop.tiktok.com/us/pdp/gifted-collagen-boost-set-for-enhanced-skin-health-routine/1731997246433955867
                    image: >-
                      https://p16-oec-general-useast5.ttcdn-us.com/tos-useast5-i-omjb5zjo8w-tx/60593f61e24149a78...
                    price:
                      amount: 58.5
                      original: 273
                      discount: 79%
                      currency: USD
                      symbol: $
                    rating: 4.5
                    review_count: null
                    sold_count: 471700
                    seller:
                      id: null
                      name: Dr.Melaxin
                      logo: null
                    brand: null
                    labels:
                      - Free shipping
                    promo: null
                    video: null
                    rank: 2
                period: past_30_days
                region: US
components:
  schemas:
    ShopRankingResponse:
      properties:
        products:
          items:
            $ref: '#/components/schemas/ShopProduct'
          title: Products
          type: array
        period:
          default: past_30_days
          title: Period
          type: string
        region:
          default: US
          title: Region
          type: string
      title: ShopRankingResponse
      type: object
    ShopProduct:
      properties:
        product_id:
          title: Product Id
          type: string
        title:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Title
        url:
          title: Url
          type: string
        image:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Image
        price:
          $ref: '#/components/schemas/ShopPrice'
        rating:
          anyOf:
            - type: number
            - type: 'null'
          default: null
          title: Rating
        review_count:
          anyOf:
            - type: integer
            - type: 'null'
          default: null
          title: Review Count
        sold_count:
          anyOf:
            - type: integer
            - type: 'null'
          default: null
          title: Sold Count
        seller:
          anyOf:
            - $ref: '#/components/schemas/ShopSeller'
            - type: 'null'
          default: null
        brand:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Brand
        labels:
          items:
            type: string
          title: Labels
          type: array
        promo:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Promo
        video:
          anyOf:
            - $ref: '#/components/schemas/ShopVideo'
            - type: 'null'
          default: null
        rank:
          anyOf:
            - type: integer
            - type: 'null'
          default: null
          title: Rank
      required:
        - product_id
        - url
      title: ShopProduct
      type: object
    ShopPrice:
      properties:
        amount:
          anyOf:
            - type: number
            - type: 'null'
          default: null
          title: Amount
        original:
          anyOf:
            - type: number
            - type: 'null'
          default: null
          title: Original
        discount:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Discount
        currency:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Currency
        symbol:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Symbol
      title: ShopPrice
      type: object
    ShopSeller:
      properties:
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        name:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Name
        logo:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Logo
      title: ShopSeller
      type: object
    ShopVideo:
      description: The TikTok video a product card is bound to (search results only).
      properties:
        id:
          title: Id
          type: string
        title:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Title
        author_name:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Author Name
        play_count:
          anyOf:
            - type: integer
            - type: 'null'
          default: null
          title: Play Count
        like_count:
          anyOf:
            - type: integer
            - type: 'null'
          default: null
          title: Like Count
        cover_url:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Cover Url
        video_url:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Video Url
      required:
        - id
      title: ShopVideo
      type: object
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````