@@ -355,6 +355,35 @@ def restart_workers(self) -> dict[str, Any] | list[dict[str, Any]]:
355355 response = self ._prepare_request ('POST' , 'servers/restartWorkers' )
356356 return self ._check_json_response (response )
357357
358+ def restart_dead_workers (self ) -> dict [str , Any ] | list [dict [str , Any ]]:
359+ """Restart the dead workers"""
360+ response = self ._prepare_request ('POST' , 'servers/restartDeadWorkers' )
361+ return self ._check_json_response (response )
362+
363+ def get_workers (self ) -> dict [str , Any ] | list [dict [str , Any ]]:
364+ """Get all the workers"""
365+ response = self ._prepare_request ('GET' , 'servers/getWorkers' )
366+ return self ._check_json_response (response )
367+
368+ def start_worker (self , worker_type : str ) -> dict [str , Any ] | list [dict [str , Any ]]:
369+ """Start a worker
370+ :param worker_type: The type of worker, must be one of the following: "default" "email" "scheduler" "cache" "prio" "update"
371+ """
372+ response = self ._prepare_request ('POST' , f'servers/startWorker/{ worker_type } ' )
373+ return self ._check_json_response (response )
374+
375+ def stop_worker_by_pid (self , worker_pid : str | int ) -> dict [str , Any ] | list [dict [str , Any ]]:
376+ """Stop a worker by its PID (get the pid with get_workers)
377+ :param worker_pid: The pid of the worker to stop
378+ """
379+ response = self ._prepare_request ('POST' , f'servers/stopWorker/{ worker_pid } ' )
380+ return self ._check_json_response (response )
381+
382+ def kill_all_workers (self ) -> dict [str , Any ] | list [dict [str , Any ]]:
383+ """Kill all the workers"""
384+ response = self ._prepare_request ('POST' , 'servers/killAllWorkers' )
385+ return self ._check_json_response (response )
386+
358387 def db_schema_diagnostic (self ) -> dict [str , Any ] | list [dict [str , Any ]]:
359388 """Get the schema diagnostic"""
360389 response = self ._prepare_request ('GET' , 'servers/dbSchemaDiagnostic' )
@@ -2705,6 +2734,11 @@ def discard_user_registration(self, registration: MISPInbox | int | str | UUID)
27052734 r = self ._prepare_request ('POST' , f'users/discardRegistrations/{ registration_id } ' )
27062735 return self ._check_json_response (r )
27072736
2737+ def users_heartbeat (self ) -> dict [str , str ]:
2738+ """?"""
2739+ r = self ._prepare_request ('GET' , 'users/heartbeat' )
2740+ return self ._check_json_response (r )
2741+
27082742 # ## END User ###
27092743
27102744 # ## BEGIN Role ###
0 commit comments