logo
In-app Chat
Powered Byspreading
On this page

Query the message list of group chats


Overview

You can call this operation to paginate and fetch the message list of a specific group chat.

Operation prototype

  • Request method: POST
  • Request URL: https://zim-api.zego.im/?Action=QueryGroupMsg
  • Protocol: HTTPS
  • QPS limit: 20 calls per second.

Request parameters

The following table describes only the operation-specific request parameters and some common request parameters. For the complete list of common request parameters, see the Public request parameters section of the Accessing Server APIs topic.

ParameterTypeRequiredDescription
GroupIdStringYesThe group ID.
LimitNumberNo

The number of messages to retrieve at a time, with a value range of (0, 100], defaulting to 10.

  • When the value ≤ 0, it is corrected to 10.
  • When the value > 100, it is corrected to 100.
NextNumberNo

Pagination flag for pulling messages. Fill in 0 for the first time, and then fill in the Next value returned from the previous call. When the returned Next is 0, it means that the message list has been completely retrieved.

For example, if there are 250 messages in the current one-on-one chat session and you call this interface to query:

  1. First call this interface, fill in 100 for Limit, and fill in 0 for Next to query the 1st to 100th messages; the Next value in the returned result is num1.
  2. Second call this interface, fill in 100 for Limit, and fill in num1 for Next to query the 101st to 200th messages; the Next value in the returned result is num2.
  3. Third call this interface, fill in 100 for Limit, and fill in num2 for Next to query the 201st to 250th messages; the query is complete, and the Next in the returned result is 0.
WithEmptyMsgNumberNo

Whether the returned result includes retracted messages and messages that have been deleted on the server.

  • 0: Default value, not included.
  • 1: Included.

Sample request

  • Request URL:
Untitled
https://zim-api.zego.im/?Action=QueryGroupMsg
&<Common request parameters>
1
Copied!
  • Request message body:
Untitled
{
"GroupId": "group1",
"Limit": 10,
"Next": 0,
"WithEmptyMsg": 0
}
1
Copied!

Response parameters

CodeNumberThe return code.
MessageStringThe description of the request result.
RequestIdStringThe request ID.
NextNumberPagination flag.
  • Not 0: indicates that there is more conversation information to be returned, and this field needs to be set to the Next parameter in the request to fetch more conversation information.
  • 0: indicates that the complete conversation list has been returned.
Aside from the explanations mentioned above, this field has no association with the list information. Please do not base any other logic on it.
ListArray of ObjectMessage list. Return the results in descending order by MsgTime.
└SenderStringThe ID of the message sender.
└MsgTypeNumberMessage type:
  • 1: Text.
  • 10: Multi-item.
  • 11: Image.
  • 12: Document.
  • 13: Audio.
  • 14: Video.
  • 200: Custom.
└SubMsgTypeNumberSpecific custom type. The value is filled in by the user when sending a custom message, and the value range is [0, 200]. This parameter is only meaningful when MsgType is 200 (custom type).
└MsgBodyStringMessage content.
└MsgIdNumberMessage ID, which can be used to determine the uniqueness of the message.
└MsgSeqNumberThe message Seq.
└PayloadStringMessage extension field.
└MsgTimeNumberTimestamp when the server receives the message, in Unix time format with milliseconds (ms) as the unit.
└IsEmptyNumberWhether it is an empty message.
  • 0: Not empty.
  • 1: Message has been deleted or expired.
  • 2: Message has been recalled.

MsgBody JSON String Parsing Result Parameters

Multimedia messages

Multi-Item messages

Sample response

Untitled
{
    "Code": 0
    "Message": "success",
    "RequestId": "343649807833778782",
    "Next": 1000,
    "List": [
        {
            "Sender": "user1",
            "MsgType": 1,
            "MsgBody": "This is a message.",
            "MsgId": 971503777289036700,
            "MsgSeq": 1,
            "Payload": "Payload",
            "MsgTime": 1705895412000,
            "IsEmpty": 0
        }
    ]
}
1
Copied!

Return codes

The following table describes only the return codes related to the business logic of the operation. For the complete list of return codes, see Return codes.

Return CodeDescriptionSolution
660000002Invalid parameter.Check the input parameter.
660300005The QPS limit specified in AppID is exceeded.Try again later.
660500002FromUserId is not registered.Check if FromUserId is correct.
660600001The entered GroupId does not exist.Please confirm if the entered GroupId is correct.
660600009Failed to retrieve group-related information.Please confirm if the GroupId is correct. If it is correct, contact ZEGOCLOUD technical support.

Previous

Query the message list of one-on-one chats

Next

Set conversation marks