This article is a supplement to the ServiceNow documentation. For full documentation please refer ServiceNow official website
Checkout our NEW Video Channel you can like and subscribe too!

1. What is servicenow?

ServiceNow is a cloud based IT Service Management (ITSM) tool. It provides a single system of record for:

  1.IT services


  3.Business management

All aspects of IT Services live in the ServiceNow ecosystem. It gives us a complete view of services and resources. This allows for broad control of how to best allocate resources and design the process flow of those services

2. What do you mean by term “Application” in servicenow?

Application is a group of modules which provides its related information.For example change application provides the information related to change process. It consist of modules like create change ticket,view change tickets etc.

3. What is the latest ServiceNow user interface and when it was released?

The latest user interface is UI16 interface.

4. What is full form of CMDB and what is it ?

CMDB stands for Configuration Management Database. CMDB is a repository. It acts as a data warehouse for information technology installations. It holds data related to a collection of IT assets, and descriptive relationships between such assets

5. What is CMDB Baseline ?

CMDB baselines helps to understand and control the changes that have been made to a configuration item(CI) . Baseline is the snapshot of a CI

6. How to enable or disable an application ?

Following steps will help you do the same:

-Navigate to System Definitions> Application Menus

-Open the respective application.

-Set value for active as ‘true’ to enable it or set it to ‘false’ to disable it.

7. What is a view ?

View defines the arrangement of fields on a form or a list. For one single form we can define multiple views according to the user preferences or requirement.

8. What is ACL?

An ACL is access control list that defines what data a user can access and how they can access it in service now.

Read more here: ACL

9. What do you mean by impersonating a user? How it is useful?

Impersonating a user means that you can log in to the system as that user and can have feel how the service-now UI is set for that user.This is very useful while testing.

For example: If you are required to test that a user can access change form or not.You can impersonate that user and can test instead of logging out from your session and logging again with that user credentials.

10. Which is the Parent table for incident,change and problem ?

Task table

11. What is a record producer ?

A record producer is a type of a catalog item that allows users to create task-based records from the service catalog.Record Producer are used when end user wants to create Incident/Problem request but they don’t have access to create those request directly.

For example: you can create a change record or problem record using record producer. Record producers provides an alternative way to create records through service catalog.

12. What is dictionary override?

Dictionary Overrides provides the capability to override several properties of a field in extended table.

For example: Change table is extended from task table.There is a field named status in task table and set as read-only.When we use this field in change form it will show be a read only.We can set this to non-read only by using the dictionary override.Similarly there are other properties that can be set for the fields in extended table.

13. What do you mean by coalesce?

Coalesce is a property of a field that we use in transform map field mapping.When we set the coalesce as true for a field mapping it signifies that this field will work as unique key.If a field match is found with the coalesce field, then existing record will be updated with the imported information in target table else a new record will be inserted into the target table

14. What is an UI policy?

UI policies can be used to set a field as mandatory, read only and visible on a form. You can also use UI policy for dynamically changing a field on a form.

Read more here: UI policy

15. What is a data policy?

Data policy checks the mandatory and read-only of a field whenever a record is inserted or updated through a web-service or import set.

For example: If a mandatory field in the incoming record (from import set or web-service) is empty then the data policy will not allow to insert that record into the table. Data policies enable you to enforce data consistency by setting mandatory and read-only states for fields.

Data policies are similar to UI Policies, but UI policies only apply to data entered on a form through the standard browser. Data policies can apply rules to all data entered into the system, including data brought in through import sets or web services and data entered through the mobile UI.

Read more here: Data policy

16. What is difference between UI policy and data policy ?

UI policy acts when a record is inserted or updated through a servicenow UI i.e servicenow forms while data policy acts whenever a record is inserted or updated into database through any means.

17. What is a client script?

Client script sits on the client side(the browser) and runs on client side only. Following are the types of

client script:





Read more here: Client Script

18. How can you cancel a form submission through client script?

In order to cancel a form submission the onSubmit function should return false. Refer the below mentioned syntax:

function onSubmit() 
   {return false;}

