Example #1
0
 public async Task <IActionResult> Search([FromBody] IdentityCheckRequest request)
 {
     if (request == null)
     {
         return(BadRequest());
     }
     return(Ok(await _offenderLookup.OffenderIdentityCheck(request)));
 }
 public async Task <IActionResult> IdentityCheck([FromBody] IdentityCheckRequest request)
 {
     if (request == null)
     {
         return(BadRequest());
     }
     return(Ok(await _whitePagesApiService.IdentityCheck(request)));
 }
Example #3
0
        public async Task <IdentityCheckResponse> IdentityCheck(IdentityCheckRequest request)
        {
            var requestUrl = FormatIdentityCheckQueryUrl(request);
            var response   = await _client.PostAsync(requestUrl, null);

            var content = await response.Content.ReadAsStringAsync();

            return(JsonConvert.DeserializeObject <IdentityCheckResponse>(content));
        }
Example #4
0
        private string FormatIdentityCheckQueryUrl(IdentityCheckRequest request)
        {
            var queryParameters = new List <string>();

            queryParameters.Add($"api_key={IdentityCheckApiKey}");
            queryParameters.Add("primary.address.country_code=US");
            if (!string.IsNullOrEmpty(request.City))
            {
                queryParameters.Add($" primary.address.city={ HttpUtility.UrlEncode(request.City)}");
            }
            if (!string.IsNullOrEmpty(request.Name))
            {
                queryParameters.Add($" primary.name={ HttpUtility.UrlEncode(request.Name)}");
            }
            if (!string.IsNullOrEmpty(request.Phone))
            {
                queryParameters.Add($" primary.phone={ HttpUtility.UrlEncode(request.Phone)}");
            }
            if (!string.IsNullOrEmpty(request.StreetLine1))
            {
                queryParameters.Add($" primary.address.street_line_1={ HttpUtility.UrlEncode(request.StreetLine1)}");
            }
            if (!string.IsNullOrEmpty(request.StreetLine2))
            {
                queryParameters.Add($" primary.address.street_line_2={ HttpUtility.UrlEncode(request.StreetLine2)}");
            }
            if (!string.IsNullOrEmpty(request.EmailAddress))
            {
                queryParameters.Add($" primary.email_address={ HttpUtility.UrlEncode(request.EmailAddress)}");
            }
            if (!string.IsNullOrEmpty(request.PostalCode))
            {
                queryParameters.Add($" primary.address.postal_code={ HttpUtility.UrlEncode(request.PostalCode)}");
            }
            if (!string.IsNullOrEmpty(request.StateCode))
            {
                queryParameters.Add($" primary.address.state_Code={ HttpUtility.UrlEncode(request.StateCode)}");
            }
            if (!string.IsNullOrEmpty(request.Phone))
            {
                queryParameters.Add($" primary.phone={ HttpUtility.UrlEncode(request.Phone)}");
            }

            return(CreateUrl(IdentityCheckUrl, queryParameters));
        }
        private async Task <OffenderLookupResponse> BuildMockData(IdentityCheckRequest request)
        {
            var names     = request.Name.Split(' ');
            var firstName = names.Length > 0 ? names[0] : "";
            var lastName  = names.Length > 1 ? names.Last() : "";

            var random = new Random();
            var age    = random.Next(20, 50);

            var crime = CrimeDescriptions.Take(1).FirstOrDefault();

            var response = _fixture.Build <OffenderLookupResponse>()
                           .With(x => x.City, request.City)
                           .With(x => x.FirstName, firstName)
                           .With(x => x.LastName, lastName)
                           .With(x => x.State, request.StateCode)
                           .With(x => x.BirthYear, DateTime.Now.AddYears(-age).Year)
                           .With(x => x.Type, CrimeType.Warrant)
                           .With(x => x.Description, crime)
                           .Create();

            return(response);
        }
        /// <summary>
        /// http://xmlapi.backgroundcheckapi.com/?App_ID=[BACKGROUND CHECK API APP ID]&App_Key=[BACKGROUND CHECK API APP KEY]&Timestamp=[CURRENT TIMESTAMP]&IP=[IP]&catalogue=BACKGROUND&FirstName= Neal Anderson &LastName= Stanford &MiddleName=&State= Washington &County= Benton &City= STEILACOOM &BirthYear=&CrimeType=&ExactMatch=Yes
        /// </summary>

        public async Task <OffenderLookupResponse> OffenderIdentityCheck(IdentityCheckRequest request)
        {
            // Mocked data for now

            return(await Task.Run(() => BuildMockData(request)));
        }