# IRPCClientScript.GetVaultApplicationLicenseStatus

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/GetVaultApplicationLicenseStatus/

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

Gets the license status of a vault application, or checks a license before installing it.

- **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/GetVaultApplicationLicenseStatus`
- **HTTP (mf-http-grpc):** `POST /grpc/v1/get-vault-application-license-status`
- **Request:** [`GetVaultApplicationLicenseStatusRequest`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCClientScript/GetVaultApplicationLicenseStatus/index.md#request)
- **Response:** [`GetVaultApplicationLicenseStatusResponse`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCClientScript/GetVaultApplicationLicenseStatus/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

- Requires the vault right `change_metadata_structure`.
- The status comes from the running application. If the application is not running (for
  example, it is disabled), the status is `APPLICATION_LICENSE_STATUS_INSTALLED` or
  `APPLICATION_LICENSE_STATUS_NOT_INSTALLED` depending on whether a license is stored.
- With `use_new_license` the application evaluates `new_license` without storing it.

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

## Request: GetVaultApplicationLicenseStatusRequest

> 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 |
|---|---|---|
| `application_guid` | `string` | The GUID of the application. |
| `use_new_license` | `bool` | True to evaluate `new_license` instead of the installed license. |
| `new_license` | `string` | The license to evaluate when `use_new_license` is true. |
| `return_details` | `bool` | True to get a description of the status in `details`. |

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

## Response: GetVaultApplicationLicenseStatusResponse

> 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 |
|---|---|---|
| `status` | [`ApplicationLicenseStatus`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.ApplicationLicenseStatus/index.md) | The license status of the application. Values: `APPLICATION_LICENSE_STATUS_UNKNOWN` (0), `APPLICATION_LICENSE_STATUS_NOT_NEEDED` (1), `APPLICATION_LICENSE_STATUS_NOT_INSTALLED` (2), `APPLICATION_LICENSE_STATUS_INSTALLED` (3), `APPLICATION_LICENSE_STATUS_VALID` (4), `APPLICATION_LICENSE_STATUS_INVALID` (5), `APPLICATION_LICENSE_STATUS_FORMAT_ERROR` (6), `APPLICATION_LICENSE_STATUS_TRIAL` (7), `APPLICATION_LICENSE_STATUS_GRACE_PERIOD` (8). |
| `details` | `string` | With `return_details`, a description of the status. |

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

## Related methods

- [GetVaultApplicationLicense](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCClientScript/GetVaultApplicationLicense/index.md): Not implemented: always returns an empty `license`.
