code: public List<DbxEntry> searchFileAndFolderNames(String basePath, String query)
          throws DbxException
      {
          DbxPathV1.checkArg("basePath", basePath);
          if (query == null) throw new IllegalArgumentException("'query' can't be null");
          if (query.length() == 0) throw new IllegalArgumentException("'query' can't be empty");
  
          String apiPath = "1/search/auto" + basePath;
          String[] params = {"query", query};
  
          return doPost(host.getApi(), apiPath, params, null, new DbxRequestUtil.ResponseHandler<List<DbxEntry>>()
          {
              @Override
              public List<DbxEntry> handle(HttpRequestor.Response response)
                  throws DbxException
              {
                  if (response.getStatusCode() != 200) throw DbxRequestUtil.unexpectedStatus(response);
                  return DbxRequestUtil.readJsonFromResponse(JsonArrayReader.mk(DbxEntry.Reader), response);
              }
          });
      }
docs: Returns metadata for all files and folders whose name matches the query string.
  
  @param basePath
  The path to search under (recursively).  Pass in {@code "/"} to search everything.
  @param query
  A space-separated list of substrings to search for.  A file matches only if it contains
  all the substrings.
  @return
  The list of metadata entries that match the search query.