Front Doors - Create Or Update

Creates a new Front Door with a Front Door name under the specified subscription and resource group.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}?api-version=2019-05-01

URI Parameters

Name In Required Type Description
frontDoorName
path True

string

Name of the Front Door which is globally unique.

Regex pattern: ^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$

resourceGroupName
path True

string

Name of the Resource group within the Azure subscription.

Regex pattern: ^[a-zA-Z0-9_\-\(\)\.]*[^\.]$

subscriptionId
path True

string

The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.

api-version
query True

string

Client API version.

Request Body

Name Type Description
location

string

Resource location.

properties.backendPools

BackendPool[]

Backend pools available to routing rules.

properties.backendPoolsSettings

BackendPoolsSettings

Settings for all backendPools

properties.enabledState

FrontDoorEnabledState

Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled'

properties.friendlyName

string

A friendly name for the frontDoor

properties.frontendEndpoints

FrontendEndpoint[]

Frontend endpoints available to routing rules.

properties.healthProbeSettings

HealthProbeSettingsModel[]

Health probe settings associated with this Front Door instance.

properties.loadBalancingSettings

LoadBalancingSettingsModel[]

Load balancing settings associated with this Front Door instance.

properties.routingRules

RoutingRule[]

Routing rules associated with this Front Door.

tags

object

Resource tags.

Responses

Name Type Description
200 OK

FrontDoor

OK. The request has succeeded.

201 Created

FrontDoor

Created. The request has been fulfilled and a new Front Door has been created.

202 Accepted

FrontDoor

Accepted. The request has been accepted for processing and the operation will complete asynchronously.

Other Status Codes

ErrorResponse

Front Door error response describing why the operation failed.

Security

azure_auth

Azure Active Directory OAuth2 Flow

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

Create or update specific Front Door

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1?api-version=2019-05-01

