# Solution Details Interface

### Types

Every location in MapsIndoors belongs to exactly one Type. Types define what a location *is* — a Meeting Room, a Toilet, a Coffee Machine — and act as the default source for its icon, Display Rules, and restrictions. Changes made to a Type cascade down to every location using it, unless that location has its own overrides.

<figure><img src="/files/4Dzuht5eO9mDASiIF3Fq" alt=""><figcaption></figcaption></figure>

From the Types list you can:

* **Create a new Type** using the button in the top right.
* **Select multiple Types** with the checkboxes for bulk deletion.
* **Edit a Type** (pencil icon) to change its name, selectable status, App User Role restrictions, Custom Properties, and optionally sync changes to other Solutions.
* **Edit Display Rules** (display rules icon) to control how locations of this Type appear on the map — icon, label, polygon, visibility, and zoom thresholds.

Each row in the list shows the Type's icon, display name, Administrative ID, how many locations use it, and whether its general visibility is set to visible or not visible.

> **Tip:** If you want a Type to exist in the data but never show on the map by default, set its General Visibility to **Not Visible** here. Individual locations can still override this.

***

### Categories

Categories group locations for browsing in your app — regardless of their Type. A location belongs to exactly one Type, but can belong to any number of Categories. For example, a cafeteria might be of Type "Canteen" while belonging to both the "Food" and "Leisure" categories.

<figure><img src="/files/l6NpUlPBVMLv8VTnAdfD" alt=""><figcaption></figcaption></figure>

From the Categories list you can:

* **Create a new Category** using the button in the top right.
* **Edit a Category** (pencil icon) to update its name and translations.

Each row shows the Category name and its Category Key — a stable identifier used in the API and App Configuration.

> **Tip:** Category order and icon visibility for your app are managed separately under **App Settings → App Configuration**. That's where you control what shows in your app's browse menu.

***

### Buildings

This page lists every Building in the currently selected Venue. Select a different Venue using the selector at the top of the page.

Edit a Building (pencil icon) to update:

* **Building Name** — supports multiple languages
* **Address**
* **Searchable** — whether the building appears in search results
* **External ID** — for integration with external systems
* **Floors** — rename each floor and toggle its searchability individually
* **Default Floor** — the floor shown first when a user navigates to this building
* **Building Photo** — choose from the Media Library or enter a URL
* **Custom Properties** — key-value pairs for developer use

Each row shows the building's name, Administrative ID, and address.

***

### Venues

This page lists all Venues in your Solution.

Edit a Venue (pencil icon) to update:

* **Venue Name** — supports multiple languages
* **Venue Photo** — choose from the Media Library or enter a URL
* **Searchable** — whether the venue appears in search results
* **External ID** — for integration with external systems
* **Default Floor** — set by floor index; the list includes all floor indexes found across all buildings in the Venue
* **Custom Properties** — key-value pairs for developer use

Each row shows the venue name and Venue ID.

***

### App Settings

[App Settings](/cms/interface/solution-details-interface/app-settings.md) contains configuration for general app behavior, map provider settings, kiosk-related options, styling, and the initial map view shown to users when the app opens.

See [App Settings](/cms/interface/solution-details-interface/app-settings.md) for full documentation.

***

### Solution Settings

[Solution Settings](#solution-settings) contains advanced styling configuration that applies across your entire solution — including the Main Display Rule and Building Highlight settings.

[See Solution Settings for full documentation.](#solution-settings)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mapsindoors.com/cms/interface/solution-details-interface.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
