Share via


Rules - Create

Creates a new delivery rule within the specified rule set.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets/{ruleSetName}/rules/{ruleName}?api-version=2025-04-15

URI Parameters

Name In Required Type Description
profileName
path True

string

minLength: 1
maxLength: 260
pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$

Name of the Azure Front Door Standard or Azure Front Door Premium which is unique within the resource group.

resourceGroupName
path True

string

minLength: 1
maxLength: 90
pattern: ^[-\w\._\(\)]+$

Name of the Resource group within the Azure subscription.

ruleName
path True

string

Name of the delivery rule which is unique within the endpoint.

ruleSetName
path True

string

Name of the rule set under the profile.

subscriptionId
path True

string

Azure Subscription ID.

api-version
query True

string

Version of the API to be used with the client request. Current version is 2025-04-15.

Request Body

Name Required Type Description
properties.actions True DeliveryRuleAction[]:

A list of actions that are executed when all the conditions of a rule are satisfied.

properties.order True

integer (int32)

The order in which the rules are applied for the endpoint. Possible values {0,1,2,3,………}. A rule with a lesser order will be applied before a rule with a greater order. Rule with order 0 is a special rule. It does not require any condition and actions listed in it will always be applied.

properties.conditions DeliveryRuleCondition[]:

A list of conditions that must be matched for the actions to be executed

properties.matchProcessingBehavior

MatchProcessingBehavior

If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue.

Responses

Name Type Description
200 OK

Rule

OK

201 Created

Rule

Created. The request has been fulfilled and a new delivery rule has been created.

202 Accepted

Rule

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

Headers

location: string

Other Status Codes

AfdErrorResponse

Azure 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

Rules_Create

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1/rules/rule1?api-version=2025-04-15

{
  "properties": {
    "order": 1,
    "conditions": [
      {
        "name": "RequestMethod",
        "parameters": {
          "typeName": "DeliveryRuleRequestMethodConditionParameters",
          "operator": "Equal",
          "matchValues": [
            "GET"
          ],
          "negateCondition": false
        }
      }
    ],
    "actions": [
      {
        "name": "ModifyResponseHeader",
        "parameters": {
          "typeName": "DeliveryRuleHeaderActionParameters",
          "headerAction": "Overwrite",
          "headerName": "X-CDN",
          "value": "MSFT"
        }
      }
    ]
  }
}

Sample response

{
  "name": "rule1",
  "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/rulesets/ruleSet1/rules/rule1",
  "type": "Microsoft.Cdn/profiles/rulesets/rules",
  "properties": {
    "order": 1,
    "conditions": [
      {
        "name": "RequestMethod",
        "parameters": {
          "typeName": "DeliveryRuleRequestMethodConditionParameters",
          "operator": "Equal",
          "matchValues": [
            "GET"
          ],
          "negateCondition": false,
          "transforms": []
        }
      }
    ],
    "actions": [
      {
        "name": "ModifyResponseHeader",
        "parameters": {
          "typeName": "DeliveryRuleHeaderActionParameters",
          "headerAction": "Overwrite",
          "headerName": "X-CDN",
          "value": "MSFT"
        }
      }
    ],
    "matchProcessingBehavior": "Continue",
    "provisioningState": "Succeeded",
    "deploymentStatus": "NotStarted"
  }
}
{
  "name": "rule1",
  "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/rulesets/ruleSet1/rules/rule1",
  "type": "Microsoft.Cdn/profiles/rulesets/rules",
  "properties": {
    "order": 1,
    "conditions": [
      {
        "name": "RequestMethod",
        "parameters": {
          "typeName": "DeliveryRuleRequestMethodConditionParameters",
          "operator": "Equal",
          "matchValues": [
            "GET"
          ],
          "negateCondition": false,
          "transforms": []
        }
      }
    ],
    "actions": [
      {
        "name": "ModifyResponseHeader",
        "parameters": {
          "typeName": "DeliveryRuleHeaderActionParameters",
          "headerAction": "Overwrite",
          "headerName": "X-CDN",
          "value": "MSFT"
        }
      }
    ],
    "matchProcessingBehavior": "Continue",
    "provisioningState": "Succeeded",
    "deploymentStatus": "NotStarted"
  }
}
azure-asyncoperation: https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2025-04-15
{
  "name": "rule1",
  "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/rulesets/ruleSet1/rules/rule1",
  "type": "Microsoft.Cdn/profiles/rulesets/rules",
  "properties": {
    "order": 1,
    "conditions": [
      {
        "name": "RequestMethod",
        "parameters": {
          "typeName": "DeliveryRuleRequestMethodConditionParameters",
          "operator": "Equal",
          "matchValues": [
            "GET"
          ],
          "negateCondition": false,
          "transforms": []
        }
      }
    ],
    "actions": [
      {
        "name": "ModifyResponseHeader",
        "parameters": {
          "typeName": "DeliveryRuleHeaderActionParameters",
          "headerAction": "Overwrite",
          "headerName": "X-CDN",
          "value": "MSFT"
        }
      }
    ],
    "matchProcessingBehavior": "Continue",
    "provisioningState": "Creating",
    "deploymentStatus": "NotStarted"
  }
}