{
  "location": "westus",
  "tags": {
    "tag1": "value1",
    "tag2": "value2"
  },
  "properties": {
    "routingRules": [
      {
        "name": "routingRule1",
        "properties": {
          "frontendEndpoints": [
            {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1"
            },
            {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default"
            }
          ],
          "acceptedProtocols": [
            "Http"
          ],
          "patternsToMatch": [
            "/*"
          ],
          "routeConfiguration": {
            "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration",
            "backendPool": {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1"
            }
          },
          "enabledState": "Enabled"
        }
      }
    ],
    "healthProbeSettings": [
      {
        "name": "healthProbeSettings1",
        "properties": {
          "path": "/",
          "protocol": "Http",
          "intervalInSeconds": 120,
          "enabledState": "Enabled",
          "healthProbeMethod": "HEAD"
        }
      }
    ],
    "loadBalancingSettings": [
      {
        "name": "loadBalancingSettings1",
        "properties": {
          "sampleSize": 4,
          "successfulSamplesRequired": 2
        }
      }
    ],
    "backendPools": [
      {
        "name": "backendPool1",
        "properties": {
          "backends": [
            {
              "address": "w3.contoso.com",
              "httpPort": 80,
              "httpsPort": 443,
              "weight": 1,
              "priority": 2
            },
            {
              "address": "contoso.com.website-us-west-2.othercloud.net",
              "httpPort": 80,
              "httpsPort": 443,
              "weight": 2,
              "priority": 1
            },
            {
              "address": "contoso1.azurewebsites.net",
              "httpPort": 80,
              "httpsPort": 443,
              "weight": 1,
              "priority": 1
            }
          ],
          "loadBalancingSettings": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1"
          },
          "healthProbeSettings": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1"
          }
        }
      }
    ],
    "frontendEndpoints": [
      {
        "name": "frontendEndpoint1",
        "properties": {
          "hostName": "www.contoso.com",
          "sessionAffinityEnabledState": "Enabled",
          "sessionAffinityTtlSeconds": 60,
          "webApplicationFirewallPolicyLink": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1"
          }
        }
      },
      {
        "name": "default",
        "properties": {
          "hostName": "frontDoor1.azurefd.net"
        }
      }
    ],
    "backendPoolsSettings": {
      "enforceCertificateNameCheck": "Enabled",
      "sendRecvTimeoutSeconds": 60
    },
    "enabledState": "Enabled"
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1",
  "name": "frontDoor1",
  "type": "Microsoft.Network/frontDoor",
  "location": "westus",
  "tags": {
    "tag1": "value1",
    "tag2": "value2"
  },
  "properties": {
    "routingRules": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1",
        "name": "routingRule1",
        "properties": {
          "frontendEndpoints": [
            {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1"
            },
            {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default"
            }
          ],
          "acceptedProtocols": [
            "Http"
          ],
          "patternsToMatch": [
            "/*"
          ],
          "routeConfiguration": {
            "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration",
            "customForwardingPath": "",
            "forwardingProtocol": "MatchRequest",
            "backendPool": {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1"
            }
          },
          "enabledState": "Enabled"
        }
      }
    ],
    "healthProbeSettings": [
      {
        "name": "healthProbeSettings1",
        "properties": {
          "path": "/",
          "protocol": "Http",
          "intervalInSeconds": 120,
          "enabledState": "Enabled",
          "healthProbeMethod": "HEAD"
        }
      }
    ],
    "loadBalancingSettings": [
      {
        "name": "loadBalancingSettings1",
        "properties": {
          "sampleSize": 4,
          "successfulSamplesRequired": 2
        }
      }
    ],
    "backendPools": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1",
        "name": "backendPool1",
        "properties": {
          "backends": [
            {
              "address": "w3.contoso.com",
              "httpPort": 80,
              "httpsPort": 443,
              "enabledState": "Enabled",
              "weight": 1,
              "priority": 2
            },
            {
              "address": "contoso.com.website-us-west-2.othercloud.net",
              "httpPort": 80,
              "httpsPort": 443,
              "enabledState": "Enabled",
              "weight": 2,
              "priority": 1
            },
            {
              "address": "contoso1.azurewebsites.net",
              "httpPort": 80,
              "httpsPort": 443,
              "enabledState": "Enabled",
              "weight": 1,
              "priority": 1
            }
          ],
          "loadBalancingSettings": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1"
          },
          "healthProbeSettings": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1"
          }
        }
      }
    ],
    "frontendEndpoints": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1",
        "name": "frontendEndpoint1",
        "properties": {
          "hostName": "www.contoso.com",
          "sessionAffinityEnabledState": "Enabled",
          "sessionAffinityTtlSeconds": 60,
          "webApplicationFirewallPolicyLink": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1"
          }
        }
      },
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default",
        "name": "default",
        "properties": {
          "hostName": "frontDoor1.azurefd.net"
        }
      }
    ],
    "backendPoolsSettings": {
      "enforceCertificateNameCheck": "Enabled",
      "sendRecvTimeoutSeconds": 60
    },
    "enabledState": "Enabled",
    "resourceState": "Creating",
    "provisioningState": "Succeeded",
    "cname": "frontDoor1.azurefd.net"
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1",
  "name": "frontDoor1",
  "type": "Microsoft.Network/frontDoor",
  "location": "westus",
  "tags": {
    "tag1": "value1",
    "tag2": "value2"
  },
  "properties": {
    "routingRules": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1",
        "name": "routingRule1",
        "properties": {
          "frontendEndpoints": [
            {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1"
            },
            {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default"
            }
          ],
          "acceptedProtocols": [
            "Http"
          ],
          "patternsToMatch": [
            "/*"
          ],
          "routeConfiguration": {
            "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration",
            "customForwardingPath": "",
            "forwardingProtocol": "MatchRequest",
            "backendPool": {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1"
            }
          },
          "enabledState": "Enabled"
        }
      }
    ],
    "healthProbeSettings": [
      {
        "name": "healthProbeSettings1",
        "properties": {
          "path": "/",
          "protocol": "Http",
          "intervalInSeconds": 120,
          "enabledState": "Enabled",
          "healthProbeMethod": "HEAD"
        }
      }
    ],
    "loadBalancingSettings": [
      {
        "name": "loadBalancingSettings1",
        "properties": {
          "sampleSize": 4,
          "successfulSamplesRequired": 2
        }
      }
    ],
    "backendPools": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1",
        "name": "backendPool1",
        "properties": {
          "backends": [
            {
              "address": "w3.contoso.com",
              "httpPort": 80,
              "httpsPort": 443,
              "enabledState": "Enabled",
              "weight": 1,
              "priority": 2
            },
            {
              "address": "contoso.com.website-us-west-2.othercloud.net",
              "httpPort": 80,
              "httpsPort": 443,
              "enabledState": "Enabled",
              "weight": 2,
              "priority": 1
            },
            {
              "address": "contoso1.azurewebsites.net",
              "httpPort": 80,
              "httpsPort": 443,
              "enabledState": "Enabled",
              "weight": 1,
              "priority": 1
            }
          ],
          "loadBalancingSettings": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1"
          },
          "healthProbeSettings": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1"
          }
        }
      }
    ],
    "frontendEndpoints": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1",
        "name": "frontendEndpoint1",
        "properties": {
          "hostName": "www.contoso.com",
          "sessionAffinityEnabledState": "Enabled",
          "sessionAffinityTtlSeconds": 60,
          "webApplicationFirewallPolicyLink": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1"
          }
        }
      },
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default",
        "name": "default",
        "properties": {
          "hostName": "frontDoor1.azurefd.net"
        }
      }
    ],
    "backendPoolsSettings": {
      "enforceCertificateNameCheck": "Enabled",
      "sendRecvTimeoutSeconds": 60
    },
    "enabledState": "Enabled",
    "resourceState": "Creating",
    "provisioningState": "Provisioning",
    "cname": "frontDoor1.azurefd.net"
  }
}
{
  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1",
  "name": "frontDoor1",
  "type": "Microsoft.Network/frontDoor",
  "location": "westus",
  "tags": {
    "tag1": "value1",
    "tag2": "value2"
  },
  "properties": {
    "routingRules": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/routingRules/routingRule1",
        "name": "routingRule1",
        "properties": {
          "frontendEndpoints": [
            {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1"
            },
            {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default"
            }
          ],
          "acceptedProtocols": [
            "Http"
          ],
          "patternsToMatch": [
            "/*"
          ],
          "routeConfiguration": {
            "@odata.type": "#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration",
            "customForwardingPath": "",
            "forwardingProtocol": "MatchRequest",
            "backendPool": {
              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1"
            }
          },
          "enabledState": "Enabled"
        }
      }
    ],
    "healthProbeSettings": [
      {
        "name": "healthProbeSettings1",
        "properties": {
          "path": "/",
          "protocol": "Http",
          "intervalInSeconds": 120,
          "enabledState": "Enabled",
          "healthProbeMethod": "HEAD"
        }
      }
    ],
    "loadBalancingSettings": [
      {
        "name": "loadBalancingSettings1",
        "properties": {
          "sampleSize": 4,
          "successfulSamplesRequired": 2
        }
      }
    ],
    "backendPools": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/backendPools/backendPool1",
        "name": "backendPool1",
        "properties": {
          "backends": [
            {
              "address": "w3.contoso.com",
              "httpPort": 80,
              "httpsPort": 443,
              "enabledState": "Enabled",
              "weight": 1,
              "priority": 2
            },
            {
              "address": "contoso.com.website-us-west-2.othercloud.net",
              "httpPort": 80,
              "httpsPort": 443,
              "enabledState": "Enabled",
              "weight": 2,
              "priority": 1
            },
            {
              "address": "contoso1.azurewebsites.net",
              "httpPort": 80,
              "httpsPort": 443,
              "enabledState": "Enabled",
              "weight": 1,
              "priority": 1
            }
          ],
          "loadBalancingSettings": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/loadBalancingSettings/loadBalancingSettings1"
          },
          "healthProbeSettings": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/healthProbeSettings/healthProbeSettings1"
          }
        }
      }
    ],
    "frontendEndpoints": [
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/frontendEndpoint1",
        "name": "frontendEndpoint1",
        "properties": {
          "hostName": "www.contoso.com",
          "sessionAffinityEnabledState": "Enabled",
          "sessionAffinityTtlSeconds": 60,
          "webApplicationFirewallPolicyLink": {
            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/policy1"
          }
        }
      },
      {
        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/frontDoors/frontDoor1/frontendEndpoints/default",
        "name": "default",
        "properties": {
          "hostName": "frontDoor1.azurefd.net"
        }
      }
    ],
    "backendPoolsSettings": {
      "enforceCertificateNameCheck": "Enabled",
      "sendRecvTimeoutSeconds": 60
    },
    "enabledState": "Enabled",
    "resourceState": "Creating",
    "provisioningState": "Provisioning",
    "cname": "frontDoor1.azurefd.net"
  }
}