19. What is a business rule?

Business rule is server side scripting that executes whenever a record is inserted, updated, deleted, displayed or queried.The key thing to keep in mind while creating a business rule is that when and on what action it has to execute. You can run the business rule ‘on display’, ‘on before’ or ‘on after’ of an action (insert,delete,update) is performed.

Read more here: Business rule

20. Can you call a business rule through a client script?

Yes you can call a business rule through a client script by using glideajax

Read more here: Glide Ajax

21. What is a gliderecord?

GlideRecord is a special Java class ( that can be used in JavaScript exactly as if it was a native JavaScript class.


is used for database operations instead of writing SQL queries.
is an object that contains zero or more records from one table. Another way to say this is that a GlideRecord is an ordered list.
A GlideRecord contains both records (rows) and fields (columns). The field names are the same as the underlying database column names.


var inc = new GlideRecord('incident');

Read more here: Glide Record

22. What do you mean by data lookup and record matching?

Data lookup and record matching feature helps to set a field value based on some condition instead of writing scripts.

For example: On Incident forms, the priority lookup rules sample data automatically sets the incident Priority based on the incident Impact and Urgency values. Data lookup rules allow to specify the conditions and fields where they want data lookup to occur.

23. What is an update set?

Update set is a group of customization.It captures the customization or configuration changes made by a user and then these update sets can be moved from one instance to another.

For example: if we made some configuration changes in our development environment and want same changes in our test environment then we can capture all the changes in an update set and can move this update set to the test environment instead of doing changes manually in test environment.

24. What is a sys_id?

It is a unique 32-character GUID that identifies each record created in each table in ServiceNow.

25. How to set a field unique on table

Go to that respective field dictionary and set the unique check box to true.

26. What is data dictionary?

Data dictionary defines every table and field in the system. It contains information about a field’s data type,default value, dependency, and other attributes. These tables provide data dictionary, data modeling, and entity relationship information:

Tables [sys_db_object]: contains a record for each table.

Dictionary Entries [sys_dictionary]: contains additional details for each table and the definition for every column on each table. Each row represents either a column on a table or a table.

Field Labels [sys_documentation]: contains the human-readable labels and language information.

27. What happens when a user make some changes the homepage ?

When a user make some changes on the homepage then that pages is saved as his personalized homepage instead of updation on the actual homepage.For example home page name is Incident overview.When a user make some changes on it then this page is saved as My incident overview and is only visible to that user.

28. What role you are required to create/update ACL?


29. How you can check on which servicenow instance node you are working ?

Goto SystemDiagnostic -> Stats. Statistic page will be open where you can get the details of node and the instance on which you are working on

30. How to enable or disable the pie chart labels?

To enable or disable the labels in pie chart we need to set the property glide.ui.chart.pie.labels to true or false.

31. What is installation exit?

Installation exits are customizations that exit from Java to call a script before returning back to Java. Navigate to System Definition > Installation Exits. Some installation exit names (Login, Logout, ValidatePassword, ExternalAuthentication) are reserved and cannot be changed. Other installation exits can override these with custom script that replaces the script in the default installation exit.

32. What is import set?

Import Sets is a tool used to import data from various data sources and, then using transform map, map that data into ServiceNow tables. The Import Sets table acts as a staging table for records imported.

33. What is transform Map?

A transform map transform the record imported into servicenow import set table to the target table. It also determines the relationships between fields displaying in an Import Set table and fields in target table

34. What do you mean by Foreign record insert?

A foreign record insert occurs when an import makes a change to a table that is not the target table for that import. This happens when updating a reference field on a table. For example when updating a value for the caller on an incident the import is actually updating the sys_user table.

35. Which searching technique is used to search a text or record in Servicenow ?

Zing is the text indexing and search engine that performs all text searches in ServiceNow.

36. What does the Client Transaction Timings plugin does?

The Client Transaction Timings plugin enhances the system logs by providing more information on the duration of transactions between the client and the server.

By providing information on how time was spent during the transaction, performance issues can be tracked down to the source by seeing where the time is being consumed.

This plugin requires the Response Time Indicator Response Time Indicator to be enabled, and collects information from the following browsers:

- Firefox

- Internet Explorer

- Chrome

Installing the plugin adds the module Client Transactions to the System Logs application, which provides a list of every logged transaction between client and server within the last day. The following information is tracked:

Client Transactions Information

Created: The moment the transaction was recorded.

Response Time: The number of ms spent by the server in fulfilling the transaction.

Business Rule Time: The number of ms spent by business rules triggered by the transaction.

SQL Time: The number of ms spent by the SQL database.

Client Response Time: (Load_completion_time) – (start_time). It is inclusive of server time.

Client Network Time: The number of ms spent by the network the client is connecting through.

Browser Time: The number of ms spent by the browser during the transaction.

Client Script Time: The number of ms spent executing client scripts

UI Policy Time: The number of ms spent executing ui policy

Type: Type of transaction (one of Form, List, Other)

Table: The table that was displayed e.g. incident, change_request

View: The view for this form/list

Client Detailed Information

A more detailed breakdown of the client timings for all Form rendering (but not list rendering) is also tracked. To see details, drill into a particular client transaction record and observe the related list at the base of the screen.

Order: The order during the load that this operation occurred

Type: The type of operation

Name: Descriptive name of this particular operation

Duration: Number of ms this particular operation took to complete

37. What is inactivity monitor?

An inactivity monitor triggers an event for a task record if the task has been inactive for a certain period of time. If the task remains inactive, the monitor repeats at regular intervals.

38. What is domain separation?

Domain separation allows you to separate data, processes, and administrative tasks into logical groupings called domains. You can then control several aspects of this separation, including which users can see and access data.

Domain separation is a way to separate data into (and optionally to separate administration by) logically-defined domains.

For example: A client XYZ have two business and they are using servicenow single instance for both business.They do not want that user’s from one business can see data of other business.Here we can configure domain separation to isolate the records from both business.

Read more here: Domain separation

39. How you can remove Remember me check box from login page?

You can set the property – glide.ui.forgetme to true to remove the Remember me check box from login page.

40. What is HTML Sanitizer?

The HTML Sanitizer is used to automatically clean up HTML markup in HTML fields and removes unwanted code and protect against security concerns such as cross-site scripting attacks. The HTML sanitizer is active for all instances starting with the Eureka release.

41. Which table is used in servicenow to audit changes to records?

ServiceNow uses the Sys Audit [sys_audit] table to audit changes to records.

42. What is Schema map?

The schema map displays the details of tables and their relationships in a visual manner, allowing administrators to view and easily access different parts of the database schema.

43. What is a dashboard?

Dashboard is a visual collection of reports and paralytics presented as KPI scorecards and indicator summary tab.

Read more here: Dashboard

44. What is scorecard?

A scorecard can be used to measure the performance of an employee or a business process. It is a graphical representation of progress over time. A scorecard belongs to an indicator. The first step is to define the indicators that you want to measure. Scorecards can be enhanced by adding targets, breakdowns (scores per group), aggregates (counts, sums, and maximums), and time series (totals and averages).

Read more here: Scorecard

45. What do you mean by indicators in performance analytics in servicenow?

Indicators are statistics that business track to measure current conditions and forecast business trends. Indicators are also known as metrics , business metrics or KPIs Three types of indicators:

1.Automated Indiactor

2.Formula Indicator

3.Manual Indicator

Read more here: Indicator

46. How to set the default value of a date field to current datetime value?

Goto the dictionary of the respective date-time field and set the default value

47. Can we have coalesce on all fields in a transform map?

Yes possible.

48. Can we call update before business rule?

We should avoid using current.update() in BR as current.update() will call the BR again. This will make the BR recursively calling itself, this will cause performance issue. To update any record before updating the table, we need to just set the values ,the values will be automatically updated before insert/update into the table.

49. Syntax to register an system event?

gs.eventQueue('incident.commented', current, gs.getUserID(), gs.getUserName());

incident.commented: Name of the event current: current gliderecord object gs.getUserID(): additional parameters gs.getUserName(): additional parameters

50. How to call a sever script from client without ajax?

We can use scratch pad variable and display business rule to display data in a UI page.

In server

g_scratchpad.someName = "someValue";

In client

if(g_scratchpad.someName == "someValue") { 
 //do something

51. what is display BR?

A Display business rule runs when a form is loaded. The g_scratchpad can hold server information and then we can display the value in the form using client scipt.

Note: Display business rule only works when form is loaded, it cannot load dynamically on change. For that we need to user GlideAjax

Read more here: Display BR

52. Which is more secure soap or rest?

Both can be secure using https and basic authentication header. But SOAP is somewhat more secure than REST because SOAP have WS-Security module which gives more emprise security like XML signature, Xml encryption etc.

Read more here: Soap Integration Rest Integration

53. what will happen if the wsdl is down?

Once we have setup the outbound message and list of function we can continue to call. But any update in the wsdl (like new function addition or parameter changes) we cannot get.

54. What is difference between before and start script in transform map?

onStart runs when the transform map is first loaded

var info = "Starting Import Set Transformation Mapping operation using Data source, " 
+ map.table_source + " and Transform Map " + + " on import set " + import_set.number; info );

on before event script is run when a row transformation happens

var name = source.u_name.toString();
var info = "Before the row is transformed, " + name; info ); 
// Make sure a company name has been provided
var company = source.u_company.toString();
if(company.length == 0 ){
	ignore = true;
	info ="No company name, row ignored! " + name; info );