Definitions

Name Description
AfdErrorResponse

Error response

AfdProvisioningState

Provisioning status

algorithm

Algorithm to use for URL signing

cacheBehavior

Caching behavior for the requests

CacheConfiguration

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

CacheExpirationActionParameters

Defines the parameters for the cache expiration action.

CacheKeyQueryStringActionParameters

Defines the parameters for the cache-key query string action.

CacheType

The level at which the content needs to be cached.

ClientPortMatchConditionParameters

Defines the parameters for ClientPort match conditions

ClientPortOperator

Describes operator to be matched

CookiesMatchConditionParameters

Defines the parameters for Cookies match conditions

CookiesOperator

Describes operator to be matched

DeliveryRuleCacheExpirationAction

Defines the cache expiration action for the delivery rule.

DeliveryRuleCacheKeyQueryStringAction

Defines the cache-key query string action for the delivery rule.

DeliveryRuleClientPortCondition

Defines the ClientPort condition for the delivery rule.

DeliveryRuleCookiesCondition

Defines the Cookies condition for the delivery rule.

DeliveryRuleHostNameCondition

Defines the HostName condition for the delivery rule.

DeliveryRuleHttpVersionCondition

Defines the HttpVersion condition for the delivery rule.

DeliveryRuleIsDeviceCondition

Defines the IsDevice condition for the delivery rule.

DeliveryRulePostArgsCondition

Defines the PostArgs condition for the delivery rule.

DeliveryRuleQueryStringCondition

Defines the QueryString condition for the delivery rule.

DeliveryRuleRemoteAddressCondition

Defines the RemoteAddress condition for the delivery rule.

DeliveryRuleRequestBodyCondition

Defines the RequestBody condition for the delivery rule.

DeliveryRuleRequestHeaderAction

Defines the request header action for the delivery rule.

DeliveryRuleRequestHeaderCondition

Defines the RequestHeader condition for the delivery rule.

DeliveryRuleRequestMethodCondition

Defines the RequestMethod condition for the delivery rule.

DeliveryRuleRequestSchemeCondition

Defines the RequestScheme condition for the delivery rule.

DeliveryRuleRequestUriCondition

Defines the RequestUri condition for the delivery rule.

DeliveryRuleResponseHeaderAction

Defines the response header action for the delivery rule.

DeliveryRuleRouteConfigurationOverrideAction

Defines the route configuration override action for the delivery rule. Only applicable to Frontdoor Standard/Premium Profiles.

DeliveryRuleServerPortCondition

Defines the ServerPort condition for the delivery rule.

DeliveryRuleSocketAddrCondition

Defines the SocketAddress condition for the delivery rule.

DeliveryRuleSslProtocolCondition

Defines the SslProtocol condition for the delivery rule.

DeliveryRuleUrlFileExtensionCondition

Defines the UrlFileExtension condition for the delivery rule.

DeliveryRuleUrlFileNameCondition

