下面分别对公共的以及各推送通道对应的消息推送状态码进行说明。
公共消息推送状态码
状态码 | 描述 | 解释 |
-1 | WaitingForVerify | 等待校验。 |
0 | DeviceNotOnlineOrNoResponse | 等待设备上线(推送目标设备与移动推送网关长连接断开)或等待发送确认。 |
1 | NoBindInfo | 无绑定关系。基于用户标识维度推送消息时,确认推送目标(userId)已绑定设备标识。 |
2 | Acked | 使用自建通道推送消息时,表示消息已成功推送至客户端;使用厂商通道推送消息时,表示已成功调用厂商推送网关。 |
99999999 | NONE | 未知状态 |
苹果推送通道
状态码 | 描述 | 解释 |
2001 | PayloadEmpty | 消息体为空。 |
2002 | PayloadTooLarge | 消息体太大。 |
2003 | BadTopic | 证书的 bundleid 错误。 |
2004 | TopicDisallowed | 证书的 bundleid 非法。 |
2005 | BadMessageId | messageId 错误。 |
2006 | BadExpirationDate | 非法的有效期时间。 |
2007 | BadPriority | 非法的权重。 |
2008 | MissingDeviceToken | 缺少设备 token。 |
2009 | BadDeviceToken | 设备 token 无效、格式错误或不存在。当基于用户维度推送消息,且出现本状态时,您需要检查在绑定时所使用的设备 token 是否正确。建议在绑定完成后,在消息推送控制台上创建极简推送类型的消息进行测试。 |
在开发环境(控制台配置为开发环境证书)下,需要使用个人开发证书打包 App 进行测试。否则会出现 BadDeviceToken。 | ||
2010 | DeviceTokenNotForTopic | 设备 token 和证书不匹配。 |
2011 | Unregistered | token 失效。 |
2013 | BadCertificateEnvironment | 非法的证书环境。 |
2014 | BadCertificate | 非法的证书。 |
2023 | MissingTopic | 未指定 Topic。 |
2024 | ConnClosed | APNS 连接断开。出现该状态的原因如下:
关于在控制台上配置 iOS 推送证书、证书环境以及 BundleId 的详细操作,参见 配置 iOS 推送证书。 |
2025 | ConnUnavailable | APNS 连接未完成。 |
华为推送通道
状态码 | 描述 |
100 | 无效未知参数。 |
101 | 无效的 API_KEY。 |
102 | 无效的 SESSION_KEY。 |
106 | App 或者 Session 没有调用当前服务的权限。 |
107 | client 和 secret 需要重新获取(如算法升级等)。 |
109 | nsp_ts 偏差过大。 |
110 | 接口内部异常。 |
111 | 服务繁忙。 |
80000003 | 终端不在线。 |
80000004 | 应用已卸载。 |
80000005 | 响应超时。 |
80000006 | 无路由,终端未连接过 Push。 |
80000007 | 终端在其他大区,不在中国内地使用 Push。 |
80000008 | 路由不正确,可能终端切换 Push 服务器。 |
80100000 | 参数检查,部分参数错误。 |
80100002 | 不合法的 token 列表。 |
80100003 | 不合法的 payload。 |
80100004 | 不合法的超时时间。 |
80300002 | 无权限下发消息给参数中的 token 列表。 |
80300007 | 请求中所有的 token 都是非法 token。 |
81000001 | 内部错误。 |
80300008 | 认证类错误(请求消息体过大)。 |
荣耀推送通道
状态码 | 描述 | 解释 |
200 | 成功 | 不涉及 |
400 | 参数错误 | 请检查响应内容错误码并根据错误码进一步排查问题 |
403 | 鉴权不通过 | 请检查 access Token 是否正确 |
404 | 找不到服务 | 请检查请求 URI 是否正确 |
500 | 服务内部错误 | 请自行检查请求方式及请求报文格式是否与文档一致,检查后仍未解决,请反馈详细报文到 honorpush@honor.com |
502 | 请求连接异常,常见于网络状况不稳定 | 建议稍后重试 |
503 | request too many,please try again later | 超出最大 QPS 限制(单应用统一 3000),请稍后再试 |
80100000 | 部分 Token 发送成功,返回的 failTokens 为发送失败的 Token | 请检查返回值中发送失败的 Token |
80100003 | 消息结构体错误 | 按照响应消息中的提示,请检查消息结构体的参数 |
80300006 | push token is repeat | 请检查是否有重复的 pushToken |
80300007 | 所有 Token 都是无效的 | 同一个设备,不同应用的 Token 原则上是不一样,但实际操作时可能误传递同样的值。客户端应用配置的应用包名、应用 ID 与申请的不一致。检查获取 access_token 的 URL 是否正确。检查消息发送的 URL 是否正确 |
80300008 | 消息体大小超过系统设置的默认值(4096 Bytes) | 请求消息体大小超过默认值,请减小消息体后重新发送消息 |
80300010 | 每次推送 push token 数量不能超过1000 | 请检查 pushtoken 数量是否超过 1000 |
80200020 | receipt id is not match | receiptId 不匹配 |
10001 | timestamp is null | 请检查 timestamp |
10207 | timestamp 不合法 | 请获取当前有效的 timestamp 及检查 timestamp 是否合法 |
10300 | push token is null | 请填写 pushToken |
10205 | appId is not found | appId 不存在 |
更多荣耀推送相关的错误码,请参见 荣耀推送错误码参考。
小米推送通道
状态码 | 描述 |
10001 | 系统错误。 |
10002 | 服务暂停。 |
10003 | 远程服务错误。 |
10004 | IP 限制不能请求该资源。 |
10005 | 该资源需要 appkey 拥有授权。 |
10008 | 参数错误。 |
10009 | 系统繁忙。 |
10012 | 非法请求。 |
10013 | 不合法的用户。 |
10014 | 应用的接口访问权限受限。 |
10017 | 参数值非法。 |
10018 | 请求长度超过限制。 |
10022 | IP 请求频次超过上限。 |
10023 | 用户请求频次超过上限。 |
10024 | 用户请求特殊接口频次超过上限。 |
10026 | 应用被加入黑名单,不能调用 API。 |
10027 | 应用的 API 调用太频繁。 |
10029 | 不合法的设备。 |
21301 | 认证失败。 |
22000 | 非法应用。 |
22001 | 应用不存在。 |
22002 | 应用已经撤销。 |
22003 | 更新应用程序失败。 |
22004 | 缺少应用程序信息。 |
22005 | 应用程序名字不合法。 |
22006 | 应用程序 ID 不合法。 |
22007 | 应用程序 Key 不合法。 |
22008 | 应用程序 Secret 不合法。 |
22020 | 应用程序描述信息不合法。 |
22021 | 用户没有授权给应用程序。 |
22022 | 应用程序 package name 不合法。 |
22100 | 应用通知数据格式不合法。 |
22101 | 太多应用通知消息。 |
22102 | 发送应用通知消息失败。 |
22103 | 应用通知 ID 不合法。 |
20301 | 目标不合法。 |
OPPO 推送通道
状态码 | 描述 | 解释 |
-1 | Service Currently Unavailable | 服务不可用,此时请开发者稍后再试。 |
-2 | Service in Flow Control | 服务器流量控制。 |
11 | Invalid Auth Token | 不合法的 AuthToken。 |
13 | App Call Limited | 应用调用次数超限,包含调用频率超限。 |
14 | Invalid App Key | 无效的 AppKey 参数。 |
15 | Missing App Key | 缺少 AppKey 参数。 |
16 | Invalid Signature | 签名校验不通过,无效签名。 |
17 | Missing Signature | 签名校验不通过,缺少签名。 |
28 | App Disabled | 应用不可用。 |
29 | Missing Auth Token | 缺少 Auth Token 参数。 |
30 | Api Permission Denied | 该应用没有 API 推送的权限。 |
10000 | Invalid RegistrationId | registration_id 格式不正确。 |
vivo 推送通道
状态码 | 描述 |
10000 | 权限认证失败。 |
10040 | 资源已达上限,稍后重试。 |
10050 | alias 和 regId 不能都为空。 |
10055 | title 不能为空。 |
10056 | title 长度不能超过 40 个字符。 |
10058 | content 长度不能超过 100 个字符。 |
10066 | 自定义 key 和 Value 键值对个数不能超过 10 个。 |
10067 | 自定义 key 和 value 键值对不合法。 |
10070 | 发送量总量超出限制。 |
10071 | 超出发送时间允许范围。 |
10072 | 推送速度过快,请稍后再试。 |
10101 | 消息内容审核不通过。 |
10102 | vivo 服务器端未知异常。 |
10103 | 推送内容含敏感信息。 |
10110 | 请配置商业化消息发送频率。 |
10302 | regId 不合法,regId 为无效的 regId,regId 可能已经失效。 |
10303 | requestId 已存在。 |
10104 | 请发送正式信息。请检查 content,不要发送测试内容,正式信息发送的 content 里面不能是纯数字、纯英文、纯符号,符号加数字,不能包含“测试”字样、大括号、中括号。 |
更多 vivo 推送相关的错误码,请参见 vivo 推送错误码参考。
FCM 推送通道
状态码 | 描述 | 解释 |
90000002 | nvalidRegistration | 目标非法。 |
90000003 | NotRegistered | 目标未注册。 |
90000004 | InvalidPackageName | 包名非法。 |
90000007 | MessageTooBig | 消息体过大。 |
90000009 | InvalidTtl | 离线存活日期非法。 |
90000011 | InternalServerError | FCM 服务异常。 |
90000401 | Authentication | 权限校验失败。 |
鸿蒙推送通道
状态码 | 描述 | 解释 |
80000000 | 发送成功 | 不涉及 |
80100000 | 部分 Token 发送成功 | 发送失败的 Token 会在响应消息的 msg 字段中展示,请排查失败的 Token 是否存在以下情况:
|
80100001 | 请求参数部分错误 | 请按照响应消息中的提示,检查请求参数内容 |
80100003 | 消息结构体错误 | 请按照响应消息中的提示,检查消息结构体内容 |
80100004 | 消息设置的过期时间小于当前时间导致 | 请检查消息字段 ttl |
80100016 | 消息内容校验未通过 | 按照响应消息中的提示,检查对应字段是否含敏感词 |
80100022 | 消息携带图片未验签 | 请检查消息图片是否正常经过风控验证 |
80200001 | 认证错误 | 请求头中 Authorization 参数鉴权失败,请检查:
|
80200005 | JWT Token 过期 | 请重新生成 JWT Token 后再推送消息 |
80300002 | 当前应用无权限下发推送消息 |
|
80300007 | 所有 Token 都是无效的 |
|
80300008 | 消息体大小(不含 Token)超过系统设置的默认值(4096 Bytes) | 请求消息体大小超过默认值,请减小消息体后重新发送消息 |
80300010 | 消息体中的 Token 数量超过系统设置的默认值 | 授权订阅消息、卡片刷新消息单次发送消息仅能携带 1 个 Token 其余场景单次发送消息最多携带 1000 个 Token 请减少 Token 数量后分批发送消息 |
80300029 | 测试消息请求流量限制 | 测试消息发送过于频繁,请稍后再发送 |
80300030 | 测试消息单次携带 Token 数量超过系统设置的默认值 | 授权订阅消息、卡片刷新消息单次发送测试消息仅能携带 1 个 Token 其余场景单次发送测试消息最多携带 10 个 Token 请减少 Token 数量后再发送消息 |
80300036 | JWT 有效期超过 1 天 | 请生成有效期小于 1 天的 JWT Token 后再推送消息 |
80300037 | 由于存在违规处罚导致无法发送推送消息 | 请先在 AppGallery Connect 网站上处理违规后再尝试发送消息。 |
81000001 | 系统内部错误 | 请通过 在线提单 提交问题。 |
更多鸿蒙推送相关的错误码,请参见 鸿蒙推送错误码参考。