Unmatched API extension classes
Summarize
Summary of Unmatched API extension classes
The CMDB CI Class Models store app for the Zurich release introduces support for handling unmatched API endpoints within the ServiceNow CMDB. These unmatched APIs typically come from integrations like security scanners or observability tools and have endpoint structures that cannot populate the standardcmdbciapiorcmdbciapicomponentclasses. Instead, they populate the newUnmatched API Endpoint [cmdbciunmatchedapiendpoint]class, which extends the CMDB hierarchy and enables these APIs to be managed as Configuration Items (CIs).
Show less
This enhancement allows customers to better organize and discover APIs that do not conform to standard structures, enabling applications such as Discovery and Service Mapping Patterns to utilize these class extensions for improved CI population.
Key Features
- New Class for Unmatched APIs: Introduction of the cmdbciunmatchedapiendpoint class to represent API endpoints with unstructured data.
- Class Attributes: Attributes added include Method (backend protocol), Protocol (communication protocol), URL, Unique ID from source, Internet Facing (boolean), Authorization type, Request data types, and Response data types. These attributes help define and describe the unmatched API endpoints in detail.
- Support for Raw API Data Processing: The API Endpoint Discovered [apiendpointdiscovered] non-CMDB table serves as a staging area for raw, unstructured API data that cannot be handled by IntegrationHub-ETL. This table holds API data temporarily (purged every 30 days) before promoting it to structured CMDB classes or the unmatched API endpoint class.
- Flexible Data Integration: Customers can define integrations to promote raw API data either to the standard cmdbciapi or cmdbciapicomponent classes if structured, or to cmdbciunmatchedapiendpoint if data remains unstructured.
- Related Tables: The unmatched API class integrates with the API Deployment [apideployment] table, which links deployed APIs to their respective CIs, supporting manual references when automatic matching is not possible.
Practical Benefits for ServiceNow Customers
- Enables comprehensive CMDB coverage by including APIs with non-standard endpoint formats that previously could not be cataloged.
- Improves integration and discovery capabilities by supporting a broader range of API data sources, including those used by security and observability tools.
- Provides detailed attributes and relationships to better understand and manage unmatched APIs within the existing CMDB structure.
- Supports efficient data handling with staging and promotion processes, ensuring only high-quality API data populates the core CMDB tables.
- Enhances the ability to track API deployments and their associated CIs, improving asset management and operational visibility.
The CMDB CI Class Models store app adds or updates classes for unmatched APIs. API endpoints that are not structured well enough to populate the API [cmdb_ci_api] and API Component [cmdb_ci_api_component] classes instead populate the Unmatched API Endpoint [cmdb_ci_unmatched_api_endpoint] class. Unmatched APIs are typically used by integrations like security scanners or observability tools.
The CMDB CI Class Models app adds class models that extend the CMDB class hierarchy, including class descriptions, identification rules, identifier entries, and, if applicable, dependent relationships. You can use the added classes just like any other CMDB class. Applications such as Discovery and Service Mapping Patterns can use the class extensions to populate CIs and discover technologies and software.
See the CMDB CI Class Models release notes.
Request apps on the Store
Visit the ServiceNow Store website to view all the available apps and for information about submitting requests to the store. For cumulative release notes information for all released apps, see the ServiceNow Store version history release notes.
Unmatched APIs
API endpoints that are not structured well enough to populate the API [cmdb_ci_api] and API Component [cmdb_ci_api_component] classes instead populate the Unmatched API Endpoint [cmdb_ci_unmatched_api_endpoint] class. Unmatched APIs are typically used by integrations like security scanners or observability tools.
Classes
This section lists the classes that the CMDB CI Class Models store app adds or updates.
CMDB CI Class Models: Release 1.49.0 adds the following class for unmatched API endpoints. For the list of classes in the base system, including classes that this app might extend, see CMDB tables descriptions.
| Class | Extends | Description |
|---|---|---|
| Unmatched API Endpoint [cmdb_ci_unmatched_api_endpoint] |
Configuration Item [cmdb_ci] |
APIs with unstructured endpoints that cannot populate cmdb_ci_api or cmdb_ci_api_component. |
Class attributes
CMDB CI Class Models: Release 1.49.0 adds the following attributes to the Unmatched API Endpoint [cmdb_ci_unmatched_api_endpoint] class.
| Attribute | Data type | Description |
|---|---|---|
| Method | String | Backend protocol types of the API. Examples:
|
| Protocol | String | Communication protocol. Example: HTTP, HTTPS. |
| URL | String (1024) | URL of the resource being called. |
| ID | String (1024) | Unique identifier from the source system. |
| Internet Facing | Boolean | Boolean that denotes whether the component is reachable from the public internet. Specify 1 or "true" if the component is reachable. |
| Authorization | String | Type of authorization or authentication method. Example:
|
| Request data types | String (255) | List of data types in the request. Examples:
|
| Response data types | String (255) | List of data types in the response. Examples:
|
Key Relationship Structures
The Unmatched API Endpoint [cmdb_ci_unmatched_api_endpoint] CMDB class and API Endpoint Discovered [api_endpoint_discovered] non-CMDB table are intended for scenarios where unstructured API data is ingested and needs to be processed beyond the capabilities of IntegrationHub-ETL.
API Endpoint Discovered [api_endpoint_discovered] can serve as a staging table for raw data for the API [cmdb_ci_api] and API Component [cmdb_ci_api_component] classes. API data that does not come from a well-structured data source or cannot have standard identification rules applied can first populate the API Endpoint Discovered [api_endpoint_discovered] table. You can then use a customer-defined integration to promote that well-formed data that matches the quality and condition requirements for API [cmdb_ci_api] and API Component [cmdb_ci_api_component] populates the most appropriate table.
In cases where the data cannot be correctly parsed or is structured in an unexpected fashion, you can instead use a customer-defined integration to populate the Unmatched API Endpoint [cmdb_ci_unmatched_api_endpoint] table.
Data that populates the API Endpoint Discovered [api_endpoint_discovered] table is purged every 30 days.
| Attribute | Data type | Description |
|---|---|---|
| Name | String (100) | Name of the API endpoint. |
| Method | String | REST API methods. Examples:
|
| URL | String (1024) | URL of the resource being called. |
| Type | List | Type of API. You can specify:
|
| Authorization | String | Type of authorization or authentication method. Example:
|
| Internet Facing | Boolean | Boolean that denotes whether the component is reachable from the public internet. Specify 1 or "true" if the component is reachable. |
| Request Datatypes | String (255) | List of data types in the request. Examples:
|
| Response Datatypes | String (255) | List of data types in the response. Examples:
|
| Headers | String (255) | Comma-separated list of header names. |
| Configuration Item | Reference | Reference to a matching CMDB CI (API Component or Unmatched API Endpoint). |
Related non-CMDB tables
The Unmatched API extension class uses the API Deployment [api_deployment] non-CMDB table as a related list:
| Attribute | Data type | Description |
|---|---|---|
| Name | String (100) | Name of the API deployment. |
| API | Reference | Reference to the deployed API (cmdb_ci_api). |
| Unmatched API Endpoint | Reference | Reference to the unmatched API endpoint, if the API doesn't match an existing API (cmdb_ci_unmatched_api_endpoint). |
| Configuration Item | Reference | Reference to the Configuration Item. This is typically manually specified as a reference, if you know what CI the API is deployed to. |