Unmatched API extension classes

  • Release version: Washingtondc
  • Updated February 1, 2024
  • 3 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Unmatched API Extension Classes

    The Unmatched API Extension Classes feature, part of the CMDB CI Class Models store app, allows users to add or update classes for unmatched APIs. This functionality enhances the CMDB class hierarchy by introducing new class models that include class descriptions, identification rules, and relationships. It is particularly useful for applications like Discovery and Service Mapping Patterns, which rely on these extensions to populate Configuration Items (CIs) and discover various technologies.

    Show full answer Show less

    Key Features

    • Unmatched API Endpoint Class: This class is used for APIs with unstructured endpoints that cannot populate existing API classes. It includes various attributes such as method, protocol, URL, and authorization types.
    • API Endpoint Discovered Table: Acts as a staging area for raw API data before it is processed into structured forms. Data that cannot be parsed correctly goes into the Unmatched API Endpoint class.
    • Data Management: Data populating the API Endpoint Discovered table is purged every 30 days, ensuring data relevance and accuracy.

    Key Outcomes

    By utilizing the Unmatched API Extension Classes, ServiceNow customers can effectively manage and integrate unstructured API data, allowing for improved visibility and tracking of API interactions. This leads to enhanced data quality and operational efficiency in IT service management, enabling better decision-making and resource allocation.

    The CMDB CI Class Models store app adds or updates classes for unmatched APIs (application programming interface).

    The app adds class models that extend the CMDB class hierarchy, including class descriptions, identification rules, identifier entries, and dependent relationships (if applicable). You can use the added classes as any other CMDB class. Applications such as Discovery and Service Mapping Patterns can use these class extensions to populate CIs and discover various technologies and software.

    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 CMDB classes in a base system, including ones that this store app might be extending, 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.

    Table 1. Unmatched API Endpoint [cmdb_ci_unmatched_api_endpoint]
    Attribute Data type Description
    Method String Backend protocol types of the API. Examples:
    • Lambda
    • HTTP
    • Logic App
    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:
    • Basic
    • Key
    • Oauth
    • None
    Request data types String (255) List of data types in the request. Examples:
    • CC
    • Email
    • Address
    Response data types String (255) List of data types in the response. Examples:
    • CC
    • Email
    • Address

    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 ensure 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.

    Table 2. API Endpoint Discovered [api_endpoint_discovered]
    Attribute Data type Description
    Name String (100) Name of the API endpoint.
    Method String REST API methods. Examples:
    • GET
    • POST
    • DELETE
    URL String (1024) URL of the resource being called.
    Type Choice list Type of API. You can specify:
    • REST
    • SOAP
    • HTTP
    • gRPC
    • GraphQL
    • Websocket
    Authorization String Type of authorization or authentication method. Example:
    • Basic
    • Key
    • OAuth
    • None
    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:
    • CC
    • Email
    • Address
    Response Datatypes String (255) List of data types in the response. Examples:
    • CC
    • Email
    • Address
    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:

    Table 3. API Deployment [api_deployment]
    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.