Definitions

Name Description
Backend

Backend address of a frontDoor load balancer.

backendEnabledState

Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled'

BackendPool

A backend pool is a collection of backends that can be routed to.

BackendPoolsSettings

Settings that apply to all backend pools.

CacheConfiguration

Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object.

CustomHttpsConfiguration

Https settings for a domain

CustomHttpsProvisioningState

Provisioning status of Custom Https of the frontendEndpoint.

CustomHttpsProvisioningSubstate

Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.

DynamicCompressionEnabled

Whether to use dynamic compression for cached content

enforceCertificateNameCheckEnabledState

Whether to enforce certificate name check on HTTPS requests to all backend pools. No effect on non-HTTPS requests.

ErrorResponse

Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message.

ForwardingConfiguration

Describes Forwarding Route.

FrontDoor

Front Door represents a collection of backend endpoints to route traffic to along with rules that specify how traffic is sent there.

FrontDoorCertificateSource

Defines the source of the SSL certificate

FrontDoorCertificateType

Defines the type of the certificate used for secure connections to a frontendEndpoint

FrontDoorEnabledState

Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled'

FrontDoorForwardingProtocol

Protocol this rule will use when forwarding traffic to backends.

FrontDoorHealthProbeMethod

Configures which HTTP method to use to probe the backends defined under backendPools.

