public async Task <QueryResponse> PostQueryAsync(QueryRequest request) { using (var httpClient = HttpClientFactory.Create(AccessToken)) { var uri = new Uri($"{BaseUrl}/{request.ToHttpPostQueryString()}"); var queryRequestJson = ApiAiJson <QueryRequest> .Serialize(request); var httpResponseMessage = await httpClient.PostAsync(uri, new StringContent(queryRequestJson, Encoding.UTF8, "application/json")); var content = await httpResponseMessage.ToStringContentAsync(); return(ApiAiJson <QueryResponse> .Deserialize(content)); } }