Defines the UrlFileName condition for the delivery rule.

DeliveryRuleUrlPathCondition

Defines the UrlPath condition for the delivery rule.

DeploymentStatus
DestinationProtocol

Protocol to use for the redirect. The default value is MatchRequest

ErrorAdditionalInfo

The resource management error additional info.

ErrorDetail

The error detail.

ForwardingProtocol

Protocol this rule will use when forwarding traffic to backends.

HeaderAction

Action to perform

HeaderActionParameters

Defines the parameters for the request header action.

HostNameMatchConditionParameters

Defines the parameters for HostName match conditions

HostNameOperator

Describes operator to be matched

HttpVersionMatchConditionParameters

Defines the parameters for HttpVersion match conditions

HttpVersionOperator

Describes operator to be matched

IdentityType

The type of identity that creates/modifies resources

IsDeviceMatchConditionParameters

Defines the parameters for IsDevice match conditions

IsDeviceMatchValue

The match value for the condition of the delivery rule

IsDeviceOperator

Describes operator to be matched

MatchProcessingBehavior

If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue.

OriginGroupOverride

Defines the parameters for the origin group override configuration.

OriginGroupOverrideAction

Defines the origin group override action for the delivery rule.

OriginGroupOverrideActionParameters

Defines the parameters for the origin group override action.

paramIndicator

Indicates the purpose of the parameter

PostArgsMatchConditionParameters

Defines the parameters for PostArgs match conditions

PostArgsOperator

Describes operator to be matched

queryStringBehavior

Caching behavior for the requests

QueryStringMatchConditionParameters

Defines the parameters for QueryString match conditions

QueryStringOperator

Describes operator to be matched

RedirectType

The redirect type the rule will use when redirecting traffic.

RemoteAddressMatchConditionParameters

Defines the parameters for RemoteAddress match conditions

RemoteAddressOperator

Describes operator to be matched

RequestBodyMatchConditionParameters

Defines the parameters for RequestBody match conditions

RequestBodyOperator

Describes operator to be matched

RequestHeaderMatchConditionParameters

Defines the parameters for RequestHeader match conditions

RequestHeaderOperator

Describes operator to be matched

RequestMethodMatchConditionParameters

Defines the parameters for RequestMethod match conditions

RequestMethodMatchValue

The match value for the condition of the delivery rule

RequestMethodOperator

Describes operator to be matched

RequestSchemeMatchConditionParameters

Defines the parameters for RequestScheme match conditions

RequestSchemeMatchValue

The match value for the condition of the delivery rule

RequestUriMatchConditionParameters

Defines the parameters for RequestUri match conditions

RequestUriOperator

Describes operator to be matched

ResourceReference

Reference to another resource.

RouteConfigurationOverrideActionParameters

Defines the parameters for the route configuration override action.

Rule

Friendly Rules name mapping to the any Rules or secret related information.

ruleCacheBehavior

Caching behavior for the requests

ruleIsCompressionEnabled

Indicates whether content compression is enabled. If compression is enabled, content will be served as compressed if user requests for a compressed version. Content won't be compressed on AzureFrontDoor when requested content is smaller than 1 byte or larger than 1 MB.

ruleQueryStringCachingBehavior

Defines how Frontdoor caches requests that include query strings. You can ignore any query strings when caching, ignore specific query strings, cache every request with a unique URL, or cache specific query strings.

ServerPortMatchConditionParameters

Defines the parameters for ServerPort match conditions

ServerPortOperator

Describes operator to be matched

SocketAddrMatchConditionParameters

Defines the parameters for SocketAddress match conditions

SocketAddrOperator

Describes operator to be matched

SslProtocol

The protocol of an established TLS connection.

SslProtocolMatchConditionParameters

Defines the parameters for SslProtocol match conditions

SslProtocolOperator

Describes operator to be matched

SystemData

Read only system data

transform

Describes what transforms are applied before matching

UrlFileExtensionMatchConditionParameters

Defines the parameters for UrlFileExtension match conditions

UrlFileExtensionOperator

Describes operator to be matched

UrlFileNameMatchConditionParameters

