Photo to video
One photo in. A cinematic clip out.
Animate a single room or exterior photo into a smooth 5- or 10-second clip — orbit, pan, push in, dolly out, shift the daylight or add subtle people. Stills become scroll-stopping motion.
POST/v1/studio/video/walkthrough
Motion
- 5s or 10s
- 9:16 · 16:9 · 1:1
- 8 camera motions
Use cases
Motion for every placement
01
Reels & Shorts
Vertical 9:16 clips from listing photos — no filming required.
02
Listing hero video
A slow push-in on the best exterior for the top of your listing page.
03
Ads
Motion outperforms stills in feeds; turn your top photos into short video ads.
API
One request. That’s the integration.
Authenticate with x-api-key or Authorization: Bearer — the same key as the Listings API.
01POST a photo URL, a camera motion and a duration. You get a job_id right away.
02Poll GET /v1/studio/jobs/:job_id, stream progress over SSE, or wait for your webhook.
03Download the MP4 and poster frame from the CDN.
Body parameters6
- photo_urlstringrequired
- Public URL of the photo to animate.
- motionenumrequired
- orbit_left · orbit_right · pan_left · pan_right · slow_zoom_in · dolly_out · shifting_daylight · add_subtle_people
- duration_secondsnumberrequired
- 5 or 10.
- custom_motion_promptstring
- Direct the camera in your own words.
- aspect_ratioenum
- 9:16 · 16:9 · 1:1
- webhook_urlstring
- Called with the finished job when processing completes.
curl -X POST https://mlsapi.dev/v1/studio/video/walkthrough \
-H "x-api-key: $MLSAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"photo_url": "https://cdn.mlsapi.dev/photos/A12079565/02.webp",
"motion": "slow_zoom_in",
"duration_seconds": 5,
"custom_motion_prompt": "Slow cinematic push toward the window, soft warm light shift.",
"aspect_ratio": "9:16"
}'
POST /v1/studio/video/walkthrough
{
"job_id": "job_studio_01JA0XQ4M9ZK7T",
"type": "video_walkthrough",
"status": "processing",
"progress_percentage": 10,
"current_step": "initializing_pipeline",
"estimated_completion_seconds": 25,
"created_at": "2026-09-29T14:02:11.000Z",
"status_url": "/v1/studio/jobs/job_studio_01JA0XQ4M9ZK7T"
}
Try Photo to Video in Studio.
Sign up or log in at studio.mlsapi.dev to run it on your own photos — then call the same endpoint from your code.


