Bluesky Profile
Bluesky 主页是包含持久标识、handle、显示名称、简介、主页图片、网站以及可见粉丝数、关注数和帖子数的公开账号记录。这些身份字段与账号信号可用于补全主页资料、比较公开账号和观察不同时点的变化。
主要特性
- 按 username 直接查找将一个由 1 到 253 个字母、数字、点或连字符组成的 username 解析为公开主页记录。
- 标准化主页身份以一致账号结构返回可用主页 ID、来源 URL、username、显示名称、简介和关联网站。
- 主页图片与状态字段将可用头像、封面、认证和隐私状态保留为可空字段,不在来源缺失时自行补值。
- 可见账号数量快照将可用粉丝数、关注数和帖子数与 collected_at 一同保留,使每次公开账号快照都有观察时间。
参数
| 参数 | 必填 | 描述 |
|---|---|---|
username | 必填 | 必填的公开 Bluesky username,由 1 到 253 个字母、数字、点或连字符组成。不要提交开头的 @、下划线、DID、主页 URL 或第二个 username。 |
如何使用
提交一个经过校验的 username,跟踪异步任务,并从标准结果响应中读取主页记录。
- 准备一个由字母、数字、点或连字符组成的 Bluesky username,例如 jay.bsky.team,不要添加开头的 @。
- 将 username 提交到 /v1/bluesky/profile,并保存返回的 task_id。
- 轮询 /v1/tasks/{task_id},直到任务成功或返回失败。
- 从 data.results.items 读取结果。该查找通常只保存一个主页,因此 has_more 为 false;若通用结果响应报告更多数据,则使用 next_cursor 继续读取。
curl -X POST "https://api.socq.ai/v1/bluesky/profile" \
-H "Authorization: Bearer $SOCQ_API_KEY" \
-H "Content-Type: application/json" \
-d '{"username":"jay.bsky.team"}'
# 轮询 GET /v1/tasks/{task_id}
# 从 data.results.items 读取主页记录最佳使用场景
- 已知主页资料补全: 根据已有 Bluesky username,为记录补充公开 handle、显示名称、简介、主页图片、网站和来源 URL。
- 账号规模比较: 分别提交多个 username,并使用相同的标准化指标键比较可用粉丝数、关注数和帖子数。
- 主页展示监测: 在重复任务中保存身份、简介、图片、网站和 collected_at,用于识别不同公开快照之间的变化。
使用建议
- 提交前去掉开头的 @,并按字母、数字、点和连字符校验剩余 username;此 endpoint 不接受 user_id,因此应拒绝 DID。
- 优先使用返回的 id 对主页去重;id 为空时,再使用 url 或 username 作为备用键。
- 允许简介、头像、封面、网站、状态、地点和单项指标为 null,避免部分公开字段缺失时中断结果处理。
- 不要添加 results_limit 或 username 数组;每个 username 作为一个固定价格任务提交,并将正常结果视为单条主页记录。
相关 API
需要其他类型的 Bluesky 公开数据时,可以使用以下 API。
- Bluesky Post API — 将一个已知的公开 bsky.app 帖子 URL 解析为标准化正文、作者、媒体、时间、标签、提及和可见互动字段。
- Bluesky User Posts API — 通过 handle 或 DID 采集一页公开 Bluesky 帖子,返回标准化内容、作者、媒体、时间和可见互动指标。