本文介紹API請求發生錯誤時的公共錯誤碼。
當API請求發生錯誤時,服務端會返回錯誤信息,包括HTTP狀態碼和響應Body中的具體錯誤細節。其中響應Body中的錯誤細節使用Protocol Buffers編碼,使用如下消息定義:
message Error {
int32 StatusCode = 1;
string ErrorCode = 2;
string ErrorMessage = 3;
string RequestId = 4;
}
在服務端返回的錯誤信息中,適用于大部分API接口,但存在部分錯誤信息為某些API所獨有的情況。下表描述API錯誤響應信息中的通用錯誤碼,它們會在多個API錯誤響應信息中出現。每個API所獨有的錯誤碼會在對應API文檔中單獨描述。
HTTP狀態碼 | 錯誤碼 | 錯誤消息 | 描述 |
400 | InvalidApiName | The ApiName "<apiname>" is invalid. | API名稱錯誤。 |
400 | InvalidApiVersion | The ApiVersion "<apiversion value>" is invalid. | 請求頭缺少x-kms-apiversion。請您檢查請求頭,確認存在x-kms-apiversion。 |
400 | InvalidParam | The Param Date is invalid. | |
400 | InvalidParam | The Param x-kms-signaturemethod is invalid. | 沒有提供HTTP請求頭x-kms-signaturemethod。請您檢查請求頭,確認存在x-kms-signaturemethod。 |
400 | InvalidParam | The Param x-kms-signaturemethod is invalid. message:"<signaturemethod value>". | 不支持x-kms-signaturemethod頭部指定的簽名方法。請您檢查請求頭,確認支持的簽名方法。 |
400 | MissingParameter | Parameter x-kms-acccesskeyid does not exist in http header or body. | 沒有在Authorization頭部提供AccessKey ID。請檢查請求頭,確認Authorization頭部存在AccessKey ID。 如果您使用的阿里云SDK訪問,請確保使用的是KMS實例SDK。 |
400 | RequestTimeTooSkewed | Request time exceeds server time more than 15 minutes. | 請求的發送時間超過當前服務處理時間前后15分鐘的范圍。請檢查您的服務器時間。 |
400 | InvalidParameter | The specified parameter is not valid. | 參數非法。 |
400 | UnsupportedOperation | Rejected.UnsupportedOperation | 詳細介紹,請參見調用KMS接口時出現UnsupportedOperation報錯。 |
401 | SignatureNotMatch | Signature is not matched. | 請求的數字簽名不匹配。請您更換為正確的ClientKey后重試。 |
403 | Forbidden.NoPermission | This operation for "<parameter name>" is forbidden by permission system. | 操作無權限。請檢查應用接入點(AAP)的訪問策略,具體操作,請參見創建應用接入點。 |
404 | Forbidden.KeyNotFound | The key Key ID or Alias does not exist in the system. | 密鑰不存在。 |
404 | Forbidden.KeyNotFound | The key Key ID or Alias does not exist in the key store "<parameter name>". | 密鑰不存在。 |
404 | Forbidden.KeyNotFound | The specified key does not exist. | 密鑰不存在。 |
404 | Unauthorized | The AccessKey ID "<accessKeyId>" does not exist in our records. | AccessKey ID不存在。AccessKey ID指的是ClientKey_KAAP中的KeyId,請檢查您的ClientKey配置,具體請參見創建應用接入點。 |
409 | Rejected.PendingDeletion | The request was rejected because the key state is PendingDeletion. | 密鑰狀態為待刪除。 |
409 | Rejected.Disabled | The request was rejected because the key state is Disabled. | 密鑰狀態為禁用。 |
409 | Rejected.PendingImport | The request was rejected because the key state is PendingImport. | 密鑰狀態為待導入。 |
413 | 無 | 無 | 所有請求參數使用Protocol Buffers編碼后(即Request Body),內容長度超過了3 MB。
|
415 | InvalidContentType | Content-Type "<type>" is unsupported. | 不支持該類型的Content-Type。 |
500 | InternalFailure | Internal Failure. | 服務內部錯誤,請聯系技術支持人員。具體操作,請參見聯系我們。 |
503 | ServiceUnavailableTemporary | Service Unavailable Temporary. | 服務暫時不可用,請稍后重試。 |