FrontDoorProtocol

Protocol schemes to match for this rule

FrontDoorQuery

Treatment of URL query terms when forming the cache key.

FrontDoorRedirectProtocol

The protocol of the destination to where the traffic is redirected

FrontDoorRedirectType

The redirect type the rule will use when redirecting traffic.

FrontDoorResourceState

Resource status of the Front Door or Front Door SubResource.

FrontDoorTlsProtocolType

Defines the TLS extension protocol that is used for secure delivery

FrontendEndpoint

A frontend endpoint used for routing.

HealthProbeEnabled

Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool.

HealthProbeSettingsModel

Load balancing settings for a backend pool

LoadBalancingSettingsModel

Load balancing settings for a backend pool

MinimumTLSVersion

The minimum TLS version required from the clients to establish an SSL handshake with Front Door.

RedirectConfiguration

Describes Redirect Route.

RoutingRule

A routing rule represents a specification for traffic to treat and where to send it, along with health probe information.

routingRuleEnabledState

Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled'

SessionAffinityEnabledState

Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled'

SubResource

Reference to another subresource.

Vault

The Key Vault containing the SSL certificate

WebApplicationFirewallPolicyLink

Defines the Web Application Firewall policy for each host (if applicable)

Backend

Backend address of a frontDoor load balancer.

Name Type Description
address

