openapi: 3.2.0 info: title: CdnManagementClient Routes API version: '2026-07-01' description: Use these APIs to manage Azure Front Door and CDN resources through the Azure Resource Manager. You must make sure that requests made to these resources are secure. x-typespec-generated: - emitter: '@azure-tools/typespec-autorest' servers: - url: https://management.azure.com security: - azure_auth: - user_impersonation tags: - name: Routes paths: ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/afdEndpoints/{endpointName}/routes : get: operationId: Routes_ListByEndpoint tags: - Routes description: Lists all of the existing origins within a profile. parameters: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter - name: profileName in: path description: Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group. required: true schema: type: string maxLength: 260 minLength: 1 pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ - name: endpointName in: path description: Name of the endpoint under the profile which is unique globally. required: true schema: type: string responses: '200': description: Azure operation completed successfully. content: application/json: schema: $ref: '#/components/schemas/RouteListResult' default: description: An unexpected error response. content: application/json: schema: $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse x-ms-examples: Routes_ListByEndpoint: $ref: ./examples/Routes_ListByEndpoint.json x-ms-pageable: nextLinkName: nextLink summary: Routes list by endpoint x-summary-source: derived ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/afdEndpoints/{endpointName}/routes/{routeName} : get: operationId: Routes_Get tags: - Routes description: Gets an existing route with the specified route name under the specified subscription, resource group, profile, and AzureFrontDoor endpoint. parameters: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter - name: profileName in: path description: Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group. required: true schema: type: string maxLength: 260 minLength: 1 pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ - name: endpointName in: path description: Name of the endpoint under the profile which is unique globally. required: true schema: type: string - name: routeName in: path description: Name of the routing rule. required: true schema: type: string responses: '200': description: Azure operation completed successfully. content: application/json: schema: $ref: '#/components/schemas/Route' default: description: An unexpected error response. content: application/json: schema: $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse x-ms-examples: Routes_Get: $ref: ./examples/Routes_Get.json summary: Routes get x-summary-source: derived put: operationId: Routes_Create tags: - Routes description: Creates a new route with the specified route name under the specified subscription, resource group, profile, and AzureFrontDoor endpoint. parameters: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter - name: profileName in: path description: Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group. required: true schema: type: string maxLength: 260 minLength: 1 pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ - name: endpointName in: path description: Name of the endpoint under the profile which is unique globally. required: true schema: type: string - name: routeName in: path description: Name of the routing rule. required: true schema: type: string responses: '200': description: Resource 'Route' update operation succeeded content: application/json: schema: $ref: '#/components/schemas/Route' '201': description: Resource 'Route' create operation succeeded headers: Retry-After: description: The Retry-After header can indicate how long the client should wait before polling the operation status. schema: type: integer format: int32 content: application/json: schema: $ref: '#/components/schemas/Route' '202': description: The request has been accepted for processing, but processing has not yet completed. headers: Azure-AsyncOperation: description: A link to the status monitor schema: type: string Location: description: The Location header contains the URL where the status of the long running operation can be checked. schema: type: string content: application/json: schema: $ref: '#/components/schemas/Route' default: description: An unexpected error response. content: application/json: schema: $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse x-ms-examples: Routes_Create: $ref: ./examples/Routes_Create.json x-ms-long-running-operation-options: final-state-via: azure-async-operation final-state-schema: '#/definitions/Route' x-ms-long-running-operation: true requestBody: content: application/json: schema: $ref: '#/components/schemas/Route' description: Route properties required: true summary: Routes create x-summary-source: derived patch: operationId: Routes_Update tags: - Routes description: Updates an existing route with the specified route name under the specified subscription, resource group, profile, and AzureFrontDoor endpoint. parameters: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter - name: profileName in: path description: Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group. required: true schema: type: string maxLength: 260 minLength: 1 pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ - name: endpointName in: path description: Name of the endpoint under the profile which is unique globally. required: true schema: type: string - name: routeName in: path description: Name of the routing rule. required: true schema: type: string responses: '200': description: Azure operation completed successfully. content: application/json: schema: $ref: '#/components/schemas/Route' '202': description: The request has been accepted for processing, but processing has not yet completed. headers: Azure-AsyncOperation: description: A link to the status monitor schema: type: string Location: description: The Location header contains the URL where the status of the long running operation can be checked. schema: type: string Retry-After: description: The Retry-After header can indicate how long the client should wait before polling the operation status. schema: type: integer format: int32 content: application/json: schema: $ref: '#/components/schemas/Route' default: description: An unexpected error response. content: application/json: schema: $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse x-ms-examples: Routes_Update: $ref: ./examples/Routes_Update.json x-ms-long-running-operation-options: final-state-via: azure-async-operation final-state-schema: '#/definitions/Route' x-ms-long-running-operation: true requestBody: content: application/json: schema: $ref: '#/components/schemas/RouteUpdateParameters' description: Route update properties required: true summary: Routes update x-summary-source: derived delete: operationId: Routes_Delete tags: - Routes description: Deletes an existing route with the specified route name under the specified subscription, resource group, profile, and AzureFrontDoor endpoint. parameters: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ApiVersionParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/SubscriptionIdParameter - $ref: ../../../../../../common-types/resource-management/v6/types.json#/parameters/ResourceGroupNameParameter - name: profileName in: path description: Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group. required: true schema: type: string maxLength: 260 minLength: 1 pattern: ^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$ - name: endpointName in: path description: Name of the endpoint under the profile which is unique globally. required: true schema: type: string - name: routeName in: path description: Name of the routing rule. required: true schema: type: string responses: '200': description: Resource deleted successfully. '202': description: Resource deletion accepted. headers: Azure-AsyncOperation: description: A link to the status monitor schema: type: string Location: description: The Location header contains the URL where the status of the long running operation can be checked. schema: type: string Retry-After: description: The Retry-After header can indicate how long the client should wait before polling the operation status. schema: type: integer format: int32 '204': description: Resource does not exist. default: description: An unexpected error response. content: application/json: schema: $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ErrorResponse x-ms-examples: Routes_Delete: $ref: ./examples/Routes_Delete.json x-ms-long-running-operation-options: final-state-via: azure-async-operation x-ms-long-running-operation: true summary: Routes delete x-summary-source: derived components: schemas: RouteUpdatePropertiesParameters: type: object description: The JSON object that contains the properties of the domain to create. properties: endpointName: type: string description: The name of the endpoint which holds the route. readOnly: true customDomains: type: array description: Domains referenced by this endpoint. items: $ref: '#/components/schemas/ActivatedResourceReference' originGroup: $ref: '#/components/schemas/ResourceReference' description: A reference to the origin group. originPath: type: string description: A directory path on the origin that AzureFrontDoor can use to retrieve content from, e.g. contoso.cloudapp.net/originpath. ruleSets: type: array description: rule sets referenced by this endpoint. items: $ref: '#/components/schemas/ResourceReference' supportedProtocols: type: array description: List of supported protocols for this route. default: - Http - Https items: $ref: '#/components/schemas/AFDEndpointProtocols' patternsToMatch: type: array description: The route patterns of the rule. items: type: string cacheConfiguration: $ref: '#/components/schemas/AfdRouteCacheConfiguration' description: The caching configuration for this route. To disable caching, do not provide a cacheConfiguration object. forwardingProtocol: type: string description: Protocol this rule will use when forwarding traffic to backends. default: MatchRequest enum: - HttpOnly - HttpsOnly - MatchRequest x-ms-enum: name: ForwardingProtocol modelAsString: true values: - name: HttpOnly value: HttpOnly - name: HttpsOnly value: HttpsOnly - name: MatchRequest value: MatchRequest linkToDefaultDomain: type: string description: whether this route will be linked to the default endpoint domain. default: Disabled enum: - Enabled - Disabled x-ms-enum: name: LinkToDefaultDomain modelAsString: true values: - name: Enabled value: Enabled - name: Disabled value: Disabled httpsRedirect: type: string description: Whether to automatically redirect HTTP traffic to HTTPS traffic. Note that this is a easy way to set up this rule and it will be the first rule that gets executed. default: Disabled enum: - Enabled - Disabled x-ms-enum: name: HttpsRedirect modelAsString: true values: - name: Enabled value: Enabled - name: Disabled value: Disabled enabledState: $ref: '#/components/schemas/EnabledState' description: Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' Route: type: object description: Friendly Routes name mapping to the any Routes or secret related information. properties: properties: $ref: '#/components/schemas/RouteProperties' description: The JSON object that contains the properties of the Routes to create. x-ms-client-flatten: true allOf: - $ref: ../../../../../../common-types/resource-management/v6/types.json#/definitions/ProxyResource RouteProperties: type: object description: The JSON object that contains the properties of the Routes to create. properties: endpointName: type: string description: The name of the endpoint which holds the route. readOnly: true customDomains: type: array description: Domains referenced by this endpoint. items: $ref: '#/components/schemas/ActivatedResourceReference' originGroup: $ref: '#/components/schemas/ResourceReference' description: A reference to the origin group. originPath: type: string description: A directory path on the origin that AzureFrontDoor can use to retrieve content from, e.g. contoso.cloudapp.net/originpath. ruleSets: type: array description: rule sets referenced by this endpoint. items: $ref: '#/components/schemas/ResourceReference' supportedProtocols: type: array description: List of supported protocols for this route. default: - Http - Https items: $ref: '#/components/schemas/AFDEndpointProtocols' patternsToMatch: type: array description: The route patterns of the rule. items: type: string cacheConfiguration: $ref: '#/components/schemas/AfdRouteCacheConfiguration' description: The caching configuration for this route. To disable caching, do not provide a cacheConfiguration object. forwardingProtocol: type: string description: Protocol this rule will use when forwarding traffic to backends. default: MatchRequest enum: - HttpOnly - HttpsOnly - MatchRequest x-ms-enum: name: ForwardingProtocol modelAsString: true values: - name: HttpOnly value: HttpOnly - name: HttpsOnly value: HttpsOnly - name: MatchRequest value: MatchRequest linkToDefaultDomain: type: string description: whether this route will be linked to the default endpoint domain. default: Disabled enum: - Enabled - Disabled x-ms-enum: name: LinkToDefaultDomain modelAsString: true values: - name: Enabled value: Enabled - name: Disabled value: Disabled httpsRedirect: type: string description: Whether to automatically redirect HTTP traffic to HTTPS traffic. Note that this is a easy way to set up this rule and it will be the first rule that gets executed. default: Disabled enum: - Enabled - Disabled x-ms-enum: name: HttpsRedirect modelAsString: true values: - name: Enabled value: Enabled - name: Disabled value: Disabled enabledState: $ref: '#/components/schemas/EnabledState' description: Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' provisioningState: $ref: '#/components/schemas/AfdProvisioningState' description: Provisioning status readOnly: true deploymentStatus: $ref: '#/components/schemas/DeploymentStatus' readOnly: true AfdQueryStringCachingBehavior: type: string description: 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. enum: - IgnoreQueryString - UseQueryString - IgnoreSpecifiedQueryStrings - IncludeSpecifiedQueryStrings x-ms-enum: name: AfdQueryStringCachingBehavior modelAsString: true values: - name: IgnoreQueryString value: IgnoreQueryString - name: UseQueryString value: UseQueryString - name: IgnoreSpecifiedQueryStrings value: IgnoreSpecifiedQueryStrings - name: IncludeSpecifiedQueryStrings value: IncludeSpecifiedQueryStrings ActivatedResourceReference: type: object description: Reference to another resource along with its state. properties: id: type: string description: Resource ID. isActive: type: boolean description: Whether the resource is active or inactive readOnly: true AfdRouteCacheConfiguration: type: object description: Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object. properties: queryStringCachingBehavior: $ref: '#/components/schemas/AfdQueryStringCachingBehavior' description: 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. queryParameters: type: string description: query parameters to include or exclude (comma separated). compressionSettings: $ref: '#/components/schemas/CompressionSettings' description: compression settings. ResourceReference: type: object description: Reference to another resource. properties: id: type: string description: Resource ID. RouteUpdateParameters: type: object description: The domain JSON object required for domain creation or update. properties: properties: $ref: '#/components/schemas/RouteUpdatePropertiesParameters' description: The JSON object that contains the properties of the domain to create. x-ms-client-flatten: true AfdProvisioningState: type: string description: Provisioning status enum: - Succeeded - Failed - Updating - Deleting - Creating x-ms-enum: name: AfdProvisioningState modelAsString: true values: - name: Succeeded value: Succeeded - name: Failed value: Failed - name: Updating value: Updating - name: Deleting value: Deleting - name: Creating value: Creating AFDEndpointProtocols: type: string description: Supported protocols for the customer's endpoint. enum: - Http - Https x-ms-enum: name: AFDEndpointProtocols modelAsString: true values: - name: Http value: Http - name: Https value: Https EnabledState: type: string description: Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' enum: - Enabled - Disabled x-ms-enum: name: EnabledState modelAsString: true values: - name: Enabled value: Enabled - name: Disabled value: Disabled CompressionSettings: type: object description: settings for compression. properties: contentTypesToCompress: type: array description: List of content types on which compression applies. The value should be a valid MIME type. items: type: string isCompressionEnabled: type: boolean description: Indicates whether content compression is enabled on AzureFrontDoor. Default value is false. 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. DeploymentStatus: type: string enum: - NotStarted - InProgress - Succeeded - Failed x-ms-enum: name: DeploymentStatus modelAsString: true values: - name: NotStarted value: NotStarted - name: InProgress value: InProgress - name: Succeeded value: Succeeded - name: Failed value: Failed RouteListResult: type: object description: The response of a Route list operation. properties: value: type: array description: The Route items on this page items: $ref: '#/components/schemas/Route' nextLink: type: string format: uri description: The link to the next page of items required: - value securitySchemes: azure_auth: type: oauth2 flows: implicit: scopes: user_impersonation: impersonate your user account authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize description: Azure Active Directory OAuth2 Flow.