# INxAppLayout Interface

Namespace: [Qlik.Engine](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.htm)  
Assembly: Qlik.Engine.dll

#### Qlik Sense Desktop

In Qlik Sense Desktop, this structure can contain dynamic properties.

#### Qlik Sense Enterprise

In Qlik Sense Enterprise, only a few dynamic properties at the app level are persisted.

The persisted dynamic properties are the following:

* modifiedDate
* published
* publishTime
* privileges
* description
* dynamicColor

## Syntax

```
[ValueClass]
public interface INxAppLayout : IAbstractStructure
```

## Properties

| Name | Description |
| --- | --- |
| [FileName](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.FileName.htm#Qlik_Engine_INxAppLayout_FileName) | In Qlik Sense Enterprise, this property corresponds to the app identifier (GUID).<br><br>In Qlik Sense Desktop, this property corresponds to the full path of the app.<br><br>JSON property name: qFileName |
| [HasData](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.HasData.htm#Qlik_Engine_INxAppLayout_HasData) | Is set to true if the app contains data following a script reload.<br><br>JSON property name: qHasData |
| [HasScript](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.HasScript.htm#Qlik_Engine_INxAppLayout_HasScript) | Is set to true if a script is defined in the app.<br><br>JSON property name: qHasScript |
| [IsBDILiveMode](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.IsBDILiveMode.htm#Qlik_Engine_INxAppLayout_IsBDILiveMode) | If set to true, the app is in BDI Direct Query Mode.<br><br>JSON property name: qIsBDILiveMode |
| [IsDirectQueryMode](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.IsDirectQueryMode.htm#Qlik_Engine_INxAppLayout_IsDirectQueryMode) | If set to true, the app is in Direct Query Mode.<br><br>JSON property name: qIsDirectQueryMode |
| [IsOpenedWithoutData](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.IsOpenedWithoutData.htm#Qlik_Engine_INxAppLayout_IsOpenedWithoutData) | If set to true, it means that the app was opened without loading its data.<br><br>JSON property name: qIsOpenedWithoutData |
| [IsSessionApp](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.IsSessionApp.htm#Qlik_Engine_INxAppLayout_IsSessionApp) | If set to true, the app is a Session App, i.e. not persistent.<br><br>JSON property name: qIsSessionApp |
| [LastReloadTime](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.LastReloadTime.htm#Qlik_Engine_INxAppLayout_LastReloadTime) | Date and time of the last reload of the app in ISO format.<br><br>JSON property name: qLastReloadTime |
| [LocaleInfo](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.LocaleInfo.htm#Qlik_Engine_INxAppLayout_LocaleInfo) | Information about the locale.<br><br>JSON property name: qLocaleInfo |
| [Meta](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.Meta.htm#Qlik_Engine_INxAppLayout_Meta) | Information on publishing and permissions.<br><br>JSON property name: qMeta |
| [Modified](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.Modified.htm#Qlik_Engine_INxAppLayout_Modified) | Is set to true if the app has been updated since the last save.<br><br>JSON property name: qModified |
| [ProhibitBinaryLoad](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.ProhibitBinaryLoad.htm#Qlik_Engine_INxAppLayout_ProhibitBinaryLoad) | If set to true, the persisted app cannot be used in a Binary load statement in Qlik load script.<br><br>JSON property name: qProhibitBinaryLoad |
| [ReadOnly](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.ReadOnly.htm#Qlik_Engine_INxAppLayout_ReadOnly) | If set to true, it means that the app is read-only.<br><br>JSON property name: qReadOnly |
| [StateNames](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.StateNames.htm#Qlik_Engine_INxAppLayout_StateNames) | Array of alternate states.<br><br>JSON property name: qStateNames |
| [Thumbnail](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.Thumbnail.htm#Qlik_Engine_INxAppLayout_Thumbnail) | App thumbnail.<br><br>JSON property name: qThumbnail |
| [Title](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.Title.htm#Qlik_Engine_INxAppLayout_Title) | Title of the app.<br><br>JSON property name: qTitle |
| [UnsupportedFeatures](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.UnsupportedFeatures.htm#Qlik_Engine_INxAppLayout_UnsupportedFeatures) | Array of features not supported by the app.<br><br>JSON property name: qUnsupportedFeatures |
| [Usage](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.INxAppLayout.Usage.htm#Qlik_Engine_INxAppLayout_Usage) | JSON property name: qUsage |