sociallinks.dev

首页 / API 文档

V1
API 密钥

API 参考

Social links API

输入一个创作者主页,输出所有账号。发送一个 Instagram、TikTok、YouTube 或 X 主页链接,即可获得该创作者在其他平台上的账号,每个账号都附有判定结果、置信度分数及其依据。

基础 URLhttps://sociallinks.dev/v1

你可以做什么

OpenAPI 规范完整的接口约定,供代码生成工具和 AI 代理使用。
查看

认证

在 控制台 → API 中创建密钥,并在每个请求中以 Authorization: Bearer sl_…(或 x-api-key: sl_…)发送。密钥消耗你账户的积分。密钥只在创建时显示一次;撤销后会立即失效。

MCP 服务器

可在 Claude Code、Cursor、VS Code、Windsurf、Gemini CLI 或任何 MCP 客户端中查找。把 https://sociallinks.dev/mcp 添加为远程(Streamable HTTP)服务器,并在 Authorization 请求头中发送 API 密钥。工具的计费方式与 REST 端点完全相同。

claude mcp add --transport http sociallinks https://sociallinks.dev/mcp --header "Authorization: Bearer sl_your_key"

放在哪里: Cursor ~/.cursor/mcp.json · VS Code .vscode/mcp.json · Windsurf ~/.codeium/windsurf/mcp_config.json · Gemini CLI ~/.gemini/settings.json

工具

  • lookup_creator

    根据主页网址查找一位创作者;只有找到账号才计费。

  • check_balance

    密钥所属账户的剩余积分。免费。

  • start_batch

    将大量主页网址加入队列,在后台查找。

  • get_batch

    批次的进度和结果行。

计费

当我们在你发送的账号之外找到至少一个账号时,每位创作者收取 1 积分。没有找到结果或失败的查询都免费。再次查询你的账户在过去 30 天内已付费的创作者也免费。积分与网站通用;请参阅价格。

查询一位创作者

POST/resolve

发送一个 Instagram、TikTok、YouTube 或 X 主页 URL。你会获得该创作者在其他平台上的账号,每个账号都附有判定结果、综合置信度分数及其依据。新查询需要 10–40 秒;我们已有的创作者会立即返回。找到至少一个账号时收取 1 积分;没有找到则免费。X-Credits-Remaining 响应头会返回你的余额。

参数

  • urlbody · string必填

    创作者的主页。帖子、Reels、视频和单独的 @用户名会以 400 拒绝。

请求

curl -X POST "https://sociallinks.dev/v1/resolve" \
  -H "Authorization: Bearer $SOCIALLINKS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://www.instagram.com/mkbhd"}'

响应(200)

{
  "creator": {
    "id": "cr_0k3x9a1",
    "name": "Marques Brownlee",
    "kind": "person",
    "aliases": ["Marques Brownlee", "mkbhd"],
    "total_audience": 38000000
  },
  "profiles": [
    { "platform": "instagram", "handle": "mkbhd", "verdict": "seed", "net_confidence": 1 },
    {
      "platform": "youtube",
      "handle": "mkbhd",
      "url": "https://www.youtube.com/@mkbhd",
      "followers": 20000000,
      "verdict": "confirmed",
      "net_confidence": 0.97,
      "evidence": [
        { "kind": "bio_link", "detail": "Linked from the creator's own Instagram bio", "source": "https://www.instagram.com/mkbhd" }
      ]
    }
  ],
  "websites": [{ "url": "https://mkbhd.com", "kind": "website", "label": "mkbhd.com" }],
  "identity_confidence": 0.96,
  "rejected": 4
}

查询一位创作者(GET)

GET/resolve

与 POST /resolve 相同,适用于只能发送 GET 请求的工具。

参数

  • urlquery · string必填

    创作者的主页,需经过 URL 编码。

请求

curl "https://sociallinks.dev/v1/resolve?url=https%3A%2F%2Fwww.instagram.com%2Fmkbhd" \
  -H "Authorization: Bearer $SOCIALLINKS_KEY"

响应(200)

{
  "creator": {
    "id": "cr_0k3x9a1",
    "name": "Marques Brownlee",
    "kind": "person",
    "aliases": ["Marques Brownlee", "mkbhd"],
    "total_audience": 38000000
  },
  "profiles": [
    { "platform": "instagram", "handle": "mkbhd", "verdict": "seed", "net_confidence": 1 },
    {
      "platform": "youtube",
      "handle": "mkbhd",
      "url": "https://www.youtube.com/@mkbhd",
      "followers": 20000000,
      "verdict": "confirmed",
      "net_confidence": 0.97,
      "evidence": [
        { "kind": "bio_link", "detail": "Linked from the creator's own Instagram bio", "source": "https://www.instagram.com/mkbhd" }
      ]
    }
  ],
  "websites": [{ "url": "https://mkbhd.com", "kind": "website", "label": "mkbhd.com" }],
  "identity_confidence": 0.96,
  "rejected": 4
}

批量查询创作者

POST/batches

