Spaces:
Building
Building
Update admin_routes.py
Browse files- 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)):
|