Defines the parameters for UrlFilename match conditions

UrlFileNameOperator

Describes operator to be matched

UrlPathMatchConditionParameters

Defines the parameters for UrlPath match conditions

UrlPathOperator

Describes operator to be matched

UrlRedirectAction

Defines the url redirect action for the delivery rule.

UrlRedirectActionParameters

Defines the parameters for the url redirect action.

UrlRewriteAction

Defines the url rewrite action for the delivery rule.

UrlRewriteActionParameters

Defines the parameters for the url rewrite action.

UrlSigningAction

Defines the url signing action for the delivery rule.

UrlSigningActionParameters

Defines the parameters for the Url Signing action.

UrlSigningParamIdentifier

Defines how to identify a parameter for a specific purpose e.g. expires

AfdErrorResponse

Error response

Name Type Description
error

ErrorDetail

The error object.

AfdProvisioningState

Provisioning status

Value Description
Creating
Deleting
Failed
Succeeded
Updating

algorithm

Algorithm to use for URL signing

Value Description
SHA256

cacheBehavior

Caching behavior for the requests

Value Description
BypassCache
Override
SetIfMissing

CacheConfiguration

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

Name Type Description
cacheBehavior

ruleCacheBehavior

Caching behavior for the requests

cacheDuration

string

The duration for which the content needs to be cached. Allowed format is [d.]hh:mm:ss

isCompressionEnabled

ruleIsCompressionEnabled

Indicates whether content compression is enabled. If compression is enabled, content will be served as compressed if user requests for a compressed version. Content won't be compressed on AzureFrontDoor when requested content is smaller than 1 byte or larger than 1 MB.

queryParameters

string

query parameters to include or exclude (comma separated).

queryStringCachingBehavior

ruleQueryStringCachingBehavior

Defines how Frontdoor caches requests that include query strings. You can ignore any query strings when caching, ignore specific query strings, cache every request with a unique URL, or cache specific query strings.

CacheExpirationActionParameters

Defines the parameters for the cache expiration action.

Name Type Description
cacheBehavior

cacheBehavior

Caching behavior for the requests

cacheDuration

string

The duration for which the content needs to be cached. Allowed format is [d.]hh:mm:ss

cacheType

CacheType

The level at which the content needs to be cached.

typeName string:

DeliveryRuleCacheExpirationActionParameters

CacheKeyQueryStringActionParameters

Defines the parameters for the cache-key query string action.

Name Type Description
queryParameters

string

query parameters to include or exclude (comma separated).

queryStringBehavior

queryStringBehavior

Caching behavior for the requests

typeName string:

DeliveryRuleCacheKeyQueryStringBehaviorActionParameters

CacheType

The level at which the content needs to be cached.

Value Description
All

ClientPortMatchConditionParameters

Defines the parameters for ClientPort match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

ClientPortOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleClientPortConditionParameters

ClientPortOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

CookiesMatchConditionParameters

Defines the parameters for Cookies match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

CookiesOperator

Describes operator to be matched

selector

string

Name of Cookies to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleCookiesConditionParameters

CookiesOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

DeliveryRuleCacheExpirationAction

Defines the cache expiration action for the delivery rule.

Name Type Description
name string:

CacheExpiration

The name of the action for the delivery rule.

parameters

CacheExpirationActionParameters

Defines the parameters for the action.

DeliveryRuleCacheKeyQueryStringAction

Defines the cache-key query string action for the delivery rule.

Name Type Description
name string:

CacheKeyQueryString

The name of the action for the delivery rule.

parameters

CacheKeyQueryStringActionParameters

Defines the parameters for the action.

DeliveryRuleClientPortCondition

Defines the ClientPort condition for the delivery rule.

Name Type Description
name string:

ClientPort

The name of the condition for the delivery rule.

parameters

ClientPortMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleCookiesCondition

Defines the Cookies condition for the delivery rule.

Name Type Description
name string:

Cookies

The name of the condition for the delivery rule.

parameters

CookiesMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleHostNameCondition

Defines the HostName condition for the delivery rule.

