# Douyin API Alternative — Export Video Data, No Code

**Use case:** 

A no-code Douyin (TikTok China) data API alternative — pull structured video results with engagement metrics and creator info. Export CSV/JSON.

## Input

```json
{
  "operation": "searchVideo",
  "videoId": "7615930241370348219",
  "commentId": "7615932448664650533",
  "secUid": "MS4wLjABAAAAUT_tvNpyI5-tObkvU2xaaqyeDpek5UJXLG8mePjYxTQ",
  "sortType": "LATEST",
  "keyword": "旅行",
  "maxPages": 3
}
```

## Output

```json
{
  "_fetchedAt": {
    "label": "🕐 Fetched At",
    "format": "string"
  },
  "coverUrl": {
    "label": "🖼️ Cover Url",
    "format": "string"
  },
  "_operation": {
    "label": "🎯 Operation",
    "format": "string"
  },
  "_page": {
    "label": "📄 Page",
    "format": "integer"
  },
  "_sourceKeyword": {
    "label": "🔍 Source Keyword",
    "format": "string"
  },
  "activity_video_type": {
    "label": "🗂️ Activity video type",
    "format": "integer"
  },
  "ad_aweme_source": {
    "label": "🔎 Ad aweme source",
    "format": "integer"
  },
  "admire_auth": {
    "label": "🔐 Admire auth",
    "format": "object"
  },
  "authentication_token": {
    "label": "🔐 Authentication token",
    "format": "string"
  },
  "author": {
    "label": "👤 Author",
    "format": "object"
  },
  "author_mask_tag": {
    "label": "👤 Author mask tag",
    "format": "integer"
  },
  "author_user_id": {
    "label": "🏷️ Author user id",
    "format": "string"
  },
  "avatarUrl": {
    "label": "🖼️ Avatar Url",
    "format": "string"
  },
  "avatarUrls": {
    "label": "🔗 Avatar Urls",
    "format": "array"
  },
  "aweme_control": {
    "label": "🗂️ Aweme control",
    "format": "object"
  },
  "aweme_id": {
    "label": "🏷️ Aweme id",
    "format": "string"
  },
  "aweme_listen_struct": {
    "label": "🗂️ Aweme listen struct",
    "format": "object"
  },
  "aweme_type": {
    "label": "🗂️ Aweme type",
    "format": "integer"
  },
  "awemeId": {
    "label": "🏷️ Aweme Id",
    "format": "string"
  },
  "bodydance_score": {
    "label": "📈 Bodydance score",
    "format": "integer"
  },
  "book_bar": {
    "label": "🗂️ Book bar",
    "format": "object"
  },
  "boost_status": {
    "label": "✅ Boost status",
    "format": "integer"
  },
  "can_cache_to_local": {
    "label": "✅ Can cache to local",
    "format": "boolean"
  },
  "caption": {
    "label": "💬 Caption",
    "format": "string"
  },
  "cf_assets_type": {
    "label": "🗂️ Cf assets type",
    "format": "integer"
  },
  "cf_recheck_ts": {
    "label": "🗂️ Cf recheck ts",
    "format": "integer"
  },
  "cha_list": {
    "label": "🗂️ Cha list",
    "format": "array"
  },
  "city": {
    "label": "📍 City",
    "format": "string"
  },
  "cmt_swt": {
    "label": "💬 Cmt swt",
    "format": "boolean"
  },
  "collect_stat": {
    "label": "🔖 Collect stat",
    "format": "integer"
  },
  "collectCount": {
    "label": "🔢 Collect Count",
    "format": "integer"
  },
  "collection_corner_mark": {
    "label": "🔖 Collection corner mark",
    "format": "integer"
  },
  "comment_gid": {
    "label": "💬 Comment gid",
    "format": "string"
  },
  "comment_permission_info": {
    "label": "💬 Comment permission info",
    "format": "object"
  },
  "comment_words_recommend": {
    "label": "💬 Comment words recommend",
    "format": "object"
  },
  "commentCount": {
    "label": "🔢 Comment Count",
    "format": "integer"
  },
  "commerce_info": {
    "label": "🛒 Commerce info",
    "format": "object"
  },
  "component_info_v2": {
    "label": "🗂️ Component info v2",
    "format": "string"
  },
  "coverUrls": {
    "label": "🔗 Cover Urls",
    "format": "array"
  },
  "create_time": {
    "label": "⏱️ Create time",
    "format": "integer"
  },
  "createTime": {
    "label": "⏱️ Create Time",
    "format": "integer"
  },
  "dcm_info": {
    "label": "🗂️ Dcm info",
    "format": "object"
  },
  "desc": {
    "label": "📝 Desc",
    "format": "string"
  },
  "desc_language": {
    "label": "🗣️ Desc language",
    "format": "string"
  },
  "descendants": {
    "label": "🗂️ Descendants",
    "format": "object"
  },
  "disable_relation_bar": {
    "label": "⚠️ Disable relation bar",
    "format": "integer"
  },
  "distribute_circle": {
    "label": "📤 Distribute circle",
    "format": "object"
  },
  "distribute_type": {
    "label": "🗂️ Distribute type",
    "format": "integer"
  },
  "douplus_user_type": {
    "label": "🗂️ Douplus user type",
    "format": "integer"
  },
  "downloadCount": {
    "label": "🔢 Download Count",
    "format": "integer"
  },
  "duet_aggregate_in_music_tab": {
    "label": "🎵 Duet aggregate in music tab",
    "format": "boolean"
  },
  "duet_extra_info": {
    "label": "🎵 Duet extra info",
    "format": "object"
  },
  "duration": {
    "label": "⏱️ Duration",
    "format": "integer"
  },
  "durationMs": {
    "label": "⏱️ Duration Ms",
    "format": "integer"
  },
  "dynamicCoverUrls": {
    "label": "🔗 Dynamic Cover Urls",
    "format": "array"
  },
  "ecom_comment_atmosphere_type": {
    "label": "🗂️ Ecom comment atmosphere type",
    "format": "integer"
  },
  "enable_comment_sticker_rec": {
    "label": "💬 Enable comment sticker rec",
    "format": "boolean"
  },
  "enable_decorated_emoji": {
    "label": "✅ Enable decorated emoji",
    "format": "boolean"
  },
  "ent_log_extra": {
    "label": "🔎 Ent log extra",
    "format": "object"
  },
  "entertainment_product_info": {
    "label": "🛒 Entertainment product info",
    "format": "object"
  },
  "entertainment_video_paid_way": {
    "label": "🎬 Entertainment video paid way",
    "format": "object"
  },
  "entertainment_video_type": {
    "label": "🗂️ Entertainment video type",
    "format": "integer"
  },
  "fall_card_struct": {
    "label": "🗂️ Fall card struct",
    "format": "object"
  },
  "feed_comment_config": {
    "label": "💬 Feed comment config",
    "format": "object"
  },
  "flash_mob_trends": {
    "label": "📈 Flash mob trends",
    "format": "integer"
  },
  "follow_shoot_clip_info": {
    "label": "🗂️ Follow shoot clip info",
    "format": "object"
  },
  "forwardCount": {
    "label": "🔢 Forward Count",
    "format": "integer"
  },
  "friend_recommend_info": {
    "label": "🔎 Friend recommend info",
    "format": "object"
  },
  "game_tag_info": {
    "label": "🏷️ Game tag info",
    "format": "object"
  },
  "geofencing": {
    "label": "📍 Geofencing",
    "format": "array"
  },
  "group_id": {
    "label": "🏷️ Group id",
    "format": "string"
  },
  "guide_btn_type": {
    "label": "🗂️ Guide btn type",
    "format": "integer"
  },
  "guide_scene_info": {
    "label": "🏷️ Guide scene info",
    "format": "object"
  },
  "has_vs_entry": {
    "label": "✅ Has vs entry",
    "format": "boolean"
  },
  "have_dashboard": {
    "label": "📊 Have dashboard",
    "format": "boolean"
  },
  "image_album_music_info": {
    "label": "🖼️ Image album music info",
    "format": "object"
  },
  "image_comment": {
    "label": "💬 Image comment",
    "format": "object"
  },
  "image_crop_ctrl": {
    "label": "🖼️ Image crop ctrl",
    "format": "integer"
  },
  "impression_data": {
    "label": "🔎 Impression data",
    "format": "object"
  },
  "is_24_story": {
    "label": "📖 Is 24 story",
    "format": "integer"
  },
  "is_25_story": {
    "label": "📖 Is 25 story",
    "format": "integer"
  },
  "is_collects_selected": {
    "label": "🔖 Is collects selected",
    "format": "integer"
  },
  "is_duet_sing": {
    "label": "🎵 Is duet sing",
    "format": "boolean"
  },
  "is_ecom_aweme": {
    "label": "🛒 Is ecom aweme",
    "format": "integer"
  },
  "is_fantasy": {
    "label": "✅ Is fantasy",
    "format": "boolean"
  },
  "is_first_video": {
    "label": "🎬 Is first video",
    "format": "boolean"
  },
  "is_hash_tag": {
    "label": "🏷️ Is hash tag",
    "format": "integer"
  },
  "is_image_beat": {
    "label": "🖼️ Is image beat",
    "format": "boolean"
  },
  "is_in_scope": {
    "label": "✅ Is in scope",
    "format": "boolean"
  },
  "is_karaoke": {
    "label": "🎵 Is karaoke",
    "format": "boolean"
  },
  "is_life_item": {
    "label": "🛒 Is life item",
    "format": "boolean"
  },
  "is_moment_history": {
    "label": "📖 Is moment history",
    "format": "integer"
  },
  "is_moment_story": {
    "label": "📖 Is moment story",
    "format": "integer"
  },
  "is_new_text_mode": {
    "label": "📄 Is new text mode",
    "format": "integer"
  },
  "is_pgcshow": {
    "label": "✅ Is pgcshow",
    "format": "boolean"
  },
  "is_preview": {
    "label": "⭐ Is preview",
    "format": "integer"
  },
  "is_relieve": {
    "label": "⚠️ Is relieve",
    "format": "boolean"
  },
  "is_share_post": {
    "label": "📤 Is share post",
    "format": "boolean"
  },
  "is_story": {
    "label": "📖 Is story",
    "format": "integer"
  },
  "is_top": {
    "label": "✅ Is top",
    "format": "integer"
  },
  "is_use_music": {
    "label": "🎵 Is use music",
    "format": "boolean"
  },
  "is_vr": {
    "label": "✅ Is vr",
    "format": "boolean"
  },
  "item_aigc_follow_shot": {
    "label": "🛒 Item aigc follow shot",
    "format": "integer"
  },
  "item_comment_settings": {
    "label": "🛒 Item comment settings",
    "format": "integer"
  },
  "item_duet": {
    "label": "🛒 Item duet",
    "format": "integer"
  },
  "item_react": {
    "label": "🛒 Item react",
    "format": "integer"
  },
  "item_share": {
    "label": "🛒 Item share",
    "format": "integer"
  },
  "item_stitch": {
    "label": "🛒 Item stitch",
    "format": "integer"
  },
  "item_title": {
    "label": "🔤 Item title",
    "format": "string"
  },
  "item_warn_notification": {
    "label": "🛒 Item warn notification",
    "format": "object"
  },
  "life_anchor_show_extra": {
    "label": "🔎 Life anchor show extra",
    "format": "object"
  },
  "likeCount": {
    "label": "🔢 Like Count",
    "format": "integer"
  },
  "live_appointment_info": {
    "label": "📅 Live appointment info",
    "format": "object"
  },
  "mark_largely_following": {
    "label": "🗂️ Mark largely following",
    "format": "boolean"
  },
  "media_type": {
    "label": "🗂️ Media type",
    "format": "integer"
  },
  "misc_info": {
    "label": "📝 Misc info",
    "format": "string"
  },
  "music": {
    "label": "🎵 Music",
    "format": "object"
  },
  "musicAuthor": {
    "label": "👤 Music Author",
    "format": "string"
  },
  "musicCoverUrl": {
    "label": "🔗 Music Cover Url",
    "format": "string"
  },
  "musicId": {
    "label": "🏷️ Music Id",
    "format": "string"
  },
  "musicPlayUrl": {
    "label": "🔗 Music Play Url",
    "format": "string"
  },
  "musicTitle": {
    "label": "🔤 Music Title",
    "format": "string"
  },
  "nearby_level": {
    "label": "📈 Nearby level",
    "format": "integer"
  },
  "need_vs_entry": {
    "label": "✅ Need vs entry",
    "format": "boolean"
  },
  "origin_text_extra": {
    "label": "📄 Origin text extra",
    "format": "array"
  },
  "original": {
    "label": "🗂️ Original",
    "format": "integer"
  },
  "originCoverUrls": {
    "label": "🔗 Origin Cover Urls",
    "format": "array"
  },
  "pack_usage_scene_by_req_path": {
    "label": "🔎 Pack usage scene by req path",
    "format": "string"
  },
  "personal_page_botton_diagnose_style": {
    "label": "🗂️ Personal page botton diagnose style",
    "format": "integer"
  },
  "photo_search_entrance": {
    "label": "🔎 Photo search entrance",
    "format": "object"
  },
  "playCount": {
    "label": "🔢 Play Count",
    "format": "integer"
  },
  "poi_biz": {
    "label": "📍 Poi biz",
    "format": "object"
  },
  "poi_patch_info": {
    "label": "📍 Poi patch info",
    "format": "object"
  },
  "postedAt": {
    "label": "📅 Posted At",
    "format": "string"
  },
  "prevent_download": {
    "label": "⚠️ Prevent download",
    "format": "boolean"
  },
  "preview_title": {
    "label": "🔤 Preview title",
    "format": "string"
  },
  "preview_video_status": {
    "label": "✅ Preview video status",
    "format": "integer"
  },
  "product_genre_info": {
    "label": "🛒 Product genre info",
    "format": "object"
  },
  "promotions": {
    "label": "📤 Promotions",
    "format": "array"
  },
  "publish_plus_alienation": {
    "label": "📤 Publish plus alienation",
    "format": "object"
  },
  "rate": {
    "label": "📈 Rate",
    "format": "integer"
  },
  "region": {
    "label": "📍 Region",
    "format": "string"
  },
  "report_action": {
    "label": "⚠️ Report action",
    "format": "boolean"
  },
  "risk_infos": {
    "label": "⚠️ Risk infos",
    "format": "object"
  },
  "search_extra": {
    "label": "🔎 Search extra",
    "format": "object"
  },
  "search_impr": {
    "label": "🔎 Search impr",
    "format": "object"
  },
  "secUid": {
    "label": "🏷️ Sec Uid",
    "format": "string"
  },
  "series_basic_info": {
    "label": "🗂️ Series basic info",
    "format": "object"
  },
  "series_paid_info": {
    "label": "🏷️ Series paid info",
    "format": "object"
  },
  "share_info": {
    "label": "📤 Share info",
    "format": "object"
  },
  "share_url": {
    "label": "🔗 Share url",
    "format": "string"
  },
  "shareCount": {
    "label": "🔢 Share Count",
    "format": "integer"
  },
  "shareUrl": {
    "label": "🔗 Share Url",
    "format": "string"
  },
  "shoot_way": {
    "label": "🗂️ Shoot way",
    "format": "string"
  },
  "shortId": {
    "label": "🏷️ Short Id",
    "format": "string"
  },
  "should_open_ad_report": {
    "label": "⚠️ Should open ad report",
    "format": "boolean"
  },
  "show_follow_button": {
    "label": "🗂️ Show follow button",
    "format": "object"
  },
  "statistics": {
    "label": "🗂️ Statistics",
    "format": "object"
  },
  "status": {
    "label": "✅ Status",
    "format": "string"
  },
  "story_ttl": {
    "label": "📖 Story ttl",
    "format": "integer"
  },
  "text_extra": {
    "label": "📄 Text extra",
    "format": "array"
  },
  "uniqueId": {
    "label": "🏷️ Unique Id",
    "format": "string"
  },
  "user_digged": {
    "label": "👤 User digged",
    "format": "integer"
  },
  "user_recommend_status": {
    "label": "✅ User recommend status",
    "format": "integer"
  },
  "userGender": {
    "label": "👤 User Gender",
    "format": "integer"
  },
  "userId": {
    "label": "🏷️ User Id",
    "format": "string"
  },
  "userName": {
    "label": "🔤 User Name",
    "format": "string"
  },
  "userPageUrl": {
    "label": "🔗 User Page Url",
    "format": "string"
  },
  "userSignature": {
    "label": "👤 User Signature",
    "format": "string"
  },
  "userVerified": {
    "label": "👤 User Verified",
    "format": "boolean"
  },
  "video": {
    "label": "🎬 Video",
    "format": "object"
  },
  "video_control": {
    "label": "🎬 Video control",
    "format": "object"
  },
  "video_game_data_channel_config": {
    "label": "🎬 Video game data channel config",
    "format": "object"
  },
  "video_share_edit_status": {
    "label": "✅ Video share edit status",
    "format": "integer"
  },
  "video_tag": {
    "label": "🎬 Video tag",
    "format": "array"
  },
  "video_text": {
    "label": "📄 Video text",
    "format": "array"
  },
  "videoHeight": {
    "label": "📐 Video Height",
    "format": "integer"
  },
  "videoId": {
    "label": "🏷️ Video Id",
    "format": "string"
  },
  "videoPageUrl": {
    "label": "🔗 Video Page Url",
    "format": "string"
  },
  "videoUrl": {
    "label": "🔗 Video Url",
    "format": "string"
  },
  "videoUrlList": {
    "label": "🔗 Video Url List",
    "format": "array"
  },
  "videoWidth": {
    "label": "📐 Video Width",
    "format": "integer"
  },
  "visual_search_info": {
    "label": "🔎 Visual search info",
    "format": "object"
  },
  "vr_type": {
    "label": "🗂️ Vr type",
    "format": "integer"
  },
  "vtag_search": {
    "label": "🔎 Vtag search",
    "format": "object"
  },
  "with_promotional_music": {
    "label": "🎵 With promotional music",
    "format": "boolean"
  },
  "without_watermark": {
    "label": "⬇️ Without watermark",
    "format": "boolean"
  },
  "xigua_base_info": {
    "label": "🎬 Xigua base info",
    "format": "object"
  },
  "xigua_task": {
    "label": "🎬 Xigua task",
    "format": "object"
  }
}
```

## About this Actor

This example demonstrates how to use [Douyin Scraper — TikTok China API & Video Downloader](https://apify.com/sian.agency/douyin-scraper.md) with a specific input configuration. Visit the [Actor detail page](https://apify.com/sian.agency/douyin-scraper.md) to learn more, explore other use cases, and run it yourself.


## How to integrate an Actor?

This Task's input is already configured above. Use it as-is rather than inventing a new one.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For full API examples (JavaScript, Python, CLI, MCP, OpenAPI), see this Task's Actor page: https://apify.com/sian.agency/douyin-scraper.md

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).
