API Management

Leverage API management system to get a consolidated understanding

Modern API Management solution provide a variety of advanced functionality on orchestration, governance & much more. API Catalog explains how VSM can provide value by streamlining that information. This page guides you to through the available technical solutions.

Native integrations

VSM provides native integrations into some of the most popular solutions;

Build a custom integration

The LeanIX Integration API provides a highly flexible way to map API data into the Data Model. The following processor and sample LDIF provides a baseline that could be easily extended, e.g. to write:

{
    "processors": [
        {
            "processorType": "inboundFactSheet",
            "processorName": "API FS creation",
            "type": "API",
            "filter": {
                "exactType": "API"
            },
            "identifier": {
                "external": {
                    "id": {
                        "expr": "${content.id}"
                    },
                    "type": {
                        "expr": "externalId"
                    }
                }
            },
            "run": 0,
            "updates": [
                {
                    "key": {
                        "expr": "name"
                    },
                    "values": [
                        {
                            "expr": "${data.app}"
                        }
                    ]
                }
            ]
        },
        {
            "processorType": "inboundRelation",
            "processorName": "Relation from API to Consumer Microservice",
            "type": "relAPIToConsumerMicroservice",
            "filter": {
                "exactType": "API"
            },
            "from": {
                "external": {
                    "id": {
                        "expr": "${content.id}"
                    },
                    "type": {
                        "expr": "externalId"
                    }
                }
            },
            "to": {
                "external": {
                    "id": {
                        "expr": "${integration.valueOfForEach}"
                    },
                    "type": {
                        "expr": "externalId"
                    }
                }
            },
            "run": 1,
            "forEach": "${data.consumers}"
        },
        {
            "processorType": "inboundRelation",
            "processorName": "Rel from API to Provider Microservice",
            "type": "relAPIToProviderMicroservice",
            "filter": {
                "exactType": "Interface"
            },
            "from": {
                "external": {
                    "id": {
                        "expr": "${content.id}"
                    },
                    "type": {
                        "expr": "externalId"
                    }
                }
            },
            "to": {
                "external": {
                    "id": {
                        "expr": "${data.provider}"
                    },
                    "type": {
                        "expr": "externalId"
                    }
                }
            },
            "run": 1
        }
    ]
}
"content": [
  {
    "type": "API",
    "id": "API-123",
    "data": {
      "name": "Test API",
      "provider": "MS-123",
      "consumers": ["MS-456", "MS-789"]
    }
  }
]

End-to-End example: Leverage Jaeger to detect APIs and call frequency

Jaeger is a popular Open-Source distributed tracing project. It helps to monitor and troubleshoot transactions in complex distributed systems, while it can create architecture graphs as fallout as well.

The Jaeger HotROD example can be used to demonstrate getting API data into VSM within minutes. To get started, run the Jaeger Backend and the HotROD client as in the tutorial. Then, use jaeger.py to extract an LDIF from your local Jaeger environment.

🚧

Attention

In productive settings, using the gRPC/Protobuf API is recommended.

The extracted LDIF can then be uploaded to your VSM workspace using the Integration API and a processor set like provided here. It will immediately give you:

a) A list of connected Microservice and API Fact Sheets

b) The opportunity to use the Data Flow or Relation Explorer to navigate and export dependencies

c) The option to use tracing data on heatmaps, e.g. grouped by providing Microservice

d) Tracing data over time in the Metrics module


Did this page help you?