有奖征文:轻量对象存储LighthouseCOS用户实践> HOT

功能说明

支持批量导入单向好友。
往同一个用户导入好友时建议采用批量导入的方式,避免并发写操作导致的写冲突。

接口调用说明

请求 URL 示例

https://xxxxxx/v4/sns/friend_import?sdkappid=88888888&identifier=admin&usersig=xxx&random=99999999&contenttype=json

请求参数说明

下表仅列出调用本接口时涉及修改的参数及其说明,更多参数详情请参考 REST API 简介
参数
说明
xxxxxx
SDKAppID 所在国家/地区对应的专属域名:
中国:console.tim.qq.com
新加坡:adminapisgp.im.qcloud.com
首尔: adminapikr.im.qcloud.com
法兰克福:adminapiger.im.qcloud.com
孟买:adminapiind.im.qcloud.com
硅谷:adminapiusa.im.qcloud.com
雅加达:adminapiidn.im.qcloud.com
v4/sns/friend_import
请求接口
sdkappid
创建应用时即时通信 IM 控制台分配的 SDKAppID
identifier
必须为 App 管理员账号,更多详情请参见 App 管理员
usersig
App 管理员账号生成的签名,具体操作请参见 生成 UserSig
random
请输入随机的32位无符号整数,取值范围0 - 4294967295
contenttype
请求格式固定值为json

最高调用频率

200次/秒。

请求包示例

基础形式
{
"From_Account":"id",
"AddFriendItem":
[
{
"To_Account":"id1",
"AddSource":"AddSource_Type_XXXXXXXX"
}
]
}
完整形式
{
"From_Account":"id",
"AddFriendItem":
[
{
"To_Account":"id1",
"Remark":"remark1",
"RemarkTime":1420000001,
"GroupName":["朋友"],
"AddSource":"AddSource_Type_XXXXXXXX",
"AddWording":"I'm Test1",
"AddTime":1420000001,
"CustomItem":
[
{
"Tag":"Tag_SNS_Custom_XXXX",
"Value":"Test"
},
{
"Tag":"Tag_SNS_Custom_YYYY",
"Value":0
}
]
}
]
}
批量形式
{
"From_Account":"id",
"AddFriendItem":
[
{
"To_Account":"id1",
"AddSource":"AddSource_Type_XXXXXXXX"
},
{
"To_Account":"id2",
"Remark":"remark2",
"RemarkTime":1420000001,
"GroupName":["朋友"],
"AddSource":"AddSource_Type_XXXXXXXX",
"AddWording":"I'm Test2",
"AddTime":1420000001
},
{
"To_Account":"id3",
"Remark":"remark3",
"RemarkTime":1420000001,
"GroupName":["同事","朋友"],
"AddSource":"AddSource_Type_XXXXXXXX",
"AddWording":"I'm Test3",
"AddTime":1420000001,
"CustomItem":
[
{
"Tag":"Tag_SNS_Custom_XXXX",
"Value":"Test"
},
{
"Tag":"Tag_SNS_Custom_YYYY",
"Value":0
}
]
}
]
}

请求包字段说明

字段
类型
属性
说明
From_Account
String
必填
需要为该 UserID 添加好友
AddFriendItem
Array
必填
好友结构体对象
To_Account
String
必填
好友的 UserID
Remark
String
选填
From_Account 对 To_Account 的好友备注,详情可参见 标配好友字段
RemarkTime
Integer
选填
From_Account 对 To_Account 的好友备注时间
GroupName
Array
选填
From_Account 对 To_Account 的分组信息,详情可参见 标配好友字段
AddSource
String
必填
加好友来源字段,详情可参见 标配好友字段
AddWording
String
选填
From_Account 和 To_Account 形成好友关系时的附言信息,详情可参见 标配好友字段
AddTime
Integer
选填
From_Account 和 To_Account 形成好友关系的时间
CustomItem
Array
选填
From_Account 对 To_Account 的自定义好友数据,每一个成员都包含一个 Tag 字段和一个 Value 字段,详情可参见 自定义好友字段
Tag
String
选填
自定义好友字段的名称,使用前请通过即时通信 IM 控制台 > 应用配置 > 功能配置申请自定义好友字段
Value
String/Integer
选填
自定义好友字段的值

应答包体示例

基础形式、完备形式
{
"ResultItem":
[
{
"To_Account":"id1",
"ResultCode":0,
"ResultInfo":""
}
],
"ActionStatus":"OK",
"ErrorCode":0,
"ErrorInfo":"",
"ErrorDisplay":""
}
批量形式
{
"ResultItem":
[
{
"To_Account":"id1",
"ResultCode":0,
"ResultInfo":""
},
{
"To_Account":"id2",
"ResultCode":30010,
"ResultInfo":"Err_SNS_FriendImport_My_Friend_Num_Exceed_Threshold"
},
{
"To_Account":"id3",
"ResultCode":30002,
"ResultInfo":"Err_SNS_FriendImport_SdkAppId_Illegal"
}
],
"Fail_Account":["id2","id3"],
"ActionStatus":"OK",
"ErrorCode":0,
"ErrorInfo":"",
"ErrorDisplay":""
}

应答包字段说明

字段
类型
说明
ResultItem
Array
批量加好友的结果对象数组
To_Account
String
请求添加的好友的 UserID
ResultCode
Integer
To_Account 的处理结果,
0:表示成功
非0:表示失败,非0取值的详细描述请参见 错误码说明
ResultInfo
String
To_Account 的错误描述信息,成功时该字段为空
Fail_Account
Array
返回处理失败的用户列表,仅当存在失败用户时才返回该字段
ActionStatus
String
请求处理的结果:
OK:表示处理成功
FAIL:表示失败
ErrorCode
Integer
错误码:
0:表示成功
非0:表示失败,非0取值的详细描述请参见 错误码说明
ErrorInfo
String
详细错误信息
ErrorDisplay
String
详细的客户端展示信息


错误码说明

除非发生网络错误(例如502错误),否则该接口的 HTTP 返回码均为200。实际的错误码、错误信息是通过应答包体中的 ResultCode、ResultInfo、ErrorCode 以及 ErrorInfo 来表示的。 公共错误码(60000到79999)请参见 错误码。 本 API 私有错误码如下:
错误码
描述
30001
请求参数错误,请根据错误描述检查请求参数
30002
SDKAppID 不匹配
30003
请求的用户账号不存在
30004
请求需要 App 管理员权限
30006
服务器内部错误,请重试
30007
网络超时,请稍后重试
30008
并发写导致写冲突,建议使用批量方式
30010
好友数已达系统上限
30011
分组已达系统上限

接口调试工具

通过 REST API 在线调试工具 调试本接口。

参考

添加好友(v4/sns/friend_add
更新好友(v4/sns/friend_update
删除好友(v4/sns/friend_delete
删除所有好友(v4/sns/friend_delete_all
校验好友(v4/sns/friend_check
拉取好友(v4/sns/friend_get
拉取指定好友(v4/sns/friend_get_list