IM 即时通讯
服务端
更新日志
服务端集成新手指南
接口及业务限制
平台服务
第三方回调
第三方回调概述
消息相关回调
用户信息相关回调
高级群相关回调
超大群相关回调
聊天室相关回调
音视频1.0相关回调
IM 登录相关回调
圈组相关回调
消息抄送
消息抄送服务概述
开通消息抄送
IM会话相关抄送
IM 会话已读数据抄送
IM其他抄送
圈组相关抄送
音视频和白板相关抄送
安全通
安全通概述
开通 IM 安全通
最佳实践
聊天室重要消息投递
IM 平滑迁移方案
API 参考
API调用方式
API 概览与频控
状态码/错误码
云信 IM 账号管理
注册云信IM账号
刷新Token
封禁账号
账号全局禁言
账号功能模块禁言
设置移动端是否需要推送(桌面端在线时)
登录鉴权
消息功能
发送消息
批量发送单聊消息
发送单聊已读回执
发送群聊已读回执
消息撤回
发送广播消息
文件上传
删除单条消息
删除漫游消息
历史消息与记录
云端历史消息查询
广播消息查询
IM 登录/登出记录查询
自定义系统通知
发送自定义系统通知
批量发送自定义系统通知
用户名片
用户关系管理
好友关系管理
黑名单/静音管理
群组
高级群
创建高级群
拉人入群
发送群消息
添加管理员
移除管理员
转让群主
禁言群组
禁言指定群成员
踢人出群
主动退群
修改群昵称
修改群组信息
设置群消息提醒开关
解散群组
获取群组详细信息
获取群组禁言列表
获取群消息已读未读详情
获取用户已加入的群组信息
获取用户已加入的群组的所有群成员信息
获取群组的在线成员列表
批量获取群组信息与成员列表
批量获取群组的在线成员数量
超大群
创建超大群
拉人入群
发送超大群消息
发送超大群自定义系统通知
撤回超大群消息
添加管理员
移除管理员
转让群主
禁言超大群
禁言指定超大群成员
踢人出群
主动退群
修改超大群昵称
修改超大群信息
修改超大群成员信息
解散超大群
修改超大群人数级别
获取超大群信息
获取超大群成员信息
获取超大群禁言成员信息
获取已加入的超大群信息
查询超大群云端历史消息
聊天室
创建聊天室
获取聊天室地址
更新聊天室信息
查询聊天室信息
开放/关闭聊天室
查询开放状态的聊天室
设置聊天室定时关闭
开启/关闭进出聊天室事件通知
管理聊天室用户角色
获取聊天室成员列表
聊天室消息管理
发送聊天室消息
批量发送聊天室消息
撤回聊天室消息
发送聊天室定向消息
批量发送聊天室定向消息
发送聊天室全服广播消息
管理聊天室机器人
聊天室禁言
聊天室标签
管理聊天室队列
管理聊天室队列元素
圈组
圈组 API 概览
获取圈组连接地址
服务器相关
创建服务器
修改服务器信息
删除服务器
批量查询服务器信息
分页查询服务器列表
服务器成员相关
邀请服务器成员
接受邀请
拒绝邀请
申请加入服务器
接受申请
拒绝申请
生成邀请码
通过邀请码加入
踢出成员
主动退出服务器
修改自己的成员信息
修改他人的成员信息
分页查询服务器成员列表
批量查询服务器成员信息
查询服务器的申请和邀请记录
查询个人的申请和邀请记录
更新成员封禁状态
分页查询封禁成员列表
频道相关
创建频道
修改频道基础信息
修改频道分组相关信息
删除频道
分页查询频道列表
批量查询频道信息
分页查询频道成员列表
修改频道黑白名单成员
修改频道黑白名单身份组
分页查询频道黑白名单成员列表
分页查询频道黑白名单身份组列表
批量查询频道黑白名单成员
批量查询频道黑白名单身份组
频道分组相关
创建频道分组
修改频道分组信息
删除频道分组
批量查询频道分组信息
分页查询频道分组列表
分页查询频道分组下的频道列表
修改频道分组黑白名单身份组
修改频道分组黑白名单成员
分页查询频道分组的黑白名单身份组列表
分页查询频道分组的黑白名单成员列表
批量查询频道分组的黑白名单身份组
批量查询频道分组的黑白名单成员
身份组相关
服务器身份组
身份组成员管理
频道身份组
频道用户定制权限
频道分组身份组
频道分组用户定制权限
身份组自定义权限项
查询用户拥有的权限
圈组消息相关
发送消息
更新消息
查询云端历史消息
查询 Thread 聊天历史
批量查询Thread聊天meta 信息
更新快捷评论
查询快捷评论
查询@某人的未读消息
系统通知相关
圈组系统通知概述
发送自定义系统通知
更新自定义系统通知
搜索结果自定义排序
修改服务器自定义排序值
修改频道自定义排序值
在线状态订阅
文本翻译
推送payload配置

注册云信IM账号

更新时间: 2023/05/18 11:17:57

登录 IM 前,需注册云信 IM 账号。

本文介绍如何通过云信服务端 API 创建 IM 账号,以及相关的常见问题。

功能描述

该接口用于将当前应用自身账号导入云信 IM 系统,为其创建一个对应的云信系统内部 ID(以下称 accid ),使得该账号可使用 IM 功能。

一种典型的账号注册与初次登录的流程如下:

