code: public Response makeRequest(Request serviceRequest) throws BadRequestException {
  
  		logger.debug("Enter HttpRequestClient::makeRequest");
  
  		// prepare request
  		RequestBuilder builder = RequestBuilder.create(serviceRequest.getMethod().toString())
  				.setUri(serviceRequest.getUrl()).setVersion(HttpVersion.HTTP_1_1).setCharset(StandardCharsets.UTF_8);
  
  		builder.addHeader("Request-Id", serviceRequest.getContext().getRequestId());
  
  		// add auth header
  		if (!serviceRequest.isIgnoreAuthHeader()) {
  			builder.addHeader(HttpHeaders.AUTHORIZATION, "Bearer " + serviceRequest.getContext().getAccessToken());
  		}
  
  		MethodType method = serviceRequest.getMethod();
  		if (method == MethodType.POST) {
  			// add post json
  			HttpEntity entity = new StringEntity(serviceRequest.getPostJson(), "UTF-8");
  			builder.setEntity(entity);
  		}
  
  		logger.debug("Request URI : " + builder.getUri());
  		logger.debug("Http Method : " + builder.getMethod());
  		
  		HttpResponse httpResponse = null;
  		try {
  			// make the call
  			httpResponse = client.execute(builder.build());
  			
  			// prepare response
  			return new Response(httpResponse.getStatusLine().getStatusCode(), getResult(httpResponse), getIntuitTid(httpResponse));
  
  		} catch (IOException e) {
  			logger.error("Exception while making httpRequest", e);
  			throw new BadRequestException(e.getMessage());
  		} finally {
  			//close
  			HttpClientUtils.closeQuietly(httpResponse);
  		}
  	}
docs: Method to make the HTTP request call using the request attributes
  supplied
  
  @param request
  @return
  @throws BadRequestException