跳转到正文

修改当前用户资料 ​

修改当前 IM 用户的公开资料。请求至少包含一个可修改字段,省略的字段保持原值。

POST /app/sdk/users/me

调用方: SDK 客户端 · 认证: IM Token

请求头:Authorization: Bearer <IM Token>。先通过宿主后端获取 Token,再交给 SDK 使用。

请求参数 ​

JSON Body ​

参数类型必填说明
usernamestring | null否账号,非空时 1–64 字符,不含控制字符;null 清空账号。
nicknamestring否昵称,1–80 字符,不含控制字符和首尾空白。
avatarstring否头像地址,最长 1024 字符;空字符串清空头像值。
signaturestring否个性签名,最长 255 字符,不含控制字符;空字符串清空。

请求示例 ​

bash
curl 'https://example.com/app/sdk/users/me' \
  -H "Authorization: Bearer $POPOIM_TOKEN" \
  -H 'Content-Type: application/json' \
  --data '{"nickname":"陈悦","signature":"一起发现沿途的风景"}'

使用说明 ​

  • 只接受上表四个字段,至少提交一个。
  • 如果账号资料由宿主管理,应通过宿主后端统一修改并同步,避免两个入口反复覆盖。

返回参数 ​

成功响应的最外层字段如下。下面所有业务字段都位于 data 中。

字段类型说明
codeinteger0 表示成功;非 0 时查看 msg,不把 data 当成功结果使用。
msgstring成功通常为 ok,失败时为错误说明。
dataobject本次请求的业务结果,字段见下表。

data 字段 ​

字段类型说明
changedboolean本次操作是否实际改变了服务器数据;设置值原本相同时为 false。
event_idstring | null与实时通知对应的事件 ID。没有产生新事件时可为 null;同一事件只处理一次。
userUser修改后的用户资料。

返回示例 ​

示例展示字段结构;ID、时间和资料仅作说明,请使用实际回包。

json
{
  "code": 0,
  "msg": "ok",
  "data": {
    "changed": true,
    "event_id": "evt_6874dbb8db144f18b8532dc4c938156c",
    "user": {
      "id": "1024",
      "user_id": "chenyue",
      "username": "chenyue",
      "nickname": "陈悦",
      "avatar": "https://example.com/uploads/avatars/chenyue.jpg",
      "signature": "一起发现沿途的风景",
      "profile_updated_at": 1792301400000
    }
  }
}

返回对象字段 ​

数组中的每个对象使用同一套字段。点击名称跳到说明:

用户资料

用户资料(User) ​

字段类型说明
idstringIM 内部用户 ID,以十进制字符串返回。调用用户相关接口时使用下面的 user_id。
user_idstring宿主系统提供的用户 ID,例如 chenyue;用于识别同一个人。
usernamestring | null可用于精确搜索的账号;没有设置时为 null。
nicknamestring显示昵称。
avatarstring头像地址。
signaturestring个性签名;未设置时为空字符串。
profile_updated_atinteger公开资料最后更新时间,Unix 毫秒时间戳。

错误处理 ​

先检查 HTTP 状态,再检查 code。业务失败可能仍为 HTTP 200;非 0 的 code 都不能当成功。完整错误码见请求约定。

返回用户、好友与申请接口列表 · HTTP 请求约定