public CfdiSearchResults[] List(string keyword, CfdiStatus status = CfdiStatus.Active, InvoiceType type = InvoiceType.Issued)
        {
            keyword = HttpUtility.UrlEncode(keyword);
            var request = new RestRequest($"{UriResource}Cfdi?type={type}&keyword={keyword}&status={status}", Method.GET);

            request.AddHeader("Content-Type", "application/json");

            var taskCompletionSource = new TaskCompletionSource <IRestResponse>();

            HttpClient.ExecuteAsync(request, restResponse => taskCompletionSource.SetResult(restResponse));

            var response = taskCompletionSource.Task.Result;
            var file     = JsonConvert.DeserializeObject <CfdiSearchResults[]>(response.Content);

            return(file);
        }
        public CfdiSearchResults[] List(int folioStart = -1, int folioEnd = -1,
                                        string rfc        = null, string taxEntityName = null,
                                        string dateStart  = "", string dateEnd         = "",
                                        string idBranch   = "", string serie           = "",
                                        CfdiStatus status = CfdiStatus.Active, InvoiceType type = InvoiceType.Issued)
        {
            var request = new RestRequest($"{UriResource}Cfdi?type={type}&status={status}&folioStart={folioStart}&folioEnd={folioEnd}&rfc={rfc}&taxEntityName={taxEntityName}&dateStart={dateStart}&dateEnd={dateEnd}&idBranch={idBranch}&serie={serie}", Method.GET);

            request.AddHeader("Content-Type", "application/json");

            var taskCompletionSource = new TaskCompletionSource <IRestResponse>();

            HttpClient.ExecuteAsync(request, restResponse => taskCompletionSource.SetResult(restResponse));

            var response = taskCompletionSource.Task.Result;
            var list     = JsonConvert.DeserializeObject <CfdiSearchResults[]>(response.Content);

            return(list);
        }