Managing lifecycle of APIs and packages

By default, all APIs and API packages are accessible by consumers as and when they are published to Developer Portal. As an API provider, you must manage many APIs or API packages that are under construction or maintenance. You want to expose only the assets that are mature, tested, or well-documented for consumers. You can expose only the APIs that are ready for consumption by using the Lifecycle management feature. You can enable or disable this feature according to your requirement.

An API undergoes many stages before it is ready for consumption. The following section takes you through these stages and the states that you can assign to those APIs:

In general, API developers develop the skeleton of an API, start implementing, mock it for testing responses, and then activate the API and publish it to Developer Portal. After this, API providers can use the Enrich API feature in Developer Portal to include a logo or descriptions to the API and its resources, and then test it again to ensure the performance of the API.

You can move API states in the following linear way based on the development of your APIs:
API lifecycle illistration
The default lifecycle states available in Developer Portal are as follows:
Draft
Default state of all APIs. The APIs published to Developer Portal are kept in the Draft state initially. APIs in this state do not appear in API gallery. So, the APIs in the Draft state are not available for consumers through applications and packages.
Live
APIs that are moved to the Live state appear in API gallery. If you want to prevent consumers from using an API, you can move the particular API in the Live state to the Draft state. Hence, you can move APIs to the Draft state for the maintenance of those APIs.
Retired
You can move the APIs that are no more used to the Retired state. APIs that are moved to this state cannot be moved back to the other states. Only administrators and providers can view the retired APIs and their details. However, you can create new versions from a retired API and expose them to consumers.
Note: You can modify the names of the states, and include other states or remove them using the application-lcm.yml file that comes with the installation. For information about customizing lifecycle states, see Customizing API lifecycle states.