55. What is the response format for soap and rest request?

Soap is XML format. Rest is generally Json format but can send in XML and other formats also.

56. What is an object?

An object is an instance of a class

57. How to manage visibility dynamically in ACL?

We can write advance script in ACL. For example, we can create a read ACL at field level and use the below script we hide/show the field based on role.


58. How to call a webservice from script include?

We can use the sn_ws.SOAPMessageV2 or sn_ws.RESTMessageV2

59. Async BR, what is the purpose?

Async BR is a business rule which runs later and we don’t expect the result be displayed immediately after commit of the data. Whenever async business rule runs it create a scheduler for it in background and based on the availability of the nodes in servicenow it will execute

Webservice calls can be made Async BR After BR also runs after data is committed runs immediately after committed.

Read more here: Display BR

60. What are ServiceNow class use have used ?

•	GlideRecord

•	GlideElement

•	GlideSystem

•	GlideAggregate

•	GlideAjax

•	GlideForm

•	GlideUser

61. Is discovery 1 way/2-way communication?

Discovery is 1 way communication only, Midserver polls information from ECC queue and updates the ECC queue with response.ServiceNow instance never calls customer data center directly.

62. what api to use to call a Catalog from a WF?

Cart api we have to use.


63. How to call a script include in BR?

If Script include is like this question231120193.png

