TikTok Trending API: Real-Time Viral Content Discovery
Want to know what's trending on TikTok right now? The Trending API gives you programmatic access to viral videos, rising creators, and emerging trends.
Why Track TikTok Trends?
TikTok trends move fast. Being first to spot viral content gives you:
- Content Ideas - Capitalize on trending formats before saturation
- Sound Selection - Identify viral audio before it peaks
- Competitive Edge - React faster than competitors
- Engagement Boost - Trend-aligned content gets more reach
- Brand Safety - Monitor what's associated with your brand
Trending Videos Endpoint
Get currently trending videos:
const response = await fetch('https://api.sociavault.com/v1/scrape/tiktok/trending?region=US', {
headers: {
'x-api-key': 'YOUR_API_KEY'
}
});
const trending = await response.json();
| Parameter | Type | Required | Description |
|---|---|---|---|
region | string | Yes | 2-letter country code for proxy region (e.g., US, GB) |
trim | boolean | No | Set to true for a trimmed response |
Sample Response
Note:
aweme_listis an object with numeric keys. UseObject.values()to iterate.
{
"success": true,
"data": {
"aweme_list": {
"0": {
"aweme_id": "7604489034315861262",
"desc": "Here's a play I LOVE for this year's big game!",
"create_time": 1770558138,
"author": {
"unique_id": "barstoolgruden",
"nickname": "Barstool Gruden",
"region": "US"
},
"statistics": {
"play_count": 45000000,
"digg_count": 8900000,
"comment_count": 120000,
"share_count": 250000,
"collect_count": 500000,
"download_count": 35000
},
"music": {
"title": "original sound",
"author": "Barstool Gruden",
"duration": 30,
"is_commerce_music": false
},
"video": {
"duration": 15000,
"cover": { "url_list": { "0": "https://..." } },
"play_addr": { "url_list": { "0": "https://..." } }
}
}
}
},
"credits_used": 1
}
Trend Detection Strategies
Track Rising Sounds
Identify sounds gaining momentum:
const res = await fetch('https://api.sociavault.com/v1/scrape/tiktok/trending?region=US&trim=true', {
headers: { 'x-api-key': 'YOUR_API_KEY' }
});
const result = await res.json();
const videos = Object.values(result.data.aweme_list);
// Count sound usage across trending videos
const soundCounts = {};
videos.forEach(v => {
const key = v.music?.title || 'unknown';
soundCounts[key] = (soundCounts[key] || 0) + 1;
});
// Find most-used sounds
const topSounds = Object.entries(soundCounts)
.sort((a, b) => b[1] - a[1])
.slice(0, 10);
console.log('Top trending sounds:', topSounds);
Detect Trending Formats
Analyze captions for pattern detection:
const formatPatterns = {
challenge: /challenge|duet this|stitch/i,
storytime: /storytime|pov|story time/i,
tutorial: /how to|tutorial|step by step/i,
reaction: /reacting to|reaction|wait for it/i
};
const formatCounts = {};
videos.forEach(v => {
for (const [format, pattern] of Object.entries(formatPatterns)) {
if (v.desc.match(pattern)) {
formatCounts[format] = (formatCounts[format] || 0) + 1;
}
}
});
Build a Trend Alert System
Monitor for specific trends:
async function checkTrends() {
const res = await fetch('https://api.sociavault.com/v1/scrape/tiktok/trending?region=US&trim=true', {
headers: { 'x-api-key': 'YOUR_API_KEY' }
});
const result = await res.json();
const videos = Object.values(result.data.aweme_list);
// Check for brand mentions
const brandMentions = videos.filter(v =>
v.desc.toLowerCase().includes('your-brand')
);
if (brandMentions.length > 0) {
console.log(`Your brand is trending! ${brandMentions.length} videos`);
}
// Check for competitor mentions
const competitorMentions = videos.filter(v =>
v.desc.toLowerCase().includes('competitor-brand')
);
if (competitorMentions.length > 0) {
console.log(`Competitor trending: ${competitorMentions.length} videos`);
}
}
Trending Music Endpoint
Get popular sounds and songs (also available via the Music API):
const response = await fetch('https://api.sociavault.com/v1/scrape/tiktok/music/popular?timePeriod=7&countryCode=US', {
headers: {
'x-api-key': 'YOUR_API_KEY'
}
});
const popularMusic = await response.json();
Response
{
"success": true,
"data": {
"pagination": { "page": 1, "size": 20, "total": 99, "has_more": true },
"sound_list": {
"0": {
"title": "DtMF",
"author": "Bad Bunny",
"clip_id": "7456415250359977985",
"rank": 1,
"duration": 60,
"cover": "https://...",
"link": "https://www.tiktok.com/music/x-7456415250359977985",
"trend": [
{ "time": 1769904000, "value": 0.2 },
{ "time": 1770422400, "value": 1.0 }
]
}
}
}
}
Related Endpoints
- TikTok Search Hashtag - Track specific hashtags
- TikTok Videos Scraper - Get creator content
- TikTok Music Videos - Videos using specific sounds
- TikTok Profile Scraper - Creator details
Frequently Asked Questions
How often does the trending list update?
TikTok's trending feed updates continuously. Each API call returns the current trending videos, typically refreshed every few minutes.
Can I get trending videos by region?
Yes! The region parameter is required and sets the proxy location. Pass a 2-letter country code like US, GB, FR etc. Note this shows content visible in that region, not exclusively from that region.
How do I identify an emerging trend vs. established content?
Look at the createTime field—newer videos (posted within 24-48 hours) with high engagement indicate emerging trends. Older viral videos are established content.
Can I get historical trending data?
The API returns current trends. For historical analysis, store trending data periodically in your own database.
How many trending videos can I retrieve?
You can request up to 100 trending videos per API call.
Start Tracking Trends
Get your API key and start monitoring TikTok trends in real-time.
Documentation: /docs/api-reference/tiktok/trending
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.