diff --git a/freqtrade/rpc/api_server/api_schemas.py b/freqtrade/rpc/api_server/api_schemas.py index 984507d99..1c49d4d0a 100644 --- a/freqtrade/rpc/api_server/api_schemas.py +++ b/freqtrade/rpc/api_server/api_schemas.py @@ -638,6 +638,7 @@ class Health(BaseModel): bot_startup: datetime | None = None bot_startup_ts: int | None = None + class ListCustomData(BaseModel): trade_id: int custom_data: list[dict[str, Any]] diff --git a/freqtrade/rpc/api_server/api_v1.py b/freqtrade/rpc/api_server/api_v1.py index f4838afb1..89f632972 100644 --- a/freqtrade/rpc/api_server/api_v1.py +++ b/freqtrade/rpc/api_server/api_v1.py @@ -510,6 +510,7 @@ def sysinfo(): def health(rpc: RPC = Depends(get_rpc)): return rpc.health() + @router.get("/trades/open/custom-data", response_model=list[ListCustomData], tags=["info"]) def list_open_trades_custom_data(rpc: RPC = Depends(get_rpc)): """ @@ -517,6 +518,7 @@ def list_open_trades_custom_data(rpc: RPC = Depends(get_rpc)): """ return rpc._rpc_list_custom_data() + @router.get("/trades/{trade_id}/custom-data", response_model=list[ListCustomData], tags=["info"]) def list_custom_data(trade_id: int, rpc: RPC = Depends(get_rpc)): """ diff --git a/freqtrade/rpc/rpc.py b/freqtrade/rpc/rpc.py index 680f4995f..9b68b6928 100644 --- a/freqtrade/rpc/rpc.py +++ b/freqtrade/rpc/rpc.py @@ -1117,12 +1117,13 @@ class RPC: } def _rpc_list_custom_data( - self, trade_id: int | None = None, key: str | None = None) -> list[dict[str, Any]]: + self, trade_id: int | None = None, key: str | None = None + ) -> list[dict[str, Any]]: """ Fetch custom data for a specific trade, or all open trades if `trade_id` is not provided. """ if trade_id is None: - #get all open trades + # get all open trades trades = Trade.get_open_trades() else: trades = Trade.get_trades(trade_filter=[Trade.id == trade_id]).all()