Kaynağa Gözat

update server

cb 4 ay önce
ebeveyn
işleme
bc84f4cea9
37 değiştirilmiş dosya ile 5016 ekleme ve 79 silme
  1. 3 0
      angular.json
  2. 334 0
      docs/api-docs/justoneapi-docs.md
  3. 1266 0
      docs/api-docs/tikhub-docs.md
  4. 71 0
      docs/示例Brief-新锐护肤品牌种草合作.md
  5. 90 0
      docs/示例Brief-新锐护肤品牌种草合作.xls
  6. 1 1
      package.json
  7. 32 0
      server/config.ts
  8. 137 0
      server/routes/task.routes.ts
  9. 95 74
      server/server.ts
  10. 122 0
      server/services/export.service.ts
  11. 362 0
      server/services/justone.service.ts
  12. 126 0
      server/services/llm.service.ts
  13. 324 0
      server/services/recommendation.service.ts
  14. 179 0
      server/services/task-manager.service.ts
  15. 234 0
      server/services/tikhub.service.ts
  16. 90 0
      server/utils/file-parser.ts
  17. 165 0
      server/utils/http.ts
  18. 1 0
      src/app/app.html
  19. 3 1
      src/app/app.ts
  20. 4 3
      src/app/demo-state.service.ts
  21. 1 0
      src/app/models.ts
  22. 18 0
      src/modules/workspace/components/brief-upload/brief-upload.component.html
  23. 55 0
      src/modules/workspace/components/brief-upload/brief-upload.component.scss
  24. 60 0
      src/modules/workspace/components/brief-upload/brief-upload.component.ts
  25. 16 0
      src/modules/workspace/components/export-panel/export-panel.component.html
  26. 47 0
      src/modules/workspace/components/export-panel/export-panel.component.scss
  27. 22 0
      src/modules/workspace/components/export-panel/export-panel.component.ts
  28. 21 0
      src/modules/workspace/components/task-progress/task-progress.component.html
  29. 111 0
      src/modules/workspace/components/task-progress/task-progress.component.scss
  30. 28 0
      src/modules/workspace/components/task-progress/task-progress.component.ts
  31. 29 0
      src/modules/workspace/components/workspace-flow/workspace-flow.component.html
  32. 45 0
      src/modules/workspace/components/workspace-flow/workspace-flow.component.scss
  33. 143 0
      src/modules/workspace/components/workspace-flow/workspace-flow.component.ts
  34. 6 0
      src/modules/workspace/index.ts
  35. 83 0
      src/modules/workspace/models/task.model.ts
  36. 95 0
      src/modules/workspace/services/workspace-api.service.ts
  37. 597 0
      tests/api-probe/probe_creators.py

+ 3 - 0
angular.json

@@ -94,5 +94,8 @@
         }
       }
     }
+  },
+  "cli": {
+    "analytics": false
   }
 }

+ 334 - 0
docs/api-docs/justoneapi-docs.md

@@ -0,0 +1,334 @@
+# Just One API Docs
+
+Official documentation for Just One API - All-in-one API Integration Platform.
+Professional, stable, and efficient all-in-one data integration service, covering high-quality API interfaces in multiple fields.
+
+## Core Information
+- Website: https://docs.justoneapi.com/
+- Main Languages: English (en), Simplified Chinese (zh)
+- Authentication: API requests must include a `token` URL parameter.
+- Default Environment: prod-global (https://api.justoneapi.com)
+- Optional Mainland China Environment: prod-cn (http://47.117.133.51:30015)
+- Recommendation: Use prod-global by default. Mainland China users can use prod-cn instead.
+
+## API Categories & Endpoints
+
+### Social Media / 社交媒体
+
+- [Cross-Platform Search (V1) / 跨平台搜索 (V1)](https://docs.justoneapi.com/en/api/social-media/cross-platform-search-v1): Get cross-platform social media search data, including Xiaohongshu, Douyin, Kuaishou, WeChat, Bilibili, Weibo and Zhihu results, for trend research and monitoring.
+
+### Taobao and Tmall / 淘宝和天猫
+
+- [Product Details (V1) / 商品详情 (V1)](https://docs.justoneapi.com/en/api/taobao-and-tmall/product-details-v1): Get Taobao and Tmall product Details data, including pricing, images, and shop details, for product research, catalog monitoring, and ecommerce analysis.
+- [Product Details (V2) / 商品详情 (V2)](https://docs.justoneapi.com/en/api/taobao-and-tmall/product-details-v2): Get Taobao and Tmall product Details data through the task-backed v2 flow. If data is not ready within a short wait, the response returns a pending task status.
+- [Product Details (V4) / 商品详情 (V4)](https://docs.justoneapi.com/en/api/taobao-and-tmall/product-details-v4): Get Taobao and Tmall product Details data, including pricing, images, and shop details, for product research, catalog monitoring, and ecommerce analysis.
+- [Product Details (V5) / 商品详情 (V5)](https://docs.justoneapi.com/en/api/taobao-and-tmall/product-details-v5): Get Taobao and Tmall product Details data, including pricing, images, and shop details, for product research, catalog monitoring, and ecommerce analysis.
+- [Product Details (V9) / 商品详情 (V9)](https://docs.justoneapi.com/en/api/taobao-and-tmall/product-details-v9): Get Taobao and Tmall product Details data, including pricing, images, and shop details, for product research, catalog monitoring, and ecommerce analysis.
+- [Product Reviews (V3) / 商品评价 (V3)](https://docs.justoneapi.com/en/api/taobao-and-tmall/product-reviews-v3): Get Taobao and Tmall product Reviews data, including ratings, timestamps, and reviewer signals, for feedback analysis and product research.
+- [Shop Product List (V1) / 店铺商品列表 (V1)](https://docs.justoneapi.com/en/api/taobao-and-tmall/shop-product-list-v1): Get Taobao and Tmall shop Product List data, including item titles, prices, and images, for seller research and catalog tracking.
+- [Shop Product List (V2) / 店铺商品列表 (V2)](https://docs.justoneapi.com/en/api/taobao-and-tmall/shop-product-list-v2): Get Taobao and Tmall shop Product List data, including item titles, prices, and images, for seller research and catalog tracking.
+- [Shop Product List (V3) / 店铺商品列表 (V3)](https://docs.justoneapi.com/en/api/taobao-and-tmall/shop-product-list-v3): Get Taobao and Tmall shop Product List data, including item titles, prices, and images, for seller research and catalog tracking.
+- [Product Search (V1) / 商品搜索 (V1)](https://docs.justoneapi.com/en/api/taobao-and-tmall/product-search-v1): Get Taobao and Tmall product Search data, including titles, prices, and images, for product discovery.
+
+### Xiaohongshu (RedNote) / 小红书
+
+- [User Profile (V3) / 用户资料 (V3)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/user-profile-v3): Get Xiaohongshu (RedNote) user Profile data, including follower counts and bio details, for creator research, account analysis, and competitor monitoring.
+- [User Profile (V4) / 用户资料 (V4)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/user-profile-v4-deprecated): Get Xiaohongshu (RedNote) user Profile data, including follower counts and bio details, for creator research, account analysis, and competitor monitoring.
+- [User Published Notes (V2) / 用户发布笔记 (V2)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/user-published-notes-v2-deprecated): Get Xiaohongshu (RedNote) user Published Notes data, including note metadata, covers, and publish times, for account monitoring.
+- [User Published Notes (V4) / 用户发布笔记 (V4)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/user-published-notes-v4): Get Xiaohongshu (RedNote) user Published Notes data, including note metadata, covers, and publish times, for account monitoring.
+- [Note Details (V1) / 笔记详情 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/note-details-v1): Get Xiaohongshu (RedNote) note Details data, including media and engagement metrics, for content analysis, archiving, and campaign research.
+- [Note Details (V2) / 笔记详情 (V2)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/note-details-v2): Get Xiaohongshu (RedNote) note Details data, including media and engagement metrics, for content analysis, archiving, and campaign research.
+- [Note Details (V3) / 笔记详情 (V3)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/note-details-v3-deprecated): Get Xiaohongshu (RedNote) note Details data, including media and engagement metrics, for content analysis, archiving, and campaign research.
+- [Note Details (V4) / 笔记详情 (V4)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/note-details-v4): Get Xiaohongshu (RedNote) note Details data, including media and engagement metrics, for content analysis, archiving, and campaign research.
+- [Note Details (V5) / 笔记详情 (V5)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/note-details-v5): Get Xiaohongshu (RedNote) note Details data, including media and engagement metrics, for content analysis, archiving, and campaign research.
+- [Note Details (V7) / 笔记详情 (V7)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/note-details-v7-deprecated): Get Xiaohongshu (RedNote) note Details data, including media and engagement metrics, for content analysis, archiving, and campaign research.
+- [Note Comments (V2) / 笔记评论 (V2)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/note-comments-v2): Get Xiaohongshu (RedNote) note Comments data, including text, authors, and timestamps, for feedback analysis.
+- [Note Comments (V4) / 笔记评论 (V4)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/note-comments-v4): Get Xiaohongshu (RedNote) note Comments data, including comment text, author profiles, and interaction data, for sentiment analysis and community monitoring.
+- [Comment Replies (V2) / 评论回复 (V2)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/comment-replies-v2): Get Xiaohongshu (RedNote) comment Replies data, including text, authors, and timestamps, for thread analysis and feedback research.
+- [Note Search (V2) / 笔记搜索 (V2)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/note-search-v2): Get Xiaohongshu (RedNote) note Search data, including snippets, authors, and media, for topic discovery.
+- [Note Search (V3) / 笔记搜索 (V3)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/note-search-v3): Get Xiaohongshu (RedNote) note Search data, including snippets, authors, and media, for topic discovery.
+- [Topic Note List (V1) / 话题笔记列表 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/topic-note-list-v1): Get Xiaohongshu (RedNote) topic Note List data, including notes under a topic, for topic monitoring and content discovery.
+- [User Search (V2) / 用户搜索 (V2)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/user-search-v2): Get Xiaohongshu (RedNote) user Search data, including profile metadata and public signals, for creator discovery and account research.
+- [Share Link Resolution (V3) / 分享链接解析 (V3)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/share-link-resolution-v3): Get Xiaohongshu (RedNote) share Link Resolution data, including helping extract note IDs, for downstream note and comment workflows.
+- [Keyword Suggestions (V1) / 关键词建议 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-rednote/keyword-suggestions-v1): Get Xiaohongshu (RedNote) keyword Suggestions data, including suggested queries, keyword variants, and query metadata, for expanding keyword sets for content research and seo/pseo workflows and improving search coverage by using platform-recommended terms.
+
+### Xiaohongshu Creator Marketplace (Pugongying) / 小红书蒲公英
+
+- [Creator Profile (V1) / 创作者资料 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/creator-profile-v1): Get Xiaohongshu Creator Marketplace (Pugongying) creator Profile data, including audience and pricing data, for influencer vetting, benchmark analysis, and campaign planning.
+- [Data Summary (V1) / 数据摘要 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/data-summary-v1): Get Xiaohongshu Creator Marketplace (Pugongying) Summary data, including activity, engagement, and audience growth, for creator evaluation, campaign planning, and creator benchmarking.
+- [Follower Growth History (V1) / 粉丝增长历史 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/follower-growth-history-v1): Get Xiaohongshu Creator Marketplace (Pugongying) follower Growth History data, including historical points, trend signals, and growth metrics, for trend tracking, audience analysis, and creator performance monitoring.
+- [Follower Summary (V1) / 粉丝摘要 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/follower-summary-v1): Get Xiaohongshu Creator Marketplace (Pugongying) follower Summary data, including growth and engagement metrics, for audience analysis and creator benchmarking.
+- [Similar Creators (V1) / 相似创作者 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/similar-creators-v1): Get Xiaohongshu Creator Marketplace (Pugongying) similar Creators data, including audience signals, for creator discovery, benchmarking, and shortlist building.
+- [Creator Feature Tags (V1) / 创作者特征标签 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/creator-feature-tags-v1): Get Xiaohongshu Creator Marketplace (Pugongying) creator Feature Tags data, including platform tags, category labels, and classification signals, for segmentation, discovery, and creator classification.
+- [Creator Content Tags (V1) / 创作者内容标签 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/creator-content-tags-v1): Get Xiaohongshu Creator Marketplace (Pugongying) creator Content Tags data, including topic labels that describe publishing themes and content focus, for creator evaluation, campaign planning, and creator benchmarking.
+- [Note Performance Metrics (V1) / 笔记表现指标 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/note-performance-metrics-v1): Get Xiaohongshu Creator Marketplace (Pugongying) note performance metrics data, including core metrics, trend signals, and performance indicators, for content efficiency analysis, creator benchmarking, and campaign planning.
+- [User Published Notes (V1) / 用户发布笔记 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/user-published-notes-v1): Get Xiaohongshu Creator Marketplace (Pugongying) user Published Notes data, including note metadata and engagement signals, for creator monitoring and campaign research.
+- [Follower Distribution (V1) / 粉丝分布 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/follower-distribution-v1): Get Xiaohongshu Creator Marketplace (Pugongying) follower distribution data, including audience demographics, interests, and distribution metrics, for creator evaluation, campaign planning, and creator benchmarking.
+- [Cost Effectiveness Analysis (V1) / 成本效益分析 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/cost-effectiveness-analysis-v1): Get Xiaohongshu Creator Marketplace (Pugongying) cost Effectiveness Analysis data, including pricing, reach, and engagement efficiency indicators, for campaign evaluation.
+- [Note Details (V1) / 笔记详情 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/note-details-v1): Get Xiaohongshu Creator Marketplace (Pugongying) note Details data, including media and engagement signals, for content analysis, archiving, and campaign review.
+- [Creator Search (V1) / 创作者搜索 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/creator-search-v1): Get Xiaohongshu Creator Marketplace (Pugongying) creator Search data, including filters, returning profile, and audience, for discovery, comparison, and shortlist building.
+- [Creator Core Metrics (V1) / 创作者核心指标 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/creator-core-metrics-v1): Get Xiaohongshu Creator Marketplace (Pugongying) creator Core Metrics data, including engagement and content metrics, for benchmarking, vetting, and campaign planning.
+- [Creator Profile (V1) / 创作者资料 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/creator-profile-v1-deprecated): Get Xiaohongshu Creator Marketplace (Pugongying) creator Profile data, including audience and pricing data, for influencer vetting, benchmark analysis, and campaign planning.
+- [Note Performance Metrics (V1) / 笔记表现指标 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/note-performance-metrics-v1-deprecated): Get Xiaohongshu Creator Marketplace (Pugongying) note performance metrics data, including core metrics, trend signals, and performance indicators, for content efficiency analysis, creator benchmarking, and campaign planning.
+- [Follower Distribution (V1) / 粉丝分布 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/follower-distribution-v1-deprecated): Get Xiaohongshu Creator Marketplace (Pugongying) follower distribution data, including audience demographics, interests, and distribution metrics, for creator evaluation, campaign planning, and creator benchmarking.
+- [Follower Summary (V1) / 粉丝摘要 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/follower-summary-v1-deprecated): Get Xiaohongshu Creator Marketplace (Pugongying) follower summary data, including core metrics, trend signals, and performance indicators, for creator evaluation, campaign planning, and creator benchmarking.
+- [Follower Growth History (V1) / 粉丝增长历史 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/follower-growth-history-v1-deprecated): Get Xiaohongshu Creator Marketplace (Pugongying) follower growth history data, including historical audience changes over time, for creator evaluation, campaign planning, and creator benchmarking.
+- [Creator Note List (V1) / 创作者笔记列表 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/creator-note-list-v1): Get Xiaohongshu Creator Marketplace (Pugongying) creator Note List data, including content metadata, publish time, and engagement indicators, for content analysis.
+- [Data Summary (V2) / 数据摘要 (V2)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/data-summary-v2-deprecated): Get Xiaohongshu Creator Marketplace (Pugongying) summary data, including activity, engagement, and audience growth, for creator evaluation, campaign planning, and creator benchmarking.
+- [Cost Effectiveness Analysis (V1) / 成本效益分析 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/cost-effectiveness-analysis-v1-deprecated): Get Xiaohongshu Creator Marketplace (Pugongying) cost Effectiveness Analysis data, including pricing, reach, and engagement efficiency indicators, for campaign evaluation.
+- [Note Details (V1) / 笔记详情 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/note-details-v1-deprecated): Get Xiaohongshu Creator Marketplace (Pugongying) note Details data, including media and engagement signals, for content analysis, archiving, and campaign review.
+- [Creator Core Metrics (V1) / 创作者核心指标 (V1)](https://docs.justoneapi.com/en/api/xiaohongshu-creator-marketplace-pugongying/creator-core-metrics-v1-deprecated): Get Xiaohongshu Creator Marketplace (Pugongying) creator Core Metrics data, including engagement and content metrics, for benchmarking, vetting, and campaign planning.
+
+### Douyin (TikTok China) / 抖音
+
+- [User Profile (V3) / 用户资料 (V3)](https://docs.justoneapi.com/en/api/douyin-tiktok-china/user-profile-v3): Get Douyin (TikTok China) user Profile data, including follower counts, verification status, and bio details, for creator research and account analysis.
+- [User Published Videos (V3) / 用户发布视频 (V3)](https://docs.justoneapi.com/en/api/douyin-tiktok-china/user-published-videos-v3): Get Douyin (TikTok China) user Published Videos data, including captions, covers, and publish times, for account monitoring.
+- [Video Details (V2) / 视频详情 (V2)](https://docs.justoneapi.com/en/api/douyin-tiktok-china/video-details-v2): Get Douyin (TikTok China) video Details data, including author details, publish time, and engagement counts, for video research, archiving, and performance analysis.
+- [Video Search (V4) / 视频搜索 (V4)](https://docs.justoneapi.com/en/api/douyin-tiktok-china/video-search-v4): Get Douyin (TikTok China) video Search data, including metadata and engagement signals, for content discovery, trend research, and competitive monitoring.
+- [User Search (V2) / 用户搜索 (V2)](https://docs.justoneapi.com/en/api/douyin-tiktok-china/user-search-v2): Get Douyin (TikTok China) user Search data, including profile metadata and follower signals, for creator discovery and account research.
+- [Video Comments (V1) / 视频评论 (V1)](https://docs.justoneapi.com/en/api/douyin-tiktok-china/video-comments-v1): Get Douyin (TikTok China) video Comments data, including authors, text, and likes, for sentiment analysis and engagement review.
+- [Comment Replies (V1) / 评论回复 (V1)](https://docs.justoneapi.com/en/api/douyin-tiktok-china/comment-replies-v1): Get Douyin (TikTok China) comment Replies data, including text, authors, and timestamps, for thread analysis and feedback research.
+- [Share Link Resolution (V1) / 分享链接解析 (V1)](https://docs.justoneapi.com/en/api/douyin-tiktok-china/share-link-resolution-v1): Get Douyin (TikTok China) share Link Resolution data, including helping extract canonical IDs, for downstream video and comment workflows.
+
+### Douyin E-commerce / 抖音电商
+
+- [Item Details (V1) / 商品详情 (V1)](https://docs.justoneapi.com/en/api/douyin-e-commerce/item-details-v1): Get Douyin E-commerce item details, including price, title, and stock, for product monitoring and competitive analysis.
+- [Product Search (V1) / 商品搜索 (V1)](https://docs.justoneapi.com/en/api/douyin-e-commerce/product-search-v1): Get Douyin E-commerce product Search data, including matched items and product metadata, for product discovery, catalog research, and market monitoring.
+- [Item Comments (V1) / 商品评论 (V1)](https://docs.justoneapi.com/en/api/douyin-e-commerce/item-comments-v1): Get Douyin E-commerce item comments, including ratings, review content, and reviewer signals, for customer feedback analysis and product research.
+
+### Douyin Creator Marketplace (Xingtu) / 抖音巨量星图
+
+- [Creator Profile (V1) / 创作者资料 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-profile-v1): Get Douyin Creator Marketplace (Xingtu) creator Profile data, including audience and pricing data, for influencer vetting, benchmark analysis, and campaign planning.
+- [Creator Link Structure (V1) / 创作者链接结构 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-link-structure-v1): Get Douyin Creator Marketplace (Xingtu) creator Link Structure data, including engagement and conversion metrics, for creator performance analysis.
+- [Creator Visibility Status (V1) / 创作者可见性状态 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-visibility-status-v1): Get Douyin Creator Marketplace (Xingtu) creator Visibility Status data, including availability status, discovery eligibility, and campaign display signals, for creator evaluation, campaign planning, and marketplace research.
+- [Creator Channel Metrics (V1) / 创作者渠道指标 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-channel-metrics-v1): Get Douyin Creator Marketplace (Xingtu) creator Channel Metrics data, including platform distribution and channel performance data used, for creator evaluation.
+- [Creator Order Experience (V1) / 创作者订单经验 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-order-experience-v1): Get Douyin Creator Marketplace (Xingtu) creator Order Experience data, including commercial history and transaction-related indicators, for creator evaluation, campaign planning, and marketplace research.
+- [Creator Link Metrics (V1) / 创作者链接指标 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-link-metrics-v1): Get Douyin Creator Marketplace (Xingtu) creator Link Metrics data, including creator ranking, traffic structure, and related performance indicators, for creator evaluation, campaign planning, and marketplace research.
+- [Video Distribution (V1) / 视频分布 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/video-distribution-v1): Get Douyin Creator Marketplace (Xingtu) video Distribution data, including content performance breakdowns across published videos, for creator evaluation, campaign planning, and marketplace research.
+- [Audience Distribution (V1) / 受众分布 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/audience-distribution-v1): Get Douyin Creator Marketplace (Xingtu) audience Distribution data, including demographic and interest-based audience segmentation, for creator evaluation, campaign planning, and marketplace research.
+- [Marketing Metrics (V1) / 营销指标 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/marketing-metrics-v1): Get Douyin Creator Marketplace (Xingtu) marketing metrics data, including rate card details and commercial service metrics, for creator evaluation, campaign planning, and marketplace research.
+- [Spread Metrics (V1) / 传播指标 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/spread-metrics-v1): Get Douyin Creator Marketplace (Xingtu) spread metrics data, including exposure, spread, and related performance indicators, for creator evaluation, campaign planning, and marketplace research.
+- [Conversion Analysis (V1) / 转化分析 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/conversion-analysis-v1): Get Douyin Creator Marketplace (Xingtu) conversion Analysis data, including conversion efficiency and commercial performance indicators, for creator evaluation, campaign planning, and marketplace research.
+- [Showcase Items (V1) / 展示商品 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/showcase-items-v1): Get Douyin Creator Marketplace (Xingtu) showcase Items data, including products and videos associated with the account, for creator evaluation, campaign planning, and marketplace research.
+- [Conversion Resources (V1) / 转化资源 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/conversion-resources-v1): Get Douyin Creator Marketplace (Xingtu) conversion Resources data, including products tied to a Douyin Xingtu creator's conversion activity, for commerce analysis and campaign optimization.
+- [Cost Performance Analysis (V1) / 性价比分析 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/cost-performance-analysis-v1): Get Douyin Creator Marketplace (Xingtu) cost Performance Analysis data, including pricing, exposure, and engagement efficiency indicators, for creator evaluation, campaign planning, and marketplace research.
+- [Audience Touchpoint Distribution (V1) / 受众触点分布 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/audience-touchpoint-distribution-v1): Get Douyin Creator Marketplace (Xingtu) audience Touchpoint Distribution data, including segment breakdowns, audience composition, and distribution signals, for creator evaluation, campaign planning, and marketplace research.
+- [Recommended Videos (V1) / 推荐视频 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/recommended-videos-v1): Get Douyin Creator Marketplace (Xingtu) recommended Videos data, including content references used, for creator evaluation.
+- [Follower Distribution (V1) / 粉丝分布 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/follower-distribution-v1): Get Douyin Creator Marketplace (Xingtu) follower Distribution data, including audience segmentation and location and demographic breakdowns, for creator evaluation, campaign planning, and marketplace research.
+- [Creator Search (V1) / 创作者搜索 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-search-v1): Get Douyin Creator Marketplace (Xingtu) creator Search data, including filters, returning profile, and audience, for discovery, comparison, and shortlist building.
+- [Item Report Trends (V1) / 商品报告趋势 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/item-report-trends-v1): Get Douyin Creator Marketplace (Xingtu) item Report Trend data, including time-based changes in item performance metrics, for creator evaluation, campaign planning, and marketplace research.
+- [Item Report Details (V1) / 商品报告详情 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/item-report-details-v1): Get Douyin Creator Marketplace (Xingtu) item Report Details data, including key metrics and report fields used, for item performance analysis.
+- [Item Report Analysis (V1) / 商品报告分析 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/item-report-analysis-v1): Get Douyin Creator Marketplace (Xingtu) item Report Analysis data, including performance interpretation, for creator evaluation, campaign planning, and marketplace research.
+- [KOL Comment Keyword Analysis (V1) / KOL 评论关键词分析 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/kol-comment-keyword-analysis-v1): Get Douyin Creator Marketplace (Xingtu) kOL Comment Keyword Analysis data, including core metrics, trend signals, and performance indicators, for audience language analysis and comment-topic research.
+- [Follower Growth Trend (V1) / 粉丝增长趋势 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/follower-growth-trend-v1): Get Douyin Creator Marketplace (Xingtu) follower Growth Trend data, including historical audience changes over time, for creator evaluation, campaign planning, and marketplace research.
+- [KOL Content Keyword Analysis (V1) / KOL 内容关键词分析 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/kol-content-keyword-analysis-v1): Get Douyin Creator Marketplace (Xingtu) kOL Content Keyword Analysis data, including core metrics, trend signals, and performance indicators, for content theme analysis and creator positioning research.
+- [Creator Business Card (V1) / 创作者名片 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-business-card-v1): Get Douyin Creator Marketplace (Xingtu) creator Business Card data, including business-card profile fields, for creator lookup, vetting, and campaign qualification.
+- [Author Commerce Spread Info (V1) / 作者商业传播信息 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/author-commerce-spread-info-v1): Get Douyin Creator Marketplace (Xingtu) author Commerce Spread Info data, including spread metrics, for creator evaluation for campaign planning and media buying.
+- [Author Commerce Seeding Base Info (V1) / 作者商业种草基础信息 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/author-commerce-seeding-base-info-v1): Get Douyin Creator Marketplace (Xingtu) author Commerce Seeding Base Info data, including baseline metrics, commercial signals, and seeding indicators, for product seeding analysis, creator vetting, and campaign planning.
+- [Creator Profile (V1) / 创作者资料 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-profile-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) creator Profile data, including audience and pricing data, for influencer vetting, benchmark analysis, and campaign planning.
+- [Audience Distribution (V1) / 受众分布 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/audience-distribution-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) audience Distribution data, including demographic and interest-based audience segmentation, for creator evaluation, campaign planning, and marketplace research.
+- [Follower Distribution (V1) / 粉丝分布 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/follower-distribution-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) follower distribution data, including audience demographics, interests, and distribution metrics, for creator evaluation, campaign planning, and marketplace research.
+- [Marketing Metrics (V1) / 营销指标 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/marketing-metrics-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) marketing metrics data, including rate card details and commercial service metrics, for creator evaluation, campaign planning, and marketplace research.
+- [Spread Metrics (V1) / 传播指标 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/spread-metrics-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) spread metrics data, including audience, content performance, and commercial indicators, for quick evaluation.
+- [KOL Keyword Search (V1) / KOL 关键词搜索 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/kol-keyword-search-v1): Get Douyin Creator Marketplace (Xingtu) kOL Keyword Search data, including matching creators and discovery data, for creator sourcing and shortlist building.
+- [Conversion Analysis (V1) / 转化分析 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/conversion-analysis-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) conversion Analysis data, including conversion efficiency and commercial performance indicators, for creator evaluation, campaign planning, and marketplace research.
+- [Showcase Items (V1) / 展示商品 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/showcase-items-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) showcase items data, including core metrics, trend signals, and performance indicators, for creator evaluation, campaign planning, and marketplace research.
+- [Creator Link Metrics (V1) / 创作者链接指标 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-link-metrics-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) creator Link Metrics data, including creator ranking, traffic structure, and related performance indicators, for creator evaluation, campaign planning, and marketplace research.
+- [Conversion Resources (V1) / 转化资源 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/conversion-resources-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) conversion Resources data, including products tied to a Douyin Xingtu creator's conversion activity, for commerce analysis and campaign optimization.
+- [Creator Link Structure (V1) / 创作者链接结构 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/creator-link-structure-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) creator Link Structure data, including engagement and conversion metrics, for creator performance analysis.
+- [Audience Touchpoint Distribution (V1) / 受众触点分布 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/audience-touchpoint-distribution-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) audience touchpoint distribution data, including segment breakdowns, audience composition, and distribution signals, for traffic analysis and existing integration compatibility.
+- [Cost Performance Analysis (V1) / 性价比分析 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/cost-performance-analysis-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) cost Performance Analysis data, including pricing, exposure, and engagement efficiency indicators, for creator evaluation, campaign planning, and marketplace research.
+- [Recommended Videos (V1) / 推荐视频 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/recommended-videos-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) recommended videos data, including video performance metrics, for creator evaluation, campaign planning, and marketplace research.
+- [Follower Growth Trend (V1) / 粉丝增长趋势 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/follower-growth-trend-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) follower Growth Trend data, including historical audience changes over time, for creator evaluation, campaign planning, and marketplace research.
+- [KOL Comment Keyword Analysis (V1) / KOL 评论关键词分析 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/kol-comment-keyword-analysis-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) kOL Comment Keyword Analysis data, including core metrics, trend signals, and performance indicators, for audience language analysis and comment-topic research.
+- [KOL Content Keyword Analysis (V1) / KOL 内容关键词分析 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/kol-content-keyword-analysis-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) kOL Content Keyword Analysis data, including core metrics, trend signals, and performance indicators, for content theme analysis and creator positioning research.
+- [Author Commerce Spread Info (V1) / 作者商业传播信息 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/author-commerce-spread-info-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) author Commerce Spread Info data, including spread metrics, for creator evaluation for campaign planning and media buying.
+- [Author Commerce Seeding Base Info (V1) / 作者商业种草基础信息 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/author-commerce-seeding-base-info-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) author Commerce Seeding Base Info data, including baseline metrics, commercial signals, and seeding indicators, for product seeding analysis, creator vetting, and campaign planning.
+- [Video Details (V1) / 视频详情 (V1)](https://docs.justoneapi.com/en/api/douyin-creator-marketplace-xingtu/video-details-v1-deprecated): Get Douyin Creator Marketplace (Xingtu) video Details data, including performance fields from the legacy Douyin Xingtu endpoint, for content review and integration compatibility.
+
+### Kuaishou / 快手
+
+- [User Search (V2) / 用户搜索 (V2)](https://docs.justoneapi.com/en/api/kuaishou/user-search-v2): Get Kuaishou user Search data, including profile names, avatars, and follower counts, for creator discovery and account research.
+- [User Published Videos (V2) / 用户发布视频 (V2)](https://docs.justoneapi.com/en/api/kuaishou/user-published-videos-v2): Get Kuaishou user Published Videos data, including covers, publish times, and engagement metrics, for creator monitoring and content performance analysis.
+- [Video Details (V2) / 视频详情 (V2)](https://docs.justoneapi.com/en/api/kuaishou/video-details-v2): Get Kuaishou video Details data, including video URL, caption, and author info, for in-depth content performance analysis and building databases of viral videos.
+- [Video Search (V2) / 视频搜索 (V2)](https://docs.justoneapi.com/en/api/kuaishou/video-search-v2): Get Kuaishou video Search data, including video ID, cover image, and description, for competitive analysis and market trends and keywords monitoring and brand tracking.
+- [User Profile (V1) / 用户资料 (V1)](https://docs.justoneapi.com/en/api/kuaishou/user-profile-v1): Get Kuaishou user Profile data, including account metadata, audience metrics, and verification-related fields, for creator research and building creator profiles and monitoring audience growth and account status.
+- [Share Link Resolution (V1) / 分享链接解析 (V1)](https://docs.justoneapi.com/en/api/kuaishou/share-link-resolution-v1): Get Kuaishou share Link Resolution data, including resolved content identifier and target object data, for resolving shared links for automated content processing.
+- [Video Comments (V1) / 视频评论 (V1)](https://docs.justoneapi.com/en/api/kuaishou/video-comments-v1): Retrieves public comments of a Kuaishou video, including comment content, author info, like count, and reply count.  Typical use cases: - Sentiment analysis and community feedback monitoring - Gathering engagement data for specific videos
+
+### 1688 / 1688
+
+- [Product Details (V1) / 商品详情 (V1)](https://docs.justoneapi.com/en/api/1688/product-details-v1): Get 1688 product details, including product metadata and offer information, for sourcing research and catalog analysis.
+- [Product Search (V1) / 商品搜索 (V1)](https://docs.justoneapi.com/en/api/1688/product-search-v1): Get 1688 product search results by keyword for sourcing discovery, supplier research, and market monitoring.
+
+### Weibo / 微博
+
+- [Keyword Search (V2) / 关键词搜索 (V2)](https://docs.justoneapi.com/en/api/weibo/keyword-search-v2): Get Weibo keyword Search data, including authors, publish times, and engagement signals, for trend monitoring.
+- [Post Details (V1) / 帖子详情 (V1)](https://docs.justoneapi.com/en/api/weibo/post-details-v1): Get Weibo post Details data, including media, author metadata, and engagement counts, for post analysis, archiving, and campaign monitoring.
+- [User Profile (V3) / 用户资料 (V3)](https://docs.justoneapi.com/en/api/weibo/user-profile-v3): Get Weibo user Profile data, including follower counts, verification status, and bio details, for creator research and account analysis.
+- [User Fans (V1) / 用户粉丝 (V1)](https://docs.justoneapi.com/en/api/weibo/user-fans-v1): Get Weibo user Fans data, including profile metadata and verification signals, for audience analysis and influencer research.
+- [User Followers (V1) / 用户关注者 (V1)](https://docs.justoneapi.com/en/api/weibo/user-followers-v1): Get Weibo user Followers data, including profile metadata and verification signals, for network analysis and creator research.
+- [User Published Posts (V1) / 用户发布帖子 (V1)](https://docs.justoneapi.com/en/api/weibo/user-published-posts-v1): Get Weibo user Published Posts data, including text, media, and publish times, for account monitoring.
+- [User Video List (V1) / 用户视频列表 (V1)](https://docs.justoneapi.com/en/api/weibo/user-video-list-v1): Get Weibo user Video list data (waterfall), including pagination cursor for next page.
+- [TV Video Details (V1) / 电视视频详情 (V1)](https://docs.justoneapi.com/en/api/weibo/tv-video-details-v1): Get Weibo tV Video Details data, including media URLs, author details, and engagement counts, for video research, archiving, and performance analysis.
+- [Hot Search (V1) / 热搜 (V1)](https://docs.justoneapi.com/en/api/weibo/hot-search-v1): Get Weibo hot Search data, including ranking data, for trend monitoring, newsroom workflows, and topic discovery.
+- [Post Comments (V1) / 帖子评论 (V1)](https://docs.justoneapi.com/en/api/weibo/post-comments-v1): Get Weibo post Comments data, including text, authors, and timestamps, for feedback analysis.
+- [Search User Published Posts (V1) / 搜索用户发布帖子 (V1)](https://docs.justoneapi.com/en/api/weibo/search-user-published-posts-v1): Get Weibo search User Published Posts data, including matched results, metadata, and ranking signals, for author research and historical content discovery.
+
+### Bilibili / 哔哩哔哩
+
+- [Video Details (V2) / 视频详情 (V2)](https://docs.justoneapi.com/en/api/bilibili/video-details-v2): Get Bilibili video Details data, including metadata (title, tags, and publishing time), for tracking video performance and engagement metrics and analyzing content metadata and uploader information.
+- [User Published Videos (V2) / 用户发布视频 (V2)](https://docs.justoneapi.com/en/api/bilibili/user-published-videos-v2): Get Bilibili user Published Videos data, including titles, covers, and publish times, for creator monitoring and content performance analysis.
+- [User Profile (V2) / 用户资料 (V2)](https://docs.justoneapi.com/en/api/bilibili/user-profile-v2): Get Bilibili user Profile data, including account metadata, audience metrics, and verification-related fields, for analyzing creator's profile, level, and verification status and verifying user identity and social presence on bilibili.
+- [Video Danmaku (V2) / 视频弹幕 (V2)](https://docs.justoneapi.com/en/api/bilibili/video-danmaku-v2): Get Bilibili video Danmaku data, including timeline positions and comment text, for audience reaction analysis and subtitle-style comment review.
+- [Video Comments (V2) / 视频评论 (V2)](https://docs.justoneapi.com/en/api/bilibili/video-comments-v2): Get Bilibili video Comments data, including commenter profiles, text, and likes, for sentiment analysis and comment moderation workflows.
+- [Video Search (V2) / 视频搜索 (V2)](https://docs.justoneapi.com/en/api/bilibili/video-search-v2): Get Bilibili video Search data, including matched videos, creators, and engagement metrics, for topic research and content discovery.
+- [Share Link Resolution (V1) / 分享链接解析 (V1)](https://docs.justoneapi.com/en/api/bilibili/share-link-resolution-v1): Get Bilibili share Link Resolution data, including resolved video and page identifier, for converting shortened mobile share links to standard bvid/metadata and automating content extraction from shared social media links.
+- [User Relation Stats (V1) / 用户关系统计 (V1)](https://docs.justoneapi.com/en/api/bilibili/user-relation-stats-v1): Get Bilibili user Relation Stats data, including following counts, for creator benchmarking and audience growth tracking.
+- [Video Captions (V2) / 视频字幕 (V2)](https://docs.justoneapi.com/en/api/bilibili/video-captions-v2): Get Bilibili video Captions data, including caption data, for transcript extraction and multilingual content analysis.
+
+### JD.com / 京东
+
+- [Product Details (V1) / 商品详情 (V1)](https://docs.justoneapi.com/en/api/jdcom/product-details-v1): Get JD.com product Details data, including pricing, images, and shop information, for catalog analysis, product monitoring, and ecommerce research.
+- [Product Details (V2) / 商品详情 (V2)](https://docs.justoneapi.com/en/api/jdcom/product-details-v2): Get JD.com product Details data through the task-backed v2 flow. If data is not ready within a short wait, the response returns a pending task status.
+- [Product Price (V1) / 商品价格 (V1)](https://docs.justoneapi.com/en/api/jdcom/product-price-v1): Get JD.com product Price data for price monitoring, catalog checks, repricing workflows, and ecommerce research.
+- [Product Search (V1) / 商品搜索 (V1)](https://docs.justoneapi.com/en/api/jdcom/product-search-v1): Get JD.com product Search data, including matched items and product metadata, for product discovery, catalog research, and market monitoring.
+- [Product Comments (V1) / 商品评论 (V1)](https://docs.justoneapi.com/en/api/jdcom/product-comments-v1): Get JD.com product Comments data, including ratings, timestamps, and reviewer signals, for customer feedback analysis and product research.
+- [Shop Product List (V1) / 店铺商品列表 (V1)](https://docs.justoneapi.com/en/api/jdcom/shop-product-list-v1): Get JD.com shop Product List data, including item titles, prices, and images, for catalog tracking and seller research.
+
+### WeChat Official Accounts / 微信公众号
+
+- [User Published Posts (V1) / 用户发布帖子 (V1)](https://docs.justoneapi.com/en/api/wechat-official-accounts/user-published-posts-v1): Get WeChat Official Accounts user Published Posts data, including titles, publish times, and summaries, for account monitoring.
+- [Article Engagement Metrics (V1) / 文章互动指标 (V1)](https://docs.justoneapi.com/en/api/wechat-official-accounts/article-engagement-metrics-v1): Get WeChat Official Accounts article Engagement Metrics data, including like, share, and comment metrics, for article performance tracking and benchmarking.
+- [Article Comments (V1) / 文章评论 (V1)](https://docs.justoneapi.com/en/api/wechat-official-accounts/article-comments-v1): Get WeChat Official Accounts article Comments data, including commenter details, comment text, and timestamps, for feedback analysis.
+- [Keyword Search (V1) / 关键词搜索 (V1)](https://docs.justoneapi.com/en/api/wechat-official-accounts/keyword-search-v1): Get WeChat Official Accounts keyword Search data, including account names, titles, and publish times, for content discovery.
+- [Article Details (V1) / 文章详情 (V1)](https://docs.justoneapi.com/en/api/wechat-official-accounts/article-details-v1): Get WeChat Official Accounts article Details data, including body content, for article archiving, research, and content analysis.
+
+### Douban Movie / 豆瓣电影
+
+- [Movie Reviews (V1) / 影评 (V1)](https://docs.justoneapi.com/en/api/douban-movie/movie-reviews-v1): Get Douban movie Reviews data, including review titles, ratings, and snippets, for audience sentiment analysis and review research.
+- [Review Details (V1) / 评价详情 (V1)](https://docs.justoneapi.com/en/api/douban-movie/review-details-v1): Get Douban movie Review Details data, including metadata, content fields, and engagement signals, for review archiving and detailed opinion analysis.
+- [Subject Details (V1) / 条目详情 (V1)](https://docs.justoneapi.com/en/api/douban-movie/subject-details-v1): Get Douban subject Details data, including title, rating, and cast, for title enrichment and catalog research.
+- [Comments (V1) / 评论 (V1)](https://docs.justoneapi.com/en/api/douban-movie/comments-v1): Get Douban movie Comments data, including ratings, snippets, and interaction counts, for quick sentiment sampling and review monitoring.
+- [Recent Hot Movie (V1) / 近期热门电影 (V1)](https://docs.justoneapi.com/en/api/douban-movie/recent-hot-movie-v1): Get Douban recent Hot Movie data, including ratings, posters, and subject metadata, for movie discovery and trend monitoring.
+- [Recent Hot Tv (V1) / 近期热门电视剧 (V1)](https://docs.justoneapi.com/en/api/douban-movie/recent-hot-tv-v1): Get Douban recent Hot Tv data, including ratings, posters, and subject metadata, for series discovery and trend monitoring.
+
+### TikTok / TikTok
+
+- [User Published Posts (V1) / 用户发布帖子 (V1)](https://docs.justoneapi.com/en/api/tiktok/user-published-posts-v1): Get TikTok user Published Posts data, including video ID, description, and publish time, for user activity analysis and posting frequency tracking, influencer performance evaluation, and content trend monitoring for specific creators.
+- [Post Details (V1) / 帖子详情 (V1)](https://docs.justoneapi.com/en/api/tiktok/post-details-v1): Get TikTok post Details data, including video ID, author information, and description text, for content performance analysis and metadata extraction and influencer evaluation via specific post metrics.
+- [User Profile (V1) / 用户资料 (V1)](https://docs.justoneapi.com/en/api/tiktok/user-profile-v1): Get TikTok user Profile data, including nickname, unique ID, and avatar, for influencer profiling and audience analysis, account performance tracking and growth monitoring, and identifying verified status and official accounts.
+- [Post Comments (V1) / 帖子评论 (V1)](https://docs.justoneapi.com/en/api/tiktok/post-comments-v1): Get TikTok post Comments data, including comment ID, user information, and text content, for sentiment analysis of the audience's reaction to specific content and engagement measurement via comment volume and quality.
+- [Comment Replies (V1) / 评论回复 (V1)](https://docs.justoneapi.com/en/api/tiktok/comment-replies-v1): Get TikTok comment Replies data, including reply ID, user information, and text content, for understanding detailed user interactions and threaded discussions and identifying influencers or active participants within a comment section.
+- [User Search (V1) / 用户搜索 (V1)](https://docs.justoneapi.com/en/api/tiktok/user-search-v1): Get TikTok user Search data, including basic profile information such as user ID, nickname, and unique handle, for discovering influencers in specific niches via keywords and identifying target audiences and conducting competitor research.
+- [Post Search (V1) / 作品搜索 (V1)](https://docs.justoneapi.com/en/api/tiktok/post-search-v1): Get TikTok post Search data, including key details such as video ID, description, and author information, for trend monitoring and content discovery and keyword-based market analysis and sentiment tracking.
+
+### TikTok Shop / TikTok Shop
+
+- [Product Search (V1) / 商品搜索 (V1)](https://docs.justoneapi.com/en/api/tiktok-shop/product-search-v1): Get TikTok Shop product Search data, including title, price, and sales, for market research and trend analysis, competitor product discovery, and monitoring product popularity in specific regions.
+- [Product Details (V1) / 商品详情 (V1)](https://docs.justoneapi.com/en/api/tiktok-shop/product-details-v1): Get TikTok Shop product Details data, including title, description, and price, for building product catalogs, price and stock monitoring, and in-depth product analysis.
+- [Product Details (V2) / 商品详情 (V2)](https://docs.justoneapi.com/en/api/tiktok-shop/product-details-v2): Get TikTok Shop product Details data, including title, description, and price, for building product catalogs, price and stock monitoring, and in-depth product analysis.
+
+### YOUKU / 优酷
+
+- [Video Search (V1) / 视频搜索 (V1)](https://docs.justoneapi.com/en/api/youku/video-search-v1): Get YOUKU video Search data, including video ID, title, and cover image, for keyword-based video discovery, monitoring specific topics or trends on youku, and analyzing search results for market research.
+- [Video Details (V1) / 视频详情 (V1)](https://docs.justoneapi.com/en/api/youku/video-details-v1): Get YOUKU video Details data, including video ID, title, and description, for fetching comprehensive metadata for a single video, tracking engagement metrics like play counts and likes, and integrating detailed video info into third-party dashboards.
+- [User Profile (V1) / 用户资料 (V1)](https://docs.justoneapi.com/en/api/youku/user-profile-v1): Get YOUKU user Profile data, including user ID, username, and avatar, for analyzing creator influence and audience size, monitoring account growth and verification status, and fetching basic user info for social crm.
+
+### Instagram / Instagram
+
+- [User Profile (V1) / 用户资料 (V1)](https://docs.justoneapi.com/en/api/instagram/user-profile-v1): Get Instagram user Profile data, including follower count, following count, and post count, for obtaining basic account metadata for influencer vetting, tracking follower growth and audience reach over time, and mapping user handles to specific profile stats.
+- [Post Details (V1) / 帖子详情 (V1)](https://docs.justoneapi.com/en/api/instagram/post-details-v1): Get Instagram post Details data, including post caption, media content (images/videos), and publish time, for analyzing engagement metrics (likes/comments) for a specific post and archiving post content and media assets for content analysis.
+- [User Published Posts (V1) / 用户发布帖子 (V1)](https://docs.justoneapi.com/en/api/instagram/user-published-posts-v1): Get Instagram user Published Posts data, including post code, caption, and media type, for monitoring recent publishing activity of a specific user and building a historical record of content for auditing or analysis.
+- [Reels Search (V1) / Reels 搜索 (V1)](https://docs.justoneapi.com/en/api/instagram/reels-search-v1): Get Instagram reels Search data, including post ID, caption, and author profile, for tracking trends and viral content via specific keywords or hashtags and discovering high-engagement reels within a particular niche.
+- [Hashtag Posts Search (V1) / 话题标签帖子搜索 (V1)](https://docs.justoneapi.com/en/api/instagram/hashtag-posts-search-v1): Get Instagram hashtag Posts Search data, including caption, author profile, and publish time, for competitive analysis of trending topics and hashtags and monitoring community discussions and public opinion on specific tags.
+- [Post Comment List (V1) / 帖子评论列表 (V1)](https://docs.justoneapi.com/en/api/instagram/post-comment-list-v1): Get post comments, commenter profiles, text, like counts, reply counts, and pagination cursors for sentiment review and engagement analysis.
+- [Comment Reply List (V1) / 评论回复列表 (V1)](https://docs.justoneapi.com/en/api/instagram/comment-reply-list-v1): Get replies under a parent comment, including reply text, author details, like counts, IDs, and pagination cursors for threaded discussion analysis.
+
+### YouTube / YouTube
+
+- [Video Details (V1) / 视频详情 (V1)](https://docs.justoneapi.com/en/api/youtube/video-details-v1): Get YouTube video Details data, including its title, description, and view counts, for tracking video engagement and statistics, extracting video metadata for content analysis, and verifying video availability and status.
+- [Channel Videos (V1) / 频道视频 (V1)](https://docs.justoneapi.com/en/api/youtube/channel-videos-v1): Retrieve a list of videos from a specific YouTube channel, providing detailed insights into content performance and upload history.
+- [Video Comment List (V1) / 视频评论列表 (V1)](https://docs.justoneapi.com/en/api/youtube/video-comment-list-v1): Get first-level video comments, author profiles, like counts, reply counts, and reply cursors for audience feedback and engagement analysis.
+- [Video Sub Comment List (V1) / 视频子评论列表 (V1)](https://docs.justoneapi.com/en/api/youtube/video-sub-comment-list-v1): Get second-level video comment replies, reply authors, like counts, and pagination cursors for threaded discussion analysis.
+
+### Reddit / Reddit
+
+- [Post Details (V1) / 帖子详情 (V1)](https://docs.justoneapi.com/en/api/reddit/post-details-v1): Get Reddit post Details data, including author details, subreddit info, and engagement counts, for content analysis, moderation research, and monitoring.
+- [Post Comments (V1) / 帖子评论 (V1)](https://docs.justoneapi.com/en/api/reddit/post-comments-v1): Get Reddit post Comments data, including text, authors, and timestamps, for discussion analysis and moderation research.
+- [Keyword Search (V1) / 关键词搜索 (V1)](https://docs.justoneapi.com/en/api/reddit/keyword-search-v1): Get Reddit keyword Search data, including titles, authors, and subreddit context, for topic discovery and monitoring.
+
+### Toutiao / 今日头条
+
+- [Article Details (V1) / 文章详情 (V1)](https://docs.justoneapi.com/en/api/toutiao/article-details-v1): Get Toutiao article Details data, including article ID, title, and author information, for content performance analysis and media monitoring and verifying article authenticity and metadata retrieval.
+- [User Profile (V1) / 用户资料 (V1)](https://docs.justoneapi.com/en/api/toutiao/user-profile-v1): Get Toutiao user Profile data, including user ID, nickname, and avatar, for influencer profiling and audience analysis and monitoring creator performance and growth.
+- [App Keyword Search (V1) / App关键词搜索 (V1)](https://docs.justoneapi.com/en/api/toutiao/app-keyword-search-v1-deprecated): Get Toutiao app Keyword Search data, including matching articles, videos, and authors, for topic discovery and monitoring.
+- [Web Keyword Search (V2) / 网页关键词搜索 (V2)](https://docs.justoneapi.com/en/api/toutiao/web-keyword-search-v2): Get Toutiao web Keyword Search data, including this is the PC version of the search API. Note that it currently only supports retrieving the first page of results, for first-page discovery of articles, videos, and authors for trend research and monitoring.
+
+### Zhihu / 知乎
+
+- [Column Article Details (V1) / 专栏文章详情 (V1)](https://docs.justoneapi.com/en/api/zhihu/column-article-details-v1): Get Zhihu column Article Details data, including title, author, and content, for article archiving and content research.
+- [Answer List (V1) / 回答列表 (V1)](https://docs.justoneapi.com/en/api/zhihu/answer-list-v1): Get Zhihu answer List data, including answer content, author profiles, and interaction metrics, for question analysis and answer research.
+- [Keyword Search (V1) / 关键词搜索 (V1)](https://docs.justoneapi.com/en/api/zhihu/keyword-search-v1): Get Zhihu keyword Search data, including matched results, metadata, and ranking signals, for topic discovery and content research.
+- [Column Article List (V1) / 专栏文章列表 (V1)](https://docs.justoneapi.com/en/api/zhihu/column-article-list-v1): Get Zhihu column Article List data, including article metadata and list ordering, for column monitoring and content collection.
+
+### Amazon / 亚马逊
+
+- [Product Details (V1) / 商品详情 (V1)](https://docs.justoneapi.com/en/api/amazon/product-details-v1): Get Amazon product Details data, including title, brand, and price, for building product catalogs and enriching item content (e.g., images), price monitoring and availability tracking, and e-commerce analytics and competitor tracking.
+- [Product Top Reviews (V1) / 商品热门评论 (V1)](https://docs.justoneapi.com/en/api/amazon/product-top-reviews-v1): Get Amazon product Top Reviews data, including most helpful) public reviews, for sentiment analysis and consumer feedback tracking, product research and quality assessment, and monitoring competitor customer experience.
+- [Best Sellers (V1) / 热销商品 (V1)](https://docs.justoneapi.com/en/api/amazon/best-sellers-v1): Get Amazon best Sellers data, including rank positions, product metadata, and pricing, for identifying trending products in specific categories, market share analysis and category research, and tracking sales rank and popularity over time.
+- [Products By Category (V1) / 按类别获取商品 (V1)](https://docs.justoneapi.com/en/api/amazon/products-by-category-v1): Get Amazon products By Category data, including title, price, and rating, for category-based product discovery and returns product information such as title, price, and rating.
+
+### Facebook / Facebook
+
+- [Post Search (V1) / 作品搜索 (V1)](https://docs.justoneapi.com/en/api/facebook/post-search-v1): Get Facebook post Search data, including matched results, metadata, and ranking signals, for discovering relevant public posts for specific keywords and analyzing engagement and reach of public content on facebook.
+- [Get Profile ID (V1) / 获取资料ID (V1)](https://docs.justoneapi.com/en/api/facebook/get-profile-id-v1): Retrieve the unique Facebook profile ID from a given profile URL.
+- [Get Profile Posts (V1) / 获取资料帖子 (V1)](https://docs.justoneapi.com/en/api/facebook/get-profile-posts-v1): Get public posts from a specific Facebook profile using its profile ID.
+
+### Twitter / Twitter
+
+- [User Profile (V1) / 用户资料 (V1)](https://docs.justoneapi.com/en/api/twitter/user-profile-v1): Get Twitter user Profile data, including account metadata, audience metrics, and verification-related fields, for accessing user profile metadata (e.g., description, location, verification status) and collecting follower and following counts.
+- [User Published Posts (V1) / 用户发布帖子 (V1)](https://docs.justoneapi.com/en/api/twitter/user-published-posts-v1): Get Twitter user Published Posts data, including post content, timestamps, and engagement data, for account monitoring and content analysis.
+
+### Beike / 贝壳
+
+- [Resale Housing Details (V1) / 二手房详情 (V1)](https://docs.justoneapi.com/en/api/beike/resale-housing-details-v1): Get Beike resale Housing Details data, including - Pricing (total and unit price), Physical attributes (area, and layout, for displaying a full property profile to users and detailed price comparison between specific listings.
+- [Resale Housing List (V1) / 二手房列表 (V1)](https://docs.justoneapi.com/en/api/beike/resale-housing-list-v1): Get Beike resale Housing List data, including - Supports filtering by city/region, price range, and layout, for building search result pages for property portals and aggregating market data for regional housing trends.
+- [Community List (V1) / 小区列表 (V1)](https://docs.justoneapi.com/en/api/beike/community-list-v1): Get Beike community List data, including - Community name and unique ID and Average listing price and historical price trends, for identifying popular residential areas in a city and comparing average housing prices across different communities.
+
+### IMDb / IMDb
+
+- [Release Expectation (V1) / 发行预期 (V1)](https://docs.justoneapi.com/en/api/imdb/release-expectation-v1): Get IMDb title Release Expectation data, including production status, release dates, and anticipation signals, for release monitoring and title research.
+- [Extended Details (V1) / 扩展详情 (V1)](https://docs.justoneapi.com/en/api/imdb/extended-details-v1): Get IMDb title Extended Details data, including title info, images, and genres, for title enrichment and catalog research.
+- [Top Cast and Crew (V1) / 主要演员和工作人员 (V1)](https://docs.justoneapi.com/en/api/imdb/top-cast-and-crew-v1): Get IMDb title Top Cast and Crew data, including names, roles, and profile references, for talent research and title enrichment.
+- [Base Info (V1) / 基本信息 (V1)](https://docs.justoneapi.com/en/api/imdb/base-info-v1): Get IMDb title Base Info data, including title text, release year, and type, for catalog enrichment and title lookup workflows.
+- [Redux Overview (V1) / Redux概览 (V1)](https://docs.justoneapi.com/en/api/imdb/redux-overview-v1): Get IMDb title Redux Overview data, including key summary fields and linked metadata, for get a concise summary and overview of a movie or TV show's key attributes.
+- ['Did You Know' Insights (V1) / '你知道吗'洞察 (V1)](https://docs.justoneapi.com/en/api/imdb/did-you-know-insights-v1): Get IMDb title 'Did You Know' Insights data, including trivia, for editorial research and title insight enrichment.
+- [Critics Review Summary (V1) / 影评人评论摘要 (V1)](https://docs.justoneapi.com/en/api/imdb/critics-review-summary-v1): Get IMDb title Critics Review Summary data, including review highlights, for review analysis and title comparison.
+- [Awards Summary (V1) / 奖项摘要 (V1)](https://docs.justoneapi.com/en/api/imdb/awards-summary-v1): Get IMDb title Awards Summary data, including nominations, for title benchmarking and awards research.
+- [User Reviews Summary (V1) / 用户评价摘要 (V1)](https://docs.justoneapi.com/en/api/imdb/user-reviews-summary-v1): Get IMDb title User Reviews Summary data, including aggregated review content and counts, for audience sentiment analysis.
+- [Plot Summary (V1) / 剧情摘要 (V1)](https://docs.justoneapi.com/en/api/imdb/plot-summary-v1): Get IMDb title Plot Summary data, including core metrics, trend signals, and performance indicators, for displaying a detailed description of the storyline for a movie or TV show.
+- [Contribution Questions (V1) / 贡献问题 (V1)](https://docs.justoneapi.com/en/api/imdb/contribution-questions-v1): Get IMDb title Contribution Questions data, including specific IMDb title, for data maintenance workflows and title metadata review.
+- [Details (V1) / 详情 (V1)](https://docs.justoneapi.com/en/api/imdb/details-v1): Get IMDb title Details data, including metadata, release info, and cast, for deep title research and catalog enrichment.
+- [Box Office Summary (V1) / 票房摘要 (V1)](https://docs.justoneapi.com/en/api/imdb/box-office-summary-v1): Get IMDb title Box Office Summary data, including grosses and related performance indicators, for revenue tracking and title comparison.
+- [Recommendations (V1) / 推荐 (V1)](https://docs.justoneapi.com/en/api/imdb/recommendations-v1): Get IMDb title Recommendations data, including related titles and suggestion metadata, for content discovery and recommendation analysis.
+- [Keyword Search (V1) / 关键词搜索 (V1)](https://docs.justoneapi.com/en/api/imdb/keyword-search-v1): Get IMDb keyword Search data, including matched results, metadata, and ranking signals, for entity discovery and entertainment research.
+- [Streaming Picks (V1) / 流媒体精选 (V1)](https://docs.justoneapi.com/en/api/imdb/streaming-picks-v1): Get IMDb streaming Picks data, including curated titles available across streaming surfaces, for content discovery and watchlist research.
+- [News by Category (V1) / 分类新闻 (V1)](https://docs.justoneapi.com/en/api/imdb/news-by-category-v1): Get IMDb news by Category data, including headlines, summaries, and source metadata, for media monitoring and news research.
+- [Chart Rankings (V1) / 榜单排名 (V1)](https://docs.justoneapi.com/en/api/imdb/chart-rankings-v1): Get IMDb title Chart Rankings data, including positions in lists such as Top 250 and related charts, for ranking monitoring and title benchmarking.
+- [Countries of Origin (V1) / 原产国 (V1)](https://docs.justoneapi.com/en/api/imdb/countries-of-origin-v1): Get IMDb title Countries of Origin data, including country names and regional metadata, for catalog enrichment and regional content analysis.
+
+### Web Page / 网页
+
+- [HTML Content (V1) / HTML内容 (V1)](https://docs.justoneapi.com/en/api/web-page/html-content-v1): Get the HTML content of a web page.
+- [Rendered HTML Content (V1) / 渲染的HTML内容 (V1)](https://docs.justoneapi.com/en/api/web-page/rendered-html-content-v1): Get the Rendered HTML content of a web page.
+- [Markdown Content (V1) / Markdown内容 (V1)](https://docs.justoneapi.com/en/api/web-page/markdown-content-v1): Get the Markdown content of a web page.
+
+## Response Structure
+All responses are JSON with:
+- `code`: 0 for success, non-zero for errors.
+- `message`: Error description.
+- `data`: Response payload.
+
+## Rate Limiting & Quotas
+Check individual API pages for specific rate limits. 302/303 codes indicate limit issues.

+ 1266 - 0
docs/api-docs/tikhub-docs.md

@@ -0,0 +1,1266 @@
+# TikHub.io API Docs
+
+## Docs
+- [README - English](https://docs.tikhub.io/4592766m0.md): 
+- [Introduction - English](https://docs.tikhub.io/4592751m0.md): 
+- [自述文档 - 中文](https://docs.tikhub.io/4579297m0.md): 
+- [介绍 - 中文](https://docs.tikhub.io/4579905m0.md): 
+- [⚡ Getting Started](https://docs.tikhub.io/5432442m0.md): 
+- [🚀 Digital Product](https://docs.tikhub.io/5432443m0.md): 
+- [💰 Withdraw](https://docs.tikhub.io/5432444m0.md): 
+- [📝 Service Provider Agreement](https://docs.tikhub.io/5432445m0.md): 
+- [🚫 Business Restriction ](https://docs.tikhub.io/5432446m0.md): 
+- [🤝🏻 Customer Service](https://docs.tikhub.io/5432447m0.md): 
+- [⚡ 新手指南](https://docs.tikhub.io/5448543m0.md): 
+- [🚀 数字产品](https://docs.tikhub.io/5448544m0.md): 
+- [💰 提现功能](https://docs.tikhub.io/5448545m0.md): 
+- [📝 商家使用条款](https://docs.tikhub.io/5448546m0.md): 
+- [🚫 业务限制](https://docs.tikhub.io/5448547m0.md): 
+- [🤝🏻 售后服务](https://docs.tikhub.io/5448548m0.md): 
+- [💬 关于 TikHub AI API](https://docs.tikhub.io/7781111m0.md): 
+- [💬 About TikHub AI API](https://docs.tikhub.io/7781112m0.md): 
+- [TikHub Term of Use](https://docs.tikhub.io/5508540m0.md): 
+- [TikHub 用户使用条款](https://docs.tikhub.io/5508541m0.md): 
+- [TikHub 隐私条款](https://docs.tikhub.io/5508542m0.md): 
+- [TikHub Privacy Policy](https://docs.tikhub.io/5508543m0.md): 
+
+## API Docs
+- TikHub-User-API [获取TikHub用户信息/Get TikHub user info](https://docs.tikhub.io/186826050e0.md): # [中文]
+- TikHub-User-API [获取用户每日使用情况/Get user daily usage](https://docs.tikhub.io/186826051e0.md): # [中文]
+- TikHub-User-API [计算价格/Calculate price](https://docs.tikhub.io/186826052e0.md): # [中文]
+- TikHub-User-API [获取阶梯式折扣百分比信息/Get tiered discount percentage information](https://docs.tikhub.io/186826053e0.md): # [中文]
+- TikHub-User-API [获取一个端点的信息/Get information of an endpoint](https://docs.tikhub.io/186826054e0.md): # [中文]
+- TikHub-User-API [获取所有端点信息/Get all endpoints information](https://docs.tikhub.io/186826055e0.md): # [中文]
+- TikHub-Downloader-API [检查TikHub下载器的版本更新 / Check for TikHub Downloader version updates](https://docs.tikhub.io/271495949e0.md): # [中文]
+- TikHub-Downloader-API [重定向到最新版本的下载链接 / Redirect to the latest version download link](https://docs.tikhub.io/274108639e0.md): # [中文]
+- Demo-API [查看Demo缓存状态/View Demo Cache Status](https://docs.tikhub.io/337619227e0.md): # 查看所有Demo接口的缓存状态
+- Demo-API [【Demo】抖音Web获取固定作品数据(1小时缓存)/[Demo] Fetch Douyin Web Fixed Video Data with Cache](https://docs.tikhub.io/337619228e0.md): # 🎯 **这是一个DEMO接口**
+- Demo-API [【Demo】抖音APP获取固定作品数据(1小时缓存)/[Demo] Fetch Douyin APP Fixed Video Data with Cache](https://docs.tikhub.io/337619229e0.md): # 🎯 **这是一个DEMO接口**
+- Demo-API [【Demo】抖音搜索综合搜索(1小时缓存)/[Demo] Douyin General Search with Cache](https://docs.tikhub.io/337619230e0.md): # 🎯 **这是一个DEMO接口**
+- Demo-API [【Demo】快手获取固定视频信息(1小时缓存)/[Demo] Kuaishou Fixed Video with Cache](https://docs.tikhub.io/337619231e0.md): # 🎯 **这是一个DEMO接口**
+- Demo-API [【Demo】TikTok固定用户信息(1小时缓存)/[Demo] TikTok Fixed User Profile with Cache](https://docs.tikhub.io/337619232e0.md): # 🎯 **这是一个DEMO接口**
+- Demo-API [【Demo】TikTok APP获取固定视频详情(1小时缓存)/[Demo] TikTok APP Fixed Video Detail with Cache](https://docs.tikhub.io/337619233e0.md): # 🎯 **这是一个DEMO接口**
+- Demo-API [【Demo】Instagram获取固定用户信息(1小时缓存)/[Demo] Instagram Fixed User Profile with Cache](https://docs.tikhub.io/337619234e0.md): # 🎯 **这是一个DEMO接口**
+- Demo-API [【Demo】微信公众号文章提取(1小时缓存)/[Demo] WeChat Article Extract with Cache](https://docs.tikhub.io/337619235e0.md): # 🎯 **这是一个DEMO接口**
+- Health-Check [检查服务器是否正确响应请求 / Check if the server responds to requests correctly](https://docs.tikhub.io/237673542e0.md): # [中文]
+- Sora2-API [获取单一作品详情/Fetch single post detail](https://docs.tikhub.io/360042776e0.md): # [中文]
+- Sora2-API [获取作品的 Remix 列表/Fetch post remix list](https://docs.tikhub.io/372516125e0.md): # [中文]
+- Sora2-API [获取无水印视频下载信息/Fetch none watermark video download info](https://docs.tikhub.io/360042777e0.md): # [中文]
+- Sora2-API [获取作品一级评论/Fetch post comments](https://docs.tikhub.io/360042778e0.md): # [中文]
+- Sora2-API [获取评论的回复/Fetch comment replies](https://docs.tikhub.io/360042779e0.md): # [中文]
+- Sora2-API [获取用户信息档案/Fetch user profile](https://docs.tikhub.io/360042780e0.md): # [中文]
+- Sora2-API [获取用户发布的帖子列表/Fetch user posts](https://docs.tikhub.io/360042781e0.md): # [中文]
+- Sora2-API [获取 Cameo 出镜秀达人排行榜/Fetch Cameo leaderboard](https://docs.tikhub.io/372516126e0.md): # [中文]
+- Sora2-API [获取用户Cameo出镜秀列表/Fetch user cameo appearances](https://docs.tikhub.io/360042782e0.md): # [中文]
+- Sora2-API [获取用户粉丝列表/Fetch user followers](https://docs.tikhub.io/360042783e0.md): # [中文]
+- Sora2-API [获取用户关注列表/Fetch user following](https://docs.tikhub.io/360042784e0.md): # [中文]
+- Sora2-API [获取Feed流(热门/推荐视频)/Fetch feed](https://docs.tikhub.io/360042785e0.md): # [中文]
+- Sora2-API [搜索用户/Search users](https://docs.tikhub.io/360042786e0.md): # [中文]
+- Sora2-API [上传图片获取media_id/Upload image to get media_id](https://docs.tikhub.io/360401426e0.md): # [中文]
+- Sora2-API [[已弃用/Deprecated] 文本/图片生成视频/Create video from text or image](https://docs.tikhub.io/360401427e0.md): # [中文]
+- Sora2-API [[已弃用/Deprecated] 查询任务状态/Get task status](https://docs.tikhub.io/360401428e0.md): # [中文]
+- Sora2-API [[已弃用/Deprecated] 获取任务生成的作品详情(无水印版本)/Get task-generated post detail (watermark-free)](https://docs.tikhub.io/360401429e0.md): # [中文]
+- TikTok-Web-API [获取单个作品数据/Get single video data](https://docs.tikhub.io/186826056e0.md): # [中文]
+- TikTok-Web-API [获取单个作品数据 V2/Get single video data V2](https://docs.tikhub.io/381439993e0.md): # [中文]
+- TikTok-Web-API [获取探索作品数据/Get explore video data](https://docs.tikhub.io/244469110e0.md): # [中文]
+- TikTok-Web-API [获取每日热门内容作品数据/Get daily trending video data](https://docs.tikhub.io/244469111e0.md): # [中文]
+- TikTok-Web-API [获取每日趋势搜索关键词/Get daily trending search words](https://docs.tikhub.io/357828842e0.md): # [中文]
+- TikTok-Web-API [获取用户的个人信息/Get user profile](https://docs.tikhub.io/186826057e0.md): # [中文]
+- TikTok-Web-API [获取用户的作品列表/Get user posts](https://docs.tikhub.io/186826058e0.md): # [中文]
+- TikTok-Web-API [获取用户的点赞列表/Get user likes](https://docs.tikhub.io/186826059e0.md): # [中文]
+- TikTok-Web-API [获取用户的收藏列表/Get user favorites](https://docs.tikhub.io/186826060e0.md): # [中文]
+- TikTok-Web-API [获取用户的播放列表/Get user play list](https://docs.tikhub.io/186826061e0.md): # [中文]
+- TikTok-Web-API [获取用户的合辑列表/Get user mix list](https://docs.tikhub.io/186826062e0.md): # [中文]
+- TikTok-Web-API [获取作品的评论列表/Get video comments](https://docs.tikhub.io/186826063e0.md): # [中文]
+- TikTok-Web-API [获取作品的评论回复列表/Get video comment replies](https://docs.tikhub.io/186826064e0.md): # [中文]
+- TikTok-Web-API [获取用户的粉丝列表/Get user followers](https://docs.tikhub.io/186826065e0.md): # [中文]
+- TikTok-Web-API [获取用户的关注列表/Get user followings](https://docs.tikhub.io/186826066e0.md): # [中文]
+- TikTok-Web-API [获取用户的直播详情/Get user live details](https://docs.tikhub.io/311485636e0.md): # [中文]
+- TikTok-Web-API [获取综合搜索列表/Get general search list](https://docs.tikhub.io/186826067e0.md): # [中文]
+- TikTok-Web-API [搜索关键字推荐/Search keyword suggest](https://docs.tikhub.io/186826068e0.md): # [中文]
+- TikTok-Web-API [搜索用户/Search user](https://docs.tikhub.io/186826069e0.md): # [中文]
+- TikTok-Web-API [搜索视频/Search video](https://docs.tikhub.io/186826070e0.md): # [中文]
+- TikTok-Web-API [搜索直播/Search live](https://docs.tikhub.io/186826071e0.md): # [中文]
+- TikTok-Web-API [搜索照片/Search photo](https://docs.tikhub.io/386247127e0.md): # [中文]
+- TikTok-Web-API [Tag详情/Tag Detail](https://docs.tikhub.io/186826072e0.md): # [中文]
+- TikTok-Web-API [Tag作品/Tag Post](https://docs.tikhub.io/186826073e0.md): # [中文]
+- TikTok-Web-API [首页推荐作品/Home Feed](https://docs.tikhub.io/266367452e0.md): # [中文]
+- TikTok-Web-API [生成真实msToken/Generate real msToken](https://docs.tikhub.io/186826074e0.md): # [中文]
+- TikTok-Web-API [生成ttwid/Generate ttwid](https://docs.tikhub.io/186826075e0.md): # [中文]
+- TikTok-Web-API [生成 XBogus/Generate XBogus](https://docs.tikhub.io/186826076e0.md): # [中文]
+- TikTok-Web-API [生成 XGnarly /Generate XGnarly](https://docs.tikhub.io/342751101e0.md): # [中文]
+- TikTok-Web-API [生成 XGnarly 和 XBogus /Generate XGnarly and XBogus](https://docs.tikhub.io/342751102e0.md): # [中文]
+- TikTok-Web-API [提取用户user_id/Extract user user_id](https://docs.tikhub.io/299617969e0.md): # [中文]
+- TikTok-Web-API [提取用户sec_user_id/Extract user sec_user_id](https://docs.tikhub.io/186826077e0.md): # [中文]
+- TikTok-Web-API [提取列表用户sec_user_id/Extract list user sec_user_id](https://docs.tikhub.io/186826078e0.md): # [中文]
+- TikTok-Web-API [提取单个作品id/Extract single video id](https://docs.tikhub.io/186826079e0.md): # [中文]
+- TikTok-Web-API [提取列表作品id/Extract list video id](https://docs.tikhub.io/186826080e0.md): # [中文]
+- TikTok-Web-API [获取用户unique_id/Get user unique_id](https://docs.tikhub.io/186826081e0.md): # [中文]
+- TikTok-Web-API [获取列表unique_id/Get list unique_id](https://docs.tikhub.io/186826082e0.md): # [中文]
+- TikTok-Web-API [提取直播间弹幕/Extract live room danmaku](https://docs.tikhub.io/198386127e0.md): # [中文]
+- TikTok-Web-API [TikTok直播间弹幕参数获取/tiktok live room danmaku parameters](https://docs.tikhub.io/307012437e0.md): # [中文]
+- TikTok-Web-API [根据直播间链接提取直播间ID/Extract live room ID from live room link](https://docs.tikhub.io/198386128e0.md): # [中文]
+- TikTok-Web-API [直播间开播状态检测/Live room start status check](https://docs.tikhub.io/200729324e0.md): # [中文]
+- TikTok-Web-API [批量直播间开播状态检测/Batch live room start status check](https://docs.tikhub.io/327216949e0.md): # [中文]
+- TikTok-Web-API [通过直播链接获取直播间信息/Get live room information via live link](https://docs.tikhub.io/200729325e0.md): # [中文]
+- TikTok-Web-API [获取直播间首页推荐列表/Get live room homepage recommendation list](https://docs.tikhub.io/205930106e0.md): # [中文]
+- TikTok-Web-API [获取直播间礼物列表/Get live room gift list](https://docs.tikhub.io/336785784e0.md): # [中文]
+- TikTok-Web-API [获取SSO登录二维码/Get SSO login QR code](https://docs.tikhub.io/272028127e0.md): # [中文]
+- TikTok-Web-API [获取SSO登录状态/Get SSO login status](https://docs.tikhub.io/272028128e0.md): # [中文]
+- TikTok-Web-API [认证SSO登录/Authenticate SSO login](https://docs.tikhub.io/272028129e0.md): # [中文]
+- TikTok-Web-API [生成哈希ID/Generate hashed ID](https://docs.tikhub.io/321103379e0.md): # [中文]
+- TikTok-Web-API [根据Gift ID查询礼物名称/Get gift name by gift ID](https://docs.tikhub.io/336894166e0.md): 根据TikTok的Gift ID查询对应的礼物名称 | Get gift name by TikTok gift ID
+- TikTok-Web-API [批量查询Gift ID对应的礼物名称($0.025/次,建议50个)/Batch get gift names by gift IDs ($0.025/call, suggest 50)](https://docs.tikhub.io/336894167e0.md): 批量查询多个TikTok Gift ID对应的礼物名称。计费:$0.025每次调用。建议每次查询50个ID以获得最佳性价比,超过50个时自动处理前50个 | Batch get gift names by multiple TikTok gift IDs. Pricing: $0.025 per call. Recommend querying 50 IDs at once for best value, auto-process first 50 IDs if more than 50
+- TikTok-Web-API [获取游客 Cookie/Get the guest Cookie](https://docs.tikhub.io/357828843e0.md): # [中文]
+- TikTok-Web-API [设备注册/Register device for TikTok Web](https://docs.tikhub.io/357828844e0.md): # [中文]
+- TikTok-Web-API [获取用户的转发作品列表/Get user reposts](https://docs.tikhub.io/401621151e0.md): # [中文]
+- TikTok-Web-API [加密strData/Encrypt strData](https://docs.tikhub.io/389446273e0.md): # [中文]
+- TikTok-Web-API [解密strData/Decrypt strData](https://docs.tikhub.io/389446274e0.md): # [中文]
+- TikTok-Web-API [生成浏览器指纹/Generate browser fingerprint](https://docs.tikhub.io/389315201e0.md): # [中文]
+- TikTok-Web-API [生成web_id/Generate web_id](https://docs.tikhub.io/389446275e0.md): # [中文]
+- TikTok-Web-API [生成 X-Mssdk-Info /Generate X-Mssdk-Info](https://docs.tikhub.io/431340156e0.md): # [中文]
+- TikTok-Web-API [生成TikTok WSS X-Bogus签名/Generate TikTok WSS X-Bogus signature](https://docs.tikhub.io/439982433e0.md): # [中文]
+- TikTok-App-V3-API [获取单个作品数据/Get single video data](https://docs.tikhub.io/186826104e0.md): # [中文]
+- TikTok-App-V3-API [获取单个作品数据 V2/Get single video data V2](https://docs.tikhub.io/258124427e0.md): # [中文]
+- TikTok-App-V3-API [获取单个作品数据 V3(支持国家参数)/Get single video data V3 (support country parameter)](https://docs.tikhub.io/368648386e0.md): # [中文]
+- TikTok-App-V3-API [批量获取视频信息/Batch Get Video Information](https://docs.tikhub.io/190419367e0.md): # [中文]
+- TikTok-App-V3-API [批量获取视频信息 V2/Batch Get Video Information V2](https://docs.tikhub.io/258124428e0.md): # [中文]
+- TikTok-App-V3-API [根据分享链接获取单个作品数据/Get single video data by sharing link](https://docs.tikhub.io/186826105e0.md): # [中文]
+- TikTok-App-V3-API [根据分享链接获取单个作品数据/Get single video data by sharing link](https://docs.tikhub.io/402414076e0.md): # [中文]
+- TikTok-App-V3-API [使用用户名获取用户 user_id 和 sec_user_id/Get user_id and sec_user_id by Username](https://docs.tikhub.io/365265786e0.md): # [中文]
+- TikTok-App-V3-API [获取指定用户的信息/Get information of specified user](https://docs.tikhub.io/186826106e0.md): # [中文]
+- TikTok-App-V3-API [获取指定 Webcast 用户的信息/Get information of specified Webcast user](https://docs.tikhub.io/360902735e0.md): # [中文]
+- TikTok-App-V3-API [通过用户名获取用户账号国家地区/Get user account country by username](https://docs.tikhub.io/363841506e0.md): # [中文]
+- TikTok-App-V3-API [获取类似用户推荐/Similar User Recommendations](https://docs.tikhub.io/370931619e0.md): # [中文]
+- TikTok-App-V3-API [获取用户转发的作品数据/Get user repost video data](https://docs.tikhub.io/186826107e0.md): # [中文]
+- TikTok-App-V3-API [获取用户主页作品数据 V1/Get user homepage video data V1](https://docs.tikhub.io/186826108e0.md): # [中文]
+- TikTok-App-V3-API [获取用户主页作品数据 V2/Get user homepage video data V2](https://docs.tikhub.io/362985063e0.md): # [中文]
+- TikTok-App-V3-API [获取用户主页作品数据 V3(精简数据-更快速)/Get user homepage video data V3 (simplified data - faster)](https://docs.tikhub.io/362985064e0.md): # [中文]
+- TikTok-App-V3-API [获取用户喜欢作品数据/Get user like video data](https://docs.tikhub.io/186826109e0.md): # [中文]
+- TikTok-App-V3-API [获取单个视频评论数据/Get single video comments data](https://docs.tikhub.io/186826110e0.md): # [中文]
+- TikTok-App-V3-API [获取指定视频的评论回复数据/Get comment replies data of specified video](https://docs.tikhub.io/186826111e0.md): # [中文]
+- TikTok-App-V3-API [获取指定关键词的综合搜索结果/Get comprehensive search results of specified keywords](https://docs.tikhub.io/186826112e0.md): # [中文]
+- TikTok-App-V3-API [获取指定关键词的视频搜索结果/Get video search results of specified keywords](https://docs.tikhub.io/186826113e0.md): # [中文]
+- TikTok-App-V3-API [获取指定关键词的用户搜索结果/Get user search results of specified keywords](https://docs.tikhub.io/186826114e0.md): # [中文]
+- TikTok-App-V3-API [获取指定关键词的音乐搜索结果/Get music search results of specified keywords](https://docs.tikhub.io/186826115e0.md): # [中文]
+- TikTok-App-V3-API [获取指定关键词的话题搜索结果/Get hashtag search results of specified keywords](https://docs.tikhub.io/186826116e0.md): # [中文]
+- TikTok-App-V3-API [获取指定关键词的直播搜索结果/Get live search results of specified keywords](https://docs.tikhub.io/186826117e0.md): # [中文]
+- TikTok-App-V3-API [获取地点搜索结果/Get location search results](https://docs.tikhub.io/186826128e0.md): # [中文]
+- TikTok-App-V3-API [获取指定音乐的详情数据/Get details of specified music](https://docs.tikhub.io/186826118e0.md): # [中文]
+- TikTok-App-V3-API [获取指定音乐的视频列表数据/Get video list of specified music](https://docs.tikhub.io/186826119e0.md): # [中文]
+- TikTok-App-V3-API [获取指定话题的详情数据/Get details of specified hashtag](https://docs.tikhub.io/186826120e0.md): # [中文]
+- TikTok-App-V3-API [获取指定话题的作品数据/Get video list of specified hashtag](https://docs.tikhub.io/186826121e0.md): # [中文]
+- TikTok-App-V3-API [创作者搜索洞察/Creator Search Insights](https://docs.tikhub.io/390630292e0.md): # [中文]
+- TikTok-App-V3-API [创作者搜索洞察趋势/Creator Search Insights Trend](https://docs.tikhub.io/390630294e0.md): # [中文]
+- TikTok-App-V3-API [创作者搜索洞察详情/Creator Search Insights Detail](https://docs.tikhub.io/390630293e0.md): # [中文]
+- TikTok-App-V3-API [创作者搜索洞察相关视频/Creator Search Insights Videos](https://docs.tikhub.io/390630295e0.md): # [中文]
+- TikTok-App-V3-API [音乐排行榜/Music Chart List](https://docs.tikhub.io/390630296e0.md): # [中文]
+- TikTok-App-V3-API [获取指定用户的粉丝列表数据/Get follower list of specified user](https://docs.tikhub.io/186826122e0.md): # [中文]
+- TikTok-App-V3-API [搜索粉丝列表/Search follower list](https://docs.tikhub.io/390630297e0.md): # [中文]
+- TikTok-App-V3-API [获取指定用户的关注列表数据/Get following list of specified user](https://docs.tikhub.io/186826123e0.md): # [中文]
+- TikTok-App-V3-API [搜索关注列表/Search following list](https://docs.tikhub.io/390630298e0.md): # [中文]
+- TikTok-App-V3-API [获取指定直播间的数据/Get data of specified live room](https://docs.tikhub.io/188893726e0.md): # [中文]
+- TikTok-App-V3-API [获取直播间排行榜数据/Get live room ranking list](https://docs.tikhub.io/186826124e0.md): # [中文]
+- TikTok-App-V3-API [检测直播间是否在线/Check if live room is online](https://docs.tikhub.io/186826125e0.md): # [中文]
+- TikTok-App-V3-API [批量检测直播间是否在线/Batch check if live rooms are online](https://docs.tikhub.io/286229694e0.md): # [中文]
+- TikTok-App-V3-API [获取商品搜索结果/Get product search results](https://docs.tikhub.io/186826129e0.md): # [中文]
+- TikTok-App-V3-API [获取带货创作者信息/Get shopping creator information](https://docs.tikhub.io/246997244e0.md): # [中文]
+- TikTok-App-V3-API [获取创作者橱窗商品列表/Get creator showcase product list](https://docs.tikhub.io/246997245e0.md): # [中文]
+- TikTok-App-V3-API [通过分享链接获取店铺ID/Get Shop ID by Share Link](https://docs.tikhub.io/260718666e0.md): # [中文]
+- TikTok-App-V3-API [通过分享链接获取商品ID/Get Product ID by Share Link](https://docs.tikhub.io/260718667e0.md): # [中文]
+- TikTok-App-V3-API [获取商品详情数据(即将弃用,使用 fetch_product_detail_v2 代替)/Get product detail data (will be deprecated, use fetch_product_detail_v2 instead)](https://docs.tikhub.io/186826130e0.md): # [中文]
+- TikTok-App-V3-API [获取商品详情数据V2/Get product detail data V2](https://docs.tikhub.io/246997246e0.md): # [中文]
+- TikTok-App-V3-API [获取商品详情数据V3 / Get product detail data V3](https://docs.tikhub.io/260718668e0.md): # [中文]
+- TikTok-App-V3-API [获取商品详情数据V4 / Get product detail data V4](https://docs.tikhub.io/337017955e0.md): # [中文]
+- TikTok-App-V3-API [获取商品评价数据/Get product review data](https://docs.tikhub.io/186826131e0.md): # [中文]
+- TikTok-App-V3-API [获取商家主页Page列表数据/Get shop home page list data](https://docs.tikhub.io/186826132e0.md): # [中文]
+- TikTok-App-V3-API [获取商家主页数据/Get shop home page data](https://docs.tikhub.io/186826133e0.md): # [中文]
+- TikTok-App-V3-API [获取商家商品推荐数据/Get shop product recommend data](https://docs.tikhub.io/186826134e0.md): # [中文]
+- TikTok-App-V3-API [获取商家商品列表数据/Get shop product list data](https://docs.tikhub.io/186826135e0.md): # [中文]
+- TikTok-App-V3-API [获取商家商品列表数据 V2/Get shop product list data V2](https://docs.tikhub.io/260532642e0.md): # [中文]
+- TikTok-App-V3-API [获取商家信息数据/Get shop information data](https://docs.tikhub.io/186826136e0.md): # [中文]
+- TikTok-App-V3-API [获取商家产品分类数据/Get shop product category data](https://docs.tikhub.io/186826137e0.md): # [中文]
+- TikTok-App-V3-API [获取直播每日榜单数据/Get live daily rank data](https://docs.tikhub.io/186826138e0.md): # [中文]
+- TikTok-App-V3-API [获取用户音乐列表数据/Get user music list data](https://docs.tikhub.io/186826139e0.md): # [中文]
+- TikTok-App-V3-API [获取直播间商品列表数据/Get live room product list data](https://docs.tikhub.io/220126023e0.md): # [中文]
+- TikTok-App-V3-API [获取直播间商品列表数据 V2 /Get live room product list data V2](https://docs.tikhub.io/286326612e0.md): # [中文]
+- TikTok-App-V3-API [根据视频ID来增加作品的播放数/Increase the number of plays of the work according to the video ID](https://docs.tikhub.io/239915310e0.md): # [中文]
+- TikTok-App-V3-API [获取分享短链接/Get share short link](https://docs.tikhub.io/186826126e0.md): # [中文]
+- TikTok-App-V3-API [获取分享二维码/Get share QR code](https://docs.tikhub.io/186826127e0.md): # [中文]
+- TikTok-App-V3-API [生成TikTok分享链接,唤起TikTok APP,跳转指定作品详情页/Generate TikTok share link, call TikTok APP, and jump to the specified video details page](https://docs.tikhub.io/249826722e0.md): # [中文]
+- TikTok-App-V3-API [生成TikTok分享链接,唤起TikTok APP,跳转指定用户主页/Generate TikTok share link, call TikTok APP, and jump to the specified user profile](https://docs.tikhub.io/249826723e0.md): # [中文]
+- TikTok-App-V3-API [生成TikTok分享链接,唤起TikTok APP,跳转指定关键词搜索结果/Generate TikTok share link, call TikTok APP, and jump to the specified keyword search result](https://docs.tikhub.io/249826724e0.md): # [中文]
+- TikTok-App-V3-API [生成TikTok分享链接,唤起TikTok APP,给指定用户发送私信/Generate TikTok share link, call TikTok APP, and send private messages to specified users](https://docs.tikhub.io/249826725e0.md): # [中文]
+- TikTok-App-V3-API [获取主页视频推荐数据/Get home feed(recommend) video data](https://docs.tikhub.io/265879738e0.md): # [中文]
+- TikTok-App-V3-API [获取内容翻译数据/Get content translation data](https://docs.tikhub.io/186826140e0.md): # [中文]
+- TikTok-App-V3-API [TikTok APP加密算法/TikTok APP encryption algorithm](https://docs.tikhub.io/224648349e0.md): # [中文]
+- TikTok-App-V3-API [加密或解密 TikTok APP 登录请求体/Encrypt or Decrypt TikTok APP login request body](https://docs.tikhub.io/239915311e0.md): # [中文]
+- TikTok-Creator-API [获取创作者账号健康状态/Get Creator Account Health Status](https://docs.tikhub.io/289437011e0.md): # [中文]
+- TikTok-Creator-API [获取创作者账号违规记录列表/Get Creator Account Violation Record List](https://docs.tikhub.io/289437012e0.md): # [中文]
+- TikTok-Creator-API [获取创作者账号概览/Get Creator Account Overview](https://docs.tikhub.io/289437013e0.md): # [中文]
+- TikTok-Creator-API [获取创作者直播概览/Get Creator Live Overview](https://docs.tikhub.io/289437014e0.md): # [中文]
+- TikTok-Creator-API [获取创作者视频概览/Get Creator Video Overview](https://docs.tikhub.io/289437015e0.md): # [中文]
+- TikTok-Creator-API [获取创作者视频列表分析/Get Creator Video List Analytics](https://docs.tikhub.io/289437016e0.md): # [中文]
+- TikTok-Creator-API [获取创作者商品列表分析/Get Creator Product List Analytics](https://docs.tikhub.io/289437017e0.md): # [中文]
+- TikTok-Creator-API [获取创作者账号信息/Get Creator Account Info](https://docs.tikhub.io/291555426e0.md): # [中文]
+- TikTok-Creator-API [获取橱窗商品列表/Get Showcase Product List](https://docs.tikhub.io/291555427e0.md): # [中文]
+- TikTok-Creator-API [获取视频关联商品列表/Get Video Associated Product List](https://docs.tikhub.io/291555428e0.md): # [中文]
+- TikTok-Creator-API [获取视频详细分段统计数据/Get Video Detailed Statistics](https://docs.tikhub.io/291555429e0.md): # [中文]
+- TikTok-Creator-API [获取视频与商品关联统计数据/Get Video-Product Association Statistics](https://docs.tikhub.io/291555430e0.md): # [中文]
+- TikTok-Creator-API [获取同款商品关联视频/Get Product Related Videos](https://docs.tikhub.io/291555431e0.md): # [中文]
+- TikTok-Creator-API [获取视频受众分析数据/Get Video Audience Analysis Data](https://docs.tikhub.io/291555432e0.md): # [中文]
+- TikTok-Analytics-API [获取作品的统计数据/Get video metrics](https://docs.tikhub.io/298317626e0.md): # [中文]
+- TikTok-Analytics-API [检测视频虚假流量分析/Detect fake views in video](https://docs.tikhub.io/298317627e0.md): # [中文]
+- TikTok-Analytics-API [获取视频评论关键词分析/Get comment keywords analysis](https://docs.tikhub.io/298317628e0.md): # [中文]
+- TikTok-Analytics-API [获取创作者信息和里程碑数据/Get creator info and milestones](https://docs.tikhub.io/298317629e0.md): # [中文]
+- TikTok-Ads-API [获取单个广告详情/Get single ad detail](https://docs.tikhub.io/308858137e0.md): # [中文]
+- TikTok-Ads-API [搜索广告/Search ads](https://docs.tikhub.io/308858138e0.md): # [中文]
+- TikTok-Ads-API [获取关键词洞察数据/Get keyword insights data](https://docs.tikhub.io/308858139e0.md): # [中文]
+- TikTok-Ads-API [获取热门产品列表/Get top products list](https://docs.tikhub.io/308858140e0.md): # [中文]
+- TikTok-Ads-API [获取热门标签列表/Get popular hashtags list](https://docs.tikhub.io/308858141e0.md): # [中文]
+- TikTok-Ads-API [获取热门音乐排行榜/Get popular sound rankings](https://docs.tikhub.io/308858142e0.md): # [中文]
+- TikTok-Ads-API [获取关键词列表/Get keyword list](https://docs.tikhub.io/308858143e0.md): # [中文]
+- TikTok-Ads-API [获取热门广告聚光灯/Get top ads spotlight](https://docs.tikhub.io/308858144e0.md): # [中文]
+- TikTok-Ads-API [获取广告关键帧分析/Get ad keyframe analysis](https://docs.tikhub.io/308858145e0.md): # [中文]
+- TikTok-Ads-API [获取广告百分位数据/Get ad percentile data](https://docs.tikhub.io/308858146e0.md): # [中文]
+- TikTok-Ads-API [获取广告互动分析/Get ad interactive analysis](https://docs.tikhub.io/308858147e0.md): # [中文]
+- TikTok-Ads-API [获取推荐广告/Get recommended ads](https://docs.tikhub.io/308858148e0.md): # [中文]
+- TikTok-Ads-API [获取查询建议/Get query suggestions](https://docs.tikhub.io/308858149e0.md): # [中文]
+- TikTok-Ads-API [获取关键词筛选器/Get keyword filters](https://docs.tikhub.io/308858150e0.md): # [中文]
+- TikTok-Ads-API [获取相关关键词/Get related keywords](https://docs.tikhub.io/308858151e0.md): # [中文]
+- TikTok-Ads-API [获取关键词详细信息/Get keyword details](https://docs.tikhub.io/308858152e0.md): # [中文]
+- TikTok-Ads-API [获取创意模式排行榜/Get creative pattern rankings](https://docs.tikhub.io/308858153e0.md): # [中文]
+- TikTok-Ads-API [获取产品筛选器/Get product filters](https://docs.tikhub.io/308858154e0.md): # [中文]
+- TikTok-Ads-API [获取产品指标数据/Get product metrics](https://docs.tikhub.io/308858155e0.md): # [中文]
+- TikTok-Ads-API [获取产品详细信息/Get product detail](https://docs.tikhub.io/308858156e0.md): # [中文]
+- TikTok-Ads-API [获取标签筛选器/Get hashtag filters](https://docs.tikhub.io/308858157e0.md): # [中文]
+- TikTok-Ads-API [获取标签创作者信息/Get hashtag creator info](https://docs.tikhub.io/308858158e0.md): # [中文]
+- TikTok-Ads-API [获取音乐筛选器/Get sound filters](https://docs.tikhub.io/308858159e0.md): # [中文]
+- TikTok-Ads-API [获取音乐详情/Get sound detail](https://docs.tikhub.io/308858160e0.md): # [中文]
+- TikTok-Ads-API [搜索音乐提示/Search sound hints](https://docs.tikhub.io/308858161e0.md): # [中文]
+- TikTok-Ads-API [搜索音乐/Search sounds](https://docs.tikhub.io/308858162e0.md): # [中文]
+- TikTok-Ads-API [获取音乐推荐/Get sound recommendations](https://docs.tikhub.io/308858163e0.md): # [中文]
+- TikTok-Ads-API [获取创作者筛选器/Get creator filters](https://docs.tikhub.io/308858164e0.md): # [中文]
+- TikTok-Ads-API [获取创作者列表/Get creator list](https://docs.tikhub.io/308858165e0.md): # [中文]
+- TikTok-Ads-API [搜索创作者/Search creators](https://docs.tikhub.io/308858166e0.md): # [中文]
+- TikTok-Ads-API [获取流行趋势视频/Get popular trend videos](https://docs.tikhub.io/308858167e0.md): # [中文]
+- TikTok-Shop-Web-API [获取商品详情V1(桌面端-数据完整)/Get product detail V1(Full data)](https://docs.tikhub.io/347819634e0.md): # [中文]
+- TikTok-Shop-Web-API [获取商品详情V2(移动端-数据少)/Get product detail V2 (Less Data)](https://docs.tikhub.io/347819635e0.md): # [中文]
+- TikTok-Shop-Web-API [获取商品详情V3(移动端-数据完整)/Get product detail V3 (Full Data)](https://docs.tikhub.io/348644013e0.md): # [中文]
+- TikTok-Shop-Web-API [获取商品评论V2/Get product reviews V2](https://docs.tikhub.io/374442928e0.md): # [中文]
+- TikTok-Shop-Web-API [获取商家商品列表V1/Get seller products list V1](https://docs.tikhub.io/347819636e0.md): # [中文]
+- TikTok-Shop-Web-API [获取商家商品列表V2(移动端)/Get seller products list V2 (Mobile)](https://docs.tikhub.io/347819637e0.md): # [中文]
+- TikTok-Shop-Web-API [获取搜索关键词建议V1/Get search keyword suggestions V1](https://docs.tikhub.io/347819638e0.md): # [中文]
+- TikTok-Shop-Web-API [获取搜索关键词建议V2(移动端)/Get search keyword suggestions V2 (Mobile)](https://docs.tikhub.io/347819639e0.md): # [中文]
+- TikTok-Shop-Web-API [搜索商品列表V1/Search products list V1](https://docs.tikhub.io/347819640e0.md): # [中文]
+- TikTok-Shop-Web-API [搜索商品列表V2(移动端)/Search products list V2 (Mobile)](https://docs.tikhub.io/347819641e0.md): # [中文]
+- TikTok-Shop-Web-API [获取商品分类列表/Get product category list](https://docs.tikhub.io/347819642e0.md): # [中文]
+- TikTok-Shop-Web-API [根据分类ID获取商品列表/Get products by category ID](https://docs.tikhub.io/347819643e0.md): # [中文]
+- TikTok-Shop-Web-API [获取热卖商品列表/Get hot selling products list](https://docs.tikhub.io/347819644e0.md): # [中文]
+- TikTok-Interaction-API [申请使用TikTok交互API权限(Scope)/Apply for TikTok Interaction API permission (Scope)](https://docs.tikhub.io/220126024e0.md): # [通知]
+- TikTok-Interaction-API [发送评论/Post comment](https://docs.tikhub.io/220126025e0.md): # [中文]
+- TikTok-Interaction-API [回复评论/Reply to comment](https://docs.tikhub.io/220126026e0.md): # [中文]
+- TikTok-Interaction-API [点赞/Like](https://docs.tikhub.io/220126027e0.md): # [中文]
+- TikTok-Interaction-API [关注/Follow](https://docs.tikhub.io/220126028e0.md): # [中文]
+- TikTok-Interaction-API [收藏/Collect](https://docs.tikhub.io/220126029e0.md): # [中文]
+- TikTok-Interaction-API [转发/Forward](https://docs.tikhub.io/220126030e0.md): # [中文]
+- Douyin-Web-API [获取单个作品数据/Get single video data](https://docs.tikhub.io/186826141e0.md): # [中文]
+- Douyin-Web-API [获取单个作品数据 V2/Get single video data V2](https://docs.tikhub.io/205930107e0.md): # [中文]
+- Douyin-Web-API [根据分享链接获取单个作品数据/Get single video data by sharing link](https://docs.tikhub.io/257556744e0.md): # [中文]
+- Douyin-Web-API [获取视频的最高画质播放链接/Get the highest quality play URL of the video](https://docs.tikhub.io/312096106e0.md): # [中文]
+- Douyin-Web-API [批量获取视频的最高画质播放链接/Batch get the highest quality play URL of videos](https://docs.tikhub.io/360401424e0.md): # [中文]
+- Douyin-Web-API [批量获取视频信息/Batch Get Video Information](https://docs.tikhub.io/244469112e0.md): # [中文]
+- Douyin-Web-API [获取单个作品视频弹幕数据/Get single video danmaku data](https://docs.tikhub.io/186826142e0.md): # [中文]
+- Douyin-Web-API [获取首页推荐数据/Get home feed data](https://docs.tikhub.io/193668712e0.md): # [中文]
+- Douyin-Web-API [获取相关作品推荐数据/Get related posts recommendation data](https://docs.tikhub.io/202773358e0.md): # [中文]
+- Douyin-Web-API [获取用户主页作品数据/Get user homepage video data](https://docs.tikhub.io/186826143e0.md): # [中文]
+- Douyin-Web-API [获取用户喜欢作品数据/Get user like video data](https://docs.tikhub.io/274959810e0.md): # [中文]
+- Douyin-Web-API [获取用户收藏作品数据/Get user collection video data](https://docs.tikhub.io/274959811e0.md): # [中文]
+- Douyin-Web-API [获取用户收藏夹/Get user collection](https://docs.tikhub.io/271495925e0.md): # [中文]
+- Douyin-Web-API [获取用户收藏夹数据/Get user collection data](https://docs.tikhub.io/267295657e0.md): # [中文]
+- Douyin-Web-API [获取用户合辑作品数据/Get user mix video data](https://docs.tikhub.io/186826146e0.md): # [中文]
+- Douyin-Web-API [获取用户直播流数据/Get user live video data](https://docs.tikhub.io/186826147e0.md): # [中文]
+- Douyin-Web-API [通过sec_uid获取指定用户的直播流数据/Get live video data of specified user by sec_uid](https://docs.tikhub.io/257556745e0.md): # [中文]
+- Douyin-Web-API [通过room_id获取指定用户的直播流数据 V1/Get live video data of specified user by room_id V1](https://docs.tikhub.io/186826148e0.md): # [中文]
+- Douyin-Web-API [通过room_id获取指定用户的直播流数据 V2/Gets the live stream data of the specified user by room_id V2](https://docs.tikhub.io/257556746e0.md): # [中文]
+- Douyin-Web-API [获取直播间送礼用户排行榜/Get live room gift user ranking](https://docs.tikhub.io/186826149e0.md): # [中文]
+- Douyin-Web-API [抖音直播间商品信息/Douyin live room product information](https://docs.tikhub.io/186826150e0.md): # [中文]
+- Douyin-Web-API [获取商品详情/Get product detail](https://docs.tikhub.io/357828845e0.md): # [中文]
+- Douyin-Web-API [获取商品SKU列表/Get product SKU list](https://docs.tikhub.io/357828846e0.md): # [中文]
+- Douyin-Web-API [获取商品优惠券信息/Get product coupon information](https://docs.tikhub.io/357828847e0.md): # [中文]
+- Douyin-Web-API [获取商品评价评分/Get product review score](https://docs.tikhub.io/357828848e0.md): # [中文]
+- Douyin-Web-API [获取商品评价列表/Get product review list](https://docs.tikhub.io/357828849e0.md): # [中文]
+- Douyin-Web-API [使用UID获取用户信息/Get user information by UID](https://docs.tikhub.io/244469113e0.md): # [中文]
+- Douyin-Web-API [获取批量用户信息(最多10个)/Get batch user profile (up to 10)](https://docs.tikhub.io/387693174e0.md): # [中文]
+- Douyin-Web-API [获取批量用户信息(最多50个)/Get batch user profile (up to 50)](https://docs.tikhub.io/387693175e0.md): # [中文]
+- Douyin-Web-API [使用UID获取用户开播信息/Get user live information by UID](https://docs.tikhub.io/257556747e0.md): # [中文]
+- Douyin-Web-API [使用Short ID获取用户信息/Get user information by Short ID](https://docs.tikhub.io/244469114e0.md): # [中文]
+- Douyin-Web-API [生成短链接](https://docs.tikhub.io/380752347e0.md): 
+- Douyin-Web-API [使用sec_user_id获取指定用户的信息/Get information of specified user by sec_user_id](https://docs.tikhub.io/186826151e0.md): # [中文]
+- Douyin-Web-API [使用unique_id(抖音号)获取指定用户的信息/Get information of specified user by unique_id](https://docs.tikhub.io/232379586e0.md): # [中文]
+- Douyin-Web-API [加密用户uid到sec_user_id/Encrypt user uid to sec_user_id](https://docs.tikhub.io/293991352e0.md): # [中文]
+- Douyin-Web-API [根据抖音uid获取指定用户的信息/Get information of specified user by uid](https://docs.tikhub.io/244469115e0.md): # [中文]
+- Douyin-Web-API [根据sec_user_id获取指定用户的信息(性别,年龄,直播等级、牌子)/Get information of specified user by sec_user_id (gender, age, live level、brand)](https://docs.tikhub.io/268822925e0.md): # [中文]
+- Douyin-Web-API [获取用户粉丝列表/Get user fans list](https://docs.tikhub.io/198386129e0.md): # [中文]
+- Douyin-Web-API [获取用户关注列表/Get user following list](https://docs.tikhub.io/198386130e0.md): # [中文]
+- Douyin-Web-API [获取单个视频评论数据/Get single video comments data](https://docs.tikhub.io/186826152e0.md): # [中文]
+- Douyin-Web-API [获取指定视频的评论回复数据/Get comment replies data of specified video](https://docs.tikhub.io/186826153e0.md): # [中文]
+- Douyin-Web-API [[已弃用/Deprecated] 获取指定关键词的综合搜索结果/Get comprehensive search results of specified keywords](https://docs.tikhub.io/186826154e0.md): # [中文]
+- Douyin-Web-API [[已弃用/Deprecated] 获取指定关键词的视频搜索结果/Get video search results of specified keywords](https://docs.tikhub.io/186826155e0.md): # [中文]
+- Douyin-Web-API [获取指定关键词的视频搜索结果 V2 (废弃,替代接口请参考下方文档)/Get video search results of specified keywords V2 (Deprecated, please refer to the following document for replacement interface)](https://docs.tikhub.io/215563108e0.md): # [中文]
+- Douyin-Web-API [获取指定关键词的用户搜索结果(废弃,替代接口请参考下方文档)/Get user search results of specified keywords (deprecated, please refer to the following document for replacement interface)](https://docs.tikhub.io/186826156e0.md): # [中文]
+- Douyin-Web-API [获取指定关键词的用户搜索结果 V2 (已弃用,替代接口请参考下方文档)/Get user search results of specified keywords V2 (deprecated, please refer to the following document for replacement interface)](https://docs.tikhub.io/215563109e0.md): # [中文]
+- Douyin-Web-API [获取指定关键词的用户搜索结果 V3 (已弃用,替代接口请参考下方文档)/Get user search results of specified keywords V3 (deprecated, please refer to the following document for replacement interface)](https://docs.tikhub.io/229474732e0.md): # [中文]
+- Douyin-Web-API [[已弃用/Deprecated] 获取指定关键词的直播搜索结果/Get live search results of specified keywords](https://docs.tikhub.io/186826157e0.md): # [中文]
+- Douyin-Web-API [[已弃用/Deprecated] 搜索话题/Search Challenge](https://docs.tikhub.io/255542733e0.md): # [中文]
+- Douyin-Web-API [话题作品/Challenge Posts](https://docs.tikhub.io/255867970e0.md): # [中文]
+- Douyin-Web-API [获取抖音热榜数据/Get Douyin hot search results](https://docs.tikhub.io/186826158e0.md): # [中文]
+- Douyin-Web-API [抖音视频频道数据/Douyin video channel data](https://docs.tikhub.io/186826159e0.md): # [中文]
+- Douyin-Web-API [获取抖音Web的游客Cookie/Get the guest Cookie of Douyin Web](https://docs.tikhub.io/186826160e0.md): # [中文]
+- Douyin-Web-API [生成真实msToken/Generate real msToken](https://docs.tikhub.io/186826161e0.md): # [中文]
+- Douyin-Web-API [生成ttwid/Generate ttwid](https://docs.tikhub.io/186826162e0.md): # [中文]
+- Douyin-Web-API [查询抖音用户基本信息/Query Douyin user basic information](https://docs.tikhub.io/291633602e0.md): # [中文]
+- Douyin-Web-API [生成verify_fp/Generate verify_fp](https://docs.tikhub.io/186826163e0.md): # [中文]
+- Douyin-Web-API [生成s_v_web_id/Generate s_v_web_id](https://docs.tikhub.io/186826164e0.md): # [中文]
+- Douyin-Web-API [生成弹幕xb签名/Generate barrage xb signature](https://docs.tikhub.io/291633603e0.md): # [中文]
+- Douyin-Web-API [使用接口网址生成X-Bogus参数/Generate X-Bogus parameter using API URL](https://docs.tikhub.io/186826165e0.md): # [中文]
+- Douyin-Web-API [使用接口网址生成A-Bogus参数/Generate A-Bogus parameter using API URL](https://docs.tikhub.io/186826166e0.md): # [中文]
+- Douyin-Web-API [提取单个用户id/Extract single user id](https://docs.tikhub.io/186826167e0.md): # [中文]
+- Douyin-Web-API [提取列表用户id/Extract list user id](https://docs.tikhub.io/186826168e0.md): # [中文]
+- Douyin-Web-API [提取单个作品id/Extract single video id](https://docs.tikhub.io/186826169e0.md): # [中文]
+- Douyin-Web-API [提取列表作品id/Extract list video id](https://docs.tikhub.io/186826170e0.md): # [中文]
+- Douyin-Web-API [提取直播间号/Extract webcast id](https://docs.tikhub.io/186826171e0.md): # [中文]
+- Douyin-Web-API [提取列表直播间号/Extract list webcast id](https://docs.tikhub.io/186826172e0.md): # [中文]
+- Douyin-Web-API [直播间号转房间号/Webcast id to room id](https://docs.tikhub.io/244469116e0.md): # [中文]
+- Douyin-Web-API [提取直播间弹幕/Extract live room danmaku](https://docs.tikhub.io/198386131e0.md): # [中文]
+- Douyin-Web-API [抖音直播间弹幕参数获取/Douyin live room danmaku parameters](https://docs.tikhub.io/291633604e0.md): # [中文]
+- Douyin-Web-API [短剧作品/Series Video](https://docs.tikhub.io/239915312e0.md): # [中文]
+- Douyin-Web-API [知识作品推荐/Knowledge Video](https://docs.tikhub.io/239915313e0.md): # [中文]
+- Douyin-Web-API [游戏作品推荐/Game Video](https://docs.tikhub.io/239915314e0.md): # [中文]
+- Douyin-Web-API [二次元作品推荐/Anime Video](https://docs.tikhub.io/239915315e0.md): # [中文]
+- Douyin-Web-API [音乐作品推荐/Music Video](https://docs.tikhub.io/239915316e0.md): # [中文]
+- Douyin-Web-API [美食作品推荐/Food Video](https://docs.tikhub.io/239915317e0.md): # [中文]
+- Douyin-App-V3-API [获取单个作品数据/Get single video data](https://docs.tikhub.io/186826219e0.md): # [中文]
+- Douyin-App-V3-API [获取单个作品数据 V2/Get single video data V2](https://docs.tikhub.io/232379587e0.md): # [中文]
+- Douyin-App-V3-API [获取单个作品数据 V3 (无版权限制)/Get single video data V3 (No copyright restrictions)](https://docs.tikhub.io/406098636e0.md): # [中文]
+- Douyin-App-V3-API [根据分享口令获取分享信息/Get share info by share code](https://docs.tikhub.io/406098637e0.md): # [中文]
+- Douyin-App-V3-API [批量获取视频信息 V1/Batch Get Video Information V1](https://docs.tikhub.io/190419368e0.md): # [中文]
+- Douyin-App-V3-API [批量获取视频信息 V2/Batch Get Video Information V2](https://docs.tikhub.io/339033805e0.md): # [中文]
+- Douyin-App-V3-API [根据分享链接获取单个作品数据/Get single video data by sharing link](https://docs.tikhub.io/186826220e0.md): # [中文]
+- Douyin-App-V3-API [获取视频的最高画质播放链接/Get the highest quality play URL of the video](https://docs.tikhub.io/312096107e0.md): # [中文]
+- Douyin-App-V3-API [批量获取视频的最高画质播放链接/Batch get the highest quality play URL of videos](https://docs.tikhub.io/360401425e0.md): # [中文]
+- Douyin-App-V3-API [根据视频ID获取作品的统计数据(点赞数、下载数、播放数、分享数)/Get the statistical data of the Post according to the video ID (like count, download count, play count, share count)](https://docs.tikhub.io/186826221e0.md): # [中文]
+- Douyin-App-V3-API [根据视频ID批量获取作品的统计数据(点赞数、下载数、播放数、分享数)/Get the statistical data of the Post according to the video ID (like count, download count, play count, share count)](https://docs.tikhub.io/256258480e0.md): # [中文]
+- Douyin-App-V3-API [根据视频ID来增加作品的播放数/Increase the number of plays of the work according to the video ID](https://docs.tikhub.io/236238202e0.md): # [中文]
+- Douyin-App-V3-API [获取指定用户的信息/Get information of specified user](https://docs.tikhub.io/186826222e0.md): # [中文]
+- Douyin-App-V3-API [获取用户粉丝列表/Get user fans list](https://docs.tikhub.io/198386132e0.md): # [中文]
+- Douyin-App-V3-API [获取用户关注列表 (弃用,使用 /api/v1/douyin/web/fetch_user_following_list 替代)/Get user following list (Deprecated, use /api/v1/douyin/web/fetch_user_following_list instead)](https://docs.tikhub.io/198386133e0.md): # [中文]
+- Douyin-App-V3-API [获取用户主页作品数据/Get user homepage video data](https://docs.tikhub.io/186826223e0.md): # [中文]
+- Douyin-App-V3-API [获取用户喜欢作品数据/Get user like video data](https://docs.tikhub.io/186826224e0.md): # [中文]
+- Douyin-App-V3-API [获取用户短剧合集列表/Get user series list](https://docs.tikhub.io/402130556e0.md): # [中文]
+- Douyin-App-V3-API [获取短剧详情信息/Get series detail](https://docs.tikhub.io/402130558e0.md): # [中文]
+- Douyin-App-V3-API [获取短剧视频列表/Get series video list](https://docs.tikhub.io/402130557e0.md): # [中文]
+- Douyin-App-V3-API [获取单个视频评论数据/Get single video comments data](https://docs.tikhub.io/186826225e0.md): # [中文]
+- Douyin-App-V3-API [获取指定视频的评论回复数据/Get comment replies data of specified video](https://docs.tikhub.io/186826226e0.md): # [中文]
+- Douyin-App-V3-API [获取抖音视频合集详情数据/Get Douyin video mix detail data](https://docs.tikhub.io/186826227e0.md): # [中文]
+- Douyin-App-V3-API [获取抖音视频合集作品列表数据/Get Douyin video mix post list data](https://docs.tikhub.io/186826228e0.md): # [中文]
+- Douyin-App-V3-API [获取指定关键词的综合搜索结果(弃用,替代接口见下方文档说明)/Get comprehensive search results of specified keywords (deprecated, see the documentation below for alternative interfaces)](https://docs.tikhub.io/186826229e0.md): # [中文]
+- Douyin-App-V3-API [获取指定关键词的视频搜索结果(弃用,替代接口见下方文档说明)/Get video search results of specified keywords (deprecated, see the documentation below for alternative interfaces)](https://docs.tikhub.io/186826230e0.md): # [中文]
+- Douyin-App-V3-API [获取指定关键词的视频搜索结果 V2 (弃用,替代接口见下方文档说明)/Get video search results of specified keywords V2 (deprecated, see the documentation below for alternative interfaces)](https://docs.tikhub.io/255867971e0.md): # [中文]
+- Douyin-App-V3-API [获取指定关键词的用户搜索结果(弃用,替代接口见下方文档说明)/Get user search results of specified keywords (deprecated, see the documentation below for alternative interfaces)](https://docs.tikhub.io/186826231e0.md): # [中文]
+- Douyin-App-V3-API [获取指定关键词的直播搜索结果(弃用,替代接口见下方文档说明)/Get live search results of specified keywords (deprecated, see the documentation below for alternative interfaces)](https://docs.tikhub.io/186826232e0.md): # [中文]
+- Douyin-App-V3-API [获取指定关键词的音乐搜索结果(弃用,替代接口见下方文档说明)/Get music search results of specified keywords (deprecated, see the documentation below for alternative interfaces)](https://docs.tikhub.io/186826233e0.md): # [中文]
+- Douyin-App-V3-API [获取指定关键词的话题搜索结果(弃用,替代接口见下方文档说明)/Get hashtag search results of specified keywords (deprecated, see the documentation below for alternative interfaces)](https://docs.tikhub.io/186826234e0.md): # [中文]
+- Douyin-App-V3-API [获取指定音乐的详情数据/Get details of specified music](https://docs.tikhub.io/186826235e0.md): # [中文]
+- Douyin-App-V3-API [获取指定音乐的视频列表数据/Get video list of specified music](https://docs.tikhub.io/186826236e0.md): # [中文]
+- Douyin-App-V3-API [获取指定话题的详情数据/Get details of specified hashtag](https://docs.tikhub.io/186826237e0.md): # [中文]
+- Douyin-App-V3-API [获取指定话题的作品数据/Get video list of specified hashtag](https://docs.tikhub.io/186826238e0.md): # [中文]
+- Douyin-App-V3-API [获取抖音热搜榜数据/Get Douyin hot search list data](https://docs.tikhub.io/186826239e0.md): # [中文]
+- Douyin-App-V3-API [获取抖音直播热搜榜数据/Get Douyin live hot search list data](https://docs.tikhub.io/186826240e0.md): # [中文]
+- Douyin-App-V3-API [获取抖音音乐榜数据/Get Douyin music hot search list data](https://docs.tikhub.io/186826241e0.md): # [中文]
+- Douyin-App-V3-API [获取抖音品牌热榜分类数据/Get Douyin brand hot search list data](https://docs.tikhub.io/186826242e0.md): # [中文]
+- Douyin-App-V3-API [获取抖音品牌热榜具体分类数据/Get Douyin brand hot search list detail data](https://docs.tikhub.io/186826243e0.md): # [中文]
+- Douyin-App-V3-API [生成抖音短链接/Generate Douyin short link](https://docs.tikhub.io/186826244e0.md): # [中文]
+- Douyin-App-V3-API [生成抖音视频分享二维码/Generate Douyin video share QR code](https://docs.tikhub.io/186826245e0.md): # [中文]
+- Douyin-App-V3-API [抖音APP注册设备/Douyin APP register device](https://docs.tikhub.io/217830495e0.md): # [中文]
+- Douyin-App-V3-API [生成抖音分享链接,唤起抖音APP,跳转指定作品详情页/Generate Douyin share link, call Douyin APP, and jump to the specified video details page](https://docs.tikhub.io/239915318e0.md): # [中文]
+- Douyin-App-V3-API [生成抖音分享链接,唤起抖音APP,跳转指定用户主页/Generate Douyin share link, call Douyin APP, and jump to the specified user profile](https://docs.tikhub.io/239915319e0.md): # [中文]
+- Douyin-App-V3-API [生成抖音分享链接,唤起抖音APP,跳转指定关键词搜索结果/Generate Douyin share link, call Douyin APP, and jump to the specified keyword search result](https://docs.tikhub.io/239915320e0.md): # [中文]
+- Douyin-App-V3-API [生成抖音分享链接,唤起抖音APP,给指定用户发送私信/Generate Douyin share link, call Douyin APP, and send private messages to specified users](https://docs.tikhub.io/239915321e0.md): # [中文]
+- Douyin-Search-API [获取综合搜索 V1/Fetch general search V1](https://docs.tikhub.io/370212773e0.md): # [中文]
+- Douyin-Search-API [获取综合搜索 V2/Fetch general search V2](https://docs.tikhub.io/370212774e0.md): # [中文]
+- Douyin-Search-API [获取搜索关键词推荐/Fetch search keyword suggestions](https://docs.tikhub.io/370212778e0.md): # [中文]
+- Douyin-Search-API [获取视频搜索 V1/Fetch video search V1](https://docs.tikhub.io/370212779e0.md): # [中文]
+- Douyin-Search-API [获取视频搜索 V2/Fetch video search V2](https://docs.tikhub.io/370212780e0.md): # [中文]
+- Douyin-Search-API [获取多重搜索/Fetch multi-type search](https://docs.tikhub.io/370212783e0.md): # [中文]
+- Douyin-Search-API [获取用户搜索/Fetch user search](https://docs.tikhub.io/370212784e0.md): # [中文]
+- Douyin-Search-API [获取用户搜索 V2/Fetch user search V2](https://docs.tikhub.io/370212785e0.md): # [中文]
+- Douyin-Search-API [获取图片搜索/Fetch image search](https://docs.tikhub.io/370212788e0.md): # [中文]
+- Douyin-Search-API [获取图文搜索 V3/Fetch image-text search V3](https://docs.tikhub.io/394624794e0.md): # [中文]
+- Douyin-Search-API [获取直播搜索 V1/Fetch live search V1](https://docs.tikhub.io/370212789e0.md): # [中文]
+- Douyin-Search-API [获取话题搜索 V1/Fetch hashtag search V1](https://docs.tikhub.io/370212793e0.md): # [中文]
+- Douyin-Search-API [获取话题搜索 V2/Fetch hashtag search V2](https://docs.tikhub.io/370212794e0.md): # [中文]
+- Douyin-Search-API [获取话题推荐搜索/Fetch hashtag suggestions](https://docs.tikhub.io/370212795e0.md): # [中文]
+- Douyin-Search-API [获取经验搜索/Fetch experience search](https://docs.tikhub.io/370212796e0.md): # [中文]
+- Douyin-Search-API [获取音乐搜索/Fetch music search](https://docs.tikhub.io/370212797e0.md): # [中文]
+- Douyin-Search-API [获取讨论搜索/Fetch discussion search](https://docs.tikhub.io/370212798e0.md): # [中文]
+- Douyin-Search-API [获取学校搜索/Fetch school search](https://docs.tikhub.io/370212799e0.md): # [中文]
+- Douyin-Search-API [获取图像识别搜索/Fetch vision search (image-based search)](https://docs.tikhub.io/394646131e0.md): # [中文]
+- Douyin-Xingtu-API [获取加密图片解析/Get Sign Image](https://docs.tikhub.io/416639772e0.md): # [中文]
+- Douyin-Xingtu-API [根据抖音用户ID获取游客星图kolid/Get XingTu kolid by Douyin User ID](https://docs.tikhub.io/249826726e0.md): # [中文]
+- Douyin-Xingtu-API [根据抖音sec_user_id获取游客星图kolid/Get XingTu kolid by Douyin sec_user_id](https://docs.tikhub.io/249826727e0.md): # [中文]
+- Douyin-Xingtu-API [根据抖音号获取游客星图kolid/Get XingTu kolid by Douyin unique_id](https://docs.tikhub.io/249826728e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol基本信息V1/Get kol Base Info V1](https://docs.tikhub.io/255867972e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol观众画像V1/Get kol Audience Portrait V1](https://docs.tikhub.io/255867973e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol粉丝画像V1/Get kol Fans Portrait V1](https://docs.tikhub.io/255867974e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol服务报价V1/Get kol Service Price V1](https://docs.tikhub.io/255867975e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol数据概览V1/Get kol Data Overview V1](https://docs.tikhub.io/255867976e0.md): # [中文]
+- Douyin-Xingtu-API [关键词搜索kol V1/Search Kol V1](https://docs.tikhub.io/255867977e0.md): # [中文]
+- Douyin-Xingtu-API [高级搜索kol V2/Search Kol Advanced V2](https://docs.tikhub.io/383041376e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol转化能力分析V1/Get kol Conversion Ability Analysis V1](https://docs.tikhub.io/255867978e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol视频表现V1/Get kol Video Performance V1](https://docs.tikhub.io/255867979e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol星图指数V1/Get kol Xingtu Index V1](https://docs.tikhub.io/255867980e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol转化视频展示V1/Get kol Convert Video Display V1](https://docs.tikhub.io/255867981e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol连接用户V1/Get kol Link Struct V1](https://docs.tikhub.io/255867982e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol连接用户来源V1/Get kol Touch Distribution V1](https://docs.tikhub.io/255867983e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol性价比能力分析V1/Get kol Cp Info V1](https://docs.tikhub.io/255867984e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol内容表现V1/Get kol Rec Videos V1](https://docs.tikhub.io/255867985e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol粉丝趋势V1/Get kol Daily Fans V1](https://docs.tikhub.io/255867986e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol热词分析评论V1/Get Author Hot Comment Tokens V1](https://docs.tikhub.io/255867987e0.md): # [中文]
+- Douyin-Xingtu-API [获取kol热词分析内容V1/Get Author Content Hot Comment Keywords V1](https://docs.tikhub.io/255867988e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取星图热榜分类/Get Ranking List Catalog](https://docs.tikhub.io/417585617e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取星图达人商业榜数据/Get Ranking List Data](https://docs.tikhub.io/417585618e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取短剧演员热榜分类/Get Playlet Actor Rank Catalog](https://docs.tikhub.io/417585619e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取短剧演员热榜/Get Playlet Actor Rank List](https://docs.tikhub.io/417585620e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取达人广场筛选字段/Get Author Market Fields](https://docs.tikhub.io/417585621e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取创作者基本信息/Get Author Base Info](https://docs.tikhub.io/417585622e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取创作者商业卡片信息/Get Author Business Card Info](https://docs.tikhub.io/417585623e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取创作者位置信息/Get Author Local Info](https://docs.tikhub.io/417585624e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取创作者视频列表/Get Author Show Items](https://docs.tikhub.io/417585625e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取创作者评论热词/Get Author Hot Comment Tokens](https://docs.tikhub.io/417585626e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取创作者内容热词/Get Author Content Hot Keywords](https://docs.tikhub.io/417585627e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取相似创作者推荐/Get Recommend Similar Star Authors](https://docs.tikhub.io/417585628e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取优秀行业分类列表/Get Excellent Case Category List](https://docs.tikhub.io/417585629e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取创作者传播价值/Get Author Spread Info](https://docs.tikhub.io/417585630e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取用户主页二维码/Get User Profile QRCode](https://docs.tikhub.io/417585631e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取内容趋势指南/Get Content Trend Guide](https://docs.tikhub.io/417585632e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取星图IP日历行业列表/Get IP Activity Industry List](https://docs.tikhub.io/417585633e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取星图IP日历活动列表/Get IP Activity List](https://docs.tikhub.io/417585634e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取星图IP活动详情/Get IP Activity Detail](https://docs.tikhub.io/417585635e0.md): # [中文]
+- Douyin-Xingtu-V2-API [获取营销活动案例/Get Resource List](https://docs.tikhub.io/417585636e0.md): # [中文]
+- Douyin-Xingtu-V2-API [搜索MCN机构列表/Get Demander MCN List](https://docs.tikhub.io/417585637e0.md): # [中文]
+- Douyin-Billboard-API [获取中国城市列表/Fetch Chinese city list](https://docs.tikhub.io/252393834e0.md): # [中文]
+- Douyin-Billboard-API [获取垂类内容标签/Fetch vertical content tags](https://docs.tikhub.io/256258481e0.md): # [中文]
+- Douyin-Billboard-API [获取热点榜分类/Fetch hot list category](https://docs.tikhub.io/252393835e0.md): # [中文]
+- Douyin-Billboard-API [获取上升热点榜/Fetch rising hot list](https://docs.tikhub.io/252393836e0.md): # [中文]
+- Douyin-Billboard-API [获取同城热点榜/Fetch city hot list](https://docs.tikhub.io/252393837e0.md): # [中文]
+- Douyin-Billboard-API [获取挑战热榜/Fetch hot challenge list](https://docs.tikhub.io/252393838e0.md): # [中文]
+- Douyin-Billboard-API [获取热点总榜/Fetch total hot list](https://docs.tikhub.io/252393839e0.md): # [中文]
+- Douyin-Billboard-API [获取活动日历/Fetch activity calendar](https://docs.tikhub.io/252393840e0.md): # [中文]
+- Douyin-Billboard-API [获取活动日历详情/Fetch activity calendar detail](https://docs.tikhub.io/252393841e0.md): # [中文]
+- Douyin-Billboard-API [获取作品点赞观众画像-仅限热门榜/Fetch work like audience portrait - hot list only](https://docs.tikhub.io/252393842e0.md): # [中文]
+- Douyin-Billboard-API [获取作品评论分析-词云权重/Fetch work comment analysis word cloud weight](https://docs.tikhub.io/252393843e0.md): # [中文]
+- Douyin-Billboard-API [获取作品数据趋势/Fetch post data trend](https://docs.tikhub.io/252393844e0.md): # [中文]
+- Douyin-Billboard-API [获取热门账号/Fetch hot account list](https://docs.tikhub.io/252393845e0.md): # [中文]
+- Douyin-Billboard-API [搜索用户名或抖音号/Fetch account search list](https://docs.tikhub.io/252393846e0.md): # [中文]
+- Douyin-Billboard-API [获取账号粉丝数据趋势/Fetch account fan data trend](https://docs.tikhub.io/252393847e0.md): # [中文]
+- Douyin-Billboard-API [获取账号作品分析-上周/Fetch account work analysis - last week](https://docs.tikhub.io/252393848e0.md): # [中文]
+- Douyin-Billboard-API [获取粉丝画像/Fetch fan portrait](https://docs.tikhub.io/252393849e0.md): # [中文]
+- Douyin-Billboard-API [获取粉丝兴趣作者 20个用户/Fetch fan interest author 20 users](https://docs.tikhub.io/252393850e0.md): # [中文]
+- Douyin-Billboard-API [获取粉丝近3天感兴趣的话题 10个话题/Fetch fan interest topic in the last 3 days 10 topics](https://docs.tikhub.io/252393851e0.md): # [中文]
+- Douyin-Billboard-API [获取粉丝近3天搜索词 10个搜索词/Fetch fan interest search term in the last 3 days 10 search terms](https://docs.tikhub.io/252393852e0.md): # [中文]
+- Douyin-Billboard-API [获取视频热榜/Fetch video hot list](https://docs.tikhub.io/252393853e0.md): # [中文]
+- Douyin-Billboard-API [获取低粉爆款榜/Fetch low fan explosion list](https://docs.tikhub.io/252393854e0.md): # [中文]
+- Douyin-Billboard-API [获取高完播率榜/Fetch high completion rate list](https://docs.tikhub.io/252393855e0.md): # [中文]
+- Douyin-Billboard-API [获取高点赞率榜/Fetch high like rate list](https://docs.tikhub.io/252393856e0.md): # [中文]
+- Douyin-Billboard-API [获取高涨粉率榜/Fetch high fan rate list](https://docs.tikhub.io/252393857e0.md): # [中文]
+- Douyin-Billboard-API [获取话题热榜/Fetch topic hot list](https://docs.tikhub.io/252393858e0.md): # [中文]
+- Douyin-Billboard-API [获取热度飙升的话题榜/Fetch topic list with rising popularity](https://docs.tikhub.io/252393859e0.md): # [中文]
+- Douyin-Billboard-API [获取搜索热榜/Fetch search hot list](https://docs.tikhub.io/252393860e0.md): # [中文]
+- Douyin-Billboard-API [获取热度飙升的搜索榜/Fetch search list with rising popularity](https://docs.tikhub.io/252393861e0.md): # [中文]
+- Douyin-Billboard-API [获取全部热门内容词/Fetch all hot content words](https://docs.tikhub.io/252393862e0.md): # [中文]
+- Douyin-Billboard-API [获取内容词详情/Fetch content word details](https://docs.tikhub.io/252393863e0.md): # [中文]
+- Douyin-Index-API [获取所有有效日期/Get all valid dates](https://docs.tikhub.io/443673027e0.md): # [中文]
+- Douyin-Index-API [获取关联分析有效日期/Get valid date for relation](https://docs.tikhub.io/443673028e0.md): # [中文]
+- Douyin-Index-API [获取所有地区列表/Get all area list](https://docs.tikhub.io/443673029e0.md): # [中文]
+- Douyin-Index-API [获取实时热点排行/Get current hot topics](https://docs.tikhub.io/443673030e0.md): # [中文]
+- Douyin-Index-API [获取热门关键词/Get hot words](https://docs.tikhub.io/443673031e0.md): # [中文]
+- Douyin-Index-API [获取关键词有效日期/Get keyword valid date](https://docs.tikhub.io/443673032e0.md): # [中文]
+- Douyin-Index-API [获取多关键词热度趋势/Get multi-keyword hot trend](https://docs.tikhub.io/443673033e0.md): # [中文]
+- Douyin-Index-API [获取多关键词解读/Get multi-keyword interpretation](https://docs.tikhub.io/443673034e0.md): # [中文]
+- Douyin-Index-API [获取关联词分析/Get relation word analysis](https://docs.tikhub.io/443673035e0.md): # [中文]
+- Douyin-Index-API [获取人群画像/Get crowd portrait](https://docs.tikhub.io/443673036e0.md): # [中文]
+- Douyin-Index-API [获取用户订阅关键词/Get user subscribed keywords](https://docs.tikhub.io/443673037e0.md): # [中文]
+- Douyin-Index-API [抖音 uid 转加密 user_id/Encrypt Douyin uid to user_id](https://docs.tikhub.io/444247759e0.md): # [中文]
+- Douyin-Index-API [达人搜索建议/Daren search suggest](https://docs.tikhub.io/443673038e0.md): # [中文]
+- Douyin-Index-API [达人趋势对比/Daren compare users](https://docs.tikhub.io/443673039e0.md): # [中文]
+- Douyin-Index-API [获取相似达人/Get similar daren](https://docs.tikhub.io/443673040e0.md): # [中文]
+- Douyin-Index-API [获取达人视频/Get daren top videos](https://docs.tikhub.io/443673041e0.md): # [中文]
+- Douyin-Index-API [获取达人核心指标/Get daren core metrics](https://docs.tikhub.io/443673042e0.md): # [中文]
+- Douyin-Index-API [获取达人粉丝分析/Get daren fans analysis](https://docs.tikhub.io/443673043e0.md): # [中文]
+- Douyin-Index-API [获取视频搜索筛选选项/Get video search filter options](https://docs.tikhub.io/444247760e0.md): # [中文]
+- Douyin-Index-API [视频搜索建议/Video search suggest](https://docs.tikhub.io/443673044e0.md): # [中文]
+- Douyin-Index-API [视频搜索结果/Video search results](https://docs.tikhub.io/443673045e0.md): # [中文]
+- Douyin-Index-API [品牌搜索建议/Brand search suggest](https://docs.tikhub.io/443673046e0.md): # [中文]
+- Douyin-Index-API [获取品牌指数/Get brand index](https://docs.tikhub.io/443673047e0.md): # [中文]
+- Douyin-Index-API [获取品牌雷达图/Get brand radar chart](https://docs.tikhub.io/443673048e0.md): # [中文]
+- Douyin-Index-API [获取品牌趋势线/Get brand trend lines](https://docs.tikhub.io/443673049e0.md): # [中文]
+- Douyin-Index-API [获取品牌周期数据/Get brand cycles](https://docs.tikhub.io/443673050e0.md): # [中文]
+- Douyin-Index-API [获取品牌主动排行周榜/Get brand initiative rank weekly](https://docs.tikhub.io/443673051e0.md): # [中文]
+- Douyin-Index-API [话题搜索建议/Topic search suggest](https://docs.tikhub.io/443673052e0.md): # [中文]
+- Douyin-Index-API [话题搜索结果/Topic search results](https://docs.tikhub.io/443673053e0.md): # [中文]
+- Douyin-Index-API [创作指南有效日期/Get content valid date](https://docs.tikhub.io/444247761e0.md): # [中文]
+- Douyin-Index-API [热门视频时间范围/Brand hot videos time scope](https://docs.tikhub.io/444247762e0.md): # [中文]
+- Douyin-Index-API [创作热门关键词/Content creative keywords](https://docs.tikhub.io/444247763e0.md): # [中文]
+- Douyin-Index-API [关键词相关视频/Creative keyword related items](https://docs.tikhub.io/444247764e0.md): # [中文]
+- Douyin-Index-API [创作热门话题/Content creative topic](https://docs.tikhub.io/444247765e0.md): # [中文]
+- Douyin-Index-API [内容发布趋势/Content publish trend](https://docs.tikhub.io/444247766e0.md): # [中文]
+- Douyin-Index-API [创作时长分布/Content creative duration](https://docs.tikhub.io/444247767e0.md): # [中文]
+- Douyin-Index-API [创作者画像/Content author portrait](https://docs.tikhub.io/444247768e0.md): # [中文]
+- Douyin-Index-API [消费者画像/Content consumer portrait](https://docs.tikhub.io/444247769e0.md): # [中文]
+- Douyin-Index-API [互动趋势/Content interact trend](https://docs.tikhub.io/444247770e0.md): # [中文]
+- Douyin-Index-API [消费趋势/Content consume trend](https://docs.tikhub.io/444247771e0.md): # [中文]
+- Douyin-Index-API [获取推荐报告/Get recommended insight reports](https://docs.tikhub.io/444247772e0.md): # [中文]
+- Douyin-Index-API [搜索趋势报告/Search trend reports](https://docs.tikhub.io/444247773e0.md): # [中文]
+- Douyin-Index-API [获取报告详情/Get report detail](https://docs.tikhub.io/444247774e0.md): # [中文]
+- Douyin-Index-API [获取报告相关推荐/Get related insight recommendations](https://docs.tikhub.io/444247775e0.md): # [中文]
+- Douyin-Creator-API [获取创作者活动列表/Get creator activity list](https://docs.tikhub.io/346680197e0.md): # [中文]
+- Douyin-Creator-API [获取创作者活动详情/Get creator activity detail](https://docs.tikhub.io/346680198e0.md): # [中文]
+- Douyin-Creator-API [获取创作者中心配置/Get creator material center config](https://docs.tikhub.io/346680199e0.md): # [中文]
+- Douyin-Creator-API [获取创作者中心热门视频榜单/Get creator material center billboard](https://docs.tikhub.io/346680200e0.md): # [中文]
+- Douyin-Creator-API [获取话题/热点相关视频/Get topic or hot spot related videos](https://docs.tikhub.io/452620367e0.md): # [中文]
+- Douyin-Creator-API [获取创作者中心创作热点/Get creator hot spot billboard](https://docs.tikhub.io/346680201e0.md): # [中文]
+- Douyin-Creator-API [获取创作者热门话题榜单/Get creator hot topic billboard](https://docs.tikhub.io/346680202e0.md): # [中文]
+- Douyin-Creator-API [获取创作者热门道具榜单/Get creator hot props billboard](https://docs.tikhub.io/346680203e0.md): # [中文]
+- Douyin-Creator-API [获取创作者热门挑战榜单/Get creator hot challenge billboard](https://docs.tikhub.io/346680204e0.md): # [中文]
+- Douyin-Creator-API [获取创作者热门音乐榜单/Get creator hot music billboard](https://docs.tikhub.io/346680205e0.md): # [中文]
+- Douyin-Creator-API [获取创作者热门课程/Get creator hot course](https://docs.tikhub.io/346680206e0.md): # [中文]
+- Douyin-Creator-API [获取创作者内容创作合集分类/Get creator content creation category](https://docs.tikhub.io/346680207e0.md): # [中文]
+- Douyin-Creator-API [获取创作者内容创作课程/Get creator content creation course](https://docs.tikhub.io/346680208e0.md): # [中文]
+- Douyin-Creator-API [获取作品弹幕列表/Get video danmaku list](https://docs.tikhub.io/346680209e0.md): # [中文]
+- Douyin-Creator-API [搜索用户/Search users](https://docs.tikhub.io/346680210e0.md): # [中文]
+- Douyin-Creator-API [获取商单任务列表/Get mission task list](https://docs.tikhub.io/346680211e0.md): # [中文]
+- Douyin-Creator-API [获取行业分类配置/Get industry category config](https://docs.tikhub.io/346680212e0.md): # [中文]
+- Douyin-Creator-V2-API [获取作品总览数据/Fetch item overview data](https://docs.tikhub.io/359719861e0.md): # [中文]
+- Douyin-Creator-V2-API [获取作品流量来源统计/Fetch item play source statistics](https://docs.tikhub.io/359719862e0.md): # [中文]
+- Douyin-Creator-V2-API [获取作品搜索关键词统计/Fetch item search keywords statistics](https://docs.tikhub.io/359719863e0.md): # [中文]
+- Douyin-Creator-V2-API [获取作品观看趋势分析/Fetch item watch trend analysis](https://docs.tikhub.io/359719864e0.md): # [中文]
+- Douyin-Creator-V2-API [获取作品弹幕分析/Fetch item bullet analysis](https://docs.tikhub.io/359719865e0.md): # [中文]
+- Douyin-Creator-V2-API [获取作品观众数据分析/Fetch item audience portrait](https://docs.tikhub.io/359719866e0.md): # [中文]
+- Douyin-Creator-V2-API [获取作品观众其他数据分析/Fetch item audience others analysis](https://docs.tikhub.io/359719867e0.md): # [中文]
+- Douyin-Creator-V2-API [获取作品垂类标签/Fetch item analysis involved vertical](https://docs.tikhub.io/359719868e0.md): # [中文]
+- Douyin-Creator-V2-API [获取投稿分析概览/Fetch item analysis overview](https://docs.tikhub.io/359719869e0.md): # [中文]
+- Douyin-Creator-V2-API [获取投稿表现数据/Fetch item analysis item performance](https://docs.tikhub.io/359719870e0.md): # [中文]
+- Douyin-Creator-V2-API [获取投稿作品列表/Fetch item list](https://docs.tikhub.io/359719871e0.md): # [中文]
+- Douyin-Creator-V2-API [导出投稿作品列表/Download item list](https://docs.tikhub.io/359719872e0.md): # [中文]
+- Douyin-Creator-V2-API [获取直播场次历史记录/Fetch live room history list](https://docs.tikhub.io/359719873e0.md): # [中文]
+- Douyin-Creator-V2-API [获取创作者账号诊断/Fetch author diagnosis](https://docs.tikhub.io/359719874e0.md): # [中文]
+- Xigua-App-V2-API [获取单个作品数据/Get single video data](https://docs.tikhub.io/186826246e0.md): # [中文]
+- Xigua-App-V2-API [获取单个作品数据 V2/Get single video data V2](https://docs.tikhub.io/261329695e0.md): # [中文]
+- Xigua-App-V2-API [获取单个作品的播放链接/Get single video play URL](https://docs.tikhub.io/186826247e0.md): # [中文]
+- Xigua-App-V2-API [视频评论列表/Video comment list](https://docs.tikhub.io/186826248e0.md): # [中文]
+- Xigua-App-V2-API [搜索视频/Search video](https://docs.tikhub.io/186826249e0.md): # [中文]
+- Xigua-App-V2-API [个人信息/Personal information](https://docs.tikhub.io/186826250e0.md): # [中文]
+- Xigua-App-V2-API [获取个人作品列表/Get user post list](https://docs.tikhub.io/186826251e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取图文笔记详情/Get image note detail](https://docs.tikhub.io/420136391e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取视频笔记详情/Get video note detail](https://docs.tikhub.io/420136392e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取笔记评论列表/Get note comments](https://docs.tikhub.io/420136394e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取笔记二级评论列表/Get note sub comments](https://docs.tikhub.io/420748830e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取用户信息/Get user info](https://docs.tikhub.io/420136395e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取用户笔记列表/Get user posted notes](https://docs.tikhub.io/420136396e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取用户收藏笔记列表/Get user faved notes](https://docs.tikhub.io/420136397e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取话题详情/Get topic info](https://docs.tikhub.io/420136407e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取话题笔记列表/Get topic feed](https://docs.tikhub.io/420136408e0.md): # [中文]
+- Xiaohongshu-App-V2-API [搜索笔记/Search notes](https://docs.tikhub.io/420136398e0.md): # [中文]
+- Xiaohongshu-App-V2-API [搜索用户/Search users](https://docs.tikhub.io/420136399e0.md): # [中文]
+- Xiaohongshu-App-V2-API [搜索图片/Search images](https://docs.tikhub.io/420136400e0.md): # [中文]
+- Xiaohongshu-App-V2-API [搜索商品/Search products](https://docs.tikhub.io/420136401e0.md): # [中文]
+- Xiaohongshu-App-V2-API [搜索群聊/Search groups](https://docs.tikhub.io/420136402e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取商品详情/Get product detail](https://docs.tikhub.io/420136403e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取商品评论总览/Get product review overview](https://docs.tikhub.io/420136404e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取商品评论列表/Get product reviews](https://docs.tikhub.io/420136405e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取商品推荐列表/Get product recommendations](https://docs.tikhub.io/420136406e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取创作者推荐灵感列表/Get creator inspiration feed](https://docs.tikhub.io/420136409e0.md): # [中文]
+- Xiaohongshu-App-V2-API [获取创作者热点灵感列表/Get creator hot inspiration feed](https://docs.tikhub.io/420136410e0.md): # [中文]
+- Xiaohongshu-App-API [获取笔记信息 V1/Get note info V1](https://docs.tikhub.io/310965839e0.md): # [中文]
+- Xiaohongshu-App-API [获取笔记信息 V2 (蒲公英商家后台)/Get note info V2 (Pugongying Business Backend)](https://docs.tikhub.io/334614201e0.md): # [中文]
+- Xiaohongshu-App-API [获取笔记评论/Get note comments](https://docs.tikhub.io/310965840e0.md): # [中文]
+- Xiaohongshu-App-API [获取子评论/Get sub comments](https://docs.tikhub.io/310965841e0.md): # [中文]
+- Xiaohongshu-App-API [根据话题标签获取作品/Get notes by topic](https://docs.tikhub.io/454758056e0.md): # [中文]
+- Xiaohongshu-App-API [[已弃用/Deprecated] 根据话题标签获取作品/Get notes by topic](https://docs.tikhub.io/310965842e0.md): # [中文]
+- Xiaohongshu-App-API [搜索笔记/Search notes](https://docs.tikhub.io/310965843e0.md): # [中文]
+- Xiaohongshu-App-API [获取用户信息/Get user info](https://docs.tikhub.io/310965845e0.md): # [中文]
+- Xiaohongshu-App-API [获取用户作品列表/Get user notes](https://docs.tikhub.io/310965846e0.md): # [中文]
+- Xiaohongshu-App-API [提取分享链接信息/Extract share link info](https://docs.tikhub.io/310965847e0.md): # [中文]
+- Xiaohongshu-App-API [从分享链接中提取用户ID和xsec_token/Extract user ID and xsec_token from share link](https://docs.tikhub.io/364605901e0.md): # [中文]
+- Xiaohongshu-App-API [获取商品详情/Get product detail](https://docs.tikhub.io/415522694e0.md): # [中文]
+- Xiaohongshu-App-API [搜索商品/Search products](https://docs.tikhub.io/415522695e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [获取笔记详情/Fetch note detail](https://docs.tikhub.io/438852168e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [获取笔记评论/Fetch note comments](https://docs.tikhub.io/438852169e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [获取子评论/Fetch sub comments](https://docs.tikhub.io/438852170e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [搜索笔记/Search notes](https://docs.tikhub.io/438852171e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [搜索用户/Search users](https://docs.tikhub.io/438852172e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [获取热搜词/Fetch trending keywords](https://docs.tikhub.io/438852173e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [获取搜索联想词/Fetch search suggestions](https://docs.tikhub.io/438852174e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [获取首页推荐/Fetch homepage feed](https://docs.tikhub.io/438852175e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [获取首页分类列表/Fetch homepage categories](https://docs.tikhub.io/438852176e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [获取用户信息/Fetch user info](https://docs.tikhub.io/438852177e0.md): # [中文]
+- Xiaohongshu-Web-V3-API [获取用户笔记列表/Fetch user notes](https://docs.tikhub.io/438852178e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取单一笔记和推荐笔记 V1 (已弃用)/Fetch one note and feed notes V1 (deprecated)](https://docs.tikhub.io/306609985e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取单一笔记和推荐笔记 V2/Fetch one note and feed notes V2(v2稳定, 推荐使用此接口)](https://docs.tikhub.io/306824760e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取单一笔记和推荐笔记 V3/Fetch one note and feed notes V3(通过短链获取笔记详情)](https://docs.tikhub.io/307012438e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取单一笔记和推荐笔记 V4 (互动量有延迟)/Fetch one note and feed notes V4 (interaction volume has a delay)](https://docs.tikhub.io/321103380e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取单一笔记和推荐笔记 V5 (互动量有缺失)/Fetch one note and feed notes V5 (interaction volume has a missing)](https://docs.tikhub.io/345685730e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取小红书笔记图片/Fetch Xiaohongshu note image](https://docs.tikhub.io/306824761e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取搜索笔记/Fetch search notes](https://docs.tikhub.io/268383320e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取搜索用户/Fetch search users](https://docs.tikhub.io/307012439e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取Web用户主页笔记/Fetch web user profile notes](https://docs.tikhub.io/268383321e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取App用户主页笔记/Fetch App user home notes](https://docs.tikhub.io/302517389e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取笔记评论/Fetch note comments](https://docs.tikhub.io/268383322e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取子评论/Fetch sub comments](https://docs.tikhub.io/268383323e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取用户信息/Fetch user info](https://docs.tikhub.io/268383324e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取App用户信息/Fetch App user info](https://docs.tikhub.io/302517390e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取用户粉丝列表/Fetch follower list](https://docs.tikhub.io/268383325e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取用户关注列表/Fetch following list](https://docs.tikhub.io/268383326e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取小红书商品列表/Fetch Xiaohongshu product list](https://docs.tikhub.io/321103381e0.md): # [中文]
+- Xiaohongshu-Web-V2-API [获取小红书热榜/Fetch Xiaohongshu hot list](https://docs.tikhub.io/321103382e0.md): # [中文]
+- Xiaohongshu-Web-API [获取首页推荐/Get home recommend](https://docs.tikhub.io/268383317e0.md): # [中文]
+- Xiaohongshu-Web-API [获取笔记信息 V2/Get note info V2](https://docs.tikhub.io/207023656e0.md): # [中文]
+- Xiaohongshu-Web-API [获取笔记信息 V4/Get note info V4](https://docs.tikhub.io/255542734e0.md): # [中文]
+- Xiaohongshu-Web-API [获取笔记信息 V5 (自带Cookie)/Get note info V5 (Self-provided Cookie)](https://docs.tikhub.io/255867989e0.md): # [中文]
+- Xiaohongshu-Web-API [获取笔记信息 V7/Get note info V7](https://docs.tikhub.io/305804432e0.md): # [中文]
+- Xiaohongshu-Web-API [获取笔记评论 V1/Get note comments V1](https://docs.tikhub.io/191613684e0.md): # [中文]
+- Xiaohongshu-Web-API [获取笔记评论回复 V1/Get note comment replies V1](https://docs.tikhub.io/191613685e0.md): # [中文]
+- Xiaohongshu-Web-API [获取用户信息 V1/Get user info V1](https://docs.tikhub.io/186826253e0.md): # [中文]
+- Xiaohongshu-Web-API [获取用户信息 V2/Get user info V2](https://docs.tikhub.io/220267497e0.md): # [中文]
+- Xiaohongshu-Web-API [搜索笔记/Search notes](https://docs.tikhub.io/186826254e0.md): # [中文]
+- Xiaohongshu-Web-API [搜索笔记 V3/Search notes V3](https://docs.tikhub.io/322238020e0.md): # [中文]
+- Xiaohongshu-Web-API [搜索用户/Search users](https://docs.tikhub.io/191613686e0.md): # [中文]
+- Xiaohongshu-Web-API [获取用户的笔记 V2/Get user notes V2](https://docs.tikhub.io/252393832e0.md): # [中文]
+- Xiaohongshu-Web-API [获取游客Cookie/Get visitor cookie](https://docs.tikhub.io/220267498e0.md): # [中文]
+- Xiaohongshu-Web-API [小红书Web签名/Xiaohongshu Web sign](https://docs.tikhub.io/252393833e0.md): # [中文]
+- Xiaohongshu-Web-API [通过分享链接获取小红书的Note ID 和 xsec_token/Get Xiaohongshu Note ID and xsec_token by share link](https://docs.tikhub.io/268383318e0.md): # [中文]
+- Xiaohongshu-Web-API [获取小红书商品信息/Get Xiaohongshu product info](https://docs.tikhub.io/272028130e0.md): # [中文]
+- Lemon8-App-API [获取指定用户的信息/Get information of specified user](https://docs.tikhub.io/246049885e0.md): # [中文]
+- Lemon8-App-API [获取指定作品的信息/Get information of specified post](https://docs.tikhub.io/246049886e0.md): # [中文]
+- Lemon8-App-API [获取指定用户的粉丝列表/Get fans list of specified user](https://docs.tikhub.io/246049887e0.md): # [中文]
+- Lemon8-App-API [获取指定用户的关注列表/Get following list of specified user](https://docs.tikhub.io/246049888e0.md): # [中文]
+- Lemon8-App-API [获取指定作品的评论列表/Get comments list of specified post](https://docs.tikhub.io/246049889e0.md): # [中文]
+- Lemon8-App-API [获取发现页Banner/Get banners of discover page](https://docs.tikhub.io/246049890e0.md): # [中文]
+- Lemon8-App-API [获取发现页主体内容/Get main content of discover page](https://docs.tikhub.io/246049891e0.md): # [中文]
+- Lemon8-App-API [获取发现页的 Editor's Picks/Get Editor's Picks of discover page](https://docs.tikhub.io/246049892e0.md): # [中文]
+- Lemon8-App-API [获取热搜关键词/Get hot search keywords](https://docs.tikhub.io/246049893e0.md): # [中文]
+- Lemon8-App-API [获取话题信息/Get topic information](https://docs.tikhub.io/246049894e0.md): # [中文]
+- Lemon8-App-API [获取话题作品列表/Get topic post list](https://docs.tikhub.io/246049895e0.md): # [中文]
+- Lemon8-App-API [搜索接口/Search API](https://docs.tikhub.io/246049896e0.md): # [中文]
+- Lemon8-App-API [通过分享链接获取作品ID/Get post ID through sharing link](https://docs.tikhub.io/246049897e0.md): # [中文]
+- Lemon8-App-API [通过分享链接获取用户ID/Get user ID through sharing link](https://docs.tikhub.io/246049898e0.md): # [中文]
+- Lemon8-App-API [通过分享链接批量获取作品ID/Get post IDs in batch through sharing links](https://docs.tikhub.io/246997248e0.md): # [中文]
+- Lemon8-App-API [通过分享链接批量获取用户ID/Get user IDs in batch through sharing links](https://docs.tikhub.io/246997249e0.md): # [中文]
+- Bilibili-Web-API [通过bv号获得视频aid号/Generate aid by bvid](https://docs.tikhub.io/219522651e0.md): # [中文]
+- Bilibili-Web-API [通过bv号获得视频分p信息/Get Video Parts By bvid](https://docs.tikhub.io/219522652e0.md): # [中文]
+- Bilibili-Web-API [提取用户ID/Extract user ID](https://docs.tikhub.io/369454675e0.md): # [中文]
+- Bilibili-Web-API [获取单个视频详情信息/Get single video data](https://docs.tikhub.io/219522636e0.md): # [中文]
+- Bilibili-Web-API [获取单个视频详情信息V2/Get single video data V2](https://docs.tikhub.io/262442573e0.md): # [中文]
+- Bilibili-Web-API [获取单个视频详情信息V3/Get single video data V3](https://docs.tikhub.io/321173063e0.md): # [中文]
+- Bilibili-Web-API [获取单个视频详情/Get single video detail](https://docs.tikhub.io/327447217e0.md): # [中文]
+- Bilibili-Web-API [获取单个视频播放信息/Get single video play info](https://docs.tikhub.io/321173064e0.md): # [中文]
+- Bilibili-Web-API [获取热门搜索信息/Get hot search data](https://docs.tikhub.io/265879742e0.md): # [中文]
+- Bilibili-Web-API [获取综合搜索信息/Get general search data](https://docs.tikhub.io/265879743e0.md): # [中文]
+- Bilibili-Web-API [获取视频流地址/Get video playurl](https://docs.tikhub.io/219522637e0.md): # [中文]
+- Bilibili-Web-API [获取大会员清晰度视频流地址/Get VIP video playurl](https://docs.tikhub.io/403635330e0.md): # [中文]
+- Bilibili-Web-API [获取用户主页作品数据/Get user homepage video data](https://docs.tikhub.io/219522638e0.md): # [中文]
+- Bilibili-Web-API [获取用户所有收藏夹信息/Get user collection folders](https://docs.tikhub.io/219522639e0.md): # [中文]
+- Bilibili-Web-API [获取指定收藏夹内视频数据/Gets video data from a collection folder](https://docs.tikhub.io/219522640e0.md): # [中文]
+- Bilibili-Web-API [获取指定用户的信息/Get information of specified user](https://docs.tikhub.io/219522641e0.md): # [中文]
+- Bilibili-Web-API [获取UP主状态统计/Get UP stat (total likes and views)](https://docs.tikhub.io/410358092e0.md): # [中文]
+- Bilibili-Web-API [获取用户关系状态统计/Get user relation stat (following and followers)](https://docs.tikhub.io/410358093e0.md): # [中文]
+- Bilibili-Web-API [获取综合热门视频信息/Get comprehensive popular video information](https://docs.tikhub.io/219522642e0.md): # [中文]
+- Bilibili-Web-API [获取指定视频的评论/Get comments on the specified video](https://docs.tikhub.io/219522643e0.md): # [中文]
+- Bilibili-Web-API [获取视频下指定评论的回复/Get reply to the specified comment](https://docs.tikhub.io/219522644e0.md): # [中文]
+- Bilibili-Web-API [获取指定用户动态/Get dynamic information of specified user](https://docs.tikhub.io/219522645e0.md): # [中文]
+- Bilibili-Web-API [获取视频实时弹幕/Get Video Danmaku](https://docs.tikhub.io/219522646e0.md): # [中文]
+- Bilibili-Web-API [获取指定直播间信息/Get information of specified live room](https://docs.tikhub.io/219522647e0.md): # [中文]
+- Bilibili-Web-API [获取直播间视频流/Get live video data of specified room](https://docs.tikhub.io/219522648e0.md): # [中文]
+- Bilibili-Web-API [获取指定分区正在直播的主播/Get live streamers of specified live area](https://docs.tikhub.io/219522649e0.md): # [中文]
+- Bilibili-Web-API [获取所有直播分区列表/Get a list of all live areas](https://docs.tikhub.io/219522650e0.md): # [中文]
+- Bilibili-Web-API [获取视频字幕信息/Get video subtitle info](https://docs.tikhub.io/420748831e0.md): # [中文]
+- Bilibili-Web-API [获取动态详情/Get dynamic detail](https://docs.tikhub.io/420748832e0.md): # [中文]
+- Bilibili-Web-API [获取动态详情v2/Get dynamic detail v2](https://docs.tikhub.io/420748833e0.md): # [中文]
+- Bilibili-App-API [获取单个视频详情信息/Get single video data](https://docs.tikhub.io/382707662e0.md): # [中文]
+- Bilibili-App-API [获取视频评论列表/Get video comments](https://docs.tikhub.io/382707663e0.md): # [中文]
+- Bilibili-App-API [获取二级评论回复/Get reply detail](https://docs.tikhub.io/382707664e0.md): # [中文]
+- Bilibili-App-API [获取用户投稿视频/Get user videos](https://docs.tikhub.io/382707665e0.md): # [中文]
+- Bilibili-App-API [获取用户信息/Get user info](https://docs.tikhub.io/382707666e0.md): # [中文]
+- Bilibili-App-API [获取主页推荐视频流/Get home feed](https://docs.tikhub.io/382707667e0.md): # [中文]
+- Bilibili-App-API [获取热门推荐/Get popular feed](https://docs.tikhub.io/382707668e0.md): # [中文]
+- Bilibili-App-API [综合搜索/search all](https://docs.tikhub.io/382707669e0.md): # [中文]
+- Bilibili-App-API [分类搜索/ search by type](https://docs.tikhub.io/382707670e0.md): # [中文]
+- Bilibili-App-API [获取影视推荐/Get cinema tab](https://docs.tikhub.io/382707671e0.md): # [中文]
+- Bilibili-App-API [获取番剧推荐/Get bangumi tab](https://docs.tikhub.io/382707672e0.md): # [中文]
+- PiPiXia-App-API [获取单个作品数据/Get single video data](https://docs.tikhub.io/258871418e0.md): # [中文]
+- PiPiXia-App-API [增加作品浏览数/Increase post view count](https://docs.tikhub.io/258877694e0.md): # [中文]
+- PiPiXia-App-API [获取作品统计数据/Get post statistics](https://docs.tikhub.io/258871419e0.md): # [中文]
+- PiPiXia-App-API [获取用户信息/Get user information](https://docs.tikhub.io/258871420e0.md): # [中文]
+- PiPiXia-App-API [获取用户作品列表/Get user post list](https://docs.tikhub.io/258871421e0.md): # [中文]
+- PiPiXia-App-API [获取用户粉丝列表/Get user follower list](https://docs.tikhub.io/258871422e0.md): # [中文]
+- PiPiXia-App-API [获取用户关注列表/Get user following list](https://docs.tikhub.io/258871423e0.md): # [中文]
+- PiPiXia-App-API [获取作品评论列表/Get post comment list](https://docs.tikhub.io/258871424e0.md): # [中文]
+- PiPiXia-App-API [生成短连接/Generate short URL](https://docs.tikhub.io/258871425e0.md): # [中文]
+- PiPiXia-App-API [获取首页推荐/Get home feed](https://docs.tikhub.io/258871426e0.md): # [中文]
+- PiPiXia-App-API [获取热搜词条/Get hot search words](https://docs.tikhub.io/258871427e0.md): # [中文]
+- PiPiXia-App-API [获取热搜榜单列表/Get hot search board list](https://docs.tikhub.io/258871428e0.md): # [中文]
+- PiPiXia-App-API [获取热搜榜单详情/Get hot search board detail](https://docs.tikhub.io/258871429e0.md): # [中文]
+- PiPiXia-App-API [搜索接口/Search API](https://docs.tikhub.io/258871430e0.md): # [中文]
+- PiPiXia-App-API [获取话题详情/Get hashtag detail](https://docs.tikhub.io/265879739e0.md): # [中文]
+- PiPiXia-App-API [获取话题作品列表/Get hashtag post list](https://docs.tikhub.io/265879740e0.md): # [中文]
+- PiPiXia-App-API [获取首页短剧推荐/Get home short drama feed](https://docs.tikhub.io/265879741e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [获取微信公众号文章详情的JSON/Get Wechat MP Article Detail JSON](https://docs.tikhub.io/268383327e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [获取微信公众号文章详情的HTML/Get Wechat MP Article Detail HTML](https://docs.tikhub.io/268383328e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [获取微信公众号文章列表/Get Wechat MP Article List](https://docs.tikhub.io/268383329e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [获取微信公众号文章阅读量/Get Wechat MP Article Read Count](https://docs.tikhub.io/268383330e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [获取微信公众号文章永久链接/Get Wechat MP Article URL](https://docs.tikhub.io/268383331e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [获取微信公众号文章评论列表/Get Wechat MP Article Comment List](https://docs.tikhub.io/268383332e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [获取微信公众号文章评论回复列表/Get Wechat MP Article Comment Reply List](https://docs.tikhub.io/268383333e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [获取微信公众号广告/Get Wechat MP Article Ad](https://docs.tikhub.io/268383334e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [获取微信公众号长链接转短链接/Get Wechat MP Long URL to Short URL](https://docs.tikhub.io/268383335e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [获取微信公众号关联文章/Get Wechat MP Related Articles](https://docs.tikhub.io/268383336e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [搜索微信公众号/Search Wechat Official Account](https://docs.tikhub.io/452620368e0.md): # [中文]
+- WeChat-Media-Platform-Web-API [搜索微信公众号文章/Search Wechat MP Article](https://docs.tikhub.io/452620369e0.md): # [中文]
+- WeChat-Channels-API [微信视频号默认搜索/WeChat Channels Default Search](https://docs.tikhub.io/419832666e0.md): # [中文]
+- WeChat-Channels-API [微信视频号搜索最新视频/WeChat Channels Search Latest Videos](https://docs.tikhub.io/419832667e0.md): # [中文]
+- WeChat-Channels-API [微信视频号综合搜索/WeChat Channels Comprehensive Search](https://docs.tikhub.io/419832668e0.md): # [中文]
+- WeChat-Channels-API [微信视频号用户搜索/WeChat Channels User Search](https://docs.tikhub.io/419832669e0.md): # [中文]
+- WeChat-Channels-API [微信视频号用户搜索V2/WeChat Channels User Search V2](https://docs.tikhub.io/431829294e0.md): # [中文]
+- WeChat-Channels-API [微信视频号视频详情/WeChat Channels Video Detail](https://docs.tikhub.io/419832670e0.md): # [中文]
+- WeChat-Channels-API [微信视频号分享详情/WeChat Channels Share Detail](https://docs.tikhub.io/458666871e0.md): # [中文]
+- WeChat-Channels-API [微信视频号主页/WeChat Channels Home Page](https://docs.tikhub.io/419832671e0.md): # [中文]
+- WeChat-Channels-API [微信视频号评论/WeChat Channels Comments](https://docs.tikhub.io/419832672e0.md): # [中文]
+- WeChat-Channels-API [微信视频号直播回放/WeChat Channels Live History](https://docs.tikhub.io/419832673e0.md): # [中文]
+- WeChat-Channels-API [微信视频号搜索/Search WeChat Channels](https://docs.tikhub.io/452620370e0.md): # [中文]
+- WeChat-Channels-API [微信视频号热门话题/WeChat Channels Hot Topics](https://docs.tikhub.io/419832674e0.md): # [中文]
+- Weibo-App-API [获取用户信息/Get user information](https://docs.tikhub.io/410358094e0.md): # [中文]
+- Weibo-App-API [获取用户详细信息/Get user detail information](https://docs.tikhub.io/410358095e0.md): # [中文]
+- Weibo-App-API [获取用户发布的微博/Get user timeline](https://docs.tikhub.io/410358096e0.md): # [中文]
+- Weibo-App-API [获取用户视频列表/Get user videos](https://docs.tikhub.io/410358097e0.md): # [中文]
+- Weibo-App-API [获取用户参与的超话列表/Get user super topics](https://docs.tikhub.io/410358098e0.md): # [中文]
+- Weibo-App-API [获取用户相册/Get user album](https://docs.tikhub.io/410358099e0.md): # [中文]
+- Weibo-App-API [获取用户文章列表/Get user articles](https://docs.tikhub.io/410358100e0.md): # [中文]
+- Weibo-App-API [获取用户音频列表/Get user audios](https://docs.tikhub.io/410358101e0.md): # [中文]
+- Weibo-App-API [获取用户主页动态/Get user profile feed](https://docs.tikhub.io/410358102e0.md): # [中文]
+- Weibo-App-API [获取微博详情/Get post detail](https://docs.tikhub.io/410358103e0.md): # [中文]
+- Weibo-App-API [获取微博评论/Get post comments](https://docs.tikhub.io/410358104e0.md): # [中文]
+- Weibo-App-API [获取微博转发列表/Get post reposts](https://docs.tikhub.io/410358105e0.md): # [中文]
+- Weibo-App-API [获取微博点赞列表/Get post likes](https://docs.tikhub.io/410358106e0.md): # [中文]
+- Weibo-App-API [获取视频详情/Get video detail](https://docs.tikhub.io/410358107e0.md): # [中文]
+- Weibo-App-API [获取短视频精选Feed流/Get video featured feed](https://docs.tikhub.io/410358108e0.md): # [中文]
+- Weibo-App-API [综合搜索/Comprehensive search](https://docs.tikhub.io/410358109e0.md): # [中文]
+- Weibo-App-API [AI智搜/AI Smart Search](https://docs.tikhub.io/410358110e0.md): # [中文]
+- Weibo-App-API [获取首页推荐Feed流/Get home recommend feed](https://docs.tikhub.io/410358111e0.md): # [中文]
+- Weibo-App-API [获取热搜榜/Get hot search](https://docs.tikhub.io/410358112e0.md): # [中文]
+- Weibo-App-API [获取热搜分类列表/Get hot search categories](https://docs.tikhub.io/410358113e0.md): # [中文]
+- Weibo-Web-API [获取频道配置列表/Get channel config list](https://docs.tikhub.io/381269392e0.md): # [中文]
+- Weibo-Web-API [获取频道热门趋势/Get channel trend top](https://docs.tikhub.io/381269393e0.md): # [中文]
+- Weibo-Web-API [根据频道名称获取热门内容/Get channel feed by name](https://docs.tikhub.io/381269394e0.md): # [中文]
+- Weibo-Web-API [获取用户信息/Get user information](https://docs.tikhub.io/381269395e0.md): # [中文]
+- Weibo-Web-API [获取用户微博列表/Get user posts](https://docs.tikhub.io/381269396e0.md): # [中文]
+- Weibo-Web-API [获取微博详情/Get post detail](https://docs.tikhub.io/381269397e0.md): # [中文]
+- Weibo-Web-API [获取微博评论/Get post comments](https://docs.tikhub.io/381269398e0.md): # [中文]
+- Weibo-Web-API [获取评论子评论/Get comment replies](https://docs.tikhub.io/381269399e0.md): # [中文]
+- Weibo-Web-API [搜索微博/Search Weibo](https://docs.tikhub.io/381269400e0.md): # [中文]
+- Weibo-Web-API [获取热搜榜/Get hot search ranking](https://docs.tikhub.io/381269401e0.md): # [中文]
+- Weibo-Web-API [获取搜索页热搜词/Get search page hot topics](https://docs.tikhub.io/381269402e0.md): # [中文]
+- Weibo-Web-V2-API [检查微博是否允许带图评论/Check if Weibo allows image comments](https://docs.tikhub.io/381269403e0.md): # [中文]
+- Weibo-Web-V2-API [获取单个作品数据/Get single post data](https://docs.tikhub.io/381269404e0.md): # [中文]
+- Weibo-Web-V2-API [获取用户信息/Get user information](https://docs.tikhub.io/381269405e0.md): # [中文]
+- Weibo-Web-V2-API [获取用户基本信息/Get user basic information](https://docs.tikhub.io/381269406e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博用户文章数据/Get Weibo user posts](https://docs.tikhub.io/381269407e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博用户原创微博数据/Get Weibo user original posts](https://docs.tikhub.io/381269408e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博评论/Get Weibo comments](https://docs.tikhub.io/381269409e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博子评论/Get Weibo sub-comments](https://docs.tikhub.io/381269410e0.md): # [中文]
+- Weibo-Web-V2-API [搜索用户微博/Search user posts](https://docs.tikhub.io/381269411e0.md): # [中文]
+- Weibo-Web-V2-API [获取用户微博视频收藏夹列表/Get user video collection list](https://docs.tikhub.io/381269412e0.md): # [中文]
+- Weibo-Web-V2-API [获取用户微博视频收藏夹详情/Get user video collection detail](https://docs.tikhub.io/381269413e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博用户全部视频/Get user all videos](https://docs.tikhub.io/381269414e0.md): # [中文]
+- Weibo-Web-V2-API [获取用户关注列表/Get user following list](https://docs.tikhub.io/381269415e0.md): # [中文]
+- Weibo-Web-V2-API [获取用户粉丝列表/Get user fans list](https://docs.tikhub.io/381269416e0.md): # [中文]
+- Weibo-Web-V2-API [获取所有分组信息/Get all groups information](https://docs.tikhub.io/381269417e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博主页推荐时间轴/Get user recommend timeline](https://docs.tikhub.io/381269418e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博热门榜单时间轴/Get hot ranking timeline](https://docs.tikhub.io/381269419e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博热搜词条(10条)/Get Weibo hot search index (10 items)](https://docs.tikhub.io/381269420e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博完整热搜榜单(50条)/Get Weibo complete hot search ranking (50 items)](https://docs.tikhub.io/381269421e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博热搜榜单/Get Weibo hot search ranking](https://docs.tikhub.io/400217397e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博文娱榜单/Get Weibo entertainment ranking](https://docs.tikhub.io/400217398e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博生活榜单/Get Weibo life ranking](https://docs.tikhub.io/400217399e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博社会榜单/Get Weibo social ranking](https://docs.tikhub.io/400217400e0.md): # [中文]
+- Weibo-Web-V2-API [获取微博相似搜索词推荐/Get Weibo similar search recommendations](https://docs.tikhub.io/381269422e0.md): # [中文]
+- Weibo-Web-V2-API [微博智能搜索/Weibo AI Search](https://docs.tikhub.io/381269423e0.md): # [中文]
+- Weibo-Web-V2-API [微博AI搜索内容扩展/Weibo AI Search Content Extension](https://docs.tikhub.io/381269424e0.md): # [中文]
+- Weibo-Web-V2-API [微博高级搜索/Weibo Advanced Search](https://docs.tikhub.io/381269425e0.md): # [中文]
+- Weibo-Web-V2-API [地区省市映射/Region City List](https://docs.tikhub.io/381269426e0.md): # [中文]
+- Weibo-Web-V2-API [实时搜索/Weibo Realtime Search](https://docs.tikhub.io/381269427e0.md): # [中文]
+- Weibo-Web-V2-API [用户搜索/User search](https://docs.tikhub.io/381269428e0.md): # [中文]
+- Weibo-Web-V2-API [视频搜索(热门/全部)/Weibo video search (hot/all)](https://docs.tikhub.io/381269429e0.md): # [中文]
+- Weibo-Web-V2-API [图片搜索/Weibo picture search](https://docs.tikhub.io/381269430e0.md): # [中文]
+- Weibo-Web-V2-API [话题搜索/Weibo topic search](https://docs.tikhub.io/381269431e0.md): # [中文]
+- YouTube-Web-API [获取视频信息 V1/Get video information V1](https://docs.tikhub.io/413417969e0.md): # [中文]
+- YouTube-Web-API [获取视频信息 V2/Get video information V2](https://docs.tikhub.io/413417970e0.md): # [中文]
+- YouTube-Web-API [获取视频详情 V3/Get video information V3](https://docs.tikhub.io/413417971e0.md): # [中文]
+- YouTube-Web-API [获取视频字幕/Get video subtitles](https://docs.tikhub.io/413417972e0.md): # [中文]
+- YouTube-Web-API [获取视频评论/Get video comments](https://docs.tikhub.io/413417973e0.md): # [中文]
+- YouTube-Web-API [获取视频二级评论/Get video sub comments](https://docs.tikhub.io/413417974e0.md): # [中文]
+- YouTube-Web-API [获取频道描述信息/Get channel description](https://docs.tikhub.io/413417975e0.md): # [中文]
+- YouTube-Web-API [获取推荐视频/Get related videos](https://docs.tikhub.io/413417976e0.md): # [中文]
+- YouTube-Web-API [搜索视频/Search video](https://docs.tikhub.io/413417977e0.md): # [中文]
+- YouTube-Web-API [综合搜索(支持过滤条件)/General search with filters](https://docs.tikhub.io/413417978e0.md): # [中文]
+- YouTube-Web-API [YouTube Shorts短视频搜索/YouTube Shorts search](https://docs.tikhub.io/413417979e0.md): # [中文]
+- YouTube-Web-API [获取频道ID/Get channel ID](https://docs.tikhub.io/413417980e0.md): # [中文]
+- YouTube-Web-API [从频道URL获取频道ID V2/Get channel ID from URL V2](https://docs.tikhub.io/413417981e0.md): # [中文]
+- YouTube-Web-API [从频道ID获取频道URL/Get channel URL from channel ID](https://docs.tikhub.io/413417982e0.md): # [中文]
+- YouTube-Web-API [获取频道信息/Get channel information](https://docs.tikhub.io/413417983e0.md): # [中文]
+- YouTube-Web-API [获取频道视频 V1(即将过时,优先使用 V2)/Get channel videos V1 (deprecated soon, use V2 first)](https://docs.tikhub.io/413417984e0.md): # [中文]
+- YouTube-Web-API [获取频道视频 V2/Get channel videos V2](https://docs.tikhub.io/413417985e0.md): # [中文]
+- YouTube-Web-API [获取频道视频 V3/Get channel videos V3](https://docs.tikhub.io/413417986e0.md): # [中文]
+- YouTube-Web-API [获取频道短视频/Get channel short videos](https://docs.tikhub.io/413417987e0.md): # [中文]
+- YouTube-Web-API [搜索频道/Search channel](https://docs.tikhub.io/413417988e0.md): # [中文]
+- YouTube-Web-API [获取趋势视频/Get trending videos](https://docs.tikhub.io/413417989e0.md): # [中文]
+- YouTube-Web-V2-API [获取视频详情 /Get video information](https://docs.tikhub.io/419083081e0.md): # [中文]
+- YouTube-Web-V2-API [获取视频评论/Get video comments](https://docs.tikhub.io/419083082e0.md): # [中文]
+- YouTube-Web-V2-API [获取视频二级评论/Get video sub comments](https://docs.tikhub.io/419083083e0.md): # [中文]
+- YouTube-Web-V2-API [获取频道描述信息/Get channel description](https://docs.tikhub.io/419083084e0.md): # [中文]
+- YouTube-Web-V2-API [综合搜索(原始数据,推荐使用V2)/General search (raw data, recommend V2)](https://docs.tikhub.io/419083085e0.md): # [中文]
+- YouTube-Web-V2-API [综合搜索V2/General search V2](https://docs.tikhub.io/431829299e0.md): # [中文]
+- YouTube-Web-V2-API [Shorts搜索(原始数据,推荐使用V2)/Shorts search (raw data, recommend V2)](https://docs.tikhub.io/419083086e0.md): # [中文]
+- YouTube-Web-V2-API [Shorts搜索V2/Shorts search V2](https://docs.tikhub.io/431829300e0.md): # [中文]
+- YouTube-Web-V2-API [从频道URL获取频道ID /Get channel ID from URL](https://docs.tikhub.io/419083087e0.md): # [中文]
+- YouTube-Web-V2-API [从频道ID获取频道URL/Get channel URL from channel ID](https://docs.tikhub.io/419083088e0.md): # [中文]
+- YouTube-Web-V2-API [获取频道视频 /Get channel videos](https://docs.tikhub.io/419083089e0.md): # [中文]
+- YouTube-Web-V2-API [获取视频流信息/Get video streams info](https://docs.tikhub.io/419083090e0.md): # [中文]
+- YouTube-Web-V2-API [获取视频流信息 V2/Get video streams info V2](https://docs.tikhub.io/419083091e0.md): # [中文]
+- YouTube-Web-V2-API [获取已签名的视频流URL/Get signed video stream URL](https://docs.tikhub.io/419083092e0.md): # [中文]
+- YouTube-Web-V2-API [获取视频字幕/Get video captions](https://docs.tikhub.io/431829301e0.md): # [中文]
+- YouTube-Web-V2-API [获取视频字幕 V2/Get video captions V2](https://docs.tikhub.io/458666872e0.md): # [中文]
+- YouTube-Web-V2-API [获取视频相似内容/Get related videos](https://docs.tikhub.io/419083093e0.md): # [中文]
+- YouTube-Web-V2-API [获取频道短视频列表/Get channel shorts](https://docs.tikhub.io/419083094e0.md): # [中文]
+- YouTube-Web-V2-API [获取搜索推荐词/Get search suggestions](https://docs.tikhub.io/419083095e0.md): # [中文]
+- YouTube-Web-V2-API [搜索频道/Search channels](https://docs.tikhub.io/419083096e0.md): # [中文]
+- YouTube-Web-V2-API [获取频道帖子列表/Get channel community posts](https://docs.tikhub.io/440187732e0.md): # [中文]
+- YouTube-Web-V2-API [获取帖子详情/Get post detail](https://docs.tikhub.io/440187733e0.md): # [中文]
+- YouTube-Web-V2-API [获取帖子评论/Get post comments](https://docs.tikhub.io/440187734e0.md): # [中文]
+- YouTube-Web-V2-API [获取帖子评论回复/Get post comment replies](https://docs.tikhub.io/440187735e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP首页推荐内容/Fetch Reddit APP Home Feed](https://docs.tikhub.io/369454676e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP流行推荐内容/Fetch Reddit APP Popular Feed](https://docs.tikhub.io/369454677e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP游戏推荐内容/Fetch Reddit APP Games Feed](https://docs.tikhub.io/369454678e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP资讯推荐内容/Fetch Reddit APP News Feed](https://docs.tikhub.io/369454679e0.md): # [中文]
+- Reddit-APP-API [获取单个Reddit帖子详情/Fetch Single Reddit Post Details](https://docs.tikhub.io/369454680e0.md): # [中文]
+- Reddit-APP-API [批量获取Reddit帖子详情(最多5条)/Fetch Reddit Post Details in Batch (Max 5)](https://docs.tikhub.io/400217401e0.md): # [中文]
+- Reddit-APP-API [大批量获取Reddit帖子详情(最多30条)/Fetch Reddit Post Details in Large Batch (Max 30)](https://docs.tikhub.io/400217402e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP帖子评论/Fetch Reddit APP Post Comments](https://docs.tikhub.io/369454681e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP评论回复(二级评论)/Fetch Reddit APP Comment Replies (Sub-comments)](https://docs.tikhub.io/411145963e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP版块规则样式信息/Fetch Reddit APP Subreddit Rules and Style Info](https://docs.tikhub.io/369454682e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP版块帖子频道信息/Fetch Reddit APP Subreddit Post Channels](https://docs.tikhub.io/369454683e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP版块信息/Fetch Reddit APP Subreddit Info](https://docs.tikhub.io/369454684e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP版块设置/Fetch Reddit APP Subreddit Settings](https://docs.tikhub.io/369454685e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP搜索自动补全建议/Fetch Reddit APP Search Typeahead Suggestions](https://docs.tikhub.io/369454686e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP动态搜索结果/Fetch Reddit APP Dynamic Search Results](https://docs.tikhub.io/369454687e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP社区亮点/Fetch Reddit APP Community Highlights](https://docs.tikhub.io/369454688e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP今日热门搜索/Fetch Reddit APP Trending Searches](https://docs.tikhub.io/369454689e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP用户资料信息/Fetch Reddit APP User Profile](https://docs.tikhub.io/369454690e0.md): # [中文]
+- Reddit-APP-API [获取用户活跃的社区列表/Fetch User's Active Subreddits](https://docs.tikhub.io/369454691e0.md): # [中文]
+- Reddit-APP-API [获取用户评论列表/Fetch User Comments](https://docs.tikhub.io/369454692e0.md): # [中文]
+- Reddit-APP-API [获取用户发布的帖子列表/Fetch User Posts](https://docs.tikhub.io/369454693e0.md): # [中文]
+- Reddit-APP-API [获取Reddit APP版块Feed内容/Fetch Reddit APP Subreddit Feed](https://docs.tikhub.io/369454694e0.md): # [中文]
+- Reddit-APP-API [检查版块是否静音/Check if Subreddit is Muted](https://docs.tikhub.io/369454695e0.md): # [中文]
+- Reddit-APP-API [获取用户公开奖杯/Fetch User Public Trophies](https://docs.tikhub.io/369454696e0.md): # [中文]
+- Instagram-V1-API [Shortcode转Media ID/Convert shortcode to media ID](https://docs.tikhub.io/387337777e0.md): # [中文]
+- Instagram-V1-API [Media ID转Shortcode/Convert media ID to shortcode](https://docs.tikhub.io/387337778e0.md): # [中文]
+- Instagram-V1-API [用户ID转用户信息/Get user info by user ID](https://docs.tikhub.io/387337779e0.md): # [中文]
+- Instagram-V1-API [根据用户名获取用户数据/Get user data by username](https://docs.tikhub.io/387337780e0.md): # [中文]
+- Instagram-V1-API [根据用户名获取用户数据V2/Get user data by username V2](https://docs.tikhub.io/387337781e0.md): # [中文]
+- Instagram-V1-API [根据用户名获取用户数据V3/Get user data by username V3](https://docs.tikhub.io/387337782e0.md): # [中文]
+- Instagram-V1-API [根据用户ID获取用户数据/Get user data by user ID](https://docs.tikhub.io/387337783e0.md): # [中文]
+- Instagram-V1-API [根据用户ID获取用户数据V2/Get user data by user ID V2](https://docs.tikhub.io/387337784e0.md): # [中文]
+- Instagram-V1-API [获取用户的About信息/Get user about info](https://docs.tikhub.io/387337785e0.md): # [中文]
+- Instagram-V1-API [获取用户帖子列表/Get user posts list](https://docs.tikhub.io/387337786e0.md): # [中文]
+- Instagram-V1-API [获取用户帖子列表V2/Get user posts list V2](https://docs.tikhub.io/387337787e0.md): # [中文]
+- Instagram-V1-API [获取用户Reels列表/Get user Reels list](https://docs.tikhub.io/387337788e0.md): # [中文]
+- Instagram-V1-API [获取用户转发列表/Get user reposts list](https://docs.tikhub.io/387337789e0.md): # [中文]
+- Instagram-V1-API [获取用户被标记的帖子/Get user tagged posts](https://docs.tikhub.io/387337790e0.md): # [中文]
+- Instagram-V1-API [获取相关用户推荐/Get related profiles](https://docs.tikhub.io/387337791e0.md): # [中文]
+- Instagram-V1-API [搜索用户/话题/地点/Search users/hashtags/places](https://docs.tikhub.io/387337792e0.md): # [中文]
+- Instagram-V1-API [通过URL获取帖子详情/Get post by URL](https://docs.tikhub.io/387337793e0.md): # [中文]
+- Instagram-V1-API [通过ID获取帖子详情/Get post by ID](https://docs.tikhub.io/387337794e0.md): # [中文]
+- Instagram-V1-API [通过URL获取帖子详情 V2/Get post by URL V2](https://docs.tikhub.io/394647649e0.md): # [中文]
+- Instagram-V1-API [获取帖子评论列表V2/Get post comments V2](https://docs.tikhub.io/387337795e0.md): # [中文]
+- Instagram-V1-API [获取评论的子评论列表/Get comment replies](https://docs.tikhub.io/387337796e0.md): # [中文]
+- Instagram-V1-API [获取使用特定音乐的帖子/Get posts using specific music](https://docs.tikhub.io/387337797e0.md): # [中文]
+- Instagram-V1-API [获取话题标签下的帖子/Get posts by hashtag](https://docs.tikhub.io/387337798e0.md): # [中文]
+- Instagram-V1-API [获取地点信息/Get location info](https://docs.tikhub.io/387337799e0.md): # [中文]
+- Instagram-V1-API [获取地点下的帖子/Get posts by location](https://docs.tikhub.io/387337800e0.md): # [中文]
+- Instagram-V1-API [获取国家城市列表/Get cities by country](https://docs.tikhub.io/387337801e0.md): # [中文]
+- Instagram-V1-API [获取城市地点列表/Get locations by city](https://docs.tikhub.io/387337802e0.md): # [中文]
+- Instagram-V1-API [获取探索页面分类/Get explore page sections](https://docs.tikhub.io/387337803e0.md): # [中文]
+- Instagram-V1-API [获取分类下的帖子/Get posts by section](https://docs.tikhub.io/387337804e0.md): # [中文]
+- Instagram-V2-API [Shortcode转Media ID/Convert shortcode to media ID](https://docs.tikhub.io/387337805e0.md): # [中文]
+- Instagram-V2-API [Media ID转Shortcode/Convert media ID to shortcode](https://docs.tikhub.io/387337806e0.md): # [中文]
+- Instagram-V2-API [用户ID转用户信息/Get user info by user ID](https://docs.tikhub.io/387337807e0.md): # [中文]
+- Instagram-V2-API [获取用户信息/Get user info](https://docs.tikhub.io/387337808e0.md): # [中文]
+- Instagram-V2-API [获取用户帖子/Get user posts](https://docs.tikhub.io/387337809e0.md): # [中文]
+- Instagram-V2-API [获取用户Reels/Get user reels](https://docs.tikhub.io/387337810e0.md): # [中文]
+- Instagram-V2-API [获取用户粉丝/Get user followers](https://docs.tikhub.io/387337811e0.md): # [中文]
+- Instagram-V2-API [获取用户关注/Get user following](https://docs.tikhub.io/387337812e0.md): # [中文]
+- Instagram-V2-API [获取用户故事/Get user stories](https://docs.tikhub.io/387337813e0.md): # [中文]
+- Instagram-V2-API [获取用户精选/Get user highlights](https://docs.tikhub.io/387337814e0.md): # [中文]
+- Instagram-V2-API [获取精选故事详情/Get highlight stories](https://docs.tikhub.io/387337815e0.md): # [中文]
+- Instagram-V2-API [获取用户被标记的帖子/Get user tagged posts](https://docs.tikhub.io/387337816e0.md): # [中文]
+- Instagram-V2-API [获取相似用户/Get similar users](https://docs.tikhub.io/387337817e0.md): # [中文]
+- Instagram-V2-API [综合搜索/General search](https://docs.tikhub.io/409380724e0.md): # [中文]
+- Instagram-V2-API [搜索用户/Search users](https://docs.tikhub.io/387337818e0.md): # [中文]
+- Instagram-V2-API [搜索Reels/Search reels](https://docs.tikhub.io/387337819e0.md): # [中文]
+- Instagram-V2-API [搜索音乐/Search music](https://docs.tikhub.io/387337820e0.md): # [中文]
+- Instagram-V2-API [搜索话题标签/Search hashtags](https://docs.tikhub.io/387337821e0.md): # [中文]
+- Instagram-V2-API [搜索地点/Search locations](https://docs.tikhub.io/387337822e0.md): # [中文]
+- Instagram-V2-API [根据坐标搜索地点/Search locations by coordinates](https://docs.tikhub.io/387337823e0.md): # [中文]
+- Instagram-V2-API [获取帖子详情/Get post info](https://docs.tikhub.io/387337824e0.md): # [中文]
+- Instagram-V2-API [获取帖子点赞列表/Get post likes](https://docs.tikhub.io/387337825e0.md): # [中文]
+- Instagram-V2-API [获取帖子评论/Get post comments](https://docs.tikhub.io/387337826e0.md): # [中文]
+- Instagram-V2-API [获取评论回复/Get comment replies](https://docs.tikhub.io/387337827e0.md): # [中文]
+- Instagram-V2-API [获取音乐帖子/Get music posts](https://docs.tikhub.io/387337828e0.md): # [中文]
+- Instagram-V2-API [获取地点帖子/Get location posts](https://docs.tikhub.io/387337829e0.md): # [中文]
+- Instagram-V2-API [获取话题帖子/Get hashtag posts](https://docs.tikhub.io/387337830e0.md): # [中文]
+- Instagram-V3-API [搜索用户/Search users](https://docs.tikhub.io/419083055e0.md): # [中文]
+- Instagram-V3-API [搜索话题标签/Search hashtags](https://docs.tikhub.io/419083056e0.md): # [中文]
+- Instagram-V3-API [搜索地点/Search places](https://docs.tikhub.io/419083057e0.md): # [中文]
+- Instagram-V3-API [综合搜索(支持分页)/General search (with pagination)](https://docs.tikhub.io/419083058e0.md): # [中文]
+- Instagram-V3-API [通过用户名获取用户ID/Get user ID by username](https://docs.tikhub.io/431829295e0.md): # [中文]
+- Instagram-V3-API [获取用户信息/Get user profile](https://docs.tikhub.io/419083059e0.md): # [中文]
+- Instagram-V3-API [获取用户短详情/Get user brief info](https://docs.tikhub.io/419083060e0.md): # [中文]
+- Instagram-V3-API [获取用户帖子列表/Get user posts](https://docs.tikhub.io/419083061e0.md): # [中文]
+- Instagram-V3-API [获取用户被标记的帖子/Get user tagged posts](https://docs.tikhub.io/419083062e0.md): # [中文]
+- Instagram-V3-API [获取用户Reels列表/Get user reels](https://docs.tikhub.io/419083063e0.md): # [中文]
+- Instagram-V3-API [获取用户精选Highlights列表/Get user highlights](https://docs.tikhub.io/419083064e0.md): # [中文]
+- Instagram-V3-API [获取Highlight精选详情/Get highlight stories](https://docs.tikhub.io/419083065e0.md): # [中文]
+- Instagram-V3-API [获取用户账户简介/Get user about info](https://docs.tikhub.io/419083066e0.md): # [中文]
+- Instagram-V3-API [获取用户曾用用户名/Get user former usernames](https://docs.tikhub.io/425942864e0.md): # [中文]
+- Instagram-V3-API [获取用户Stories(快拍)/Get user stories](https://docs.tikhub.io/419083067e0.md): # [中文]
+- Instagram-V3-API [获取Reels推荐列表/Get recommended Reels feed](https://docs.tikhub.io/419083068e0.md): # [中文]
+- Instagram-V3-API [获取帖子详情/Get post info (media_id or URL)](https://docs.tikhub.io/419083069e0.md): # [中文]
+- Instagram-V3-API [获取帖子详情(code)/Get post info by shortcode](https://docs.tikhub.io/419083070e0.md): # [中文]
+- Instagram-V3-API [获取帖子评论/Get post comments](https://docs.tikhub.io/419083071e0.md): # [中文]
+- Instagram-V3-API [获取评论的子评论/回复/Get comment replies](https://docs.tikhub.io/419083072e0.md): # [中文]
+- Instagram-V3-API [获取帖子oEmbed内嵌信息/Get post oEmbed info](https://docs.tikhub.io/419083073e0.md): # [中文]
+- Instagram-V3-API [翻译评论/帖子文本/Translate comment or caption](https://docs.tikhub.io/419083074e0.md): # [中文]
+- Instagram-V3-API [批量翻译评论/Bulk translate comments](https://docs.tikhub.io/419083075e0.md): # [中文]
+- Instagram-V3-API [获取探索页推荐帖子/Get explore feed](https://docs.tikhub.io/419083076e0.md): # [中文]
+- Instagram-V3-API [获取用户关注列表/Get user following list](https://docs.tikhub.io/419083077e0.md): # [中文]
+- Instagram-V3-API [获取用户粉丝列表/Get user followers list](https://docs.tikhub.io/419083078e0.md): # [中文]
+- Instagram-V3-API [获取地点详情/Get location info](https://docs.tikhub.io/419083079e0.md): # [中文]
+- Instagram-V3-API [获取地点相关帖子/Get location posts](https://docs.tikhub.io/419083080e0.md): # [中文]
+- Instagram-V3-API [获取地点附近内容/Get nearby location content](https://docs.tikhub.io/431829296e0.md): # [中文]
+- Instagram-V3-API [短码转媒体ID/Convert shortcode to media ID](https://docs.tikhub.io/431829297e0.md): # [中文]
+- Instagram-V3-API [媒体ID转短码/Convert media ID to shortcode](https://docs.tikhub.io/433888417e0.md): # [中文]
+- Instagram-V3-API [从URL提取短码/Extract shortcode from URL](https://docs.tikhub.io/431829298e0.md): # [中文]
+- Threads-Web-API [获取用户信息/Get user info](https://docs.tikhub.io/381269432e0.md): # [中文]
+- Threads-Web-API [根据用户ID获取用户信息/Get user info by ID](https://docs.tikhub.io/381269433e0.md): # [中文]
+- Threads-Web-API [获取用户帖子列表/Get user posts](https://docs.tikhub.io/381269434e0.md): # [中文]
+- Threads-Web-API [获取用户转发列表/Get user reposts](https://docs.tikhub.io/381269435e0.md): # [中文]
+- Threads-Web-API [获取用户回复列表/Get user replies](https://docs.tikhub.io/381269436e0.md): # [中文]
+- Threads-Web-API [获取帖子详情/Get post detail](https://docs.tikhub.io/381269438e0.md): # [中文]
+- Threads-Web-API [获取帖子详情 V2(支持链接)/Get post detail V2(supports URL)](https://docs.tikhub.io/381269439e0.md): # [中文]
+- Threads-Web-API [获取帖子评论/Get post comments](https://docs.tikhub.io/381269440e0.md): # [中文]
+- Threads-Web-API [搜索热门内容/Search top content](https://docs.tikhub.io/381269441e0.md): # [中文]
+- Threads-Web-API [搜索最新内容/Search recent content](https://docs.tikhub.io/381269442e0.md): # [中文]
+- Threads-Web-API [搜索用户档案/Search profiles](https://docs.tikhub.io/381269443e0.md): # [中文]
+- Twitter-Web-API [获取单个推文数据/Get single tweet data](https://docs.tikhub.io/191321709e0.md): # [中文]
+- Twitter-Web-API [获取用户资料/Get user profile](https://docs.tikhub.io/191321710e0.md): # [中文]
+- Twitter-Web-API [获取用户发帖/Get user post](https://docs.tikhub.io/191321711e0.md): # [中文]
+- Twitter-Web-API [搜索/Search](https://docs.tikhub.io/215701673e0.md): # [中文]
+- Twitter-Web-API [获取评论/Get comments](https://docs.tikhub.io/215701674e0.md): # [中文]
+- Twitter-Web-API [获取最新的推文评论/Get the latest tweet comments](https://docs.tikhub.io/219522631e0.md): # [中文]
+- Twitter-Web-API [获取用户推文回复/Get user tweet replies](https://docs.tikhub.io/215701675e0.md): # [中文]
+- Twitter-Web-API [获取用户高光推文/Get user highlights tweets](https://docs.tikhub.io/215701676e0.md): # [中文]
+- Twitter-Web-API [获取用户媒体/Get user media](https://docs.tikhub.io/215701677e0.md): # [中文]
+- Twitter-Web-API [转推用户列表/ReTweet User list](https://docs.tikhub.io/219522632e0.md): # [中文]
+- Twitter-Web-API [趋势/Trending](https://docs.tikhub.io/219522633e0.md): # [中文]
+- Twitter-Web-API [用户关注/User Followings](https://docs.tikhub.io/219522634e0.md): # [中文]
+- Twitter-Web-API [用户粉丝/User Followers](https://docs.tikhub.io/219522635e0.md): # [中文]
+- LinkedIn-Web-API [获取用户资料/Get user profile](https://docs.tikhub.io/384533450e0.md): # [中文]
+- LinkedIn-Web-API [获取用户帖子/Get user posts](https://docs.tikhub.io/384533451e0.md): # [中文]
+- LinkedIn-Web-API [获取用户评论/Get user comments](https://docs.tikhub.io/384533452e0.md): # [中文]
+- LinkedIn-Web-API [获取用户联系信息/Get user contact information](https://docs.tikhub.io/384533453e0.md): # [中文]
+- LinkedIn-Web-API [获取用户推荐信/Get user recommendations](https://docs.tikhub.io/384533454e0.md): # [中文]
+- LinkedIn-Web-API [获取用户视频/Get user videos](https://docs.tikhub.io/384533455e0.md): # [中文]
+- LinkedIn-Web-API [获取用户图片/Get user images](https://docs.tikhub.io/384533456e0.md): # [中文]
+- LinkedIn-Web-API [获取公司资料/Get company profile](https://docs.tikhub.io/384533457e0.md): # [中文]
+- LinkedIn-Web-API [获取公司员工/Get company people](https://docs.tikhub.io/384533458e0.md): # [中文]
+- LinkedIn-Web-API [获取公司帖子/Get company posts](https://docs.tikhub.io/384533459e0.md): # [中文]
+- LinkedIn-Web-API [获取公司职位/Get company jobs](https://docs.tikhub.io/384533460e0.md): # [中文]
+- LinkedIn-Web-API [获取公司职位数量/Get company job count](https://docs.tikhub.io/384533461e0.md): # [中文]
+- LinkedIn-Web-API [获取用户简介/Get user about](https://docs.tikhub.io/384533462e0.md): # [中文]
+- LinkedIn-Web-API [获取用户粉丝和连接数/Get user follower and connection](https://docs.tikhub.io/384533463e0.md): # [中文]
+- LinkedIn-Web-API [获取用户工作经历/Get user experience](https://docs.tikhub.io/384533464e0.md): # [中文]
+- LinkedIn-Web-API [获取用户技能/Get user skills](https://docs.tikhub.io/384533465e0.md): # [中文]
+- LinkedIn-Web-API [获取用户教育背景/Get user educations](https://docs.tikhub.io/384533466e0.md): # [中文]
+- LinkedIn-Web-API [获取用户出版物/Get user publications](https://docs.tikhub.io/384533467e0.md): # [中文]
+- LinkedIn-Web-API [获取用户认证/Get user certifications](https://docs.tikhub.io/384533468e0.md): # [中文]
+- LinkedIn-Web-API [获取用户荣誉奖项/Get user honors](https://docs.tikhub.io/384533469e0.md): # [中文]
+- LinkedIn-Web-API [获取用户感兴趣的群组/Get user interests groups](https://docs.tikhub.io/384533470e0.md): # [中文]
+- LinkedIn-Web-API [获取用户感兴趣的公司/Get user interests companies](https://docs.tikhub.io/384533471e0.md): # [中文]
+- LinkedIn-Web-API [获取职位详情/Get job detail](https://docs.tikhub.io/384533472e0.md): # [中文]
+- LinkedIn-Web-API [搜索职位/Search jobs](https://docs.tikhub.io/384533473e0.md): # [中文]
+- LinkedIn-Web-API [搜索用户/Search people](https://docs.tikhub.io/384533474e0.md): # [中文]
+- LinkedIn-Web-API [获取用户点赞反应/Get user reactions](https://docs.tikhub.io/458666873e0.md): # [中文]
+- LinkedIn-Web-API [获取用户志愿者经历/Get user volunteers](https://docs.tikhub.io/458666874e0.md): # [中文]
+- LinkedIn-Web-API [获取公司关联页面/Get company affiliated pages](https://docs.tikhub.io/458666875e0.md): # [中文]
+- LinkedIn-Web-API [获取公司关联成员洞察/Get company associated member insights](https://docs.tikhub.io/458666876e0.md): # [中文]
+- LinkedIn-Web-API [获取帖子详情/Get post detail](https://docs.tikhub.io/458666877e0.md): # [中文]
+- LinkedIn-Web-API [获取帖子评论/Get post comments](https://docs.tikhub.io/458666878e0.md): # [中文]
+- LinkedIn-Web-API [获取帖子点赞反应/Get post reactions](https://docs.tikhub.io/458666879e0.md): # [中文]
+- LinkedIn-Web-API [获取帖子转发/Get post reposts](https://docs.tikhub.io/458666880e0.md): # [中文]
+- LinkedIn-Web-API [获取评论回复/Get comment replies](https://docs.tikhub.io/458666881e0.md): # [中文]
+- LinkedIn-Web-API [搜索帖子/Search posts](https://docs.tikhub.io/458666882e0.md): # [中文]
+- LinkedIn-Web-API [搜索地理位置/Search location](https://docs.tikhub.io/458666883e0.md): # [中文]
+- LinkedIn-Web-API [搜索学校/Search schools](https://docs.tikhub.io/458666884e0.md): # [中文]
+- LinkedIn-Web-API [搜索行业建议/Search industry suggestions](https://docs.tikhub.io/458666885e0.md): # [中文]
+- LinkedIn-Web-API [获取群组信息/Get group info](https://docs.tikhub.io/458666886e0.md): # [中文]
+- LinkedIn-Web-API [获取群组帖子/Get group posts](https://docs.tikhub.io/458666887e0.md): # [中文]
+- LinkedIn-Web-API [搜索广告/Search ads (Ad Library)](https://docs.tikhub.io/458666888e0.md): # [中文]
+- LinkedIn-Web-API [获取广告详情/Get ad detail](https://docs.tikhub.io/458666889e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户主页基础信息(可选附带子节)/Get user profile (optional sub-sections)](https://docs.tikhub.io/452347395e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户帖子(动态标签)/Get user posts](https://docs.tikhub.io/452347396e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户评论(在他人帖子下的评论)/Get user comments](https://docs.tikhub.io/452347397e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户公开联系信息/Get contact info](https://docs.tikhub.io/452347398e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户推荐信/Get recommendations](https://docs.tikhub.io/452347399e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户视频帖子/Get user videos](https://docs.tikhub.io/452347400e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户图片帖子/Get user images](https://docs.tikhub.io/452347401e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户简介摘要/Get user bio](https://docs.tikhub.io/452347402e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户粉丝/连接数/Get follower & connection count](https://docs.tikhub.io/452347403e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户主页全部卡片原始结构/Get full profile cards](https://docs.tikhub.io/452347404e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户工作经历/Get experiences](https://docs.tikhub.io/452347405e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户技能/Get skills](https://docs.tikhub.io/452347406e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户教育背景/Get educations](https://docs.tikhub.io/452347407e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户出版物/Get publications](https://docs.tikhub.io/452347408e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户认证/Get certifications](https://docs.tikhub.io/452347409e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户荣誉奖项/Get honors](https://docs.tikhub.io/452347410e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户关注的群组/Get followed groups](https://docs.tikhub.io/452347411e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户关注的公司/Get followed companies](https://docs.tikhub.io/452347412e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户主页顶部卡片/Get profile top card](https://docs.tikhub.io/452347413e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户主页顶部卡片补充信息/Get top card supplementary](https://docs.tikhub.io/452347414e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取用户近期动态聚合/Get recent activity summary](https://docs.tikhub.io/452347415e0.md): # [中文]
+- LinkedIn-Web-V2-API [发现:"基于公司 X"的相关推荐/Discovery relevant to company](https://docs.tikhub.io/452347416e0.md): # [中文]
+- LinkedIn-Web-V2-API [发现:"基于用户 X"的相关推荐/Discovery relevant to user](https://docs.tikhub.io/452347417e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取公司主页资料/Get company profile](https://docs.tikhub.io/452347418e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取公司员工列表/Get employees](https://docs.tikhub.io/452347419e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取公司主页帖子流/Get company posts](https://docs.tikhub.io/452347420e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取公司在招职位列表/Get company jobs](https://docs.tikhub.io/452347421e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取公司在招职位总数/Get job count](https://docs.tikhub.io/452347422e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取相似公司(People also viewed)/Get similar companies](https://docs.tikhub.io/452347423e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取公司竞争对手/Get competitors](https://docs.tikhub.io/452347424e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取上市公司股价/Get stock quote](https://docs.tikhub.io/452347425e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取公司主页 CTA 按钮配置/Get CTA buttons](https://docs.tikhub.io/452347426e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取公司员工数量范围(各 segment)/Get employee count by segment](https://docs.tikhub.io/452347427e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取公司全部办公地点(按地理分组)/Get grouped locations](https://docs.tikhub.io/452347428e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取单条帖子详情(按 post URN)/Get post detail by URN](https://docs.tikhub.io/452347429e0.md): # [中文]
+- LinkedIn-Web-V2-API [按 URL slug 获取帖子/Get post by URL slug](https://docs.tikhub.io/452347430e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取帖子顶层评论/Get post top-level comments](https://docs.tikhub.io/452347431e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取评论的回复/Get comment replies](https://docs.tikhub.io/452347432e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取帖子点赞/反应人列表/Get post reactions](https://docs.tikhub.io/452347433e0.md): # [中文]
+- LinkedIn-Web-V2-API [按 hashtag 获取话题动态流/Get hashtag feed](https://docs.tikhub.io/452347434e0.md): # [中文]
+- LinkedIn-Web-V2-API [获取职位详情/Get job detail](https://docs.tikhub.io/452347435e0.md): # [中文]
+- LinkedIn-Web-V2-API [搜索用户/Search users](https://docs.tikhub.io/452347436e0.md): # [中文]
+- LinkedIn-Web-V2-API [搜索职位/Search jobs](https://docs.tikhub.io/452347437e0.md): # [中文]
+- Kuaishou-App-API [视频详情V1/Video detailsV1](https://docs.tikhub.io/412833494e0.md): # [中文]
+- Kuaishou-App-API [快手批量视频查询接口/Kuaishou batch video query API](https://docs.tikhub.io/412833495e0.md): # [中文]
+- Kuaishou-App-API [根据链接获取单个作品数据/Fetch single video by URL](https://docs.tikhub.io/412833496e0.md): # [中文]
+- Kuaishou-App-API [获取单个作品评论数据/Get single video comment data](https://docs.tikhub.io/412833497e0.md): # [中文]
+- Kuaishou-App-API [获取单个用户数据V2/Get single user data V2](https://docs.tikhub.io/412833498e0.md): # [中文]
+- Kuaishou-App-API [获取用户直播信息/Get user live info](https://docs.tikhub.io/412833499e0.md): # [中文]
+- Kuaishou-App-API [获取用户热门作品数据/Get user hot post data](https://docs.tikhub.io/412833500e0.md): # [中文]
+- Kuaishou-App-API [用户视频列表V2/User video list V2](https://docs.tikhub.io/412833501e0.md): # [中文]
+- Kuaishou-App-API [综合搜索/Comprehensive search](https://docs.tikhub.io/412833502e0.md): # [中文]
+- Kuaishou-App-API [搜索视频V2/Search video V2](https://docs.tikhub.io/412833503e0.md): # [中文]
+- Kuaishou-App-API [搜索用户V2/Search user V2](https://docs.tikhub.io/412833504e0.md): # [中文]
+- Kuaishou-App-API [快手热榜分类/Kuaishou hot categories](https://docs.tikhub.io/412833505e0.md): # [中文]
+- Kuaishou-App-API [快手热榜详情/Kuaishou hot board detail](https://docs.tikhub.io/412833506e0.md): # [中文]
+- Kuaishou-App-API [快手热搜人物榜单/Kuaishou hot search person board](https://docs.tikhub.io/412833507e0.md): # [中文]
+- Kuaishou-App-API [快手直播榜单/Kuaishou live top list](https://docs.tikhub.io/412833508e0.md): # [中文]
+- Kuaishou-App-API [快手购物榜单/Kuaishou shopping top list](https://docs.tikhub.io/412833509e0.md): # [中文]
+- Kuaishou-App-API [快手品牌榜单/Kuaishou brand top list](https://docs.tikhub.io/412833510e0.md): # [中文]
+- Kuaishou-App-API [生成快手分享链接/Generate Kuaishou share link](https://docs.tikhub.io/412833511e0.md): # [中文]
+- Kuaishou-App-API [获取魔法表情使用人数/Fetch magic face usage count](https://docs.tikhub.io/412833512e0.md): # [中文]
+- Kuaishou-App-API [获取魔法表情热门视频/Fetch magic face hot videos](https://docs.tikhub.io/412833513e0.md): # [中文]
+- Kuaishou-Web-API [获取单个作品数据 V1/Get single video data V1](https://docs.tikhub.io/336972173e0.md): # [中文]
+- Kuaishou-Web-API [获取单个作品数据 V2/Get single video data V2](https://docs.tikhub.io/188317970e0.md): # [中文]
+- Kuaishou-Web-API [链接获取作品数据/Fetch single video by URL](https://docs.tikhub.io/188317971e0.md): # [中文]
+- Kuaishou-Web-API [获取作品一级评论/Fetch video comments](https://docs.tikhub.io/336972174e0.md): # [中文]
+- Kuaishou-Web-API [获取作品二级评论/Fetch video sub comments](https://docs.tikhub.io/343506804e0.md): # [中文]
+- Kuaishou-Web-API [生成分享短连接/Generate share short URL](https://docs.tikhub.io/343506805e0.md): # [中文]
+- Kuaishou-Web-API [获取用户信息/Fetch user info](https://docs.tikhub.io/343506806e0.md): # [中文]
+- Kuaishou-Web-API [获取用户发布作品/Fetch user posts](https://docs.tikhub.io/343506807e0.md): # [中文]
+- Kuaishou-Web-API [获取用户直播回放/Fetch user live replay](https://docs.tikhub.io/343506808e0.md): # [中文]
+- Kuaishou-Web-API [获取用户收藏作品/Fetch user collect](https://docs.tikhub.io/343506809e0.md): # [中文]
+- Kuaishou-Web-API [获取快手热榜 V1/Fetch Kuaishou Hot List V1](https://docs.tikhub.io/343542241e0.md): # [中文]
+- Kuaishou-Web-API [获取快手热榜 V2/Fetch Kuaishou Hot List V2](https://docs.tikhub.io/343542242e0.md): # [中文]
+- Kuaishou-Web-API [获取用户ID/Fetch user ID](https://docs.tikhub.io/368578935e0.md): # [中文]
+- Toutiao-Web-API [获取指定文章的信息/Get information of specified article](https://docs.tikhub.io/246997250e0.md): # [中文]
+- Toutiao-Web-API [获取指定视频的信息/Get information of specified video](https://docs.tikhub.io/246997251e0.md): # [中文]
+- Toutiao-App-API [获取指定文章的信息/Get information of specified article](https://docs.tikhub.io/251380586e0.md): # [中文]
+- Toutiao-App-API [获取指定视频的信息/Get information of specified video](https://docs.tikhub.io/251380587e0.md): # [中文]
+- Toutiao-App-API [获取指定作品的评论/Get comments of specified post](https://docs.tikhub.io/251380588e0.md): # [中文]
+- Toutiao-App-API [获取指定用户的信息/Get information of specified user](https://docs.tikhub.io/251380589e0.md): # [中文]
+- Toutiao-App-API [从头条用户主页获取用户user_id/Get user_id from user profile](https://docs.tikhub.io/251380590e0.md): # [中文]
+- Zhihu-Web-API [获取知乎专栏文章列表/Get Zhihu Column Articles](https://docs.tikhub.io/262614069e0.md): # [中文]
+- Zhihu-Web-API [获取知乎专栏文章详情/Get Zhihu Column Article Detail](https://docs.tikhub.io/262614070e0.md): # [中文]
+- Zhihu-Web-API [获取知乎相似专栏推荐/Get Zhihu Similar Column Recommend](https://docs.tikhub.io/262614071e0.md): # [中文]
+- Zhihu-Web-API [获取知乎专栏文章互动关系/Get Zhihu Column Article Relationship](https://docs.tikhub.io/262614072e0.md): # [中文]
+- Zhihu-Web-API [获取知乎专栏评论区配置/Get Zhihu Column Comment Config](https://docs.tikhub.io/262614073e0.md): # [中文]
+- Zhihu-Web-API [获取知乎首页推荐/Get Zhihu Hot Recommend](https://docs.tikhub.io/262614074e0.md): # [中文]
+- Zhihu-Web-API [获取知乎首页热榜/Get Zhihu Hot List](https://docs.tikhub.io/262614075e0.md): # [中文]
+- Zhihu-Web-API [获取知乎首页视频榜/Get Zhihu Video List](https://docs.tikhub.io/262614076e0.md): # [中文]
+- Zhihu-Web-API [获取知乎文章搜索V3/Get Zhihu Article Search V3](https://docs.tikhub.io/262614077e0.md): # [中文]
+- Zhihu-Web-API [获取知乎用户搜索V3/Get Zhihu User Search V3](https://docs.tikhub.io/262614078e0.md): # [中文]
+- Zhihu-Web-API [获取知乎话题搜索V3/Get Zhihu Topic Search V3](https://docs.tikhub.io/262614079e0.md): # [中文]
+- Zhihu-Web-API [获取知乎论文搜索V3/Get Zhihu Scholar Search V3](https://docs.tikhub.io/262614080e0.md): # [中文]
+- Zhihu-Web-API [获取知乎AI搜索/Get Zhihu AI Search](https://docs.tikhub.io/262614081e0.md): # [中文]
+- Zhihu-Web-API [获取知乎AI搜索结果/Get Zhihu AI Search Result](https://docs.tikhub.io/262614082e0.md): # [中文]
+- Zhihu-Web-API [获取知乎视频搜索V3/Get Zhihu Video Search V3](https://docs.tikhub.io/262614083e0.md): # [中文]
+- Zhihu-Web-API [获取知乎专栏搜索V3/Get Zhihu Column Search V3](https://docs.tikhub.io/262614084e0.md): # [中文]
+- Zhihu-Web-API [获取知乎盐选内容搜索V3/Get Zhihu Salt Search V3](https://docs.tikhub.io/262614085e0.md): # [中文]
+- Zhihu-Web-API [获取知乎电子书搜索V3/Get Zhihu Ebook Search V3](https://docs.tikhub.io/262614086e0.md): # [中文]
+- Zhihu-Web-API [获取知乎搜索预设词/Get Zhihu Preset Search](https://docs.tikhub.io/262614087e0.md): # [中文]
+- Zhihu-Web-API [获取知乎搜索发现/Get Zhihu Search Recommend](https://docs.tikhub.io/262614088e0.md): # [中文]
+- Zhihu-Web-API [知乎搜索预测词/Get Zhihu Search Suggest](https://docs.tikhub.io/262614089e0.md): # [中文]
+- Zhihu-Web-API [获取知乎评论区V5/Get Zhihu Comment V5](https://docs.tikhub.io/262614090e0.md): # [中文]
+- Zhihu-Web-API [获取知乎子评论区V5/Get Zhihu Sub Comment V5](https://docs.tikhub.io/262614091e0.md): # [中文]
+- Zhihu-Web-API [获取知乎用户信息/Get Zhihu User Info](https://docs.tikhub.io/262614092e0.md): # [中文]
+- Zhihu-Web-API [获取知乎用户关注列表/Get Zhihu User Following](https://docs.tikhub.io/262614093e0.md): # [中文]
+- Zhihu-Web-API [获取知乎用户粉丝列表/Get Zhihu User Followers](https://docs.tikhub.io/262614094e0.md): # [中文]
+- Zhihu-Web-API [获取知乎用户的文章列表/Get Zhihu User Articles](https://docs.tikhub.io/438163230e0.md): # [中文]
+- Zhihu-Web-API [获取知乎用户的被收录文章列表/Get Zhihu User Included Articles](https://docs.tikhub.io/438163231e0.md): # [中文]
+- Zhihu-Web-API [获取知乎用户订阅的专栏/Get Zhihu User Columns](https://docs.tikhub.io/262614095e0.md): # [中文]
+- Zhihu-Web-API [获取知乎用户关注的问题/Get Zhihu User Follow Questions](https://docs.tikhub.io/262614096e0.md): # [中文]
+- Zhihu-Web-API [获取知乎用户关注的收藏/Get Zhihu User Follow Collections](https://docs.tikhub.io/262614097e0.md): # [中文]
+- Zhihu-Web-API [获取知乎用户关注的话题/Get Zhihu User Follow Topics](https://docs.tikhub.io/262614098e0.md): # [中文]
+- Zhihu-Web-API [获取知乎推荐关注列表/Get Zhihu Recommend Followees](https://docs.tikhub.io/262614099e0.md): # [中文]
+- Zhihu-Web-API [获取知乎问题回答列表/Get Zhihu Question Answers](https://docs.tikhub.io/350606794e0.md): # [中文]
+- Temp-Mail-API [Get Temp Email](https://docs.tikhub.io/186826288e0.md): # [中文]
+- Temp-Mail-API [Get Emails](https://docs.tikhub.io/186826289e0.md): # [中文]
+- Temp-Mail-API [Get Email By Id](https://docs.tikhub.io/186826290e0.md): # [中文]
+- Hybrid-Parsing [混合解析单一视频接口/Hybrid parsing single video endpoint](https://docs.tikhub.io/190419377e0.md): # [中文]
+- iOS-Shortcut [用于iOS快捷指令的版本更新信息/Version update information for iOS shortcuts](https://docs.tikhub.io/190419378e0.md): 
+
+## Schemas
+- [ABogusModel](https://docs.tikhub.io/104396393d0.md): 
+- [APIKeyData](https://docs.tikhub.io/104396394d0.md): 
+- [AuthorDiagnosisRequest](https://docs.tikhub.io/208334844d0.md): 
+- [BatchGiftQuery](https://docs.tikhub.io/193515927d0.md): 
+- [Body_fetch_home_feed_api_v1_tiktok_web_fetch_home_feed_post](https://docs.tikhub.io/149803485d0.md): 
+- [Body_fetch_hot_account_list_api_v1_douyin_billboard_fetch_hot_account_list_post](https://docs.tikhub.io/141604094d0.md): 
+- [Body_fetch_hot_calendar_list_api_v1_douyin_billboard_fetch_hot_calendar_list_post](https://docs.tikhub.io/141604095d0.md): 
+- [Body_fetch_hot_total_high_fan_list_api_v1_douyin_billboard_fetch_hot_total_high_fan_list_post](https://docs.tikhub.io/141604096d0.md): 
+- [Body_fetch_hot_total_high_like_list_api_v1_douyin_billboard_fetch_hot_total_high_like_list_post](https://docs.tikhub.io/141604097d0.md): 
+- [Body_fetch_hot_total_high_play_list_api_v1_douyin_billboard_fetch_hot_total_high_play_list_post](https://docs.tikhub.io/141604098d0.md): 
+- [Body_fetch_hot_total_high_search_list_api_v1_douyin_billboard_fetch_hot_total_high_search_list_post](https://docs.tikhub.io/141604099d0.md): 
+- [Body_fetch_hot_total_high_topic_list_api_v1_douyin_billboard_fetch_hot_total_high_topic_list_post](https://docs.tikhub.io/141604100d0.md): 
+- [Body_fetch_hot_total_hot_word_list_api_v1_douyin_billboard_fetch_hot_total_hot_word_list_post](https://docs.tikhub.io/141604101d0.md): 
+- [Body_fetch_hot_total_low_fan_list_api_v1_douyin_billboard_fetch_hot_total_low_fan_list_post](https://docs.tikhub.io/141604102d0.md): 
+- [Body_fetch_hot_total_search_list_api_v1_douyin_billboard_fetch_hot_total_search_list_post](https://docs.tikhub.io/141604103d0.md): 
+- [Body_fetch_hot_total_topic_list_api_v1_douyin_billboard_fetch_hot_total_topic_list_post](https://docs.tikhub.io/141604104d0.md): 
+- [Body_fetch_hot_total_video_list_api_v1_douyin_billboard_fetch_hot_total_video_list_post](https://docs.tikhub.io/141604105d0.md): 
+- [Body_fetch_user_collection_videos_api_v1_douyin_web_fetch_user_collection_videos_post](https://docs.tikhub.io/154916705d0.md): 
+- [Body_fetch_user_collects_api_v1_douyin_web_fetch_user_collects_post](https://docs.tikhub.io/152901998d0.md): 
+- [Body_fetch_user_like_videos_api_v1_douyin_web_fetch_user_like_videos_post](https://docs.tikhub.io/154916706d0.md): 
+- [Body_get_ip_activity_list_api_v1_douyin_xingtu_v2_get_ip_activity_list_post](https://docs.tikhub.io/246705950d0.md): 
+- [Body_get_recommend_for_star_authors_api_v1_douyin_xingtu_v2_get_recommend_for_star_authors_post](https://docs.tikhub.io/246705951d0.md): 
+- [Body_upload_image_api_v1_sora2_upload_image_post](https://docs.tikhub.io/208774120d0.md): 
+- [ChallengePostRequest](https://docs.tikhub.io/143643666d0.md): 
+- [ChallengeSearchV1Request](https://docs.tikhub.io/164136042d0.md): 
+- [ChallengeSearchV2Request](https://docs.tikhub.io/164136043d0.md): 
+- [ChallengeSuggestRequest](https://docs.tikhub.io/164136044d0.md): 
+- [CollectRequest](https://docs.tikhub.io/123167588d0.md): 
+- [CommentSortByAPI](https://docs.tikhub.io/243836103d0.md): 
+- [CreateVideoRequest](https://docs.tikhub.io/208774121d0.md): 
+- [DiscussSearchRequest](https://docs.tikhub.io/164136045d0.md): 
+- [ExperienceSearchRequest](https://docs.tikhub.io/164136046d0.md): 
+- [FetchCommentsRequest](https://docs.tikhub.io/248146383d0.md): 
+- [FetchDefaultSearchRequest](https://docs.tikhub.io/248146384d0.md): 
+- [FetchHomePageRequest](https://docs.tikhub.io/248146385d0.md): 
+- [FetchMultiVideoHighQualityPlayUrlRequest](https://docs.tikhub.io/208774122d0.md): 
+- [FollowRequest](https://docs.tikhub.io/123167589d0.md): 
+- [ForwardRequest](https://docs.tikhub.io/123167590d0.md): 
+- [GeneralSearchV1Request](https://docs.tikhub.io/164136047d0.md): 
+- [GeneralSearchV2Request](https://docs.tikhub.io/164136048d0.md): 
+- [GetAccountHealthRequest](https://docs.tikhub.io/163751483d0.md): 
+- [GetAccountOverviewRequest](https://docs.tikhub.io/163751484d0.md): 
+- [GetCreatorAccountInfoRequest](https://docs.tikhub.io/165063606d0.md): 
+- [GetHomeFeedRequest](https://docs.tikhub.io/151023515d0.md): 
+- [GetLiveOverviewRequest](https://docs.tikhub.io/163751485d0.md): 
+- [GetNoteInfoV5Request](https://docs.tikhub.io/143643667d0.md): 
+- [GetProductListRequest](https://docs.tikhub.io/163751486d0.md): 
+- [GetProductRelatedVideosRequest](https://docs.tikhub.io/165063607d0.md): 
+- [GetShowcaseProductListRequest](https://docs.tikhub.io/165063608d0.md): 
+- [GetVideoAssociatedProductListRequest](https://docs.tikhub.io/165063609d0.md): 
+- [GetVideoAudienceStatsRequest](https://docs.tikhub.io/165063610d0.md): 
+- [GetVideoDetailedStatsRequest](https://docs.tikhub.io/165063611d0.md): 
+- [GetVideoListRequest](https://docs.tikhub.io/163751487d0.md): 
+- [GetVideoOverviewRequest](https://docs.tikhub.io/163751488d0.md): 
+- [GetVideoToProductStatsRequest](https://docs.tikhub.io/165063612d0.md): 
+- [GetViolationRecordRequest](https://docs.tikhub.io/163751489d0.md): 
+- [GiftQuery](https://docs.tikhub.io/193515928d0.md): 
+- [HTTPValidationError](https://docs.tikhub.io/104396401d0.md): 
+- [HealthCheckResponse](https://docs.tikhub.io/133165589d0.md): 
+- [ImageSearchRequest](https://docs.tikhub.io/164136050d0.md): 
+- [ImageSearchV3Request](https://docs.tikhub.io/231247723d0.md): 
+- [ItemAnalysisInvolvedVerticalRequest](https://docs.tikhub.io/208334845d0.md): 
+- [ItemAnalysisItemPerformanceRequest](https://docs.tikhub.io/208334846d0.md): 
+- [ItemAnalysisOverviewRequest](https://docs.tikhub.io/208334847d0.md): 
+- [ItemAudienceOthersRequest](https://docs.tikhub.io/208334848d0.md): 
+- [ItemAudiencePortraitRequest](https://docs.tikhub.io/208334849d0.md): 
+- [ItemBulletAnalysisRequest](https://docs.tikhub.io/208334850d0.md): 
+- [ItemListDownloadRequest](https://docs.tikhub.io/208334851d0.md): 
+- [ItemListRequest](https://docs.tikhub.io/208334852d0.md): 
+- [ItemMgetRequest](https://docs.tikhub.io/208334853d0.md): 
+- [ItemPlaySourceRequest](https://docs.tikhub.io/208334854d0.md): 
+- [ItemSearchKeywordRequest](https://docs.tikhub.io/208334855d0.md): 
+- [ItemWatchTrendRequest](https://docs.tikhub.io/208334856d0.md): 
+- [LikeRequest](https://docs.tikhub.io/123167591d0.md): 
+- [LiveRoomBatchCheckRequest](https://docs.tikhub.io/161733619d0.md): 
+- [LiveRoomHistoryListRequest](https://docs.tikhub.io/208334857d0.md): 
+- [LiveSearchV1Request](https://docs.tikhub.io/164136051d0.md): 
+- [ModeEnum](https://docs.tikhub.io/134497075d0.md): 
+- [MultiSearchRequest](https://docs.tikhub.io/164136053d0.md): 
+- [MusicSearchRequest](https://docs.tikhub.io/164136054d0.md): 
+- [PostCommentRequest](https://docs.tikhub.io/122851403d0.md): 
+- [ReplyCommentRequest](https://docs.tikhub.io/123167592d0.md): 
+- [ResponseModel](https://docs.tikhub.io/104396402d0.md): 
+- [SchoolSearchRequest](https://docs.tikhub.io/164136055d0.md): 
+- [SearchChallengeRequest](https://docs.tikhub.io/143443539d0.md): 
+- [SearchSuggestRequest](https://docs.tikhub.io/164136056d0.md): 
+- [SubtitleFormat](https://docs.tikhub.io/168479961d0.md): 
+- [TikTok_APP_Encrypt_Request](https://docs.tikhub.io/125679814d0.md): 
+- [TikTok_APP_Login_Encrypt_Decrypt_Request](https://docs.tikhub.io/134497076d0.md): 
+- [TikTok_APP_V3_Content_Translate](https://docs.tikhub.io/104396403d0.md): 
+- [TikTok_APP_V3_Home_Feed](https://docs.tikhub.io/149539410d0.md): 
+- [UpdateCheckResponse](https://docs.tikhub.io/152901999d0.md): 
+- [UrlAccessMode](https://docs.tikhub.io/168479962d0.md): 
+- [UserData](https://docs.tikhub.io/104396404d0.md): 
+- [UserInfoResponseModel](https://docs.tikhub.io/104396405d0.md): 
+- [UserSearchRequest](https://docs.tikhub.io/164136057d0.md): 
+- [UserSearchRequestV2](https://docs.tikhub.io/167992734d0.md): 
+- [VIPVideoModel](https://docs.tikhub.io/237340310d0.md): 
+- [ValidationError](https://docs.tikhub.io/104396406d0.md): 
+- [VideoOrientation](https://docs.tikhub.io/208774123d0.md): 
+- [VideoSearchV1Request](https://docs.tikhub.io/164136058d0.md): 
+- [VideoSearchV2Request](https://docs.tikhub.io/164136059d0.md): 
+- [VideosAudiosMode](https://docs.tikhub.io/168479963d0.md): 
+- [VisionSearchRequest](https://docs.tikhub.io/231259414d0.md): 
+- [XBogusModel](https://docs.tikhub.io/104396407d0.md): 
+- [XGnarlyAndXBogusModel](https://docs.tikhub.io/197145673d0.md): 
+- [XMssdkInfoModel](https://docs.tikhub.io/256132896d0.md): 
+- [XhsWebSignRequestModel](https://docs.tikhub.io/141604106d0.md): 
+- [YouTubeContentTypeAPI](https://docs.tikhub.io/194531510d0.md): 
+- [YouTubeDurationAPI](https://docs.tikhub.io/194531511d0.md): 
+- [YouTubeFeatureAPI](https://docs.tikhub.io/194531512d0.md): 
+- [YouTubeSearchSortAPI](https://docs.tikhub.io/194531513d0.md): 
+- [YouTubeUploadTimeAPI](https://docs.tikhub.io/194531514d0.md): 
+- [iOS_Shortcut](https://docs.tikhub.io/106417037d0.md): 

+ 71 - 0
docs/示例Brief-新锐护肤品牌种草合作.md

@@ -0,0 +1,71 @@
+# 客户Brief - 新锐护肤品牌种草合作需求
+
+## 一、品牌信息
+
+- **客户名称**:花漾肌研(HuaYang Skincare)
+- **品牌定位**:新锐国货护肤品牌,主打敏感肌修护、成分安全透明
+- **本次推广产品**:花漾修护精华液(30ml,零售价 ¥189)
+
+## 二、投放目标
+
+- **核心目标**:新品种草 + 站内转化蓄水
+- **辅助目标**:建立品牌在敏感肌赛道的口碑认知
+- **投放周期**:2025年7月1日 - 7月31日(共1个月)
+
+## 三、平台与人数需求
+
+| 平台 | 需求人数 | 内容形式 | 备注 |
+|------|---------|---------|------|
+| 小红书 | 20人 | 图文为主,视频3-5人 | 主力平台,侧重真实测评 |
+| 抖音 | 8人 | 短视频 | 侧重成分科普+使用体验 |
+| B站 | 4人 | 中长视频 | 专业背书,成分拆解 |
+
+## 四、达人筛选要求
+
+### 粉丝量范围
+- 小红书:2万 - 30万
+- 抖音:5万 - 50万
+- B站:3万 - 20万
+
+### 预算范围
+- 单人预算:¥2,000 - ¥18,000
+- 总预算上限:¥350,000
+
+### 内容风格偏好
+- ✅ 真实体验分享、空瓶记录
+- ✅ 通勤生活场景、日常护肤步骤
+- ✅ 成分拆解、专业但不枯燥
+- ✅ 敏感肌修护实录
+- ❌ 不要硬广感、不要纯资讯搬运
+- ❌ 不要泛美妆号(只做妆容不做护肤的)
+
+### 地区要求
+- 优先一二线城市(北京、上海、广州、杭州、成都等)
+
+### 性别偏好
+- 女性为主,男性护肤博主可少量补充(1-2人)
+
+## 五、排除项
+
+- **竞品排除**:近3个月内合作过薇诺娜、珂润、至本的博主不选
+- **内容排除**:医美类、整形类博主不选
+- **风险排除**:有过品牌纠纷、虚假宣传记录的博主不选
+
+## 六、参考博主(风格参考)
+
+1. 梨涡测评室(小红书) - 真实体验+成分分析风格
+2. 敏感肌自救记录(小红书) - 敏感肌日记风格
+3. 配方师小简(B站) - 专业成分科普
+
+## 七、交付要求
+
+- 推荐名单需包含:账号名称、平台、粉丝数、报价、推荐理由、风险提示
+- 按"强推荐 / 备选 / 需复核"三档分级
+- 附带近期内容样本截图或链接
+- Excel格式交付,客户版隐藏供应商信息
+
+## 八、其他说明
+
+- 客户偏好"素人感"强的博主,不要过于精致的画面
+- 如有爆文率高但报价偏高的账号,可放入备选并标注
+- 希望7个工作日内完成初版推荐名单

+ 90 - 0
docs/示例Brief-新锐护肤品牌种草合作.xls

@@ -0,0 +1,90 @@
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+      xmlns:x="urn:schemas-microsoft-com:office:excel"
+      xmlns="http://www.w3.org/TR/REC-html40">
+<head>
+<meta charset="UTF-8">
+<meta name="ProgId" content="Excel.Sheet">
+<!--[if gte mso 9]>
+<xml>
+  <x:ExcelWorkbook>
+    <x:ExcelWorksheets>
+      <x:ExcelWorksheet>
+        <x:Name>Brief需求</x:Name>
+        <x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions>
+      </x:ExcelWorksheet>
+    </x:ExcelWorksheets>
+  </x:ExcelWorkbook>
+</xml>
+<![endif]-->
+<style>
+  table { border-collapse: collapse; font-family: "Microsoft YaHei", Arial, sans-serif; font-size: 11pt; }
+  th { background: #1f8a70; color: #fff; font-weight: bold; }
+  th, td { border: 1px solid #ccc; padding: 6px 10px; }
+  .section-title { background: #f0f7f4; font-weight: bold; font-size: 12pt; }
+  .label { background: #f9f9f9; font-weight: bold; width: 160px; }
+</style>
+</head>
+<body>
+<table>
+  <tr><td colspan="4" style="font-size:16pt; font-weight:bold; border:none; padding:12px 0;">客户Brief - 新锐护肤品牌种草合作需求</td></tr>
+  <tr><td colspan="4" style="border:none;"></td></tr>
+
+  <tr class="section-title"><td colspan="4">一、品牌信息</td></tr>
+  <tr><td class="label">客户名称</td><td colspan="3">花漾肌研(HuaYang Skincare)</td></tr>
+  <tr><td class="label">品牌定位</td><td colspan="3">新锐国货护肤品牌,主打敏感肌修护、成分安全透明</td></tr>
+  <tr><td class="label">推广产品</td><td colspan="3">花漾修护精华液(30ml,零售价 ¥189)</td></tr>
+  <tr><td colspan="4" style="border:none;"></td></tr>
+
+  <tr class="section-title"><td colspan="4">二、投放目标</td></tr>
+  <tr><td class="label">核心目标</td><td colspan="3">新品种草 + 站内转化蓄水</td></tr>
+  <tr><td class="label">辅助目标</td><td colspan="3">建立品牌在敏感肌赛道的口碑认知</td></tr>
+  <tr><td class="label">投放周期</td><td colspan="3">2025年7月1日 - 7月31日(共1个月)</td></tr>
+  <tr><td colspan="4" style="border:none;"></td></tr>
+
+  <tr class="section-title"><td colspan="4">三、平台与人数需求</td></tr>
+  <tr><th>平台</th><th>需求人数</th><th>内容形式</th><th>备注</th></tr>
+  <tr><td>小红书</td><td>20人</td><td>图文为主,视频3-5人</td><td>主力平台,侧重真实测评</td></tr>
+  <tr><td>抖音</td><td>8人</td><td>短视频</td><td>侧重成分科普+使用体验</td></tr>
+  <tr><td>B站</td><td>4人</td><td>中长视频</td><td>专业背书,成分拆解</td></tr>
+  <tr><td colspan="4" style="border:none;"></td></tr>
+
+  <tr class="section-title"><td colspan="4">四、达人筛选要求</td></tr>
+  <tr><th>筛选维度</th><th>小红书</th><th>抖音</th><th>B站</th></tr>
+  <tr><td class="label">粉丝量范围</td><td>2万 - 30万</td><td>5万 - 50万</td><td>3万 - 20万</td></tr>
+  <tr><td class="label">单人预算</td><td colspan="3">¥2,000 - ¥18,000</td></tr>
+  <tr><td class="label">总预算上限</td><td colspan="3">¥350,000</td></tr>
+  <tr><td colspan="4" style="border:none;"></td></tr>
+
+  <tr class="section-title"><td colspan="4">五、内容风格偏好</td></tr>
+  <tr><td class="label">✅ 希望</td><td colspan="3">真实体验分享、空瓶记录、通勤生活场景、日常护肤步骤、成分拆解、敏感肌修护实录</td></tr>
+  <tr><td class="label">❌ 排除</td><td colspan="3">硬广感、纯资讯搬运、泛美妆号(只做妆容不做护肤的)</td></tr>
+  <tr><td class="label">地区要求</td><td colspan="3">优先一二线城市(北京、上海、广州、杭州、成都)</td></tr>
+  <tr><td class="label">性别偏好</td><td colspan="3">女性为主,男性护肤博主可少量补充(1-2人)</td></tr>
+  <tr><td colspan="4" style="border:none;"></td></tr>
+
+  <tr class="section-title"><td colspan="4">六、排除项</td></tr>
+  <tr><td class="label">竞品排除</td><td colspan="3">近3个月内合作过薇诺娜、珂润、至本的博主不选</td></tr>
+  <tr><td class="label">内容排除</td><td colspan="3">医美类、整形类博主不选</td></tr>
+  <tr><td class="label">风险排除</td><td colspan="3">有过品牌纠纷、虚假宣传记录的博主不选</td></tr>
+  <tr><td colspan="4" style="border:none;"></td></tr>
+
+  <tr class="section-title"><td colspan="4">七、参考博主(风格参考)</td></tr>
+  <tr><td class="label">梨涡测评室</td><td>小红书</td><td colspan="2">真实体验+成分分析风格</td></tr>
+  <tr><td class="label">敏感肌自救记录</td><td>小红书</td><td colspan="2">敏感肌日记风格</td></tr>
+  <tr><td class="label">配方师小简</td><td>B站</td><td colspan="2">专业成分科普</td></tr>
+  <tr><td colspan="4" style="border:none;"></td></tr>
+
+  <tr class="section-title"><td colspan="4">八、交付要求</td></tr>
+  <tr><td class="label">名单字段</td><td colspan="3">账号名称、平台、粉丝数、报价、推荐理由、风险提示</td></tr>
+  <tr><td class="label">分级方式</td><td colspan="3">强推荐 / 备选 / 需复核 三档</td></tr>
+  <tr><td class="label">交付格式</td><td colspan="3">Excel格式,客户版隐藏供应商信息</td></tr>
+  <tr><td class="label">交付时间</td><td colspan="3">7个工作日内完成初版推荐名单</td></tr>
+  <tr><td colspan="4" style="border:none;"></td></tr>
+
+  <tr class="section-title"><td colspan="4">九、其他说明</td></tr>
+  <tr><td colspan="4">• 客户偏好"素人感"强的博主,不要过于精致的画面</td></tr>
+  <tr><td colspan="4">• 如有爆文率高但报价偏高的账号,可放入备选并标注</td></tr>
+  <tr><td colspan="4">• 关键词参考:护肤、敏感肌、真实测评、通勤生活、成分党</td></tr>
+</table>
+</body>
+</html>

+ 1 - 1
package.json

@@ -5,7 +5,7 @@
   "scripts": {
     "ng": "ng",
     "start": "ng serve",
-    "api": "node server/server.ts",
+    "api": "node --experimental-strip-types --experimental-transform-types server/server.ts",
     "build": "ng build",
     "watch": "ng build --watch --configuration development",
     "test": "ng test"

+ 32 - 0
server/config.ts

@@ -0,0 +1,32 @@
+export const config = {
+  port: 3000,
+  uploadDir: './uploads',
+
+  // LLM 配置 (火山引擎 doubao)
+  llm: {
+    apiKey: 'ark-702d91e2-63bf-4415-8e4b-8418c33394bd-a48a4',
+    baseUrl: 'https://ark.cn-beijing.volces.com/api/v3',
+    model: 'doubao-seed-2-0-mini-260428',
+  },
+
+  // JustOne API - 商业达人搜索
+  // 文档: https://docs.justoneapi.com/zh/usage
+  justOneApi: {
+    apiKey: 'wT0w78sxrwlrpJrQ',
+    baseUrl: 'https://api.justoneapi.com',
+  },
+
+  // TikHub API - 内容采样验证
+  // 文档: https://docs.tikhub.io/4579297m0
+  tikHub: {
+    apiKey: 'oL4nMZwrhXCro1+TQYye0BL8LASyaphtx0LUmGuRCfqnm1CeBFfbdmLAGQ==',
+    baseUrl: 'https://api.tikhub.io',
+  },
+
+  // 推荐规则默认参数
+  recommendation: {
+    multiplier: 3, // 推荐数量 = 需求数量 × N倍
+    minStyleMatch: 70, // 风格匹配最低阈值
+    maxCandidates: 200, // 最大候选池
+  },
+};

+ 137 - 0
server/routes/task.routes.ts

@@ -0,0 +1,137 @@
+import { IncomingMessage, ServerResponse } from 'node:http';
+import { createTask, getTask, getAllTasks, runTaskPipeline } from '../services/task-manager.service.ts';
+import { generateExcelBuffer } from '../services/export.service.ts';
+import { extractTextFromBuffer } from '../utils/file-parser.ts';
+import { sendJson, readMultipartFile } from '../utils/http.ts';
+
+/**
+ * POST /api/tasks/upload-brief
+ * 上传 Brief 文件,创建任务
+ */
+export async function handleUploadBrief(request: IncomingMessage, response: ServerResponse): Promise<void> {
+  try {
+    console.log('[Route] 收到上传请求, Content-Type:', request.headers['content-type']);
+    const { fileName, buffer } = await readMultipartFile(request);
+    console.log(`[Route] 解析文件: ${fileName}, 大小: ${buffer.length} bytes`);
+
+    if (!buffer || buffer.length === 0) {
+      sendJson(response, 400, { ok: false, message: '未收到文件内容' });
+      return;
+    }
+
+    // 提取文件文本
+    const briefText = extractTextFromBuffer(buffer, fileName);
+
+    // 创建任务
+    const task = createTask(fileName, briefText);
+    console.log(`[Route] 任务已创建: ${task.id}, briefText长度: ${briefText.length}`);
+
+    sendJson(response, 200, {
+      taskId: task.id,
+      fileName: task.fileName,
+      message: `文件 ${fileName} 已上传,任务已创建`,
+    });
+  } catch (error) {
+    console.error('[Upload] Error:', error);
+    sendJson(response, 500, { ok: false, message: error instanceof Error ? error.message : '上传失败' });
+  }
+}
+
+/**
+ * POST /api/tasks/:taskId/start
+ * 启动任务处理流水线(异步执行)
+ */
+export function handleStartTask(request: IncomingMessage, response: ServerResponse, taskId: string): void {
+  const task = getTask(taskId);
+  if (!task) {
+    sendJson(response, 404, { ok: false, message: '任务不存在' });
+    return;
+  }
+
+  if (task.status !== 'pending') {
+    sendJson(response, 400, { ok: false, message: `任务状态为 ${task.status},无法启动` });
+    return;
+  }
+
+  console.log(`[Route] 启动任务: ${taskId}, 当前状态: ${task.status}`);
+
+  // 异步执行流水线,不等待完成
+  runTaskPipeline(taskId).catch((err) => {
+    console.error(`[Task ${taskId}] Pipeline error:`, err);
+  });
+
+  sendJson(response, 200, { ok: true, message: '任务已启动,请轮询状态' });
+}
+
+/**
+ * GET /api/tasks/:taskId
+ * 获取任务状态与进度
+ */
+export function handleGetTask(response: ServerResponse, taskId: string): void {
+  const task = getTask(taskId);
+  if (!task) {
+    sendJson(response, 404, { ok: false, message: '任务不存在' });
+    return;
+  }
+
+  sendJson(response, 200, {
+    taskId: task.id,
+    status: task.status,
+    fileName: task.fileName,
+    steps: task.steps,
+    requirements: task.requirements,
+    searchCriteria: task.searchCriteria,
+    totalPool: task.totalPool,
+    candidateCount: task.candidates.length,
+    strongCount: task.candidates.filter((c) => c.recommendStatus === '强推荐').length,
+    backupCount: task.candidates.filter((c) => c.recommendStatus === '备选').length,
+    error: task.error,
+    createdAt: task.createdAt,
+    updatedAt: task.updatedAt,
+  });
+}
+
+/**
+ * GET /api/tasks
+ * 获取所有任务列表
+ */
+export function handleListTasks(response: ServerResponse): void {
+  const tasks = getAllTasks().map((t) => ({
+    taskId: t.id,
+    status: t.status,
+    fileName: t.fileName,
+    candidateCount: t.candidates.length,
+    createdAt: t.createdAt,
+    updatedAt: t.updatedAt,
+  }));
+
+  sendJson(response, 200, { tasks });
+}
+
+/**
+ * POST /api/tasks/:taskId/export
+ * 导出推荐表 Excel 文件
+ */
+export function handleExportTask(response: ServerResponse, taskId: string): void {
+  const task = getTask(taskId);
+  if (!task) {
+    sendJson(response, 404, { ok: false, message: '任务不存在' });
+    return;
+  }
+
+  if (task.candidates.length === 0) {
+    sendJson(response, 400, { ok: false, message: '暂无推荐候选人,无法导出' });
+    return;
+  }
+
+  const excelBuffer = generateExcelBuffer(task.candidates, task.fileName);
+  const exportFileName = `${task.fileName.replace(/\.[^.]+$/, '')}-推荐名单.xls`;
+
+  response.writeHead(200, {
+    'Access-Control-Allow-Origin': '*',
+    'Content-Type': 'application/vnd.ms-excel; charset=utf-8',
+    'Content-Disposition': `attachment; filename="${encodeURIComponent(exportFileName)}"`,
+    'Content-Length': excelBuffer.byteLength,
+  });
+  response.end(excelBuffer);
+}

+ 95 - 74
server/server.ts

@@ -1,8 +1,17 @@
-import { createServer, IncomingMessage, ServerResponse } from 'node:http';
-
-type JsonValue = Record<string, unknown> | Array<unknown>;
-
-interface Candidate {
+import { createServer } from 'node:http';
+import { config } from './config.ts';
+import { sendJson, readBody, extractPathParam, extractPathTail } from './utils/http.ts';
+import {
+  handleUploadBrief,
+  handleStartTask,
+  handleGetTask,
+  handleListTasks,
+  handleExportTask,
+} from './routes/task.routes.ts';
+
+// ─── Legacy demo data (保留向下兼容) ──────────────────────────
+
+interface LegacyCandidate {
   platform: string;
   name: string;
   fans: string;
@@ -14,13 +23,11 @@ interface Candidate {
   risk: string;
 }
 
-const port = Number(process.env.TIHAO_AI_API_PORT ?? 4300);
-
 const demoRequirements = [
   { label: '客户/品牌', value: '客户A / 新锐护肤品牌', confidence: 96 },
   { label: '投放目标', value: '新品种草、真实测评、站内转化蓄水', confidence: 92 },
   { label: '平台需求', value: '小红书 20人、抖音 8人、B站 4人', confidence: 90 },
-  { label: '内容风格', value: '真实体验、通勤生活、轻专业成分党', confidence: 88 }
+  { label: '内容风格', value: '真实体验、通勤生活、轻专业成分党', confidence: 88 },
 ];
 
 const demoRules = [
@@ -28,10 +35,10 @@ const demoRules = [
   '默认推荐数量不少于需求 3 倍',
   '风格匹配低于 80% 自动降级',
   '黑名单与低配合度剔除',
-  '优先近期采集有效价格'
+  '优先近期采集有效价格',
 ];
 
-const demoCandidates: Candidate[] = [
+const demoCandidates: LegacyCandidate[] = [
   {
     platform: '小红书',
     name: '梨涡测评室',
@@ -41,7 +48,7 @@ const demoCandidates: Candidate[] = [
     styleMatch: 91,
     status: '强推荐',
     reason: '近10篇中 9 篇为真实体验或成分拆解,互动中位数高于同价位账号 28%。',
-    risk: '视频内容偏少,可作为图文主推。'
+    risk: '视频内容偏少,可作为图文主推。',
   },
   {
     platform: '抖音',
@@ -52,23 +59,19 @@ const demoCandidates: Candidate[] = [
     styleMatch: 82,
     status: '备选',
     reason: '爆文率和完播率表现稳定,预算接近上限,建议作为抖音头部备选。',
-    risk: '单条报价较高,需确认档期。'
-  }
+    risk: '单条报价较高,需确认档期。',
+  },
 ];
 
-function sendJson(response: ServerResponse, statusCode: number, payload: JsonValue): void {
-  const body = JSON.stringify(payload);
-  response.writeHead(statusCode, {
-    'Access-Control-Allow-Origin': '*',
-    'Access-Control-Allow-Headers': 'Content-Type',
-    'Access-Control-Allow-Methods': 'GET,POST,OPTIONS',
-    'Content-Type': 'application/json; charset=utf-8',
-    'Content-Length': Buffer.byteLength(body)
-  });
-  response.end(body);
+function escapeHtml(value: string): string {
+  return value
+    .replaceAll('&', '&amp;')
+    .replaceAll('<', '&lt;')
+    .replaceAll('>', '&gt;')
+    .replaceAll('"', '&quot;');
 }
 
-function sendExcel(response: ServerResponse, filename: string, candidates: Candidate[]): void {
+function sendExcel(response: import('node:http').ServerResponse, filename: string, candidates: LegacyCandidate[]): void {
   const rows = candidates
     .map(
       (candidate) => `
@@ -111,95 +114,106 @@ function sendExcel(response: ServerResponse, filename: string, candidates: Candi
     'Access-Control-Allow-Origin': '*',
     'Content-Type': 'application/vnd.ms-excel; charset=utf-8',
     'Content-Disposition': `attachment; filename="${encodeURIComponent(filename)}"`,
-    'Content-Length': Buffer.byteLength(body)
+    'Content-Length': Buffer.byteLength(body),
   });
   response.end(body);
 }
 
-function readBody(request: IncomingMessage): Promise<Record<string, unknown>> {
-  return new Promise((resolve) => {
-    let body = '';
-    request.on('data', (chunk) => {
-      body += chunk;
-    });
-    request.on('end', () => {
-      if (!body) {
-        resolve({});
-        return;
-      }
-
-      try {
-        resolve(JSON.parse(body));
-      } catch {
-        resolve({});
-      }
-    });
-  });
-}
-
-function escapeHtml(value: string): string {
-  return value
-    .replaceAll('&', '&amp;')
-    .replaceAll('<', '&lt;')
-    .replaceAll('>', '&gt;')
-    .replaceAll('"', '&quot;');
-}
+// ─── HTTP Server ──────────────────────────────────────────────
 
 const server = createServer(async (request, response) => {
   const requestUrl = new URL(request.url ?? '/', `http://${request.headers.host ?? 'localhost'}`);
+  const { pathname } = requestUrl;
 
+  // CORS preflight
   if (request.method === 'OPTIONS') {
     sendJson(response, 200, { ok: true });
     return;
   }
 
-  if (request.method === 'GET' && requestUrl.pathname === '/api/health') {
+  // ── 新接口:任务流水线 ────────────────────────────
+
+  // POST /api/tasks/upload-brief - 上传 Brief
+  if (request.method === 'POST' && pathname === '/api/tasks/upload-brief') {
+    await handleUploadBrief(request, response);
+    return;
+  }
+
+  // GET /api/tasks - 任务列表
+  if (request.method === 'GET' && pathname === '/api/tasks') {
+    handleListTasks(response);
+    return;
+  }
+
+  // GET /api/tasks/:taskId - 任务详情/进度
+  if (request.method === 'GET' && pathname.startsWith('/api/tasks/')) {
+    const taskId = extractPathParam(pathname, '/api/tasks/');
+    if (taskId) {
+      handleGetTask(response, taskId);
+      return;
+    }
+  }
+
+  // POST /api/tasks/:taskId/start - 启动任务
+  if (request.method === 'POST' && pathname.match(/^\/api\/tasks\/[^/]+\/start$/)) {
+    const taskId = extractPathParam(pathname, '/api/tasks/');
+    handleStartTask(request, response, taskId);
+    return;
+  }
+
+  // POST /api/tasks/:taskId/export - 导出推荐表
+  if (request.method === 'POST' && pathname.match(/^\/api\/tasks\/[^/]+\/export$/)) {
+    const tail = extractPathTail(pathname, '/api/tasks/');
+    const taskId = tail.replace('/export', '');
+    handleExportTask(response, taskId);
+    return;
+  }
+
+  // ── 旧接口:保留向下兼容 ──────────────────────────
+
+  if (request.method === 'GET' && pathname === '/api/health') {
     sendJson(response, 200, {
       ok: true,
-      name: '提号AI Mock API',
-      resourcesPath: 'D:\\公司优秀媒体资源库\\4月份资源库'
+      name: '提号AI API',
+      resourcesPath: 'D:\\公司优秀媒体资源库\\4月份资源库',
+      version: '2.0.0',
+      features: ['task-pipeline', 'brief-upload', 'justone-api', 'tikhub-api', 'export'],
     });
     return;
   }
 
-  if (request.method === 'POST' && requestUrl.pathname === '/api/analyze-brief') {
+  if (request.method === 'POST' && pathname === '/api/analyze-brief') {
     sendJson(response, 200, {
       requirements: demoRequirements,
       rules: demoRules,
-      message: 'Demo 已模拟解析 Brief,真实环境会接入 Excel/Docx 解析与 LLM 抽取。'
+      message: 'Demo 已模拟解析 Brief,真实环境会接入 Excel/Docx 解析与 LLM 抽取。',
     });
     return;
   }
 
-  if (request.method === 'POST' && requestUrl.pathname === '/api/recommend') {
+  if (request.method === 'POST' && pathname === '/api/recommend') {
     sendJson(response, 200, {
       candidates: demoCandidates,
       totalPool: 104,
-      message: 'Demo 已模拟按规则生成推荐池。'
+      message: 'Demo 已模拟按规则生成推荐池。',
     });
     return;
   }
 
-  if (request.method === 'POST' && requestUrl.pathname === '/api/rules/learn') {
+  if (request.method === 'POST' && pathname === '/api/rules/learn') {
     sendJson(response, 200, {
       suggestions: [
-        {
-          title: '小红书减少泛美妆号,优先生活方式和通勤场景',
-          confidence: 93
-        },
-        {
-          title: '抖音预算压低时保留爆文率高账号',
-          confidence: 87
-        }
-      ]
+        { title: '小红书减少泛美妆号,优先生活方式和通勤场景', confidence: 93 },
+        { title: '抖音预算压低时保留爆文率高账号', confidence: 87 },
+      ],
     });
     return;
   }
 
-  if (request.method === 'POST' && requestUrl.pathname === '/api/recommendations/export') {
+  if (request.method === 'POST' && pathname === '/api/recommendations/export') {
     const body = await readBody(request);
     const candidates = Array.isArray(body['candidates'])
-      ? (body['candidates'] as Candidate[])
+      ? (body['candidates'] as LegacyCandidate[])
       : demoCandidates;
     sendExcel(response, '客户A-新锐护肤品牌-需求推荐名单.xls', candidates);
     return;
@@ -208,6 +222,13 @@ const server = createServer(async (request, response) => {
   sendJson(response, 404, { ok: false, message: 'Not found' });
 });
 
-server.listen(port, () => {
-  console.log(`Tihao AI mock API listening on http://localhost:${port}`);
+server.listen(config.port, () => {
+  console.log(`提号AI API listening on http://localhost:${config.port}`);
+  console.log('新接口:');
+  console.log('  POST /api/tasks/upload-brief   - 上传 Brief 文件');
+  console.log('  POST /api/tasks/:id/start      - 启动任务处理');
+  console.log('  GET  /api/tasks/:id            - 查询任务进度');
+  console.log('  GET  /api/tasks                - 任务列表');
+  console.log('  POST /api/tasks/:id/export     - 导出推荐表');
+  console.log('旧接口: /api/health, /api/analyze-brief, /api/recommend, /api/rules/learn, /api/recommendations/export');
 });

+ 122 - 0
server/services/export.service.ts

@@ -0,0 +1,122 @@
+import type { NormalizedCandidate } from './recommendation.service.ts';
+
+function escapeHtml(value: string): string {
+  return value
+    .replaceAll('&', '&amp;')
+    .replaceAll('<', '&lt;')
+    .replaceAll('>', '&gt;')
+    .replaceAll('"', '&quot;');
+}
+
+/**
+ * 生成媒体资源推荐表 Excel (HTML table format compatible with MS Excel)
+ * 按模板生成:账号名称、ID、账号类型、地区、链接、粉丝数、赞藏数、
+ * 图文/视频报价、推荐等级、推荐理由等字段
+ */
+export function generateExcelBuffer(candidates: NormalizedCandidate[], taskFileName?: string): Buffer {
+  const title = taskFileName ? taskFileName.replace(/\.[^.]+$/, '') : '达人推荐表';
+  const now = new Date().toLocaleDateString('zh-CN');
+
+  const headerRow = `
+    <tr>
+      <th>序号</th>
+      <th>平台</th>
+      <th>账号名称</th>
+      <th>账号ID</th>
+      <th>地区</th>
+      <th>主页链接</th>
+      <th>粉丝数</th>
+      <th>图文报价</th>
+      <th>视频报价</th>
+      <th>最低报价</th>
+      <th>内容标签</th>
+      <th>综合评分</th>
+      <th>风格匹配</th>
+      <th>推荐等级</th>
+      <th>推荐理由</th>
+      <th>风险提示</th>
+      <th>数据来源</th>
+    </tr>`;
+
+  const rows = candidates.map((c, index) => `
+    <tr>
+      <td>${index + 1}</td>
+      <td>${escapeHtml(mapPlatformDisplay(c.platform))}</td>
+      <td>${escapeHtml(c.displayName)}</td>
+      <td>${escapeHtml(c.platformUserId)}</td>
+      <td>${escapeHtml(c.location || '-')}</td>
+      <td>${escapeHtml(c.profileUrl)}</td>
+      <td>${formatFans(c.fansCount)}</td>
+      <td>${c.imagePrice > 0 ? `¥${c.imagePrice}` : '-'}</td>
+      <td>${c.videoPrice > 0 ? `¥${c.videoPrice}` : '-'}</td>
+      <td>${c.minPrice > 0 ? `¥${c.minPrice}` : '-'}</td>
+      <td>${escapeHtml(c.contentTags.join('、') || '-')}</td>
+      <td>${c.score}</td>
+      <td>${c.styleMatch}%</td>
+      <td>${escapeHtml(c.recommendStatus)}</td>
+      <td>${escapeHtml(c.recommendReason || '-')}</td>
+      <td>${escapeHtml(c.riskNote || '-')}</td>
+      <td>${escapeHtml(c.sourceProvider)}</td>
+    </tr>`
+  ).join('');
+
+  const html = `
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+      xmlns:x="urn:schemas-microsoft-com:office:excel"
+      xmlns="http://www.w3.org/TR/REC-html40">
+<head>
+  <meta charset="UTF-8">
+  <meta name="ProgId" content="Excel.Sheet">
+  <!--[if gte mso 9]>
+  <xml>
+    <x:ExcelWorkbook>
+      <x:ExcelWorksheets>
+        <x:ExcelWorksheet>
+          <x:Name>推荐名单</x:Name>
+          <x:WorksheetOptions>
+            <x:DisplayGridlines/>
+          </x:WorksheetOptions>
+        </x:ExcelWorksheet>
+      </x:ExcelWorksheets>
+    </x:ExcelWorkbook>
+  </xml>
+  <![endif]-->
+  <style>
+    table { border-collapse: collapse; font-family: "Microsoft YaHei", Arial, sans-serif; font-size: 11pt; }
+    th { background: #1f8a70; color: #fff; font-weight: bold; text-align: center; }
+    th, td { border: 1px solid #cfd7d1; padding: 6px 10px; white-space: nowrap; }
+    .title-row td { font-size: 14pt; font-weight: bold; border: none; padding: 10px 0; }
+    .meta-row td { font-size: 9pt; color: #666; border: none; padding: 2px 0; }
+    td:nth-child(12), td:nth-child(13) { background: #eef7f3; font-weight: 700; }
+  </style>
+</head>
+<body>
+  <table>
+    <tr class="title-row"><td colspan="17">${escapeHtml(title)} - 媒体资源推荐表</td></tr>
+    <tr class="meta-row"><td colspan="17">生成时间:${now} | 候选总数:${candidates.length} | 强推荐:${candidates.filter(c => c.recommendStatus === '强推荐').length} | 备选:${candidates.filter(c => c.recommendStatus === '备选').length}</td></tr>
+    <tr><td colspan="17"></td></tr>
+    ${headerRow}
+    ${rows}
+  </table>
+</body>
+</html>`;
+
+  return Buffer.from(html, 'utf-8');
+}
+
+function mapPlatformDisplay(platform: string): string {
+  const map: Record<string, string> = {
+    xiaohongshu: '小红书',
+    douyin: '抖音',
+    bilibili: 'B站',
+    weibo: '微博',
+    weixin: '微信/公众号',
+  };
+  return map[platform] || platform;
+}
+
+function formatFans(count: number): string {
+  if (count === 0) return '-';
+  if (count >= 10000) return `${(count / 10000).toFixed(1)}万`;
+  return String(count);
+}

+ 362 - 0
server/services/justone.service.ts

@@ -0,0 +1,362 @@
+import { config } from '../config.ts';
+
+export interface JustOneCreator {
+  userId: string;
+  platform: string;  // 'xiaohongshu' | 'douyin'
+  nickname: string;
+  redId?: string;
+  location: string;
+  fansCount: number;
+  imagePrice: number;
+  videoPrice: number;
+  minPrice: number;
+  cooperationStatus: string;
+  personalTags: string[];
+  contentTags: string[];
+  gender?: string;
+}
+
+interface SearchParams {
+  keyword: string;
+  platform?: string;
+  minFans?: number;
+  maxFans?: number;
+  minPrice?: number;
+  maxPrice?: number;
+  gender?: string;
+  location?: string;
+  page?: number;
+  pageSize?: number;
+}
+
+/**
+ * JustOne API 商业达人搜索服务
+ * 文档: https://docs.justoneapi.com/zh/usage
+ * 用于蒲公英/星图类商业达人数据聚合搜索
+ */
+export async function searchCreators(params: SearchParams): Promise<JustOneCreator[]> {
+  if (!config.justOneApi.apiKey) {
+    console.warn('[JustOne] No API key configured, returning empty results');
+    return [];
+  }
+
+  try {
+    const queryParams = new URLSearchParams();
+    queryParams.set('token', config.justOneApi.apiKey);
+    queryParams.set('keyword', params.keyword);
+    queryParams.set('page', String(params.page ?? 1));
+
+    // 根据平台选择不同的接口路径和参数格式
+    const endpoint = getPlatformEndpoint(params.platform);
+    const isDouyin = params.platform === 'douyin' || params.platform === '抖音';
+
+    if (isDouyin) {
+      queryParams.set('searchType', 'CONTENT');
+      if (params.minFans || params.maxFans) {
+        const min = Math.floor((params.minFans || 0) / 10000);
+        const max = Math.floor((params.maxFans || 99999) / 10000);
+        if (min > 0 || max > 0) {
+          queryParams.set('followerRange', `${min}-${max}`);
+        }
+      }
+      // 不传 kolPriceRange,避免单价过滤导致空结果
+    } else {
+      queryParams.set('searchType', 'NOTE');
+      if (params.minFans) queryParams.set('fansNumberLower', String(params.minFans));
+      if (params.maxFans) queryParams.set('fansNumberUpper', String(params.maxFans));
+      if (params.gender) {
+        const genderMap: Record<string, string> = { '女': 'FEMALE', '男': 'MALE', female: 'FEMALE', male: 'MALE' };
+        queryParams.set('gender', genderMap[params.gender] || 'ALL');
+      }
+    }
+
+    const requestUrl = `${config.justOneApi.baseUrl}${endpoint}?${queryParams.toString()}`;
+    console.log('[JustOne] 请求 URL:', requestUrl.replace(config.justOneApi.apiKey, '***'));
+
+    const response = await fetch(requestUrl, {
+      method: 'GET',
+      headers: {
+        'Content-Type': 'application/json',
+      },
+    });
+
+    if (!response.ok) {
+      const errorText = await response.text();
+      console.error(`[JustOne] API error: ${response.status} - ${errorText}`);
+      return [];
+    }
+
+    const data = await response.json();
+    console.log('[JustOne] 原始响应 code:', data.code, 'message:', data.message);
+
+    // code 301 = FAILED, RETRY——重试一次
+    if (data.code === 301) {
+      console.log('[JustOne] 收到 301 RETRY,3秒后重试...');
+      await new Promise(r => setTimeout(r, 3000));
+      const retryResp = await fetch(requestUrl, { method: 'GET', headers: { 'Content-Type': 'application/json' } });
+      if (!retryResp.ok) {
+        console.error(`[JustOne] 重试失败: ${retryResp.status}`);
+        return [];
+      }
+      const retryData = await retryResp.json();
+      console.log('[JustOne] 重试响应 code:', retryData.code, 'message:', retryData.message);
+      if (retryData.code !== 0) {
+        console.error('[JustOne] 重试仍失败, code:', retryData.code);
+        return [];
+      }
+      return parseCreatorList(retryData);
+    }
+
+    if (data.code !== 0 && data.code !== undefined) {
+      console.error('[JustOne] 业务错误 code:', data.code, data.message);
+      return [];
+    }
+
+    return parseCreatorList(data);
+  } catch (error) {
+    console.error('[JustOne] Search failed:', error);
+    return [];
+  }
+}
+
+/**
+ * 从 JustOne API 响应中解析创作者列表
+ * - 小红书蒲公英: data.data.kols,字段直接在条目上
+ * - 抖音星图: data.data.authors,字段全在 attribute_datas 字符串字典里
+ */
+function parseCreatorList(data: Record<string, unknown>): JustOneCreator[] {
+  const d = data.data as Record<string, unknown> | undefined;
+  if (!d) {
+    console.log('[JustOne] data.data 为空');
+    return [];
+  }
+
+  console.log('[JustOne] data.data keys:', JSON.stringify(Object.keys(d)));
+
+  // 小红书蒲公英: kols 字段
+  if (Array.isArray(d.kols) && d.kols.length >= 0) {
+    const list = d.kols as Record<string, unknown>[];
+    console.log(`[JustOne] XHS kols 数量: ${list.length}`);
+    if (list.length > 0) console.log('[JustOne] XHS 第一条 keys:', JSON.stringify(Object.keys(list[0])));
+    const creators = list.map(parseXhsCreator);
+    console.log('[JustOne] XHS 解析完成,数量:', creators.length);
+    if (creators.length > 0) console.log('[JustOne] XHS 第一条解析结果:', JSON.stringify(creators[0]));
+    return creators;
+  }
+
+  // 抖音星图: authors 字段
+  if (Array.isArray(d.authors) && d.authors.length >= 0) {
+    const list = d.authors as Record<string, unknown>[];
+    console.log(`[JustOne] Douyin authors 数量: ${list.length}`);
+    if (list.length > 0) console.log('[JustOne] Douyin 第一条 keys:', JSON.stringify(Object.keys(list[0])));
+    const creators = list.map(parseDouyinXingtuCreator);
+    console.log('[JustOne] Douyin 解析完成,数量:', creators.length);
+    if (creators.length > 0) console.log('[JustOne] Douyin 第一条解析结果:', JSON.stringify(creators[0]));
+    return creators;
+  }
+
+  // 通用回退(按小红书处理)
+  const rawList = d.bloggerList || d.list || d.items || d.result || [];
+  const listArr = Array.isArray(rawList) ? rawList as Record<string, unknown>[] : [];
+  console.log(`[JustOne] 通用字段列表数量: ${listArr.length}`);
+  return listArr.map(parseXhsCreator);
+}
+
+/** 解析小红书蒲公英创作者(字段直接在条目上) */
+function parseXhsCreator(item: Record<string, unknown>): JustOneCreator {
+  // contentTags 是对象数组 [{taxonomy1Tag: '护肤', taxonomy2Tags: [...]}],提取一级标签
+  const rawContentTags = item.contentTags;
+  const contentTags: string[] = Array.isArray(rawContentTags)
+    ? rawContentTags
+        .map((t: unknown) => {
+          if (typeof t === 'string') return t;
+          if (typeof t === 'object' && t !== null) {
+            const obj = t as Record<string, unknown>;
+            return typeof obj.taxonomy1Tag === 'string' ? obj.taxonomy1Tag : null;
+          }
+          return null;
+        })
+        .filter((s): s is string => s !== null)
+    : [];
+
+  // featureTags 是字符串数组,直接作为 personalTags
+  const featureTags = toStringArray(item.featureTags || item.personalTags || item.personal_tags || []);
+
+  // fansCount:fansCount 始终为 0,实际应用 fansNum
+  const fansCount = Number(item.fansNum || item.fansCount || item.fans_count || item.followerCount || 0);
+
+  // 价格:图文 picturePrice,视频 videoPrice,最低 lowerPrice
+  const imagePrice = Number(item.picturePrice || item.imagePrice || 0);
+  const videoPrice = Number(item.videoPrice || item.video_price || 0);
+  const minPrice = Number(item.lowerPrice || item.picturePrice || item.imagePrice || 0);
+
+  // 合作状态:cooperateState=1 表示可合作
+  const cooperateState = Number(item.cooperateState || 0);
+  const cooperationStatus = cooperateState === 1 ? 'active' : String(item.cooperationStatus || '');
+
+  const genderRaw = String(item.gender || '');
+  const genderMap: Record<string, string> = { '女': 'female', '男': 'male', 'FEMALE': 'female', 'MALE': 'male' };
+
+  return {
+    userId: String(item.userId || item.user_id || ''),
+    platform: 'xiaohongshu',
+    nickname: String(item.name || item.nickname || item.nickName || ''),
+    redId: String(item.redId || item.red_id || ''),
+    location: String(item.location || item.city || ''),
+    fansCount,
+    imagePrice,
+    videoPrice,
+    minPrice,
+    cooperationStatus,
+    personalTags: featureTags,
+    contentTags,
+    gender: genderMap[genderRaw] || genderRaw,
+  };
+}
+
+/** 解析抖音星图创作者(数据全在 attribute_datas 字符串字典里) */
+function parseDouyinXingtuCreator(item: Record<string, unknown>): JustOneCreator {
+  const attr = (item.attribute_datas || {}) as Record<string, string>;
+
+  const fansCount = Number(attr.follower || attr.fans_count || 0);
+  // assign_cpm_suggest_price 是 CPM 建议价(元/千次),不是合作报价,暂设为0
+  const imagePrice = 0;
+  const videoPrice = 0;
+  const minPrice = 0;
+
+  const genderCode = attr.gender || '0';
+  const genderMap: Record<string, string> = { '1': 'male', '2': 'female', '0': '' };
+
+  // content_theme_labels_180d 是 JSON 字符串数组(实际响应中常为空 "[]")
+  // 若为空则退而从 last_10_items 视频标题中提取 hashtag 作为 contentTags
+  let contentTags: string[] = [];
+  try {
+    const raw = attr.content_theme_labels_180d || '[]';
+    const parsed = JSON.parse(raw) as unknown[];
+    if (Array.isArray(parsed) && parsed.length > 0) {
+      contentTags = parsed.map(String);
+    }
+  } catch { /* ignore */ }
+
+  if (contentTags.length === 0) {
+    try {
+      const items = JSON.parse(attr.last_10_items || '[]') as Record<string, unknown>[];
+      const tags: string[] = [];
+      for (const it of items.slice(0, 5)) {
+        const title = String(it.item_title || '');
+        for (const word of title.split(/\s+/)) {
+          if (word.startsWith('#')) tags.push(word.slice(1));
+        }
+      }
+      // 去重,最多保留 10 个
+      contentTags = [...new Set(tags)].slice(0, 10);
+    } catch { /* ignore */ }
+  }
+
+  // author_thin_mid_word_association_index 是 JSON 对象 {词: 权重},取 key 作为标签
+  let personalTags: string[] = [];
+  try {
+    const raw = attr.author_thin_mid_word_association_index || '{}';
+    const parsed = JSON.parse(raw) as Record<string, unknown>;
+    personalTags = Object.keys(parsed);
+  } catch { /* ignore */ }
+
+  return {
+    userId: String(item.star_id || attr.id || attr.core_user_id || ''),
+    platform: 'douyin',
+    nickname: String(attr.nickname || attr.name || ''),
+    location: String(attr.city || attr.province || ''),
+    fansCount,
+    imagePrice,
+    videoPrice,
+    minPrice,
+    cooperationStatus: attr.author_status === '1' ? 'active' : '',
+    personalTags,
+    contentTags,
+    gender: genderMap[genderCode] || '',
+  };
+}
+
+function toStringArray(val: unknown): string[] {
+  if (!Array.isArray(val)) return [];
+  return val
+    .map(v => {
+      if (typeof v === 'string') return v;
+      if (typeof v !== 'object' || v === null) return null;
+      const obj = v as Record<string, unknown>;
+      const text = obj.name || obj.tagName || obj.label || obj.value || obj.text || obj.title;
+      if (text && typeof text === 'string') return text;
+      for (const k of Object.keys(obj)) {
+        if (typeof obj[k] === 'string' && (obj[k] as string).length > 0) return obj[k] as string;
+      }
+      return null;
+    })
+    .filter((s): s is string => s !== null && s.length > 0);
+}
+
+/**
+ * 获取创作者详情(粉丝画像、互动数据等)
+ */
+export async function getCreatorProfile(userId: string, platform?: string): Promise<Record<string, unknown> | null> {
+  if (!config.justOneApi.apiKey) {
+    return null;
+  }
+
+  try {
+    const queryParams = new URLSearchParams();
+    queryParams.set('token', config.justOneApi.apiKey);
+    queryParams.set('userId', userId);
+
+    const profileEndpoint = getProfileEndpoint(platform);
+
+    const response = await fetch(
+      `${config.justOneApi.baseUrl}${profileEndpoint}?${queryParams.toString()}`,
+      {
+        method: 'GET',
+        headers: {
+          'Content-Type': 'application/json',
+        },
+      }
+    );
+
+    if (!response.ok) {
+      return null;
+    }
+
+    const data = await response.json();
+    return data.data || data;
+  } catch (error) {
+    console.error('[JustOne] Profile fetch failed:', error);
+    return null;
+  }
+}
+
+/**
+ * 根据平台返回对应的搜索接口路径
+ * 文档: https://docs.justoneapi.com/zh/usage
+ */
+function getPlatformEndpoint(platform?: string): string {
+  switch (platform) {
+    case 'xiaohongshu':
+    case '小红书':
+      return '/api/xiaohongshu-pgy/api/solar/cooperator/blogger/v2/v1';
+    case 'douyin':
+    case '抖音':
+      return '/api/douyin-xingtu/gw/api/gsearch/search_for_author_square/v1';
+    default:
+      return '/api/xiaohongshu-pgy/api/solar/cooperator/blogger/v2/v1';
+  }
+}
+
+function getProfileEndpoint(platform?: string): string {
+  switch (platform) {
+    case 'xiaohongshu':
+    case '小红书':
+      return '/api/xiaohongshu-pgy/api/solar/cooperator/blogger/profile/v1';
+    case 'douyin':
+    case '抖音':
+      return '/api/douyin-xingtu/gw/api/gsearch/search_for_author_square/v1';
+    default:
+      return '/api/xiaohongshu-pgy/api/solar/cooperator/blogger/profile/v1';
+  }
+}

+ 126 - 0
server/services/llm.service.ts

@@ -0,0 +1,126 @@
+import { config } from '../config.ts';
+
+interface BriefAnalysisResult {
+  requirements: Array<{ label: string; value: string; confidence: number }>;
+  searchCriteria: {
+    platforms: string[];
+    keywords: string[];
+    fanRange: { min: number; max: number };
+    budgetRange: { min: number; max: number };
+    region?: string;
+    gender?: string;
+    contentTags?: string[];
+    excludeTags?: string[];
+  };
+}
+
+const BRIEF_ANALYSIS_PROMPT = `你是一个专业的媒介策划助手。请分析以下客户Brief文件内容,提取出结构化的投放需求。
+
+要求提取以下信息:
+1. 客户/品牌名称
+2. 投放目标(种草、转化、品宣等)
+3. 平台需求(小红书、抖音、B站等及各平台需求人数)
+4. 粉丝数要求范围
+5. 预算范围
+6. 内容风格要求
+7. 地区要求
+8. 排除项(竞品、不合适的类型等)
+9. 合作形式(图文、视频等)
+
+请以JSON格式输出,包含requirements数组和searchCriteria对象。
+requirements格式:[{label: "字段名", value: "提取值", confidence: 0-100}]
+searchCriteria格式:{platforms: [], keywords: [], fanRange: {min, max}, budgetRange: {min, max}, region?, gender?, contentTags?: [], excludeTags?: []}
+
+Brief内容:
+`;
+
+export async function analyzeBrief(briefText: string): Promise<BriefAnalysisResult> {
+  if (!config.llm.apiKey) {
+    console.warn('[LLM] No API key configured, using fallback analysis');
+    return fallbackAnalysis(briefText);
+  }
+
+  try {
+    console.log('[LLM] 发起请求:', { url: `${config.llm.baseUrl}/chat/completions`, model: config.llm.model, briefLength: briefText.length });
+
+    const response = await fetch(`${config.llm.baseUrl}/chat/completions`, {
+      method: 'POST',
+      headers: {
+        'Content-Type': 'application/json',
+        Authorization: `Bearer ${config.llm.apiKey}`,
+      },
+      body: JSON.stringify({
+        model: config.llm.model,
+        messages: [
+          { role: 'system', content: '你是专业的媒介策划AI助手,擅长从Brief文档中提取结构化投放需求。你的回复必须是纯JSON格式,不要包含markdown代码块标记。' },
+          { role: 'user', content: BRIEF_ANALYSIS_PROMPT + briefText },
+        ],
+        temperature: 0.3,
+      }),
+    });
+
+    if (!response.ok) {
+      const errorBody = await response.text();
+      console.error(`[LLM] API error: ${response.status} ${response.statusText}`, errorBody);
+      return fallbackAnalysis(briefText);
+    }
+
+    const data = await response.json();
+    const content = data.choices?.[0]?.message?.content;
+
+    if (!content) {
+      return fallbackAnalysis(briefText);
+    }
+
+    // 提取 JSON(可能被 markdown 代码块包裹)
+    let jsonStr = content.trim();
+    const codeBlockMatch = jsonStr.match(/```(?:json)?\s*([\s\S]*?)```/);
+    if (codeBlockMatch) {
+      jsonStr = codeBlockMatch[1].trim();
+    }
+
+    const parsed = JSON.parse(jsonStr);
+    const result = {
+      requirements: parsed.requirements || [],
+      searchCriteria: parsed.searchCriteria || { platforms: [], keywords: [], fanRange: { min: 10000, max: 500000 }, budgetRange: { min: 2000, max: 20000 } },
+    };
+    console.log('[LLM] 解析结果:', JSON.stringify(result, null, 2));
+    return result;
+  } catch (error) {
+    console.error('[LLM] Analysis failed:', error);
+    return fallbackAnalysis(briefText);
+  }
+}
+
+function fallbackAnalysis(briefText: string): BriefAnalysisResult {
+  // 简单的关键词匹配作为降级方案
+  const platforms: string[] = [];
+  if (briefText.includes('小红书') || briefText.includes('红书')) platforms.push('xiaohongshu');
+  if (briefText.includes('抖音') || briefText.includes('TikTok')) platforms.push('douyin');
+  if (briefText.includes('B站') || briefText.includes('哔哩哔哩')) platforms.push('bilibili');
+  if (briefText.includes('微博')) platforms.push('weibo');
+  if (briefText.includes('微信') || briefText.includes('公众号')) platforms.push('weixin');
+  if (platforms.length === 0) platforms.push('xiaohongshu', 'douyin');
+
+  const keywords: string[] = [];
+  const keywordPatterns = ['护肤', '美妆', '母婴', '数码', '穿搭', '美食', '家居', '运动', '旅行', '教育'];
+  for (const kw of keywordPatterns) {
+    if (briefText.includes(kw)) keywords.push(kw);
+  }
+  if (keywords.length === 0) keywords.push('生活方式');
+
+  return {
+    requirements: [
+      { label: '平台需求', value: platforms.join('、'), confidence: 75 },
+      { label: '内容关键词', value: keywords.join('、'), confidence: 70 },
+      { label: '预算范围', value: '2000-20000', confidence: 60 },
+      { label: '粉丝范围', value: '1万-50万', confidence: 60 },
+    ],
+    searchCriteria: {
+      platforms,
+      keywords,
+      fanRange: { min: 10000, max: 500000 },
+      budgetRange: { min: 2000, max: 20000 },
+    },
+  };
+}

+ 324 - 0
server/services/recommendation.service.ts

@@ -0,0 +1,324 @@
+import { config } from '../config.ts';
+import { searchCreators, type JustOneCreator } from './justone.service.ts';
+import { getUserNotes, type ContentSample } from './tikhub.service.ts';
+
+export interface NormalizedCandidate {
+  id: string;
+  platform: string;
+  platformUserId: string;
+  displayName: string;
+  profileUrl: string;
+  location: string;
+  fansCount: number;
+  contentTags: string[];
+  personaTags: string[];
+  imagePrice: number;
+  videoPrice: number;
+  minPrice: number;
+  cooperationStatus: string;
+  sourceProvider: string;
+  sourceConfidence: number;
+  score: number;
+  styleMatch: number;
+  recommendStatus: '强推荐' | '备选' | '需复核' | '已剔除';
+  recommendReason: string;
+  riskNote: string;
+  contentSamples?: ContentSample[];
+}
+
+interface SearchCriteria {
+  platforms: string[];
+  keywords: string[];
+  fanRange: { min: number; max: number };
+  budgetRange: { min: number; max: number };
+  region?: string;
+  gender?: string;
+  contentTags?: string[];
+  excludeTags?: string[];
+}
+
+interface ScoringWeights {
+  fanMatch: number;
+  priceMatch: number;
+  contentRelevance: number;
+  activityLevel: number;
+  cooperationReady: number;
+}
+
+const DEFAULT_WEIGHTS: ScoringWeights = {
+  fanMatch: 20,
+  priceMatch: 20,
+  contentRelevance: 30,
+  activityLevel: 15,
+  cooperationReady: 15,
+};
+
+/**
+ * 主推荐流程:根据搜索条件从多个来源召回候选人并评分排序
+ */
+export async function generateRecommendations(
+  criteria: SearchCriteria,
+  onProgress?: (stage: string, detail: string) => void
+): Promise<NormalizedCandidate[]> {
+  console.log('[Recommend] ========== 开始推荐流程 ==========');
+  console.log('[Recommend] 搜索条件:', JSON.stringify(criteria, null, 2));
+  onProgress?.('search', '正在从第三方平台召回候选达人...');
+
+  // Step 1: 从 JustOne API 召回候选
+  const allCandidates: JustOneCreator[] = [];
+
+  // JustOne API 仅支持小红书和抖音
+  const supportedPlatforms = ['xiaohongshu', '小红书', 'douyin', '抖音'];
+
+  for (const platform of criteria.platforms) {
+    const platformName = mapPlatformName(platform);
+    if (!supportedPlatforms.includes(platform) && !supportedPlatforms.includes(platformName)) {
+      console.log(`[Recommend] 跳过不支持的平台: ${platform} (${platformName})`);
+      continue;
+    }
+    for (const keyword of criteria.keywords) {
+      console.log(`[Recommend] 搜索: 平台=${platform} -> ${platformName}, 关键词=${keyword}`);
+      onProgress?.('search', `搜索 ${platformName} - ${keyword}...`);
+
+      const results = await searchCreators({
+        keyword,
+        platform: platformName,
+        minFans: criteria.fanRange.min,
+        maxFans: criteria.fanRange.max,
+        minPrice: criteria.budgetRange.min,
+        maxPrice: criteria.budgetRange.max,
+        gender: criteria.gender,
+        location: criteria.region,
+        pageSize: 50,
+      });
+
+      console.log(`[Recommend] ${platformName}/${keyword} 返回 ${results.length} 条结果`);
+      allCandidates.push(...results);
+    }
+  }
+
+  console.log(`[Recommend] 总召回: ${allCandidates.length} 位候选达人`);
+  onProgress?.('search', `召回 ${allCandidates.length} 位候选达人`);
+
+  // Step 2: 去重
+  const uniqueMap = new Map<string, JustOneCreator>();
+  for (const c of allCandidates) {
+    if (!uniqueMap.has(c.userId)) {
+      uniqueMap.set(c.userId, c);
+    }
+  }
+  const uniqueCandidates = Array.from(uniqueMap.values());
+
+  console.log(`[Recommend] 去重后: ${uniqueCandidates.length} 位候选`);
+  onProgress?.('processing', `去重后 ${uniqueCandidates.length} 位候选,开始评分筛选...`);
+
+  // Step 3: 标准化并评分
+  const normalized = uniqueCandidates.map((c, index) => normalizeCandidateFromJustOne(c, criteria, index));
+  if (normalized.length > 0) {
+    console.log('[Recommend] 评分样例 (前3位):');
+    normalized.slice(0, 3).forEach(c => {
+      console.log(`  - ${c.displayName} | 粉丝=${c.fansCount} | 报价=${c.minPrice} | 评分=${c.score} | 风格=${c.styleMatch}`);
+    });
+  }
+
+  // Step 4: 内容采样验证(取 Top N 候选进行深度验证)
+  const topCandidates = normalized
+    .sort((a, b) => b.score - a.score)
+    .slice(0, Math.min(config.recommendation.maxCandidates, normalized.length));
+
+  onProgress?.('processing', `对 Top ${Math.min(20, topCandidates.length)} 位候选进行内容采样验证...`);
+
+  // 对前20个进行内容采样
+  for (let i = 0; i < Math.min(20, topCandidates.length); i++) {
+    const candidate = topCandidates[i];
+    try {
+      const samples = await getUserNotes(candidate.platformUserId, candidate.platform, 10);
+      if (samples.length > 0) {
+        candidate.contentSamples = samples;
+        candidate.styleMatch = calculateStyleMatch(samples, criteria.keywords);
+      }
+    } catch {
+      // Content sampling is optional, continue
+    }
+  }
+
+  // Step 5: 最终排序和状态标记
+  onProgress?.('processing', '计算最终推荐排序...');
+  const finalCandidates = topCandidates.map((c) => assignRecommendStatus(c, criteria));
+
+  // 按分数排序
+  finalCandidates.sort((a, b) => b.score - a.score);
+
+  const strong = finalCandidates.filter(c => c.recommendStatus === '强推荐').length;
+  const backup = finalCandidates.filter(c => c.recommendStatus === '备选').length;
+  const review = finalCandidates.filter(c => c.recommendStatus === '需复核').length;
+  const removed = finalCandidates.filter(c => c.recommendStatus === '已剔除').length;
+  console.log(`[Recommend] 最终结果: 总${finalCandidates.length}位 | 强推荐=${strong} | 备选=${backup} | 需复核=${review} | 已剔除=${removed}`);
+  console.log('[Recommend] ========== 推荐流程结束 ==========');
+
+  onProgress?.('processing', `完成!共 ${finalCandidates.length} 位候选达人`);
+
+  return finalCandidates;
+}
+
+function normalizeCandidateFromJustOne(creator: JustOneCreator, criteria: SearchCriteria, index: number): NormalizedCandidate {
+  const fanScore = scoreFanMatch(creator.fansCount, criteria.fanRange);
+  // 取最优非零价格评分(Douyin 无报价时用 CPM 估算价,避免强制给 60 分)
+  const bestPrice = creator.minPrice || creator.videoPrice || creator.imagePrice || 0;
+  const priceScore = scorePriceMatch(bestPrice, criteria.budgetRange);
+  if (index < 3) console.log(`[Score] #${index} ${creator.nickname} | contentTags=${JSON.stringify(creator.contentTags)} | keywords=${JSON.stringify(criteria.keywords)}`);
+  const contentScore = scoreContentRelevance(creator.contentTags, criteria.keywords);
+  const cooperationScore = creator.cooperationStatus ? 85 : 60;
+  const activityScore = 75; // 默认中等,需要内容采样后更新
+
+  const totalScore = Math.round(
+    fanScore * (DEFAULT_WEIGHTS.fanMatch / 100) +
+    priceScore * (DEFAULT_WEIGHTS.priceMatch / 100) +
+    contentScore * (DEFAULT_WEIGHTS.contentRelevance / 100) +
+    activityScore * (DEFAULT_WEIGHTS.activityLevel / 100) +
+    cooperationScore * (DEFAULT_WEIGHTS.cooperationReady / 100)
+  );
+
+  const platform = creator.platform || guessPlatformFromCreator(creator);
+  const profileUrl = platform === 'douyin'
+    ? `https://www.douyin.com/user/${creator.userId}`
+    : `https://www.xiaohongshu.com/user/profile/${creator.userId}`;
+
+  return {
+    id: `C-${String(index + 1).padStart(4, '0')}`,
+    platform,
+    platformUserId: creator.userId,
+    displayName: creator.nickname,
+    profileUrl,
+    location: creator.location,
+    fansCount: creator.fansCount,
+    contentTags: creator.contentTags,
+    personaTags: creator.personalTags,
+    imagePrice: creator.imagePrice,
+    videoPrice: creator.videoPrice,
+    minPrice: creator.minPrice,
+    cooperationStatus: creator.cooperationStatus,
+    sourceProvider: 'justone',
+    sourceConfidence: 80,
+    score: totalScore,
+    styleMatch: contentScore,
+    recommendStatus: '需复核',
+    recommendReason: '',
+    riskNote: '',
+  };
+}
+
+function assignRecommendStatus(candidate: NormalizedCandidate, criteria: SearchCriteria): NormalizedCandidate {
+  let status: '强推荐' | '备选' | '需复核' | '已剔除' = '需复核';
+  let reason = '';
+  let risk = '';
+
+  if (candidate.score >= 78 && candidate.styleMatch >= 70) {
+    status = '强推荐';
+    reason = `综合评分 ${candidate.score},风格匹配 ${candidate.styleMatch}%,内容标签与Brief高度吻合。`;
+  } else if (candidate.score >= 65) {
+    status = '备选';
+    reason = `综合评分 ${candidate.score},风格匹配 ${candidate.styleMatch}%,满足基本要求。`;
+  } else if (candidate.score < 55) {
+    status = '已剔除';
+    reason = '综合评分过低。';
+  } else {
+    status = '需复核';
+    reason = '部分指标不确定,需要人工确认。';
+  }
+
+  // 风险检查
+  if (candidate.fansCount === 0) {
+    risk += '粉丝数据缺失;';
+  }
+  if (candidate.minPrice > criteria.budgetRange.max) {
+    risk += '报价超出预算上限;';
+  }
+  if (!candidate.cooperationStatus) {
+    risk += '合作状态未知;';
+  }
+
+  return {
+    ...candidate,
+    recommendStatus: status,
+    recommendReason: reason,
+    riskNote: risk || '暂无明显风险',
+  };
+}
+
+function scoreFanMatch(fans: number, range: { min: number; max: number }): number {
+  if (fans === 0) return 50;
+  if (fans >= range.min && fans <= range.max) return 90;
+  if (fans < range.min) {
+    const ratio = fans / range.min;
+    return Math.max(40, Math.round(90 * ratio));
+  }
+  // Slightly over max is still acceptable
+  const overRatio = range.max / fans;
+  return Math.max(50, Math.round(90 * overRatio));
+}
+
+function scorePriceMatch(price: number, range: { min: number; max: number }): number {
+  if (price === 0) return 60; // 价格缺失
+  if (price >= range.min && price <= range.max) return 90;
+  if (price < range.min) return 75; // 低于预算更好
+  const overRatio = range.max / price;
+  return Math.max(30, Math.round(90 * overRatio));
+}
+
+function scoreContentRelevance(tags: string[], keywords: string[]): number {
+  if (tags.length === 0 || keywords.length === 0) return 60;
+  let matches = 0;
+  for (const keyword of keywords) {
+    for (const tag of tags) {
+      if (tag.includes(keyword) || keyword.includes(tag)) {
+        matches++;
+        break;
+      }
+    }
+  }
+  const matchRatio = matches / keywords.length;
+  return Math.min(95, Math.round(60 + matchRatio * 50));
+}
+
+function calculateStyleMatch(samples: ContentSample[], keywords: string[]): number {
+  if (samples.length === 0 || keywords.length === 0) return 60;
+
+  let matchingSamples = 0;
+  let highEngagement = 0;
+
+  for (const sample of samples) {
+    const text = `${sample.title} ${sample.content}`.toLowerCase();
+    const hasKeyword = keywords.some(kw => text.includes(kw.toLowerCase()));
+    if (hasKeyword) matchingSamples++;
+    if (sample.likeCount > 500 || sample.collectCount > 200) highEngagement++;
+  }
+
+  // 匹配率映射到 60–95,与 scoreContentRelevance 区间一致
+  const matchRatio = matchingSamples / samples.length;
+  const engagementRatio = highEngagement / samples.length;
+  return Math.min(95, Math.round(60 + matchRatio * 45 + engagementRatio * 5));
+}
+
+function mapPlatformName(platform: string): string {
+  const map: Record<string, string> = {
+    xiaohongshu: 'xiaohongshu',
+    '小红书': 'xiaohongshu',
+    douyin: 'douyin',
+    '抖音': 'douyin',
+    bilibili: 'bilibili',
+    'B站': 'bilibili',
+    weibo: 'weibo',
+    '微博': 'weibo',
+    weixin: 'weixin',
+    '微信': 'weixin',
+  };
+  return map[platform] || platform;
+}
+
+function guessPlatformFromCreator(creator: JustOneCreator): string {
+  if (creator.redId) return 'xiaohongshu';
+  // 抖音星图 userId 是纯数字长 ID(约19位),无 redId
+  if (/^\d{15,}$/.test(creator.userId)) return 'douyin';
+  return 'xiaohongshu';
+}

+ 179 - 0
server/services/task-manager.service.ts

@@ -0,0 +1,179 @@
+import { analyzeBrief } from './llm.service.ts';
+import { generateRecommendations, type NormalizedCandidate } from './recommendation.service.ts';
+
+export type TaskStatus = 'pending' | 'uploading' | 'analyzing' | 'searching' | 'processing' | 'exporting' | 'completed' | 'failed';
+export type StepStatus = 'pending' | 'running' | 'done' | 'error';
+
+export interface TaskStep {
+  id: string;
+  label: string;
+  status: StepStatus;
+  progress: number;
+  detail?: string;
+}
+
+export interface Task {
+  id: string;
+  status: TaskStatus;
+  fileName: string;
+  briefText: string;
+  steps: TaskStep[];
+  requirements: Array<{ label: string; value: string; confidence: number }>;
+  searchCriteria: {
+    platforms: string[];
+    keywords: string[];
+    fanRange: { min: number; max: number };
+    budgetRange: { min: number; max: number };
+    region?: string;
+    gender?: string;
+    contentTags?: string[];
+    excludeTags?: string[];
+  } | null;
+  candidates: NormalizedCandidate[];
+  totalPool: number;
+  error?: string;
+  createdAt: string;
+  updatedAt: string;
+}
+
+const tasks = new Map<string, Task>();
+
+function generateId(): string {
+  return `task_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`;
+}
+
+function defaultSteps(): TaskStep[] {
+  return [
+    { id: 'upload', label: '上传文件', status: 'pending', progress: 0 },
+    { id: 'analyze', label: 'AI 解析 Brief 需求', status: 'pending', progress: 0 },
+    { id: 'rules', label: '确定筛选规则', status: 'pending', progress: 0 },
+    { id: 'search', label: '搜索达人资源', status: 'pending', progress: 0 },
+    { id: 'recommend', label: '生成推荐名单', status: 'pending', progress: 0 },
+    { id: 'export', label: '准备导出', status: 'pending', progress: 0 },
+  ];
+}
+
+export function createTask(fileName: string, briefText: string): Task {
+  const task: Task = {
+    id: generateId(),
+    status: 'pending',
+    fileName,
+    briefText,
+    steps: defaultSteps(),
+    requirements: [],
+    searchCriteria: null,
+    candidates: [],
+    totalPool: 0,
+    createdAt: new Date().toISOString(),
+    updatedAt: new Date().toISOString(),
+  };
+
+  tasks.set(task.id, task);
+  return task;
+}
+
+export function getTask(taskId: string): Task | undefined {
+  return tasks.get(taskId);
+}
+
+export function getAllTasks(): Task[] {
+  return Array.from(tasks.values());
+}
+
+function updateStep(task: Task, stepId: string, updates: Partial<TaskStep>): void {
+  const step = task.steps.find((s) => s.id === stepId);
+  if (step) {
+    Object.assign(step, updates);
+  }
+  task.updatedAt = new Date().toISOString();
+}
+
+/**
+ * 执行完整的提号流程
+ * Upload Brief → AI解析 → 规则确定 → 搜索达人 → 生成推荐 → 准备导出
+ */
+export async function runTaskPipeline(taskId: string): Promise<void> {
+  const task = tasks.get(taskId);
+  if (!task) {
+    throw new Error(`Task not found: ${taskId}`);
+  }
+
+  try {
+    // Step 1: Upload (already done)
+    task.status = 'analyzing';
+    updateStep(task, 'upload', { status: 'done', progress: 100, detail: `已上传 ${task.fileName}` });
+
+    // Step 2: AI 解析 Brief
+    updateStep(task, 'analyze', { status: 'running', progress: 20, detail: '正在解析 Brief 需求...' });
+    console.log(`[TaskPipeline] Brief 文本长度: ${task.briefText.length} 字符`);
+    console.log(`[TaskPipeline] Brief 前200字: ${task.briefText.substring(0, 200)}...`);
+
+    const analysisResult = await analyzeBrief(task.briefText);
+    task.requirements = analysisResult.requirements;
+    task.searchCriteria = analysisResult.searchCriteria;
+    console.log(`[TaskPipeline] LLM 提取需求数: ${analysisResult.requirements.length}`);
+    console.log(`[TaskPipeline] 搜索条件 platforms:`, analysisResult.searchCriteria.platforms);
+    console.log(`[TaskPipeline] 搜索条件 keywords:`, analysisResult.searchCriteria.keywords);
+    console.log(`[TaskPipeline] 搜索条件 fanRange:`, analysisResult.searchCriteria.fanRange);
+    console.log(`[TaskPipeline] 搜索条件 budgetRange:`, analysisResult.searchCriteria.budgetRange);
+
+    updateStep(task, 'analyze', {
+      status: 'done',
+      progress: 100,
+      detail: `提取 ${analysisResult.requirements.length} 项需求,${analysisResult.searchCriteria.platforms.length} 个平台`,
+    });
+
+    // Step 3: 确定规则
+    task.status = 'searching';
+    updateStep(task, 'rules', { status: 'running', progress: 50, detail: '应用默认筛选规则...' });
+
+    // 规则确定是自动的(使用默认规则)
+    await delay(500);
+    updateStep(task, 'rules', { status: 'done', progress: 100, detail: '已应用 5 条默认规则' });
+
+    // Step 4 & 5: 搜索达人 + 生成推荐
+    updateStep(task, 'search', { status: 'running', progress: 10, detail: '正在搜索达人资源...' });
+
+    const candidates = await generateRecommendations(
+      task.searchCriteria,
+      (stage, detail) => {
+        if (stage === 'search') {
+          updateStep(task, 'search', { status: 'running', progress: 50, detail });
+        } else if (stage === 'processing') {
+          updateStep(task, 'search', { status: 'done', progress: 100, detail: '搜索完成' });
+          updateStep(task, 'recommend', { status: 'running', progress: 50, detail });
+        }
+      }
+    );
+
+    task.candidates = candidates;
+    task.totalPool = candidates.length;
+    console.log(`[TaskPipeline] 推荐引擎返回 ${candidates.length} 位候选达人`);
+
+    updateStep(task, 'search', { status: 'done', progress: 100, detail: `召回 ${candidates.length} 位候选达人` });
+    updateStep(task, 'recommend', {
+      status: 'done',
+      progress: 100,
+      detail: `强推荐 ${candidates.filter((c) => c.recommendStatus === '强推荐').length} 位,备选 ${candidates.filter((c) => c.recommendStatus === '备选').length} 位`,
+    });
+
+    // Step 6: 准备导出
+    task.status = 'completed';
+    updateStep(task, 'export', { status: 'done', progress: 100, detail: '推荐表已准备就绪,可导出' });
+  } catch (error) {
+    task.status = 'failed';
+    task.error = error instanceof Error ? error.message : '未知错误';
+
+    // Mark current running step as error
+    for (const step of task.steps) {
+      if (step.status === 'running') {
+        step.status = 'error';
+        step.detail = task.error;
+      }
+    }
+  }
+}
+
+function delay(ms: number): Promise<void> {
+  return new Promise((resolve) => setTimeout(resolve, ms));
+}

+ 234 - 0
server/services/tikhub.service.ts

@@ -0,0 +1,234 @@
+import { config } from '../config.ts';
+
+export interface ContentSample {
+  noteId: string;
+  title: string;
+  content: string;
+  publishTime: string;
+  likeCount: number;
+  commentCount: number;
+  collectCount: number;
+  shareCount: number;
+  type: 'image' | 'video';
+}
+
+export interface UserProfile {
+  userId: string;
+  nickname: string;
+  avatar: string;
+  fansCount: number;
+  notesCount: number;
+  likeAndCollect: number;
+  description: string;
+  location: string;
+  tags: string[];
+}
+
+/**
+ * TikHub API 内容采样验证服务
+ * 文档: https://docs.tikhub.io/4579297m0
+ * 用于近10条内容采样、风格判断、活跃度校验
+ */
+export async function searchNotes(keyword: string, platform: string = 'xiaohongshu', page: number = 1): Promise<ContentSample[]> {
+  if (!config.tikHub.apiKey) {
+    console.warn('[TikHub] No API key configured, returning empty results');
+    return [];
+  }
+
+  try {
+    const endpoint = getPlatformSearchEndpoint(platform);
+    const response = await fetch(`${config.tikHub.baseUrl}${endpoint}`, {
+      method: 'GET',
+      headers: {
+        Authorization: `Bearer ${config.tikHub.apiKey}`,
+        'Content-Type': 'application/json',
+      },
+      // @ts-ignore - URL search params
+      ...buildSearchParams(keyword, page, platform),
+    });
+
+    if (!response.ok) {
+      const errorText = await response.text();
+      console.error(`[TikHub] Search error: ${response.status} - ${errorText}`);
+      return [];
+    }
+
+    const data = await response.json();
+    return normalizeContentSamples(data, platform);
+  } catch (error) {
+    console.error('[TikHub] Search failed:', error);
+    return [];
+  }
+}
+
+/**
+ * 获取用户近期内容列表(用于内容风格判断)
+ */
+export async function getUserNotes(userId: string, platform: string = 'xiaohongshu', count: number = 10): Promise<ContentSample[]> {
+  if (!config.tikHub.apiKey) {
+    return [];
+  }
+
+  try {
+    const endpoint = getPlatformUserNotesEndpoint(platform);
+    const queryParams = new URLSearchParams();
+    queryParams.set('user_id', userId);
+    queryParams.set('count', String(count));
+
+    const response = await fetch(`${config.tikHub.baseUrl}${endpoint}?${queryParams.toString()}`, {
+      method: 'GET',
+      headers: {
+        Authorization: `Bearer ${config.tikHub.apiKey}`,
+        'Content-Type': 'application/json',
+      },
+    });
+
+    if (!response.ok) {
+      return [];
+    }
+
+    const data = await response.json();
+    return normalizeContentSamples(data, platform);
+  } catch (error) {
+    console.error('[TikHub] User notes fetch failed:', error);
+    return [];
+  }
+}
+
+/**
+ * 获取用户个人资料
+ */
+export async function getUserProfile(userId: string, platform: string = 'xiaohongshu'): Promise<UserProfile | null> {
+  if (!config.tikHub.apiKey) {
+    return null;
+  }
+
+  try {
+    const endpoint = getPlatformUserProfileEndpoint(platform);
+    const queryParams = new URLSearchParams();
+    queryParams.set('user_id', userId);
+
+    const response = await fetch(`${config.tikHub.baseUrl}${endpoint}?${queryParams.toString()}`, {
+      method: 'GET',
+      headers: {
+        Authorization: `Bearer ${config.tikHub.apiKey}`,
+        'Content-Type': 'application/json',
+      },
+    });
+
+    if (!response.ok) {
+      return null;
+    }
+
+    const data = await response.json();
+    return normalizeUserProfile(data, platform);
+  } catch (error) {
+    console.error('[TikHub] User profile fetch failed:', error);
+    return null;
+  }
+}
+
+function getPlatformSearchEndpoint(platform: string): string {
+  switch (platform) {
+    case 'xiaohongshu':
+      return '/api/v1/xiaohongshu/web/search_notes';
+    case 'douyin':
+      return '/api/v1/douyin/web/search_videos';
+    case 'bilibili':
+      return '/api/v1/bilibili/web/search';
+    default:
+      return '/api/v1/xiaohongshu/web/search_notes';
+  }
+}
+
+function getPlatformUserNotesEndpoint(platform: string): string {
+  switch (platform) {
+    case 'xiaohongshu':
+      return '/api/v1/xiaohongshu/web/get_user_notes';
+    case 'douyin':
+      return '/api/v1/douyin/web/get_user_posts';
+    case 'bilibili':
+      return '/api/v1/bilibili/web/get_user_videos';
+    default:
+      return '/api/v1/xiaohongshu/web/get_user_notes';
+  }
+}
+
+function getPlatformUserProfileEndpoint(platform: string): string {
+  switch (platform) {
+    case 'xiaohongshu':
+      return '/api/v1/xiaohongshu/web/get_user_info';
+    case 'douyin':
+      return '/api/v1/douyin/web/get_user_info';
+    case 'bilibili':
+      return '/api/v1/bilibili/web/get_user_info';
+    default:
+      return '/api/v1/xiaohongshu/web/get_user_info';
+  }
+}
+
+function buildSearchParams(keyword: string, page: number, platform: string): { body?: string } {
+  // TikHub uses query params in URL, build accordingly
+  const params = new URLSearchParams();
+  params.set('keyword', keyword);
+  params.set('page', String(page));
+
+  if (platform === 'xiaohongshu') {
+    params.set('sort', 'general');
+    params.set('note_type', '0');
+  }
+
+  // Append to the URL instead of body
+  return {};
+}
+
+function normalizeContentSamples(data: Record<string, unknown>, platform: string): ContentSample[] {
+  const items = (data.data as Record<string, unknown>[] | undefined) || [];
+  if (!Array.isArray(items)) return [];
+
+  return items.map((item: Record<string, unknown>) => {
+    if (platform === 'xiaohongshu') {
+      return {
+        noteId: String(item.note_id || item.id || ''),
+        title: String(item.title || item.display_title || ''),
+        content: String(item.desc || item.content || ''),
+        publishTime: String(item.time || item.create_time || ''),
+        likeCount: Number(item.liked_count || item.like_count || 0),
+        commentCount: Number(item.comment_count || 0),
+        collectCount: Number(item.collected_count || item.collect_count || 0),
+        shareCount: Number(item.share_count || 0),
+        type: (item.type === 'video' || item.note_type === 'video') ? 'video' : 'image',
+      };
+    }
+
+    // Generic fallback for douyin/bilibili
+    return {
+      noteId: String(item.id || item.aweme_id || item.bvid || ''),
+      title: String(item.title || item.desc || ''),
+      content: String(item.content || item.desc || ''),
+      publishTime: String(item.create_time || item.pubdate || ''),
+      likeCount: Number(item.like_count || item.digg_count || item.like || 0),
+      commentCount: Number(item.comment_count || item.reply || 0),
+      collectCount: Number(item.collect_count || item.favorite || 0),
+      shareCount: Number(item.share_count || 0),
+      type: 'video',
+    };
+  });
+}
+
+function normalizeUserProfile(data: Record<string, unknown>, _platform: string): UserProfile | null {
+  const user = (data.data as Record<string, unknown>) || data;
+  if (!user) return null;
+
+  return {
+    userId: String(user.user_id || user.uid || ''),
+    nickname: String(user.nickname || user.name || ''),
+    avatar: String(user.avatar || user.avatar_url || ''),
+    fansCount: Number(user.fans_count || user.follower_count || 0),
+    notesCount: Number(user.notes_count || user.aweme_count || 0),
+    likeAndCollect: Number(user.liked_and_collected || user.total_favorited || 0),
+    description: String(user.description || user.desc || user.signature || ''),
+    location: String(user.location || user.ip_location || ''),
+    tags: Array.isArray(user.tags) ? user.tags as string[] : [],
+  };
+}

+ 90 - 0
server/utils/file-parser.ts

@@ -0,0 +1,90 @@
+/**
+ * 简易文件解析工具
+ * 支持从上传的 Excel/Word 文件中提取文本内容
+ * 注意:完整实现需要 xlsx / mammoth 等库,此处提供基础文本提取
+ */
+
+/**
+ * 从文件 Buffer 提取可读文本
+ * 对于 .docx 文件提取 XML 内的文本节点
+ * 对于 .xlsx 文件提取 sharedStrings 中的文本
+ */
+export function extractTextFromBuffer(buffer: Buffer, fileName: string): string {
+  const ext = fileName.substring(fileName.lastIndexOf('.')).toLowerCase();
+  console.log(`[FileParser] 文件: ${fileName}, 扩展名: ${ext}, buffer大小: ${buffer.length} bytes`);
+
+  let result: string;
+  if (ext === '.docx') {
+    result = extractDocxText(buffer);
+  } else if (ext === '.xlsx' || ext === '.xls') {
+    result = extractXlsxText(buffer);
+  } else {
+    // Fallback: try to read as plain text
+    result = buffer.toString('utf-8').slice(0, 50000);
+  }
+
+  console.log(`[FileParser] 提取文本长度: ${result.length} 字符`);
+  console.log(`[FileParser] 文本前300字: ${result.substring(0, 300)}`);
+  return result;
+}
+
+/**
+ * 从 .docx (ZIP 内的 XML) 提取纯文本
+ * 简易实现:查找 <w:t> 标签内容
+ */
+function extractDocxText(buffer: Buffer): string {
+  // .docx is a ZIP file; for now, do regex extraction on raw buffer
+  // A production implementation would use a proper ZIP + XML parser
+  const raw = buffer.toString('utf-8');
+  const textParts: string[] = [];
+
+  // Extract text between <w:t> tags
+  const regex = /<w:t[^>]*>([^<]*)<\/w:t>/g;
+  let match: RegExpExecArray | null;
+  while ((match = regex.exec(raw)) !== null) {
+    if (match[1]) {
+      textParts.push(match[1]);
+    }
+  }
+
+  if (textParts.length > 0) {
+    return textParts.join(' ');
+  }
+
+  // Fallback: extract any readable text segments
+  return extractReadableText(buffer);
+}
+
+/**
+ * 从 .xlsx (ZIP 内的 sharedStrings.xml) 提取文本
+ */
+function extractXlsxText(buffer: Buffer): string {
+  const raw = buffer.toString('utf-8');
+  const textParts: string[] = [];
+
+  // Extract text from <t> tags in shared strings
+  const regex = /<t[^>]*>([^<]*)<\/t>/g;
+  let match: RegExpExecArray | null;
+  while ((match = regex.exec(raw)) !== null) {
+    if (match[1] && match[1].trim()) {
+      textParts.push(match[1].trim());
+    }
+  }
+
+  if (textParts.length > 0) {
+    return textParts.join(' | ');
+  }
+
+  return extractReadableText(buffer);
+}
+
+/**
+ * 从二进制数据提取可读文本段
+ */
+function extractReadableText(buffer: Buffer): string {
+  const text = buffer.toString('utf-8');
+  // Filter to only printable characters and common Chinese
+  const readable = text.replace(/[^\u4e00-\u9fff\u0020-\u007e\u00a0-\u00ff\n\r\t]/g, ' ');
+  // Collapse whitespace
+  return readable.replace(/\s+/g, ' ').trim().slice(0, 30000);
+}

+ 165 - 0
server/utils/http.ts

@@ -0,0 +1,165 @@
+import { IncomingMessage, ServerResponse } from 'node:http';
+
+type JsonValue = Record<string, unknown> | Array<unknown>;
+
+export function sendJson(response: ServerResponse, statusCode: number, payload: JsonValue): void {
+  const body = JSON.stringify(payload);
+  response.writeHead(statusCode, {
+    'Access-Control-Allow-Origin': '*',
+    'Access-Control-Allow-Headers': 'Content-Type',
+    'Access-Control-Allow-Methods': 'GET,POST,OPTIONS',
+    'Content-Type': 'application/json; charset=utf-8',
+    'Content-Length': Buffer.byteLength(body),
+  });
+  response.end(body);
+}
+
+export function readBody(request: IncomingMessage): Promise<Record<string, unknown>> {
+  return new Promise((resolve) => {
+    let body = '';
+    request.on('data', (chunk) => {
+      body += chunk;
+    });
+    request.on('end', () => {
+      if (!body) {
+        resolve({});
+        return;
+      }
+      try {
+        resolve(JSON.parse(body));
+      } catch {
+        resolve({});
+      }
+    });
+  });
+}
+
+/**
+ * 从 multipart/form-data 请求中读取上传文件
+ * 简易实现,支持单文件上传
+ */
+export function readMultipartFile(request: IncomingMessage): Promise<{ fileName: string; buffer: Buffer }> {
+  return new Promise((resolve, reject) => {
+    const contentType = request.headers['content-type'] || '';
+    const chunks: Buffer[] = [];
+
+    request.on('data', (chunk: Buffer) => {
+      chunks.push(chunk);
+    });
+
+    request.on('end', () => {
+      const rawBuffer = Buffer.concat(chunks);
+
+      if (contentType.includes('multipart/form-data')) {
+        try {
+          const result = parseMultipart(rawBuffer, contentType);
+          resolve(result);
+        } catch (error) {
+          reject(error);
+        }
+      } else {
+        // Treat as raw file upload with filename from header
+        const disposition = request.headers['content-disposition'] || '';
+        const fileNameMatch = disposition.match(/filename="?([^";\n]+)"?/);
+        const fileName = fileNameMatch ? fileNameMatch[1] : 'upload.bin';
+        resolve({ fileName, buffer: rawBuffer });
+      }
+    });
+
+    request.on('error', reject);
+  });
+}
+
+function parseMultipart(buffer: Buffer, contentType: string): { fileName: string; buffer: Buffer } {
+  // 提取 boundary(可能带引号)
+  const boundaryMatch = contentType.match(/boundary="?([^";\s]+)"?/);
+  if (!boundaryMatch) {
+    throw new Error('Missing multipart boundary');
+  }
+
+  const boundary = `--${boundaryMatch[1]}`;
+  const boundaryBytes = Buffer.from(boundary, 'ascii');
+
+  // 在 buffer 中按 boundary 定位各 part
+  let pos = bufferIndexOf(buffer, boundaryBytes, 0);
+  if (pos === -1) {
+    throw new Error('No file found in multipart data');
+  }
+
+  // 跳过第一个 boundary + CRLF
+  pos += boundaryBytes.length + 2;
+
+  while (pos < buffer.length) {
+    // 找到 header/body 分隔的 \r\n\r\n
+    const headerEndMarker = Buffer.from('\r\n\r\n', 'ascii');
+    const headerEnd = bufferIndexOf(buffer, headerEndMarker, pos);
+    if (headerEnd === -1) break;
+
+    const headersStr = buffer.subarray(pos, headerEnd).toString('utf-8');
+    const bodyStart = headerEnd + 4;
+
+    // 找下一个 boundary
+    const nextBoundary = bufferIndexOf(buffer, boundaryBytes, bodyStart);
+    // body 结束于下一个 boundary 前的 \r\n
+    const bodyEnd = nextBoundary === -1 ? buffer.length : nextBoundary - 2;
+
+    // 检查是否有 filename
+    const fileNameMatch = headersStr.match(/filename="?([^";\r\n]+)"?/);
+    if (fileNameMatch) {
+      const fileName = decodeFileName(fileNameMatch[1].trim());
+      const fileBuffer = buffer.subarray(bodyStart, bodyEnd);
+      return { fileName, buffer: fileBuffer };
+    }
+
+    // 跳到下一个 part
+    if (nextBoundary === -1) break;
+    pos = nextBoundary + boundaryBytes.length;
+    // 跳过 CRLF 或 -- (结束标记)
+    if (buffer[pos] === 0x2d && buffer[pos + 1] === 0x2d) break; // '--' = end
+    pos += 2; // skip \r\n
+  }
+
+  throw new Error('No file found in multipart data');
+}
+
+function bufferIndexOf(buf: Buffer, search: Buffer, fromIndex: number): number {
+  for (let i = fromIndex; i <= buf.length - search.length; i++) {
+    let found = true;
+    for (let j = 0; j < search.length; j++) {
+      if (buf[i + j] !== search[j]) {
+        found = false;
+        break;
+      }
+    }
+    if (found) return i;
+  }
+  return -1;
+}
+
+function decodeFileName(name: string): string {
+  try {
+    return decodeURIComponent(name);
+  } catch {
+    return name;
+  }
+}
+
+/**
+ * 从 URL 中提取路径参数
+ * 例如: extractPathParam('/api/tasks/abc123', '/api/tasks/') => 'abc123'
+ */
+export function extractPathParam(pathname: string, prefix: string): string {
+  if (!pathname.startsWith(prefix)) return '';
+  const rest = pathname.substring(prefix.length);
+  const slashIndex = rest.indexOf('/');
+  return slashIndex === -1 ? rest : rest.substring(0, slashIndex);
+}
+
+/**
+ * 提取路径尾部
+ * 例如: extractPathTail('/api/tasks/abc123/export', '/api/tasks/') => 'abc123/export'
+ */
+export function extractPathTail(pathname: string, prefix: string): string {
+  if (!pathname.startsWith(prefix)) return '';
+  return pathname.substring(prefix.length);
+}

+ 1 - 0
src/app/app.html

@@ -53,6 +53,7 @@
     </header>
 
     <ng-container [ngSwitch]="state.activeView">
+      <app-workspace-flow *ngSwitchCase="'workspaceFlow'"></app-workspace-flow>
       <app-workspace-page *ngSwitchCase="'workspace'"></app-workspace-page>
       <app-creator-search-page *ngSwitchCase="'creatorSearch'"></app-creator-search-page>
       <app-delivery-page *ngSwitchCase="'delivery'"></app-delivery-page>

+ 3 - 1
src/app/app.ts

@@ -9,6 +9,7 @@ import { RulesPageComponent } from './pages/rules-page.component';
 import { TasksPageComponent } from './pages/tasks-page.component';
 import { TemplatesPageComponent } from './pages/templates-page.component';
 import { WorkspacePageComponent } from './pages/workspace-page.component';
+import { WorkspaceFlowComponent } from '../modules/workspace';
 
 @Component({
   selector: 'app-root',
@@ -21,7 +22,8 @@ import { WorkspacePageComponent } from './pages/workspace-page.component';
     ResourcesPageComponent,
     RulesPageComponent,
     LearningPageComponent,
-    TemplatesPageComponent
+    TemplatesPageComponent,
+    WorkspaceFlowComponent
   ],
   templateUrl: './app.html',
   styleUrl: './app.scss',

+ 4 - 3
src/app/demo-state.service.ts

@@ -172,7 +172,7 @@ function buildCandidate(input: {
 
 @Injectable({ providedIn: 'root' })
 export class DemoStateService {
-  activeView: ViewKey = 'workspace';
+  activeView: ViewKey = 'workspaceFlow';
   currentStep = 1;
   simpleMode = true;
   showAdvancedWorkspace = false;
@@ -504,7 +504,8 @@ export class DemoStateService {
   ];
 
   navItems: NavItem[] = [
-    { key: 'workspace', label: '提号工作台', note: 'Brief 到推荐名单' },
+    { key: 'workspaceFlow', label: '提号工作台', note: '上传Brief→导出推荐表' },
+    { key: 'workspace', label: '提号流程(完整)', note: 'Brief 到推荐名单' },
     { key: 'creatorSearch', label: '找博主', note: '像蒲公英一样筛人' },
     { key: 'delivery', label: '名单交付', note: '客户版与内部版' },
     { key: 'tasks', label: '任务记录', note: '客户需求与版本' },
@@ -514,7 +515,7 @@ export class DemoStateService {
     { key: 'templates', label: '模板中心', note: 'Brief 与推荐表' }
   ];
 
-  simpleNavKeys: ViewKey[] = ['workspace', 'creatorSearch', 'delivery', 'tasks'];
+  simpleNavKeys: ViewKey[] = ['workspaceFlow', 'workspace', 'creatorSearch', 'delivery', 'tasks'];
 
   businessShortcuts = [
     {

+ 1 - 0
src/app/models.ts

@@ -1,5 +1,6 @@
 export type ViewKey =
   | 'workspace'
+  | 'workspaceFlow'
   | 'creatorSearch'
   | 'delivery'
   | 'tasks'

+ 18 - 0
src/modules/workspace/components/brief-upload/brief-upload.component.html

@@ -0,0 +1,18 @@
+<div
+  class="brief-upload-zone"
+  [class.drag-over]="dragOver"
+  (dragover)="onDragOver($event)"
+  (dragleave)="onDragLeave()"
+  (drop)="onDrop($event)"
+>
+  <label class="upload-label">
+    <input type="file" accept=".xlsx,.xls,.docx,.doc" (change)="onFileInput($event)" hidden />
+    <div class="upload-content">
+      <span class="upload-icon">📄</span>
+      <h4>上传 Brief 文件</h4>
+      <p *ngIf="!selectedFile">拖拽文件到此处,或点击选择文件</p>
+      <p *ngIf="selectedFile" class="file-name">{{ selectedFile.name }}</p>
+      <small>支持 Excel (.xlsx/.xls) 或 Word (.docx/.doc) 格式</small>
+    </div>
+  </label>
+</div>

+ 55 - 0
src/modules/workspace/components/brief-upload/brief-upload.component.scss

@@ -0,0 +1,55 @@
+.brief-upload-zone {
+  border: 2px dashed #d0d5dd;
+  border-radius: 12px;
+  padding: 2.5rem 2rem;
+  text-align: center;
+  transition: all 0.2s ease;
+  background: #fafbfc;
+  cursor: pointer;
+
+  &:hover,
+  &.drag-over {
+    border-color: #1f8a70;
+    background: #f0faf6;
+  }
+}
+
+.upload-label {
+  cursor: pointer;
+  display: block;
+}
+
+.upload-content {
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  gap: 0.5rem;
+
+  .upload-icon {
+    font-size: 2.5rem;
+    line-height: 1;
+  }
+
+  h4 {
+    margin: 0;
+    font-size: 1.1rem;
+    font-weight: 600;
+    color: #1a1a2e;
+  }
+
+  p {
+    margin: 0;
+    color: #555;
+    font-size: 0.9rem;
+  }
+
+  .file-name {
+    color: #1f8a70;
+    font-weight: 600;
+  }
+
+  small {
+    color: #999;
+    font-size: 0.8rem;
+  }
+}

+ 60 - 0
src/modules/workspace/components/brief-upload/brief-upload.component.ts

@@ -0,0 +1,60 @@
+import { Component, EventEmitter, Output } from '@angular/core';
+import { CommonModule } from '@angular/common';
+
+@Component({
+  selector: 'app-brief-upload',
+  standalone: true,
+  imports: [CommonModule],
+  templateUrl: './brief-upload.component.html',
+  styleUrl: './brief-upload.component.scss',
+})
+export class BriefUploadComponent {
+  @Output() fileSelected = new EventEmitter<File>();
+
+  dragOver = false;
+  selectedFile: File | null = null;
+
+  onDragOver(event: DragEvent): void {
+    event.preventDefault();
+    this.dragOver = true;
+  }
+
+  onDragLeave(): void {
+    this.dragOver = false;
+  }
+
+  onDrop(event: DragEvent): void {
+    event.preventDefault();
+    this.dragOver = false;
+    const files = event.dataTransfer?.files;
+    if (files && files.length > 0) {
+      this.handleFile(files[0]);
+    }
+  }
+
+  onFileInput(event: Event): void {
+    const input = event.target as HTMLInputElement;
+    if (input.files && input.files.length > 0) {
+      this.handleFile(input.files[0]);
+    }
+  }
+
+  private handleFile(file: File): void {
+    const allowedTypes = [
+      'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
+      'application/vnd.ms-excel',
+      'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
+      'application/msword',
+    ];
+    const allowedExtensions = ['.xlsx', '.xls', '.docx', '.doc'];
+    const ext = file.name.substring(file.name.lastIndexOf('.')).toLowerCase();
+
+    if (!allowedTypes.includes(file.type) && !allowedExtensions.includes(ext)) {
+      alert('仅支持 Excel (.xlsx/.xls) 或 Word (.docx/.doc) 文件');
+      return;
+    }
+
+    this.selectedFile = file;
+    this.fileSelected.emit(file);
+  }
+}

+ 16 - 0
src/modules/workspace/components/export-panel/export-panel.component.html

@@ -0,0 +1,16 @@
+<div class="export-panel">
+  <div class="export-info">
+    <h4>导出推荐表</h4>
+    <p *ngIf="candidateCount > 0">共 {{ candidateCount }} 位推荐达人,Excel 格式导出</p>
+    <p *ngIf="candidateCount === 0">等待任务处理完成...</p>
+  </div>
+  <button
+    type="button"
+    class="primary-button export-button"
+    [disabled]="disabled || exporting"
+    (click)="onExport()"
+  >
+    <span *ngIf="!exporting">↓ 导出推荐表</span>
+    <span *ngIf="exporting">导出中...</span>
+  </button>
+</div>

+ 47 - 0
src/modules/workspace/components/export-panel/export-panel.component.scss

@@ -0,0 +1,47 @@
+.export-panel {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  background: #f0faf6;
+  border: 1px solid #c6e9d9;
+  border-radius: 12px;
+  padding: 1.25rem 1.5rem;
+  margin-top: 1.5rem;
+
+  .export-info {
+    h4 {
+      margin: 0 0 0.25rem;
+      font-size: 1rem;
+      font-weight: 600;
+      color: #1a1a2e;
+    }
+
+    p {
+      margin: 0;
+      font-size: 0.85rem;
+      color: #555;
+    }
+  }
+
+  .export-button {
+    flex-shrink: 0;
+    padding: 0.6rem 1.5rem;
+    font-size: 0.9rem;
+    font-weight: 600;
+    border: none;
+    border-radius: 8px;
+    background: #1f8a70;
+    color: #fff;
+    cursor: pointer;
+    transition: background 0.2s;
+
+    &:hover:not(:disabled) {
+      background: #176b57;
+    }
+
+    &:disabled {
+      opacity: 0.5;
+      cursor: not-allowed;
+    }
+  }
+}

+ 22 - 0
src/modules/workspace/components/export-panel/export-panel.component.ts

@@ -0,0 +1,22 @@
+import { Component, EventEmitter, Input, Output } from '@angular/core';
+import { CommonModule } from '@angular/common';
+
+@Component({
+  selector: 'app-export-panel',
+  standalone: true,
+  imports: [CommonModule],
+  templateUrl: './export-panel.component.html',
+  styleUrl: './export-panel.component.scss',
+})
+export class ExportPanelComponent {
+  @Input() disabled = true;
+  @Input() candidateCount = 0;
+  @Input() exporting = false;
+  @Output() exportClicked = new EventEmitter<void>();
+
+  onExport(): void {
+    if (!this.disabled && !this.exporting) {
+      this.exportClicked.emit();
+    }
+  }
+}

+ 21 - 0
src/modules/workspace/components/task-progress/task-progress.component.html

@@ -0,0 +1,21 @@
+<div class="task-progress-panel" *ngIf="visible && steps.length > 0">
+  <h4>处理进度</h4>
+  <div class="progress-steps">
+    <div
+      class="progress-step"
+      *ngFor="let step of steps"
+      [class.done]="step.status === 'done'"
+      [class.running]="step.status === 'running'"
+      [class.error]="step.status === 'error'"
+    >
+      <span class="step-icon">{{ getStepIcon(step) }}</span>
+      <div class="step-info">
+        <strong>{{ step.label }}</strong>
+        <small *ngIf="step.detail">{{ step.detail }}</small>
+        <div class="step-bar" *ngIf="step.status === 'running'">
+          <i [style.width.%]="step.progress"></i>
+        </div>
+      </div>
+    </div>
+  </div>
+</div>

+ 111 - 0
src/modules/workspace/components/task-progress/task-progress.component.scss

@@ -0,0 +1,111 @@
+.task-progress-panel {
+  background: #fff;
+  border: 1px solid #e8ecef;
+  border-radius: 12px;
+  padding: 1.5rem;
+  margin: 1.5rem 0;
+
+  h4 {
+    margin: 0 0 1rem;
+    font-size: 1rem;
+    font-weight: 600;
+    color: #1a1a2e;
+  }
+}
+
+.progress-steps {
+  display: flex;
+  flex-direction: column;
+  gap: 0.75rem;
+}
+
+.progress-step {
+  display: flex;
+  align-items: flex-start;
+  gap: 0.75rem;
+  padding: 0.5rem 0.75rem;
+  border-radius: 8px;
+  background: #fafbfc;
+  transition: background 0.2s;
+
+  &.done {
+    background: #f0faf6;
+
+    .step-icon {
+      color: #1f8a70;
+      background: #e0f5ed;
+    }
+  }
+
+  &.running {
+    background: #fffbf0;
+
+    .step-icon {
+      color: #d69e2e;
+      background: #fef5e0;
+      animation: spin 1s linear infinite;
+    }
+  }
+
+  &.error {
+    background: #fff5f5;
+
+    .step-icon {
+      color: #c53030;
+      background: #fee;
+    }
+  }
+}
+
+.step-icon {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  width: 28px;
+  height: 28px;
+  border-radius: 50%;
+  font-size: 0.85rem;
+  font-weight: 700;
+  flex-shrink: 0;
+  background: #eee;
+  color: #999;
+}
+
+.step-info {
+  flex: 1;
+  min-width: 0;
+
+  strong {
+    display: block;
+    font-size: 0.9rem;
+    color: #1a1a2e;
+  }
+
+  small {
+    display: block;
+    font-size: 0.8rem;
+    color: #666;
+    margin-top: 2px;
+  }
+}
+
+.step-bar {
+  height: 4px;
+  background: #e8ecef;
+  border-radius: 2px;
+  margin-top: 6px;
+  overflow: hidden;
+
+  i {
+    display: block;
+    height: 100%;
+    background: #d69e2e;
+    border-radius: 2px;
+    transition: width 0.3s ease;
+  }
+}
+
+@keyframes spin {
+  from { transform: rotate(0deg); }
+  to { transform: rotate(360deg); }
+}

+ 28 - 0
src/modules/workspace/components/task-progress/task-progress.component.ts

@@ -0,0 +1,28 @@
+import { Component, Input } from '@angular/core';
+import { CommonModule } from '@angular/common';
+import { TaskStep } from '../../models/task.model';
+
+@Component({
+  selector: 'app-task-progress',
+  standalone: true,
+  imports: [CommonModule],
+  templateUrl: './task-progress.component.html',
+  styleUrl: './task-progress.component.scss',
+})
+export class TaskProgressComponent {
+  @Input() steps: TaskStep[] = [];
+  @Input() visible = false;
+
+  getStepIcon(step: TaskStep): string {
+    switch (step.status) {
+      case 'done':
+        return '✓';
+      case 'running':
+        return '⟳';
+      case 'error':
+        return '✗';
+      default:
+        return '·';
+    }
+  }
+}

+ 29 - 0
src/modules/workspace/components/workspace-flow/workspace-flow.component.html

@@ -0,0 +1,29 @@
+<section class="workspace-flow-container">
+  <header class="flow-header">
+    <h2>提号工作台</h2>
+    <p>上传 Brief → 自动处理 → 导出推荐表</p>
+  </header>
+
+  <!-- Step 1: Upload Brief -->
+  <div class="flow-section" *ngIf="!isProcessing && !isCompleted">
+    <app-brief-upload (fileSelected)="onFileSelected($event)"></app-brief-upload>
+  </div>
+
+  <!-- Progress Section (auto-shown during processing) -->
+  <app-task-progress [steps]="steps" [visible]="showProgress"></app-task-progress>
+
+  <!-- Error Message -->
+  <div class="error-message" *ngIf="errorMessage">
+    <p>{{ errorMessage }}</p>
+    <button type="button" class="ghost-button" (click)="taskStatus = 'pending'; errorMessage = ''">重试</button>
+  </div>
+
+  <!-- Export Section (shown after completion) -->
+  <app-export-panel
+    *ngIf="isCompleted || candidateCount > 0"
+    [disabled]="!isCompleted"
+    [candidateCount]="candidateCount"
+    [exporting]="exporting"
+    (exportClicked)="onExport()"
+  ></app-export-panel>
+</section>

+ 45 - 0
src/modules/workspace/components/workspace-flow/workspace-flow.component.scss

@@ -0,0 +1,45 @@
+.workspace-flow-container {
+  max-width: 800px;
+  margin: 0 auto;
+  padding: 2rem;
+}
+
+.flow-header {
+  text-align: center;
+  margin-bottom: 2.5rem;
+
+  h2 {
+    font-size: 1.5rem;
+    font-weight: 700;
+    color: #1a1a2e;
+    margin: 0 0 0.25rem;
+  }
+
+  p {
+    color: #666;
+    font-size: 0.95rem;
+    margin: 0;
+  }
+}
+
+.flow-section {
+  margin-bottom: 2rem;
+}
+
+.error-message {
+  background: #fff5f5;
+  border: 1px solid #fcc;
+  border-radius: 10px;
+  padding: 1rem 1.5rem;
+  margin: 1.5rem 0;
+  display: flex;
+  align-items: center;
+  gap: 1rem;
+
+  p {
+    flex: 1;
+    margin: 0;
+    color: #c53030;
+    font-size: 0.9rem;
+  }
+}

+ 143 - 0
src/modules/workspace/components/workspace-flow/workspace-flow.component.ts

@@ -0,0 +1,143 @@
+import { Component } from '@angular/core';
+import { CommonModule } from '@angular/common';
+import { BriefUploadComponent } from '../brief-upload/brief-upload.component';
+import { TaskProgressComponent } from '../task-progress/task-progress.component';
+import { ExportPanelComponent } from '../export-panel/export-panel.component';
+import { WorkspaceApiService } from '../../services/workspace-api.service';
+import { TaskStep, TaskStatus } from '../../models/task.model';
+
+@Component({
+  selector: 'app-workspace-flow',
+  standalone: true,
+  imports: [CommonModule, BriefUploadComponent, TaskProgressComponent, ExportPanelComponent],
+  templateUrl: './workspace-flow.component.html',
+  styleUrl: './workspace-flow.component.scss',
+})
+export class WorkspaceFlowComponent {
+  currentTaskId: string | null = null;
+  taskStatus: TaskStatus = 'pending';
+  steps: TaskStep[] = [];
+  candidateCount = 0;
+  exporting = false;
+  errorMessage = '';
+  stopPolling: (() => void) | null = null;
+
+  constructor(private api: WorkspaceApiService) {}
+
+  get isProcessing(): boolean {
+    return ['uploading', 'analyzing', 'searching', 'processing'].includes(this.taskStatus);
+  }
+
+  get isCompleted(): boolean {
+    return this.taskStatus === 'completed';
+  }
+
+  get showProgress(): boolean {
+    return this.isProcessing || this.isCompleted || this.taskStatus === 'failed';
+  }
+
+  async onFileSelected(file: File): Promise<void> {
+    this.errorMessage = '';
+    this.taskStatus = 'uploading';
+    this.steps = [];
+    this.candidateCount = 0;
+
+    try {
+      const response = await this.api.uploadBrief(file);
+      this.currentTaskId = response.taskId;
+      this.taskStatus = 'analyzing';
+
+      // Start the task processing
+      await this.api.startTask(response.taskId);
+
+      // Poll for progress
+      this.startPolling(response.taskId);
+    } catch (error: unknown) {
+      this.taskStatus = 'failed';
+      this.errorMessage = error instanceof Error ? error.message : '上传失败';
+    }
+  }
+
+  private startPolling(taskId: string): void {
+    if (this.stopPolling) {
+      this.stopPolling();
+    }
+
+    this.stopPolling = this.api.pollTaskProgress(taskId, (event) => {
+      const stepIndex = this.steps.findIndex((s) => s.id === event.step);
+      const stepData: TaskStep = {
+        id: event.step,
+        label: this.getStepLabel(event.step),
+        status: event.status,
+        progress: event.progress,
+        detail: event.detail,
+      };
+
+      if (stepIndex >= 0) {
+        this.steps[stepIndex] = stepData;
+      } else {
+        this.steps.push(stepData);
+      }
+
+      // Update overall status
+      if (event.data && typeof event.data === 'object') {
+        const data = event.data as Record<string, unknown>;
+        if (data['candidates'] && Array.isArray(data['candidates'])) {
+          this.candidateCount = data['candidates'].length;
+        }
+        if (data['totalPool']) {
+          this.candidateCount = data['totalPool'] as number;
+        }
+      }
+
+      const allDone = this.steps.length > 0 && this.steps.every((s) => s.status === 'done');
+      const anyError = this.steps.some((s) => s.status === 'error');
+
+      if (allDone) {
+        this.taskStatus = 'completed';
+      } else if (anyError) {
+        this.taskStatus = 'failed';
+        this.errorMessage = this.steps.find((s) => s.status === 'error')?.detail || '处理失败';
+      } else {
+        this.taskStatus = 'processing';
+      }
+    });
+  }
+
+  async onExport(): Promise<void> {
+    if (!this.currentTaskId) return;
+
+    this.exporting = true;
+    try {
+      const blob = await this.api.exportRecommendation(this.currentTaskId);
+      const url = URL.createObjectURL(blob);
+      const anchor = document.createElement('a');
+      anchor.href = url;
+      anchor.download = `推荐表_${new Date().toISOString().slice(0, 10)}.xlsx`;
+      anchor.click();
+      URL.revokeObjectURL(url);
+    } catch (error: unknown) {
+      this.errorMessage = error instanceof Error ? error.message : '导出失败';
+    } finally {
+      this.exporting = false;
+    }
+  }
+
+  private getStepLabel(stepId: string): string {
+    const labels: Record<string, string> = {
+      upload: '上传文件',
+      analyze: 'AI 解析 Brief 需求',
+      rules: '确定筛选规则',
+      search: '搜索达人资源',
+      recommend: '生成推荐名单',
+      export: '准备导出',
+    };
+    return labels[stepId] || stepId;
+  }
+
+  ngOnDestroy(): void {
+    if (this.stopPolling) {
+      this.stopPolling();
+    }
+  }
+}

+ 6 - 0
src/modules/workspace/index.ts

@@ -0,0 +1,6 @@
+export { WorkspaceFlowComponent } from './components/workspace-flow/workspace-flow.component';
+export { BriefUploadComponent } from './components/brief-upload/brief-upload.component';
+export { TaskProgressComponent } from './components/task-progress/task-progress.component';
+export { ExportPanelComponent } from './components/export-panel/export-panel.component';
+export { WorkspaceApiService } from './services/workspace-api.service';
+export * from './models/task.model';

+ 83 - 0
src/modules/workspace/models/task.model.ts

@@ -0,0 +1,83 @@
+export type TaskStatus = 'pending' | 'uploading' | 'analyzing' | 'searching' | 'processing' | 'exporting' | 'completed' | 'failed';
+
+export type TaskStepId = 'upload' | 'analyze' | 'rules' | 'search' | 'recommend' | 'export';
+
+export interface TaskStep {
+  id: TaskStepId;
+  label: string;
+  status: 'pending' | 'running' | 'done' | 'error';
+  progress: number;
+  detail?: string;
+}
+
+export interface BriefRequirement {
+  label: string;
+  value: string;
+  confidence: number;
+}
+
+export interface SearchCriteria {
+  platforms: string[];
+  keywords: string[];
+  fanRange: { min: number; max: number };
+  budgetRange: { min: number; max: number };
+  region?: string;
+  gender?: string;
+  contentTags?: string[];
+  excludeTags?: string[];
+}
+
+export interface CandidateCreator {
+  id: string;
+  platform: string;
+  platformUserId: string;
+  displayName: string;
+  profileUrl: string;
+  location: string;
+  fansCount: number;
+  contentTags: string[];
+  personaTags: string[];
+  imagePrice: number;
+  videoPrice: number;
+  minPrice: number;
+  cooperationStatus: string;
+  sourceProvider: string;
+  sourceConfidence: number;
+  score?: number;
+  styleMatch?: number;
+  recommendStatus?: '强推荐' | '备选' | '需复核' | '已剔除';
+  recommendReason?: string;
+  riskNote?: string;
+}
+
+export interface TaskResult {
+  taskId: string;
+  status: TaskStatus;
+  steps: TaskStep[];
+  requirements?: BriefRequirement[];
+  searchCriteria?: SearchCriteria;
+  candidates?: CandidateCreator[];
+  totalPool?: number;
+  candidateCount?: number;
+  strongCount?: number;
+  backupCount?: number;
+  exportUrl?: string;
+  error?: string;
+  createdAt: string;
+  updatedAt: string;
+}
+
+export interface UploadBriefResponse {
+  taskId: string;
+  fileName: string;
+  message: string;
+}
+
+export interface TaskProgressEvent {
+  taskId: string;
+  step: TaskStepId;
+  status: 'running' | 'done' | 'error';
+  progress: number;
+  detail?: string;
+  data?: unknown;
+}

+ 95 - 0
src/modules/workspace/services/workspace-api.service.ts

@@ -0,0 +1,95 @@
+import { Injectable } from '@angular/core';
+import { TaskResult, UploadBriefResponse, TaskProgressEvent } from '../models/task.model';
+
+@Injectable({ providedIn: 'root' })
+export class WorkspaceApiService {
+  private baseUrl = 'http://localhost:3000';
+
+  async uploadBrief(file: File): Promise<UploadBriefResponse> {
+    const formData = new FormData();
+    formData.append('file', file);
+
+    const response = await fetch(`${this.baseUrl}/api/tasks/upload-brief`, {
+      method: 'POST',
+      body: formData,
+    });
+
+    if (!response.ok) {
+      throw new Error(`上传失败: ${response.statusText}`);
+    }
+
+    return response.json();
+  }
+
+  async getTaskStatus(taskId: string): Promise<TaskResult> {
+    const response = await fetch(`${this.baseUrl}/api/tasks/${taskId}`);
+
+    if (!response.ok) {
+      throw new Error(`获取任务状态失败: ${response.statusText}`);
+    }
+
+    return response.json();
+  }
+
+  pollTaskProgress(taskId: string, onProgress: (event: TaskProgressEvent) => void, intervalMs = 2000): () => void {
+    let stopped = false;
+
+    const poll = async () => {
+      while (!stopped) {
+        try {
+          const result = await this.getTaskStatus(taskId);
+
+          for (const step of result.steps) {
+            onProgress({
+              taskId,
+              step: step.id,
+              status: step.status === 'done' ? 'done' : step.status === 'error' ? 'error' : 'running',
+              progress: step.progress,
+              detail: step.detail,
+              data: { totalPool: result.candidateCount, candidateCount: result.candidateCount },
+            });
+          }
+
+          if (result.status === 'completed' || result.status === 'failed') {
+            break;
+          }
+        } catch {
+          // Silently retry
+        }
+
+        await new Promise((resolve) => setTimeout(resolve, intervalMs));
+      }
+    };
+
+    poll();
+
+    return () => {
+      stopped = true;
+    };
+  }
+
+  async exportRecommendation(taskId: string): Promise<Blob> {
+    const response = await fetch(`${this.baseUrl}/api/tasks/${taskId}/export`, {
+      method: 'POST',
+    });
+
+    if (!response.ok) {
+      throw new Error(`导出失败: ${response.statusText}`);
+    }
+
+    return response.blob();
+  }
+
+  async startTask(taskId: string): Promise<{ message: string }> {
+    const response = await fetch(`${this.baseUrl}/api/tasks/${taskId}/start`, {
+      method: 'POST',
+      headers: { 'Content-Type': 'application/json' },
+    });
+
+    if (!response.ok) {
+      throw new Error(`启动任务失败: ${response.statusText}`);
+    }
+
+    return response.json();
+  }
+}

+ 597 - 0
tests/api-probe/probe_creators.py

@@ -0,0 +1,597 @@
+"""
+API 结构探针脚本 v2
+目标:用最低接口成本测通 小红书(JustOne PGY) 和 抖音(TikHub 代理) 创作者搜索。
+
+注意:TikHub 使用代理地址 https://server.fmode.cn/thapi 规避跨域问题。
+每个测试只调用 1 次,count/pageSize=2,节省 API 成本。
+"""
+
+import urllib.request
+import urllib.parse
+import json
+import sys
+import time
+
+# Windows GBK 终端强制 UTF-8 输出
+if hasattr(sys.stdout, 'reconfigure'):
+    sys.stdout.reconfigure(encoding='utf-8', errors='replace')
+if hasattr(sys.stderr, 'reconfigure'):
+    sys.stderr.reconfigure(encoding='utf-8', errors='replace')
+
+# ─────────────── API Keys & 地址 ───────────────
+JUSTONE_TOKEN = "wT0w78sxrwlrpJrQ"
+TIKHUB_TOKEN  = "oL4nMZwrhXCro1+TQYye0BL8LASyaphtx0LUmGuRCfqnm1CeBFfbdmLAGQ=="
+
+JUSTONE_BASE  = "https://api.justoneapi.com"
+TIKHUB_PROXY  = "https://server.fmode.cn/thapi"   # TikHub 代理,规避跨域
+
+KEYWORD = "护肤"
+
+
+# ─────────────── 工具函数 ───────────────
+def get(url: str, headers: dict | None = None, retry301: int = 3) -> dict:
+    for attempt in range(1, retry301 + 2):
+        req = urllib.request.Request(url, headers=headers or {})
+        try:
+            with urllib.request.urlopen(req, timeout=20) as resp:
+                body = resp.read().decode("utf-8")
+                data = json.loads(body)
+                if data.get("code") == 301 and attempt <= retry301:
+                    print(f"  [301] RETRY ({attempt}/{retry301})...")
+                    time.sleep(3)
+                    continue
+                return data
+        except urllib.error.HTTPError as e:
+            body = e.read().decode("utf-8")
+            print(f"  [HTTP {e.code}] {body[:300]}")
+            return {}
+        except Exception as ex:
+            print(f"  [ERROR] {ex}")
+            return {}
+    return {}
+
+
+def post(url: str, body: dict, headers: dict | None = None) -> dict:
+    """POST JSON body 请求"""
+    payload = json.dumps(body).encode("utf-8")
+    h = dict(headers or {})
+    h["Content-Type"] = "application/json"
+    req = urllib.request.Request(url, data=payload, headers=h, method="POST")
+    try:
+        with urllib.request.urlopen(req, timeout=20) as resp:
+            return json.loads(resp.read().decode("utf-8"))
+    except urllib.error.HTTPError as e:
+        body_resp = e.read().decode("utf-8")
+        print(f"  [HTTP {e.code}] {body_resp[:300]}")
+        return {}
+    except Exception as ex:
+        print(f"  [ERROR] {ex}")
+        return {}
+
+
+def print_section(title: str):
+    print("\n" + "=" * 60)
+    print(f"  {title}")
+    print("=" * 60)
+
+
+def describe_keys(obj: dict, indent: int = 0, max_depth: int = 3):
+    """递归打印对象的键和值类型(不打印完整值,节省屏幕空间)"""
+    prefix = "  " * indent
+    for k, v in obj.items():
+        if isinstance(v, dict):
+            print(f"{prefix}[dict] {k}:")
+            if indent < max_depth:
+                describe_keys(v, indent + 1, max_depth)
+        elif isinstance(v, list):
+            print(f"{prefix}[list({len(v)})] {k}")
+            if v and isinstance(v[0], dict) and indent < max_depth:
+                print(f"{prefix}  └─ 第一个元素 keys:")
+                describe_keys(v[0], indent + 2, max_depth)
+        else:
+            display = repr(v)[:80]
+            print(f"{prefix}[{type(v).__name__}] {k} = {display}")
+
+
+# ─────────────── 1. 小红书 JustOne PGY 创作者搜索 ───────────────
+def test_xhs_justone():
+    print_section("1. 小红书 — JustOne 蒲公英 Creator Search")
+
+    params = urllib.parse.urlencode({
+        "token":           JUSTONE_TOKEN,
+        "keyword":         KEYWORD,
+        "page":            1,
+        "searchType":      "NOTE",
+        "fansNumberLower": 20000,
+        "fansNumberUpper": 500000,
+        "gender":          "ALL",
+    })
+    url = f"{JUSTONE_BASE}/api/xiaohongshu-pgy/api/solar/cooperator/blogger/v2/v1?{params}"
+    print(f"  请求 URL: {url.replace(JUSTONE_TOKEN, '***')}\n")
+
+    data = get(url)
+    if not data:
+        print("  ⚠ 无响应")
+        return
+
+    print(f"  顶层 code  : {data.get('code')}")
+    print(f"  顶层 message: {data.get('message')}")
+    print(f"\n  完整响应结构:")
+    describe_keys(data)
+
+    # 定位列表
+    d = data.get("data", {})
+    if d:
+        for list_key in ("kols", "bloggerList", "list", "items", "result", "authors"):
+            lst = d.get(list_key)
+            if lst and isinstance(lst, list):
+                print(f"\n  [OK] 找到列表字段: data.data.{list_key},共 {len(lst)} 条")
+                if lst:
+                    print(f"\n  第一条完整数据:")
+                    print(json.dumps(lst[0], ensure_ascii=False, indent=2)[:2000])
+                return
+        print(f"\n  [WARN] 未在 data.data 中找到已知列表字段,data.data keys: {list(d.keys())}")
+
+
+# ─────────────── 2. 抖音 JustOne 星图 创作者搜索(多接口尝试)───────────────
+DOUYIN_JUSTONE_ENDPOINTS = [
+    # 当前在用(已知返回 authors 但为空)
+    ("/api/douyin-xingtu/gw/api/gsearch/search_for_author_square/v1",
+     {"keyword": KEYWORD, "page": 1, "searchType": "CONTENT"},
+     "Xingtu search_for_author_square (当前)"),
+    # JustOne 文档 Douyin Xingtu KOL Keyword Search V1
+    ("/api/douyin-xingtu/gw/api/gsearch/search_kol/v1",
+     {"keyword": KEYWORD, "page": 1},
+     "Xingtu search_kol v1"),
+    # JustOne 文档 Douyin User Search V2
+    ("/api/douyin/aweme/v1/search/user/",
+     {"keyword": KEYWORD, "count": 2, "offset": 0},
+     "Douyin user search v1 (通用)"),
+    # 另一种可能路径
+    ("/api/douyin-xingtu/gw/api/search/author/v1",
+     {"keyword": KEYWORD, "page": 1},
+     "Xingtu search author v1"),
+]
+
+def test_douyin_justone():
+    print_section("2. 抖音 — JustOne 星图 KOL 搜索(逐一探测可用接口)")
+
+    for endpoint, extra_params, label in DOUYIN_JUSTONE_ENDPOINTS:
+        print(f"\n  ── {label} ──")
+        params = urllib.parse.urlencode({
+            "token": JUSTONE_TOKEN,
+            **extra_params,
+        })
+        url = f"{JUSTONE_BASE}{endpoint}?{params}"
+        print(f"  URL: {url.replace(JUSTONE_TOKEN, '***')}")
+
+        data = get(url)
+        if not data:
+            print("  ⚠ 无响应,跳过")
+            continue
+
+        code = data.get("code")
+        msg  = data.get("message", "")
+        print(f"  code={code}  message={msg}")
+
+        if code != 0:
+            print(f"  [SKIP] 接口返回错误 code={code}")
+            continue
+
+        # 成功,打印完整结构
+        print(f"\n  [OK] 接口 [{label}] 返回成功!")
+        print(f"  完整响应结构:")
+        describe_keys(data)
+
+        # 定位列表
+        d = data.get("data", {})
+        for list_key in ("authors", "kols", "kol_list", "list", "items", "result", "userList"):
+            lst = d.get(list_key) if isinstance(d, dict) else None
+            if lst is None and isinstance(d, dict):
+                d2 = d.get("data", {})
+                lst = d2.get(list_key) if isinstance(d2, dict) else None
+            if lst and isinstance(lst, list):
+                print(f"\n  [LIST] 字段: {list_key},共 {len(lst)} 条")
+                if lst:
+                    print(f"\n  第一条完整数据:")
+                    print(json.dumps(lst[0], ensure_ascii=False, indent=2)[:2000])
+                return
+
+        print(f"  [WARN] 未找到列表字段,data keys = {list(data.get('data', {}).keys()) if isinstance(data.get('data'), dict) else data.keys()}")
+        return
+
+    print("\n  [FAIL] 所有 JustOne 抖音接口均无有效响应")
+
+
+# ─────────────── 3. 抖音 — TikHub 星图 KOL 搜索(代理地址)───────────────
+def test_douyin_tikhub_xingtu():
+    """
+    通过代理 https://server.fmode.cn/thapi 调用 TikHub 星图 KOL 搜索。
+    代理规避浏览器跨域,Python 直连同样可用。
+    只请求 count=2,节省成本。
+    """
+    print_section("3. 抖音 — TikHub 星图 KOL 搜索(代理)")
+
+    headers = {"Authorization": f"Bearer {TIKHUB_TOKEN}"}
+
+    # 按优先级逐一尝试,成功则停止
+    # 每个条目: (url, body_dict, label, use_post)
+    candidates = [
+        (
+            f"{TIKHUB_PROXY}/api/v1/douyin/xingtu/fetch_kol_search_v1",
+            {"keyword": KEYWORD, "page": 1, "count": 2},
+            "Xingtu KOL 搜索 V1 [GET]",
+            False
+        ),
+        (
+            f"{TIKHUB_PROXY}/api/v1/douyin/xingtu/fetch_kol_search_v1",
+            {"keyword": KEYWORD, "page": 1, "count": 2},
+            "Xingtu KOL 搜索 V1 [POST]",
+            True
+        ),
+        (
+            f"{TIKHUB_PROXY}/api/v1/douyin/xingtu/fetch_kol_advanced_search_v2",
+            {"keyword": KEYWORD, "page": 1, "count": 2},
+            "Xingtu KOL 高级搜索 V2 [POST]",
+            True
+        ),
+        (
+            f"{TIKHUB_PROXY}/api/v1/douyin/xingtu_v2/get_author_market_fields",
+            {},
+            "Xingtu V2 达人广场筛选字段 [GET]",
+            False
+        ),
+    ]
+
+    for url_base, body, label, use_post in candidates:
+        print(f"\n  ── {label} ──")
+        if use_post:
+            print(f"  POST {url_base}  body={body}")
+            data = post(url_base, body, headers)
+        else:
+            params = urllib.parse.urlencode(body) if body else ""
+            url = f"{url_base}?{params}" if params else url_base
+            print(f"  GET {url}")
+            data = get(url, headers)
+
+        if not data:
+            print("  [SKIP] 无响应")
+            continue
+
+        code = data.get("code")
+        msg  = data.get("message", "")
+        print(f"  code={code}  message={str(msg)[:100]}")
+
+        if code not in (200, 0):
+            print(f"  [SKIP] 非成功状态")
+            continue
+
+        print(f"\n  [OK] {label} 通过!")
+        print("  响应结构:")
+        describe_keys(data)
+        _find_and_print_list(data, label)
+        return
+
+    print("\n  [FAIL] TikHub 星图接口均失败,改用 Douyin 用户搜索")
+    test_douyin_tikhub_user_search()
+
+
+def test_douyin_tikhub_user_search():
+    """
+    备用:通过代理调用 TikHub Douyin 用户搜索。
+    docs 中 UserSearchRequest / UserSearchRequestV2 是 POST body schema,
+    故改为 POST + JSON body(之前用 GET 是错误的)。
+    """
+    print_section("3b. 抖音备用 — TikHub Douyin 用户搜索(POST,代理)")
+
+    headers = {"Authorization": f"Bearer {TIKHUB_TOKEN}"}
+
+    # (url, body, label, use_post)
+    candidates = [
+        (
+            f"{TIKHUB_PROXY}/api/v1/douyin/search/fetch_user_search_v2",
+            {"keyword": KEYWORD, "offset": 0, "count": 2},
+            "Douyin Search 用户搜索 V2 [POST]",
+            True
+        ),
+        (
+            f"{TIKHUB_PROXY}/api/v1/douyin/search/fetch_user_search",
+            {"keyword": KEYWORD, "offset": 0, "count": 2},
+            "Douyin Search 用户搜索 V1 [POST]",
+            True
+        ),
+        (
+            f"{TIKHUB_PROXY}/api/v1/douyin/web/fetch_user_search",
+            {"keyword": KEYWORD, "offset": 0, "count": 2},
+            "Douyin Web 用户搜索 [GET]",
+            False
+        ),
+        (
+            f"{TIKHUB_PROXY}/api/v1/douyin/web/fetch_user_search",
+            {"keyword": KEYWORD, "offset": 0, "count": 2},
+            "Douyin Web 用户搜索 [POST]",
+            True
+        ),
+    ]
+
+    for url_base, body, label, use_post in candidates:
+        print(f"\n  ── {label} ──")
+        if use_post:
+            print(f"  POST {url_base}  body={body}")
+            data = post(url_base, body, headers)
+        else:
+            params = urllib.parse.urlencode(body)
+            url = f"{url_base}?{params}"
+            print(f"  GET {url}")
+            data = get(url, headers)
+
+        if not data:
+            print("  [SKIP] 无响应")
+            continue
+
+        code = data.get("code")
+        msg  = data.get("message", "")
+        print(f"  code={code}  message={str(msg)[:100]}")
+
+        if code not in (200, 0):
+            print(f"  [SKIP] 非成功状态")
+            continue
+
+        print(f"\n  [OK] {label} 通过!")
+        print("  响应结构:")
+        describe_keys(data)
+        _find_and_print_list(data, label)
+        return
+
+    print("  [FAIL] 所有 TikHub 抖音用户搜索接口均失败")
+
+
+def test_douyin_tikhub_billboard():
+    """
+    测试 TikHub Douyin-Billboard-API 账号搜索。
+    搜索用户名或抖音号 — 可能不需要高级订阅。
+    docs 中 Billboard 端点带有 _post 后缀,故先试 POST 再试 GET。
+    """
+    print_section("3c. 抖音 — TikHub Billboard 账号搜索")
+
+    headers = {"Authorization": f"Bearer {TIKHUB_TOKEN}"}
+    url = f"{TIKHUB_PROXY}/api/v1/douyin/billboard/fetch_account_search_list"
+    body = {"keyword": KEYWORD, "count": 2}
+
+    for label, use_post in [("[POST]", True), ("[GET]", False)]:
+        print(f"\n  ── Billboard 账号搜索 {label} ──")
+        if use_post:
+            print(f"  POST {url}  body={body}")
+            data = post(url, body, headers)
+        else:
+            params = urllib.parse.urlencode(body)
+            print(f"  GET {url}?{params}")
+            data = get(f"{url}?{params}", headers)
+
+        if not data:
+            print("  [SKIP] 无响应")
+            continue
+
+        code = data.get("code")
+        msg  = data.get("message", "")
+        print(f"  code={code}  message={str(msg)[:100]}")
+
+        if code not in (200, 0):
+            continue
+
+        print(f"\n  [OK] Billboard 账号搜索 {label} 通过!")
+        describe_keys(data)
+        _find_and_print_list(data, "Billboard")
+        return
+
+    print("  [FAIL] Billboard 账号搜索均失败")
+
+
+def _find_and_print_list(data: dict, label: str):
+    """在任意层级自动定位列表字段并打印第一条"""
+    LIST_KEYS = ("kol_list", "user_list", "authors", "kols", "list",
+                 "items", "result", "data", "user_info")
+
+    def search(obj, depth=0):
+        if depth > 4 or not isinstance(obj, dict):
+            return False
+        for k, v in obj.items():
+            if isinstance(v, list) and v and k in LIST_KEYS:
+                print(f"\n  [LIST] 路径 .{k},共 {len(v)} 条")
+                print(f"  第一条完整数据:")
+                print(json.dumps(v[0], ensure_ascii=False, indent=2)[:2500])
+                return True
+        for k, v in obj.items():
+            if isinstance(v, dict):
+                if search(v, depth + 1):
+                    return True
+        return False
+
+    if not search(data):
+        print(f"  [WARN] 未在响应中找到已知列表字段,完整 keys: {list(data.keys())}")
+
+
+# ─────────────── 4. 字段解析验证(纯 Python 模拟 TS 解析逻辑)───────────────
+def parse_xhs_creator(item: dict) -> dict:
+    """模拟 justone.service.ts 中 parseXhsCreator 的解析逻辑"""
+    raw_content = item.get("contentTags", [])
+    content_tags = []
+    for t in raw_content:
+        if isinstance(t, str):
+            content_tags.append(t)
+        elif isinstance(t, dict):
+            tag = t.get("taxonomy1Tag")
+            if isinstance(tag, str):
+                content_tags.append(tag)
+
+    feature_tags = [v for v in item.get("featureTags", []) if isinstance(v, str)]
+    fans = item.get("fansNum") or item.get("fansCount") or 0
+    image_price = item.get("picturePrice") or item.get("imagePrice") or 0
+    video_price = item.get("videoPrice") or 0
+    min_price   = item.get("lowerPrice") or image_price or 0
+    cooperate   = "active" if item.get("cooperateState") == 1 else ""
+    gender_map  = {"女": "female", "男": "male", "FEMALE": "female", "MALE": "male"}
+    gender      = gender_map.get(str(item.get("gender", "")), str(item.get("gender", "")))
+
+    return {
+        "userId":        item.get("userId") or item.get("user_id") or "",
+        "nickname":      item.get("name") or item.get("nickname") or "",
+        "redId":         item.get("redId") or "",
+        "location":      item.get("location") or item.get("city") or "",
+        "fansCount":     int(fans),
+        "imagePrice":    float(image_price),
+        "videoPrice":    float(video_price),
+        "minPrice":      float(min_price),
+        "cooperationStatus": cooperate,
+        "personalTags":  feature_tags,
+        "contentTags":   content_tags,
+        "gender":        gender,
+    }
+
+
+def parse_douyin_xingtu_creator(item: dict) -> dict:
+    """模拟 justone.service.ts 中 parseDouyinXingtuCreator 的解析逻辑"""
+    attr = item.get("attribute_datas") or {}
+    fans = int(attr.get("follower") or attr.get("fans_count") or 0)
+    gender_map = {"1": "male", "2": "female", "0": ""}
+    gender = gender_map.get(str(attr.get("gender", "0")), "")
+
+    # 从 last_10_items 提取视频标题中的 hashtag 作为 contentTags
+    content_tags = []
+    try:
+        last_items = json.loads(attr.get("last_10_items") or "[]")
+        for it in last_items[:5]:
+            title = it.get("item_title", "")
+            tags = [t.lstrip("#") for t in title.split() if t.startswith("#")]
+            content_tags.extend(tags)
+        content_tags = list(dict.fromkeys(content_tags))[:10]   # 去重限10个
+    except Exception:
+        pass
+
+    # keyword_association 作为 personalTags
+    personal_tags = []
+    try:
+        kw_map = json.loads(attr.get("author_thin_mid_word_association_index") or "{}")
+        personal_tags = list(kw_map.keys())
+    except Exception:
+        pass
+
+    return {
+        "userId":        str(item.get("star_id") or attr.get("id") or attr.get("core_user_id") or ""),
+        "nickname":      str(attr.get("nickname") or attr.get("name") or ""),
+        "location":      str(attr.get("city") or attr.get("province") or ""),
+        "fansCount":     fans,
+        "imagePrice":    0,
+        "videoPrice":    0,
+        "minPrice":      0,
+        "cooperationStatus": "active" if attr.get("author_status") == "1" else "",
+        "personalTags":  personal_tags,
+        "contentTags":   content_tags,
+        "gender":        gender,
+    }
+
+
+def test_parse_validation():
+    print_section("4. 字段解析验证(Python 模拟解析,不调用接口)")
+
+    # ── XHS 验证 ──
+    print("\n  [XHS] 模拟解析第一条 kol 数据...")
+    xhs_sample = {
+        "userId": "5f869dc2000000000101db7c",
+        "name": "imtender.",
+        "redId": "1011627787",
+        "location": "山东 潍坊 潍城区",
+        "fansCount": 0,        # 始终为 0,正确字段是 fansNum
+        "fansNum": 20022,
+        "picturePrice": 0.0,
+        "videoPrice": 4000.0,
+        "lowerPrice": 4000.0,
+        "cooperateState": 1,
+        "gender": "女",
+        "contentTags": [
+            {"taxonomy1Tag": "护肤", "taxonomy2Tags": ["护肤合集"]},
+            {"taxonomy1Tag": "个人护理", "taxonomy2Tags": ["身体护理", "头发产品"]},
+        ],
+        "featureTags": ["沉浸式", "vlog", "氛围感", "抗老", "控油", "开箱"],
+    }
+    parsed_xhs = parse_xhs_creator(xhs_sample)
+    print(f"  nickname      = {parsed_xhs['nickname']!r}   (期望: 'imtender.')")
+    print(f"  fansCount     = {parsed_xhs['fansCount']}     (期望: 20022)")
+    print(f"  imagePrice    = {parsed_xhs['imagePrice']}    (期望: 0.0)")
+    print(f"  videoPrice    = {parsed_xhs['videoPrice']}  (期望: 4000.0)")
+    print(f"  minPrice      = {parsed_xhs['minPrice']}   (期望: 4000.0)")
+    print(f"  contentTags   = {parsed_xhs['contentTags']}  (期望: ['护肤', '个人护理'])")
+    print(f"  personalTags  = {parsed_xhs['personalTags'][:3]}  (期望: ['沉浸式', 'vlog', '氛围感']...)")
+    print(f"  gender        = {parsed_xhs['gender']!r}   (期望: 'female')")
+    print(f"  cooperationStatus = {parsed_xhs['cooperationStatus']!r}  (期望: 'active')")
+
+    xhs_ok = (
+        parsed_xhs["nickname"] == "imtender."
+        and parsed_xhs["fansCount"] == 20022
+        and parsed_xhs["videoPrice"] == 4000.0
+        and "护肤" in parsed_xhs["contentTags"]
+        and parsed_xhs["gender"] == "female"
+        and parsed_xhs["cooperationStatus"] == "active"
+    )
+    print(f"\n  XHS 解析{'[PASS]' if xhs_ok else '[FAIL]'}")
+
+    # ── Douyin 验证 ──
+    print("\n  [Douyin] 模拟解析第一条 author 数据...")
+    dy_sample = {
+        "star_id": "7174756942059929657",
+        "attribute_datas": {
+            "follower": "2161358",
+            "gender": "1",
+            "city": "湖州",
+            "author_status": "1",
+            "author_thin_mid_word_association_index": '{"服帖":0.33,"清爽":0.15}',
+            "last_10_items": json.dumps([
+                {"item_title": "愿我们都能在梦幻的世界里被童话治愈 #艾莎 #沉浸式护肤 #解压", "like_cnt": "2158"},
+                {"item_title": "给男友挑战黄色护肤 #沉浸式护肤 #情侣日常", "like_cnt": "3837"},
+            ]),
+        },
+    }
+    parsed_dy = parse_douyin_xingtu_creator(dy_sample)
+    print(f"  userId        = {parsed_dy['userId']!r}  (期望: '7174756942059929657')")
+    print(f"  fansCount     = {parsed_dy['fansCount']}  (期望: 2161358)")
+    print(f"  gender        = {parsed_dy['gender']!r}   (期望: 'male')")
+    print(f"  location      = {parsed_dy['location']!r}  (期望: '湖州')")
+    print(f"  contentTags   = {parsed_dy['contentTags']}  (期望含: '沉浸式护肤')")
+    print(f"  personalTags  = {parsed_dy['personalTags']}  (期望: ['服帖', '清爽'])")
+    print(f"  cooperationStatus = {parsed_dy['cooperationStatus']!r}  (期望: 'active')")
+
+    dy_ok = (
+        parsed_dy["userId"] == "7174756942059929657"
+        and parsed_dy["fansCount"] == 2161358
+        and parsed_dy["gender"] == "male"
+        and any("护肤" in t for t in parsed_dy["contentTags"])
+        and "服帖" in parsed_dy["personalTags"]
+        and parsed_dy["cooperationStatus"] == "active"
+    )
+    print(f"\n  Douyin 解析{'[PASS]' if dy_ok else '[FAIL]'}")
+
+    if xhs_ok and dy_ok:
+        print("\n  [PASS] 所有字段解析验证通过,可以更新 justone.service.ts")
+    else:
+        print("\n  [FAIL] 解析有误,需先修复 Python 逻辑再对应修改 TS 服务")
+
+
+# ─────────────── 主程序 ───────────────
+if __name__ == "__main__":
+    print("=" * 60)
+    print("  API 结构探针  —  关键词:", KEYWORD)
+    print("  每平台只调用 1 次,节省成本")
+    print("=" * 60)
+
+    test_xhs_justone()             # 小红书:JustOne 蒲公英
+    test_douyin_justone()          # 抖音:JustOne 星图(301→重试→成功)
+    test_douyin_tikhub_xingtu()    # 抖音:TikHub 星图(GET+POST,修正方法)
+    test_douyin_tikhub_billboard() # 抖音:TikHub Billboard 账号搜索(新增)
+    test_parse_validation()        # 纯 Python 字段解析验证(不调接口)
+
+    print("\n" + "=" * 60)
+    print("  探针完成。根据结果决定抖音数据源:")
+    print("    - TikHub Xingtu POST 通:使用 TikHub(有定价),成本低")
+    print("    - TikHub Billboard 通:可搜索用户,但无定价")
+    print("    - 均失败:继续用 JustOne 星图(需 301 重试,有定价)")
+    print("=" * 60)