api_management_service
Creates, updates, deletes, gets or lists an api_management_service resource.
Overview
| Name | api_management_service |
| Type | Resource |
| Id | azure.api_management.api_management_service |
Fields
The following fields are returned by SELECT queries:
- get
- list_by_resource_group
- check_name_availability
- list
| Name | Datatype | Description |
|---|---|---|
id | string | Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. |
name | string | The name of the resource. |
additionalLocations | array | Additional datacenter locations of the API Management service. |
apiVersionConstraint | object | Control Plane Apis version constraint for the API Management service. |
certificates | array | List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. |
configurationApi | object | Configuration API configuration of the API Management service. |
createdAtUtc | string (date-time) | Creation UTC date of the API Management service.The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. |
customProperties | object | Custom properties of the API Management service.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 can be used to disable just TLS 1.1.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 can be used to disable TLS 1.0 on an API Management service.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 can be used to disable just TLS 1.1 for communications with backends.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 can be used to disable TLS 1.0 for communications with backends.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 can be used to enable HTTP2 protocol on an API Management service.Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is True if the service was created on or before April 1, 2018 and False otherwise. Http2 setting's default value is False.You can disable any of the following ciphers by using settings Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. The default value is true for them. Note: The following ciphers can't be disabled since they are required by internal platform components: TLS_AES_256_GCM_SHA384,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256. |
developerPortalStatus | string | Status of developer portal in this API Management service. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
developerPortalUrl | string | DEveloper Portal endpoint URL of the API Management service. |
disableGateway | boolean | Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. |
enableClientCertificate | boolean | Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. |
etag | string | ETag of the resource. |
gatewayRegionalUrl | string | Gateway URL of the API Management service in the Default Region. |
gatewayUrl | string | Gateway URL of the API Management service. |
hostnameConfigurations | array | Custom hostname configuration of the API Management service. |
identity | object | Managed service identity of the Api Management service. |
legacyPortalStatus | string | Status of legacy portal in the API Management service. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
location | string | The geo-location where the resource lives. Required. |
managementApiUrl | string | Management API endpoint URL of the API Management service. |
natGatewayState | string | Property can be used to enable NAT Gateway for this API Management service. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
notificationSenderEmail | string | Email address from which the notification will be sent. |
outboundPublicIPAddresses | array | Outbound public IPV4 address prefixes associated with NAT Gateway deployed service. Available only for Premium SKU on stv2 platform. |
platformVersion | string | Compute Platform Version running the service in this location. Known values are: "undetermined", "stv1", "stv2", "mtv1", and "stv2.1". (undetermined, stv1, stv2, mtv1, stv2.1) |
portalUrl | string | Publisher portal endpoint Url of the API Management service. |
privateEndpointConnections | array | List of Private Endpoint Connections of this service. |
privateIPAddresses | array | Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard, Premium and Isolated SKU. |
provisioningState | string | The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. |
publicIPAddresses | array | Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and Isolated SKU. |
publicIpAddressId | string | Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. |
publicNetworkAccess | string | Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
publisherEmail | string | Publisher email. Required. |
publisherName | string | Publisher name. Required. |
releaseChannel | string | Release Channel of this API Management service. Known values are: "Preview", "Default", and "Stable". (Preview, Default, Stable) |
restore | boolean | Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. |
scmUrl | string | SCM endpoint URL of the API Management service. |
sku | object | SKU properties of the API Management service. Required. |
systemData | object | Azure Resource Manager metadata containing createdBy and modifiedBy information. |
tags | object | Resource tags. |
targetProvisioningState | string | The provisioning state of the API Management service, which is targeted by the long running operation started on the service. |
type | string | The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". |
virtualNetworkConfiguration | object | Virtual network configuration of the API Management service. |
virtualNetworkType | string | The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". (None, External, Internal) |
zoneRedundant | boolean | Zone Redundant Requirement when creating StandardV2 and PremiumV2. If this flag is set to True, will return a APIM service with Zone redundant or fail the request if any underneath component cannot be zone redundant. |
zones | array | The availability zones. |
| Name | Datatype | Description |
|---|---|---|
id | string | Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. |
name | string | The name of the resource. |
additionalLocations | array | Additional datacenter locations of the API Management service. |
apiVersionConstraint | object | Control Plane Apis version constraint for the API Management service. |
certificates | array | List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. |
configurationApi | object | Configuration API configuration of the API Management service. |
createdAtUtc | string (date-time) | Creation UTC date of the API Management service.The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. |
customProperties | object | Custom properties of the API Management service.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 can be used to disable just TLS 1.1.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 can be used to disable TLS 1.0 on an API Management service.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 can be used to disable just TLS 1.1 for communications with backends.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 can be used to disable TLS 1.0 for communications with backends.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 can be used to enable HTTP2 protocol on an API Management service.Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is True if the service was created on or before April 1, 2018 and False otherwise. Http2 setting's default value is False.You can disable any of the following ciphers by using settings Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. The default value is true for them. Note: The following ciphers can't be disabled since they are required by internal platform components: TLS_AES_256_GCM_SHA384,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256. |
developerPortalStatus | string | Status of developer portal in this API Management service. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
developerPortalUrl | string | DEveloper Portal endpoint URL of the API Management service. |
disableGateway | boolean | Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. |
enableClientCertificate | boolean | Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. |
etag | string | ETag of the resource. |
gatewayRegionalUrl | string | Gateway URL of the API Management service in the Default Region. |
gatewayUrl | string | Gateway URL of the API Management service. |
hostnameConfigurations | array | Custom hostname configuration of the API Management service. |
identity | object | Managed service identity of the Api Management service. |
legacyPortalStatus | string | Status of legacy portal in the API Management service. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
location | string | The geo-location where the resource lives. Required. |
managementApiUrl | string | Management API endpoint URL of the API Management service. |
natGatewayState | string | Property can be used to enable NAT Gateway for this API Management service. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
notificationSenderEmail | string | Email address from which the notification will be sent. |
outboundPublicIPAddresses | array | Outbound public IPV4 address prefixes associated with NAT Gateway deployed service. Available only for Premium SKU on stv2 platform. |
platformVersion | string | Compute Platform Version running the service in this location. Known values are: "undetermined", "stv1", "stv2", "mtv1", and "stv2.1". (undetermined, stv1, stv2, mtv1, stv2.1) |
portalUrl | string | Publisher portal endpoint Url of the API Management service. |
privateEndpointConnections | array | List of Private Endpoint Connections of this service. |
privateIPAddresses | array | Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard, Premium and Isolated SKU. |
provisioningState | string | The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. |
publicIPAddresses | array | Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and Isolated SKU. |
publicIpAddressId | string | Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. |
publicNetworkAccess | string | Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
publisherEmail | string | Publisher email. Required. |
publisherName | string | Publisher name. Required. |
releaseChannel | string | Release Channel of this API Management service. Known values are: "Preview", "Default", and "Stable". (Preview, Default, Stable) |
restore | boolean | Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. |
scmUrl | string | SCM endpoint URL of the API Management service. |
sku | object | SKU properties of the API Management service. Required. |
systemData | object | Azure Resource Manager metadata containing createdBy and modifiedBy information. |
tags | object | Resource tags. |
targetProvisioningState | string | The provisioning state of the API Management service, which is targeted by the long running operation started on the service. |
type | string | The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". |
virtualNetworkConfiguration | object | Virtual network configuration of the API Management service. |
virtualNetworkType | string | The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". (None, External, Internal) |
zoneRedundant | boolean | Zone Redundant Requirement when creating StandardV2 and PremiumV2. If this flag is set to True, will return a APIM service with Zone redundant or fail the request if any underneath component cannot be zone redundant. |
zones | array | The availability zones. |
| Name | Datatype | Description |
|---|---|---|
message | string | If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that is already in use, and direct them to select a different name. |
nameAvailable | boolean | True if the name is available and can be used to create a new API Management service; otherwise false. |
reason | string | Invalid indicates the name provided does not match the resource provider’s naming requirements (incorrect length, unsupported characters, etc.) AlreadyExists indicates that the name is already in use and is therefore unavailable. Known values are: "Valid", "Invalid", and "AlreadyExists". (Valid, Invalid, AlreadyExists) |
| Name | Datatype | Description |
|---|---|---|
id | string | Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}. |
name | string | The name of the resource. |
additionalLocations | array | Additional datacenter locations of the API Management service. |
apiVersionConstraint | object | Control Plane Apis version constraint for the API Management service. |
certificates | array | List of Certificates that need to be installed in the API Management service. Max supported certificates that can be installed is 10. |
configurationApi | object | Configuration API configuration of the API Management service. |
createdAtUtc | string (date-time) | Creation UTC date of the API Management service.The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard. |
customProperties | object | Custom properties of the API Management service.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TripleDes168 will disable the cipher TLS_RSA_WITH_3DES_EDE_CBC_SHA for all TLS(1.0, 1.1 and 1.2).Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls11 can be used to disable just TLS 1.1.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Protocols.Tls10 can be used to disable TLS 1.0 on an API Management service.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls11 can be used to disable just TLS 1.1 for communications with backends.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Backend.Protocols.Tls10 can be used to disable TLS 1.0 for communications with backends.Setting Microsoft.WindowsAzure.ApiManagement.Gateway.Protocols.Server.Http2 can be used to enable HTTP2 protocol on an API Management service.Not specifying any of these properties on PATCH operation will reset omitted properties' values to their defaults. For all the settings except Http2 the default value is True if the service was created on or before April 1, 2018 and False otherwise. Http2 setting's default value is False.You can disable any of the following ciphers by using settings Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.[cipher_name]: TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA256, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA. For example, Microsoft.WindowsAzure.ApiManagement.Gateway.Security.Ciphers.TLS_RSA_WITH_AES_128_CBC_SHA256:false. The default value is true for them. Note: The following ciphers can't be disabled since they are required by internal platform components: TLS_AES_256_GCM_SHA384,TLS_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256. |
developerPortalStatus | string | Status of developer portal in this API Management service. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
developerPortalUrl | string | DEveloper Portal endpoint URL of the API Management service. |
disableGateway | boolean | Property only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in master region. |
enableClientCertificate | boolean | Property only meant to be used for Consumption SKU Service. This enforces a client certificate to be presented on each request to the gateway. This also enables the ability to authenticate the certificate in the policy on the gateway. |
etag | string | ETag of the resource. |
gatewayRegionalUrl | string | Gateway URL of the API Management service in the Default Region. |
gatewayUrl | string | Gateway URL of the API Management service. |
hostnameConfigurations | array | Custom hostname configuration of the API Management service. |
identity | object | Managed service identity of the Api Management service. |
legacyPortalStatus | string | Status of legacy portal in the API Management service. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
location | string | The geo-location where the resource lives. Required. |
managementApiUrl | string | Management API endpoint URL of the API Management service. |
natGatewayState | string | Property can be used to enable NAT Gateway for this API Management service. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
notificationSenderEmail | string | Email address from which the notification will be sent. |
outboundPublicIPAddresses | array | Outbound public IPV4 address prefixes associated with NAT Gateway deployed service. Available only for Premium SKU on stv2 platform. |
platformVersion | string | Compute Platform Version running the service in this location. Known values are: "undetermined", "stv1", "stv2", "mtv1", and "stv2.1". (undetermined, stv1, stv2, mtv1, stv2.1) |
portalUrl | string | Publisher portal endpoint Url of the API Management service. |
privateEndpointConnections | array | List of Private Endpoint Connections of this service. |
privateIPAddresses | array | Private Static Load Balanced IP addresses of the API Management service in Primary region which is deployed in an Internal Virtual Network. Available only for Basic, Standard, Premium and Isolated SKU. |
provisioningState | string | The current provisioning state of the API Management service which can be one of the following: Created/Activating/Succeeded/Updating/Failed/Stopped/Terminating/TerminationFailed/Deleted. |
publicIPAddresses | array | Public Static Load Balanced IP addresses of the API Management service in Primary region. Available only for Basic, Standard, Premium and Isolated SKU. |
publicIpAddressId | string | Public Standard SKU IP V4 based IP address to be associated with Virtual Network deployed service in the region. Supported only for Developer and Premium SKU being deployed in Virtual Network. |
publicNetworkAccess | string | Whether or not public endpoint access is allowed for this API Management service. Value is optional but if passed in, must be 'Enabled' or 'Disabled'. If 'Disabled', private endpoints are the exclusive access method. Default value is 'Enabled'. Known values are: "Enabled" and "Disabled". (Enabled, Disabled) |
publisherEmail | string | Publisher email. Required. |
publisherName | string | Publisher name. Required. |
releaseChannel | string | Release Channel of this API Management service. Known values are: "Preview", "Default", and "Stable". (Preview, Default, Stable) |
restore | boolean | Undelete Api Management Service if it was previously soft-deleted. If this flag is specified and set to True all other properties will be ignored. |
scmUrl | string | SCM endpoint URL of the API Management service. |
sku | object | SKU properties of the API Management service. Required. |
systemData | object | Azure Resource Manager metadata containing createdBy and modifiedBy information. |
tags | object | Resource tags. |
targetProvisioningState | string | The provisioning state of the API Management service, which is targeted by the long running operation started on the service. |
type | string | The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts". |
virtualNetworkConfiguration | object | Virtual network configuration of the API Management service. |
virtualNetworkType | string | The type of VPN in which API Management service needs to be configured in. None (Default Value) means the API Management service is not part of any Virtual Network, External means the API Management deployment is set up inside a Virtual Network having an Internet Facing Endpoint, and Internal means that API Management deployment is setup inside a Virtual Network having an Intranet Facing Endpoint only. Known values are: "None", "External", and "Internal". (None, External, Internal) |
zoneRedundant | boolean | Zone Redundant Requirement when creating StandardV2 and PremiumV2. If this flag is set to True, will return a APIM service with Zone redundant or fail the request if any underneath component cannot be zone redundant. |
zones | array | The availability zones. |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | resource_group_name, service_name, subscription_id | Gets an API Management service resource description. | |
list_by_resource_group | select | resource_group_name, subscription_id | List all API Management services within a resource group. | |
check_name_availability | select | subscription_id | Checks availability and correctness of a name for an API Management service. | |
list | select | subscription_id | Lists all API Management services within an Azure subscription. | |
create_or_update | insert | resource_group_name, service_name, subscription_id, location, properties, sku | Creates or updates an API Management service. This is long running operation and could take several minutes to complete. | |
update | update | resource_group_name, service_name, subscription_id | Updates an existing API Management service. | |
create_or_update | replace | resource_group_name, service_name, subscription_id, location, properties, sku | Creates or updates an API Management service. This is long running operation and could take several minutes to complete. | |
delete | delete | resource_group_name, service_name, subscription_id | Deletes an existing API Management service. | |
get_sso_token | exec | resource_group_name, service_name, subscription_id | Gets the Single-Sign-On token for the API Management Service which is valid for 5 Minutes. | |
get_domain_ownership_identifier | exec | subscription_id | Get the custom domain ownership identifier for an API Management service. | |
restore | exec | resource_group_name, service_name, subscription_id, storageAccount, containerName, backupName | Restores a backup of an API Management service created using the ApiManagementService_Backup operation on the current service. This is a long running operation and could take several minutes to complete. | |
backup | exec | resource_group_name, service_name, subscription_id, storageAccount, containerName, backupName | Creates a backup of the API Management service to the given Azure Storage Account. This is long running operation and could take several minutes to complete. | |
migrate_to_stv2 | exec | resource_group_name, service_name, subscription_id | Upgrades an API Management service to the Stv2 platform. For details refer to https://aka.ms/apim-migrate-stv2 _. This change is not reversible. This is long running operation and could take several minutes to complete. | |
apply_network_configuration_updates | exec | resource_group_name, service_name, subscription_id | Updates the Microsoft.ApiManagement resource running in the Virtual network to pick the updated DNS changes. | |
refresh_hostnames | exec | resource_group_name, service_name, subscription_id | Force Refresh the SSL certificate attached to the Custom Hostnames configured using secret from KeyVault on the Api Management service. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
resource_group_name | string | The name of the resource group. The name is case insensitive. Required. |
service_name | string | The name of the API Management service. Required. |
subscription_id | string |
SELECT examples
- get
- list_by_resource_group
- check_name_availability
- list
Gets an API Management service resource description.
SELECT
id,
name,
additionalLocations,
apiVersionConstraint,
certificates,
configurationApi,
createdAtUtc,
customProperties,
developerPortalStatus,
developerPortalUrl,
disableGateway,
enableClientCertificate,
etag,
gatewayRegionalUrl,
gatewayUrl,
hostnameConfigurations,
identity,
legacyPortalStatus,
location,
managementApiUrl,
natGatewayState,
notificationSenderEmail,
outboundPublicIPAddresses,
platformVersion,
portalUrl,
privateEndpointConnections,
privateIPAddresses,
provisioningState,
publicIPAddresses,
publicIpAddressId,
publicNetworkAccess,
publisherEmail,
publisherName,
releaseChannel,
restore,
scmUrl,
sku,
systemData,
tags,
targetProvisioningState,
type,
virtualNetworkConfiguration,
virtualNetworkType,
zoneRedundant,
zones
FROM azure.api_management.api_management_service
WHERE resource_group_name = '{{ resource_group_name }}' -- required
AND service_name = '{{ service_name }}' -- required
AND subscription_id = '{{ subscription_id }}' -- required
;
List all API Management services within a resource group.
SELECT
id,
name,
additionalLocations,
apiVersionConstraint,
certificates,
configurationApi,
createdAtUtc,
customProperties,
developerPortalStatus,
developerPortalUrl,
disableGateway,
enableClientCertificate,
etag,
gatewayRegionalUrl,
gatewayUrl,
hostnameConfigurations,
identity,
legacyPortalStatus,
location,
managementApiUrl,
natGatewayState,
notificationSenderEmail,
outboundPublicIPAddresses,
platformVersion,
portalUrl,
privateEndpointConnections,
privateIPAddresses,
provisioningState,
publicIPAddresses,
publicIpAddressId,
publicNetworkAccess,
publisherEmail,
publisherName,
releaseChannel,
restore,
scmUrl,
sku,
systemData,
tags,
targetProvisioningState,
type,
virtualNetworkConfiguration,
virtualNetworkType,
zoneRedundant,
zones
FROM azure.api_management.api_management_service
WHERE resource_group_name = '{{ resource_group_name }}' -- required
AND subscription_id = '{{ subscription_id }}' -- required
;
Checks availability and correctness of a name for an API Management service.
SELECT
message,
nameAvailable,
reason
FROM azure.api_management.api_management_service
WHERE subscription_id = '{{ subscription_id }}' -- required
;
Lists all API Management services within an Azure subscription.
SELECT
id,
name,
additionalLocations,
apiVersionConstraint,
certificates,
configurationApi,
createdAtUtc,
customProperties,
developerPortalStatus,
developerPortalUrl,
disableGateway,
enableClientCertificate,
etag,
gatewayRegionalUrl,
gatewayUrl,
hostnameConfigurations,
identity,
legacyPortalStatus,
location,
managementApiUrl,
natGatewayState,
notificationSenderEmail,
outboundPublicIPAddresses,
platformVersion,
portalUrl,
privateEndpointConnections,
privateIPAddresses,
provisioningState,
publicIPAddresses,
publicIpAddressId,
publicNetworkAccess,
publisherEmail,
publisherName,
releaseChannel,
restore,
scmUrl,
sku,
systemData,
tags,
targetProvisioningState,
type,
virtualNetworkConfiguration,
virtualNetworkType,
zoneRedundant,
zones
FROM azure.api_management.api_management_service
WHERE subscription_id = '{{ subscription_id }}' -- required
;
INSERT examples
- create_or_update
- Manifest
Creates or updates an API Management service. This is long running operation and could take several minutes to complete.
INSERT INTO azure.api_management.api_management_service (
tags,
location,
properties,
sku,
identity,
zones,
resource_group_name,
service_name,
subscription_id
)
SELECT
'{{ tags }}',
'{{ location }}' /* required */,
'{{ properties }}' /* required */,
'{{ sku }}' /* required */,
'{{ identity }}',
'{{ zones }}',
'{{ resource_group_name }}',
'{{ service_name }}',
'{{ subscription_id }}'
RETURNING
id,
name,
etag,
identity,
location,
properties,
sku,
systemData,
tags,
type,
zones
;
# Description fields are for documentation purposes
- name: api_management_service
props:
- name: resource_group_name
value: "{{ resource_group_name }}"
description: Required parameter for the api_management_service resource.
- name: service_name
value: "{{ service_name }}"
description: Required parameter for the api_management_service resource.
- name: subscription_id
value: "{{ subscription_id }}"
description: Required parameter for the api_management_service resource.
- name: tags
value: "{{ tags }}"
description: |
Resource tags.
- name: location
value: "{{ location }}"
description: |
The geo-location where the resource lives. Required.
- name: properties
description: |
Properties of the API Management service. Required.
value:
notificationSenderEmail: "{{ notificationSenderEmail }}"
provisioningState: "{{ provisioningState }}"
targetProvisioningState: "{{ targetProvisioningState }}"
createdAtUtc: "{{ createdAtUtc }}"
gatewayUrl: "{{ gatewayUrl }}"
gatewayRegionalUrl: "{{ gatewayRegionalUrl }}"
portalUrl: "{{ portalUrl }}"
managementApiUrl: "{{ managementApiUrl }}"
scmUrl: "{{ scmUrl }}"
developerPortalUrl: "{{ developerPortalUrl }}"
hostnameConfigurations:
- type: "{{ type }}"
hostName: "{{ hostName }}"
keyVaultId: "{{ keyVaultId }}"
identityClientId: "{{ identityClientId }}"
encodedCertificate: "{{ encodedCertificate }}"
certificatePassword: "{{ certificatePassword }}"
defaultSslBinding: {{ defaultSslBinding }}
negotiateClientCertificate: {{ negotiateClientCertificate }}
certificate:
expiry: "{{ expiry }}"
thumbprint: "{{ thumbprint }}"
subject: "{{ subject }}"
certificateSource: "{{ certificateSource }}"
certificateStatus: "{{ certificateStatus }}"
publicIPAddresses:
- "{{ publicIPAddresses }}"
privateIPAddresses:
- "{{ privateIPAddresses }}"
publicIpAddressId: "{{ publicIpAddressId }}"
publicNetworkAccess: "{{ publicNetworkAccess }}"
configurationApi:
legacyApi: "{{ legacyApi }}"
virtualNetworkConfiguration:
vnetid: "{{ vnetid }}"
subnetname: "{{ subnetname }}"
subnetResourceId: "{{ subnetResourceId }}"
additionalLocations:
- location: "{{ location }}"
sku:
name: "{{ name }}"
capacity: {{ capacity }}
zones: "{{ zones }}"
publicIPAddresses: "{{ publicIPAddresses }}"
privateIPAddresses: "{{ privateIPAddresses }}"
publicIpAddressId: "{{ publicIpAddressId }}"
virtualNetworkConfiguration:
vnetid: "{{ vnetid }}"
subnetname: "{{ subnetname }}"
subnetResourceId: "{{ subnetResourceId }}"
gatewayRegionalUrl: "{{ gatewayRegionalUrl }}"
natGatewayState: "{{ natGatewayState }}"
outboundPublicIPAddresses: "{{ outboundPublicIPAddresses }}"
disableGateway: {{ disableGateway }}
platformVersion: "{{ platformVersion }}"
customProperties: "{{ customProperties }}"
certificates:
- encodedCertificate: "{{ encodedCertificate }}"
certificatePassword: "{{ certificatePassword }}"
storeName: "{{ storeName }}"
certificate:
expiry: "{{ expiry }}"
thumbprint: "{{ thumbprint }}"
subject: "{{ subject }}"
enableClientCertificate: {{ enableClientCertificate }}
natGatewayState: "{{ natGatewayState }}"
outboundPublicIPAddresses:
- "{{ outboundPublicIPAddresses }}"
disableGateway: {{ disableGateway }}
virtualNetworkType: "{{ virtualNetworkType }}"
apiVersionConstraint:
minApiVersion: "{{ minApiVersion }}"
restore: {{ restore }}
privateEndpointConnections:
- id: "{{ id }}"
name: "{{ name }}"
type: "{{ type }}"
properties:
privateEndpoint:
id: "{{ id }}"
privateLinkServiceConnectionState:
status: "{{ status }}"
description: "{{ description }}"
actionsRequired: "{{ actionsRequired }}"
provisioningState: "{{ provisioningState }}"
groupIds:
- "{{ groupIds }}"
platformVersion: "{{ platformVersion }}"
legacyPortalStatus: "{{ legacyPortalStatus }}"
developerPortalStatus: "{{ developerPortalStatus }}"
releaseChannel: "{{ releaseChannel }}"
zoneRedundant: {{ zoneRedundant }}
publisherEmail: "{{ publisherEmail }}"
publisherName: "{{ publisherName }}"
- name: sku
description: |
SKU properties of the API Management service. Required.
value:
name: "{{ name }}"
capacity: {{ capacity }}
- name: identity
description: |
Managed service identity of the Api Management service.
value:
type: "{{ type }}"
principalId: "{{ principalId }}"
tenantId: "{{ tenantId }}"
userAssignedIdentities: "{{ userAssignedIdentities }}"
- name: zones
value:
- "{{ zones }}"
description: |
The availability zones.
UPDATE examples
- update
Updates an existing API Management service.
UPDATE azure.api_management.api_management_service
SET
tags = '{{ tags }}',
properties = '{{ properties }}',
sku = '{{ sku }}',
identity = '{{ identity }}',
zones = '{{ zones }}'
WHERE
resource_group_name = '{{ resource_group_name }}' --required
AND service_name = '{{ service_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
RETURNING
id,
name,
etag,
identity,
location,
properties,
sku,
systemData,
tags,
type,
zones;
REPLACE examples
- create_or_update
Creates or updates an API Management service. This is long running operation and could take several minutes to complete.
REPLACE azure.api_management.api_management_service
SET
tags = '{{ tags }}',
location = '{{ location }}',
properties = '{{ properties }}',
sku = '{{ sku }}',
identity = '{{ identity }}',
zones = '{{ zones }}'
WHERE
resource_group_name = '{{ resource_group_name }}' --required
AND service_name = '{{ service_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
AND location = '{{ location }}' --required
AND properties = '{{ properties }}' --required
AND sku = '{{ sku }}' --required
RETURNING
id,
name,
etag,
identity,
location,
properties,
sku,
systemData,
tags,
type,
zones;
DELETE examples
- delete
Deletes an existing API Management service.
DELETE FROM azure.api_management.api_management_service
WHERE resource_group_name = '{{ resource_group_name }}' --required
AND service_name = '{{ service_name }}' --required
AND subscription_id = '{{ subscription_id }}' --required
;
Lifecycle Methods
- get_sso_token
- get_domain_ownership_identifier
- restore
- backup
- migrate_to_stv2
- apply_network_configuration_updates
- refresh_hostnames
Gets the Single-Sign-On token for the API Management Service which is valid for 5 Minutes.
EXEC azure.api_management.api_management_service.get_sso_token
@resource_group_name='{{ resource_group_name }}' --required,
@service_name='{{ service_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
;
Get the custom domain ownership identifier for an API Management service.
EXEC azure.api_management.api_management_service.get_domain_ownership_identifier
@subscription_id='{{ subscription_id }}' --required
;
Restores a backup of an API Management service created using the ApiManagementService_Backup operation on the current service. This is a long running operation and could take several minutes to complete.
EXEC azure.api_management.api_management_service.restore
@resource_group_name='{{ resource_group_name }}' --required,
@service_name='{{ service_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
@@json=
'{
"storageAccount": "{{ storageAccount }}",
"containerName": "{{ containerName }}",
"backupName": "{{ backupName }}",
"accessType": "{{ accessType }}",
"accessKey": "{{ accessKey }}",
"clientId": "{{ clientId }}"
}'
;
Creates a backup of the API Management service to the given Azure Storage Account. This is long running operation and could take several minutes to complete.
EXEC azure.api_management.api_management_service.backup
@resource_group_name='{{ resource_group_name }}' --required,
@service_name='{{ service_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
@@json=
'{
"storageAccount": "{{ storageAccount }}",
"containerName": "{{ containerName }}",
"backupName": "{{ backupName }}",
"accessType": "{{ accessType }}",
"accessKey": "{{ accessKey }}",
"clientId": "{{ clientId }}"
}'
;
Upgrades an API Management service to the Stv2 platform. For details refer to https://aka.ms/apim-migrate-stv2 _. This change is not reversible. This is long running operation and could take several minutes to complete.
EXEC azure.api_management.api_management_service.migrate_to_stv2
@resource_group_name='{{ resource_group_name }}' --required,
@service_name='{{ service_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
@@json=
'{
"mode": "{{ mode }}"
}'
;
Updates the Microsoft.ApiManagement resource running in the Virtual network to pick the updated DNS changes.
EXEC azure.api_management.api_management_service.apply_network_configuration_updates
@resource_group_name='{{ resource_group_name }}' --required,
@service_name='{{ service_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
@@json=
'{
"location": "{{ location }}"
}'
;
Force Refresh the SSL certificate attached to the Custom Hostnames configured using secret from KeyVault on the Api Management service.
EXEC azure.api_management.api_management_service.refresh_hostnames
@resource_group_name='{{ resource_group_name }}' --required,
@service_name='{{ service_name }}' --required,
@subscription_id='{{ subscription_id }}' --required
;