SDK 文档

服务端 API

更新好友

最近更新时间:2019-12-31 15:34:37

功能说明

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

接口调用说明

请求 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

最高调用频率

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 管理员权限
30005 关系链字段中包含敏感词
30006 服务器内部错误,请重试
30007 网络超时,请稍后重试
30008 并发写导致写冲突,建议使用批量方式
30011 分组已达系统上限

接口调试工具

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

参考

目录