This repository contains presentations and source code that is used for internal workshops on Azure API Management.
What you need to know to get started with Azure API Management (PowerPoint).
In the following tasks, we will create an API Gateway for our customers that want to use APIs that we manage.
Make sure that you can open a console from your Azure Portal.
Use PowerShell from the console in the Azure Portal. Provision an instance of APIM and make sure that whatever you will provision in this workshop will be deleted later together. Choose the purchasable Stock Keeping Unit (SKU) that bills per execution.
In this task we'll deploy 3 APIs that we will need in the task that follows.
- Deploy the famous conference API to your APIM instance with PowerShell and test it from your favorite browser.
- Deploy the petstore api to your APIM instance directly from within the Azure Portal.
- Create an own API called
payments API
with a basic GET endpoint directly from within in the Azure Portal. This API won't do much since it is missing an actual implementation yet. We will fix this in a later task.
Create two users. One user is an iOS developer that has written an App that shows Microsoft conferences. He needs only access to your conference API
. The other user represents your own Android App that implements a pet store. This client need access to the petstore API
and the payments API
. In this task you will need to look at products.
Introduction to policies (PowerPoint)
The payments API doesn't have an implementation yet. In this task we will mock its response with policies. To make it easy to change the response text later, we define the response text as a placeholder. We use Named values for that.
The response from our petstore API and the one from the conference API contain their original URLs, not the one from our API Management instance. Let's replace those URLs to our public URL.
In a few weeks is a large Microsoft event with lots of great speakers. Every time there is a large Microsoft event, lots of clients will probably use our conference API, especially the /sessions
endpoint. We need to make sure that our API Gateway won't overload this endpoint. In this task, we will use throttling for the /sessions
endpoint only.