string

Location of the backend (IP address or FQDN)

backendHostHeader

string

The value to use as the host header sent to the backend. If blank or unspecified, this defaults to the incoming host.

enabledState

backendEnabledState

Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled'

httpPort

integer

The HTTP TCP port number. Must be between 1 and 65535.

httpsPort

integer

The HTTPS TCP port number. Must be between 1 and 65535.

priority

integer

Priority to use for load balancing. Higher priorities will not be used for load balancing if any lower priority backend is healthy.

weight

integer

Weight of this endpoint for load balancing purposes.

backendEnabledState

Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled'

Name Type Description
Disabled

string

Enabled

string

BackendPool

A backend pool is a collection of backends that can be routed to.

Name Type Description
id

string

Resource ID.

name

string

Resource name.

properties.backends

Backend[]

The set of backends for this pool

properties.healthProbeSettings

SubResource

L7 health probe settings for a backend pool

properties.loadBalancingSettings

SubResource

Load balancing settings for a backend pool

properties.resourceState

FrontDoorResourceState

Resource status of the Front Door or Front Door SubResource.
Resource status.

type

string

Resource type.

BackendPoolsSettings

Settings that apply to all backend pools.

Name Type Default value Description
enforceCertificateNameCheck

enforceCertificateNameCheckEnabledState

Enabled

Whether to enforce certificate name check on HTTPS requests to all backend pools. No effect on non-HTTPS requests.

sendRecvTimeoutSeconds

integer

Send and receive timeout on forwarding request to the backend. When timeout is reached, the request fails and returns.

CacheConfiguration

Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object.

Name Type Description
dynamicCompression

DynamicCompressionEnabled

Whether to use dynamic compression for cached content

queryParameterStripDirective

FrontDoorQuery

Treatment of URL query terms when forming the cache key.

CustomHttpsConfiguration

Https settings for a domain

Name Type Description
certificateSource

FrontDoorCertificateSource

Defines the source of the SSL certificate

frontDoorCertificateSourceParameters.certificateType

FrontDoorCertificateType

Defines the type of the certificate used for secure connections to a frontendEndpoint

keyVaultCertificateSourceParameters.secretName

string

The name of the Key Vault secret representing the full certificate PFX

keyVaultCertificateSourceParameters.secretVersion

string

The version of the Key Vault secret representing the full certificate PFX

keyVaultCertificateSourceParameters.vault

Vault

The Key Vault containing the SSL certificate

minimumTlsVersion

MinimumTLSVersion

The minimum TLS version required from the clients to establish an SSL handshake with Front Door.

protocolType

FrontDoorTlsProtocolType

Defines the TLS extension protocol that is used for secure delivery

CustomHttpsProvisioningState

Provisioning status of Custom Https of the frontendEndpoint.

Name Type Description
Disabled

string

Disabling

string

Enabled

string

Enabling

string

Failed

string

CustomHttpsProvisioningSubstate

Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.

Name Type Description
CertificateDeleted

string

CertificateDeployed

string

DeletingCertificate

string

DeployingCertificate

string

DomainControlValidationRequestApproved

string

DomainControlValidationRequestRejected

string

DomainControlValidationRequestTimedOut

string

IssuingCertificate

string

PendingDomainControlValidationREquestApproval

string

SubmittingDomainControlValidationRequest

string

DynamicCompressionEnabled

Whether to use dynamic compression for cached content

Name Type Description
Disabled

string

Enabled

string

enforceCertificateNameCheckEnabledState

Whether to enforce certificate name check on HTTPS requests to all backend pools. No effect on non-HTTPS requests.

Name Type Description
Disabled

string

Enabled

string

ErrorResponse

Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message.

Name Type Description
code

string

Error code.

message

string

Error message indicating why the operation failed.

ForwardingConfiguration

Describes Forwarding Route.

Name Type Description
@odata.type string:

#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration

backendPool

SubResource

