GET method call in REST API call is not returning desired data.

Gulzar Manuja2
Kilo Guru

Dear All,

Greetings !!

I am working on a requirement wherein I have to integrate our ServiceNow instance with Sailpoint application. We have received following Endpoint to make a GET method call from Sailpoint in order to fetch record for a specific user.   

https://xxxxxx.api.identitynow.com/v3/accounts?filters=sourceId eq "aaaaaaaa7d7ccfef017d7ed0f3bbbbbb" and name eq "zzzz"

However, when I used this endpoint as it is in the Endpoint field of the GET method, I encountered "Invalid URI" error. I believe the error was thrown by the system as above endpoint has spaces and keywords like 'eq'. Then, I tried to modify this endpoint(as mentioned below) so that the same can be accepted by ServiceNow, however, it did not work correctly. System is fetching all the records from the other system instead of a specific account with name 'zzzz'

https://xxxxxx.api.identitynow.com/v3/accounts?sysparm_query=sourceId%3Daaaaaaaa7d7ccfef017d7ed0f3bbbbbb&name=zzzz

Could someone help me to rectify the issue please? I guess I have not been able to build the query correctly. Would appreciate any input.

 

Thanks & Regards,

Gulzar Manuja

1 ACCEPTED SOLUTION

Hi,

did you try to use %22 which is url encoded value for "

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

View solution in original post

13 REPLIES 13

Hi,

did you check with them whether you are including the correct url parameter name for account?

i.e. name

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

Hi Ankur,

The endpoint shared by them has 'name' parameter as shown below and this endpoint is working absolutely fine when I tried to connect using Postman.  

https://xxxxxx.api.identitynow.com/v3/accounts?filters=sourceId eq "aaaaaaaa7d7ccfef017d7ed0f3bbbbbb" and name eq "zzzz"

 

Therefore, I think the parameters should be fine. It's just that we will have to modify it in ServiceNow acceptable format as per my understanding. Please correct me if I am incorrect here. 

 

Furthermore, I felt that the issue could be due to the Parameters field on the Test Runs screen as the maximum length for this by default was 40. Therefore, it was not showing the entire query earlier. I have modified it to 120 now and it is showing entire query but still not returning the desired record. Getting all the records in the response.  

 

find_real_file.png

 

Would appreciate your further inputs. 

Best Regards,

Gulzar Manuja

Did you try to hard-code?

Do they require quotes around the value?

try this

https://xxxxxx.api.identitynow.com/v3/accounts?sysparm_query=sourceId%3Deqaaaaaaaa7d7ccfef017d7ed0f3bbbbbb&name%3Deqzzzz

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

Hi Ankur,

Tried hardcoding it but did not work. When I checked with them regarding quotes, they have provided me this link to check the list of operators and syntax. 

Standard Collection Parameters | SailPoint API References

 

Not sure if it helps.

 

Best Regards,

Gulzar Manuja

the issue of space could be solved by replacing it with %20

Similarly for = as well

Did you try to test in POSTMAN tool with hard-coded URL if it works

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader