Service Now Integration Interfaces :

ServiceNow is a Database driven application. Every peace of data and Configurations within the applications are resides inside database.This data and Configurations are often displayed form of modules,options and forms. Every form in the system is essentially a database table.


In Service Now we reference any table by using standard URL format, and to directly access any table or form with in the Service Now instance, simply type the database table name in the URL and Append .do extension to that table name.

Example:  Incidents

URL: https://dev12552.service-now.com/incident.do

1.  Every table in Service Now instance has number of built in interfaces that allow third
     party applications access the data resides within the table.

2. These interfaces are auto regenerated that means any new custom tables/new fields are
     automatically accessible to these interfaces.

3. Each table within the table has web services API set that will provide you CRED 
    operations.

CREAD:

C ==> Create
R ==> Read
E ==> Edit
D ==> Delete

All of this interfaces are protected with basic authentication by default

Proof of Concepts Using SOAP UI:

"Soap UI is an open source web service testing application for service-oriented architectures (SOA). Its functionality covers web service inspection, invoking, development, simulation and mocking, functional testing, load and compliance testing." 

We can use SOAP web service interface(SOAP UI) tool, If we want to explore Web Services functions available.

==> Installation of SOAP UI tool:

1. Download SOAP UI tool from here www.soapui.org
2. Install the downloaded file and Open the tool

 ==> Create Project a Project in SOAP UI:

1. Open SoapUI
2. Click File > New SOAP Project
3. Project Name: IncidentInterface
5. Click OK to finish

 ==> Authentication
 Alternatively users can also set authentication using Auth option available in bottom of tool


 Example 1: Insert new incident

1. Double click the insert operation

2. Update the XML file as needed

Sample XML:
-------------------------------------------------------------------------------------------------------------------------


-------------------------------------------------------------------------------------------------------------------------
3. Select the green arrow to submit the soap request
4. You will receive a soap response that the the incident was created. Example response below
-------------------------------------------------------------------------------------------------------------------------



--------------------------------------------------------------------------------------------------------------------------




  Example 2: Update an existing incident

We need to pass sys_id value of the incident record  in XML request for updating an existing incident

Example 3: Delete an Incident

We need to pass sys_id value of the incident record  in XML request for deleting an existing incident

========================================================================

 

 


 





The behavior of a different modules in Service-now instance can be controlled by System Properties.
System Properties are just like global variables in general.  If we need  a variable value that should be available system-wide then it is a best practice to put that value in a system property so that we can use that property where ever required. In addition to that any changes to system property values later  can be managed easily.

It’s always a good idea to be aware of the different properties in the Service Now instance and How they function. Business rules, UI actions, UI pages  and other scripts depend  on system property values.Using a system property instead of a hard-coded value in server-side scripts makes the system easier to maintain and gives you the flexibility to make changes to the system's behavior without reprogramming with system property values

Standard System properties consist of following

1. Name
2. Application
3. Description
4. Type
5. Value
6. Roles

 ==> All system properties in ServiceNow instance are stored in System Property
            [sys_properties] table




How to open sys_properties table:

1. Go to Application Navigation section
2. Type sys_properties.list in filter box, it will automatically opens up the sys_properties table
3. We can add custom in sys_properties table

Creating or Editing a Property:

Most of the system properties can be found in your left navigation under the ‘System Properties’ application as shown above. ALL of the properties in the system are stored in the ‘sys_properties’ table and can be viewed and edited there by typing ‘sys_properties.list’ into the left navigation filter.
You can add a property to your system simply by creating a new record in the ‘sys_properties’ table

1. Enter sys_properties.list in the navigation filter.
2. The entire list of properties in the System Properties [sys_properties] table appears. 
3. Verify the property that you want to create does not already exist.
4. Click New
5. Complete the form as follows (see table)
6. Click Submit.  



 System Properties v/s Properties page:

System Properties and Properties page both allows  users to add values to particular property, but the difference is properties page allows you to set values diffrent properties from single page where as in System Properties we make changes to diffrent property records.


 It’s great to be able to modify properties from the properties table, but it’s a lot more convenient to make the edit through a properties page. Properties pages are what you get when you click on a module under the ‘System Properties’ application in the left navigation of your Service-now instance.
Properties pages are really just a URL that pulls together one or more System Property Categories into a single UI page to be viewed. You can create or modify these categories by navigating to ‘System Properties->Categories’. Here’s what one of the properties categories looks like for the Email settings out-of-box…

Please refer to ServiceNow hosted video on System Sroperties

=========================================================================












 

Users can navigate to a record or module directly by using a URL. This article explains the URL schema by which the system generates pages.


Basic URL format:

Example: https://dev12552.service-now.com/

==> https://dev12552.service-now.com/   -----> base URL
==> dev12552                                          ------> Instance name                   
==> https://dev12552.service-now.com/  <====>  https://.service-now.com

======================================================================

Extended URL format:

Below URL generated by search for admin user operation. We will discuss about each component 
of URL

https://dev12552.service-now.com/sys_user_list.do?sysparm_query=user_nameSTARTSWITHadmin
==> https://dev12552.service-now.com/   -->  base URL
==> sys_user_list.do                                 -->  table name_list.do
==> sysparm_query=user_name               -->  sysparm_query=fieldname
==> STARTSWITH                                     -->  search operator
==> admin                                                  -->  search string


================================================================================

Few Examples: 

Note: Replace dev12552 with your ServiceNow instance name

1. Find All Active Incidents

https://dev12552.service-now.com/incident_list.do?sysparm_query=state%3D2

2. Find All Active Incidents Grouped by Category

https://dev12552.service-now.com/nav_to.do?uri=incident_list.do?sysparm_query=active=true^GROUPBYcategory

3. Export all active incidents to PDF

https://dev12552.service-now.com/nav_to.do?uri=incident_list.do?sysparm_query=active=true%26PDF

4. Export all priority 1 active incidents to CSV

https://dev12552.service-now.com/nav_to.do?uri=incident_list.do?sysparm_query=active=true^priority=1%26CSV

================================================================================

How to capture URL:

1. Construct your query in ServiceNow and Run the query

2. Right click on condition and Copy the URL


3. This URL is direct reference to the ServiceNow database

=======================================================================