服务端 API
创建通知账号
使用 创建通知账号 从可信后端创建可用于发送系统通知或业务通知的 OpenIM 账号。通知账号本质上也是用户账号,但需要设置符合服务端要求的 appMangerLevel。
HTTP 请求
POST {API_ADDRESS}/user/add_notification_account请求示例
curl --request POST "${API_ADDRESS}/user/add_notification_account" \
--header "Content-Type: application/json; charset=utf-8" \
--header "operationID: 1646445464564" \
--header "token: ${ADMIN_TOKEN}" \
--data-raw '{
"userID": "notice_001",
"nickName": "系统通知",
"faceURL": "https://cdn.example.com/avatar/notice.png",
"appMangerLevel": 60
}'安全提示:通知账号会参与服务端通知消息发送,请只在可信后端创建和维护,不要开放给普通用户自助创建。
参数
此接口通过请求头传入链路追踪信息和鉴权凭证,通过 JSON 请求体传递通知账号资料。
请求头
| 请求头 | 示例值 | 是否必填 | 类型 | 说明 |
|---|---|---|---|---|
| operationID | 1646445464564 | 必填 | string | 用于全局链路追踪,建议每个请求独立生成。 |
| token | eyJhbxxxx3Xs | 必填 | string | 管理员 token。 |
请求体参数
{
"userID": "notice_001",
"nickName": "系统通知",
"faceURL": "https://cdn.example.com/avatar/notice.png",
"appMangerLevel": 60
}| 参数名 | 是否必填 | 类型 | 说明 |
|---|---|---|---|
| userID | 选填 | string | 通知账号 ID。不传时服务端会尝试自动生成。传入时不能与已有用户 ID 重复。 |
| nickName | 必填 | string | 通知账号昵称。 |
| faceURL | 选填 | string | 通知账号头像地址。 |
| appMangerLevel | 必填 | int | 应用管理级别,必须满足服务端通知账号级别要求。 |
响应
请求被 OpenIM 正常处理时通常返回 200 OK。业务是否成功以响应体中的 errCode 为准;errCode === 0 表示成功,非 0 表示业务错误。
{
"errCode": 0,
"errMsg": "",
"errDlt": "",
"data": {
"userID": "notice_001",
"faceURL": "https://cdn.example.com/avatar/notice.png",
"nickName": "系统通知",
"appMangerLevel": 60
}
}响应属性列表
| 参数名 | 类型 | 说明 |
|---|---|---|
| errCode | int | 错误码,0 表示成功。 |
| errMsg | string | 错误简要信息,成功时为空。 |
| errDlt | errDlt | 错误详细信息,成功时为空。 |
| data | object | 创建后的通知账号信息。 |
| userID | string | 通知账号 ID。 |
| faceURL | string | 通知账号头像地址。 |
| nickName | string | 通知账号昵称。 |
| appMangerLevel | int | 应用管理级别。 |
错误
如果请求失败,OpenIM 返回错误对象。更多错误码说明见错误码。
{
"errCode": 1001,
"errMsg": "ArgsError",
"errDlt": "userID is used"
}| 参数名 | 类型 | 说明 |
|---|---|---|
| errCode | int | 错误码,具体查看全局错误码文档。 |
| errMsg | string | 错误简要信息。 |
| errDlt | errDlt | 错误详细信息。 |
常见错误场景
| 错误场景 | 可能原因 | 处理方式 |
|---|---|---|
| 通知级别不支持 | appMangerLevel 低于服务端通知账号要求。 | 使用符合部署配置和服务端常量要求的通知账号级别。 |
| 用户 ID 已存在 | 请求中的 userID 已被注册。 | 更换通知账号 ID,或省略 userID 让服务端生成。 |
这个页面有帮助吗?