SocialToAI免费开始控制台

评论分析(comment_insights)

POST /v1/tools/comment_insights 运行评论分析:一个现成工具,返回帖子评论区在说什么:话题及占比、提问、想买、投诉,并附原话。目前可读 14 个平台,38 积分起。带上 max_cost_credits,超出时会被免费拒绝,并返回报价。什么都没取到,不扣。

POSThttps://api.socialtoai.com/v1/tools/comment_insights

想在网站上填写,或看看结果长什么样,打开评论分析。

请求

请求体是 JSON,放这个工具自己的输入。Key 和其他调用一样,放在 Authorization 请求头里。

名称类型必填说明
targetsstring[]是1 到 20 条帖子链接,可以混平台。
focusstring否一句话的关注点;给了就多一栏与它相关的评论。
topicsstring[]否自带的话题,最多 10 个;给了就不再归纳话题。
scalestring否评论总数封顶,由各帖平分:small 200、medium 1,000、large 3,000;评论更贵的平台读得少一些,以返回为准。取值:small、medium、large(默认 small).
max_cost_creditsinteger否这次最多花多少积分;超出则免费拒绝并返回报价。
confirmboolean否true:不论多少积分都直接运行。false:只返回计划和报价,不运行。不填:价格高的和要在后台运行的先返回报价,其余直接运行。
curl https://api.socialtoai.com/v1/tools/comment_insights \  -H "Authorization: Bearer $SOCIALTOAI_KEY" \  -H "Content-Type: application/json" \  -d '{    "targets": ["https://www.tiktok.com/@nasa/video/7300000000000000000"],    "scale": "small"  }'
import osimport requestsresponse = requests.post(    "https://api.socialtoai.com/v1/tools/comment_insights",    headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"},    json={        "targets": ["https://www.tiktok.com/@nasa/video/7300000000000000000"],        "scale": "small",    },)print(response.json())

档位与积分

scale 选档位。同一档位在每个平台上是一个固定价格,运行前就会给出。

档位scale读多少几积分起怎么运行用赠送的 100 积分
小small评论总数至多 200 条,由各帖平分。38当场出结果部分平台可以(11/14)
中medium评论总数至多 1,000 条,由各帖平分。小红书至多 500 条。172部分平台在后台运行购买后可用
大large评论总数至多 3,000 条,由各帖平分。492在后台运行购买后可用

各平台的积分

下表是一条帖子的积分。给了多条链接时,以报价里的总价为准。

平台小中大
TikTok38172492
Instagram58266772
X42190544
Reddit803821122
YouTube50232672
Facebook70332972
小红书270672—
抖音50232672
微博50232672
公众号150732—
B 站50232672
知乎70332972
快手40182522
视频号138636—

结果里有什么

部分内容
话题及占比评论在说哪些话题、各占多少,并附原话。
提问大家反复问的问题。
想买表示想买的评论。
投诉大家在抱怨什么,并附原话。
主要数字评论条数

先报价还是直接运行:confirm

同一个请求,要么直接运行,要么先返回报价。和工具输入放在一起的布尔参数 confirm 决定走哪一种:

confirm返回什么
false总是返回报价。免费:不占用、不取数、不扣积分。
不带价格不超过 100 积分、并且能在这次请求里答完时,直接运行。超过这个数,或者计划要在后台运行(quote.mode 是 background)时,先返回报价。
true直接运行,最多扣报价里写的积分。跑不了的运行会被免费拒绝(not_supported),不会用一份你没要的报价来代替。

运行的返回里带一个 handle:24 小时内可以凭它免费重读完整结果,细节见结果与句柄。带着同一个 Idempotency-Key 再发同样的请求,返回的是第一次运行的结果,不再扣费。

报价

报价是这一次请求的完整计划,以及运行它最多扣多少。报价本身不占用、不取数、不扣积分,status 是 quote。

字段类型说明
request_idstring这次请求的编号。
schema_version"v1"返回格式的版本。
toolstring报价对应的工具。
scale"small" | "medium" | "large" | null报价对应的档位;按行计价的工具为 null。
status"quote"quote:没有占用、没有取数、没有扣积分。
quote.creditsinteger这次运行最多扣多少积分。
quote.parts.data_firstinteger取数价格的前半段。
quote.parts.data_secondinteger取数价格的后半段。读到的不到计划的一半时不扣。
quote.parts.analysisintegerAI 分析的价格。交付的内容里至少九成分析成功才扣。
quote.mode"sync" | "background"sync:在这次请求里返回结果。background:先返回句柄,在后台分批运行。
quote.wavesinteger后台运行分几波;在请求里直接返回的为 1。
quote.estimated_secondsinteger预计耗时(秒)。
quote.free_tier.runnableboolean还没买过积分的账户能不能跑。
quote.free_tier.reasonsstring[]不能跑时的原因:cost、duration 或 paid_only。
quote.planarray按运行顺序列出每一步:平台、动作、多少个目标和多少页,或多少批分析,以及这一步的积分。
quote.price_versionstring报价所依据的价格版本。
billingobject和每个返回里的一样,见积分与计费。

运行怎么扣费

  • 先看到价格:运行前就给出总价,内容再多也不会涨。
  • 什么都没取到,不扣:什么都没取到,这次不扣积分。中途停下,只按完成的部分扣。
  • 每档一个价:同一档位在同一平台价格固定,内容比预想的少也不会减。先用小档,需要读得更多再加。
  • 什么都没取到,不扣。取到了内容但被你设的条件筛光,只扣取数的前半段。中途停下只按完成的部分扣。
  • 工具会用读到的部分继续跑,结果里写明读到了计划的多少。价格分三段:两段取数,一段 AI 分析。读到的不到计划的一半时,取数的后半段不扣;交付的内容里至少九成分析成功,分析那一段才扣。结果不确定的调用,我们不会自动重试。

通过 MCP

MCP 工具是 comment_insights。输入和积分都一样。工具列表 里有你的 AI 拿到的描述。

最近更新: