public async Task <IActionResult> InteractiveTranslateAsync(string locatorType, string locator, [FromBody] string[] segment) { Engine engine = await _engines.GetByLocatorAsync(GetLocatorType(locatorType), locator); if (engine == null) { return(NotFound()); } if (!await AuthorizeAsync(engine, Operations.Read)) { return(StatusCode(StatusCodes.Status403Forbidden)); } HybridInteractiveTranslationResult result = await _engineService.InteractiveTranslateAsync(engine.Id, segment); if (result == null) { return(NotFound()); } return(Ok(CreateDto(result, segment))); }