Skip to main content
Core.Today
|
KuaishouMediumUltra

Kling O3 Image Image to Image

Kuaishou's Kling Omni 3 (O3) image-to-image via Fal.AI. Edits and transforms up to 10 reference images addressed in the prompt as @Image1 / @Element1, at 1K/2K/4K, as single images or a related series of 2-9, while preserving visual consistency.

66 credits
per image (1K/2K 65, 4K 130 credits/image; series billed per image)
Up to 10 reference images addressed as @Image1, @Image2, ...
Character elements (@Element1) for face/identity control
1K, 2K and 4K output
Series mode for 2-9 related results

Run it right now

Test this model instantly in the Console Playground โ€” no code required

Sign in to try

Use with AI Assistant

Copy usage instructions for Claude, ChatGPT, or other AI

Quick Start

curl -X POST "https://api.core.today/v1/predictions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: cdt_your_api_key" \
  -d '{
  "model": "fal-ai/kling-image/o3/image-to-image",
  "input": {
    "prompt": "Transform into photorealistic 3D render, add proper lighting and shadows, realistic materials and textures, maintain exact proportions and design from sketch, product visualization quality",
    "image_urls": [
      "https://v3b.fal.media/files/b/0a8d06d1/FTrwBsV9WI5twqMPkqvRh_19db9852c5ed4a109d81c52d27c9e433.png"
    ],
    "resolution": "1K",
    "aspect_ratio": "auto",
    "output_format": "png",
    "num_images": 1
  }
}'

Parameters

ParameterTypeRequiredDefaultDescription
promptstringYes-Text prompt (max 2,500 characters). Reference the supplied images as @Image1, @Image2, ... (use @Image when there is only one) and character elements as @Element1, @Element2, ...
image_urlsarrayYes-Reference images, 1-indexed in the prompt as @Image1, @Image2, ... Maximum 10.
elementsarrayNo-Characters or objects for face/identity control, referenced in the prompt as @Element1, @Element2, ... Each element takes a frontal_image_url and optional reference_image_urls.
resolutionstringNo1KOutput resolution. 1K and 2K cost the same; 4K costs double per image.
1K2K4K
result_typestringNosingle'single' generates num_images independent images; 'series' generates series_amount related images.
singleseries
num_imagesintegerNo1Number of images to generate when result_type is 'single' (1-9). Charged per image.
series_amountintegerNo-Number of images in the series (2-9). Required when result_type is 'series'. Charged per image.
aspect_ratiostringNoautoAspect ratio of the generated images. 'auto' picks one based on the input content.
auto16:99:161:14:33:43:22:321:9
output_formatstringNopngThe format of the generated image.
jpegpngwebp

How to Provide File Input

There are 3 ways to provide files for the image_urls parameter:

Recommended

Image URL

Pass a publicly accessible URL directly. With the Storage API (POST /v1/files/upload-url) the file uploads straight to S3 (50MB per file) and you pass the returned file_url.

{
  "model": "fal-ai/kling-image/o3/image-to-image",
  "input": {
    "prompt": "your prompt here",
    "image_urls": ["https://example.com/image.jpg"]
  }
}

Direct Upload (Multipart)

Attach files directly to POST /v1/predictions/upload. No separate upload step, but the bytes pass through the API server so the whole request is capped at 10MB.

curl -X POST "https://api.core.today/v1/predictions/upload" \
  -H "X-API-Key: cdt_your_api_key" \
  -F "model=fal-ai/kling-image/o3/image-to-image" \
  -F 'input={"prompt":"your prompt here"}' \
  -F "file:image_urls=@your_file.png"
See the File Upload docs for more upload methods including Presigned URLs.

Common Parameters

Common parameters used when calling POST /v1/predictions.

ParameterTypeRequiredDefaultDescription
modelstringYes-Model identifier
inputobjectYes-Object containing the model-specific parameters from the table above
output_folderstringNo-Folder path for output files (max 256 chars, '..' not allowed)
webhook_urlstringNo-Webhook URL to call on completion
is_publicbooleanNofalseIf true, output files are also available via permanent public URLs

Examples

Sketch to 3D render

Turn a product sketch into a photorealistic render at 1K.

curl -X POST "https://api.core.today/v1/predictions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: cdt_your_api_key" \
  -d '{
  "model": "fal-ai/kling-image/o3/image-to-image",
  "input": {
    "prompt": "Transform into photorealistic 3D render, add proper lighting and shadows, realistic materials and textures, maintain exact proportions and design from sketch, product visualization quality",
    "image_urls": [
      "https://v3b.fal.media/files/b/0a8d06d1/FTrwBsV9WI5twqMPkqvRh_19db9852c5ed4a109d81c52d27c9e433.png"
    ],
    "resolution": "1K",
    "aspect_ratio": "auto",
    "output_format": "png",
    "num_images": 1
  }
}'

4K print render

The same transformation at 4K for print (double the per-image price).

curl -X POST "https://api.core.today/v1/predictions" \
  -H "Content-Type: application/json" \
  -H "X-API-Key: cdt_your_api_key" \
  -d '{
  "model": "fal-ai/kling-image/o3/image-to-image",
  "input": {
    "prompt": "Transform @Image into a studio product photo on a white seamless background with soft shadows",
    "image_urls": [
      "https://v3b.fal.media/files/b/0a8d06d1/FTrwBsV9WI5twqMPkqvRh_19db9852c5ed4a109d81c52d27c9e433.png"
    ],
    "resolution": "4K"
  }
}'

Tips & Best Practices

1Refer to each input explicitly (@Image1, @Image2) so the model knows which image plays which role.
21K and 2K are the same price; 4K doubles it.
3In series mode you are charged for series_amount images (num_images is ignored).
4Keep 'auto' aspect ratio to follow the input image's framing.

Use Cases

Turning sketches into photorealistic product renders
Compositing products into new scenes
Restyling photos while keeping the subject
Consistent character variations from a reference