A reference to the BackendPool which this rule routes to.

cacheConfiguration

CacheConfiguration

The caching configuration associated with this rule.

customForwardingPath

string

A custom path used to rewrite resource paths matched by this rule. Leave empty to use incoming path.

forwardingProtocol

FrontDoorForwardingProtocol

Protocol this rule will use when forwarding traffic to backends.

FrontDoor

Front Door represents a collection of backend endpoints to route traffic to along with rules that specify how traffic is sent there.

Name Type Description
id

string

Resource ID.

location

string

Resource location.

name

string

Resource name.

properties.backendPools

BackendPool[]

Backend pools available to routing rules.

properties.backendPoolsSettings

BackendPoolsSettings

Settings for all backendPools

properties.cname

string

The host that each frontendEndpoint must CNAME to.

properties.enabledState

FrontDoorEnabledState

Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled'

properties.friendlyName

string

A friendly name for the frontDoor

properties.frontendEndpoints

FrontendEndpoint[]

Frontend endpoints available to routing rules.

properties.healthProbeSettings

HealthProbeSettingsModel[]

Health probe settings associated with this Front Door instance.

properties.loadBalancingSettings

LoadBalancingSettingsModel[]

Load balancing settings associated with this Front Door instance.

properties.provisioningState

string

Provisioning state of the Front Door.

properties.resourceState

FrontDoorResourceState

Resource status of the Front Door or Front Door SubResource.
Resource status of the Front Door.

properties.routingRules

RoutingRule[]

Routing rules associated with this Front Door.

tags

object

Resource tags.

type

string

Resource type.

FrontDoorCertificateSource

Defines the source of the SSL certificate

Name Type Description
AzureKeyVault

string

FrontDoor

string

FrontDoorCertificateType

Defines the type of the certificate used for secure connections to a frontendEndpoint

Name Type Description
Dedicated

string

FrontDoorEnabledState

Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled'

Name Type Description
Disabled

string

Enabled

string

FrontDoorForwardingProtocol

Protocol this rule will use when forwarding traffic to backends.

Name Type Description
HttpOnly

string

HttpsOnly

string

MatchRequest

string

FrontDoorHealthProbeMethod

Configures which HTTP method to use to probe the backends defined under backendPools.

Name Type Description
GET

string

HEAD

string

FrontDoorProtocol

Protocol schemes to match for this rule

Name Type Description
Http

string

Https

string

FrontDoorQuery

Treatment of URL query terms when forming the cache key.

Name Type Description
StripAll

string

StripNone

string

FrontDoorRedirectProtocol

The protocol of the destination to where the traffic is redirected

Name Type Description
HttpOnly

string

HttpsOnly

string

MatchRequest

string

FrontDoorRedirectType

The redirect type the rule will use when redirecting traffic.

Name Type Description
Found

string

Moved

string

PermanentRedirect

string

TemporaryRedirect

string

FrontDoorResourceState

Resource status of the Front Door or Front Door SubResource.

Name Type Description
Creating

string

Deleting

string

Disabled

string

Disabling

string

Enabled

string

Enabling

string

FrontDoorTlsProtocolType

Defines the TLS extension protocol that is used for secure delivery

Name Type Description
ServerNameIndication

string

FrontendEndpoint

A frontend endpoint used for routing.

Name Type Description
id

string

Resource ID.

name

string

Resource name.

properties.customHttpsConfiguration

CustomHttpsConfiguration

The configuration specifying how to enable HTTPS

properties.customHttpsProvisioningState

CustomHttpsProvisioningState

Provisioning status of Custom Https of the frontendEndpoint.

properties.customHttpsProvisioningSubstate

CustomHttpsProvisioningSubstate

Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.

properties.hostName

string

The host name of the frontendEndpoint. Must be a domain name.

properties.resourceState

FrontDoorResourceState

Resource status of the Front Door or Front Door SubResource.
Resource status.

properties.sessionAffinityEnabledState