每一行只有在找到账号时才收费,你的账户在过去 30 天内已付费的行免费。不是主页链接的行会被跳过,从不收费。轮询批次状态,然后下载 CSV。

参数

  • urlsbody · string[] | string必填

    最多 500 个主页 URL,可以是数组,也可以每行一个。

  • namebody · string

    批次的名称。

请求

curl -X POST "https://sociallinks.dev/v1/batches" \
  -H "Authorization: Bearer $SOCIALLINKS_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Q4 shortlist","urls":["https://www.tiktok.com/@zachking","https://www.youtube.com/@mkbhd"]}'

响应(201)

{
  "id": "6f1c2a4e-1b2c-4d3e-9f00-0a1b2c3d4e5f",
  "rows": 2,
  "invalid": 0,
  "duplicates": 0
}

查看批次

GET/batches/{id}

每隔几秒轮询一次,直到 status 变为 "completed"、"partial" 或 "failed"。每一项都有自己的状态和找到的账号。

参数

  • idpath · uuid必填

    POST /batches 返回的 id。

请求

curl "https://sociallinks.dev/v1/batches/$BATCH_ID" \
  -H "Authorization: Bearer $SOCIALLINKS_KEY"

响应(200)

{
  "batch": {
    "id": "6f1c2a4e-1b2c-4d3e-9f00-0a1b2c3d4e5f",
    "name": "Q4 shortlist",
    "status": "completed",
    "total": 2,
    "succeeded": 2,
    "empty": 0,
    "failed": 0,
    "skipped": 0,
    "charged": 2,
    "created_at": "2026-10-19T09:30:00Z"
  },
  "items": [
    {
      "position": 0,
      "input": { "url": "https://www.tiktok.com/@zachking" },
      "status": "succeeded",
      "charged": 1,
      "result": {
        "name": "Zach King",
        "profiles": [{ "platform": "youtube", "handle": "ZachKing", "url": "https://www.youtube.com/@ZachKing", "verdict": "confirmed" }],
        "notFound": ["linkedin"]
      }
    }
  ]
}

以 CSV 下载批次

GET/batches/{id}/export

可直接用于电子表格或导入 CRM。

参数

  • idpath · uuid必填

    批次 id。

请求

curl "https://sociallinks.dev/v1/batches/$BATCH_ID/export" \
  -H "Authorization: Bearer $SOCIALLINKS_KEY" -o results.csv

响应(200)

row,input,status,credits,creator,verified_creator,instagram,youtube,tiktok,x,twitch,facebook,linkedin,nothing_found_on,error
1,https://www.tiktok.com/@zachking,succeeded,1,Zach King,no,https://www.instagram.com/zachking,https://www.youtube.com/@ZachKing,https://www.tiktok.com/@zachking,https://x.com/zachking,,https://www.facebook.com/zachking,,linkedin,

列出你的批次

GET/batches

方便从上次中断的地方继续。

参数

无。

请求

curl "https://sociallinks.dev/v1/batches" \
  -H "Authorization: Bearer $SOCIALLINKS_KEY"

响应(200)

{
  "batches": [
    {
      "id": "6f1c2a4e-1b2c-4d3e-9f00-0a1b2c3d4e5f",
      "name": "Q4 shortlist",
      "status": "completed",
      "total": 2,
      "succeeded": 2,
      "empty": 0,
      "failed": 0,
      "skipped": 0,
      "charged": 2,
      "created_at": "2026-10-19T09:30:00Z"
    }
  ]
}

停止批次

POST/batches/{id}/cancel

正在运行的行会完成。如果批次已完成,则返回 409。

参数

  • idpath · uuid必填

    批次 id。

请求

curl -X POST "https://sociallinks.dev/v1/batches/$BATCH_ID/cancel" \
  -H "Authorization: Bearer $SOCIALLINKS_KEY"

响应(200)

{ "ok": true }

查看余额

GET/balance

与网站使用的积分相同。可在 https://sociallinks.dev/pricing 购买积分包。

参数

无。

请求

curl "https://sociallinks.dev/v1/balance" \
  -H "Authorization: Bearer $SOCIALLINKS_KEY"

响应(200)

{ "credits": 742 }

错误

每个错误的格式都是 { "error": { "message", "code" } }。message 便于阅读;需要按错误类型分支处理时可使用 code。

状态代码含义
400—不是主页 URL(帖子、Reels、视频和单独的 @用户名会被拒绝),或缺少请求体。
401invalid_api_key密钥未知或已被撤销。
401login_required未发送密钥。
402out_of_credits积分已用完。未扣费;请购买积分包后重试。
404—此账户下没有该批次。
409—该批次已完成。
429—新查询过多。请等待 Retry-After 指定的秒数,或将列表发送到 /batches。
502—查询在我们这边出错了。未扣费;请重试。

速率限制

每个密钥的新查询每分钟 5 次
已查询过的创作者不限;即时返回
每个批次的主页数500
每个账户的有效 API 密钥10

支持

有问题或发现了 bug?请发邮件至 support@youtubetranscript.dev。