diff --git a/googleapiclient/http.py b/googleapiclient/http.py index 00467747fd3..b8e1b8eaaee 100644 --- a/googleapiclient/http.py +++ b/googleapiclient/http.py @@ -116,7 +116,9 @@ def _should_retry_response(resp_status, content): try: data = json.loads(content.decode("utf-8")) if isinstance(data, dict): - reason = data["error"]["errors"][0]["reason"] + reason = data["error"].get("status") + if reason is None: + reason = data["error"]["errors"][0]["reason"] else: reason = data[0]["error"]["errors"]["reason"] except (UnicodeDecodeError, ValueError, KeyError):