public HttpResponseMessage TestAPICredentials(string username, string password, string environment, bool awardLetterUploadEnabled = false) { try { string stsURL = string.Empty; List <string> apiURLs = new List <string>(); switch (environment) { case EnvironmentConstants.SANDBOX: { apiURLs.Add(ApiUrlConstants.SV_API_URL_SANDBOX); apiURLs.Add(ApiUrlConstants.PM_API_URL_SANDBOX); if (awardLetterUploadEnabled) { apiURLs.Add(ApiUrlConstants.AL_API_URL_SANDBOX); } stsURL = ApiUrlConstants.STS_URL_SANDBOX; break; } case EnvironmentConstants.PRODUCTION: { apiURLs.Add(ApiUrlConstants.SV_API_URL_PRODUCTION); apiURLs.Add(ApiUrlConstants.PM_API_URL_PRODUCTION); if (awardLetterUploadEnabled) { apiURLs.Add(ApiUrlConstants.AL_API_URL_PRODUCTION); } stsURL = ApiUrlConstants.STS_URL_PRODUCTION; break; } default: { apiURLs.Add(ApiUrlConstants.SV_API_URL_SANDBOX); apiURLs.Add(ApiUrlConstants.PM_API_URL_SANDBOX); if (awardLetterUploadEnabled) { apiURLs.Add(ApiUrlConstants.AL_API_URL_SANDBOX); } stsURL = ApiUrlConstants.STS_URL_SANDBOX; break; } } CredentialsManager credentialsManager = new CredentialsManager(); HttpResponseMessage response = credentialsManager.GetAuthorizationToken(username, password, apiURLs, stsURL); return(response); } catch (Exception ex) { logger.ErrorFormat("TestAPICredentials Get Error: {0}", ex); return(Request.CreateResponse(HttpStatusCode.ExpectationFailed)); } }
/// <summary> /// Validate API Credentials /// </summary> /// <param name="applicationAppSettingsSection"></param> public static HttpResponseMessage ValidateApiCredentials(Dictionary <string, string> applicationAppSettingsSection, bool awardLetterUploadEnabled = false) { string stsUrl; List <string> apiURLs = new List <string>(); switch (applicationAppSettingsSection["environment"]) { case EnvironmentConstants.SANDBOX: { apiURLs.Add(ApiUrlConstants.SV_API_URL_SANDBOX); apiURLs.Add(ApiUrlConstants.PM_API_URL_SANDBOX); if (awardLetterUploadEnabled) { apiURLs.Add(ApiUrlConstants.AL_API_URL_SANDBOX); } stsUrl = ApiUrlConstants.STS_URL_SANDBOX; break; } case EnvironmentConstants.PRODUCTION: { apiURLs.Add(ApiUrlConstants.SV_API_URL_PRODUCTION); apiURLs.Add(ApiUrlConstants.PM_API_URL_PRODUCTION); if (awardLetterUploadEnabled) { apiURLs.Add(ApiUrlConstants.AL_API_URL_PRODUCTION); } stsUrl = ApiUrlConstants.STS_URL_PRODUCTION; break; } default: { apiURLs.Add(ApiUrlConstants.SV_API_URL_SANDBOX); apiURLs.Add(ApiUrlConstants.PM_API_URL_SANDBOX); if (awardLetterUploadEnabled) { apiURLs.Add(ApiUrlConstants.AL_API_URL_SANDBOX); } stsUrl = ApiUrlConstants.STS_URL_SANDBOX; break; } } CredentialsManager credentialsManager = new CredentialsManager(); //Ensure ALL Credentials are valid var credentialsResponse = credentialsManager.GetAuthorizationToken(applicationAppSettingsSection["apiUsername"], applicationAppSettingsSection["apiPassword"], apiURLs, stsUrl); if (!credentialsResponse.IsSuccessStatusCode) { logger.Fatal($"API Credentials are not valid, username: {applicationAppSettingsSection["apiUsername"]}, password: {applicationAppSettingsSection["apiPassword"]}"); return(new HttpResponseMessage(HttpStatusCode.ExpectationFailed)); } return(new HttpResponseMessage(HttpStatusCode.OK)); }