| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191 |
- {
- "name": "tiktok-user-posts",
- "displayName": "TikTok 用户作品列表",
- "description": "获取指定 TikTok 用户发布的视频列表,包括播放量、点赞、评论等数据。适用于竞品品牌内容策略分析、KOL 年度内容表现评估、达人带货说服力分析。",
- "category": "social-media",
- "version": "1.3.0",
- "endpoint": {
- "method": "GET",
- "url": "https://server.fmode.cn/api/voc-social/tiktok/app/v3/fetch_user_post_videos",
- "headers": {
- "Authorization": "Bearer r:a5a19ea9868043b15d9b10423234ca43",
- "Accept": "application/json"
- }
- },
- "parameters": {
- "type": "object",
- "required": [
- "sec_user_id"
- ],
- "properties": {
- "sec_user_id": {
- "type": "string",
- "description": "用户的安全 ID(secUid),需先通过 tiktok_user_profile 接口获取"
- },
- "count": {
- "type": "integer",
- "description": "每页视频数量",
- "default": 20,
- "maximum": 30
- },
- "cursor": {
- "type": "integer",
- "description": "分页游标",
- "default": 0
- }
- }
- },
- "requestTransform": {
- "queryParams": {
- "sec_user_id": "{{sec_user_id}}",
- "count": "{{count}}",
- "cursor": "{{cursor}}"
- }
- },
- "response": {
- "type": "object",
- "description": "用户视频列表",
- "properties": {
- "aweme_list": {
- "type": "array",
- "items": {
- "type": "object",
- "properties": {
- "aweme_id": {
- "type": "string",
- "description": "视频 ID"
- },
- "desc": {
- "type": "string",
- "description": "视频描述"
- },
- "statistics": {
- "type": "object",
- "properties": {
- "play_count": {
- "type": "integer"
- },
- "digg_count": {
- "type": "integer"
- },
- "comment_count": {
- "type": "integer"
- },
- "share_count": {
- "type": "integer"
- }
- }
- },
- "create_time": {
- "type": "integer",
- "description": "发布时间戳"
- }
- }
- }
- },
- "has_more": {
- "type": "boolean"
- },
- "cursor": {
- "type": "integer"
- }
- }
- },
- "notes": "sec_user_id 需先通过 tiktok-user-profile 获取 secUid 字段。",
- "relatedSkills": [
- "tiktok-user-profile"
- ],
- "usageExamples": [
- {
- "name": "竞品品牌内容策略分析",
- "input": {
- "sec_user_id": "MS4wLjABAAAA...",
- "count": 20,
- "cursor": 0
- },
- "description": "获取竞品品牌最近 20 条视频,分析发布频率、内容主题、平均播放量"
- },
- {
- "name": "KOL 常青带货说服力分析",
- "input": {
- "sec_user_id": "达人 secUid",
- "count": 30,
- "cursor": 0
- },
- "description": "获取达人近期 30 条视频,分析常青内容的平均播放量和带货说服力"
- }
- ],
- "workflow": {
- "description": "推荐调用链",
- "steps": [
- "上游: tiktok-user-search(keyword) → 搜索达人 → 取 uniqueId",
- "上游: tiktok-user-profile(uniqueId) → 获取 secUid 字段",
- "本步: tiktok-user-posts(sec_user_id=secUid) → 获取该用户发布的全部视频",
- "分析: 统计平均播放量、内容类型分布、发布频率规律"
- ]
- },
- "reportMapping": {
- "slides": [
- "竞品对标(Slide4)",
- "社媒聆听(Slide14)"
- ],
- "dataPoints": [
- "内容发布频率和时间规律",
- "视频平均播放量和互动率",
- "KOL 常青带货内容说服力",
- "竞品品牌内容策略对标"
- ]
- },
- "timeout": 60000,
- "retry": {
- "maxAttempts": 3,
- "delay": 1500,
- "backoffMultiplier": 2
- },
- "tokenConfig": {
- "type": "bearer",
- "configFile": "~/.openclaw/voc-credentials.json",
- "tokenField": "vocToken",
- "currentToken": "r:858b3ee92314d5447d1fc3cdc10462d7",
- "resolutionOrder": ["configFile", "currentToken"],
- "onMissing": {
- "action": "showPaymentQR",
- "qrCodeUrl": "https://pwa.fmode.cn/apig-pay.html?user={{user}}&apigid={{apigid}}&fun_id=HOkkX72PMF",
- "paymentCheckEndpoint": "https://server.fmode.cn/api/apig/getApig",
- "pollingIntervalMs": 3000,
- "pollingTimeoutMs": 300000,
- "onPaymentSuccess": "retrySkillWithNewToken",
- "title": "扫码开通 VOC-AI 数据服务",
- "message": "请扫描下方二维码完成支付,支付成功后将自动获取 Token 并继续执行。"
- },
- "onBalanceInsufficient": {
- "action": "showPaymentQR",
- "qrCodeUrl": "https://pwa.fmode.cn/apig-pay.html?user={{user}}&apigid={{apigid}}&fun_id=HOkkX72PMF",
- "paymentCheckEndpoint": "https://server.fmode.cn/api/apig/getApig",
- "pollingIntervalMs": 3000,
- "pollingTimeoutMs": 300000,
- "onPaymentSuccess": "retrySkillWithNewToken",
- "title": "VOC-AI Token 余额不足,请扫码充值",
- "message": "当前 Token 余额不足,请扫描二维码充值,支付完成后将自动继续执行。"
- }
- },
- "errorHandling": {
- "balanceInsufficient": {
- "conditions": [
- { "responseField": "code", "operator": "in", "value": [-2, -3, -10, 402, 429] },
- { "responseField": "msg", "operator": "contains", "value": ["余额不足", "insufficient", "balance", "quota"] },
- { "responseField": "message", "operator": "contains", "value": ["余额不足", "insufficient", "balance"] }
- ],
- "matchMode": "any",
- "trigger": "tokenConfig.onBalanceInsufficient"
- },
- "unauthorized": {
- "conditions": [
- { "responseField": "code", "operator": "in", "value": [401, 403] },
- { "responseField": "msg", "operator": "contains", "value": ["unauthorized", "token", "invalid", "auth"] }
- ],
- "matchMode": "any",
- "trigger": "tokenConfig.onMissing"
- }
- }
- }
|