# IRPCClientScript.GetClientScriptApplicationsDetails

Location: [gRPC API](https://developer.m-files.com/APIs/gRPC-API/index.md) > [Vault API](https://developer.m-files.com/APIs/gRPC-API/vault/index.md) > [Client scripts and UI extension applications](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCClientScript/index.md)

HTML version: https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCClientScript/GetClientScriptApplicationsDetails/

Badges: `Vault API / standard` `read` `session` `idempotent`

Lists the enabled UI extension applications of the new M-Files clients with their modules,
files and dashboards.

- **Service:** [Client scripts and UI extension applications](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCClientScript/index.md) `MFiles.IRPCClientScript`
- **gRPC method:** `/MFiles.IRPCClientScript/GetClientScriptApplicationsDetails`
- **HTTP (mf-http-grpc):** `POST /grpc/v1/get-client-script-applications-details`
- **Request:** [`GetClientScriptApplicationsDetailsRequest`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCClientScript/GetClientScriptApplicationsDetails/index.md#request)
- **Response:** [`GetClientScriptApplicationsDetailsResponse`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCClientScript/GetClientScriptApplicationsDetails/index.md#response)
- **Book and level:** Vault API, standard
- **Kind:** read
- **Session:** Required: the session ID from LogIn in the mfiles-session-id-bin metadata.
- **Idempotent:** yes
- **Returns metadata structure version:** no
- **Streaming:** none (unary)

<a id="remarks"></a>

## Remarks

- Used by the M-Files clients to load UI extension applications; applications rarely call it.
- `platform` must be `EXT_APPLICATION_PLATFORM_VNEXT` or `EXT_APPLICATION_PLATFORM_ADMIN`; other
  values fail with "The given platform is not supported.".
- Only client applications that support `EXT_APPLICATION_PLATFORM_VNEXT` are returned.
- Download a file of an application with
  [GetDownloadSessionIdOfScriptApplicationFile](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCClientScript/GetDownloadSessionIdOfScriptApplicationFile/index.md).

<a id="request"></a>

## Request: GetClientScriptApplicationsDetailsRequest

A structure that specifies applications detail request.

> Nested message fields are expanded to depth 3; follow a type link for deeper levels and for the type's own page.

| Field | Type | Description |
|---|---|---|
| `platform` | [`ExtApplicationPlatform`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.ExtApplicationPlatform/index.md) | `EXT_APPLICATION_PLATFORM_VNEXT` or `EXT_APPLICATION_PLATFORM_ADMIN`. Values: `EXT_APPLICATION_PLATFORM_NONE` (0), `EXT_APPLICATION_PLATFORM_DESKTOP` (1), `EXT_APPLICATION_PLATFORM_WEB` (2), `EXT_APPLICATION_PLATFORM_SHARE_POINT_ADD_ON` (4), `EXT_APPLICATION_PLATFORM_VNEXT` (8), `EXT_APPLICATION_PLATFORM_MWIDGET` (16), `EXT_APPLICATION_PLATFORM_ADMIN` (32). |

<a id="response"></a>

## Response: GetClientScriptApplicationsDetailsResponse

A structure that specifies applications detail response.

> Nested message fields are expanded to depth 3; follow a type link for deeper levels and for the type's own page.

| Field | Type | Description |
|---|---|---|
| `applications[]` | repeated [`ExtApplicationDef`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ExtApplicationDef/index.md) | The applications with their modules and dashboards. See [ExtApplicationDef](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ExtApplicationDef/index.md). |
| `applications[].application` | [`ExtApplication`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ExtApplication/index.md) | The script application information. |
| `applications[].application.guid` | `string` | The application identifier. |
| `applications[].application.name` | `string` | The application name. |
| `applications[].application.version` | `string` | The application version (author set). |
| `applications[].application.description` | `string` | The application name. |
| `applications[].application.publisher` | `string` | The application publisher. |
| `applications[].application.is_enabled` | `bool` | True if the application is enabled. Note: this is a user-specific value and is not stored with the application data. Relevant for client applications only. |
| `applications[].application.is_optional` | `bool` | True if the application is optional (i.e. can be disabled). Relevant for client applications only. |
| `applications[].application.requires_system_access` | `bool` | True if this application requires system access. Relevant for client applications only. |
| `applications[].application.md5_checksum` | `string` | The application checksum (hash value). |
| `applications[].application.master_application` | `string` | The guid for the master application. GUID_NULL if there is no master application. |
| `applications[].application.type` | [`ExtApplicationType`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.ExtApplicationType/index.md) | The application type. Values: `EXT_APPLICATION_TYPE_UNSPECIFIED` (0), `EXT_APPLICATION_TYPE_CLIENT` (1), `EXT_APPLICATION_TYPE_SERVER` (2). |
| `applications[].application.is_multi_server_compatible` | `bool` | Indicates if application has been designed to work in multi-server environment. |
| `applications[].application.published_at` | [`google.protobuf.Timestamp`](https://protobuf.dev/reference/protobuf/google.protobuf/#timestamp) | Publishing date. Zero values if date has not been defined. |
| `applications[].application.platforms` | `int32` | The binary value of the application platfroms supported. |
| `applications[].application.vault_app_dependencies[]` | repeated [`VaultApplicationDependency`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.VaultApplicationDependency/index.md) | Vault application dependencies. |
| `applications[].application.is_signed_and_verified` | `bool` | True if the application is signed and has been verified. |
| `applications[].application.hot_swappable` | `bool` | True if the application can be deployed without vault restart. Applicable for server-side vault applications only. |
| `applications[].modules[]` | repeated [`ExtAppModuleDef`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ExtAppModuleDef/index.md) | The script application modules and files. |
| `applications[].modules[].application_guid` | `string` | The application identifier. |
| `applications[].modules[].script_engine` | [`ExtAppEngine`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.ExtAppEngine/index.md) | The script engine that can run this module. Values: `EXT_APP_ENGINE_UNKNOWN` (0), `EXT_APP_ENGINE_SHELL_UI` (1), `EXT_APP_ENGINE_VAULT_UI` (2), `EXT_APP_ENGINE_VAULT_CORE` (3). |
| `applications[].modules[].application_path` | `string` | Path to the application folder. |
| `applications[].modules[].module_name` | `string` | The module name. |
| `applications[].modules[].script_engine_definition` | `string` | The engine defintion for script engine that runs this module. |
| `applications[].modules[].event_priority` | `int32` | The event priority for this module. |
| `applications[].modules[].fast_browsing_compatible` | `bool` | Tells if the module is fast-browsing compatible. Effective only for shellui modules. |
| `applications[].modules[].files[]` | repeated `string` | Array of file names (String). Relative to the application path. |
| `applications[].modules[].sandbox_attributes` | `string` | The sandbox attributes. |
| `applications[].dashboards[]` | repeated [`ExtAppDashboardDef`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.ExtAppDashboardDef/index.md) | The script application dashboards. |
| `applications[].dashboards[].application_guid` | `string` | The application identifier. |
| `applications[].dashboards[].dashboard_id` | `string` | The dashboard ID. |
| `applications[].dashboards[].application_path` | `string` | Path to the application folder. |
| `applications[].dashboards[].dashboard_name` | `string` | The dashboard name. |
| `applications[].dashboards[].content_file` | `string` | The initial content file for the dashboard. Relative to the application path. |
| `applications[].dashboards[].event_priority` | `int32` | The event priority for this dashboard. |
| `applications[].dashboards[].trusted_content_urls[]` | repeated `string` | Array of trusted contents (String). |
| `applications[].dashboards[].internal_app` | `bool` | True if the application is launched as an internal application. This relaxes some validations. |
| `applications[].dashboards[].allow_text_selection` | `bool` | True to allow text selection in browser. |
| `applications[].dashboards[].icon_path` | `string` | Path to application's icon. |
| `applications[].dashboards[].icon_selected_path` | `string` | Path to application's icon when it is selected. |
| `applications[].dashboards[].sandbox_attributes` | `string` | The sandbox attributes. |

<a id="related"></a>

## Related methods

- [GetDownloadSessionIdOfScriptApplicationFile](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCClientScript/GetDownloadSessionIdOfScriptApplicationFile/index.md): Starts downloading one file of a UI extension application of the new M-Files clients.
