diff --git a/server/AyaNova/Controllers/LicenseController.cs b/server/AyaNova/Controllers/LicenseController.cs index 61cb238c..52c67f17 100644 --- a/server/AyaNova/Controllers/LicenseController.cs +++ b/server/AyaNova/Controllers/LicenseController.cs @@ -299,6 +299,22 @@ namespace AyaNova.Api.Controllers return NoContent(); } + /// + /// Get status of licensed integration feature + /// + /// Integration feature name + /// true if feature is available + [HttpGet("has-feature/{feature}")] + public ActionResult GetHasLicensedFeature([FromRoute] string feature) + { + if (!serverState.IsOpen) + return StatusCode(503, new ApiErrorResponse(serverState.ApiErrorCode, null, serverState.Reason)); + //any authenticated user can check if a feature is available since we don't know what optional add-on's will be created in future and for which roles + //safest and logical to just work for any logged in user + return Ok(ApiOkResponse.Response(AyaNova.Core.License.ActiveKey.HasLicenseFeature(feature))); + } + + //------------------------------------------------------