Get a first look at what's coming. The Developer Passport Australia Release Preview kicks off March 12. Dive in! 

Siyou Li
ServiceNow Employee

How to Copy (Duplicate) Feed

 

Overview

The Copy Feed (also referred to as “Duplicate ETL Transform Map”) feature in IntegrationHub ETL allows users to create a new ETL transform map by cloning an existing one. The new map inherits the full mapping configuration — class mappings, attribute mappings, field mappings, entity relationships, and operations — from the source map, saving significant setup time when building similar integrations.

Use Cases

  • Multiple environments with identical schemas: When you have several data sources (e.g., dev, staging, production) that share the same import set table schema, you can set up one transform map fully and duplicate it for each additional data source.
  • Iterating on a mapping: Create a copy of a working map to experiment with changes without affecting the original.
  • Templating for similar integrations: Build a “golden” transform map, then duplicate it as a starting point for new integrations that ingest data with the same column structure.

What Gets Copied


When a feed is duplicated, the following records are deep-copied from the source feed to the new feed (with all internal references re-pointed to the new records):

Record Type

Table

Description

Entities

cmdb_inst_entity

The import entity, temp entities, CMDB class entities, lookup entities, and related entities

Entity Fields

sys_rte_eb_field

All field definitions for every entity

Entity Mappings

sys_rte_eb_entity_mapping

Class-level mappings (import → temp, temp → CMDB class, etc.)

Field Mappings

sys_rte_eb_field_mapping

Attribute-level mappings within each entity mapping

Operations

sys_rte_eb_operation

Transform operations (scripts, lookups, concatenations, etc.), including records in extended operation tables

 


What Is Not Copied

  • Schedules (scheduled_import_set) — The new map is created without any schedule; users must configure scheduling independently.
  • Import sets — The new map does not inherit import set data; the user must select or pull a new import set.
  • Activation state — The new map is created in an inactive/draft state.

Prerequisites for Copying a Feed


The duplicate feature enforces several prerequisites. If any of these are not met, the “Create Duplicate” button will be disabled or the operation will fail with an error.

 

1. The source feed must be active

The “Duplicate from” dropdown only lists active feeds (cmdb_inst_application_feed records where active = true). Inactive or draft feeds do not appear as copy source options.

 

2. The new data source must be different from the source feed’s data source

The copy feed validation explicitly checks that the source data source and the target (new) data source have different sys_id values. You cannot duplicate a feed using the same data source — each data source can only be associated with one active ETL transform map.

 

3. The new data source must have the exact same import set table schema

This is the most common reason for validation failure. The copy feed function performs a strict column-by-column comparison between the source and target data source import set tables:

  • Both data sources must have a valid import_set_table_name.
  • Both import set tables must have at least one column.
  • The number of columns must be identical.
  • Every column name must match exactly, in the same order.

If any of these checks fail, the UI shows the error:

“This map cannot be used as a copy source for the selected data source.”

What this means for customers: Before duplicating, the target data source must have already been loaded at least once (so that the import set table and its columns exist), and the resulting import set table must have the exact same columns as the source data source’s import set table. Even a single extra or missing column will cause the validation to fail.

 

4. The new data source must be in the same application scope

The validation ensures the selected data source belongs to the same ServiceNow application scope as the current session. If the data source is in a different scope, the error message will read:

“The data source, ‘{name}’, is in the {scope A} application, but {scope B} is the current application. An ETL Map needs to be created from the same application scope as its data source.”

 

5. The data source’s import set table must not be associated with another active ETL map

The validation checks the sys_robust_import_set_transformer table. If another active ETL transform map already uses the same source_table (import set table name), the error will be:

“Data source table already associated with ‘{existing map name}’ ETL Map”

 

6. The data source’s import set table must not be associated with an active Table Transform Map

The validation checks the sys_transform_map table. If any active table transform map uses the same source_table, the error will be:

“Data source table already associated with ‘{transform map name}’ Table Transform Map”

Step-by-Step: How to Duplicate a Feed

 

Step 1: Navigate to the IntegrationHub ETL Landing Page

Open the CMDB Integration Studio. You will see a table listing all existing ETL transform maps, grouped by CMDB Application.

 

Step 2: Select the Feed to Duplicate

Click the checkbox next to the feed you want to duplicate. You must select exactly one feed. The duplicate button works with one selection; the selected feed will be pre-populated as the copy source.

 

Step 3: Click the “Duplicate” Button

Click the Duplicate button in the toolbar. This opens the “Duplicate ETL Transform Map” modal dialog. The modal displays a message:

“To duplicate an ETL transform map, the new transform map’s data source must share the same data schema as the original transform map.”

 

Step 4: Fill Out the Duplicate Form

The form presents the following fields:

Field

Required

Description

Duplicate from

Yes

Pre-populated with the feed you selected. You can change this to any other active feed from the dropdown.

CMDB Application

Yes

Select an existing CMDB Application to associate the new map with, or choose “Add New” to create a new one.

CMDB Application Name

Conditional

Only shown if “Add New” is selected. Enter a name for the new CMDB Application.

Discovery Source

Conditional

Only shown if “Add New” is selected. Select the discovery source for the new application.

Name

Yes

Enter a unique name for the new ETL transform map.

Description

No

Optional description for the new map.

Data Source

Yes

Search and select the data source for the new map. This is where the schema validation is triggered.

Preview Size Override

No

Optional. Must be a positive number less than 10,000.

 

Validation Behavior in the Form

  • When you select both a “Duplicate from” source and a Data Source, the system immediately validates whether the copy is allowed by comparing the import set table schemas.
  • If validation fails, an inline error appears below the Data Source field: “This map cannot be used as a copy source for the selected data source.” (or a more specific error message if the failure is due to a missing import set table, scope mismatch, or conflicting transform map).
  • The “Create Duplicate” button remains disabled until all required fields are filled and validation passes.

Step 5: Click “Create Duplicate”

Once the form is valid, click “Create Duplicate.” The system then:

  1. Creates a new CMDB Application (if “Add New” was selected).
  2. Creates a new application feed (cmdb_inst_application_feed). This also creates an associated sys_robust_import_set_transformer record.
  3. Creates a template state record (sn_int_studio_template_state).
  4. Navigates the user to the template state (step-by-step wizard) page for the new map.

Step 6: The Deep Copy Executes Automatically

When the template state page loads, it triggers the copy feed function, which copies all entities, fields, entity mappings, field mappings, and operations from the source feed to the new feed (as described in the “What Gets Copied” section above).

After the deep copy completes, the new map is fully populated with all the source map’s mapping configuration, and the user can begin modifying it as needed.

Common Issue: Why Deep Copy Is Skipped

If the source feed’s data source already has an active schedule, and the new feed shares a data source whose schedule record is found, the state of the copy source will be auto-updated to “Completed,” so the copy feed condition fails and the class/attribute mappings are never copied.

This results in a new feed that has no mapping configuration despite being created as a duplicate.

Version history
Last update:
2 hours ago
Updated by:
Contributors