Files
OpenBB/openbb_providers/openbb_provider/model/data/base.py
2023-07-05 11:11:49 +01:00

21 lines
617 B
Python

from typing import Literal
from pydantic import BaseModel, Field, validator
from openbb_provider.metadata import DESCRIPTIONS
from openbb_provider.model.abstract.data import QueryParams
class BaseSymbol(BaseModel):
symbol: str = Field(min_length=1, description=DESCRIPTIONS.get("symbol", ""))
@validator("symbol", pre=True)
def upper_symbol(cls, v: str): # pylint: disable=E0213
return v.upper()
class FinancialStatementQueryParams(QueryParams, BaseSymbol):
period: Literal["annually", "quarterly"] = Field(
default="annually", description=DESCRIPTIONS.get("period", "")
)