Azure API Management Custom Subscription Approval
App Dev Manager Adam Hockemeyer demonstrates how to create a Logic App to do custom subscription approval flow per product in Azure API Management.
Azure API Management offers a lot of really great features for organizations to organize and access various systems by surfacing API’s through a common platform both internally and externally. Azure API Management (APIM for short) allows API publishers the ability to expose just an API, or a group of API’s known as a product. For example, a food truck service may want to expose an ‘Order’ product, but that ‘product’ may be made up of API’s responsible for creating user accounts as well as actually placing an order.
As your company continues to adopt APIM, you may have considered if you should have multiple APIM instances or if you can use a shared APIM instance that all of the organizations API’s and products go into. A feature of APIM products’ is that you can require users of your API to register for a subscription to use your API, and you can also set whether that subscription should be automatically approved or if an admin or some other user should be the approver. The tricky issue here is that if your products are managed by different teams all using a shared APIM instance, then each team may require a unique group or user/users that should be the approvers for a specific product.
One of the things that we discovered in our efforts to utilize the shared instance approach was the need to have product owners approve subscription requests. In addition, if you are working with Azure APIM and looking to provide a shared infrastructure experience, we suggest looking at: https://github.com/Azure/azure-api-management-devops-resource-kit.
This guide will walk through how to create a Logic App that will allow for a custom subscription approval flow per product in Azure API Management.