ciyidogan commited on
Commit
0c43756
·
verified ·
1 Parent(s): 6c15f18

Update admin_routes.py

Browse files
Files changed (1) hide show
  1. admin_routes.py +11 -2
admin_routes.py CHANGED
@@ -1008,11 +1008,20 @@ async def delete_api(api_name: str, username: str = Depends(verify_token)):
1008
 
1009
  # Check if API is in use
1010
  for project in config.get("projects", []):
 
 
 
 
1011
  for version in project.get("versions", []):
 
 
 
 
 
1012
  for intent in version.get("intents", []):
1013
  if intent.get("action") == api_name:
1014
  raise HTTPException(status_code=400,
1015
- detail=f"API is used in project '{project['name']}'")
1016
 
1017
  # Soft delete
1018
  api["deleted"] = True
@@ -1027,7 +1036,7 @@ async def delete_api(api_name: str, username: str = Depends(verify_token)):
1027
 
1028
  log(f"✅ API '{api_name}' deleted by {username}")
1029
  return {"success": True}
1030
-
1031
  # ===================== Spark Integration Endpoints =====================
1032
  @router.post("/spark/startup")
1033
  async def spark_startup(request: dict = Body(...), username: str = Depends(verify_token)):
 
1008
 
1009
  # Check if API is in use
1010
  for project in config.get("projects", []):
1011
+ # Skip deleted projects
1012
+ if project.get("deleted", False):
1013
+ continue
1014
+
1015
  for version in project.get("versions", []):
1016
+ # Skip deleted versions
1017
+ if version.get("deleted", False):
1018
+ continue
1019
+
1020
+ # Check in intents
1021
  for intent in version.get("intents", []):
1022
  if intent.get("action") == api_name:
1023
  raise HTTPException(status_code=400,
1024
+ detail=f"API is used in intent '{intent.get('name', 'unknown')}' in project '{project['name']}' version {version.get('no', version['id'])}")
1025
 
1026
  # Soft delete
1027
  api["deleted"] = True
 
1036
 
1037
  log(f"✅ API '{api_name}' deleted by {username}")
1038
  return {"success": True}
1039
+
1040
  # ===================== Spark Integration Endpoints =====================
1041
  @router.post("/spark/startup")
1042
  async def spark_startup(request: dict = Body(...), username: str = Depends(verify_token)):