From 9dcf78d62b29b054487e4f89811d93376665353f Mon Sep 17 00:00:00 2001 From: Rodrigo Barbosa Date: Thu, 9 Apr 2026 15:59:17 -0300 Subject: [PATCH] improving error message --- roboflow/adapters/rfapi.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/roboflow/adapters/rfapi.py b/roboflow/adapters/rfapi.py index 63abb75a..2b7da820 100644 --- a/roboflow/adapters/rfapi.py +++ b/roboflow/adapters/rfapi.py @@ -404,7 +404,9 @@ def save_annotation( if response.status_code not in (200, 409): raise _save_annotation_error(response) if response.status_code == 409: - if "already annotated" in responsejson.get("error", {}).get("message"): + err_obj = responsejson.get("error", {}) + err_message = err_obj.get("message", "") if isinstance(err_obj, dict) else str(err_obj) + if "already annotated" in err_message: return {"warn": "already annotated"} else: raise _save_annotation_error(response) @@ -472,9 +474,9 @@ def _save_annotation_error(response): if responsejson.get("error"): err_msg = responsejson["error"] - if err_msg.get("message"): - err_msg = err_msg["message"] - return AnnotationSaveError(err_msg, status_code=response.status_code) + if isinstance(err_msg, dict): + err_msg = err_msg.get("message", str(err_msg)) + return AnnotationSaveError(str(err_msg), status_code=response.status_code) return AnnotationSaveError(str(responsejson), status_code=response.status_code)