导入好友

最近更新时间:2019-08-02 17:56:59

功能说明

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

接口调用说明

请求 URL 示例

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

请求参数说明

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

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

最高调用频率

100次/秒。如需提升调用频率,请根据 工单模板 提交工单申请处理。

请求包示例

  • 基础形式

    {
      "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 必填 需要为该 Identifier 添加好友
AddFriendItem Array 必填 好友结构体对象
To_Account String 必填 好友的 Identifier
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"],
      "Invalid_Account":["id3"],
      "ActionStatus":"OK",
      "ErrorCode":0,
      "ErrorInfo":"",
      "ErrorDisplay":""
    }

应答包字段说明

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

错误码说明

除非发生网络错误(例如502错误),否则该接口的 HTTP 返回码均为200;真正的错误码、错误信息是通过应答包体中的 ErrorCode、ErrorInfo 来表示的。
公共错误码(60000到79999)参见 错误码 文档。
本 API 私有错误码如下:

错误码 描述
30001 请求参数错误,请根据错误描述检查请求参数
30002 SDKAppID 不匹配
30003 请求的用户帐号不存在
30004 请求需要 App 管理员权限
30005 关系链字段中包含敏感词
30006 服务器内部错误,请重试
30007 网络超时,请稍后重试
30008 并发写导致写冲突,建议使用批量方式
30010 好友数已达系统上限
30011 分组已达系统上限

接口调试工具

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

参考