ApifyTikTok ShopE-commerce

Search TikTok Shop products by keyword

apify.tiktok-shop.search.products

Scrape TikTok Shop products for a keyword across 10 storefronts (US, GB, VN, TH, PH, MY, SG, JP, MX, ID) — title, price, original_price, discount_percent, seller_name, rating, sold_count and full category_path per product

Price
$0.008/resultAt provider cost
Success rate
85%Last 30 days · 40 calls
Latency p50
34 sp95 80 s
Last verified
Sep 26, 2026Verified working
POSThttps://toolswitch.dev/v1/tools/apify.tiktok-shop.search.products?memory=2048&timeout=90&maxItems=1&maxTotalChargeUsd=0.08Preview
Try onlineComing soonProvider docs ↗
  • Uses platform quota
  • Synchronous response
  • Reads public data

Parameters

the response is the dataset items array directly — no run envelope, no polling. Each row carries product_id, title, price, original_price, discount_percent, currency, seller_name, seller_id, rating, review_count, sold_count, category_path, product_url and image URLs. Cap every call with maxTotalChargeUsd, the spend limit Apify enforces; the body row limit sets how many rows run. The same actor also takes product_urls (per-product detail, billed product-detail) and category_urls (category browse); this entry is the keyword-search capability

ParameterTypeRequiredDescriptionExample
Query parameters
memoryintegerOptionalMB of run memory. treg's key requires 2048, which fixes the actor-start charge; your own key may set any size2048
timeoutintegerOptionalrun timeout in seconds. treg's key requires 90 so the run and its rows arrive before any wait gives up; a larger pull should use your own key and the async web.scrape.job.* pair above90
maxItemsintegerOptionaloptional row cap; pay-per-event actors that take the row count from their own input ignore it, so maxTotalChargeUsd is the spend limit100
maxTotalChargeUsdnumberOptionalthe spend cap Apify enforces on every event this run bills, in dollars. treg's key requires it, above 0 and at most 1, and holds it for the call0.5
  • Query parameters
  • memoryintegerOptional

    MB of run memory. treg's key requires 2048, which fixes the actor-start charge; your own key may set any size

    Example: 2048

  • timeoutintegerOptional

    run timeout in seconds. treg's key requires 90 so the run and its rows arrive before any wait gives up; a larger pull should use your own key and the async web.scrape.job.* pair above

    Example: 90

  • maxItemsintegerOptional

    optional row cap; pay-per-event actors that take the row count from their own input ignore it, so maxTotalChargeUsd is the spend limit

    Example: 100

  • maxTotalChargeUsdnumberOptional

    the spend cap Apify enforces on every event this run bills, in dollars. treg's key requires it, above 0 and at most 1, and holds it for the call

    Example: 0.5

Code samples

Replace $TOOLSWITCH_KEY with the key you created in the console.

Preview
curl -X POST 'https://toolswitch.dev/v1/tools/apify.tiktok-shop.search.products?memory=2048&timeout=90&maxItems=1&maxTotalChargeUsd=0.08' \
  -H "X-Toolswitch-Key: $TOOLSWITCH_KEY" \
  -H "Content-Type: application/json" \
  --data-raw '{"region":"US","max_results":1,"search_terms":["phone case"],"scrape_product_details":false}'

This gateway API is in preview; its URL and authentication may change. The example parameters are sample data. Calls are billed at $0.008/result, including the service fee.