Skip to content

apim/api_management

Overview

This page documents the Terraform module implementation, key configuration surfaces, and how it integrates with CAF.

Dependency diagram (Mermaid)

graph TD azurecaf_name.apim["azurecaf_name.apim"] azurerm_api_management.apim["azurerm_api_management.apim"] azurerm_api_management.apim --> azurecaf_name.apim

Module Reference

Category: apim
Path: modules/apim/api_management
Azure Resources: azurecaf_name, azurerm_api_management

Inputs

Name Description Type Required Default Validation
"global_settings" "Global settings object (see module README.md)." any yes - -
"vnets" "Virtual network configuration used to resolve subnet references." any yes - -
"client_config" "Client configuration object (see module README.md)." any yes - -
"settings" "<<DESCRIPTION API Management service settings. Required: name, publisher_name, publisher_email, and sku_name. sku_na... object({name = string, publisher_name... yes - "When sign_up is configured, provide sign_up.terms_of_service or the legacy top-level terms_of_service block."
"remote_objects" "Remote objects used to resolve API Management dependencies." any no {} -
"location" "Location of the resource if different from the resource group." string no - -
"resource_group_name" "Resource group name to deploy the Azure resource." string no - -
"resource_group" "Resource group object to deploy the Azure resource." any yes - -
"base_tags" "Whether base tags should be inherited from the resource group." bool yes - -
"public_ip_addresses" "Public IP addresses used to resolve public IP references." any no {} -

Outputs

Name Description Sensitive Value
"id" "The ID of the API Management Service." - azurerm_api_management.apim.id
"additional_location" "Zero or more additional_location blocks as documented below." - azurerm_api_management.apim.additional_location
"gateway_url" "The URL of the Gateway for the API Management Service." - azurerm_api_management.apim.gateway_url
"gateway_regional_url" "The Region URL for the Gateway of the API Management Service." - azurerm_api_management.apim.gateway_regional_url
"identity" "An identity block as defined below." - azurerm_api_management.apim.identity
"management_api_url" "The URL for the Management API associated with this API Management service." - azurerm_api_management.apim.management_api_url
"portal_url" "The URL for the Publisher Portal associated with this API Management service." - azurerm_api_management.apim.portal_url
"developer_portal_url" "The URL for the Developer Portal associated with this API Management service." - azurerm_api_management.apim.developer_portal_url
"public_ip_addresses" "The Public IP addresses of the API Management Service." - azurerm_api_management.apim.public_ip_addresses
"private_ip_addresses" "The Private IP addresses of the API Management Service." - azurerm_api_management.apim.private_ip_addresses
"scm_url" "The URL for the SCM (Source Code Management) Endpoint associated with this API Management service." - azurerm_api_management.apim.scm_url
"tenant_access" "The tenant_access block as documented below." - azurerm_api_management.apim.tenant_access
"name" "The name of the API Management Service." - azurerm_api_management.apim.name
"rbac_id" "The rbac_id of the API Management Service for role assignments." - try(azurerm_api_management.apim.identity[0].principal_id, null)

Sources

  • modules/apim/api_management/locals.tf
  • modules/apim/api_management/main.tf
  • modules/apim/api_management/managed_identities.tf
  • modules/apim/api_management/module.tf
  • modules/apim/api_management/outputs.tf
  • modules/apim/api_management/variables.tf