/// <summary> /// Handle GetUserLimits API call /// </summary> /// <param name="context"></param> private void GetUserLimits(HttpContext context) { NameValueCollection parameters = context.Request.Params; List<string> limitType = new List<string>(); if(parameters["limitType"] != "") limitType.Add(parameters["limitType"]); AccountIdentifier accountId = new AccountIdentifier(); if (parameters["email"] != "") { accountId.email = parameters["email"]; } if (parameters["phoneCountry"] != "" && parameters["phoneNumber"] != "") { accountId.phone = new PhoneNumberType(parameters["phoneCountry"], parameters["phoneNumber"]); if (parameters["phoneExtension"] != "") accountId.phone.extension = parameters["phoneExtension"]; } GetUserLimitsRequest req = new GetUserLimitsRequest( new RequestEnvelope("en_US"), accountId, parameters["country"], parameters["currencyCode"], limitType); // All set. Fire the request AdaptivePaymentsService service = new AdaptivePaymentsService(); GetUserLimitsResponse resp = null; try { resp = service.GetUserLimits(req); } catch (System.Exception e) { context.Response.Write(e.Message); return; } // Display response values. Dictionary<string, string> keyResponseParams = new Dictionary<string, string>(); string redirectUrl = null; if (!(resp.responseEnvelope.ack == AckCode.FAILURE) && !(resp.responseEnvelope.ack == AckCode.FAILUREWITHWARNING)) { int idx = 1; foreach (UserLimit userLimit in resp.userLimit) { keyResponseParams.Add("Limit amount " + idx, userLimit.limitAmount.amount + userLimit.limitAmount.code); keyResponseParams.Add("Limit type " + idx, userLimit.limitType); idx++; } } displayResponse(context, "GetAvailableShippingAddresses", keyResponseParams, service.getLastRequest(), service.getLastResponse(), resp.error, redirectUrl); }