Recalling Push
If the content pushed to all staff/Tag is incorrect, it may negatively impact the product when the end user views or clicks it. Timely handling is necessary. You can choose to recall the push.
Feature Overview
Terminate: Issuing push tasks takes some time, and the accounts not yet issued will have their deliveries terminated.
Recall: For accounts that have been issued, it supports recalling unread/roaming messages.
Overwrite: If the issued accounts have received offline push, it supports overwriting the push.
This interface supports the termination/recall/overwrite of push tasks for All-user/Tags. In the following text, termination/recall/overwrite is referred to as recall by default.
The recall validity period is 24 hours, starting from the task initiation time. Push tasks older than 24 hours cannot be recalled.
API Calling Description
Sample request URL
https://xxxxxx/v4/timpush/revoke?usersig=xxx&identifier=admin&sdkappid=88888888&random=99999999&contenttype=json
Request parameters
Parameter | Description |
https | Request protocol: HTTPS Request method: POST |
xxxxxx | The dedicated domain corresponding to the country/region of your SDKAppID. 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 |
v4/timpush/revoke | Request API |
usersig | |
identifier | |
sdkappid | SdkAppid assigned by the Chat console when creating an app |
random | 32-bit unsigned integer random number |
contenttype | Fixed value: json |
Invocation Frequency
This interface invocation is limited to 1 time per second.
Sample request packets
{"TaskId": "660cc447_537ed82a_200000cd7ee17f5_84035729_bc614e", // Push task taskId sent within 24 hours"OfflinePushInfo": {"Title": "Recall Title","Desc": "The other party has recalled a message","Ext": "{\"entity\":{\"key1\":\"value1\",\"key2\":\"value2\"}}" // Passthrough field, using JSON format string for push}}
Note:
1. Supported vendors for Offline Push Overwrite: APNS/Google FCM/Huawei/Honor. Offline push overwrite is not supported for other vendors. (Google FCM notification mode supports overwrite, data mode does not support overwrite yet)
2. When recalling, if the recipient is in the foreground and the default offline push (notification bar message) is read, that offline push will not be overwritten.
Request Packet Field Description
Field | Type | Attribute | Description |
TaskId | String | Required | All Staff/ Tag Push Task ID. |
OfflinePushInfo | Object | Required |
Sample response packets
{"ActionStatus": "OK","ErrorInfo": "","ErrorCode": 0}
Response packet field description
Field | Type | Description |
ActionStatus | String | Processed Request Result: OK: Indicates successful processing FAIL: Indicates failure |
ErrorCode | Integer | Error Identifier: 0 indicates success Non-zero indicates failure |
ErrorInfo | String | Error message |
Error codes
Unless a network error occurs (e.g., a 502 error), the HTTP return code for this interface is always 200. The actual error code and error information are represented through ErrorCode and ErrorInfo in the response payload. For common error codes (60000 to 79999), refer to the Error Codes document.
Error code | Description |
90001 | Failed to parse the JSON format. Please ensure the request packet conforms to the JSON specification. |
90009 | The request requires App Administrator permissions. |
90049 | Invalid TaskId for recall, no push records. Use the All-user/Tags push or Single push interface for the push, and only the returned TaskId can be used for recall. |
90050 | Duplicate recall, a push task that has already been recalled cannot be recalled again. |
90051 | Recall too frequent, recall frequency limit is 1 time per second. |
90052 | Exceeds recall validity period, recall must be done within 24 hours. Push tasks older than 24 hours cannot be recalled. |
90053 | Recall invalid. The push task specified no roaming/unread (OnlineOnlyFlag=0), but OfflinePushInfo was not included during recall. |
91000 | Internal service error, please try again. |
API Debugging Tool
Reference