本文介紹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. | 服務暫時不可用,請稍後重試。 |