本文主要介绍调用管控OpenAPI时常见的错误代码。
当您调用API网关开放的管控OpenAPI时,如CreateAPI、ModifyAPI、DeleteAPI等,您可能遇到以下错误码。
服务端错误码
HttpCode为5xx,表示服务不可用。此时建议重试。
错误代码 | 描述 | HTTP 状态码 | 语义 | 解决方案 |
ServiceUnavailable | The request has failed due to a temporary failure of the server. | 503 | 服务不可用 | 建议重试。 |
InternalError | The request processing has failed due to some unknown error, exception or failure. | 500 | 内部错误 | 建议重试。 |
客户端错误码
HttpCode为4xx,表示业务错误。一般为参数错误、权限限制、业务逻辑错误等问题,此时需要仔细查看错误码,并针对性地解决问题。
错误代码 | 描述 | HTTP 状态码 | 语义 | 解决 |
Repeated%s | The specified %s is repeated. | 400 | 某参数重复(%s 是占位符,实际调用会给出明确的参数名或提示。) | 建议按照提示修改重复的参数后重试。 |
RepeatedCommit | Resubmit request. | 400 | 请求重复 | 请不要频繁提交请求。 |
Missing%s | The %s is mandatory for this action. | 400 | 缺少参数 %s | 根据具体返回补充缺少的参数,重试请求。 |
MissingAppIdOrAppOwner | AppId or AppOwner must have a valid value. | 400 | 缺少参数 AppId 或者 AppOwner | 参数 AppId 和 AppOwner 不能同时为空。 |
Invalid%s | The specified parameter %s value is not valid. | 400 | 参数无效 | 根据返回提示的具体参数,查看相关参数约束,修改后重试。 |
NotFound%s | Cannot find resource according to your specified %s. | 400 | 找不到资源 | 根据指定的参数%s找不到资源,建议检查%s是否正确。 |
InvalidFormat%s | The specified parameter %s value is not well formatted. | 400 | 参数格式错误 | 建议根据实际返回提示,查看%s的格式要求,修改后重试。 |
Duplicate%s | The specified parameter %s value is duplicate. | 400 | 参数重复 | 某请求参数不允许重复,建议检查修正后重试。 |
DependencyViolation%s | The specified %s has %s definitions. | 400 | 参数依赖错误 | 指定参数被依赖,不能随意删除,请先解除依赖。 |
Forbidden%s | Not allowed to operate on the specified %s. | 403 | 无权操作/操作禁止 | 您无权执行该操作。 |
NoPermission | User is not authorized to operate on the specified resource. | 403 | 无权操作 | RAM 鉴权不通过。 |
ExceedLimit%s | The specified %s count exceeds the limit. | 400 | 超出个数限制 | 一般指用户账户下创建的 API、API 分组或者APP超出个数限制。 |
UserNotFound | The specified user can not be found. | 404 | 指定用户找不到 | 根据输入的用户信息找不到该用户。 |
DomainCertificateNotFound | Cannot find the domain certificate. | 400 | 指定域名证书不存在 | 建议检查传入的证书 ID 及名称。 |
DomainNotResolved | The specified domain has not been resolved. | 400 | 指定域名未解析 | 需要将指定域名 CNAME 解析到分组的二级域名上,才能完成绑定。域名解析是在用户域名购买的网站上操作。 |
InvalidICPLicense | The specified domain have not got ICP license, or the ICP license does not belong to Aliyun. | 400 | 域名备案不合格 | 要绑定的域名需要在阿里云做首次备案,已经在其他系统做备案的,需要在阿里云备案接入。备案接入需要获取备案号,在阿里云有 ECS 且具有公网 IP 的,每个 ECS 有5个备案号。 |
Invalid%s.LengthLimit | The parameter %s length exceeds the limit. | 400 | 长度超限 | 参数%s超出长度限制,建议修正后重试。 |
InvalidApiDefault | The ApiDefault value exceeds limit. | 400 | 流控插件 API 默认值超过限制值 | 该值数值不能超过1亿,与单位无关。 |
InvalidAppDefault | The AppDefault value must smaller than the UserDefault and ApiDefault. | 400 | AppDefault 的值不符合规则 | 该值需要小于 API 流控值和用户流控值。 |
InvalidUserDefault | The UserDefault value must bigger than the AppDefault and smaller than the ApiDefault. | 400 | UserDefault 的值不符合规则 | 该值需要小于 API 流控值并大于 APP 流控值。 |
InvalidParamMapping | Parameters must be fully mapped. | 400 | 参数映射无效 | 创建 API 时,前后端参数映射需要是全映射。即每个入参都需要配置后端参数名称。 |
InvalidOwnerAccount | OwnerAccount is invalid. | 400 | APP所有者账号无效 | 一般为操作授权时,输入目标用户的阿里云邮箱账号。若该账号无效,建议检查修正后重试。 |
ServiceForbidden | Your Gateway service is forbidden by risk control. | 400 | API 网关服务被风控(应该使用户被风控吧) | 请注意不要频繁请求,建议稍后重试。 |
ServiceUnOpen | Your Gateway service has not been opened. | 400 | 服务未开通 | 建议到阿里云官网开通一下 API 网关服务。 |
ServiceInDept | Your API Gateway service is in dept. | 400 | (您的 API 网关)服务欠费 | 充值或者结算后重新开始使用。 |
EqualSignature | The new signature is the same as the old. | 400 | 新密钥与旧的相等 | 修改后端签名密钥时,新设置的 Key 和 Secret 不能跟原来的一样。 |
CertificateNotMatch | The domain does not match the one in the certificate. | 400 | 证书不匹配 | 指定域名与证书内域名不匹配。 |
CertificateKeyNotMatch | The certificate private key does not match the public key. | 400 | 证书密钥不匹配 | 证书的公钥和私钥不匹配。 |
PrivateKeyEncrypted | The certificate private key is encrypted, please upload the unencrypted version. | 400 | 密钥不能加密 | 证书私钥加密了,要求上传不加密的版本。 |
CertificateSecretKeyError | The certificate private key is invalid. | 400 | 证书私钥错误 | 建议检查后重新传入。 |
InvalidApiServiceAddress | The specified service address is not valid. | 400 | API 后端服务地址无效 | 配置的 API 后端服务地址无效。 |
客户端公用错误码
HttpCode为4xx,调用全阿里云产品的OpenAPI均可能遇到,表示业务错误。一般为请求格式错误、请求方式错误、必填参数丢失、参数格式错误、签名错误、流控限制等问题。此时需查看具体错误码,针对性解决问题。
报错场景 | 错误码 | 错误提示 | 状态码 | 建议 |
API 找不到。 | InvalidApi.NotFound | Specified api is not found, please check your url and method. | 404 | 请检查指定的 action 接口名称是否正确,注意大小写区分。 |
缺少必填参数。 | Missing{ParameterName} | {ParameterName} is mandatory for this action. | 400 | 指定参数为必填参数,请传入。 |
AccessKeyId 找不到 | InvalidAccessKeyId.NotFound | Specified access key is not found. | 404 | 请检查调用时是否传入正确的 AccessKeyId。 |
AccessKeyId 被禁用。 | InvalidAccessKeyId.Inactive | Specified access key is disabled. | 400 | 检查 AK 是否可用。 |
时间戳格式不对(Date 和 Timestamp)。 | InvalidTimeStamp.Format | Specified time stamp or date value is not well formatted. | 400 | 检查时间戳。 |
用户时间和服务器时间超过15分钟。 | InvalidTimeStamp.Expired | Specified time stamp or date value is expired. | 400 | 检查时间戳。 |
SignatureNonce 重复 | SignatureNonceUsed | Specified signature nonce was used already. | 400 | |
返回值格式不正确。 | InvalidParameter.Format | Specified parameter format is not valid. | 400 | 仅支持 XML/JSON。 |
参数值校验不通过。 | Invalid{ParameterName} | Specified parameter {ParameterName} is not valid. | 400 | 请检查指定参数的值。 |
Http 请求方法不支持。 | UnsupportedHTTPMethod | Specified signature is not matched with our calculation. | 400 | 请检查请求Method。 |
签名方法不支持。 | InvalidSignatureMethod | Specified signature method is not valid. | 400 | 默认可以不填写该值。 |
签名不通过。 | SignatureDoesNotMatch | Specified signature is not matched with our calculation. | 400 | 签名不通过。 |
用户调用频率超限。 | Throttling.User | Request was denied due to user flow control. | 400 | 请稍后访问,降低访问频率。 |
API 访问频率超限。 | Throttling.API | Request was denied due to api flow control. | 400 | 请稍后访问,降低访问频率。 |
缺少AccessKeyId。 | MissingSecurityToken | SecurityToken is mandatory for this action. | 400 | 请检查是否传入有效AccessKeyId。 |
- 本页导读 (1)
- 服务端错误码
- 客户端错误码
- 客户端公用错误码