1212import murfey .server .api .websocket as ws
1313from murfey .server import _transport_object
1414from murfey .server .api import templates
15+ from murfey .server .api .auth import MurfeyInstrumentNameFrontend as MurfeyInstrumentName
1516from murfey .server .api .auth import MurfeySessionIDFrontend as MurfeySessionID
1617from murfey .server .api .auth import validate_token
1718from murfey .server .api .shared import get_foil_hole as _get_foil_hole
@@ -74,20 +75,24 @@ def connections_check():
7475
7576
7677@router .get ("/instruments/{instrument_name}/machine" )
77- def machine_info_by_instrument (instrument_name : str ) -> Optional [MachineConfig ]:
78+ def machine_info_by_instrument (
79+ instrument_name : MurfeyInstrumentName ,
80+ ) -> Optional [MachineConfig ]:
7881 return get_machine_config_for_instrument (instrument_name )
7982
8083
8184@router .get ("/instruments/{instrument_name}/visits_raw" , response_model = List [Visit ])
82- def get_current_visits (instrument_name : str , db = ispyb_db ):
85+ def get_current_visits (instrument_name : MurfeyInstrumentName , db = ispyb_db ):
8386 logger .debug (
8487 f"Received request to look up ongoing visits for { sanitise (instrument_name )} "
8588 )
8689 return get_all_ongoing_visits (instrument_name , db )
8790
8891
8992@router .get ("/instruments/{instrument_name}/visits/" )
90- def all_visit_info (instrument_name : str , request : Request , db = ispyb_db ):
93+ def all_visit_info (
94+ instrument_name : MurfeyInstrumentName , request : Request , db = ispyb_db
95+ ):
9196 visits = get_all_ongoing_visits (instrument_name , db )
9297
9398 if visits :
@@ -159,7 +164,7 @@ class VisitEndTime(BaseModel):
159164
160165@router .post ("/instruments/{instrument_name}/visits/{visit}/session/{name}" )
161166def create_session (
162- instrument_name : str ,
167+ instrument_name : MurfeyInstrumentName ,
163168 visit : str ,
164169 name : str ,
165170 visit_end_time : VisitEndTime ,
@@ -195,7 +200,7 @@ def remove_session(session_id: MurfeySessionID, db=murfey_db):
195200
196201@router .get ("/instruments/{instrument_name}/visits/{visit_name}/sessions" )
197202def get_sessions_with_visit (
198- instrument_name : str , visit_name : str , db = murfey_db
203+ instrument_name : MurfeyInstrumentName , visit_name : str , db = murfey_db
199204) -> List [Session ]:
200205 sessions = db .exec (
201206 select (Session )
@@ -207,7 +212,7 @@ def get_sessions_with_visit(
207212
208213@router .get ("/instruments/{instrument_name}/sessions" )
209214async def get_sessions_by_instrument_name (
210- instrument_name : str , db = murfey_db
215+ instrument_name : MurfeyInstrumentName , db = murfey_db
211216) -> List [Session ]:
212217 sessions = db .exec (
213218 select (Session ).where (Session .instrument_name == instrument_name )
0 commit comments