diff --git a/models/api/finstitutions/trading/symbols/list.py b/models/api/finstitutions/trading/symbols/list.py index bfd46d3..d6cf72d 100644 --- a/models/api/finstitutions/trading/symbols/list.py +++ b/models/api/finstitutions/trading/symbols/list.py @@ -40,6 +40,7 @@ from pydantic import BaseModel, Field, field_validator, PastDatetime, model_vali from typing import Optional, Literal, Union, List # My utils: +from utils_v2.string import json from utils_v2.string import regex from utils_v2.date_time import date_time @@ -172,7 +173,12 @@ class TradingSymbolListRequestData(BaseModel): @field_validator("exchanges", mode = "before") def ensure_list(cls, value): - if not isinstance(value, list): value = [value] + _exchg = [] + if isinstance(value, str): + if regex.match(text = value, pattern = r"\[.*\]"): _exchg = json.from_string(value) + else: _exchg.append(value) + elif isinstance(value, list): + _exchg = value return value