from pydantic import BaseModel, Field, HttpUrl from typing import Optional class YouTubeUploadTask(BaseModel): filename: HttpUrl = Field(..., description="URL of the video file to upload") title: str = Field( ..., min_length=100, max_length=500, description="A good title for the video", ) description: str = Field( ..., min_length=100, max_length=500, description="A brief summary of the video's content", ) category_id: str = "22" # Default to a generic category, update as needed privacy: str = "private" tags: str = Field( ..., min_length=100, max_length=500, description="Best seo tags for youtube based on the story", ) thumbnail: Optional[str] = Field( default=None, description="Optional image prompt for video thumbnail", )