Edit a message
Description
The ZIM server supports developers in editing a message sent in a one-to-one or group conversation.
After a message is edited, the message sent callback is triggered. At the same time, the message receiver can receive the message edited notification through the following ZIM SDK callback interface.
iOS | Android | macOS |
---|---|---|
messageEdited | onMessageEdited | messageEdited |
Windows | Web | 小程序 |
---|---|---|
onMessageEdited | messageEdited | messageEdited |
Flutter | uni-app | HarmonyOS |
---|---|---|
onMessageEdited | messageEdited | messageEdited |
React Native |
---|
messageEdited |
Note
By default, only messages sent within the last 24 hours can be edited. For editing older messages, please contact ZEGOCLOUD technical support for configuration.
Request method and endpoint
- Request method: POST
- Request URL:
- One-to-one message:
https://zim-api.zego.im/?Action=EditC2cMsgBody
- Group message:
https://zim-api.zego.im/?Action=EditGroupMsgBody
- One-to-one message:
- Transmission protocol: HTTPS
- QPS limit: 20 times/second.
Request parameters
The following table describes only the method-specific request parameters and some common request parameters. For the complete list of common request parameters, see Accessing Server APIs.
Parameter | Type | Required | Description |
---|---|---|---|
FromUserId | String | Yes | The user ID of the message editor. Note When editing group messages, this user must be a member of the target group. |
SenderId | String | Yes | The ID of the message sender.
|
ConvId | String | Yes | The conversation ID.
|
MsgType | Number | Yes | The message type. Supported values:
|
ConvMsgSeq | Number | Yes | The message sequence. How to obtain:
|
EditType | Number | Yes | The edit type. Supported values:
Message and ExtendedData fields in MessageBody . |
MessageBody | Object | No | Required when EditType includes EM_MSG or EM_PAYLOAD.Please refer to the MessageBody Description for the structure of this parameter, including the Message and ExtendedData field descriptions for text messages, combined messages, and custom messages. |
AtListInfo | Object | No | The list of users to be mentioned. Required when EditType includes EM_AT.Please refer to the AtListInfo Description for the structure of this parameter. |
IsAtAll | Bool | No | Whether all users are to be mentioned. Required when EditType includes EM_AT_ALL. |
SubMsgType | Number | No | The type of custom message defined by you, with a value range of [0, 200]. Required when EditType includes EM_SUBMSGTYPE. |
AtListInfo Structure
Parameter | Type | Description |
---|---|---|
AtList | Array of String | The mentioned user ID list, can be empty. |
Request example
-
Request URL:
https://zim-api.zego.im/?Action=EditGroupMsgBody &<Common request parameters>
-
Request body:
{ "FromUserId": "editer", "SenderId": "sender", "ConvId": "conv_id_007", "MsgType": 200, "ConvMsgSeq": 110, "EditType": 31, "MessageBody": { "Message": "edit msg", "ExtendedData": "extend data" }, "AtListInfo": { "AtList": [ "userA", "userB" ] }, "IsAtAll": false, "SubMsgType": 101 }
Response parameters
Parameter | Type | Description |
---|---|---|
Code | Number | Return code. |
Message | String | Description of the result. |
RequestId | String | Request ID. |
StateMsgSeq | Number | Message status sequence. |
EditMsgSeq | Number | Message edit sequence. |
LatestEditTime | Number | The Unix timestamp of the last message edit, in seconds (s). |
Response example
{
"Code": 0,
"Message": "success",
"RequestId": "343649807833778782",
"StateMsgSeq": 1,
"EditMsgSeq": 1,
"LatestEditTime": "173436478"
}
Return codes
Return Code | Description | Suggested Action |
---|---|---|
660000002 | Input parameter error. | Please check the parameters. |
661000001 | Exceeded editable time. | If you need to edit older messages, please contact ZEGOCLOUD technical support. |
661000005 | Edit failed. | Please contact ZEGOCLOUD technical support. |