Files
freepik-api/app/schemas/image_editing.py
Sebastian Krüger 99c24adfe8 Initial commit: Freepik REST API
FastAPI async wrapper for Freepik cloud AI API supporting image generation
(Mystic, Flux Dev/Pro, SeedReam), video generation (Kling, MiniMax, Seedance),
image editing (upscale, relight, style transfer, expand, inpaint), and
utilities (background removal, classifier, audio isolation). Includes async
task tracking with polling, Docker containerization, and Gitea CI/CD workflow.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 14:07:36 +01:00

42 lines
1.4 KiB
Python

from typing import Optional
from pydantic import BaseModel, Field
class UpscaleCreativeRequest(BaseModel):
image: str = Field(..., description='Base64-encoded image')
prompt: Optional[str] = None
scale: Optional[int] = Field(None, ge=2, le=4)
creativity: Optional[float] = Field(None, ge=0.0, le=1.0)
resemblance: Optional[float] = Field(None, ge=0.0, le=1.0)
class UpscalePrecisionRequest(BaseModel):
image: str = Field(..., description='Base64-encoded image')
scale: Optional[int] = Field(None, ge=2, le=4)
class RelightRequest(BaseModel):
image: str = Field(..., description='Base64-encoded image')
prompt: Optional[str] = None
light_source: Optional[str] = None
intensity: Optional[float] = Field(None, ge=0.0, le=1.0)
class StyleTransferRequest(BaseModel):
image: str = Field(..., description='Base64-encoded image')
style_reference: str = Field(..., description='Base64-encoded style reference image')
strength: Optional[float] = Field(None, ge=0.0, le=1.0)
class ExpandRequest(BaseModel):
image: str = Field(..., description='Base64-encoded image')
prompt: Optional[str] = None
direction: Optional[str] = Field(None, description='Expansion direction')
class InpaintRequest(BaseModel):
image: str = Field(..., description='Base64-encoded image')
mask: str = Field(..., description='Base64-encoded mask image')
prompt: str = Field(..., min_length=1)