this.search(query || {}, options || {}, function (error, data) {
      // has error ?
      if (error) {
        // reject
        deferred.reject(error);