This group returns public data from 17 platforms: post details with download links, keyword
search, a channel's posts, channel profiles, comments, trends, plus TikTok Shop sales data and TikTok ads
for the Vietnamese market.
|
|
| Base URL |
https://revidapi.com/v1 |
| Auth |
header x-api-key: <key> (or Authorization: Bearer <key>) |
| Price |
5 credits per successful call — failed calls are not charged |
| Method |
POST with a JSON body, or GET with query parameters — both work |
| Response |
returned immediately (not a job), JSON in the platform's own structure |
Try it in 30 seconds
# GET with query parameters
curl "https://revidapi.com/v1/tiktok/search?keyword=street%20food&count=10" \
-H "x-api-key: $REVID_KEY"
# POST with JSON — same result
curl -X POST "https://revidapi.com/v1/tiktok/search" \
-H "x-api-key: $REVID_KEY" -H "Content-Type: application/json" \
-d '{"keyword": "street food", "count": 10}'
import requests
r = requests.post("https://revidapi.com/v1/tiktokshop/search",
headers={"x-api-key": KEY}, json={"keyword": "lipstick"})
print(r.json())
Easy parameter names
Every platform names its parameters differently (aweme_id, sec_user_id, search_word…). The gateway
accepts friendly names and renames them for you — see the Also accepted column in each table. Three
names work almost everywhere:
| You send |
Meaning |
keyword |
search term |
id or url |
post / product id or link |
user |
channel id or handle |
TikTok
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/tiktok/ads/hashtags |
Rising hashtags over 7/30/120 days |
— |
country_code (VN), period (7), page (1), limit (20) |
— |
5 |
/v1/tiktok/ads/search |
Search running TikTok ads by keyword |
keyword |
country_code (VN), page (1), limit (20) |
query→keyword |
5 |
/v1/tiktok/ads/top |
Top-performing TikTok ads (CTR, industry) |
— |
country_code (VN), page (1), limit (20) |
— |
5 |
/v1/tiktok/comments |
Comments |
aweme_id |
cursor, count |
id→aweme_id, url→aweme_id |
5 |
/v1/tiktok/hashtag |
Hashtag search with video/view counts |
keyword |
count (20) |
query→keyword |
5 |
/v1/tiktok/profile |
Channel profile |
uniqueId |
— |
user→uniqueId, username→uniqueId |
5 |
/v1/tiktok/search |
Keyword search |
keyword |
offset, count, sort_type, publish_time, region |
keyword→keyword |
5 |
/v1/tiktok/trending |
Trending |
— |
— |
— |
5 |
/v1/tiktok/video |
Post details + download link |
aweme_id |
— |
id→aweme_id, url→aweme_id |
5 |
Ads and hashtag endpoints (ads/*) default to country_code=VN. ads/hashtags takes period of 7, 30 or 120 days.
curl -X POST "https://revidapi.com/v1/tiktok/ads/top" -H "x-api-key: $REVID_KEY" \
-H "Content-Type: application/json" -d '{"limit": 20}'
curl -X POST "https://revidapi.com/v1/tiktok/ads/hashtags" -H "x-api-key: $REVID_KEY" \
-H "Content-Type: application/json" -d '{"period": 30}'
TikTok Shop
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/tiktokshop/hot |
Best-selling TikTok Shop products |
— |
region (VN), count (20) |
— |
5 |
/v1/tiktokshop/link |
Share link → product_id |
share_link |
region (VN) |
url→share_link |
5 |
/v1/tiktokshop/product |
Product details: price, sold, shop, variants |
product_id |
region (VN) |
id→product_id |
5 |
/v1/tiktokshop/reviews |
Buyer reviews of a product |
product_id |
region (VN) |
id→product_id, page→page_start |
5 |
/v1/tiktokshop/search |
Keyword search |
search_word |
region (VN) |
keyword→search_word, query→search_word |
5 |
Typical flow: search for products → take a product_id → product for price and units sold →
reviews for buyer reviews. Have a share link? link turns it into a product_id. region defaults to VN.
curl -X POST "https://revidapi.com/v1/tiktokshop/link" -H "x-api-key: $REVID_KEY" \
-H "Content-Type: application/json" -d '{"url": "https://vt.tiktok.com/xxxx/"}'
curl -X POST "https://revidapi.com/v1/tiktokshop/product" -H "x-api-key: $REVID_KEY" \
-H "Content-Type: application/json" -d '{"id": "1729xxxxxxxxxxxxxxx"}'
YouTube
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/youtube/comments |
Comments |
video_id |
— |
id→video_id, url→video_id |
5 |
/v1/youtube/posts |
Channel posts |
channel_id |
lang, sortBy, contentType, nextToken |
user→channel_id |
5 |
/v1/youtube/profile |
Channel profile |
channel_id |
— |
id→channel_id, user→channel_id |
5 |
/v1/youtube/search |
Keyword search |
search_query |
language_code, order_by, country_code, continuation_token |
keyword→search_query |
5 |
/v1/youtube/shorts |
Channel Shorts |
channel_id |
— |
id→channel_id, user→channel_id |
5 |
/v1/youtube/video |
Post details + download link |
video_id |
url_access, lang, videos, audios, subtitles, related |
id→video_id, url→video_id |
5 |
Instagram
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/instagram/comments |
Comments |
code_or_url |
sort_by, pagination_token |
id→code_or_url, url→code_or_url, media_id→code_or_url, code→code_or_url, shortcode→code_or_url |
5 |
/v1/instagram/posts |
Channel posts |
user_id |
count, max_id |
user→user_id |
5 |
/v1/instagram/profile |
Channel profile |
username |
— |
user→username |
5 |
/v1/instagram/search |
Keyword search |
keyword |
pagination_token |
keyword→keyword |
5 |
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/twitter/comments |
Comments |
tweet_id |
cursor |
id→tweet_id, url→tweet_id |
5 |
/v1/twitter/profile |
Channel profile |
— |
screen_name, rest_id |
— |
5 |
/v1/twitter/search |
Keyword search |
keyword |
search_type, cursor |
keyword→keyword |
5 |
/v1/twitter/trending |
Trending |
— |
country |
— |
5 |
Threads
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/threads/comments |
Comments |
post_id |
end_cursor |
id→post_id, url→post_id |
5 |
/v1/threads/posts |
Channel posts |
user_id |
end_cursor |
user→user_id |
5 |
/v1/threads/profile |
Channel profile |
username |
— |
user→username |
5 |
Reddit
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/reddit/comments |
Comments |
post_id |
sort_type, after, need_format |
id→post_id, url→post_id |
5 |
/v1/reddit/posts |
Channel posts |
username |
sort, after, need_format |
user→username |
5 |
/v1/reddit/profile |
Channel profile |
username |
need_format |
user→username |
5 |
/v1/reddit/search |
Keyword search |
query |
safe_search, allow_nsfw, need_format |
keyword→query |
5 |
/v1/reddit/trending |
Trending |
— |
need_format |
— |
5 |
/v1/reddit/video |
Post details + download link |
post_id |
include_comment_id, comment_id, need_format |
id→post_id, url→post_id |
5 |
Lemon8
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/lemon8/profile |
Channel profile |
user_id |
— |
user→user_id |
5 |
/v1/lemon8/search |
Keyword search |
query |
max_cursor, filter_type, order_by, search_tab |
keyword→query |
5 |
/v1/lemon8/trending |
Trending |
— |
— |
— |
5 |
/v1/lemon8/video |
Post details + download link |
item_id |
— |
id→item_id, url→item_id |
5 |
Douyin
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/douyin/posts |
Channel posts |
sec_user_id |
max_cursor, count, filter_type, cookie |
user→sec_user_id |
5 |
/v1/douyin/profile |
Channel profile |
unique_id |
— |
user→unique_id |
5 |
/v1/douyin/search |
Keyword search |
keyword |
— |
keyword→keyword |
5 |
/v1/douyin/video |
Post details + download link |
aweme_id |
— |
id→aweme_id, url→aweme_id |
5 |
Weibo
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/weibo/profile |
Channel profile |
uid |
since_id |
user→uid |
5 |
/v1/weibo/search |
Keyword search |
query |
mode, page |
keyword→query |
5 |
Bilibili
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/bilibili/posts |
Channel posts |
uid |
pn, ps, keyword |
user→uid |
5 |
/v1/bilibili/profile |
Channel profile |
uid |
— |
user→uid |
5 |
/v1/bilibili/search |
Keyword search |
keyword, order, page, page_size |
duration, pubtime_begin_s, pubtime_end_s |
keyword→keyword |
5 |
/v1/bilibili/video |
Post details + download link |
a_id, c_id |
— |
id→a_id, url→a_id |
5 |
Kuaishou
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/kuaishou/posts |
Channel posts |
user_id |
pcursor, sort |
user→user_id |
5 |
/v1/kuaishou/profile |
Channel profile |
user_id |
— |
user→user_id |
5 |
/v1/kuaishou/search |
Keyword search |
keyword |
pcursor |
keyword→keyword |
5 |
/v1/kuaishou/video |
Post details + download link |
photo_id |
— |
id→photo_id, url→photo_id |
5 |
Xigua
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/xigua/posts |
Channel posts |
user_id |
max_behot_time |
user→user_id |
5 |
/v1/xigua/profile |
Channel profile |
user_id |
— |
user→user_id |
5 |
/v1/xigua/search |
Keyword search |
keyword |
offset, order_type, min_duration, max_duration |
keyword→keyword |
5 |
/v1/xigua/video |
Post details + download link |
item_id |
— |
id→item_id, url→item_id |
5 |
Pipixia
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/pipixia/posts |
Channel posts |
user_id |
cursor, feed_count |
user→user_id |
5 |
/v1/pipixia/profile |
Channel profile |
user_id |
— |
user→user_id |
5 |
/v1/pipixia/search |
Keyword search |
keyword |
offset, search_type |
keyword→keyword |
5 |
/v1/pipixia/video |
Post details + download link |
cell_id |
cell_type |
id→cell_id, url→cell_id |
5 |
Zhihu
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/zhihu/profile |
Channel profile |
user_url_token |
— |
user→user_url_token |
5 |
/v1/zhihu/search |
Keyword search |
keyword |
limit, offset, search_hash_id |
keyword→keyword |
5 |
Toutiao
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/toutiao/profile |
Channel profile |
user_id |
— |
user→user_id |
5 |
/v1/toutiao/video |
Post details + download link |
aweme_id |
— |
id→aweme_id, url→aweme_id |
5 |
WeChat Channels
| Endpoint |
What it does |
Required |
Optional (default) |
Also accepted |
Credit |
/v1/wechat_channels/profile |
Channel profile |
username |
— |
user→username |
5 |
/v1/wechat_channels/search |
Keyword search |
username, keyword |
— |
keyword→keyword, user→username |
5 |
Response
Each platform returns its own structure; the gateway does not reshape it. Call once, look at the fields,
then write your parser. Endpoints can change as platforms change — GET https://revidapi.com/v1/endpoints
always lists the current endpoints and prices.
Errors
| Code |
Meaning |
What to do |
400 / 422 |
Missing required parameter or malformed id |
Check the Required column |
401 |
Missing or invalid API key |
Check the x-api-key header |
402 |
Not enough credits |
Top up in the dashboard |
429 |
Too many requests |
Slow down and retry after a few seconds |
502 |
Platform refused: private or deleted post, or temporary error |
Retry later; you are not charged |
Failed calls are not charged. See your call history at GET /v1/jobs or on the Usage page.