public ApiResponseBase Search(MelissaSearchModel searchParams) { var result = new ApiResponseBase(); var searchResult = new SearchResult(); var data = string.Empty; try { FullContactResponse.RootObject detail = null; if (!string.IsNullOrEmpty(searchParams.Email)) { data = GetDataFromUrl(FullContactUrl + "/v2/person.json?email=" + searchParams.Email + "&apiKey=" + FullContactApiKey); } else if (!string.IsNullOrEmpty(searchParams.Phone)) { data = GetDataFromUrl(FullContactUrl + "/v2/person.json?phone=" + searchParams.Phone + "&apiKey=" + FullContactApiKey); } if (!string.IsNullOrEmpty(data)) { detail = JsonConvert.DeserializeObject <FullContactResponse.RootObject>(data, new JsonSerializerSettings { StringEscapeHandling = StringEscapeHandling.EscapeHtml }); searchResult.FullContact = detail; } if (detail != null) { var globalData = SearchGlobalemailMelissadataByMail(searchParams.Email); searchResult.GlobalemailMelissaData = globalData; searchResult.PersonatorMelissaData = SearchPersonatorMelissadataByMail(searchParams.Email); searchResult.CompanyFullContact = GetCompanyInfor($"{globalData.Records[0].DomainName}.{globalData.Records[0].TopLevelDomain}"); } result.Data = searchResult; } catch (Exception ex) { result.Errors.Add(ex.Message); } return(result); }
public ActionResult <ApiResponseBase> Search(MelissaSearchModel searchParams) { return(_melissaService.Search(searchParams)); }