无 UI 集成方案

服务端 API

诚邀爱技术、爱分享的你,成为文档内容共建者> HOT

功能说明

  • 支持批量更新同一用户的多个好友的关系链数据。
  • 更新一个用户多个好友时,建议采用批量方式,避免并发写导致的写冲突。

接口调用说明

请求 URL 示例

https://console.tim.qq.com/v4/sns/friend_update?sdkappid=88888888&identifier=admin&usersig=xxx&random=99999999&contenttype=json

请求参数说明

下表仅列出调用本接口时涉及修改的参数及其说明,更多参数详情请参考 REST API 简介

参数 说明
v4/sns/friend_update 请求接口
sdkappid 创建应用时即时通信 IM 控制台分配的 SDKAppID
identifier 必须为 App 管理员帐号,更多详情请参见 App 管理员
usersig App 管理员帐号生成的签名,具体操作请参见 生成 UserSig
random 请输入随机的32位无符号整数,取值范围0 - 4294967295
contenttype 请求格式固定值为json

最高调用频率

200次/秒。

请求包示例

  • 基础形式
    {
        "From_Account":"id",
        "UpdateItem":
        [
            {
                "To_Account":"id1",
                "SnsItem":
                [
                    {
                        "Tag":"Tag_SNS_IM_Remark",
                        "Value":"remark1"
                    }
                ]
            }
        ]
    }
  • 完整形式
    {
        "From_Account":"id",
        "UpdateItem":
        [
            {
                "To_Account":"id1",
                "SnsItem":
                [
                    {
                        "Tag":"Tag_SNS_IM_Remark",
                        "Value":"remark1"
                    },
                    {
                        "Tag":"Tag_SNS_IM_Group",
                        "Value":
                        [
                            "group1",
                            "group2"
                        ]
                    },
                    {
                        "Tag":"Tag_SNS_Custom_Test",
                        "Value":"test"
                    }
                ]
            }
        ]
    }
  • 批量形式
    {
        "From_Account":"id",
        "UpdateItem":
        [
            {
                "To_Account":"id1",
                "SnsItem":
                [
                    {
                        "Tag":"Tag_SNS_IM_Remark",
                        "Value":"remark1"
                    }
                ]
            },
            {
                "To_Account":"id2",
                "SnsItem":
                [
                    {
                        "Tag":"Tag_SNS_IM_Remark",
                        "Value":"remark2"
                    },
                    {
                        "Tag":"Tag_SNS_IM_Group",
                        "Value":
                        [
                            "group1",
                            "group2"
                        ]
                    }
                ]
            },
            {
                "To_Account":"id3",
                "SnsItem":
                [
                    {
                        "Tag":"Tag_SNS_IM_Remark",
                        "Value":"remark3"
                    },
                    {
                        "Tag":"Tag_SNS_IM_Group",
                        "Value":
                        [
                            "group3"
                        ]
                    },
                    {
                        "Tag":"Tag_SNS_Custom_Test",
                        "Value":"test"
                    }
                ]
            }
        ]
    }

请求包字段说明

字段 类型 属性 说明
From_Account String 必填 需要更新该 UserID 的关系链数据
UpdateItem Array 必填 需要更新的好友对象数组
To_Account String 必填 好友的 UserID
SnsItem Array 必填 需要更新的关系链数据对象数组
Tag String 必填 需要更新的关系链字段的字段名,目前只支持好友备注、好友分组、关系链自定义字段的更新操作,关系链字段的详细信息可参见 好友表
Value Array/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":30011,
                "ResultInfo":"Err_SNS_FriendUpdate_Group_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 并发写导致写冲突,建议使用批量方式
30011 分组已达系统上限

接口调试工具

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

参考

目录