POST
/v1/comments"platform": "tiktok"TikTok 评论接口
一条视频下的评论。
TikTok 评论 API(数据接口)返回一条公开 TikTok 视频下的评论:正文、点赞数、回复数和时间,返回格式和 SocialToAI 的其他调用相同。每次调用 2 积分(约 $0.004–$0.0067),失败不扣。用 HTTP 调用,或让 AI 客户端通过 MCP 调用。最近实测:2026-10-17。
2 积分每次调用
每页最多 50 条一次调用返回一页
2026-10-17最近实测
843 B示例返回的体积(1 条)
最近更新:
请求与返回
curl https://api.socialtoai.com/v1/comments \ -H "Authorization: Bearer $SOCIALTOAI_KEY" \ -H "Content-Type: application/json" \ -d '{ "platform": "tiktok", "id": "7665840565958872333" }'import osimport requestsresponse = requests.post( "https://api.socialtoai.com/v1/comments", headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"}, json={ "platform": "tiktok", "id": "7665840565958872333", },)print(response.json())# 已经通过 MCP 接好了?直接用大白话问。读一下这条 TikTok 视频下的评论:7665840565958872333# 你的 AI 会调用 comments 工具,参数是:{ "platform": "tiktok", "id": "7665840565958872333"}改一改请求上面的代码会跟着变。
取值200 OK843 B2 积分
{ "platform": "tiktok", "status": "ok", "items": [ { "platform": "tiktok", "id": "…", "ref": "…", "approx": [], "type": "comment", "url": null, "text": "…", "published_at": "2026-10-08T14:20:19.000Z", "author": { "label": "anonymous_1" }, "metrics": { "likes": 1430 }, "reply_count": 37, "content_id": "…", "parent_id": null, "root_id": null } ], "unavailable": ["url"], "page": { "has_more": true, "cursor": "cur_…", "cursor_expires_at": "2026-10-12T19:15:47.000Z" }, "cost_credits": 2}likes 1,430回复 37
示例里的名称和正文已去掉,数字是录制时的真实值。
示例数据录制的 50 条里的 1 条
5 个参数。
1 个必填。
用 POST 发一个 JSON 请求体。Key 放在 Authorization 请求头里,不要放进网址。
| 名称 | 类型 | 是否必填 | 默认值 | 说明 |
|---|---|---|---|---|
| platform | string | 必填 | — | 这一页固定填 "tiktok"。 |
| id | string | 几个里给一个 | — | 视频编号,一串数字 |
| url | string | 几个里给一个 | — | 视频的网页链接 |
| reply_of | string | 选填 | — | 给了它就返回某条评论下的回复(2 积分)。 |
| cursor | string | 选填 | — | 填上一次返回的 page.cursor,取下一页。 |
这些值从哪里拿。
id视频编号,一串数字(例如 7665840565958872333)
这些接口返回的每一条都带 ref,原样填进来即可:
hashtag_videos话题作品user_posts账号作品search搜索
也可以直接填网页链接,返回里的 url 字段就是。
items 里每一条的字段。
TikTok 给不了的标出来了。
| 字段 | 类型 | 含义 |
|---|---|---|
| items[].url | string始终 null | 评论的链接,平台有才给。 |
| items[].text | string | 评论原文。 |
| items[].published_at | string | 发布时间,ISO 8601(UTC)。 |
| items[].author.label | string | 匿名标记,在同一次返回里保持一致;写的人不具名。 |
| items[].metrics.likes | integer | 点赞数。 |
| items[].reply_count | integer | 回复数。 |
| items[].content_id | string | 评论所在内容的编号。 |
| items[].parent_id | string | 它直接回复的那条评论;一级评论为 null。 |
| items[].root_id | string | 所在回复串的一级评论。 |
nullTikTok 给不了的字段null 的意思是“TikTok 没给这个值”,不要当成 0。这些字段在这个调用里始终是 null:
url评论的链接,平台有才给。
这个调用的其他取值
请求里带上对应的参数,就换成另一种返回:
reply_of某条评论下的回复2 积分每一条另有 platform、id、ref、approx、type;items 外面的部分每个调用都一样。 返回格式
会发生什么。
一次调用返回一页,最多 50 条;page.has_more 为 true 时把 page.cursor 填进 cursor 取下一页,每页 2 积分,cursor 30 分钟内有效。
正常执行但没有结果,算一次成功的调用:status 为 "empty",items 为空,扣 2 积分。
TikTok 的这个接口分不清“视频不存在”和“没有数据”:两种情况都返回 empty,并照常扣费。
每把 Key 每秒 1 次,购买后 5 次;超出不扣费。 频率限制
失败的调用 0 积分,不会自动重试。 错误码
接好 MCP 后,这样问就会用到它。
读一下这条 TikTok 视频下的评论:7665840565958872333
2 积分comments {"platform":"tiktok","id":"7665840565958872333"}在 TikTok 上搜和“space station”有关的视频,再对前 3 个结果:读一下这条 TikTok 视频下的评论。
8 积分search {"platform":"tiktok","query":"space station"}comments {"platform":"tiktok","id":"<ref>"} × 3
这些工具运行时会调用它。
同一个调用,换个平台。
全部平台和价格POST
/v1/comments{ "platform": "tiktok", "id": "7665840565958872333" }2 积分每次调用请求里只改 platform 这一个词,返回的结构不变。
常见问题。
简短回答。
TikTok 的全部接口需要 TikTok 账号,或者申请 TikTok 官方的 API 吗?
不需要,只要一把 SocialToAI 的 Key。返回的是 TikTok 上公开可见的内容和账号信息,你不用登录 TikTok,也不用在那边申请任何东西。
能取某条评论下的回复吗?
可以,请求里带上 reply_of。这种调用每次 2 积分。