CA API Developer Portal: API Lifecycle Management

Screen Shot 2016-02-04 at 4.36.36 PM APIs are increasingly important to companies. APIs can provide developers new ways to access company data. With CA API Developer Portal, developers can easily browse, discover, interact with APIs, develop application against APIs and eventually enable their company’s business.

However, the more APIs we publish, the harder it becomes for us to manage them. Also, with more developers using the portal, all kinds of applications could be developed against different APIs. It is essential for us to keep APIs healthy and up-to-date, otherwise, applications depending on those APIs can be broken.

It is essential to have an efficient way to manage the lifecycle of APIs.

API Lifecycle Management

 

Design API

All APIs start from design stage.  API owners typically following this approach:

  • Determine the purpose of API
  • Design functions, operations, and methods, etc.
  • Create a WADL file for REST API or a WSDL for SOAP API
  • Create necessary instruction to help other developers understand this API.

Publish API on Gateway

In the CA API Management Suite, the CA API Gateway is the core engine. All APIs are actually hosted on the Gateway and it is what handles all the incoming and outgoing real-time traffic. Since all requests are centrally controlled on the gateway, we can apply security policies, etc. to secure the APIs on that gateway. Policy Manager can be used to develop policies on the gateway and configure the new API to be managed by CA API Developer Portal. API Key Management Fragment can be applied to the new API and then the API can be published on the gateway.

Screen Shot 2016-02-04 at 4.43.06 PM

Publish API on Portal

Once the API is published on CA API Gateway, the API is actually working, but for developers, they need a way to discover this API and interact with it to learn how to use it in their own applications. The CA API Developer Portal is like the store-front of CA API Gateway. APIs hosted on Gateway are displayed on CA API Developer Portal. There is a run-time and design-time separation between the gateway and portal. The portal is for design-time while all run-time traffic is still going through the gateway.

So after the API is published on gateway, we need to enable it on portal so that developer can see it and build applications against. CA API Developer Portal has the ability to automatically create Interactive Documentation for REST APIs using a WADL file.

Screen Shot 2016-02-04 at 4.47.19 PM

Develop Application Against APIs

Once the API is enabled on CA API Developer Portal, developers can log into the portal , discover the API from the API List, and interact with the API via the interactive documentation.

Once the developers have learned about this API, they can start building applications against it. You can log into the portal as a developer, create an Application, and select the target APIs.

Screen Shot 2016-02-04 at 4.49.25 PM

Monitor APIs and Applications

Once Applications are developed against your company’s API, real-time traffic will start going through the API that is hosted on the gateway. A cron job allows CA API Gateway to constantly push Gateway Metrics to CA API Developer Portal so that the Developer Portal will be able to graph the usage of the APIs and applications.

Developers can use these functions to monitor their own applications. Administrators and API Owners can then monitor API usage and make decisions regarding the published APIs.

Screen Shot 2016-02-04 at 4.56.00 PM

Design and Publish New Version of API

Based on the results from the analytics, API Owners can make the necessary modifications to the published APIs to fit the developers’ requirements. However, we cannot and also should not make modifications to APIs that have been used by applications, as it will cause errors. Instead, we should create a new version of the published API, publish it on gateway, then enable it on portal. Those are the steps for creating a new API.

Deprecate Old API Version 

Once a new version of an API is available on the portal, you can deprecate the old version of the API. To deprecate an API means that no new applications are allowed to develop against this API, but applications already using this API can continue to use it. Developers will receive notices to encourage them to switch to the new version.

Screen Shot 2016-02-04 at 4.59.24 PM

Delete Old API Version

Most developers would migrate their applications from the old version to the new version. The Portal Administrator has the ability to remove and send notices to certain persistent applications, who are still using the old version of the API.

When no application is using the old version of the API, the administrator can delete the API and this completes the entire lifecycle of this API.