SocialToAI免费开始控制台

爆款发现(viral_finder)

POST /v1/tools/viral_finder 运行爆款发现:一个现成工具,返回一个平台上某个题材里明显超出作者平时水平的内容。目前可读 6 个平台,24 积分起。带上 max_cost_credits,超出时会被免费拒绝,并返回报价。什么都没取到,不扣。

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

想在网站上填写,或看看结果长什么样,打开爆款发现。

请求

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

名称类型必填说明
querystring是题材关键词。
platformstring是一个平台。
windowstring否看最近多久。取值:7d、30d(默认 7d).
scalestring否small 搜 3 页;medium 加前 10 位作者的基线;large 搜 5 页加前 30 位作者。取值:small、medium、large(默认 small).
max_cost_creditsinteger否这次最多花多少积分;超出则免费拒绝并返回报价。
confirmboolean否true:不论多少积分都直接运行。false:只返回计划和报价,不运行。不填:价格高的和要在后台运行的先返回报价,其余直接运行。
curl https://api.socialtoai.com/v1/tools/viral_finder \  -H "Authorization: Bearer $SOCIALTOAI_KEY" \  -H "Content-Type: application/json" \  -d '{    "query": "air fryer recipes",    "platform": "tiktok",    "window": "7d",    "scale": "small"  }'
import osimport requestsresponse = requests.post(    "https://api.socialtoai.com/v1/tools/viral_finder",    headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"},    json={        "query": "air fryer recipes",        "platform": "tiktok",        "window": "7d",        "scale": "small",    },)print(response.json())

档位与积分

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

档位scale读多少几积分起怎么运行用赠送的 100 积分
小small搜 3 页。24当场出结果可以
中medium搜 3 页,并核对前 10 位作者的平时水平。54当场出结果部分平台可以(4/5)
大large搜 5 页,并核对前 30 位作者的平时水平。130当场出结果购买后可用

各平台的积分

下表是一个题材、一个平台的积分。

平台小中大
TikTok3676178
X2454130
YouTube24——
小红书54294810
抖音4888192
B 站2464160

结果里有什么

部分内容
爆款内容明显超出作者平时水平的内容,以及超出多少。
主要数字爆款条数

先报价还是直接运行: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 工具是 research,调用时把 tool 设为 viral_finder。输入和积分都一样。工具列表 里有你的 AI 拿到的描述。

最近更新: