Importing Friends

Feature Overview

This API is used to import one-way friends in batches.
We recommend that you import friends for the same user in batches to avoid write conflicts due to concurrent writes.

API Calling Description

Sample request URL

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

Request parameters

The following table describes the modified parameters when this API is called. For other parameters, see RESTful API Overview.
Parameter
Description
xxxxxx
Domain name corresponding to the country/region where your SDKAppID is located.
China: console.tim.qq.com
Singapore: adminapisgp.im.qcloud.com
Seoul: adminapikr.im.qcloud.com
Frankfurt: adminapiger.im.qcloud.com
Silicon Valley: adminapiusa.im.qcloud.com
Jakarta: adminapiidn.im.qcloud.com
v4/sns/friend_import
Request API
sdkappid
SDKAppID assigned by the Chat console when an app is created
identifier
App admin account. For more information, see the App Admin section in Login Authentication.
usersig
Signature generated by the app admin account. For details, see Generating UserSig.
random
A random 32-bit unsigned integer ranging from 0 to 4294967295.
contenttype
Request format, which should always be json.

Maximum call frequency

200 calls per second

Sample request

Basic format
{
"From_Account":"id",
"AddFriendItem":
[
{
"To_Account":"id1",
"AddSource":"AddSource_Type_XXXXXXXX"
}
]
}
Response to a complete request
{
"From_Account":"id",
"AddFriendItem":
[
{
"To_Account":"id1",
"Remark":"remark1",
"RemarkTime":1420000001,
"GroupName":["Friends"],
"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
}
]
}
]
}
Response to a batch request
{
"From_Account":"id",
"AddFriendItem":
[
{
"To_Account":"id1",
"AddSource":"AddSource_Type_XXXXXXXX"
},
{
"To_Account":"id2",
"Remark":"remark2",
"RemarkTime":1420000001,
"GroupName":["Friends"],
"AddSource":"AddSource_Type_XXXXXXXX",
"AddWording":"I'm Test2",
"AddTime":1420000001
},
{
"To_Account":"id3",
"Remark":"remark3",
"RemarkTime":1420000001,
"GroupName":["Colleagues","Friends"],
"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
}
]
}
]
}

Request fields

Field
Type
Required
Description
From_Account
String
Yes
The UserID that initiates the request.
AddFriendItem
Array
Yes
Structural object of the friend, the number of friends in a single request must not exceed 1000.
To_Account
String
Yes
UserID of a friend.
Remark
String
No
Friend remarks set by From_Account for To_Account. For more information, see Standard friend fields.
RemarkTime
Integer
No
Time of remarking To_Account by From_Account.
GroupName
Array
No
Group information of To_Account added by From_Account. For more information, see Standard friend fields.
AddSource
String
Yes
Source from which a friend is added. For more information, see Standard friend fields.
AddWording
String
No
Remarks that the user who initiates the friend request writes about the user to be added. For more information, see Standard friend fields.
AddTime
Integer
No
Time of establishing a friend relationship between From_Account and To_Account.
CustomItem
Array
No
Custom friend data of To_Account set by From_Account. Each member has a Tag field and a Value field. For more information, see Custom friend fields.
Tag
String
No
Name of the custom friend field. To use it, first apply for a custom friend field in the Chat console by navigating to App Configuration > eature Configuration.
Value
String/Integer
No
Value of the custom friend field.

Sample response

Response to a basic or complete request
{
"ResultItem":
[
{
"To_Account":"id1",
"ResultCode":0,
"ResultInfo":""
}
],
"ActionStatus":"OK",
"ErrorCode":0,
"ErrorInfo":"",
"ErrorDisplay":""
}
Response to a batch request
{
"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":""
}

Response fields

Field
Type
Description
ResultItem
Array
Result of adding friends in bulk, which is an array of UserIDs and corresponding results.
To_Account
String
UserID that you requested to add as a friend.
ResultCode
Integer
Result of To_Account. 0: Successful. Other values: Failed. For details on non-zero results, see Error Codes.
ResultInfo
String
Error description of To_Account. This field is empty if the request is successful.
Fail_Account
Array
List of users whose processing failed. This field is only returned when at least one user fails.
ActionStatus
String
Request result. OK: Successful. FAIL: Failed.
ErrorCode
Integer
Error code. 0: Successful. Other values: Failed. For details on non-zero results, see Error Codes.
ErrorInfo
String
Detailed error information
ErrorDisplay
String
Detailed information displayed on the client


Error Codes

The returned HTTP status code for this API is always 200 unless a network error (such as error 502) occurs. The specific error code and details can be found in the response fields ResultCode, ResultInfo, ErrorCode, and ErrorInfo. For public error codes (60000 to 79999), please see Error Codes. The following table describes the error codes specific to this API:
Error Code
Description
30001
Incorrect request parameter. Check your request according to the error description.
30002
The SDKAppID does not match.
30003
The requested account does not exist.
30004
The request requires app admin permissions.
30006
Internal server error. Try again.
30007
Network timeout. Try again later.
30008
A write conflict occurred due to concurrent write operations. You are advised to use bulk processing.
30010
The number of friends has reached the upper limit of the system.
30011
The maximum number of friend lists has been reached.

API Debugging Tool

Use the RESTful API online debugging tool to debug this API.

References