跳到主内容

获取用户公开资料 · Get Public User Profile

根据 userId 获取用户的公开主页资料,包括昵称、头像、简介、等级与社交统计等。常用于作者主页、排行榜用户卡片、群聊房主信息等场景。

本接口始终以陌生人视角返回数据。即使查询的是自己的 userId,也不会返回完整私有资料;查看自己的完整资料请使用 get-user-profile

接口地址

POST https://xiangcao.ai/api/get-public-user-profile

普通(非流式)接口,走 /api 前缀。

鉴权

这是公开接口,鉴权可选

  • 不带 Token 也能调用。
  • 携带 Token 时会按用户做调用频率限制(rate limit),且当查询的不是自己时会额外返回 isFollowing 字段:
Authorization: Bearer <YOUR_API_KEY>

请求体(JSON)

字段类型必填说明
userIdstring目标用户 ID。

类型定义(TypeScript)

interface GetPublicUserProfileRequest {
  /** 目标用户 ID */
  userId: string;
}

响应(JSON)

直接返回 PublicUserProfile 对象(非分页结构)。

字段类型说明
userIdstring用户 ID。
nicknamestring | null昵称(含链接的昵称会被替换为占位文案)。
avatarUrlstring | null头像 URL。
profileBgUrlstring | null主页背景图 URL。
biostring | null个人简介。
statusStickerUrlstring | null状态贴纸 URL。
createdAtnumber注册时间(毫秒时间戳)。
updatedAtnumber最近更新时间(毫秒时间戳)。
vipLevelnumberVIP 等级(0–30)。用户 opt-out 公开金主身份时不返回。
authorLevelnumber作者等级(0–30)。
isMemberboolean是否为有效会员。用户 opt-out 公开金主身份时不返回。
isOfficialboolean是否为平台官方账号(仅官方账号返回)。
followerCountnumber粉丝数。
followingCountnumber关注数。
cardCountnumber创作的角色卡数量。
topAuthorRanknumber作者榜名次(1–15),未上榜则不返回。
topVipRanknumber金主榜名次(1–15),未上榜则不返回;用户 opt-out 时不返回。
isFollowingboolean当前 Token 用户是否已关注该用户(仅登录且查询他人时返回)。
hideSocialFromPublicboolean用户已隐藏社交清单时为 true,前端可据此展示锁定提示。

类型定义(TypeScript)

interface PublicUserProfile {
  userId: string;
  nickname: string | null;
  avatarUrl: string | null;
  profileBgUrl: string | null;
  bio: string | null;
  statusStickerUrl: string | null;
  createdAt: number;
  updatedAt?: number;
  vipLevel?: number;
  authorLevel?: number;
  isMember?: boolean;
  isOfficial?: boolean;
  followerCount?: number;
  followingCount?: number;
  cardCount?: number;
  topAuthorRank?: number;
  topVipRank?: number;
  isFollowing?: boolean;
  hideSocialFromPublic?: boolean;
}

响应示例:

{
  "userId": "user_001",
  "nickname": "香草作者",
  "avatarUrl": "https://cdn.xiangcao.ai/avatars/user_001.png",
  "profileBgUrl": null,
  "bio": "喜欢写角色卡",
  "statusStickerUrl": null,
  "createdAt": 1700000000000,
  "updatedAt": 1705000000000,
  "vipLevel": 5,
  "authorLevel": 12,
  "isMember": true,
  "followerCount": 128,
  "followingCount": 32,
  "cardCount": 8,
  "topAuthorRank": 3,
  "isFollowing": false
}

示例

curl -X POST "https://xiangcao.ai/api/get-public-user-profile" \
  -H "Authorization: Bearer <YOUR_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{
    "userId": "user_001"
  }'

错误处理

出错时返回相应 HTTP 状态码及 JSON。

状态码说明
400缺少 userId
401Token 无效或账号被封禁(公开调用可不带 Token)。
404用户不存在,或用户已被封禁。
500服务端内部错误。