
Use IntegrationHub ETL for most third-party feeds, Service Graph Connectors for supported vendors, and scripted IRE when a payload spans multiple CMDB classes with relationships. Whichever route you pick, the Identification and Reconciliation Engine (IRE) is the mandatory reconciliation layer. No CI reaches the CMDB cleanly without passing through it.
Your immediate next step:
- Check the ServiceNow Store for a supported connector for your source system first
- If none exists, build an IntegrationHub ETL flow and run a guided test import before scheduling anything
- If the source produces multiple related CI classes in one payload, plan for scripted IRE rather than forcing it through a transform map
Key Takeaways
Reliable ServiceNow CMDB integration depends on choosing the right ingestion tool for each source, then treating IRE reconciliation as non-negotiable rather than optional.
| Point | Details |
|---|---|
| Match tool to source | Use IntegrationHub ETL for general third-party data, Service Graph Connectors for supported vendors. |
| Treat IRE as mandatory | Every integration path must pass through IRE reconciliation, never bypass it for speed. |
| Use scripted IRE for relationships | Multi-class payloads with connections need scripted IRE, not standard transform maps. |
| Monitor continuously | Check the CMDB Integrations Dashboard for run history and errors, not just at go-live. |
| Fix lookup keys first | Duplicate CIs and broken reconciliation almost always trace back to a weak identifier. |
Table of Contents
- ServiceNow integration options and when to pick each
- Step-by-step: source data to reconciled CI
- Getting classifier logic and IRE mapping right
- Testing, monitoring and keeping integrations healthy
- Common pitfalls and a fast troubleshooting checklist
- How PODTECH applies these patterns in mission-critical environments
- What the research actually supports about CMDB integration
- Sources
ServiceNow integration options and when to pick each
Four tools handle third-party data ingestion into ServiceNow, and each solves a different problem.
- IntegrationHub ETL stages incoming data, runs it through the Robust Transform Engine (RTE), and hands off to IRE for reconciliation. It includes guided setup and a test integration run feature that previews mapping before you schedule anything live. This is the default for spreadsheets, flat files, and APIs without a packaged connector.
- Service Graph Connectors are packaged integrations for named vendor systems. The SolarWinds connector pulls asset inventory straight into CMDB target tables via the same RTE and IRE pipeline, and SGC Central manages the connector’s lifecycle once installed.
- Integration Hub spokes cover API and workflow scenarios that fall outside CMDB ingestion, such as ticket creation or credential-driven flows. The product page lists prebuilt spokes plus a spoke generator for custom endpoints, and Remote Tables let you query external data without importing it at all.
- Import Sets with transform maps still work for quick, single-table loads. They lack native relationship handling, though, so anything beyond a flat CI list needs IRE layered on top.
Step-by-step: source data to reconciled CI
Every integration, regardless of tool, follows the same five-stage path.
- Define the source and discovery source. Decide how data arrives (API pull, file drop, database extract) and tag the ServiceNow discovery source field so provenance is traceable later.
- Import to staging. Land the raw payload in a staging table and preview it before any transformation touches production tables.
- Normalise source fields. Strip inconsistent casing, standardise date formats, and resolve unit mismatches before mapping begins.
- Configure classifier logic and map to CMDB classes. Assign each source field to its target CMDB attribute, and set classifier rules that decide which class a record belongs to.
- Generate IRE payloads and test. Use RTE for standard mappings or scripted IRE for multi-class relationships, run a guided test, validate the output, then schedule the recurring job.
If your source delivers nested JSON, set the field to Data in single column so IntegrationHub ETL recognises the nested structure before you apply transforms. Skipping this step is a common reason mapped fields come through blank.
Pro Tip: Run your first test import against a subset of records, not the full dataset. A small sample surfaces classifier errors just as reliably as a large dataset, and it fails fast instead of locking up a production run.

