Recalling One-to-One Messages

Feature Overview

This API enables administrators to recall one-to-one messages.
This API can recall all one-to-one messages, including those sent by clients or by the v4/openim/sendmsg and v4/openim/batchsendmsg RESTful APIs.
To recall one-to-one messages sent by clients, you can enable the C2C.CallbackBeforeSendMsg or C2C.CallbackAfterSendMsg callback API. Record the MsgKey of each one-to-one message via the callback API, and enter it in the MsgKey field of this API to recall the message. You can also use the v4/openim/admin_getroammsg API to query the MsgKey of the one-to-one message to be recalled, and enter it in the MsgKey field of this API to recall the message.
The MsgKey field in the responses to the v4/openim/sendmsg and v4/openim/batchsendmsg API calls is required to recall the one-to-one messages sent via these two APIs.
Once a one-to-one message is recalled by this API, it is recalled from offline storage, roaming storage, and the local cache of the sender’s and recipient’s clients.
This API can recall one-to-one messages sent at any time. There’s no time limit.
Note
Please note that one-to-one messages recalled by this API cannot be restored.

API Calling Description

Sample request URL

https://xxxxxx/v4/openim/admin_msgwithdraw?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/openim/admin_msgwithdraw
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

{
"From_Account": "vinson",
"To_Account": "dramon",
"MsgKey": "31906_833502_1572869830"
}

Request fields

Field
Type
Required
Description
From_Account
String
Yes
The UserID of the message sender.
To_Account
String
Yes
UserID of the recipient
MsgKey
String
Yes
The unique identifier of the message to be recalled, which can be found in the responses to the v4/openim/sendmsg and v4/openim/batchsendmsg API calls.

Sample response

Response to a successful request
{
"ActionStatus": "OK",
"ErrorInfo": "",
"ErrorCode": 0
}
Response to a failed request
{
"ActionStatus": "FAIL",
"ErrorInfo": "Fail to Parse json data of body, Please check it",
"ErrorCode": 90001
}

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

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
20022
The message to recall does not exist. Please check.
20023
The message has been recalled.
90001
Failed to parse the JSON request. Make sure the format is valid.
90003
The To_Account field is missing in the JSON request packet or the account it specifies does not exist.
90008
The From_Account field is missing in the JSON request packet or the account it specifies does not exist.
90009
The request requires app admin permissions.
90054
Invalid MsgKey.
91000
Internal service error. Try again.

API Debugging Tool

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

Reference

Querying One-to-One Messages (v4/openim/admin_getroammsg)