智能客服
你问我答,随时在线为你解决问题

























您调用本API完成消息撤回的功能。撤回功能当前仅支持通知消息与语音播报消息。为免歧义,以下说明中“消息”均为通知消息与语音播报消息。
消息体最大不能超过4096Bytes(不包括Push Token),若超过请求会返回错误码80300008,单次最多携带的Push Token数不能超过1000(系统当前配置值)。
承载协议: HTTPS POST
接口方向: 开发者服务器 -> 华为Push服务器
接口URL: https://push-api.cloud.huawei.com/v1/[clientId]/messages:revoke
数据格式: 请求消息:Content-Type: application/json
响应消息:Content-Type: application/json
[clientId] :请替换为您应用的Client ID(参考指导获取)
| 参数 | 取值描述 | 样例 |
|---|---|---|
| Authorization | 鉴权方式: JWT方式 请参见基于服务账号生成鉴权令牌。 说明: 建议JWT令牌过期时间设置为3600秒,有效期内可以复用。 Bearer后面拼接空格,再拼接获取的鉴权信息。 | Bearer eyJraWQiOiIx---xxx.eyJhdWQiOiJodHR---xxx.QRodgXa2xeXSt4Gp---xxx |
| push-type | 待撤回的消息类型,取值如下: 0:通知消息。 2:语音播报消息。 | 0 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| notifyId | 是 | Integer | 消息下发时携带的notifyId,详情请参见notifyId。 |
| token | 是 | Array [String] | 撤回消息时目标用户的Push Token。 样例:"token": ["************"]。 说明: 单次最多携带1000个Token。 |
- // 按照notifyId和token撤回
- {
- "notifyId": 3114932,
- "token": [
- "pushToken1",
- "pushToken2",
- "pushToken3"
- ]
- }
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| code | 是 | String | 响应码。 |
| msg | 是 | String | 响应码描述。 |
| requestId | 是 | String | 请求标识。 |
响应成功示例:
- {
- "code": "80000000",
- "msg": "Success",
- "requestId": "157*******006"
- }
响应失败示例:
- {
- "code": "80100003",
- "msg": "Illegal payload, The header does not contain valid push-type",
- "requestId": "1690*******1701"
- }
错误信息
Success.
错误描述
发送成功。
可能原因
发送成功。
处理步骤
不涉及。
错误信息
Check Parameter Error.
错误描述
请求参数部分错误。
可能原因
请求参数部分错误。
处理步骤
请根据响应消息中的提示,检查并修改请求参数内容。
错误信息
Illegal payload, {errorTips}.
错误描述
消息结构体错误。
可能原因
消息结构体错误。
处理步骤
请根据响应消息中的提示,检查并修改请求体结构。
错误信息
Check Parameter Partial Success.
错误描述
消息结构体部分错误。
可能原因
消息结构体部分错误。
处理步骤
按照响应消息中的提示,请检查并修改消息结构体的参数。
错误信息
Authentication Error.
错误描述
认证错误。
可能原因
发送消息时未添加Authorization参数或Authorization的值为空。
用于申请JWT Token的Project Id和推送消息的Client Id不属于同一个项目。
Authorization参数中的JWT Token与实际应用不匹配。
处理步骤
请根据响应消息中的提示,排查请求头中Authorization参数鉴权失败是否存在以下情况:
请检查发送消息时是否添加Authorization参数或Authorization的值为空。
请参考鉴权令牌生成步骤中的步骤二,检查推送请求URL(https://push-api.cloud.huawei.com/v1/[clientId]/messages:revoke)中的clientId,确保与您当前应用所属的项目保持一致。
请检查Authorization参数中的JWT Token与实际应用是否匹配,详情参见基于服务账号生成鉴权令牌。
重新生成JWT Token后再发送请求。
错误信息
Access token expired.
错误描述
Access token过期。
可能原因
Access token过期。
处理步骤
请根据响应消息中的提示,重新生成JWT Token后再推送消息,请参见基于服务账号生成鉴权令牌。
错误信息
Jwt token expired.
错误描述
JWT Token过期。
可能原因
JWT Token过期。
处理步骤
请根据响应消息中的提示,重新生成JWT Token后再推送消息,请参见基于服务账号生成鉴权令牌。
错误信息
No permission to send message to these tmIDs.
错误描述
当前应用无权限下发推送消息。
可能原因
Push服务状态未开通。
ClientId不是应用级的ClientId。
处理步骤
请登录AppGallery Connect网站,查看Push服务状态是否已开通,请参见开通推送服务。
请参考指导检查是否是应用级ClientId。
错误信息
All the tokens are invalid.
错误描述
所有Token都是无效的。
可能原因
同一个设备,不同应用的Token原则上是不一样,但实际操作时可能误传递同样的值。
客户端应用配置的应用包名、应用ID与AppGallery Connect网站上申请的不一致。
终端设备从HarmonyOS 4及以下(简称HarmonyOS)升级到HarmonyOS 5及以上版本(简称HarmonyOS NEXT)后,Push Token需要重新获取。
处理步骤
请根据响应消息中的提示,排查失败的Token是否存在以下情况
请确保未传递其他应用的Push Token。
请确保客户端应用配置的应用包名、应用ID与AppGallery Connect网站上申请是一致的。
请确保终端设备升级至HarmonyOS NEXT版本后,重新生成对应的Push Token,并使用HarmonyOS NEXT版本的请求体参数进行消息请求。
请确保使用v1版本的请求URL(https://push-api.cloud.huawei.com/v1/[clientId]/messages:revoke)发送REST API请求。
建议您在应用启动时调用getToken接口,若设备的Push Token发生变化,及时上报到您的应用服务器更新Push Token。
错误信息
token count should within {0} and {1}.
错误描述
消息体中的Token数量为0或超过系统设置的默认值。
可能原因
消息体中的Token数量为0或超过系统设置的默认值(系统当前配置值为1000)。
处理步骤
请根据响应消息中的提示,检查Token数量,若Token数量超过单次限制,请分批次发送。
错误信息
Token app count should not exceed 1.
错误描述
Token列表中token属于多个APP。
可能原因
Token列表中token由多个APP生成,无法处理。
处理步骤
请根据响应消息中的提示,检查Token列表中的多个token是否由不同应用生成的,并使用同个APP生成的token。
错误信息
Token app mismatch with specify app.
错误描述
Token与ClientId对应的应用不一致。
可能原因
同一个设备,不同应用的Token原则上是不一样,但实际操作时可能误传递同样的值。
客户端应用配置的应用包名、应用ID与AppGallery Connect网站上申请的不一致。
处理步骤
请根据响应消息中的提示,排查是否存在以下情况:
请确保未传递其他应用的Push Token。
请确保客户端应用配置的应用包名、应用ID与AppGallery Connect网站上申请是一致的。
错误信息
No permission to revoke messages.
错误描述
没有消息撤回权限。
可能原因
没有消息撤回权限。
处理步骤
请同时使用token与notifyId进行消息撤回。
智能客服
你问我答,随时在线为你解决问题
合作咨询
我们的专家服务团队将竭诚为您提供专业的合作咨询服务
解决方案
精准高效的一站式服务支持,助力开发者商业成功