---
title: "Get all renders across all cameras for a floorplan asset"
method: GET
path: "/v1/floorplans/{assetId}/renders"
tags: ["Floorplans"]
---

# Get all renders across all cameras for a floorplan asset

`GET /v1/floorplans/{assetId}/renders`

## Path parameters

- `assetId` string, required

## Response `200`

Renders retrieved successfully

- ExpandedSceneRenderArrayApiResponseDto
  - `success` boolean, required — Indicates if the request was successful
  - `message` string, required — Human readable message
  - `data` object[], required — Response data
    - `id` string, uuid, required — Render ID
    - `cameraId` string, uuid, nullable, required — Legacy camera-spot pose pointer; null on capture-attributes renders
    - `captureAttributes` union, required — Camera state at capture time (mode-discriminated); null on legacy spot-linked renders
      - object
        - `mode` 'walkthrough', required
        - `version` number, required
        - `level` integer, required
        - `position` union[], required
          - union
            - number
            - number
            - number
        - `yawRad` number, required
        - `pitchRad` number, required
        - `fovDeg` number, required
      - object
        - `mode` 'isometric', required
        - `version` number, required
        - `level` integer, required
        - `direction` 'south-east' | 'north-east' | 'north-west' | 'south-west', required
        - `zoom` number, required
        - `target` union[], required
          - union
            - number
            - number
            - number
      - object
        - `mode` 'massing', required
        - `version` number, required
        - `level` integer, required
        - `position` union[], required
          - union
            - number
            - number
            - number
        - `target` union[], required
          - union
            - number
            - number
            - number
        - `fovDeg` number, required
    - `createdAt` unknown, required
    - `updatedAt` unknown, required
    - `asset` object, required
      - `id` string, uuid, required — Unique identifier of the asset
      - `collectionId` string, uuid, required — ID of the collection this asset belongs to
      - `folderId` string, uuid, nullable — ID of the folder this asset belongs to
      - `name` string, required — Name of the asset
      - `type` 'image', required
      - `thumbnailUrls` string[], required — Ordered preview thumbnail URLs
      - `metadata` object, nullable, required — Asset metadata JSON
        - `sourceAssetId` string — Set on project-level copies; the original artifact
        - `recognizer` object
          - `upload` union, required — Original upload descriptor (kind, asset ids, pdf page numbers)
            - object
              - …
            - object
              - …
            - object
              - …
          - `preprocessedAssetIds` string[], required — Pre-processed B&W blueprint image asset ids
          - `preprocessedHelperAssetIds` string[], required — Optional colored segmentation helper image asset ids
          - `scaleSource` 'printed_dimensions' | 'user_annotation' | 'target_dimensions' | 'fallback', required
          - `scaleConfidence` number, required — Scale calibration confidence, 0..1
          - `floorplanType` object, nullable, required
            - `category` 'residential' | 'commercial' | 'mixed_use' | 'unknown', required
            - `displayLabel` string, required
            - `confidence` number, required — Classifier confidence, 0..1
          - `completedAt` string, date-time, required — ISO timestamp when recognition completed
        - `adminUpload` object — Set on admin /upload-sibling uploads; write-once by convention, not by the DB
          - `sourceAssetId` string, required — The floorplan, image or document the upload was delivered against
          - `uploadedAt` string, date-time, required — Captured server-side at insert time
          - `uploadedByUserId` string — Absent for API-key callers
        - `generation` object
          - `status` 'queued' | 'running' | 'succeeded' | 'failed' | 'cancelled', required
          - `intent` 'reference' | 'concept-plan', required
          - `sourceTreatment` 'text-only' | 'edit' | 'inspiration', required
          - `requestedByUserId` string, uuid, required
          - `requestedInChatId` string, uuid, required
          - `clientRequestId` string, required
          - `prompt` string, required
          - `brief` string
          - `aspectRatio` '1:1' | '2:3' | '3:2' | '3:4' | '4:3' | '4:5' | '9:16' | '16:9' | '21:9', required
          - `referenceAssetIds` string[], required — What the user pointed at
          - `replacesAssetId` string, uuid — Whose spot on the canvas this result takes
          - `sourceAssetIds` string[], required — References resolved to assets with real files; the model input
          - `fallbackAssetId` string, uuid — What the canvas draws while waiting, resolved from replacesAssetId alone
          - `creditLockId` string, uuid, required — One lock per image, never per batch
          - `batch` object
            - `position` integer, required
            - `count` integer, required
          - `tuning` object
            - `reasoningEffort` 'low' | 'medium' | 'high' | 'xhigh' | 'max'
            - `imageQuality` 'low' | 'medium' | 'high' | 'auto'
          - `billingOutcome` 'committed' | 'released'
          - `attempt` integer, required
          - `provider` 'openai-responses'
          - `errorCode` string
          - `failureKind` 'application_deadline' | 'transport_timeout' | 'provider_error'
          - `latencyMs` integer
          - `queuedAt` string, date-time, required
          - `startedAt` string, date-time
          - `providerStartedAt` string, date-time
          - `finishedAt` string, date-time
      - `lockedAt` unknown, required
      - `isLocked` boolean, required — Whether the asset is currently locked (computed from lockedAt and TTL)
      - `deletedAt` unknown
      - `createdAt` unknown, required
      - `updatedAt` unknown, required
      - `details` object, required
        - `mimeType` string, required — Mimetype of the storage file
        - `fileUrl` string, uri, required — URL using file's storage key
        - `sizeInBytes` integer, required — Storage file size
    - `roomType` 'bedroom' | 'master_bedroom' | 'secondary_bedroom' | 'full_bathroom' | 'half_bathroom' | 'living_room' | 'family_room' | 'game_room' | 'recreation_room' | 'kitchen' | 'dining_room' | 'office' | 'home_gym' | 'walk_in' | 'closet' | 'pantry' | 'laundry' | 'mechanical_room' | 'entry' | 'mudroom' | 'corridor' | 'stair' | 'garage' | 'front_porch' | 'deck' | 'balcony' | 'outdoor' | 'any', nullable
    - `cameraPrompt` string, nullable
    - `inspirationImageAssetIds` string[]
  - `timestamp` string, date-time, required — Timestamp of the response

## Changes

- **2026-09-19** `28c2b3b6b3b4` — 2 breaking, 4 info
  - the response property `data/items/asset/metadata` became nullable for the status `200`
  - the `data/items/asset/metadata` response's property type changed from no type to `object` for status `200`
  - added the optional property `data/items/asset/metadata/adminUpload` to the response with the `200` status
  - added the optional property `data/items/asset/metadata/generation` to the response with the `200` status
  - …2 more

[Change history](https://skmtc.dev/maket/apis/virtual-architect-api/changes/v1/floorplans/:assetId/renders/get.md)

---

[API](https://skmtc.dev/maket/apis/virtual-architect-api.md) · [All operations](https://skmtc.dev/maket/apis/virtual-architect-api/llms.txt) · [OpenAPI document](https://skmtc.dev/maket/apis/virtual-architect-api/revisions/ad71cae36f29?raw)
