The CreatorCon Call for Content is officially open! Get started here.

Common Connection Framework ( CCF ) Implementation for Service Graph Connectors

New Developer_S
Giga Sage

Hi Developers,

 

I am looking for inputs on Implementations of CCF for our Service Graph Connector.

If any one has implemented it, could you please share some screenshots for setting this up ?

 

Many thanks in advance,
Hanu

3 REPLIES 3

Ravi Gaurav
Giga Sage
Giga Sage

Hi @New Developer_S 

 

This is a great topic - ServiceNow’s Common Connector Framework (CCF) is still newish, so documentation/examples are thin outside of the official docs. Let me break it down for you in a structured way so you can get started with implementing Service Graph Connectors using CCF:

 

What is CCF in Service Graph Connectors?

  • CCF = Common Connector Framework.

  • It’s a standardized framework introduced by ServiceNow to build integration connectors (esp. for Service Graph/CMDB).

  • Instead of writing custom ETL logic, you define stages:

    • Source Data Retrieval

    • Staging Transformation

    • Load into CMDB via Identification & Reconciliation (IRE)

Think of it as a pluggable framework that ensures consistency, reusability, and upgrade-safe connectors.

Core Components of CCF

  1. Connection & Credential Aliases

    • Define reusable endpoints (API, JDBC, etc.) with authentication.

  2. Connector Definition

    • High-level metadata about your connector (name, version, type, scope).

  3. CCF Pipeline

    • A sequence of steps to fetch, normalize, and push data into staging tables.

    • Each stage has configurable actions.

  4. Staging Tables

    • You don’t load directly into CMDB.

    • Data lands in u_ccf_staging_* tables → then processed by IRE into CMDB classes.

  5. Transformation Maps / Data Pipes

    • Maps attributes from source → staging → CMDB model.

Steps to Implement CCF for a Connector

Here’s a practical sequence:

1. Create a Connector Definition

  • Navigate to: Service Graph Connectors > Administration > Connectors.

  • Define:

    • Name (e.g., SolarWinds CCF Connector).

    • Scope (recommended: custom scoped app).

    • Source System metadata.

2. Build a Connection & Credential

  • Go to Connections & Credential Aliases.

  • Example: REST API connection to SolarWinds, SCCM, etc.

  • Test the connection works.

3. Design a CCF Pipeline

  • Navigate to: Service Graph Connectors > Administration > Pipelines.

  • Create a Pipeline for your connector.

  • Add Stages:

    • Extract Stage: Define data retrieval (e.g., REST API, JDBC query).

    • Transform Stage: Clean/normalize data (scripts or mapping).

    • Load Stage: Push data to staging tables.

Each stage can be configured through Pipeline Script Includes or out-of-box activities.

4. Configure Staging Tables

  • Create staging tables for your CI types (if not already available).

  • Ensure they have:

    • Discovery Source field.

    • Attributes matching CMDB class.

  • Use these in your pipeline.

5. Map to CMDB (IRE)

  • Create Service Graph Connector Definitions to map staging → CMDB.

  • Configure Data Pipes that use IRE rules.

  • Example: u_ccf_staging_computer → cmdb_ci_computer.

6. Test & Validate

  • Run the pipeline manually.

  • Check staging tables for incoming data.

  • Confirm IRE loads unique CIs into CMDB (no duplicates).

Screenshots (how it looks)

Since I can’t paste actual system screenshots here, I’ll describe what you’d see:

  1. Pipeline Record Form

    • Tabs for Stages, Scripts, Errors.

    • Stage definitions with names like REST Data Fetch, Transform to Staging, IRE Load.

  2. Connector Dashboard

    • Run status: Success, Failed, In Progress.

    • Metrics: Number of records pulled, loaded, skipped.

  3. Staging Table Records

    • Raw source data before CMDB load.

    • Columns aligned to CI fields (e.g., name, IP, serial_number, discovery_source).

Best Practices

  • Always include discovery_source = your connector name.

  • Don’t coalesce directly in transform maps — let IRE handle it.

  • Use sys_created_on / sys_updated_on for troubleshooting data freshness.

  • Start small: test with one CI class (e.g., Servers), then expand.

References

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


If you found my response helpful, I would greatly appreciate it if you could mark it as "Accepted Solution" and "Helpful."
Your support not only benefits the community but also encourages me to continue assisting. Thank you so much!

Thanks and Regards
Ravi Gaurav | ServiceNow MVP 2025,2024 | ServiceNow Practice Lead | Solution Architect
CGI
M.Tech in Data Science & AI

 YouTube: https://www.youtube.com/@learnservicenowwithravi
 LinkedIn: https://www.linkedin.com/in/ravi-gaurav-a67542aa/

Hi @Ravi Gaurav ,

 

Thanks you for responding and giving response. 
 I am looking for Implementation steps in more detailed manner like tables to update and Scripts to update .
it would be great of you help me more on this.

Thanks In Advance,
Hanu

Sure I can Help.. Once you accept the above solution it provide me motivation to Create the Script for you

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


If you found my response helpful, I would greatly appreciate it if you could mark it as "Accepted Solution" and "Helpful."
Your support not only benefits the community but also encourages me to continue assisting. Thank you so much!

Thanks and Regards
Ravi Gaurav | ServiceNow MVP 2025,2024 | ServiceNow Practice Lead | Solution Architect
CGI
M.Tech in Data Science & AI

 YouTube: https://www.youtube.com/@learnservicenowwithravi
 LinkedIn: https://www.linkedin.com/in/ravi-gaurav-a67542aa/