# AppAsync Method

## Overloads

| [AppAsync(String, SessionToken, Boolean)](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.QcsLocation.AppAsync.htm#Qlik_Engine_QcsLocation_AppAsync_System_String_Qlik_Engine_SessionToken_System_Boolean_) |  | Connect to a Qlik Sense app.<br><br>This method opens a websocket connection. |
| --- | --- | --- |
| [AppAsync(AsyncHandle, String, SessionToken, Boolean)](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.QcsLocation.AppAsync.htm#Qlik_Engine_QcsLocation_AppAsync_Qlik_Engine_AsyncHandle_System_String_Qlik_Engine_SessionToken_System_Boolean_) |  | Connect to a Qlik Sense app.<br><br>This method opens a websocket connection. |
| [AppAsync(AsyncHandle, String, Action<IHub>, SessionToken, Boolean)](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.QcsLocation.AppAsync.htm#Qlik_Engine_QcsLocation_AppAsync_Qlik_Engine_AsyncHandle_System_String_System_Action_Qlik_Engine_IHub__Qlik_Engine_SessionToken_System_Boolean_) |  | Connect to a Qlik Sense app. The `onConnectionEstablished` callback can be used to access an `IHub` instance while the app is being opened.<br><br>This method opens a websocket connection. |

[](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.QcsLocation.AppAsync.htm) [](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.QcsLocation.AppAsync.htm)

## AppAsync(String, SessionToken, Boolean)

Connect to a Qlik Sense app.

This method opens a websocket connection.

### Declaration

```

          public Task<IApp> AppAsync(string appId, SessionToken sessionToken = null, bool noData = false)
    
  
```

### Parameters

| Type | Name | Description |
| --- | --- | --- |
| System.String | appId | The ID of the app to open. |
| [SessionToken](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.SessionToken.htm) | sessionToken | Session identification token. A value of `null` is equivalent to `Session.Default()`. |
| System.Boolean | noData | Open the app without data. |

### Returns

| Type | Description |
| --- | --- |
| System.Threading.Tasks.Task&lt;[IApp](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IApp.htm)&gt; | A task with an IApp instance as result. |

### Implements

[IQcsLocation.AppAsync(String, SessionToken, Boolean)](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IQcsLocation.AppAsync.htm#Qlik_Engine_IQcsLocation_AppAsync_System_String_Qlik_Engine_SessionToken_System_Boolean_)

[](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.QcsLocation.AppAsync.htm) [](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.QcsLocation.AppAsync.htm)

## AppAsync(AsyncHandle, String, SessionToken, Boolean)

Connect to a Qlik Sense app.

This method opens a websocket connection.

### Declaration

```

          public Task<IApp> AppAsync(AsyncHandle asyncHandle, string appId, SessionToken sessionToken = null, bool noData = false)
    
  
```

### Parameters

| Type | Name | Description |
| --- | --- | --- |
| [AsyncHandle](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.AsyncHandle.htm) | asyncHandle | Handle to asynchronous method request. |
| System.String | appId | The ID of the app to open. |
| [SessionToken](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.SessionToken.htm) | sessionToken | Session identification token. A value of `null` is equivalent to `Session.Default()`. |
| System.Boolean | noData | Open the app without data. |

### Returns

| Type | Description |
| --- | --- |
| System.Threading.Tasks.Task&lt;[IApp](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IApp.htm)&gt; | A task with an IApp instance as result. |

### Implements

[IQcsLocation.AppAsync(AsyncHandle, String, SessionToken, Boolean)](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IQcsLocation.AppAsync.htm#Qlik_Engine_IQcsLocation_AppAsync_Qlik_Engine_AsyncHandle_System_String_Qlik_Engine_SessionToken_System_Boolean_)

[](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.QcsLocation.AppAsync.htm) [](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.QcsLocation.AppAsync.htm)

## AppAsync(AsyncHandle, String, Action&lt;IHub&gt;, SessionToken, Boolean)

Connect to a Qlik Sense app. The `onConnectionEstablished` callback can be used to access an `IHub` instance while the app is being opened.

This method opens a websocket connection.

### Declaration

```
public Task<IApp> AppAsync(AsyncHandle asyncHandle, string appId, Action<IHub> onConnectionEstablished, SessionToken sessionToken = null, bool noData = false)
```

### Parameters

| Type | Name | Description |
| --- | --- | --- |
| [AsyncHandle](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.AsyncHandle.htm) | asyncHandle | Handle to asynchronous method request. |
| System.String | appId | The ID of the app to open. |
| System.Action&lt;[IHub](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IHub.htm)&gt; | onConnectionEstablished | Callback to use when connection has been established. |
| [SessionToken](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.SessionToken.htm) | sessionToken | Session identification token. A value of `null` is equivalent to `Session.Default()`. |
| System.Boolean | noData | Open the app without data. |

### Returns

| Type | Description |
| --- | --- |
| System.Threading.Tasks.Task&lt;[IApp](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IApp.htm)&gt; | A task with an IApp instance as result. |

### Implements

[IQcsLocation.AppAsync(AsyncHandle, String, Action<IHub>, SessionToken, Boolean)](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IQcsLocation.AppAsync.htm#Qlik_Engine_IQcsLocation_AppAsync_Qlik_Engine_AsyncHandle_System_String_System_Action_Qlik_Engine_IHub__Qlik_Engine_SessionToken_System_Boolean_)