We can write in BR

Var x = new NewInclude()

64. How to call a script include in WF?

Write a new script activity and then call

Var x = new NewInclude() //NewInclude() is a script include name
x.myfunction(); // myfunction() is the function name in script include

65. How to call a WF from a business rule ?

First we need to get the sysid of the WF and then we can call like this

var id = ('8f5496fb4f7cf20064ec3c728110c77b');


function startWorkflow(id) {

var w = new Workflow();

startFlow(id, current, current.operation(), getVars());


function getVars() {

var vars = {};

vars.u_date = current.due_date;

return vars;


To get WF sys_id we can use gliderecord as below question231120194.png

66. Multiple import-set, import to multiple table?

67. How to create a new CI class?

68. Difference between copy incident and create child incident?

69. can we set order of the field in the incident form?

70. How many ways end-user can fill up incident form ?

71. What is formatter & interceptor ?

73. What is schema map?

74. Defined relationship between CI classes?

77. How to remove duplicate data in CI CMDB ?

80. How to do widget to widget communication ?

Goto ServiceNow Wiki

81. What are the stages of discovery?

1.Port Scanning: Discovery sends the Shazzam probe to the network to see if specified ports are open on the network and if they can respond to queries.

For example, if Shazzam finds a device that responds on port 135, Discovery knows that it is a Windows server.

2.Classification: If Discovery finds devices, it continues to send probes to find the type of device at each IP address.

For example, Discovery would send the WMI probe, which is used for Windows devices, and find out that the Windows operating system on this server is running Windows 2012. Classifiers specify which trigger probes to run for identification and exploration.

3.Identification: Discovery tries to gather more information about the device, looks at those attributes, determines if it has a CI in the CMDB, and reconciles that information by either updating the CI or creating a CI. Discovery uses additional probes, sensors, and identifiers to do this. Identifiers, also known as identification rules, specify the attributes that the probes look at when reconciling data with the CIs in the CMDB. If you are using patterns, Discovery uses the appropriate identification rule for the CI type specified in the pattern.

4.Exploration: The identifier in the previous step (Identification) launches the exploration probes configured in the classification record to gather additional information about the device, like the applications running on the device, and attributes about the device, such as memory, network cards, drivers, etc. Discovery then maps applications to devices and to other applications. In this phase, Discovery also uses additional probes and sensors that are hard-coded to find this additional information. If you are using a pattern, the operations in the pattern perform the exploration of the CI.

82. Difference between Rest vs Soap?

SOAP SOAP is a protocol which was designed before REST and came into the picture. The main idea behind designing SOAP was to ensure that programs built on different platforms and programming languages could exchange data in an easy manner.

REST This was designed specifically for working with components such as media components, files, or even objects on a particular hardware device. Any web service that is defined on the principles of REST can be called a RestFul web service. A Restful service would use the normal HTTP verbs of GET, POST, PUT and DELETE for working with the required components.


83. Difference between Order Guide vs Record Producer?

A record producer is a type of a catalog item that allows users to create task-based records from the service catalog. Record Producer are used when end user wants to create Incident/Problem request but they don’t have access to create those request directly. For example you can create a change record or problem record using record producer. Record producers provides an alternative way to create records through service catalog.

Order guide submits a single service catalog request that generates several items.

For example, a New Employee Hire order guide can contain several items that new employees commonly need, such as business cards, computer, and cell phone. After selecting this order guide, the customer can then provide information about the new employee, including location and job title. The order guide then submits an order for catalog items like business cards, based on the details provided.

Order guides determine which catalog items to order by evaluating order guide rule conditions. Information the customer enters within the order guide can be passed as cascading variables to the ordered items, allowing common information to be reused across multiple items.

84. Difference between put vs patch?

PATCH: it is used to update an existing entity with new information. You can’t patch an entity that doesn’t exist. You would use this when you have a simple update to perform, e.g. changing a user’s name.

partially updates the resource into the server mapped by the provided data. As an example, PATCH /api/log/1 will only update properties mapped in the request body. Just like the PUT method it may include an If-Match with the ETag and in case of success 200 Ok or 202 Accepted with the new ETag value should be returned, or in case of a failure a 404 Not Found or 409 Conflict will be indicated with the same conditions as the PUT method. This about it like a partial update to a row in a table, where only some columns are affected.

PUT: it is used to set an entity’s information completely. PUTting is similar to POSTing, except that it will overwrite the entity if already exists or create it otherwise. You could use a PUT to write a user to your database that may already be in it.

replaces the existing resource by the new one. As an example, PUT /api/log/1 will completely replace that resource for the new one. Optionally in the request you may include an If-Match with the ETag value to be sure you are replacing the expected version of that resource (preventing concurrency problems). In case of success, it should return a 200 Ok or 202 Accepted (async operations) with the new ETag. In case the entity does not exist, a 404 Not Found must be returned or a 409 Conflict if the version or any other value in the entity are not correct with internal server state (like referenced links). Think about it like an update to a complete row in a table;

85.How to load balance midserver?

86. If we delete password from the credentials in discovery, will discovery still work?

87. How to make a list non editable?

88. How ACL table none and * works?

1. --None--: Grant access to records and all fields in the records.
2. *: Grant access to all fields where there is no field-specific Access Control.

Read more here: ACL rules

89. When to use UI policy vs when to use ACL?

90. What is inbound/outbound action?


When servicenow tables are queried or some data is inserted to servicenow tables from an external app. For example we create an application that can create an incident record in service now.

Every table in service now have a WSDL exposing the methods that can be triggerd from outside.To check any table WSDL, just suffix? WSDL at end of the table


basicIntegration13112019 (8).png


Outbound Webservices is used when snow communicates with an external app to collect some information.For example we want get all CI information from HP uCMDB using webservice exposed by uCMDB. basicIntegration13112019 (9).png

91. What are user Criteria?

Service catalog enables you to apply user criteria to an item, defining which users can and cannot access that item.

You can apply user criteria to all types of catalog item, including order guides, content items, and record producers.

Note: The user criteria restriction applies only within Service Catalog for the specific item it is applied for. However, the user criteria restriction is not applied outside the Service Catalog where the user has access to the item via the table.

To apply user criteria to an item:


In an item record, navigate to the Available For or Not Available For related lists.

Click Edit to add an existing user criteria record, or click New to create a new one.

Save the record to associate the user criteria record with the item.


The Not Available For settings override Available For settings. A user on the Not Available For list for an item cannot access that item, even if that user is also on the Available For list for that item.

92. What is the use of cascade variables and Two step options in order guides?

Two step options

Check box to enable two step ordering instead of the default three-step ordering, omitting the final step. With two step ordering, selecting Check out submits the request immediately, then displays the order confirmation screen. This is not applicable for Service Portal.

cascade variables

Check box to select whether the variables used cascade, which passes their values to the ordered items. If this check box is cleared, variable information entered in the order guide is not passed on to ordered items.

93. What is scratch pad?

Scratch pad is the temparory variable that can be used in workflows, BR and client scripts.When we use the scratchpad in workflows we initiate it using below syntax: = current.caller_id; 

we can use anything instead of abc and assign any value to this scratchpad and use this scratchpad value in anyother activity in the same workflow as below :


Now when you use this scratchpad variable in BR then we initiate this object as below: = current.assignment_group; 

This should be used in Display BR and

Then we can use this scratchpad variable in client script as below:


94. What are the script include types?

There are three different type of script includes

1.On demand/classless

2.Extend an existing class

3.Define a new class

Extend an existing class

var Classdemo = Class.create();
Classdemo.prototype = Object.extendsObject(AbstractAjaxProcessor, {

    type: 'Classdemo'

Define a new class

var Classdemo = Class.create();
Classdemo.prototype = {
    initialize: function() {

    type: 'Classdemo'

95. Catalog item visibility for multi-tenant company?

96. How to Join activity in WF?

Join activity


An activity can also have multiple lines drawn from a single exit condition, pointing to multiple activities. If this is the case, these activities will execute simultaneously.

In a situation like this, it’s possible to save a workflow where one of these branches doesn’t have an exit condition (a transition to another activity), but it isn’t recommended. Instead, ServiceNow provides a Join activity, which you can use to merge the divergent paths back into a single transition-flow.

98. how many ways Notification can be triggered?

Notifications can be sent when:

1.Records are inserted or updated

2.Events are generated

3.The Notification activity executes in a workflow

Read more here: Notification

99. Example of Import set using script?

100. What are the types of BR?





5.Before Query

101. can we use on change script in onload script?

By default, they do. There is a little code added to the template using the isLoading flag to normally tell the script NOT to run when the form is loading. If you remove that, it will work.


      if (isLoading || newValue == '')

Change it to

      if (newValue == '')

It will run when the form is loading.

102. how many custom Table we can have in ServiceNow?

103. What is LDAP Integration and its use?

LDAP is Lightweight Directory Access Protocol.It is used for user data population and User authentication. Servicenow integrates with LDAP directory to streamline the user log in process and to automate the creation of user and assigning them roles

104. What is difference between scratchpad and ajax in clientscripts ?

Ajax is a proper may of calling a script include into client script and getting values from server which runs when we call it.