tencent cloud

Feedback

Getting Specified Group Member Profiles

Last updated: 2024-10-29 16:46:10

    Overview

    This API is used by the app admin to obtain specified group member profiles based on the group ID and UserId list of specified group members.

    API Calling Description

    Applicable group types

    Group Type ID
    RESTful API Support
    Private
    Yes. Same as the work group (Work) in the new version.
    Public
    Yes
    ChatRoom
    Yes. Same as the meeting group (Meeting) in the new version.
    AVChatRoom
    No
    Community
    Yes
    These are the preset group types in IM. For more information, see Group System.

    Sample request URL

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

    Request parameters

    The following table only describes the modified parameters when this API is called. For more information on other parameters, please 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/group_open_http_svc/get_specified_group_member_info
    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 A basic request is used to obtain detailed group member information, including group member profiles and custom group member fields. The request requires the group ID and UseId list of specified group members. The number of specified group members cannot exceed 50 at a time.
    {
    "GroupId":"@TGS#2KIFZCIPQ", // Group ID (required)
    "Member_List_Account" : ["bob","peter"] // UserId list of specified group member(required)
    }
    Specifying information to pull You can use the MemberInfoFilter filter field to specify fields to pull. Fields that are not specified in it will not be pulled.
    {
    "GroupId":"@TGS#2KIFZCIPQ", // Group ID (required)
    "Member_List_Account" : ["bob","peter"], // UserId list of specified group member(required)
    "MemberInfoFilter": [ // Information to pull, where `Member_Account` is included by default. If this field is not specified, all group member information will be pulled.
    "Role",
    "JoinTime",
    "MsgSeq",
    "MsgFlag",
    "LastSendMsgTime",
    "MuteUntil",
    "NameCard",
    "OnlineStatus"
    ]
    }
    Pulling the information of members in the specified role You can use the MemberRoleFilter filter field to specify the role of members to pull information. If this field is not specified, the information of members in all roles will be pulled.
    {
    "GroupId":"@TGS#2KIFZCIPQ", // Group ID (required)
    "Member_List_Account" : ["bob","peter","John"], // UserId list of specified group member(required)
    "MemberRoleFilter":[ // Member role filter
    "Owner",
    "Member"
    ]
    }
    Pulling custom group member fields You can use the AppDefinedDataFilter_GroupMember filter field to specify the custom group member fields to pull. Fields that are not specified in it will not be pulled.
    {
    "GroupId":"@TGS#2KIFZCIPQ", // Group ID (required)
    "Member_List_Account" : ["bob","peter"], // UserId list of specified group member(required)
    "AppDefinedDataFilter_GroupMember": [ // Filter for custom group member fields
    "group_member_p" // Key of a custom group member field
    ]
    }
    Response to an ALL IN ONE request
    {
    "GroupId":"@TGS#2KIFZCIPQ", // Group ID (required)
    "Member_List_Account" : ["bob","peter"], // UserId list of specified group member(required)
    "MemberInfoFilter": [ // Information to pull. If this field is not specified, all group member information will be pulled.
    "Role",
    "JoinTime",
    "MsgSeq",
    "MsgFlag",
    "LastSendMsgTime",
    "MuteUntil",
    "NameCard"
    ],
    "MemberRoleFilter":[ // Member role filter
    "Owner",
    "Member"
    ],
    "AppDefinedDataFilter_GroupMember": [ // Filter for custom group member fields
    "group_member_p", // Key of a custom group member field
    "group_member_p2"
    ]
    }

    Request fields

    Field
    Type
    Required
    Description
    GroupId
    String
    Yes
    ID of the group to pull member information
    Member_List_Account
    Array
    Yes
    UserID list of specified group members that needs to obtain information. The number of UserID cannot exceed 50.
    MemberInfoFilter
    Array
    No
    Information to pull. If this field is not specified, all group member information will be pulled. For details on group member information fields, see Group member profile.
    MemberRoleFilter
    Array
    No
    Role of group members to pull information. If this field is not specified, the information of members in all roles will be pulled. The member role can be Owner, Admin, or Member.
    AppDefinedDataFilter_GroupMember
    Array
    No
    This field is omitted by default. It specifies the custom group member fields to pull. For more information, see the Custom Fields section in Group System.

    Sample response

    Response to a basic
    {
    "ActionStatus": "OK",
    "ErrorCode": 0,
    "ErrorInfo": "",
    "GroupId": "@TGS#2KIFZCIPQ",
    "MemberList": [ //Group member list
    {
    "AppMemberDefinedData": [ // Custom group member fields
    {
    "Key": "group_member_p",
    "Value": "the value"
    },
    {
    "Key": "group_member_p2",
    "Value": "the value2"
    }
    ],
    "JoinTime": 1728964923, // Time when the member joined the group
    "LastSendMsgTime": 1728973475, // Last time when the member sent a message
    "Member_Account": "bob",
    "MsgFlag": "AcceptAndNotify",
    "MsgSeq": 7,
    "MuteUntil": 1728977081, // Muting end time in seconds
    "NameCard": "bob",
    "Role": "Member"
    },
    {
    "AppMemberDefinedData": [ // Custom group member fields
    {
    "Key": "group_member_p",
    "Value": "the value"
    },
    {
    "Key": "group_member_p2",
    "Value": "the value2"
    }
    ],
    "JoinTime": 1728964923,
    "LastSendMsgTime": 1728973184,
    "Member_Account": "peter",
    "MsgFlag": "AcceptAndNotify",
    "MsgSeq": 3,
    "MuteUntil": 0, // `0`: the member is not muted; other values: the time when the member will be unmuted
    "NameCard": "Peter",
    "Role": "Member"
    }
    ]
    }
    Response to a request pulling specified fields
    {
    "ActionStatus": "OK",
    "ErrorCode": 0,
    "ErrorInfo": "",
    "GroupId": "@TGS#2KIFZCIPQ",
    "MemberList": [ // Group member list
    {
    "AppMemberDefinedData": [ // Custom group member fields
    {
    "Key": "group_member_p",
    "Value": "the value"
    },
    {
    "Key": "group_member_p2",
    "Value": "the value2"
    }
    ],
    "JoinTime": 1728964923, // Time when the member joined the group
    "LastSendMsgTime": 1728973475, // Last time when the member sent a message
    "Member_Account": "bob",
    "MsgFlag": "AcceptAndNotify",
    "MsgSeq": 7,
    "MuteUntil": 1728977081, // Muting end time in seconds
    "NameCard": "bob",
    "OnlineStatus": "Online",
    "Role": "Member"
    },
    {
    "AppMemberDefinedData": [ // Custom group member fields
    {
    "Key": "group_member_p",
    "Value": "the value"
    },
    {
    "Key": "group_member_p2",
    "Value": "the value2"
    }
    ],
    "JoinTime": 1728964923,
    "LastSendMsgTime": 1728973184,
    "Member_Account": "peter",
    "MsgFlag": "AcceptAndNotify",
    "MsgSeq": 3,
    "MuteUntil": 0, // `0`: the member is not muted; other values: the time when the member will be unmuted
    "NameCard": "Peter",
    "OnlineStatus": "Offline",
    "Role": "Member"
    }
    ]
    }
    Pulling the information of members in the specified role
    {
    "ActionStatus": "OK", // The request succeeded.
    "ErrorCode": 0, // Return code
    "ErrorInfo": "",
    "GroupId": "@TGS#2KIFZCIPQ",
    "MemberList": [
    {
    "AppMemberDefinedData": [ // Custom group member fields
    {
    "Key": "group_member_p",
    "Value": "the value"
    },
    {
    "Key": "group_member_p2",
    "Value": "the value2"
    }
    ],
    "JoinTime": 1728964923, // Time when the member joined the group
    "LastSendMsgTime": 1728973184, // Last time when the member sent a message
    "Member_Account": "peter", // Member account
    "MsgFlag": "AcceptAndNotify", // Type of member messages being blocked
    "MsgSeq": 7, // Sequence number of the member’s read message
    "MuteUntil": 0, // `0`: the member is not muted; other values: the time when the member will be unmuted
    "NameCard": "Peter", // Member’s contact card
    "Role": "Member" // Member’s role
    },
    {
    "AppMemberDefinedData": [ // Custom group member fields
    {
    "Key": "group_member_p",
    "Value": ""
    },
    {
    "Key": "group_member_p2",
    "Value": ""
    }
    ],
    "JoinTime": 1728964631,
    "LastSendMsgTime": 0,
    "Member_Account": "John",
    "MsgFlag": "AcceptAndNotify",
    "MsgSeq": 4,
    "MuteUntil": 0,
    "NameCard": "",
    "Role": "Owner"
    },
    {
    "AppMemberDefinedData": [ // Custom group member fields
    {
    "Key": "group_member_p",
    "Value": "the value"
    },
    {
    "Key": "group_member_p2",
    "Value": "the value2"
    }
    ],
    "JoinTime": 1728964923,
    "LastSendMsgTime": 1728973475,
    "Member_Account": "bob",
    "MsgFlag": "AcceptAndNotify",
    "MsgSeq": 7,
    "MuteUntil": 1728977081, // Muting end time in seconds
    "NameCard": "bob",
    "Role": "Member"
    }
    ]
    }
    Pulling custom group member fields
    {
    "ActionStatus": "OK",
    "ErrorCode": 0,
    "ErrorInfo": "",
    "GroupId": "@TGS#2KIFZCIPQ",
    "MemberList": [ // Group member list
    {
    "AppMemberDefinedData": [ // Custom group member fields
    {
    "Key": "group_member_p",
    "Value": "the value"
    }
    ],
    "JoinTime": 1728964923, // Time when the member joined the group
    "LastSendMsgTime": 1728973475, // Last time when the member sent a message
    "Member_Account": "bob",
    "MsgFlag": "AcceptAndNotify",
    "MsgSeq": 7,
    "MuteUntil": 1728977081, // Muting end time in seconds
    "NameCard": "bob",
    "Role": "Member"
    },
    {
    "AppMemberDefinedData": [// Custom group member fields
    {
    "Key": "group_member_p",
    "Value": "the value"
    }
    ],
    "JoinTime": 1728964923,
    "LastSendMsgTime": 1728973184,
    "Member_Account": "peter",
    "MsgFlag": "AcceptAndNotify",
    "MsgSeq": 7,
    "MuteUntil": 0, // `0`: the member is not muted; other values: the time when the member will be unmuted
    "NameCard": "Peter",
    "Role": "Member",
    }
    ]
    }
    Response to an ALL IN ONE request
    {
    "ActionStatus": "OK",
    "ErrorCode": 0,
    "ErrorInfo": "",
    "GroupId": "@TGS#2KIFZCIPQ",
    "MemberList": [ // Group member list
    {
    "AppMemberDefinedData": [ // Custom group member fields
    {
    "Key": "group_member_p",
    "Value": "the value"
    },
    {
    "Key": "group_member_p2",
    "Value": "the value2"
    }
    ],
    "JoinTime": 1728964923, // Time when the member joined the group
    "LastSendMsgTime": 1728973184, // Last time when the member sent a message
    "Member_Account": "peter",
    "MsgFlag": "AcceptAndNotify",
    "MsgSeq": 7,
    "MuteUntil": 0, // `0`: the member is not muted; other values: the time when the member will be unmuted
    "NameCard": "Peter",
    "Role": "Member"
    },
    {
    "AppMemberDefinedData": [ // Custom group member fields
    {
    "Key": "group_member_p",
    "Value": "the value"
    },
    {
    "Key": "group_member_p2",
    "Value": "the value2"
    }
    ],
    "JoinTime": 1728964923,
    "LastSendMsgTime": 1728973475,
    "Member_Account": "bob",
    "MsgFlag": "AcceptAndNotify",
    "MsgSeq": 7,
    "MuteUntil": 1728977081, // Muting end time in seconds
    "NameCard": "bob",
    "Role": "Member",
    }
    ]
    }

    Response fields

    Field
    Type
    Description
    ActionStatus
    String
    Request result. OK: successful; FAIL: failed
    ErrorCode
    Integer
    Error code. 0: successful; other values: failed
    ErrorInfo
    String
    Error information
    GroupId
    String
    ID of the group to pull member information
    MemberList
    Array
    Returned group member list, which contains information of all or specified group members fields. For details on group member information fields, see Group member profile.
    AppMemberDefinedData
    Array
    Returned custom group member fields

    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 ErrorCode and ErrorInfo respectively. 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
    10002
    Internal server error. Try again.
    10003
    Invalid command word.
    10004
    Invalid parameter. Check the error description and troubleshoot the issue.
    10005
    The number of group members queried exceeds 50. Please ensure that the number of group members requested is no more than 50.
    10007
    No operation permissions. Check whether the operator is an app admin or whether the operator has the permission to read the fields in the request.
    10010
    The group does not exist or has been deleted.
    10015
    Invalid group ID. Use the correct group ID.

    API Debugging Tool

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

    References

    Modifying the Profile of a Group Member (v4/group_open_http_svc/modify_group_member_info)
    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