public static new FunctionsFhirResult NoContent()
        {
            FunctionsFhirResult fhirResult = new FunctionsFhirResult();

            fhirResult.StatusCode = HttpStatusCode.NoContent;
            return(fhirResult);
        }
        public static new FunctionsFhirResult NotFound()
        {
            FunctionsFhirResult fhirResult = new FunctionsFhirResult();

            fhirResult.StatusCode = HttpStatusCode.NotFound;
            return(fhirResult);
        }
        public static new FunctionsFhirResult Gone()
        {
            FunctionsFhirResult fhirResult = new FunctionsFhirResult();

            fhirResult.StatusCode = HttpStatusCode.Gone;
            return(fhirResult);
        }
        public static new FunctionsFhirResult Create(ResourceElement resource, HttpStatusCode statusCode = HttpStatusCode.OK)
        {
            EnsureArg.IsNotNull(resource, nameof(resource));

            FunctionsFhirResult fhirResult = new FunctionsFhirResult(resource);

            fhirResult.StatusCode = statusCode;
            return(fhirResult);
        }
        public async Task <IActionResult> Metadata(
            [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = null)]
            HttpRequest req)
        {
            EnsureArg.IsNotNull(req);

            var response = await _mediator.Send(new GetCapabilitiesRequest());

            return(FunctionsFhirResult.Create(response.CapabilityStatement));
        }