From 7a249f8164477c8279d3670031346019925c5c2a Mon Sep 17 00:00:00 2001 From: Harel Lustiger Date: Thu, 25 Sep 2025 15:41:46 +1200 Subject: [PATCH] Refactor response parsing in _parse_response to handle single and multiple DocumentDetails objects --- ...libraries_space_id_documents_assets_asset_id.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/templafy/api/documents/get_libraries_space_id_documents_assets_asset_id.py b/src/templafy/api/documents/get_libraries_space_id_documents_assets_asset_id.py index 38e1009..1fea29b 100644 --- a/src/templafy/api/documents/get_libraries_space_id_documents_assets_asset_id.py +++ b/src/templafy/api/documents/get_libraries_space_id_documents_assets_asset_id.py @@ -26,13 +26,15 @@ def _parse_response( *, client: AuthenticatedClient | Client, response: httpx.Response ) -> Any | NotFoundProblemDetails | list["DocumentDetails"] | None: if response.status_code == 200: - response_200 = [] _response_200 = response.json() - for response_200_item_data in _response_200: - response_200_item = DocumentDetails.from_dict(response_200_item_data) - - response_200.append(response_200_item) - + if isinstance(_response_200, dict): + # Single object, wrap in list + response_200 = [DocumentDetails.from_dict(_response_200)] + elif isinstance(_response_200, list): + # List of objects + response_200 = [DocumentDetails.from_dict(item) for item in _response_200] + else: + response_200 = None return response_200 if response.status_code == 401: