Retrieve a sample of TikTok trending videos
View all TikTok Profiles, Videos & Sounds API endpoints →Request the TikTok trending media feed, described as the main-screen carousel feed, without a required username, video ID or keyword. The only documented input is the optional string custom_cursor query parameter; omit it for an initial sample. A successful HTTP 200 probe with no parameters observed status=ok, data.custom_cursor, and a nested data.list object containing status_code=0, has_more=1 and an aweme_list array with ten videos. Creator information and engagement counts were present in that sample, but their individual field names and completeness are not established here. The nesting matters: videos and has_more are under data.list, while custom_cursor is directly under data. Use the returned cursor as the candidate continuation input and verify subsequent responses; the probe did not establish complete pagination. The observed videos had creation dates from 2026-08-30 through 2026-10-21, including the probe date, so compare each item's create_time with your own fetch timestamp instead of treating every item as newly published. These observations describe one response, not a fixed page size, universal popularity ranking, personalized account feed or guaranteed exhaustive export. No separate source response example supplies additional verified fields.
API Features
Live API Demo
🔒 Sign in to try it live
Log in to call this API with your own API key. New accounts get 100 free credits — no card required.
Log in / Sign upNo active API key found. Create one in your Dashboard, then reload this page. Dashboard →
/api/project/tiktok/trending-media-feed API Response (JSON)
{} curl -X GET 'https://api.opendata-api.com/api/project/tiktok/trending-media-feed?key=<API_KEY>'
Query Result
Use Cases
- Create a timestamped editorial trend-scouting inbox from sampled videos without claiming that the results form a universal TikTok ranking.
- Build a feed-response parser that reads data.list.aweme_list separately from data.custom_cursor and checks the nested has_more flag.
- Compare each video's create_time with a locally recorded fetch timestamp to distinguish older resurfacing content from recent uploads.
- Review the creator and engagement context actually available in trending samples before selecting videos for a manual content-analysis queue.
- Evaluate custom_cursor continuation across bounded requests before designing a recurring trending-snapshot collection.
Frequently asked questions
Do I need a username or video ID to request the trending feed?
No. The documented endpoint has no required input. Its only parameter is the optional string custom_cursor, and the successful initial probe used no parameters.
Where are the videos and continuation values in the observed response?
The probe returned status=ok. Video entries were in data.list.aweme_list, with status_code=0 and has_more=1 inside data.list. The cursor was at data.custom_cursor, outside data.list. These are observed paths, not a guarantee that every future response has the same contents.
Does the feed always contain ten videos published today?
No fixed page size or same-day publication guarantee is established. The observed response contained ten videos with creation dates from 2026-08-30 through 2026-10-21. Compare create_time with your fetch timestamp to assess recency.
How should I test pagination for the trending feed?
Start without custom_cursor, then use the returned data.custom_cursor as the candidate value for the next request and inspect data.list.has_more. Only the initial response was observed; complete pagination and its stopping behavior are not verified.
Is this a global ranking or my account's personalized feed?
Neither interpretation is established by the contract or probe. Treat it as an available trending-media sample for research, not an official universal ranking, personalized feed or complete record of popular videos.