# user_posts

POST /v1/user_posts 是“账号作品”动作：一个账号发过的内容。目前在 15 个平台上开放（TikTok、Instagram、X、Reddit、Facebook、LinkedIn 等），平台是请求里的一个参数。每次调用 2 到 12 积分，因平台而异；失败的调用不扣。

- 页面：https://socialtoai.com/zh/docs/api/user-posts/
- 最近更新：2026-10-17

- POST: `https://api.socialtoai.com/v1/user_posts`

## 请求

请求体是 JSON。下面这几项每个动作都一样，其余的参数因平台而异，见后文。

| 名称 | 类型 | 位置 | 必填 | 说明 |
| --- | --- | --- | --- | --- |
| `platform` | string | 请求体 | 是 | 要读的平台，取这个动作已开放的平台之一。 |
| `max_cost_credits` | integer | 请求体 | 否 | 这次调用最多花多少积分。超出时免费拒绝，并在返回里给出报价。 |
| `Idempotency-Key` | string | 请求头 | 否 | 1 到 255 个可见 ASCII 字符。同一个键加同样的参数会返回第一次的结果，不会重复扣费。 |

## 平台与积分

每个平台收的参数不同。平台自己的页面上有完整的参数表、字段表和可以改的请求。

| 平台 | 价格键 | 积分 | 必填 | 可选 | 每页 |
| --- | --- | --- | --- | --- | --- |
| [TikTok](https://socialtoai.com/zh/tiktok-user-posts-api.md) | `tiktok.user_posts` | 2 | `username` | `sort` | 10 |
| [Instagram](https://socialtoai.com/zh/instagram-user-posts-api.md) | `instagram.user_posts` | 2 | `username` | `type` | 12 |
| [X](https://socialtoai.com/zh/x-user-posts-api.md) | `x.user_posts` | 2 | `username` | `tab` | 60 |
| [Reddit](https://socialtoai.com/zh/reddit-user-posts-api.md) | `reddit.user_posts` | 2 | `username` | – | 25 |
| [Facebook](https://socialtoai.com/zh/facebook-user-posts-api.md) | `facebook.user_posts` | 2 | `id`、`username`、`url` 里给一个 | – | 3 |
| [LinkedIn](https://socialtoai.com/zh/linkedin-user-posts-api.md) | `linkedin.user_posts` | 2 | `username`、`url` 里给一个 | – | 10 |
| [Threads](https://socialtoai.com/zh/threads-user-posts-api.md) | `threads.user_posts` | 2 | `username` | – | 30 |
| [Telegram](https://socialtoai.com/zh/telegram-user-posts-api.md) | `telegram.user_posts` | 2 | `username` | – | 20 |
| [小红书](https://socialtoai.com/zh/xiaohongshu-user-posts-api.md) | `xiaohongshu.user_posts` | 12 | `id`、`url` 里给一个 | – | 30 |
| [抖音](https://socialtoai.com/zh/douyin-user-posts-api.md) | `douyin.user_posts` | 2 | `id` | – | 20 |
| [公众号](https://socialtoai.com/zh/wechat-user-posts-api.md) | `wechat.user_posts` | 12 | `id` | – | 20 |
| [B 站](https://socialtoai.com/zh/bilibili-user-posts-api.md) | `bilibili.user_posts` | 2 | `id` | – | 30 |
| [知乎](https://socialtoai.com/zh/zhihu-user-posts-api.md) | `zhihu.user_posts` | 2 | `username` | – | 20 |
| [快手](https://socialtoai.com/zh/kuaishou-user-posts-api.md) | `kuaishou.user_posts` | 12 | `id` | – | 20 |
| [视频号](https://socialtoai.com/zh/wechat-channels-user-posts-api.md) | `wechat_channels.user_posts` | 12 | `id` | – | 30 |

有些平台的这个动作还有另一种取值，由某个参数选中，单独计价：

| 平台 | 价格键 | 积分 | 由什么选中 |
| --- | --- | --- | --- |
| 知乎 | `zhihu.user_posts:answers` | 2 | `type=answer` |
| 知乎 | `zhihu.user_posts:pins` | 2 | `type=pin` |

## 参数

| 名称 | 类型 | 说明 | 哪些平台收 |
| --- | --- | --- | --- |
| `username` | string | TikTok 账号名，不带 @ | TikTok、Instagram、X、Reddit、Facebook、LinkedIn、Threads、Telegram和知乎 |
| `sort` | string | 按发布时间排，或按热门排取值因平台而异：`latest`、`popular` | TikTok |
| `type` | string | 全部帖子，或只要 Reels 短视频取值因平台而异：`all`、`reel` | Instagram |
| `tab` | string | 主页上的哪个分栏：帖子（含转推）、回复（连同被回复的帖子）、媒体取值因平台而异：`posts`、`replies`、`media` | X |
| `id` | string | 主页编号，一串数字；比账号名快 | Facebook、小红书、抖音、公众号、B 站、快手和视频号 |
| `url` | string | 主页链接，facebook.com/账号名 的写法 | Facebook、LinkedIn和小红书 |

## 示例

TikTok：一个账号最近发布的视频。

**cURL**

```
curl https://api.socialtoai.com/v1/user_posts \
  -H "Authorization: Bearer $SOCIALTOAI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "platform": "tiktok",
    "username": "nasa"
  }'
```

**Python**

```
import os
import requests

response = requests.post(
    "https://api.socialtoai.com/v1/user_posts",
    headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"},
    json={
        "platform": "tiktok",
        "username": "nasa",
    },
)
print(response.json())
```

**返回** (200 OK, 2 积分)

```
{
  "request_id": "req_00000000-0000-4000-8000-000000000001",
  "schema_version": "v1",
  "fetched_at": "2026-10-12T18:45:11.000Z",
  "action": "user_posts",
  "platform": "tiktok",
  "status": "ok",
  "items": [
    {
      "platform": "tiktok",
      "id": "…",
      "ref": "…",
      "approx": [],
      "type": "content",
      "url": "https://example.com/…",
      "format": "video",
      "title": null,
      "text": "…",
      "published_at": "2026-07-21T20:09:02.000Z",
      "author": {
        "id": "…",
        "username": "…",
        "name": "…",
        "verified": null,
        "followers": 2060928
      },
      "metrics": {
        "likes": 103312,
        "comments": 3021,
        "shares": 3253,
        "collects": 7513,
        "views": 1592522,
        "reposts": null
      },
      "images": null,
      "hashtags": [],
      "is_pinned": true
    }
  ],
  "unavailable": ["title", "author.verified", "metrics.reposts", "images"],
  "page": {
    "has_more": true,
    "cursor": "cur_…",
    "cursor_expires_at": "2026-10-12T19:15:11.000Z"
  },
  "warnings": [],
  "applied_params": {
    "username": "nasa"
  },
  "cost_credits": 2,
  "billing": {
    "cost_credits": 2,
    "balance_credits": 98,
    "today_spend_credits": 2,
    "daily_limit_credits": null,
    "daily_remaining_credits": null,
    "display": "本次 2 积分，余额 98 积分"
  },
  "replayed": false
}
```

_示例数据：名字、链接和正文已换成占位符。_

## 返回什么

返回[外层结构](https://socialtoai.com/zh/docs/api/response.md)，`items` 里是 [`content`](https://socialtoai.com/zh/docs/api/response.md) 对象。一次调用返回一页，最多 10 条；每一页是一次调用。cursor 最长 30 分钟内有效。

失败的调用是 0 积分，并说明原因，见[错误](https://socialtoai.com/zh/docs/api/errors.md)。
