Bi-directional Incident Integration Between Two ServiceNow Instances – Step-by-Step Guide
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-18-2025 04:39 AM
Step 1: Create a User in Instance 1
Navigate to User Administration > Users and create a new user (e.g., User ID: harshil) with a secure password.
Enable the "Web service access only" checkbox. This restricts the user from logging into the instance via the UI and allows access only via web services.
Assign the roles: itil and web_service_admin to this user.
Step 2: Configure a REST Message in Instance 2
To send outbound REST requests from Instance 2 to Instance 1, you need to configure a REST Message.
Navigate to: System Web Services > Outbound > REST Message
Click New, provide a name (e.g., Instance-2 RM) and define the Endpoint.
To get the correct endpoint URL, go to Instance 1 and navigate to:
System Web Services > REST > REST API ExplorerCopy the following URL format:
https://dev192954.service-now.com/api/now/table/{tableName}Replace {tableName} with incident for this use case.
Set the Authentication Type to Basic and create a new Basic Auth Profile with:
Name: Your preferred name
Username: harshil (Instance 1 user)
Password: Same password used in Instance 1
5. Submit the REST Message. You'll now see a default GET method under the HTTP Methods related list.
Step 3: Create a New POST Method
Scroll to the HTTP Methods related list and click New.
Name it POST, set the HTTP Method to POST, and Save the record.
Click Preview Script Usage Related Link and copy the generated script for use in the Business Rule.
Step 4: Create a Business Rule in Instance 2
Navigate to System Definition > Business Rules and create a new Business Rule.
Name: Create tasks in Ins-1
Table: Incident
Check Advanced and select After Insert
Go to the Advanced tab and paste the script you copied from the POST method.
Remove any unnecessary comments from the script.
Create a body object to define the fields you want to send. For example, to send short_description and caller_id:
Testing the Integration
Now, try creating a new incident in Instance 2. It should automatically create a corresponding incident in Instance 1 with the same values(Short description and Caller).
With half of the process complete, repeat the same four steps, but this time switch the roles of the instances
Step 1: Create a User in Instance 2
Navigate to User Administration > Users and create a new user (e.g., User ID: hasan) with a secure password.
Enable the "Web service access only" checkbox. This restricts the user from logging into the instance via the UI and allows access only via web services.
Assign the roles: itil and web_service_admin to this user.
Step 2: Configure a REST Message in Instance 1
To send outbound REST requests from Instance 1 to Instance 2, you need to configure a REST Message.
Navigate to: System Web Services > Outbound > REST Message
Click New, provide a name (e.g., Instance-1 RM) and define the Endpoint.
To get the correct endpoint URL, go to Instance 2 and navigate to:
System Web Services > REST > REST API ExplorerCopy the following URL format:
https://dev123456.service-now.com/api/now/table/{tableName}Replace {tableName} with incident for this use case.
Set the Authentication Type to Basic and create a new Basic Auth Profile with:
Name: Your preferred name
Username: hasan (Instance 2 user)
Password: Same password used in Instance 2
- Submit the REST Message. You'll now see a default GET method under the HTTP Methods related list.
Step 3: Create a New POST Method
Scroll to the HTTP Methods related list and click New.
Name it POST, set the HTTP Method to POST, and Save the record.
Click Preview Script Usage Related Link and copy the generated script for use in the Business Rule.
Step 4: Create a Business Rule in Instance 1
Navigate to System Definition > Business Rules and create a new Business Rule.
Name: Create tasks in Ins-2
Table: Incident
Check Advanced and select After Insert
Go to the Advanced tab and paste the script you copied from the POST method.
Remove any unnecessary comments from the script.
Create a body object to define the fields you want to send. For example, to send short_description and caller_id:
Testing the Integration
- 882 Views
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
07-10-2025 01:45 PM
Hi! I'm the community manager at Exalate.
Great breakdown — this is a solid guide for setting up manual bi-directional integration between two ServiceNow instances using REST messages and business rules. Very helpful for teams who need full control and don’t mind working with scripts.
If you're ever looking to streamline this setup or avoid maintaining custom scripts long-term, there are tools that handle this out of the box. For example, Exalate supports bi-directional synchronization between ServiceNow instances, with the ability to customize which fields are synced, without running into infinite loop issues.
Each approach has its place depending on your goals, but thought it might be helpful to mention if anyone’s exploring other options.