docs: private <T extends CCBAPIResponse> T makeRequest(final String api, final Map<String, String> params,
                                                       final String form, final Class<T> clazz)
              throws IOException {
  
          byte[] payload = null;
          if (form != null) {
              payload = form.getBytes(StandardCharsets.UTF_8);
          }
  
          final InputStream entity = httpClient.sendPostRequest(makeURI(api, params), payload);
          try {
              T response = xmlBinder.bindResponseXML(entity, clazz);
              if (response.getErrors() != null && response.getErrors().size() > 0) {
                  throw new CCBErrorResponseException(response.getErrors());
              }
              return response;
          } finally {
              if (entity != null) {
                  entity.close();
              }
          }
      }