Getting classifier logic and IRE mapping right
IRE reconciles records using lookup keys, not row order or record ID. A serial number, a MAC address, or a combination of hostname and IP address all work as stable identifiers, provided the source system supplies them consistently on every run.
Classifier logic is what decides which CMDB class a record lands in before IRE ever sees it. Typical patterns include:
- Matching an operating system string to route a payload to
cmdb_ci_win_serverversuscmdb_ci_linux_server - Using a naming convention prefix (
SW-,RTR-) to separate switches from routers - Applying attribute heuristics, such as port count or firmware version, when the source system doesn’t label device type explicitly
For payloads that create several CI classes and their relationships in a single run, community guidance points to scripted IRE over standard ETL guided maps. The pattern builds an items-and-relations JSON structure inside an OnBefore transform script, then calls the IRE API directly.
A flat CI import with no relationship data is barely better than a spreadsheet. The value of a CMDB comes from knowing what connects to what, not just what exists.
Reach for scripted IRE the moment your source describes a server, its interfaces, and its upstream switch in one feed. ETL guided maps handle single-class imports well; they were never built for that level of relational complexity.
Testing, monitoring and keeping integrations healthy
A CMDB integration isn’t finished when the first run succeeds. It needs a monitoring routine from day one.
- Use the IntegrationHub ETL test run feature to preview mapping output before every schedule change, not just at initial setup
- Check the CMDB Integrations Dashboard regularly for run history, error counts, and processing status across every connector and ETL flow
- Set alerts on failed or partial runs so a broken source feed doesn’t silently stop updating CIs for weeks
- Batch large imports and schedule them off-peak to avoid locking production tables during business hours
Statistic callout: ServiceNow’s own IntegrationHub ETL documentation lists guided setup, staging tables, and built-in IRE processing as its core advantages over legacy Import Sets, precisely because unmonitored transform maps tend to fail silently rather than loudly.
Common pitfalls and a fast troubleshooting checklist
Most CMDB integration failures trace back to one of three causes, and all three are avoidable with a bit of discipline upfront.
- Duplicate CIs almost always come from a weak or inconsistent lookup key. Fix it by choosing a hardware-based identifier, such as serial number, over a name field that can change.
- Missing relationships usually mean the transform map only handled the CI record, not the connection data. Check whether the source needs scripted IRE instead of a standard map.
- Overwritten authoritative fields happen when a lower-priority source is allowed to update a field another system already owns. Protect it with identification rules or field-level authority settings.
When a run fails, work through it in order: inspect the staging table first, then the transform logs, then the IRE output. Nine times out of ten, the fault sits in one of those three places.
How PODTECH applies these patterns in mission-critical environments
Data centres, financial trading floors, and construction safety systems share one trait: a stale or duplicated CI isn’t a minor inconvenience, it’s an operational risk. PODTECH builds CMDB integrations for exactly these environments, drawing on its DCIM consultancy work and BMS/PMS integration experience where telemetry from building systems has to reconcile against ServiceNow with zero tolerance for missing relationships.
A typical engagement runs through four stages:
- Discovery, mapping every source system and its data quality
- Mapping, defining classifier logic and lookup keys before a single record moves
- Pilot, a scoped test run against a sample dataset
- Production and managed ops, with monitoring handed to PODTECH or the client’s own team
The projects that go wrong are not the technically hard ones. They are the ones where nobody agreed on the lookup key before the first import ran.
What the research actually supports about CMDB integration
The conventional advice treats CMDB integration as a mapping exercise: connect field A to field B and move on. That undersells the problem. The hard part is never the field mapping, it’s deciding on the lookup key and the classifier logic before the first record moves, because retrofitting those decisions after a few thousand duplicate CIs exist is far more painful than getting them right on day one.
IntegrationHub ETL gets credit for removing scripting, and mostly it does, but community guidance is right that it doesn’t remove the need to test classifier logic properly. Guided setup makes the tool easier to use. It doesn’t make the underlying data model decisions easier to get right.
If you take one thing from this, prioritise the lookup key conversation over the transform map. Everything downstream, duplicates, broken relationships, dashboard alerts, traces back to that one decision. Teams that treat it as an afterthought spend months cleaning up what a half-day workshop would have prevented.
— Harry
Sources
- IntegrationHub ETL — ServiceNow documentation
- Service Graph Connector for SolarWinds — ServiceNowDocs (GitHub)
- Integration Hub — ServiceNow product page