1 Reply Latest reply on Apr 11, 2016 2:37 PM by tdanner

    REST API and AD users/groups

    djschaap

      The REST API does not seem to work with SWIS URIs that contain a backslash ("\").  This shows up with Orion users linked to AD users/groups.

       

      Using the PowerShell interface, (which apparently relies on SOAP) I can get-swisobject on "swis://x/Orion/Orion.Accounts/AccountID=DOMAIN\USER" (where DOMAIN\USER is an AD domain & user/group that has been granted access to NPM).

       

      Using the REST interface, I get a navigation property error.  I've tried this using both Perl REST::Client and Chrome with the same result.  I've tried various combinations of quoting and escaping, but no luck.  It appears that the REST service is incorrectly converting the backslash to a forward slash and interpreting it as a navigation property filter.

       

      GET URL: https://solarwinds:17778/SolarWinds/InformationService/v3/Json/swis://x/Orion/Orion.Accounts/AccountID=DOMAIN%5cUSER

       

      {"Message":"Navigation property 'USER' does not exist.\u000d\u000aParameter name: uri","ExceptionType":"System.ArgumentException","FullException":"System.ArgumentException: Navigation property 'TEMP' does not exist.\u000d\u000aParameter name: uri\u000d\u000a at SolarWinds.InformationService.Core.SwisUriResolver.ValidateAndResolveUri(SwisUri uri, IQueryExecutionContext context)\u000d\u000a at SolarWinds.InformationService.Core.CrudProcessor.Read[T](IServiceHost serviceHost, SwisUri uri, IQueryExecutionContext context)\u000d\u000a at SolarWinds.InformationService.Core.InformationService.Read(String uri)"}