diff --git a/crud.py b/crud.py index 527a529..04b9b3b 100644 --- a/crud.py +++ b/crud.py @@ -117,19 +117,20 @@ async def authenticate_user(email: str, password: str): return user # Agent CRUD operations -async def create_agent(agent_data: dict, user_id: str): +async def create_agent(agent_data: dict, user_id: str, skip_time_check: bool = False): # Check for duplicate agent names from the same user created recently (within 5 minutes) - from datetime import timedelta - five_minutes_ago = datetime.utcnow() - timedelta(minutes=5) - - existing_agent = await agents_collection.find_one({ - "agent_name": agent_data.get("agent_name"), - "created_by": user_id, - "created_at": {"$gte": five_minutes_ago} - }) - - if existing_agent: - raise ValueError(f"Agent with name '{agent_data.get('agent_name')}' was already created recently. Please wait before creating another agent with the same name.") + if not skip_time_check: + from datetime import timedelta + five_minutes_ago = datetime.utcnow() - timedelta(minutes=5) + + existing_agent = await agents_collection.find_one({ + "agent_name": agent_data.get("agent_name"), + "created_by": user_id, + "created_at": {"$gte": five_minutes_ago} + }) + + if existing_agent: + raise ValueError(f"Agent with name '{agent_data.get('agent_name')}' was already created recently. Please wait before creating another agent with the same name.") now = datetime.utcnow() agent_doc = { diff --git a/main.py b/main.py index 3741913..c295d34 100644 --- a/main.py +++ b/main.py @@ -1131,7 +1131,7 @@ async def import_agents_csv( agent_data["agent_name"] = f"{agent_data['agent_name']} - Imported" # Create agent - await crud.create_agent(agent_data, user_id) + await crud.create_agent(agent_data, user_id, skip_time_check=True) success_count += 1 except Exception as e: