Skip to content
Robert Brandsø edited this page May 24, 2023 · 12 revisions

APIM APIOps allows you to publish and manage your APIs through Azure API Management (APIM) in a GitOps way. This means that all publishing and configuration of the APIs are done through a git repository. This is accomplished through configuration in JSON files, as well as the OpenAPI specification in either JSON or YAML format.

The API developers don't have to have any knowledge about Terraform, since all the configuration are done through JSON files.

Check out What can be managed by APIM APIOps? for detailed information about the configuration files.

Architecture

The diagram below illustrates the flow of APIM APIOps. If you don't have your own way of running Terraform, you can check out the article about pipelines to get a template for Azure Pipelines.

APIM APIOps flow

Visio: apiops-flow.vsdx

Inspiration

The inspiration for this project is Microsofts own APIOps tool which is located at github.com/Azure/apiops.

I tried to follow a lot of the same folder structure in the artifacts folder, and configuration needed in the configuration files, but I have also added some functionality. I have also used their sketch as a starting point for the sketch above. Their code is not used.

The main difference between these two projects is that this APIM APIOps based on Terraform is declarative, while the Microsoft APIOps project mostly relies on git commits. Terraform is a very robust and failsafe way of handling this.

Clone this wiki locally