Solid APIM Offering
Pros
- Developer portal - while a little rough around the edges, it works well and provides a tidy UI for externalizing your APIs. Developers can register themselves and request and manage subscriptions to products/APIs. The site is customizable too - though that process is a little cumbersome. The sign-up process even has customizable email templates for verification.
- Flexible - there are a lot of customizations that are possible through the use of API policies. This could be transforming XML to JSON or vice versa, modifying headers, restricting parameters, redirecting to different end-points depending on the message body... the sky is the limit as to what you can do.
- Management - the structure of how APIs are managed is well thought-out. It makes it quick to start standing up new APIs and versioning them. Additionally, the analytics provided are also very helpful in diagnosing possible bottlenecks or unusual usage.
Cons
- Cost - the upfront cost is a bit restrictive. I've been told it is because there are a few underlying VMs that are running this service. So if you're just starting out with API management, it can be an expensive proposition. Value increases as you add additional APIs. If you're using Azure B2C for the developer portal, you'll require Standard or Premium since they support AAD integration.
- Security granularity - at time of writing, APIM doesn't support breaking out operations to products. For example, if you have an API that has a GET and a POST operation, and you want the POST operation to require a different subscription. There is a work around, but it makes management a bit messy.
- Developer and Publisher portal - it's a little weird. Microsoft hasn't migrated all the publisher portal functionality into the "native" Azure portal. So some of it feels a little weird - especially when working with the content management side of things for the developer portal.
- Scaling - while it's easy to scale up, the cost of APIM ramps up very quickly. Standard -> Premium is a 4x jump.
Return on Investment
- + APIM has made management of various APIs across multiple LOBs easier and provides a common front-end for our 3rd party developers.
- + APIM as a gateway for our APIs has made things more secure and provided more insight into API usage patterns.
- - The cost of APIM is high, however with each additional API we add, we get more value.
Alternatives Considered
Amazon API Gateway
Other Software Used
Visual Studio IDE, Azure SQL Database, Presto

