diff --git a/src/murfey/server/api/__init__.py b/src/murfey/server/api/__init__.py index dced14a6a..7a4f652a2 100644 --- a/src/murfey/server/api/__init__.py +++ b/src/murfey/server/api/__init__.py @@ -1805,6 +1805,18 @@ async def get_sessions(db=murfey_db): return res +@router.get("/instruments/{instrument_name}/visits/{visit_name}/sessions") +def get_sessions_with_visit( + instrument_name: str, visit_name: str, db=murfey_db +) -> List[Session]: + sessions = db.exec( + select(Session) + .where(Session.instrument_name == instrument_name) + .where(Session.visit == visit_name) + ).all() + return sessions + + @router.get("/instruments/{instrument_name}/sessions") async def get_sessions_by_instrument_name( instrument_name: str, db=murfey_db diff --git a/src/murfey/server/demo_api.py b/src/murfey/server/demo_api.py index 694c9f6d9..58621c759 100644 --- a/src/murfey/server/demo_api.py +++ b/src/murfey/server/demo_api.py @@ -1547,6 +1547,18 @@ async def get_sessions(db=murfey_db): return res +@router.get("/instruments/{instrument_name}/visits/{visit_name}/sessions") +def get_sessions_with_visit( + instrument_name: str, visit_name: str, db=murfey_db +) -> List[Session]: + sessions = db.exec( + select(Session) + .where(Session.instrument_name == instrument_name) + .where(Session.visit == visit_name) + ).all() + return sessions + + @router.get("/instruments/{instrument_name}/sessions") async def get_sessions_by_instrument_name( instrument_name: str, db=murfey_db