diff --git a/src/google/adk/cli/adk_web_server.py b/src/google/adk/cli/adk_web_server.py index 2b9993a0..5ae83b8e 100644 --- a/src/google/adk/cli/adk_web_server.py +++ b/src/google/adk/cli/adk_web_server.py @@ -741,7 +741,7 @@ class AdkWebServer: is not None ): raise HTTPException( - status_code=400, detail=f"Session already exists: {session_id}" + status_code=409, detail=f"Session already exists: {session_id}" ) session = await self.session_service.create_session( app_name=app_name, user_id=user_id, state=state, session_id=session_id @@ -763,6 +763,13 @@ class AdkWebServer: app_name=app_name, user_id=user_id ) + if req.session_id and await self.session_service.get_session( + app_name=app_name, user_id=user_id, session_id=req.session_id + ): + raise HTTPException( + status_code=409, detail=f"Session already exists: {req.session_id}" + ) + session = await self.session_service.create_session( app_name=app_name, user_id=user_id,