We recommend using Azure Native.
Azure v6.22.0 published on Tuesday, Apr 1, 2025 by Pulumi
Azure API Management
An example Pulumi program that deploys an instance of Azure API Management with the following resources:
- API which is linked to an Azure Function App backend
- Operation and operation policy with URL rewrite and caching rules
- A product, a user, and a subscription to enable access to the API
Running the App
Create a new stack:
pulumi stack init devLogin to Azure CLI (you will be prompted to do this during deployment if you forget this step):
az loginRestore NPM dependencies:
npm installConfigure Azure environment:
pulumi config set azure:location <location> pulumi config set azure:subscriptionId <YOUR_SUBSCRIPTION_ID>Run
pulumi upto preview and deploy changes:$ pulumi up Previewing update (dev): ... Updating (dev): ... Resources: + 12 created Duration: 34m54sCheck the deployed function endpoint:
$ pulumi stack output endpoint https://greeting-service12345678.azure-api.net/hello/Pulumi $ curl --header "Ocp-Apim-Subscription-Key: $(pulumi stack output key)" $(pulumi stack output endpoint) {"time":"2019-06-17T15:16:08.227Z","greeting":"Hello Pulumi!"} ...Verify that API caches the response for 30 seconds - the same time should be returned for subsequent queries:
$ curl --header "Ocp-Apim-Subscription-Key: $(pulumi stack output key)" $(pulumi stack output endpoint) {"time":"2019-06-17T15:16:08.227Z","greeting":"Hello Pulumi!"} ...