43 lines
No EOL
1,018 B
Python
43 lines
No EOL
1,018 B
Python
from pydantic_settings import BaseSettings, SettingsConfigDict
|
|
from typing import List
|
|
|
|
class Settings(BaseSettings):
|
|
model_config = SettingsConfigDict(
|
|
env_file=".env",
|
|
env_file_encoding="utf-8",
|
|
case_sensitive=False,
|
|
extra="ignore"
|
|
)
|
|
|
|
# === Sage Gateway (Windows) ===
|
|
sage_gateway_url: str
|
|
sage_gateway_token: str
|
|
|
|
# === Base de données ===
|
|
database_url: str = "sqlite+aiosqlite:///./sage_dataven.db"
|
|
|
|
# === SMTP ===
|
|
smtp_host: str
|
|
smtp_port: int = 587
|
|
smtp_user: str
|
|
smtp_password: str
|
|
smtp_from: str
|
|
|
|
# === Universign ===
|
|
universign_api_key: str
|
|
universign_api_url: str = "https://api.universign.com/v1"
|
|
|
|
# === API ===
|
|
api_host: str = "0.0.0.0"
|
|
api_port: int = 8002
|
|
api_reload: bool = False
|
|
|
|
# === Email Queue ===
|
|
max_email_workers: int = 3
|
|
max_retry_attempts: int = 3
|
|
retry_delay_seconds: int = 60
|
|
|
|
# === CORS ===
|
|
cors_origins: List[str] = ["*"]
|
|
|
|
settings = Settings() |