# 抖音 星图达人推荐视频 API (douyin.xingtu_recommended_videos)

- Canonical page: https://everyinfra.com/douyin-api/xingtu_recommended_videos
- Endpoint: POST /api/v1/social with {"platform": "douyin", "action": "xingtu_recommended_videos", "params": {...}}
- Price: $0.001597 per call ($1.6 per 1,000 requests); failed and empty results are not charged
- Returns: single object
- Mode: sync; add "mode": "async" for slow tasks

谈合作前想快速翻一遍达人拿得出手的作品，用星图达人推荐视频：按 `douyin_id` 返回四组作品：星图主页的代表作 `signature_videos`、星图主页的最新作品 `latest_videos`、星图商单里播放最高的 `top_xingtu_order_videos`，以及个人作品里播放最高的 `top_personal_videos`。每组里的每条视频只有四项：ID、链接、播放量和发布时间。

拿商单里的最好成绩和个人作品里的最好成绩对着看，能看出商单和日常内容的差距。没有接过商单的达人没有 `top_xingtu_order_videos` 这一项。点赞、评论、分享这类互动数不在这里，要看互动和完播，用视频表现那一页。

## Health

- Live health (24h percent, hourly and daily trends): https://api.everyinfra.com/api/v1/social/availability?platform=douyin&action=xingtu_recommended_videos

## Parameters

| name | type | required | default | description |
|---|---|---|---|---|
| douyin_id | not declared | yes | not declared | 达人个人主页展示的抖音号（unique_id）；也可以直接填星图达人 ID（19 位数字，即 xingtu_creator_search 返回的 creator_id）。不是星图达人时返回空结果、不扣费。 |

## Response fields (items in `results`)

| field | meaning |
|---|---|
| creator_id | 星图商业达人稳定 ID；不是公开主页 user_id 或抖音号。 |
| signature_videos | 星图主页的代表作（xingtu_recommended_videos）：[{id, url, play_count 播放量, posted_at 发布时间}]；星图这几组只给这四项。 |
| latest_videos | xingtu_recommended_videos：星图主页上的最新作品，字段同 signature_videos；xingtu_video_performance：最近的作品（约 15 条），另有 title、like_count、comment_count、share_count、duration_seconds、is_hot（是否热门）。 |
| top_xingtu_order_videos | 星图商单作品里播放最高的（xingtu_recommended_videos），字段同 signature_videos；没接过商单时没有这一项。 |
| top_personal_videos | 个人作品里播放最高的（xingtu_recommended_videos），字段同 signature_videos。 |
| platform | 数据来源平台标识，与请求里的 platform 一致（如 xiaohongshu、tiktok）。 |

## Example

```bash
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
  -H "Authorization: Bearer $EVERYINFRA_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "platform": "douyin",
  "action": "xingtu_recommended_videos",
  "params": {
    "douyin_id": "XiaoZhenlla"
  }
}'
```

```python
import os
import requests

response = requests.post(
    "https://api.everyinfra.com/api/v1/social",
    headers={"Authorization": f"Bearer {os.environ['EVERYINFRA_API_KEY']}"},
    json={
        "platform": "douyin",
        "action": "xingtu_recommended_videos",
        "params": {
            "douyin_id": "XiaoZhenlla",
        },
    },
    timeout=120,
)
print(response.status_code)
print(response.json())
```

## Response example

No real sample for these example parameters yet: structure only, every value is a placeholder (…).

```text
{
  "id": "req_…",
  "platform": "douyin",
  "action": "xingtu_recommended_videos",
  "results": {
    "creator_id": …,
    "signature_videos": …,
    "latest_videos": …,
    "top_xingtu_order_videos": …,
    "top_personal_videos": …,
    "platform": …
  },
  "billing": {
    "charged": …,
    "charged_usd": …,
    "balance_after_usd": …,
    …
  },
  "quota": { … }
}
```

## FAQ

### 商单作品和个人作品分别看哪个字段？

商单里播放最高的在 `top_xingtu_order_videos`，个人作品里播放最高的在 `top_personal_videos`，两组的字段相同，可以直接放在一起比较播放量。没接过商单的达人没有前一项。

### `signature_videos` 和 `latest_videos` 有什么区别？

`signature_videos` 是星图主页上放的代表作，`latest_videos` 是星图主页上的最新作品，两组都只有四项。同名的 `latest_videos` 在视频表现那一页里是最近约 15 条作品，字段更多，别把两边当成同一份数据。

### 视频的互动数据去哪里拿？

这个接口的视频只给播放量，没有点赞、评论、分享。要这些，用视频表现那一页：它的最近作品带标题、点赞评论分享数、时长和是否热门，另外还给个人视频、商单视频的互动率、播放量中位数和完播率。

## Also

- Capability catalog (no key): https://api.everyinfra.com/api/v1/social/catalog?platform=douyin
- OpenAPI: https://everyinfra.com/openapi.json · Agents guide: https://everyinfra.com/agents.md
