This blog is the first in a series of four blogs on API management. It presents the path to augment the efficiencies of API Management in the Software Delivery Life-Cycle – the enablement of Self-service API Management. In my next blog will outline the importance of the API Management Center of Excellence (CoE) and the Self-service engagement model in ensuring the success of the API Management program. And finally I will be discussing the importance of engaging the API Management experts. This is truly crucial for the organizations embarking in the API Management journey, but it is fundamental that their role promotes rather than inhibits the velocity of the Delivery process.
In digital projects, Self-service is the most efficient way for Agile teams to expose and consume APIs
Best breed of API Management suites always offer a Developer Portal that typically brings the following base capabilities:
- Developer and Partner onboarding
- API lifecycle management
- API catalog
- API documentation (Swagger, RAML, document attachments)
- API testing tool
- Packaging and licensing (consumer requests for API consumption)
- Monitoring of API Health and Consumption
There are three main assets/entities in the Developer Portal realm: API proxies, App definitions, and consumption Contracts (agreements for API consumption). Their relation is depicted in the following diagram:
Developer Portals are UX optimized, fostering simple and quick interactions in all stages of the API lifecycle – one can say the portals are tailored for developer engagement.
API Management configuration is a simple technical task. When API and App developers are provided proper training, there should be no need for the existence of a team exclusively dedicated to the configuration of assets in the API Management Platform. API and App developers are the asset owners in their domains, and they should be the owners of the corresponding assets in API Management:
- API developers will design and implement APIs, and configure API proxies in API Management.
- App developers will design and implement Apps, and configure App definitions in API Management.
- API developers will license the consumption of their API proxies by Apps. This will be achieved through the definition of API consumption contracts.
Enabling self-service API Management
API and App developers will (have to) follow the API Management standards and best practices set within the organization when configuring new assets in the API Management Platform.
The above approach effectively positions the API Management Portal as the enabler for self-service API Management, sustaining a more effective delivery process, where API providers and API consumers come together to generate value for the organization: API providers will be able to own and support their APIs from design, through exposure, to consumption; API consumers will have full control, visibility and support of their API consumption.
If for some reason (project timelines, insufficient training, etc.) full-blown Self-service is not a possibility, then API consumer access to the portal should be promoted. App developers will always be more prolific when given access to rich API documentation, a live API test tool, and API monitoring dashboards.
Besides API and App developers, the Self-service approach should also be promoted for the Test teams – The teams can register their testing tools in the API Management Platform, and request consumption (contract) of the APIs that are to be tested.
APIs Integration Pattern
There are additional drivers for enabling self-service API Management, one of them being the Experience based APIs Integration Pattern – please refer to this article for more insight on this API pattern.