diff --git a/freqtrade/rpc/api_server/api_v1.py b/freqtrade/rpc/api_server/api_v1.py index 3e5d55f71..08c26c59b 100644 --- a/freqtrade/rpc/api_server/api_v1.py +++ b/freqtrade/rpc/api_server/api_v1.py @@ -174,9 +174,9 @@ def force_entry(payload: ForceEnterPayload, rpc: RPC = Depends(get_rpc)): leverage=payload.leverage) if trade: - return ForceEnterResponse.parse_obj(trade.to_json()) + return ForceEnterResponse.model_validate(trade.to_json()) else: - return ForceEnterResponse.parse_obj( + return ForceEnterResponse.model_validate( {"status": f"Error entering {payload.side} trade for pair {payload.pair}."}) @@ -281,7 +281,7 @@ def plot_config(strategy: Optional[str] = None, config=Depends(get_config), if not strategy: if not rpc: raise RPCException("Strategy is mandatory in webserver mode.") - return PlotConfig.parse_obj(rpc._rpc_plot_config()) + return PlotConfig.model_validate(rpc._rpc_plot_config()) else: config1 = deepcopy(config) config1.update({ diff --git a/freqtrade/rpc/external_message_consumer.py b/freqtrade/rpc/external_message_consumer.py index e888191ea..c725f553b 100644 --- a/freqtrade/rpc/external_message_consumer.py +++ b/freqtrade/rpc/external_message_consumer.py @@ -322,7 +322,7 @@ class ExternalMessageConsumer: producer_name = producer.get('name', 'default') try: - producer_message = WSMessageSchema.parse_obj(message) + producer_message = WSMessageSchema.model_validate(message) except ValidationError as e: logger.error(f"Invalid message from `{producer_name}`: {e}") return @@ -344,7 +344,7 @@ class ExternalMessageConsumer: def _consume_whitelist_message(self, producer_name: str, message: WSMessageSchema): try: # Validate the message - whitelist_message = WSWhitelistMessage.parse_obj(message) + whitelist_message = WSWhitelistMessage.model_validate(message) except ValidationError as e: logger.error(f"Invalid message from `{producer_name}`: {e}") return @@ -356,7 +356,7 @@ class ExternalMessageConsumer: def _consume_analyzed_df_message(self, producer_name: str, message: WSMessageSchema): try: - df_message = WSAnalyzedDFMessage.parse_obj(message) + df_message = WSAnalyzedDFMessage.model_validate(message) except ValidationError as e: logger.error(f"Invalid message from `{producer_name}`: {e}") return