public SearchResults Search(SearchQuery query, PaginationRequest paginationRequest = null) { if (paginationRequest == null) { paginationRequest = new PaginationRequest(); } StringBuilder queryString = new StringBuilder(); paginationRequest.AddQueryParams(queryString); query.AddQueryParams(queryString); string response = this.DownloadString(this.baseUrl + "database/search" + queryString); this.UpdateRateLimit(); return(new DataReader3(this.StrictReading).ReadSearchResults(JObject.Parse(response))); }