Importing a Group Profile
Feature Overview
This API allows the app admin to import group data without triggering callbacks or delivering notifications. When your app needs to be migrated to Chat from another instant messaging system, you can use this API to import existing group data.
API Calling Description
Applicable group types
Group Type | Support for This RESTful API |
Private | Yes. Same as work groups (Work) in the new version. |
Public | Yes |
ChatRoom | Yes. Same as meeting groups (Meeting) in the new version. |
AVChatRoom | No |
Community | Yes |
Note
AVChatRoom groups do not support importing basic group data. If you attempt to import basic group data for AVChatRoom groups, error 10007 is returned. To achieve the effect of importing basic group data, you can create a group and modify basic group data.
Sample request URL
https://xxxxxx/v4/group_open_http_svc/import_group?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/group_open_http_svc/import_group | 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. The value is fixed to json . |
Maximum call frequency
200 calls per second
Sample request
Basic format
Import a group. You can use
CreateTime
to specify the group creation time.{"Owner_Account": "leckie", // User ID of the group owner (optional)"Type": "Public", // Group type: Private, Public, ChatRoom, or Community (required)"Name": "TestGroup", // Group name (required)"CreateTime": 1448357837 // Group creation time (optional). If this field is not specified, the default creation time is the request time.}
Containing only the topic-enabled parameter format
Import a group and specify its type as a topic-enabled community group.
{"Type": "Community", // Group type (required)"Name": "test_import_group", // Group name (required)"SupportTopic": 1// Whether the topic option is supported. Valid values: `1`: yes; `0`: no.}
Specifying other optional fields
You can specify optional fields such as
Introduction
and Notice
. The request format is the same as that of a group creation request.{"Owner_Account": "leckie", // User ID of the group owner (optional)"Type": "Public", // Group type: Private, Public, ChatRoom, or Community (required)"GroupId":"MyFirstGroup", // User-defined group ID for external display (optional)"Name": "TestGroup", // Group name (required)"Introduction": "This is group Introduction", // Group introduction (optional)"Notification": "This is group Notification", // Group notice (optional)"FaceUrl": "http://this.is.face.url","MaxMemberCount": 500, // Maximum number of group members (optional)"ApplyJoinOption": "FreeAccess", // Method for handling requests to join the group (optional)"CreateTime": 1448357837, // Group creation time (optional). If this field is not specified, the default creation time is the request time."AppDefinedData": [ // Group custom field (optional){"Key": "GroupTestData1", // Key of the app custom field"Value": "xxxxx" // Value of the custom field},{"Key": " GroupTestData2","Value": "abc\u0000\u0001" // The custom field supports binary data.}]}
Request fields
Field | Type | Required | Description |
Owner_Account | String | Optional | Group owner ID, which will be automatically added to group members. If this field is not specified, the group will have no group owner. |
Type | String | Required | Group type, which can be Public, Private (Work), ChatRoom, or Community. |
GroupId | String | Optional | To simplify group IDs and make them easy to remember, Tencent Cloud allows apps to customize group IDs during group creation through RESTful APIs. For details, see Group Systems. |
Name | String | Required | Group name, whose maximum length is 30 bytes. |
Introduction | String | Optional | Group introduction, whose maximum length is 240 bytes. |
Notification | String | Optional | Group notice, whose maximum length is 300 bytes. |
FaceUrl | String | Optional | URL of the group profile photo, whose maximum length is 100 bytes. |
MaxMemberCount | Integer | Optional | Maximum number of group members, which is 6,000 at the maximum. The default value is 2,000. Currently, a community group supports up to 100,000 group members. |
ApplyJoinOption | String | Optional | Method for handling requests to join the group. Valid values: FreeAccess , NeedPermission (default), and DisableApply . This field is not supported by community groups. |
AppDefinedData | Array | Optional | Group custom field. By default, this field is unavailable and needs to be enabled before use. For details, see Group Systems. |
CreateTime | Integer | Optional | Group creation time |
SupportTopic | Integer | No | Whether the topic option is supported. This field is valid only for communities. |
Sample response
Basic format
{"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 0,"GroupId": "@TGS#2J4SZEAEL"}
Containing only the topic-enabled parameter format
{"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 0,"GroupId": "@TGS#_@TGS#c4YHCIIM62CX"}
Specifying other optional fields
{"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 0,"GroupId": "MyFirstGroup"}
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 | Group ID after successful creation, which is assigned by the Chat backend or specified by users. |
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), 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. |
10007 | No operation permissions. This error occurs when, for example, a member in a public group tries to remove other users from the group (only the app admin can perform this operation). |
10021 | The group ID is already in use. Specify another group ID. |
API Debugging Tool
References
Setting the unread message count of a member (v4/group_open_http_svc/set_unread_msg_num)
Importing group members (v4/group_open_http_svc/import_group_member)
Disbanding a group (v4/group_open_http_svc/destroy_group)