/// <summary> /// Get matching refunds /// </summary> /// <param name="refund"></param> /// <param name="filter"></param> /// <returns></returns> public Pagerator <Refund> getRefunds(Refund refund = null, Filter filter = null) { Dictionary <String, String> queryStr = new Dictionary <String, String>(); if (refund != null && !String.IsNullOrWhiteSpace(refund.merchantRefNum())) { queryStr.Add("merchantRefNum", refund.merchantRefNum()); } if (filter != null) { if (filter.limit != null) { queryStr.Add("limit", filter.limit.ToString()); } if (filter.offset != null) { queryStr.Add("offset", filter.offset.ToString()); } if (!String.IsNullOrWhiteSpace(filter.startDate)) { queryStr.Add("startDate", filter.startDate); } if (!String.IsNullOrWhiteSpace(filter.endDate)) { queryStr.Add("endDate", filter.endDate); } } Request request = new Request( method: RequestType.GET, uri: this.prepareURI("/refunds"), queryString: queryStr ); dynamic response = this.client.processRequest(request); return(new Pagerator <Refund>(this.client, typeof(Refund), response)); }