Since its release the latest ServiceNow version – Istanbul has already settled a bit. As with every major release from the ServiceNow team, many interesting features were to be expected. But this particular release really has some outstanding functionalities – both for admins, developers, testers and common users. We would like to give you a quick run-down of these in the following article. Here is our pick of 10 Istanbul features, in no particular order.
1. JavaScript debugger (for server-side code)
Again you can use the built-in script debugger to set breakpoints, step through the instructions and view the current values of local and global variables.

You can launch the Script Debugger from the application navigator:

System Diagnostics -> Script Debugger

Because the debugger works at a session level, every developer can use it independently and there is no risk of conflicts with other developers – it will only work on breakpoints detected within transactions running within your session.

To set a breakpoints, simply enter any window containing server script (e.g. business rule, script include) and click on the line number for which you wish to set the breakpoints.


Above example shows the current value of local variable n.

2. Authorisation Code Grant Flow

If you are building a smartphone app that requires some functions to be executed on behalf of a specific user, previously that user would have to be authenticated locally on the instance.

But what if your client uses SSO? Now with Oauth code grant flow, it is possible to generate access token for any user by initiating a REST API call. The user gets a warning that the application would like to connect to their ServiceNow instance, once they allow this, the token is created and they are redirected back to their app.

Visit the below link for more information:

3. RESTful API for emails

By activating a dedicated plugin: Email Service, and following the API:  /api/now/v1/email, you are now able to receive and send emails using REST web service. For example, you can construct an email by posting a JSON object. This can be used to trigger sending of emails from mobile applications or to trigger notifications from web services.

As a side note, starting with Istanbul you can now add Unsubscribe and Manage Preferences links to outbound emails – so that the recipients can click direct links to those settings. Simply put those objects in your email notification:



4. New Service Catalog variable types:

  1. Email – the field validates the input for standard email characteristics (@ symbol and domain info)
  2. URL – checks if the input cnforms to standard protocols like HTTP, HTTPS etc.

In addition, you can now customise the width of variables by specifying the % of size they take up on the form. Do this in the Type Specifications section of the variable.

5. Condition Builder V2

The condition builder now allows to search through lists of related records. This was never possible before using simple conditioning and required writing lengthy scripts with lots of glide records. So what it does exactly?

Assume you want to get a list of Problems – of course you will set up a filter on the Problem table. But what if you want a list of all Problems that have at least one active Incident associated with them?

Just go to the same list of Problems and use Related List Conditions:


The possibilities are quite big. You’ve always wanted to display a list of records where the current user is one of designated approves, right?

You can also use the same functionality in your Encoded Queries, by the way. Just use the parameter ^RLQUERY (copying the query from your table filter is still the best way to get the full query string).

So far the filter builder only seems to work with Lists v3

6. Automated Testing Framework

With this major plugin addition, ServiceNow gives you the possibility to run automated testing directly on the platform.

The plugin comes with two roles: atf_test_admin – having all the permissions to this plugin, and atf_test_designer – who can create tests and test suites. Here is an overview of the modules:

In addition to activating the plugin, you also need to set a property to make the tests work.

Navigate to Automated Test Framework > Administration > Properties and set the test execution property. To enable test and test suite execution, check „Enable test/test suite execution”.

The ATF allows you to package Tests into Test Suites, so you can re-run the same tests within various suites if necessary.

In order to run UI Tests, open the module UI Test Runner:


The Test Run Queue will show all tests currently waiting or running, that are part of the currently activated Test Suite (and it’s sub-suites). It is a bit pity though, that it does not show the test execution order:


In order to create a simple Test, follow those steps:

  • Navigate to ATF > Tests > New
  • Fill the Name and Description Field
  • Click Add Steps and add one by one the steps like in picture below:


As you can guess, there is a lot of UI activities you can include in the steps.

  • After all the steps have been added, click Run Test to activate it:


By clicking „Click Here” you will see the screenshots of every action performed.

  • After the execution is done, click on „Go to Result”:


This is especially useful if you need to test a lot of repeatable actions. Simply run your test suite and work on something else in the meantime. Or go get a coffee.

The Test actions you can perform are:


So this new plugin can really be applied in many ways and places, such as testing a data policy, script include, workflow, Ui Action, form validations, Catalog Requests, Integrations and many more. You can also pass values from one test into the other for complex scenarios.

7. Editing applications/modules directly from navigator

This great little feature is back – and enhanced. Now you can use the pencil icon next to any application or module to directly edit its settings. No need anymore to go through lists of applications or modules to find the one you need.:


8. Change Advisory Board (CAB) workbench

This is a nice dashboard built with the power of the Service Portal, dedicated for Change managers or other CAB members. It allows you to schedule, plan and manage CAB meetings, define attendees for such meetings, automate the agendas by using filters (determine which changes should be part of a specific CAB meeting), view change calendar, approve or reject



9. Support for emojis in surveys

For a simple survey, you can now go with 5 OOTB emojis instead of taking your users through a lot of questions. Here is what they look like:



10. Email Layouts

This cool little feature makes it much easier to build and reuse the content of your email notifications. While creating a layout you can see everything in rel time – consider this your own WYSIWYG email body editor: