2014-03-31

ServiceNow JSONv2 vs "old" JSON Web Service interface

ServiceNow's JSONv2 WS interface vs the old JSON WS interface

As part of the Dublin release, ServiceNow is rolling out a brand spanking new JSON web service interface. Now how much is different? Turns out, "not so much", when it comes to interface but a lot of promises have been made regarding performance. For a three part immersion into the old JSON interface (Calgary release and older) check my old posts. Part 1 Part 2 Part 3


So what has changed? See below.

URL Parameter

The old JSON Web Service answered using "JSON" parameter, but the new is invoked using "JSONv2" parameter in the URL. E.g. <instance>/<table>.do?JSONv2

Action parameters

All of the old action parameters are still valid, but there is one new parameter, named "sysparm_record_count" which can be used to limit the amount of returned records. There's a system property named "glide.processor.json.row_limit" which supersedes the action parameter, and provides an upper limit for the instance.

Conclusion

The brand spanking new interface turns out to be pretty much the same old JSON web service interface, except that the invisible-to-caller bits and pieces are promised to deliver better performance. "How much faster" is a question which probably varies from instance to instance and use case to use case, but if I have time I will run LoadUI against both interfaces in the near future to see if the difference is visible.

EDIT: Test results here

No comments:

Post a Comment