Name Type Description
name string:

HostName

The name of the condition for the delivery rule.

parameters

HostNameMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleHttpVersionCondition

Defines the HttpVersion condition for the delivery rule.

Name Type Description
name string:

HttpVersion

The name of the condition for the delivery rule.

parameters

HttpVersionMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleIsDeviceCondition

Defines the IsDevice condition for the delivery rule.

Name Type Description
name string:

IsDevice

The name of the condition for the delivery rule.

parameters

IsDeviceMatchConditionParameters

Defines the parameters for the condition.

DeliveryRulePostArgsCondition

Defines the PostArgs condition for the delivery rule.

Name Type Description
name string:

PostArgs

The name of the condition for the delivery rule.

parameters

PostArgsMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleQueryStringCondition

Defines the QueryString condition for the delivery rule.

Name Type Description
name string:

QueryString

The name of the condition for the delivery rule.

parameters

QueryStringMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleRemoteAddressCondition

Defines the RemoteAddress condition for the delivery rule.

Name Type Description
name string:

RemoteAddress

The name of the condition for the delivery rule.

parameters

RemoteAddressMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleRequestBodyCondition

Defines the RequestBody condition for the delivery rule.

Name Type Description
name string:

RequestBody

The name of the condition for the delivery rule.

parameters

RequestBodyMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleRequestHeaderAction

Defines the request header action for the delivery rule.

Name Type Description
name string:

ModifyRequestHeader

The name of the action for the delivery rule.

parameters

HeaderActionParameters

Defines the parameters for the action.

DeliveryRuleRequestHeaderCondition

Defines the RequestHeader condition for the delivery rule.

Name Type Description
name string:

RequestHeader

The name of the condition for the delivery rule.

parameters

RequestHeaderMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleRequestMethodCondition

Defines the RequestMethod condition for the delivery rule.

Name Type Description
name string:

RequestMethod

The name of the condition for the delivery rule.

parameters

RequestMethodMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleRequestSchemeCondition

Defines the RequestScheme condition for the delivery rule.

Name Type Description
name string:

RequestScheme

The name of the condition for the delivery rule.

parameters

RequestSchemeMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleRequestUriCondition

Defines the RequestUri condition for the delivery rule.

Name Type Description
name string:

RequestUri

The name of the condition for the delivery rule.

parameters

RequestUriMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleResponseHeaderAction

Defines the response header action for the delivery rule.

Name Type Description
name string:

ModifyResponseHeader

The name of the action for the delivery rule.

parameters

HeaderActionParameters

Defines the parameters for the action.

DeliveryRuleRouteConfigurationOverrideAction

Defines the route configuration override action for the delivery rule. Only applicable to Frontdoor Standard/Premium Profiles.

Name Type Description
name string:

RouteConfigurationOverride

The name of the action for the delivery rule.

parameters

RouteConfigurationOverrideActionParameters

Defines the parameters for the action.

DeliveryRuleServerPortCondition

Defines the ServerPort condition for the delivery rule.

Name Type Description
name string:

ServerPort

The name of the condition for the delivery rule.

parameters

ServerPortMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleSocketAddrCondition

Defines the SocketAddress condition for the delivery rule.

Name Type Description
name string:

SocketAddr

The name of the condition for the delivery rule.

parameters

SocketAddrMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleSslProtocolCondition

Defines the SslProtocol condition for the delivery rule.

Name Type Description
name string:

SslProtocol

The name of the condition for the delivery rule.

parameters

SslProtocolMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleUrlFileExtensionCondition

Defines the UrlFileExtension condition for the delivery rule.

Name Type Description
name string:

UrlFileExtension

The name of the condition for the delivery rule.

parameters

UrlFileExtensionMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleUrlFileNameCondition

Defines the UrlFileName condition for the delivery rule.

Name Type Description
name string:

UrlFileName

The name of the condition for the delivery rule.

parameters

UrlFileNameMatchConditionParameters

Defines the parameters for the condition.

DeliveryRuleUrlPathCondition

Defines the UrlPath condition for the delivery rule.

Name Type Description
name string:

