public HttpClient Create([NotNull] IRequestInfo requestInfo)
        {
            var client = httpClientFactory.CreateClient();

            client.DefaultRequestHeaders.Accept.Clear();
            client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

            if (requestInfo.RequiresAuthorization())
            {
                client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(
                    scheme: "Bearer",
                    parameter: requestInfo.Auth.JsonWebToken);
            }

            foreach (var header in requestInfo.Headers)
            {
                client.DefaultRequestHeaders.Add(header.Name, header.Value);
            }

            client.Timeout = requestInfo.Timeout;

            return(client);
        }