From 440b4b0cf363b7551334ff8dc5996da3eb6e9b08 Mon Sep 17 00:00:00 2001 From: Daulet Amirkhanov Date: Wed, 29 Oct 2025 18:01:51 +0000 Subject: [PATCH] fix: Improve error handling in add operation --- cognee/api/v1/add/routers/get_add_router.py | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/cognee/api/v1/add/routers/get_add_router.py b/cognee/api/v1/add/routers/get_add_router.py index b2e7068b0..6698165e3 100644 --- a/cognee/api/v1/add/routers/get_add_router.py +++ b/cognee/api/v1/add/routers/get_add_router.py @@ -1,3 +1,4 @@ +from sys import exc_info from uuid import UUID from fastapi import APIRouter @@ -54,7 +55,8 @@ def get_add_router() -> APIRouter: ## Error Codes - **400 Bad Request**: Neither datasetId nor datasetName provided - - **409 Conflict**: Error during add operation + - **500 Internal Server Error**: Error during add operation (check logs for details) + - **420 Pipeline Error**: Pipeline execution failed with structured error details - **403 Forbidden**: User doesn't have permission to add to dataset ## Notes @@ -89,6 +91,19 @@ def get_add_router() -> APIRouter: return JSONResponse(status_code=420, content=add_run.model_dump(mode="json")) return add_run.model_dump() except Exception as error: - return JSONResponse(status_code=409, content={"error": str(error)}) + logger.error( + f"Error during add operation for user {user.id}, " + f"dataset: {datasetName or datasetId}, " + f"error type: {type(error).__name__}", + exc_info=True, + ) + return JSONResponse( + status_code=500, + content={ + "error": str(error), + "error_type": type(error).__name__, + "message": "Failed to add data to dataset", + }, + ) return router