API v1 · Upscaling
Photo upscaling API
Raise the resolution of a finished listing photo 2× or 4× with one authenticated POST, so it is MLS-ready before it goes out. The same API also stages and clears rooms.
Free presigned uploads · 3 credits per upscaled image
# Your key, from the API dashboard. Never commit it.
export PICTASTIC_API_KEY="sk_live_..."
# 1. Free upload slot (costs no credits)
curl -H "Authorization: Bearer $PICTASTIC_API_KEY" \
"https://app.pictastic.ai/api/v1/presigned-urls?count=1"
# 2. Upscale it 4× (3 credits)
curl -X POST "https://app.pictastic.ai/api/v1/upscale" \
-H "Authorization: Bearer $PICTASTIC_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "imageUrl": "<publicUrl>", "scaleFactor": 4 }'
# → { "jobId": "...", "status": "completed",
# "outputImageUrl": "https://...", "creditsCharged": 3 }Overview
What is a photo upscaling API?
A photo upscaling API raises the resolution of an image programmatically, returning a larger, sharper version through a single HTTP call. Pictastic's upscaling endpoint enlarges finished real estate photos 2× or 4× so they meet MLS resolution rules before they reach a listing.
How it works
Upload, call, collect
Image inputs live on Pictastic storage, so every job starts with a free presigned upload.
- 1
Get a presigned upload URL
Ask for as many slots as you need, then PUT your image bytes straight to storage. This call is free — no credits.
- 2
Call the endpoint you want
Pass the returned publicUrl as imageUrl. Staging, removal and upscaling all take the same input shape.
- 3
Read the output URL
The response carries outputImageUrl and a downloadUrl, plus a jobId you can re-fetch later from the jobs history.
Why developers pick it
Built for MLS-ready output
Everything you evaluate an image upscaling endpoint on, stated as capabilities rather than adjectives.
2× or 4× in one call
Pass scaleFactor: 2 (default) or 4 to enlarge a finished image. No separate model to host, no queue to poll.
Same pipeline that staged it
Upscaling takes the same imageUrl as staging and removal, so you can stage a room and upscale the result without leaving the API.
3 credits, refunded on failure
You pay per successful image from the same balance you use in the app, and a failed job returns its credits automatically.
Synchronous, with a job trail
The POST returns the finished outputImageUrl directly, and every call records a jobId you can re-fetch later.
Part of one API
This is one operation of the virtual staging API
Staging, furniture removal and upscaling share one key, one input shape and one credit balance. See the full API overview, or jump to a related endpoint.
Photo upscaling API FAQ
What is a photo upscaling API?
A photo upscaling API raises the resolution of an image programmatically, returning a larger, sharper version through a single HTTP call. Pictastic's upscaling endpoint enlarges finished real estate photos 2× or 4× so they meet MLS resolution rules before they reach a listing.
How much can the upscaling API enlarge an image?
The scaleFactor parameter accepts 2 (the default) or 4, so a finished image can be enlarged two or four times. It is designed to take an already-staged or already-shot photo up to MLS resolution.
How much does the photo upscaling API cost?
Upscaling is 3 credits per successful image, drawn from the same balance you use in the app, and requesting the upload URL is free. Any failed job is refunded automatically.
Can I upscale an image I staged through the API?
Yes. Staging returns an outputImageUrl; upload that result for an upscale call, or feed it straight through. Staging, removal and upscaling are all the same API, so nothing leaves the pipeline.
Start upscaling photos by API today
Create a key in the dashboard and your first upscale request can go out in the next few minutes.
Presigned uploads are free — you only spend credits on finished images.