UrlPath

The name of the condition for the delivery rule.

parameters

UrlPathMatchConditionParameters

Defines the parameters for the condition.

DeploymentStatus

Value Description
Failed
InProgress
NotStarted
Succeeded

DestinationProtocol

Protocol to use for the redirect. The default value is MatchRequest

Value Description
Http
Https
MatchRequest

ErrorAdditionalInfo

The resource management error additional info.

Name Type Description
info

object

The additional info.

type

string

The additional info type.

ErrorDetail

The error detail.

Name Type Description
additionalInfo

ErrorAdditionalInfo[]

The error additional info.

code

string

The error code.

details

ErrorDetail[]

The error details.

message

string

The error message.

target

string

The error target.

ForwardingProtocol

Protocol this rule will use when forwarding traffic to backends.

Value Description
HttpOnly
HttpsOnly
MatchRequest

HeaderAction

Action to perform

Value Description
Append
Delete
Overwrite

HeaderActionParameters

Defines the parameters for the request header action.

Name Type Description
headerAction

HeaderAction

Action to perform

headerName

string

Name of the header to modify

typeName string:

DeliveryRuleHeaderActionParameters

value

string

Value for the specified action

HostNameMatchConditionParameters

Defines the parameters for HostName match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

HostNameOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleHostNameConditionParameters

HostNameOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

HttpVersionMatchConditionParameters

Defines the parameters for HttpVersion match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

HttpVersionOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleHttpVersionConditionParameters

HttpVersionOperator

Describes operator to be matched

Value Description
Equal

IdentityType

The type of identity that creates/modifies resources

Value Description
application
key
managedIdentity
user

IsDeviceMatchConditionParameters

Defines the parameters for IsDevice match conditions

Name Type Default value Description
matchValues

