# ReplaceAppFromIDAsync Method

## Overloads

| [ReplaceAppFromIDAsync(String, String, IEnumerable<String>)](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IHub.ReplaceAppFromIDAsync.htm#Qlik_Engine_IHub_ReplaceAppFromIDAsync_System_String_System_String_System_Collections_Generic_IEnumerable_System_String__) |  | Replaces objects of a target app with the objects from a source app.<br><br>The list of objects in the app to be replaced must be defined in `qIds`. |
| --- | --- | --- |
| [ReplaceAppFromIDAsync(AsyncHandle, String, String, IEnumerable<String>)](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IHub.ReplaceAppFromIDAsync.htm#Qlik_Engine_IHub_ReplaceAppFromIDAsync_Qlik_Engine_AsyncHandle_System_String_System_String_System_Collections_Generic_IEnumerable_System_String__) |  | Replaces objects of a target app with the objects from a source app.<br><br>The list of objects in the app to be replaced must be defined in `qIds`. |
| [ReplaceAppFromIDAsync<T>(AsyncHandle, Func<Response, T>, String, String, IEnumerable<String>)](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IHub.ReplaceAppFromIDAsync.htm#Qlik_Engine_IHub_ReplaceAppFromIDAsync__1_Qlik_Engine_AsyncHandle_System_Func_Qlik_Engine_Communication_IO_Response___0__System_String_System_String_System_Collections_Generic_IEnumerable_System_String__) |  | Replaces objects of a target app with the objects from a source app.<br><br>The list of objects in the app to be replaced must be defined in `qIds`. |

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

## ReplaceAppFromIDAsync(String, String, IEnumerable&lt;String&gt;)

Replaces objects of a target app with the objects from a source app.

The list of objects in the app to be replaced must be defined in `qIds`.

### Declaration

```

          Task<bool> ReplaceAppFromIDAsync([QixName("qTargetAppId")] string targetAppId, [QixName("qSrcAppID")] string srcAppID, [QixName("qIds")] IEnumerable<string> ids)
    
  
```

### Parameters

| Type | Name | Description |
| --- | --- | --- |
| System.String | targetAppId | Identifier (GUID) of the target app.<br>The target app is the app to be replaced. |
| System.String | srcAppID | Identifier (GUID) of the source app.<br>The objects in the source app will replace the objects in the target app. |
| System.Collections.Generic.IEnumerable&lt;System.String&gt; | ids | QRS identifiers (GUID) of the objects in the target app to be replaced. Only QRS-approved GUIDs are applicable.<br>An object that is QRS-approved, is for example an object that has been published (for example, not private anymore).<br>If an object is private, it should not be included in this list.<br>If the array of identifiers contains objects that are not present in the source app, the objects related to these identifiers are removed from the target app.<br>If `qIds` is empty, no objects are deleted in the target app. |

### Returns

| Type | Description |
| --- | --- |
| System.Threading.Tasks.Task&lt;System.Boolean&gt; |  |

### Remarks

The data model of the app cannot be updated.

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

## ReplaceAppFromIDAsync(AsyncHandle, String, String, IEnumerable&lt;String&gt;)

Replaces objects of a target app with the objects from a source app.

The list of objects in the app to be replaced must be defined in `qIds`.

### Declaration

```

          Task<bool> ReplaceAppFromIDAsync(AsyncHandle asyncHandle, [QixName("qTargetAppId")] string targetAppId, [QixName("qSrcAppID")] string srcAppID, [QixName("qIds")] IEnumerable<string> ids)
    
  
```

### 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 | targetAppId | Identifier (GUID) of the target app.<br>The target app is the app to be replaced. |
| System.String | srcAppID | Identifier (GUID) of the source app.<br>The objects in the source app will replace the objects in the target app. |
| System.Collections.Generic.IEnumerable&lt;System.String&gt; | ids | QRS identifiers (GUID) of the objects in the target app to be replaced. Only QRS-approved GUIDs are applicable.<br>An object that is QRS-approved, is for example an object that has been published (for example, not private anymore).<br>If an object is private, it should not be included in this list.<br>If the array of identifiers contains objects that are not present in the source app, the objects related to these identifiers are removed from the target app.<br>If `qIds` is empty, no objects are deleted in the target app. |

### Returns

| Type | Description |
| --- | --- |
| System.Threading.Tasks.Task&lt;System.Boolean&gt; |  |

### Remarks

The data model of the app cannot be updated.

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

## ReplaceAppFromIDAsync&lt;T&gt;(AsyncHandle, Func&lt;Response, T&gt;, String, String, IEnumerable&lt;String&gt;)

Replaces objects of a target app with the objects from a source app.

The list of objects in the app to be replaced must be defined in `qIds`.

### Declaration

```
Task<T> ReplaceAppFromIDAsync<T>(AsyncHandle asyncHandle, Func<Response, T> onResult, [QixName("qTargetAppId")] string targetAppId, [QixName("qSrcAppID")] string srcAppID, [QixName("qIds")] IEnumerable<string> ids)
```

### 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.Func&lt;[Response](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/NetSDKAPIref/Content/Qlik.Engine.Communication.IO.Response.htm), T&gt; | onResult | Continuation function |
| System.String | targetAppId | Identifier (GUID) of the target app.<br>The target app is the app to be replaced. |
| System.String | srcAppID | Identifier (GUID) of the source app.<br>The objects in the source app will replace the objects in the target app. |
| System.Collections.Generic.IEnumerable&lt;System.String&gt; | ids | QRS identifiers (GUID) of the objects in the target app to be replaced. Only QRS-approved GUIDs are applicable.<br>An object that is QRS-approved, is for example an object that has been published (for example, not private anymore).<br>If an object is private, it should not be included in this list.<br>If the array of identifiers contains objects that are not present in the source app, the objects related to these identifiers are removed from the target app.<br>If `qIds` is empty, no objects are deleted in the target app. |

### Returns

| Type | Description |
| --- | --- |
| System.Threading.Tasks.Task&lt;T&gt; |  |

### Type Parameters

| Name | Description |
| --- | --- |
| T |  |

### Remarks

The data model of the app cannot be updated.