上图中,IM SDK 集成在应用客户端;Your App Server 为您的应用服务器;IM Server 为云信服务器。

  • 通过服务端 API 创建的账号不会在控制台显示,因此注册成功后,请务必记录云信将返回 accid 与 token ,在开发者自身的应用服务器上维护好 accid 与 token 信息列表。
  • 通过服务端 API 创建账号时,云信服务端会对 accid 做小写转换,请注意以 API 返回的accid 为准,以免登录失败。
  • token 如果没有更新,将永久有效。
  • 点播终端用户的 accid 和 IM 的 accid 是不同的。如果同时使用点播相关功能和 IM 功能,需要分别创建并保存点播终端用户的 accid 和 IM 的 accid,例如分别保存为 vodAccid 和 imAccid。

API 使用限制

单个应用默认最高调用频率:100 次/秒。如超限,将被屏蔽 10 秒。

URL

POST https://api.netease.im/nimserver/user/create.action HTTP/1.1
Content-Type:application/x-www-form-urlencoded;charset=utf-8

请求参数

  • POST 请求中 Headers 的设置请参考API调用方式

  • POST 请求中 Body 的设置如下:

参数名称 类型 字符串长度上限 是否必选 示例 描述
accid String 32 必选 "123456" 云信账号,必须保证唯一性。若涉及字母,传参时请一律小写处理。只允许字母、数字、半角下划线_、@、半角点以及半角-。请注意以此接口返回结果中的accid为准。
token String 128 选填 "abcdef" 用户账号对应的登录密钥token。如果未指定,云信会自动生成token,并在创建成功后返回。
name String 64 选填 "zhangsan" 用户昵称
props String 1024 选填 {"k":"v"} 该参数已不建议使用。
icon String 1024 选填 "https://netease/xxx.png" 用户头像 URL
sign String 256 选填 "Hello World" 用户签名
email String 64 选填 "xxx@163.com" 用户邮箱地址
birth String 16 选填 "xxxx-xx-xx" 用户生日
mobile String 32 选填 "+852-xxxxxxxx" 用户手机号码,非中国大陆手机号码需要填写国家代码(如美国:+1-xxxxxxxxxx)或地区代码(如香港:+852-xxxxxxxx)
gender int / 选填 2 用户性别,0-未知,1-男,2-女。其它会报参数错误。
ex String 1024 选填 {"level":1} 用户资料扩展字段,建议封装成JSON。

返回参数

参数名称 类型 示例 描述
code int 200 状态码
info String {
"name": "zhangsan",
"accid": "123456",
"token": "abcdef"
}
注册成功时返回的信息
desc String "already register" 注册失败时返回的信息

示例

请求示例(curl)

curl -X POST -H "AppKey: go9***3mgq3" -H "Nonce: 4t***23t23t" -H "CurTime: 1443592222" -H "CheckSum: 9e9db3b***583f86" -H "Content-Type: application/x-www-form-urlencoded" -d 'accid=123456&name=zhangsan' 'https://api.netease.im/nimserver/user/create.action'

注册成功返回示例

"Content-Type": "application/json; charset=utf-8"
{
    "code": 200,
    "info": {
        "name": "zhangsan",
        "accid": "123456",
        "token": "abcdef"
    }
}

注册失败返回示例

"Content-Type": "application/json; charset=utf-8"
{
    "code": 414,
    "desc": "already register"
}

状态码

该 API 在 HTTPS Body 中返回请求的状态码,状态码详情请参见状态码

常见问题

已有大量用户账号的应用,如何进行账号集成?

对于已经存在大量用户帐号的应用,如果需要接入网易云信 IM 服务,我们推荐遵从按需创建的原则。

考虑到存量帐号中可能存在相当比例的僵尸用户或非活跃用户,在迁入网易云信时直接全量导入对您是一种不必须要的开销。您可以在用户第一次触发使用网易云信的 IM 行为时检查该用户的是否已创建 IM 账号(accid),如未创建则通过后台自动创建再登录,这种方式会使您的用户只有在必要的时候才创建云信的 IM 帐号,同时在云信中创建的用户都是有效的活跃用户。

为什么不能通过客户端 SDK 创建账号,必须要通过服务端创建?

网易云信的账号体系和应用的账号体系是业务绑定的关系,通过应用服务端才能创建云信 IM 账号可以有效控制账号的创建行为,任何应用的客户端都存在被破解的风险,如果直接通过客户端就可以创建云信 IM 账号可能会使您的应用出现被盗刷账号的情况(可能友商提供类似的客户端接口,使您在开发时节省了几行代码,但是为您的应用安全埋下了风险的种子)。

通过云信服务端 API 注册的 IM 账号可否在云信控制台中查看?

通过云信服务端注册的帐号不会出现在控制台。

这么做的原因是:

  • 控制台提供的用户列表只是部分用户列表,是为了方便您在接入云信 IM 服务的过程中,在没有服务端开发的情况下快速进行客户端集成的调试。您可以在控制台上快速的创建测试账号,并在客户端上登录测试;
  • 通过云信服务端 API 创建的账号在控制台不显示,是为了保护用户的隐私及帐号安全,以免出现误操作,例如对用户进行不当的禁用或其他操作。

注册账号后如何查询/更新姓名等用户信息?

可以通过调用用户名片相关接口进行查询或更新用户信息,包括用户昵称、年龄、性别等信息。

此文档是否对你有帮助?
有帮助
我要吐槽
  • 功能描述
  • API 使用限制
  • URL
  • 请求参数
  • 返回参数
  • 示例
  • 请求示例(curl)
  • 注册成功返回示例
  • 注册失败返回示例
  • 状态码
  • 常见问题
  • 已有大量用户账号的应用,如何进行账号集成?
  • 为什么不能通过客户端 SDK 创建账号,必须要通过服务端创建?
  • 通过云信服务端 API 注册的 IM 账号可否在云信控制台中查看?
  • 注册账号后如何查询/更新姓名等用户信息?