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 | |
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 | |
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 | |
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. |