File size: 526 Bytes
fba6023
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
from __future__ import annotations

from fastapi import APIRouter, Request

from app.api.media import get_processor
from app.core.response import SuccessResponse

router = APIRouter(prefix="/v1/ytdlp", tags=["yt-dlp"])


@router.post("/download", response_model=SuccessResponse)
async def download(request: Request) -> SuccessResponse:
    request.state.operation = "ytdlp.download"
    processor = get_processor(request)
    resolved = await processor.resolver.resolve(request)
    return await processor.run_ytdlp(resolved)