Skip to content

0212 Deployed APIs

APIs exchange data structures and commands. Each API is an access point for data and so it is important to understand and control what data is passing over an API.

UML

DeployedAPI

The DeployedAPI is the entity that represents the API as an Asset. The deployedImplementationType attribute describes the class of technology that is used in its implementation. Values for the deployedImplementationType attribute can be managed for consistency in a deployed implementation type valid value set. The definition of the API's operations, their parameters and responses are described via the APISchemaType entity, which is connected to the DeployedAPI entity with the AssetSchemaType relationship.

The classifications RequestResponseInterface, ListenerInterface and PublisherInterface can be used to describe the style of the API. They can appear in combination on a single DeployedAPI.

APIs often provide remote access to DeployedSoftwareComponents. A DeployedAPI entity is linked to a DeployedSoftwareComponent entity via the ProcessCall relationship.

APIEndpoint

The APIEndPoint relationship identifies an API deployed at a particular network address (defined in Endpoint). THe example shown in the diagram belows shows that there are three APIs (Product Catalog API, Order API and Shipping API) deployed at the OrderManagement Endpoint. This relationship helps the consumer understand which APIs are available through a connection.

APIEndpoint example

RequestResponseInterface

The RequestResponseInterface classification indicates that the API provides a synchronous call with response.

ListenerInterface

The ListenerInterface classification indicates that the API registers with an event emitting asset (such as a Topic or a DataFeed) and processes events as they are received.

PublisherInterface

The PublisherInterface classification indicates that the API provides a subscribing mechanism that another component can use to register a ListenerInterface in order to receive events from the API that is the PublisherInterface.


Raise an issue or comment below