public interface IHealthCheckFunction : IFunction { } public class HealthCheckFunction : FunctionBase, IHealthCheckFunction { ... // Dependency injections here public override async Task InvokeAsync( TInput input, functionOptionsBase options = null) { var result = (IActionResult)null; var requestUri = $"{this._settings.BaseUri.TrimEnd('/')}/{this._settings.Endpoints.HealthCheck.TrimStart('/')}"; using (var response = await this._httpClient.GetAsync(requestUri).ConfigureAwaitfalse)) { try { response.EnsureSuccessStatusCode(); result = new OkResult(); } catch (Exception ex) { var error = new ErrorResponse(ex); result = new ObjectResult(error) { StatusCode = (int)response.StatusCode }; } } return (TOutput)result; } }