code: protected <L extends ListWrapper<T>, T extends SearchEntity> L handleSearchForEntitiesWithPost(Class<T> type, String query, Set<String> fieldSet,
                                                                                             SearchParams params) {
          Map<String, String> uriVariables = restUriVariablesFactory.getUriVariablesForSearchWithPost(BullhornEntityInfo.getTypesRestEntityName(type),
              fieldSet, params);
  
          String url = restUrlFactory.assembleSearchUrlWithPost(params);
          if (Candidate.class == type) {
              url = url + "&useV2=true";
          }
          JSONObject body = new JSONObject();
          body.put("query", query);
  
          return (L) this.performPostRequest(url,body.toString(), BullhornEntityInfo.getTypesListWrapperType(type), uriVariables);
  
      }
docs: Makes the "search" api call with POST instead of GET
  <p>
  HTTP Method: POST
  
  @param type     the BullhornEntity type
  @param query    Lucene query string
  @param fieldSet the fields to return, if null or empty will default to "*" all
  @param params   optional SearchParams .
  @return a LinsWrapper containing the records plus some additional information