Documentation
FilesResource
Access via client.files
list()
List files with optional filtering and pagination
async def list( *, search: Optional[str] = None, search_mode: str = "all", # "all" | "metadata" | "visible_text" tags: Optional[list[str]] = None, date_from: Optional[datetime] = None, date_to: Optional[datetime] = None, has_description: Optional[bool] = None, ids: Optional[list[str]] = None, # max 500 limit: int = 20, # 1-100 offset: int = 0, sort_by: str = "content_created_at", # "created_at" | "content_created_at" | "title" | "size_bytes" sort_order: str = "desc", # "asc" | "desc") -> FileListReturns: FileList
list_all()
Auto-paginating async iterator that yields all files matching the criteria
async def list_all( *, search: Optional[str] = None, search_mode: str = "all", tags: Optional[list[str]] = None, date_from: Optional[datetime] = None, date_to: Optional[datetime] = None, has_description: Optional[bool] = None, sort_by: str = "content_created_at", sort_order: str = "desc", page_size: int = 50,) -> AsyncIterator[UserFile]Yields: UserFile objects one at a time, automatically paginating through all results
get()
Get detailed information about a file
async def get(file_id: str) -> UserFileDetailsReturns: UserFileDetails - Full file details with descriptions, visible text, tags, and processing history
update()
Update file metadata (title and/or tags)
async def update( file_id: str, *, title: Optional[str] = None, # max 255 chars tags: Optional[list[str]] = None, # max 40 tags, each max 50 chars) -> UpdateFileResultdelete()
Soft-delete a file (recoverable within 30 days)
async def delete(file_id: str) -> DeleteFileResultbatch_delete()
Delete multiple files in one operation (max 100)
async def batch_delete(file_ids: list[str]) -> BatchDeleteFilesResponseget_variant()
Get redirect URL for an image variant
async def get_variant( file_id: str, variant_type: str = "medium_750", # "original" | "tiny_64" | "small_256" | "medium_750" | "large_1024") -> strdownload()
Download the original file content
async def download(file_id: str) -> bytestrigger_variant_generation()
Manually trigger image variant generation (retry failed or generate missing variants)
async def trigger_variant_generation(file_id: str) -> dict[str, Any]