---
title: "List rooms for a location"
method: GET
path: "/v1/location/{location_id}/rooms"
tags: ["Rooms"]
---

# List rooms for a location

`GET /v1/location/{location_id}/rooms`

## Request

- Base URL: `https://api.navigateai.co`
- URL: `https://api.navigateai.co/v1/location/{location_id}/rooms`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/navigate/apis/navigateai-api/docs/v1/location/:location_id/rooms/get.ts> (a function with typed inputs; its response is checked against the schema)

Returns the rooms currently available for the specified location, including overview images. Depending on your integration and property setup, this endpoint may return no results. If you expect room data for your locations and are not seeing it, contact NavigateAI.

## Path parameters

- `location_id` string, required

## Response `200`

OK

- ListRoomsResponse
  - `rooms` RoomExternalSchema[], required
    - `id` string, required
    - `name` string, required: Display name (e.g. 'Bedroom 2', 'Kitchen'). Not guaranteed to be stable over time.
    - `room_type_id` string, nullable: The type of room.
    - `room_type_name` string, nullable: Display name of the room type.
    - `reference_key` string, nullable: Your external identifier for this room.
    - `measurements` object, nullable: Physical measurements of the room; individual fields are null when unknown.
      - `area_sq_in` number, nullable: Room area in square inches.
      - `length_in` number, nullable: A horizontal dimension in inches.
      - `width_in` number, nullable: A horizontal dimension in inches.
    - `images` RoomImageExternalSchema[]: Representative overview images of the room.
      - `image_id` string, required: The [ID](/api-reference/assets/get-image) of the image.
      - `visit_id` string, nullable: The visit this image represents the room as of. Null for images that describe the room independent of any visit.
      - `purpose` string, required: What this image is for. `overview` for representative images of the room; other values are documented for your integration separately. New values may be added over time, so tolerate values you do not recognize.
    - `attributes` AttributeValueExternalSchema[]: Attribute values recorded for this room. Only attributes with recorded values appear; cleared values are omitted. Replace the entire list when syncing instead of merging by `slug`.
      - `attribute_id` string, required: ID of the attribute definition. It remains the same when the recorded value changes.
      - `attribute_slug` string, required: Stable key for the attribute within your organization. Use it to match attributes; display names can change.
      - `value_type` string, required: The attribute's declared type, which fixes how `value` is encoded. Current types are `bool`, `int`, `float`, `decimal`, `string`, `dimension_2d`, and `json_object`. A `decimal` is serialized as a string to preserve precision. A `dimension_2d` is a `[length, width]` pair, with the unit given in `unit`. New types may be added; handle unrecognized types.
      - `value` union, required: The recorded value, encoded according to `value_type`. A null value means the value was recorded as explicitly none, distinct from the attribute being absent from the list.
        - boolean
        - integer
        - number
        - string
        - JsonValue[]
          - unknown
        - object
      - `unit` string, nullable, required: Unit of measure for `value`, e.g. `inches` for a `dimension_2d`. Null when the value carries no unit.
      - `reasoning` string, nullable, required: Short explanation of how the value was determined. Null when none was recorded.
      - `evidence` ImageEvidenceExternalSchema[]: Images supporting the value, in ranked order.
        - `type` 'image'
        - `image_id` string, required: Use with the Get Image endpoint to retrieve the image file.
        - `reference_key` string, nullable: For an image from Upload an image, the `reference_key` you sent. Images captured in the NavigateAI app can have a value that the app set.
        - `visit_id` string, nullable: The visit this image was captured during. Null for images from Upload an image.
        - `is_selected` boolean: Whether this image was explicitly selected as evidence.
        - `is_starred` boolean: Whether this image was starred as the primary evidence photo.
      - `recorded_by_visit_id` string, nullable, required: The most recent completed visit that recorded this value, including a visit that recorded it unchanged. Null when the value was recorded outside a visit.
      - `recorded_at` string, date-time, nullable, required: When the value was last recorded: the recording visit's completion time, or the time of the write for a value recorded outside a visit.

## Changes

- **2026-09-02** `82c65d38042f`: 1 info
  - added the required property `rooms/items/images/items/purpose` to the response with the `200` status

[Operation history](https://skmtc.dev/navigate/apis/navigateai-api/changes/v1/location/:location_id/rooms/get.md)

---

[API](https://skmtc.dev/navigate/apis/navigateai-api.md) - [All operations](https://skmtc.dev/navigate/apis/navigateai-api/llms.txt) - [OpenAPI document](https://skmtc.dev/navigate/apis/navigateai-api/revisions/354d82f8ecfc?raw)
