tencent cloud

Feedback

Importing Friends

Last updated: 2023-03-20 14:28:50

    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
  • Mumbai: adminapiind.im.qcloud.com
  • Silicon Valley: adminapiusa.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.
    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

    Contact Us

    Contact our sales team or business advisors to help your business.

    Technical Support

    Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

    7x24 Phone Support