From ffbb6e1548ae7dcea6c1a3c82c3bb4a06c86c740 Mon Sep 17 00:00:00 2001 From: wooooodward Date: Tue, 6 May 2025 09:07:12 -0400 Subject: [PATCH 1/2] Update request.py Avoid KeyError when optional fields are missing in Onfleet error response --- onfleet/request.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/onfleet/request.py b/onfleet/request.py index 6093b09..8646a18 100644 --- a/onfleet/request.py +++ b/onfleet/request.py @@ -65,8 +65,8 @@ def __call__(self, id=None, body=None, workerId=None, hubId=None, googleApiKey=N raise HttpError(error.get('message', 'Error'), response.status_code) error_message = error['message']['message'] - error_code = error['message']['error'] - error_request = error['message']['request'] + error_code = error['message'].get('error') + error_request = error['message'].get('request') error_cause = error['message'].get('cause') exception_args = (error_message, error_code, error_request, error_cause) From ce37bc60cfc28d1661f1d91c3cb8f7fae08c376d Mon Sep 17 00:00:00 2001 From: wooooodward Date: Wed, 28 May 2025 14:31:38 -0400 Subject: [PATCH 2/2] Update onfleet/request.py Providing a default numeric value (e.g. .get('error', 0)) to ensure safe comparisons. Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- onfleet/request.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/onfleet/request.py b/onfleet/request.py index 8646a18..30bbf71 100644 --- a/onfleet/request.py +++ b/onfleet/request.py @@ -65,7 +65,7 @@ def __call__(self, id=None, body=None, workerId=None, hubId=None, googleApiKey=N raise HttpError(error.get('message', 'Error'), response.status_code) error_message = error['message']['message'] - error_code = error['message'].get('error') + error_code = error['message'].get('error', 0) error_request = error['message'].get('request') error_cause = error['message'].get('cause') exception_args = (error_message, error_code, error_request, error_cause)