IsDeviceMatchValue[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

IsDeviceOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleIsDeviceConditionParameters

IsDeviceMatchValue

The match value for the condition of the delivery rule

Value Description
Desktop
Mobile

IsDeviceOperator

Describes operator to be matched

Value Description
Equal

MatchProcessingBehavior

If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue.

Value Description
Continue
Stop

OriginGroupOverride

Defines the parameters for the origin group override configuration.

Name Type Description
forwardingProtocol

ForwardingProtocol

Protocol this rule will use when forwarding traffic to backends.

originGroup

ResourceReference

defines the OriginGroup that would override the DefaultOriginGroup on route.

OriginGroupOverrideAction

Defines the origin group override action for the delivery rule.

Name Type Description
name string:

OriginGroupOverride

The name of the action for the delivery rule.

parameters

OriginGroupOverrideActionParameters

Defines the parameters for the action.

OriginGroupOverrideActionParameters

Defines the parameters for the origin group override action.

Name Type Description
originGroup

ResourceReference

defines the OriginGroup that would override the DefaultOriginGroup.

typeName string:

DeliveryRuleOriginGroupOverrideActionParameters

paramIndicator

Indicates the purpose of the parameter

Value Description
Expires
KeyId
Signature

PostArgsMatchConditionParameters

Defines the parameters for PostArgs match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

PostArgsOperator

Describes operator to be matched

selector

string

Name of PostArg to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRulePostArgsConditionParameters

PostArgsOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

queryStringBehavior

Caching behavior for the requests

Value Description
Exclude
ExcludeAll
Include
IncludeAll

QueryStringMatchConditionParameters

Defines the parameters for QueryString match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

QueryStringOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleQueryStringConditionParameters

QueryStringOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

RedirectType

The redirect type the rule will use when redirecting traffic.

Value Description
Found
Moved
PermanentRedirect
TemporaryRedirect

RemoteAddressMatchConditionParameters

Defines the parameters for RemoteAddress match conditions

Name Type Default value Description
matchValues

string[]

Match values to match against. The operator will apply to each value in here with OR semantics. If any of them match the variable with the given operator this match condition is considered a match.

negateCondition

boolean

False

Describes if this is negate condition or not

operator

RemoteAddressOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleRemoteAddressConditionParameters

RemoteAddressOperator

Describes operator to be matched

Value Description
Any
GeoMatch
IPMatch

RequestBodyMatchConditionParameters

Defines the parameters for RequestBody match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

RequestBodyOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleRequestBodyConditionParameters

RequestBodyOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

RequestHeaderMatchConditionParameters

Defines the parameters for RequestHeader match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

RequestHeaderOperator

Describes operator to be matched

selector

string

Name of Header to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleRequestHeaderConditionParameters

RequestHeaderOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

RequestMethodMatchConditionParameters

Defines the parameters for RequestMethod match conditions

Name Type Default value Description
matchValues

RequestMethodMatchValue[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

RequestMethodOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleRequestMethodConditionParameters

RequestMethodMatchValue

The match value for the condition of the delivery rule

Value Description
DELETE
GET
HEAD
OPTIONS
POST
PUT
TRACE

RequestMethodOperator

Describes operator to be matched

Value Description
Equal

RequestSchemeMatchConditionParameters

Defines the parameters for RequestScheme match conditions

Name Type Default value Description
matchValues

RequestSchemeMatchValue[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator enum:

Equal

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleRequestSchemeConditionParameters

RequestSchemeMatchValue

The match value for the condition of the delivery rule

Value Description
HTTP
HTTPS

RequestUriMatchConditionParameters

Defines the parameters for RequestUri match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

RequestUriOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleRequestUriConditionParameters

RequestUriOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

ResourceReference

Reference to another resource.

Name Type Description
id

string

Resource ID.

RouteConfigurationOverrideActionParameters

Defines the parameters for the route configuration override action.

Name Type Description
cacheConfiguration

CacheConfiguration

The caching configuration associated with this rule. To disable caching, do not provide a cacheConfiguration object.

originGroupOverride

OriginGroupOverride

A reference to the origin group override configuration. Leave empty to use the default origin group on route.

typeName string:

DeliveryRuleRouteConfigurationOverrideActionParameters

Rule

Friendly Rules name mapping to the any Rules or secret related information.

Name Type Default value Description
id

string

Resource ID.

name

string

Resource name.

properties.actions DeliveryRuleAction[]:

A list of actions that are executed when all the conditions of a rule are satisfied.

properties.conditions DeliveryRuleCondition[]:

A list of conditions that must be matched for the actions to be executed

properties.deploymentStatus

DeploymentStatus

properties.matchProcessingBehavior

MatchProcessingBehavior

Continue

If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue.

properties.order

integer (int32)

The order in which the rules are applied for the endpoint. Possible values {0,1,2,3,………}. A rule with a lesser order will be applied before a rule with a greater order. Rule with order 0 is a special rule. It does not require any condition and actions listed in it will always be applied.

properties.provisioningState

AfdProvisioningState

Provisioning status

properties.ruleSetName

string

The name of the rule set containing the rule.

systemData

SystemData

Read only system data

type

string

Resource type.

ruleCacheBehavior

Caching behavior for the requests

Value Description
HonorOrigin
OverrideAlways
OverrideIfOriginMissing

ruleIsCompressionEnabled

Indicates whether content compression is enabled. If compression is enabled, content will be served as compressed if user requests for a compressed version. Content won't be compressed on AzureFrontDoor when requested content is smaller than 1 byte or larger than 1 MB.

Value Description
Disabled
Enabled

ruleQueryStringCachingBehavior

Defines how Frontdoor caches requests that include query strings. You can ignore any query strings when caching, ignore specific query strings, cache every request with a unique URL, or cache specific query strings.

Value Description
IgnoreQueryString
IgnoreSpecifiedQueryStrings
IncludeSpecifiedQueryStrings
UseQueryString

ServerPortMatchConditionParameters

Defines the parameters for ServerPort match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

ServerPortOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleServerPortConditionParameters

ServerPortOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

SocketAddrMatchConditionParameters

Defines the parameters for SocketAddress match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

SocketAddrOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleSocketAddrConditionParameters

SocketAddrOperator

Describes operator to be matched

Value Description
Any
IPMatch

SslProtocol

The protocol of an established TLS connection.

Value Description
TLSv1
TLSv1.1
TLSv1.2

SslProtocolMatchConditionParameters

Defines the parameters for SslProtocol match conditions

Name Type Default value Description
matchValues

SslProtocol[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

SslProtocolOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleSslProtocolConditionParameters

SslProtocolOperator

Describes operator to be matched

Value Description
Equal

SystemData

Read only system data

Name Type Description
createdAt

string (date-time)

The timestamp of resource creation (UTC)

createdBy

string

An identifier for the identity that created the resource

createdByType

IdentityType

The type of identity that created the resource

lastModifiedAt

string (date-time)

The timestamp of resource last modification (UTC)

lastModifiedBy

string

An identifier for the identity that last modified the resource

lastModifiedByType

IdentityType

The type of identity that last modified the resource

transform

Describes what transforms are applied before matching

Value Description
Lowercase
RemoveNulls
Trim
Uppercase
UrlDecode
UrlEncode

UrlFileExtensionMatchConditionParameters

Defines the parameters for UrlFileExtension match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

UrlFileExtensionOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleUrlFileExtensionMatchConditionParameters

UrlFileExtensionOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

UrlFileNameMatchConditionParameters

Defines the parameters for UrlFilename match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

UrlFileNameOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleUrlFilenameConditionParameters

UrlFileNameOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx

UrlPathMatchConditionParameters

Defines the parameters for UrlPath match conditions

Name Type Default value Description
matchValues

string[]

The match value for the condition of the delivery rule

negateCondition

boolean

False

Describes if this is negate condition or not

operator

UrlPathOperator

Describes operator to be matched

transforms

transform[]

List of transforms

typeName string:

DeliveryRuleUrlPathMatchConditionParameters

UrlPathOperator

Describes operator to be matched

Value Description
Any
BeginsWith
Contains
EndsWith
Equal
GreaterThan
GreaterThanOrEqual
LessThan
LessThanOrEqual
RegEx
Wildcard

UrlRedirectAction

Defines the url redirect action for the delivery rule.

Name Type Description
name string:

UrlRedirect

The name of the action for the delivery rule.

parameters

UrlRedirectActionParameters

Defines the parameters for the action.

UrlRedirectActionParameters

Defines the parameters for the url redirect action.

Name Type Description
customFragment

string

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

customHostname

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. ? and & will be added automatically so do not include them.

destinationProtocol

DestinationProtocol

Protocol to use for the redirect. The default value is MatchRequest

redirectType

RedirectType

The redirect type the rule will use when redirecting traffic.

typeName string:

DeliveryRuleUrlRedirectActionParameters

UrlRewriteAction

Defines the url rewrite action for the delivery rule.

Name Type Description
name string:

UrlRewrite

The name of the action for the delivery rule.

parameters

UrlRewriteActionParameters

Defines the parameters for the action.

UrlRewriteActionParameters

Defines the parameters for the url rewrite action.

Name Type Description
destination

string

Define the relative URL to which the above requests will be rewritten by.

preserveUnmatchedPath

boolean

Whether to preserve unmatched path. Default value is true.

sourcePattern

string

define a request URI pattern that identifies the type of requests that may be rewritten. If value is blank, all strings are matched.

typeName string:

DeliveryRuleUrlRewriteActionParameters

UrlSigningAction

Defines the url signing action for the delivery rule.

Name Type Description
name string:

UrlSigning

The name of the action for the delivery rule.

parameters

UrlSigningActionParameters

Defines the parameters for the action.

UrlSigningActionParameters

Defines the parameters for the Url Signing action.

Name Type Description
algorithm

algorithm

Algorithm to use for URL signing

parameterNameOverride

UrlSigningParamIdentifier[]

Defines which query string parameters in the url to be considered for expires, key id etc.

typeName string:

DeliveryRuleUrlSigningActionParameters

UrlSigningParamIdentifier

Defines how to identify a parameter for a specific purpose e.g. expires

Name Type Description
paramIndicator

paramIndicator

Indicates the purpose of the parameter

paramName

string

Parameter name