I need help to implement below

SagarGadakh
Tera Contributor

Hello.

 

I need help to implement below. Please get in touch with me if anyone can help.

 

Create a incident in another system for particular group + categories using flow that should use minimum 3 sub flows SN 1 and SN2

  1. check user exist or not, if not create a user
  2. Create a incident when a ticket is assigned to Group A or Group B or Group C and cat 1 as A or Cat 1 as B or Cat 1 as C.
  3. Pass attachments as well
  4. Monitoring in case of failures using SOW(create integration as Service)
2 REPLIES 2

Itallo Brandão
Tera Guru

Hi Sagar,

Yes, there is a completely native feature that acts exactly like a "mirror". It is called Instance Data Replication (IDR).

However, based on your specific requirements (checking if a user exists, conditional groups), you should weigh the pros and cons:

Option 1: Instance Data Replication (IDR) - The "Mirror"

IDR is designed to copy data from a Producer instance to a Consumer instance in near real-time.

  • Pros: fast, native, handles attachments, requires no code.

  • Cons: It is primarily a Data replication tool, not a Process tool.

    • The Risk: If you replicate an Incident, but the User (Caller) does not exist on the target system yet, IDR might fail or leave the field empty. It does not natively have the logic "If user missing -> Create User" effectively without complex transform scripts.

    • Licensing: IDR often requires a specific subscription level.

Option 2: Remote Process Sync (Recommended)

ServiceNow has a feature specifically for syncing tickets between instances, called Remote Process Sync (formerly eBonding).

  • It is designed to handle the lifecycle of a ticket (Open -> Work in Progress -> Closed).

  • It handles the mapping of fields and attachment syncing natively.

 

If this clarifies the native options available, please mark it as Accepted Solution.

Best regards,
Brandão.

Matthew_13
Mega Sage

Hi Buddy,

You can absolutely do this with a parent Flow + subflows, and it’s the right approach if you want it clean and supportable.

High level build:

1) Parent Flow (on Incident)

Trigger it when the Incident is assigned to Group A / B / C AND Category (Cat1) is A / B / C.
Also add a guard so it doesn’t create duplicates (ex: only run if External Incident ID is empty).

Flow steps:

  • Call subflow to check/create user in the other system

  • Call subflow to create the external incident

  • Call subflow to push attachments

  • If anything fails, set a status field (Failed) and capture the error so it’s easy to monitor

2) Subflow 1 — Check if user exists, if not create it

Input: caller details (email/name/etc.)
Steps:

  • GET user in external system by email/username

  • If not found → POST create user
    Output: external user id

3) Subflow 2 — Create external incident

Input: incident data + external user id
Steps:

  • Build payload (short desc, desc, priority, category mapping, etc.)

  • POST to external system
    Output: external incident id (save it back on the SN incident)

4) Subflow 3 — Attachments

Input: incident sys_id + external incident id
Steps:

  • Pull attachments from sys_attachment

  • Loop through them and upload to external system (either multipart or base64 depending on API)

Monitoring (SOW / Integration as a Service)

The easiest way is to:

  • store Sync Status + Last Error on the incident

  • and/or log each transaction to an “integration transaction” record
    Then you can surface failures in Service Operations Workspace with a list/report/dashboard (failed in last 24h, error reason, retries

@SagarGadakh - Please mark Accepted Solution and Thumbs Up if you found helpful!

MJG