WaveSpeedAI APIRecraft AIRecraft AI Recraft Crisp Upscale

Recraft Ai Recraft Crisp Upscale

Recraft Ai Recraft Crisp Upscale

Playground

Try it on WavespeedAI!

Recraft Crisp Upscale enhances textures, fine details, and facial features to add depth beyond simple resolution boosts. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

Features

Recraft Crisp Upscale – Image Restoration and Super-Resolution

Recraft Crisp Upscale is an AI-powered enhancer from Recraft that turns low-resolution, noisy, or aged photos into sharper, cleaner, high-resolution images. It is especially strong on portraits and fine details, making it ideal for photo restoration, profile pictures, product images, and social media visuals.


Why it stands out

  • Crisp detail recovery Sharpens edges, textures, and facial features so eyes, hair, and fabric folds look clean and well-defined.

  • Noise and artifact reduction Smooths grain, JPEG blocks, and minor motion blur while preserving structure and character identity.

  • Natural, photo-friendly look Enhances clarity without plastic skin or over-sharpening, keeping the original mood and style of the image.

  • Drop-in enhancement step Works as a final polish in your pipeline: restore old scans, then pass the result straight to design tools, websites, or print.

  • Flexible delivery Returns a standard image URL by default, or base64-encoded data when you enable base64 output via API.


Limits and performance

  • Input: single image (portrait, product photo, scan, or other)
  • Output: enhanced, higher-quality version of the same image (same composition and framing)
  • Typical processing time: a few seconds per image, depending on size and queue load
  • Best for: portraits and real-world photos; heavily stylised art may benefit but is not the primary target

The model focuses on restoration and super-resolution; it does not change content or composition beyond subtle aesthetic enhancement.


Pricing

Simple per-image billing:

  • $0.004 per processed image

Pro tips for best quality

  • Use the highest-quality version of your original image; less compression and higher resolution give the model more to work with.
  • For very old or heavily damaged scans, consider basic dust or scratch removal before running Crisp Upscale.
  • Use it as the last step after colour correction or light retouching to maximise overall clarity and perceived resolution.

Authentication

For authentication details, please refer to the Authentication Guide.

API Endpoints

Submit Task & Query Result


# Submit the task
curl --location --request POST "https://api.wavespeed.ai/api/v3/recraft-ai/recraft-crisp-upscale" \
--header "Content-Type: application/json" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}" \
--data-raw '{
    "enable_base64_output": false
}'

# Get the result
curl --location --request GET "https://api.wavespeed.ai/api/v3/predictions/${requestId}/result" \
--header "Authorization: Bearer ${WAVESPEED_API_KEY}"

Parameters

Task Submission Parameters

Request Parameters

ParameterTypeRequiredDefaultRangeDescription
imagestringYes-The image to edit, can be a URL or base64 encoded image.
enable_base64_outputbooleanNofalse-If enabled, the output will be encoded into a BASE64 string instead of a URL. This property is only available through the API.

Response Parameters

ParameterTypeDescription
codeintegerHTTP status code (e.g., 200 for success)
messagestringStatus message (e.g., “success”)
data.idstringUnique identifier for the prediction, Task Id
data.modelstringModel ID used for the prediction
data.outputsarrayArray of URLs to the generated content (empty when status is not completed)
data.urlsobjectObject containing related API endpoints
data.urls.getstringURL to retrieve the prediction result
data.has_nsfw_contentsarrayArray of boolean values indicating NSFW detection for each output
data.statusstringStatus of the task: created, processing, completed, or failed
data.created_atstringISO timestamp of when the request was created (e.g., “2023-04-01T12:34:56.789Z”)
data.errorstringError message (empty if no error occurred)
data.timingsobjectObject containing timing details
data.timings.inferenceintegerInference time in milliseconds

Result Request Parameters

© 2025 WaveSpeedAI. All rights reserved.