From 023333eaa5f42ece2179ee1f7c7c1dfff8e66245 Mon Sep 17 00:00:00 2001 From: Simon Que Date: Tue, 11 Jun 2024 14:26:36 -0500 Subject: [PATCH] Raise NylasApiError with provider error message if it exists --- nylas/models/errors.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/nylas/models/errors.py b/nylas/models/errors.py index d59b61ba..bf3e5f01 100644 --- a/nylas/models/errors.py +++ b/nylas/models/errors.py @@ -54,6 +54,11 @@ class NylasApiErrorResponseData: message: str provider_error: Optional[dict] = None + def __str__(self) -> str: + if self.provider_error is None: + return self.message + return f'{self.message}: {self.provider_error}' + @dataclass_json @dataclass @@ -108,7 +113,7 @@ def __init__( api_error: The error details from the API. status_code: The HTTP status code of the error response. """ - super().__init__(api_error.error.message, api_error.request_id, status_code) + super().__init__(str(api_error.error), api_error.request_id, status_code) self.type: str = api_error.error.type self.provider_error: Optional[dict] = api_error.error.provider_error