TikTok Shop API: Extract Product & Seller Data
TikTok Shop is growing fast. Our API helps you monitor products, track prices, and analyze sellers on TikTok's e-commerce platform.
TikTok Shop Endpoints
| Endpoint | Description |
|---|---|
| Products | Get products from a seller |
| Product Details | Get detailed product info |
| Search | Search products by keyword |
Why Scrape TikTok Shop?
- Competitor Analysis - Track competitor pricing and products
- Market Research - Discover trending products
- Price Monitoring - Get alerts on price changes
- Product Discovery - Find best-sellers in your niche
- Seller Research - Analyze successful TikTok shops
Products Endpoint
Get all products from a TikTok Shop seller:
const response = await fetch('https://api.sociavault.com/tiktok-shop/products', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
handle: 'shop_username'
})
});
const products = await response.json();
Response
{
"seller": {
"username": "shop_username",
"displayName": "Fashion Store",
"followers": 125000,
"productCount": 48
},
"products": [
{
"id": "1234567890",
"title": "Summer Dress - Floral Print",
"price": 29.99,
"originalPrice": 49.99,
"discount": "40%",
"sold": 2500,
"rating": 4.8,
"reviewCount": 450,
"images": ["https://...", "https://..."],
"url": "https://www.tiktok.com/shop/pdp/..."
}
]
}
Product Details Endpoint
Get comprehensive information about a specific product:
const response = await fetch('https://api.sociavault.com/tiktok-shop/product-details', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
url: 'https://www.tiktok.com/shop/pdp/product-name/1234567890'
})
});
const productDetails = await response.json();
Response
{
"id": "1234567890",
"title": "Summer Dress - Floral Print",
"description": "Beautiful floral summer dress...",
"price": 29.99,
"originalPrice": 49.99,
"discount": "40%",
"currency": "USD",
"sold": 2500,
"rating": 4.8,
"reviewCount": 450,
"variants": [
{
"name": "Size",
"options": ["S", "M", "L", "XL"]
},
{
"name": "Color",
"options": ["Blue", "Pink", "White"]
}
],
"images": ["https://...", "https://..."],
"seller": {
"username": "shop_username",
"displayName": "Fashion Store",
"followers": 125000
},
"shipping": {
"freeShipping": true,
"estimatedDays": "5-7"
}
}
Product Search Endpoint
Search TikTok Shop products by keyword:
const response = await fetch('https://api.sociavault.com/tiktok-shop/search', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
query: 'wireless earbuds'
})
});
const searchResults = await response.json();
Use Cases
Price Monitoring
Track competitor prices over time:
async function monitorPrices(productUrls) {
for (const url of productUrls) {
const product = await getProductDetails(url);
await savePriceHistory({
productId: product.id,
title: product.title,
price: product.price,
originalPrice: product.originalPrice,
timestamp: new Date()
});
}
}
// Run daily
Find Best Sellers
Discover top-performing products:
const searchResults = await searchProducts('phone case');
const bestSellers = searchResults.products
.filter(p => p.sold > 1000 && p.rating >= 4.5)
.sort((a, b) => b.sold - a.sold);
console.log('Top selling phone cases:', bestSellers.slice(0, 10));
Competitor Analysis
Compare your products against competitors:
async function analyzeCompetitor(competitorHandle) {
const products = await getSellerProducts(competitorHandle);
const analysis = {
totalProducts: products.length,
avgPrice: products.reduce((s, p) => s + p.price, 0) / products.length,
avgRating: products.reduce((s, p) => s + p.rating, 0) / products.length,
topSeller: products.sort((a, b) => b.sold - a.sold)[0]
};
return analysis;
}
Market Research
Analyze product categories:
const categories = ['skincare', 'fashion', 'electronics', 'home decor'];
for (const category of categories) {
const products = await searchProducts(category);
console.log(`${category}:`);
console.log(` Average price: $${avg(products, 'price').toFixed(2)}`);
console.log(` Average rating: ${avg(products, 'rating').toFixed(1)}`);
console.log(` Total products: ${products.length}`);
}
Related Endpoints
- TikTok Profile Scraper - Creator profiles
- TikTok Videos Scraper - Product promotion videos
- TikTok Search - Find shopping content
- TikTok Trending - Trending products
Frequently Asked Questions
Can I scrape any TikTok Shop?
Yes, the API works with any public TikTok Shop seller in supported regions.
Do I get historical pricing data?
The API returns current prices. For historical tracking, store price data periodically in your own database.
Can I get product reviews?
The current API returns review count and rating. Individual reviews may be added in a future update.
Is TikTok Shop available globally?
TikTok Shop is available in select countries (US, UK, Southeast Asia). Product availability varies by region.
How often should I refresh product data?
For price monitoring, daily checks are usually sufficient. For fast-moving inventory, consider more frequent updates.
Get Started
Create your free account and start extracting TikTok Shop data.
API documentation: /docs/api-reference/tiktok-shop/products
Found this helpful?
Share it with others who might benefit
Ready to Try SociaVault?
Start extracting social media data with our powerful API. No credit card required.