chore: improved tag namings

This commit is contained in:
Matthias
2026-01-22 07:09:26 +01:00
parent 18933a6e20
commit c778e44e80
5 changed files with 23 additions and 32 deletions

View File

@@ -13,7 +13,7 @@ logger = logging.getLogger(__name__)
router = APIRouter()
@router.get("/background", response_model=list[BackgroundTaskStatus], tags=["webserver"])
@router.get("/background", response_model=list[BackgroundTaskStatus])
def background_job_list():
return [
{
@@ -29,7 +29,7 @@ def background_job_list():
]
@router.get("/background/{jobid}", response_model=BackgroundTaskStatus, tags=["webserver"])
@router.get("/background/{jobid}", response_model=BackgroundTaskStatus)
def background_job(jobid: str):
if not (job := ApiBG.jobs.get(jobid)):
raise HTTPException(status_code=404, detail="Job not found.")

View File

@@ -125,7 +125,7 @@ def __run_backtest_bg(btconfig: Config):
ApiBG.bgtask_running = False
@router.post("/backtest", response_model=BacktestResponse, tags=["webserver", "backtest"])
@router.post("/backtest", response_model=BacktestResponse, tags=["backtest"])
async def api_start_backtest(
bt_settings: BacktestRequest, background_tasks: BackgroundTasks, config=Depends(get_config)
):
@@ -168,7 +168,7 @@ async def api_start_backtest(
}
@router.get("/backtest", response_model=BacktestResponse, tags=["webserver", "backtest"])
@router.get("/backtest", response_model=BacktestResponse, tags=["backtest"])
def api_get_backtest():
"""
Get backtesting result.
@@ -215,7 +215,7 @@ def api_get_backtest():
}
@router.delete("/backtest", response_model=BacktestResponse, tags=["webserver", "backtest"])
@router.delete("/backtest", response_model=BacktestResponse, tags=["backtest"])
def api_delete_backtest():
"""Reset backtesting"""
if ApiBG.bgtask_running:
@@ -242,7 +242,7 @@ def api_delete_backtest():
}
@router.get("/backtest/abort", response_model=BacktestResponse, tags=["webserver", "backtest"])
@router.get("/backtest/abort", response_model=BacktestResponse, tags=["backtest"])
def api_backtest_abort():
if not ApiBG.bgtask_running:
return {
@@ -262,17 +262,13 @@ def api_backtest_abort():
}
@router.get(
"/backtest/history", response_model=list[BacktestHistoryEntry], tags=["webserver", "backtest"]
)
@router.get("/backtest/history", response_model=list[BacktestHistoryEntry], tags=["backtest"])
def api_backtest_history(config=Depends(get_config)):
# Get backtest result history, read from metadata files
return get_backtest_resultlist(config["user_data_dir"] / "backtest_results")
@router.get(
"/backtest/history/result", response_model=BacktestResponse, tags=["webserver", "backtest"]
)
@router.get("/backtest/history/result", response_model=BacktestResponse, tags=["backtest"])
def api_backtest_history_result(filename: str, strategy: str, config=Depends(get_config)):
# Get backtest result history, read from metadata files
bt_results_base: Path = config["user_data_dir"] / "backtest_results"
@@ -300,9 +296,7 @@ def api_backtest_history_result(filename: str, strategy: str, config=Depends(get
@router.delete(
"/backtest/history/{file}",
response_model=list[BacktestHistoryEntry],
tags=["webserver", "backtest"],
"/backtest/history/{file}", response_model=list[BacktestHistoryEntry], tags=["backtest"]
)
def api_delete_backtest_history_entry(file: str, config=Depends(get_config)):
# Get backtest result history, read from metadata files
@@ -320,9 +314,7 @@ def api_delete_backtest_history_entry(file: str, config=Depends(get_config)):
@router.patch(
"/backtest/history/{file}",
response_model=list[BacktestHistoryEntry],
tags=["webserver", "backtest"],
"/backtest/history/{file}", response_model=list[BacktestHistoryEntry], tags=["backtest"]
)
def api_update_backtest_history_entry(
file: str, body: BacktestMetadataUpdate, config=Depends(get_config)
@@ -347,9 +339,7 @@ def api_update_backtest_history_entry(
@router.get(
"/backtest/history/{file}/market_change",
response_model=BacktestMarketChange,
tags=["webserver", "backtest"],
"/backtest/history/{file}/market_change", response_model=BacktestMarketChange, tags=["backtest"]
)
def api_get_backtest_market_change(file: str, config=Depends(get_config)):
bt_results_base: Path = config["user_data_dir"] / "backtest_results"

View File

@@ -17,7 +17,7 @@ from freqtrade.util.progress_tracker import get_progress_tracker
logger = logging.getLogger(__name__)
# Private API, protected by authentication and webserver_mode dependency
router = APIRouter(tags=["download-data", "webserver"])
router = APIRouter()
def __run_download(job_id: str, config_loc: Config):

View File

@@ -25,9 +25,7 @@ logger = logging.getLogger(__name__)
router = APIRouter()
@router.get(
"/pairlists/available", response_model=PairListsResponse, tags=["pairlists", "webserver"]
)
@router.get("/pairlists/available", response_model=PairListsResponse, tags=["pairlists"])
def list_pairlists(config=Depends(get_config)):
from freqtrade.resolvers import PairListResolver
@@ -72,7 +70,7 @@ def __run_pairlist(job_id: str, config_loc: Config):
ApiBG.pairlist_running = False
@router.post("/pairlists/evaluate", response_model=BgJobStarted, tags=["pairlists", "webserver"])
@router.post("/pairlists/evaluate", response_model=BgJobStarted, tags=["pairlists"])
def pairlists_evaluate(
payload: PairListsPayload, background_tasks: BackgroundTasks, config=Depends(get_config)
):
@@ -129,7 +127,7 @@ def handleExchangePayload(payload: ExchangeModePayloadMixin, config_loc: Config)
@router.get(
"/pairlists/evaluate/{jobid}",
response_model=WhitelistEvaluateResponse,
tags=["pairlists", "webserver"],
tags=["pairlists"],
)
def pairlists_evaluate_get(jobid: str):
if not (job := ApiBG.jobs.get(jobid)):

View File

@@ -30,15 +30,15 @@ _OPENAPI_TAGS = (
"description": ("Information endpoints providing general information about the bot."),
},
{
"name": "trading",
"name": "Trading",
"description": f"Trading related endpoints - {_TRADE_MODE_ONLY}.",
},
{
"name": "webserver",
"name": "Webserver",
"description": ("Webserver related endpoints - *only available in webserver mode*."),
},
{
"name": "botcontrol",
"name": "Bot-control",
"description": (f"Bot control endpoints to start/stop trading - {_TRADE_MODE_ONLY}."),
},
{
@@ -177,13 +177,13 @@ class ApiServer(RPCHandler):
app.include_router(
api_trading,
prefix="/api/v1",
tags=["trading"],
tags=["Trading"],
dependencies=[Depends(http_basic_or_jwt_token), Depends(is_trading_mode)],
)
app.include_router(
api_webserver,
prefix="/api/v1",
tags=["webserver"],
tags=["Webserver"],
dependencies=[Depends(http_basic_or_jwt_token), Depends(is_webserver_mode)],
)
app.include_router(
@@ -194,6 +194,7 @@ class ApiServer(RPCHandler):
app.include_router(
api_bg_tasks,
prefix="/api/v1",
tags=["Webserver"],
dependencies=[Depends(http_basic_or_jwt_token), Depends(is_webserver_mode)],
)
app.include_router(
@@ -204,11 +205,13 @@ class ApiServer(RPCHandler):
app.include_router(
api_pairlists,
prefix="/api/v1",
tags=["Webserver"],
dependencies=[Depends(http_basic_or_jwt_token), Depends(is_webserver_mode)],
)
app.include_router(
api_download_data,
prefix="/api/v1",
tags=["download-data", "Webserver"],
dependencies=[Depends(http_basic_or_jwt_token), Depends(is_webserver_mode)],
)
app.include_router(ws_router, prefix="/api/v1")