SessionAffinityEnabledState

Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled'

properties.sessionAffinityTtlSeconds

integer

UNUSED. This field will be ignored. The TTL to use in seconds for session affinity, if applicable.

properties.webApplicationFirewallPolicyLink

WebApplicationFirewallPolicyLink

Defines the Web Application Firewall policy for each host (if applicable)

type

string

Resource type.

HealthProbeEnabled

Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool.

Name Type Description
Disabled

string

Enabled

string

HealthProbeSettingsModel

Load balancing settings for a backend pool

Name Type Default value Description
id

string

Resource ID.

name

string

Resource name.

properties.enabledState

HealthProbeEnabled

Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool.

properties.healthProbeMethod

FrontDoorHealthProbeMethod

HEAD

Configures which HTTP method to use to probe the backends defined under backendPools.

properties.intervalInSeconds

integer

The number of seconds between health probes.

properties.path

string

The path to use for the health probe. Default is /

properties.protocol

FrontDoorProtocol

Protocol scheme to use for this probe

properties.resourceState

FrontDoorResourceState

Resource status of the Front Door or Front Door SubResource.
Resource status.

type

string

Resource type.

LoadBalancingSettingsModel

Load balancing settings for a backend pool

Name Type Description
id

string

Resource ID.

name

string

Resource name.

properties.additionalLatencyMilliseconds

integer

The additional latency in milliseconds for probes to fall into the lowest latency bucket

properties.resourceState

FrontDoorResourceState

Resource status of the Front Door or Front Door SubResource.
Resource status.

properties.sampleSize

integer

The number of samples to consider for load balancing decisions

properties.successfulSamplesRequired

integer

The number of samples within the sample period that must succeed

type

string

Resource type.

MinimumTLSVersion

The minimum TLS version required from the clients to establish an SSL handshake with Front Door.

Name Type Description
1.0

string

1.2

string

RedirectConfiguration

Describes Redirect Route.

Name Type Description
@odata.type string:

#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration

customFragment

string

Fragment to add to the redirect URL. Fragment is the part of the URL that comes after #. Do not include the #.

customHost

string

Host to redirect. Leave empty to use the incoming host as the destination host.

customPath

string

The full path to redirect. Path cannot be empty and must start with /. Leave empty to use the incoming path as destination path.

customQueryString

string

The set of query strings to be placed in the redirect URL. Setting this value would replace any existing query string; leave empty to preserve the incoming query string. Query string must be in = format. The first ? and & will be added automatically so do not include them in the front, but do separate multiple query strings with &.

redirectProtocol

FrontDoorRedirectProtocol

The protocol of the destination to where the traffic is redirected

redirectType

FrontDoorRedirectType

The redirect type the rule will use when redirecting traffic.

RoutingRule

A routing rule represents a specification for traffic to treat and where to send it, along with health probe information.

Name Type Description
id

string

Resource ID.

name

string

Resource name.

properties.acceptedProtocols

FrontDoorProtocol[]

Protocol schemes to match for this rule

properties.enabledState

routingRuleEnabledState

Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled'

properties.frontendEndpoints

SubResource[]

Frontend endpoints associated with this rule

properties.patternsToMatch

string[]

The route patterns of the rule.

properties.resourceState

FrontDoorResourceState

Resource status of the Front Door or Front Door SubResource.
Resource status.

properties.routeConfiguration RouteConfiguration:

A reference to the routing configuration.

type

string

Resource type.

routingRuleEnabledState

Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled'

Name Type Description
Disabled

string

Enabled

string

SessionAffinityEnabledState

Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled'

Name Type Description
Disabled

string

Enabled

string

SubResource

Reference to another subresource.

Name Type Description
id

string

Resource ID.

Vault

The Key Vault containing the SSL certificate

Name Type Description
id

string

Resource ID.

Defines the Web Application Firewall policy for each host (if applicable)

Name Type Description
id

string

Resource ID.