House tour
A full house tour from 3–6 photos.
Pass your photos in order with a highlight for each room. Studio builds a cinematic multi-shot tour with clean cuts, an ambient soundtrack and — optionally — an AI-written script, sized for Reels, Shorts or YouTube.
POST/v1/studio/video/tourordered_photos15s · 9:16
1
ExteriorPalm-lined and move-in ready.
ExteriorPalm-lined and move-in ready.2
Living RoomBright, open living area.
Living RoomBright, open living area.3
KitchenAn updated kitchen with an island.
KitchenAn updated kitchen with an island.4
Primary SuiteA quiet primary retreat.
Primary SuiteA quiet primary retreat.Script
Music
- 3–6 photos
- 12 · 15 · 30s
- Auto script
- Music
Use cases
Every new listing gets a video
01
Just-listed reels
Automate a vertical tour the moment a listing goes live.
02
Listing pages
A 16:9 tour at the top of the property page keeps visitors longer.
03
Email & SMS
Short tours with a poster frame for newsletters and buyer alerts.
API
One request. That’s the integration.
Authenticate with x-api-key or Authorization: Bearer — the same key as the Listings API.
01POST 3–6 ordered photos with highlights, a duration and a music genre. 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 finished tour and poster frame from the CDN.
Body parameters7
- ordered_photos{ room_name, photo_url, highlight }[]required
- 3 to 6 photos in the order they should appear.
- duration_secondsnumberrequired
- 12, 15 or 30.
- auto_scriptboolean
- Write captions and narration from the highlights.
- shot_scriptstring
- Your own script instead of the automatic one.
- aspect_ratioenum
- 9:16 · 16:9 · 1:1
- music_genreenum
- ambient_luxury · upbeat_modern · acoustic_warm · none
- webhook_urlstring
- Called with the finished job when processing completes.
curl -X POST https://mlsapi.dev/v1/studio/video/tour \
-H "x-api-key: $MLSAPI_KEY" \
-H "Content-Type: application/json" \
-d '{
"ordered_photos": [
{
"room_name": "Exterior",
"photo_url": "https://cdn.mlsapi.dev/photos/A12079565/exterior.webp",
"highlight": "Palm-lined front yard"
},
{
"room_name": "Living Room",
"photo_url": "https://cdn.mlsapi.dev/photos/A12079565/02.webp",
"highlight": "Bright, open living area"
},
{
"room_name": "Kitchen",
"photo_url": "https://cdn.mlsapi.dev/photos/A12079565/03.webp",
"highlight": "Updated kitchen"
},
{
"room_name": "Primary Suite",
"photo_url": "https://cdn.mlsapi.dev/photos/A12079565/07.webp",
"highlight": "Quiet primary bedroom"
}
],
"duration_seconds": 15,
"auto_script": true,
"aspect_ratio": "9:16",
"music_genre": "ambient_luxury"
}'
POST /v1/studio/video/tour
{
"job_id": "job_studio_01JA0XQ4M9ZK7T",
"type": "video_tour",
"status": "processing",
"progress_percentage": 10,
"current_step": "initializing_pipeline",
"estimated_completion_seconds": 45,
"created_at": "2026-09-29T14:02:11.000Z",
"status_url": "/v1/studio/jobs/job_studio_01JA0XQ4M9ZK7T"
}
Try House Tour 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.

