from fastapi import APIRouter from app.config import settings from app.models.schemas import AppSettings router = APIRouter() @router.get("", response_model=AppSettings) async def get_settings(): return AppSettings( battery_min_reserve=settings.BATTERY_MIN_RESERVE, battery_max_charge=settings.BATTERY_MAX_CHARGE, arbitrage_min_spread=settings.ARBITRAGE_MIN_SPREAD, mining_margin_threshold=settings.MINING_MARGIN_THRESHOLD, ) @router.post("") async def update_settings(settings_update: dict): updated_fields = [] for key, value in settings_update.items(): if hasattr(settings, key.upper()): setattr(settings, key.upper(), value) updated_fields.append(key) return {"message": "Settings updated", "updated_fields": updated_fields}