From a79b0086504f9594ccd2c9ccaa47e1547906dbcd Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Mon, 3 Oct 2022 12:29:35 -0700 Subject: [PATCH 01/33] Init 2022-11-01-preview --- .../preview/2022-11-01-preview/afdx.json | 5948 ++++++++++++++ .../preview/2022-11-01-preview/cdn.json | 6922 +++++++++++++++++ .../cdnwebapplicationfirewall.json | 967 +++ .../examples/AFDCustomDomains_Create.json | 116 + .../examples/AFDCustomDomains_Delete.json | 14 + .../examples/AFDCustomDomains_Get.json | 42 + .../AFDCustomDomains_ListByProfile.json | 45 + ...DCustomDomains_RefreshValidationToken.json | 13 + .../examples/AFDCustomDomains_Update.json | 87 + .../examples/AFDEndpoints_Create.json | 67 + .../examples/AFDEndpoints_Delete.json | 14 + .../examples/AFDEndpoints_Get.json | 27 + .../examples/AFDEndpoints_ListByProfile.json | 30 + .../AFDEndpoints_ListResourceUsage.json | 27 + .../examples/AFDEndpoints_PurgeContent.json | 21 + .../examples/AFDEndpoints_Update.json | 52 + .../AFDEndpoints_ValidateCustomDomain.json | 21 + .../examples/AFDOriginGroups_Create.json | 96 + .../examples/AFDOriginGroups_Delete.json | 14 + .../examples/AFDOriginGroups_Get.json | 34 + .../AFDOriginGroups_ListByProfile.json | 37 + .../AFDOriginGroups_ListResourceUsage.json | 27 + .../examples/AFDOriginGroups_Update.json | 76 + .../examples/AFDOrigins_Create.json | 84 + .../examples/AFDOrigins_Delete.json | 15 + .../examples/AFDOrigins_Get.json | 33 + .../AFDOrigins_ListByOriginGroup.json | 36 + .../examples/AFDOrigins_Update.json | 65 + ...AFDProfiles_CheckHostNameAvailability.json | 20 + .../AFDProfiles_ListResourceUsage.json | 26 + .../CheckEndpointNameAvailability.json | 22 + .../examples/CheckNameAvailability.json | 18 + ...CheckNameAvailabilityWithSubscription.json | 19 + .../examples/CustomDomains_Create.json | 62 + .../examples/CustomDomains_Delete.json | 32 + .../CustomDomains_DisableCustomHttps.json | 45 + ...tomDomains_EnableCustomHttpsUsingBYOC.json | 60 + ...CustomHttpsUsingCDNManagedCertificate.json | 54 + .../examples/CustomDomains_Get.json | 27 + .../CustomDomains_ListByEndpoint.json | 30 + .../examples/EdgeNodes_List.json | 107 + .../examples/Endpoints_Create.json | 543 ++ .../examples/Endpoints_Delete.json | 14 + .../examples/Endpoints_Get.json | 79 + .../examples/Endpoints_ListByProfile.json | 86 + .../examples/Endpoints_ListResourceUsage.json | 29 + .../examples/Endpoints_LoadContent.json | 18 + .../examples/Endpoints_PurgeContent.json | 18 + .../examples/Endpoints_Start.json | 86 + .../examples/Endpoints_Stop.json | 86 + .../examples/Endpoints_Update.json | 141 + .../Endpoints_ValidateCustomDomain.json | 21 + ...LogAnalytics_GetLogAnalyticsLocations.json | 60 + .../LogAnalytics_GetLogAnalyticsMetrics.json | 71 + .../LogAnalytics_GetLogAnalyticsRankings.json | 82 + ...LogAnalytics_GetLogAnalyticsResources.json | 55 + ...ogAnalytics_GetWafLogAnalyticsMetrics.json | 132 + ...gAnalytics_GetWafLogAnalyticsRankings.json | 42 + .../examples/Operations_List.json | 93 + .../examples/OriginGroups_Create.json | 109 + .../examples/OriginGroups_Delete.json | 15 + .../examples/OriginGroups_Get.json | 44 + .../examples/OriginGroups_ListByEndpoint.json | 41 + .../examples/OriginGroups_Update.json | 74 + .../examples/Origins_Create.json | 92 + .../examples/Origins_Delete.json | 15 + .../examples/Origins_Get.json | 33 + .../examples/Origins_ListByEndpoint.json | 36 + .../examples/Origins_Update.json | 68 + .../examples/Profiles_CanMigrate.json | 22 + .../examples/Profiles_Create.json | 73 + .../examples/Profiles_Delete.json | 13 + .../examples/Profiles_GenerateSsoUri.json | 15 + .../examples/Profiles_Get.json | 29 + .../examples/Profiles_List.json | 48 + .../Profiles_ListByResourceGroup.json | 49 + .../examples/Profiles_ListResourceUsage.json | 22 + ...ofiles_ListSupportedOptimizationTypes.json | 18 + .../examples/Profiles_Migrate.json | 37 + .../examples/Profiles_MigrationCommit.json | 15 + .../examples/Profiles_Update.json | 60 + .../examples/ResourceUsage_List.json | 20 + .../examples/Routes_Create.json | 193 + .../examples/Routes_Delete.json | 15 + .../examples/Routes_Get.json | 59 + .../examples/Routes_ListByEndpoint.json | 62 + .../examples/Routes_Update.json | 148 + .../examples/RuleSets_Create.json | 33 + .../examples/RuleSets_Delete.json | 14 + .../examples/RuleSets_Get.json | 22 + .../examples/RuleSets_ListByProfile.json | 25 + .../examples/RuleSets_ListResourceUsage.json | 27 + .../examples/Rules_Create.json | 155 + .../examples/Rules_Delete.json | 15 + .../examples/Rules_Get.json | 50 + .../examples/Rules_ListByRuleSet.json | 53 + .../examples/Rules_Update.json | 107 + .../examples/Secrets_Create.json | 104 + .../examples/Secrets_Delete.json | 14 + .../examples/Secrets_Get.json | 38 + .../examples/Secrets_ListByProfile.json | 55 + .../examples/SecurityPolicies_Create.json | 132 + .../examples/SecurityPolicies_Delete.json | 14 + .../examples/SecurityPolicies_Get.json | 43 + .../SecurityPolicies_ListByProfile.json | 46 + .../examples/SecurityPolicies_Patch.json | 103 + .../examples/ValidateProbe.json | 18 + .../examples/Validate_Secret.json | 22 + .../examples/WafListManagedRuleSets.json | 53 + .../examples/WafListPolicies.json | 265 + .../examples/WafPatchPolicy.json | 275 + .../examples/WafPolicyCreateOrUpdate.json | 505 ++ .../examples/WafPolicyDelete.json | 12 + .../examples/WafPolicyGet.json | 139 + 114 files changed, 20872 insertions(+) create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdnwebapplicationfirewall.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_RefreshValidationToken.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_PurgeContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ValidateCustomDomain.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_ListByOriginGroup.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_CheckHostNameAvailability.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckEndpointNameAvailability.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckNameAvailability.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckNameAvailabilityWithSubscription.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_DisableCustomHttps.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/EdgeNodes_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_LoadContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_PurgeContent.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Start.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Stop.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ValidateCustomDomain.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsLocations.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsMetrics.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsRankings.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsResources.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetWafLogAnalyticsMetrics.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetWafLogAnalyticsRankings.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Operations_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_CanMigrate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_GenerateSsoUri.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListByResourceGroup.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListSupportedOptimizationTypes.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/ResourceUsage_List.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_ListByEndpoint.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_ListResourceUsage.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_ListByRuleSet.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Update.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Create.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Delete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Get.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_ListByProfile.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Patch.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/ValidateProbe.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Validate_Secret.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafListManagedRuleSets.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafListPolicies.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPatchPolicy.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyCreateOrUpdate.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyDelete.json create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyGet.json diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json new file mode 100644 index 000000000000..112fdc3f55e6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -0,0 +1,5948 @@ +{ + "swagger": "2.0", + "info": { + "version": "2022-11-01-preview", + "title": "CdnManagementClient", + "description": "Use these APIs to manage Azure CDN resources through the Azure Resource Manager. You must make sure that requests made to these resources are secure." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/checkEndpointNameAvailability": { + "post": { + "tags": [ + "CheckEndpointNameAvailability" + ], + "description": "Check the availability of a resource name. This is needed for resources where name is globally unique, such as a afdx endpoint.", + "operationId": "CheckEndpointNameAvailability", + "x-ms-examples": { + "CheckEndpointNameAvailability": { + "$ref": "./examples/CheckEndpointNameAvailability.json" + } + }, + "parameters": [ + { + "name": "checkEndpointNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckEndpointNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckEndpointNameAvailabilityOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/usages": { + "post": { + "tags": [ + "AFDProfiles" + ], + "description": "Checks the quota and actual usage of endpoints under the given CDN profile.", + "operationId": "AFDProfiles_ListResourceUsage", + "x-ms-examples": { + "AFDProfiles_ListResourceUsage": { + "$ref": "./examples/AFDProfiles_ListResourceUsage.json" + } + }, + "parameters": [ + { + "$ref": "#/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, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/checkHostNameAvailability": { + "post": { + "tags": [ + "AFDProfiles" + ], + "description": "Validates the custom domain mapping to ensure it maps to the correct CDN endpoint in DNS.", + "operationId": "AFDProfiles_CheckHostNameAvailability", + "x-ms-examples": { + "AFDProfiles_CheckHostNameAvailability": { + "$ref": "./examples/AFDProfiles_CheckHostNameAvailability.json" + } + }, + "parameters": [ + { + "$ref": "#/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, + "type": "string" + }, + { + "name": "checkHostNameAvailabilityInput", + "in": "body", + "description": "Custom domain to be validated.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckHostNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "./cdn.json#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/customDomains": { + "get": { + "tags": [ + "AFDCustomDomains" + ], + "description": "Lists existing AzureFrontDoor domains.", + "operationId": "AFDCustomDomains_ListByProfile", + "x-ms-examples": { + "AFDCustomDomains_ListByProfile": { + "$ref": "./examples/AFDCustomDomains_ListByProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile or CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDDomainListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/customDomains/{customDomainName}": { + "get": { + "tags": [ + "AFDCustomDomains" + ], + "description": "Gets an existing AzureFrontDoor domain with the specified domain name under the specified subscription, resource group and profile.", + "operationId": "AFDCustomDomains_Get", + "x-ms-examples": { + "AFDCustomDomains_Get": { + "$ref": "./examples/AFDCustomDomains_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the domain under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AFDCustomDomains" + ], + "description": "Creates a new domain within the specified profile.", + "operationId": "AFDCustomDomains_Create", + "x-ms-examples": { + "AFDCustomDomains_Create": { + "$ref": "./examples/AFDCustomDomains_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the domain under the profile which is unique globally", + "required": true, + "type": "string" + }, + { + "name": "customDomain", + "in": "body", + "description": "Domain properties", + "required": true, + "schema": { + "$ref": "#/definitions/AFDDomain" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDDomain" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new domain has been created.", + "schema": { + "$ref": "#/definitions/AFDDomain" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AFDDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AFDCustomDomains" + ], + "description": "Updates an existing domain within a profile.", + "operationId": "AFDCustomDomains_Update", + "x-ms-examples": { + "AFDCustomDomains_Update": { + "$ref": "./examples/AFDCustomDomains_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the domain under the profile which is unique globally", + "required": true, + "type": "string" + }, + { + "name": "customDomainUpdateProperties", + "in": "body", + "description": "Domain properties", + "required": true, + "schema": { + "$ref": "#/definitions/AFDDomainUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDDomain" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AFDDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "AFDCustomDomains" + ], + "description": "Deletes an existing AzureFrontDoor domain with the specified domain name under the specified subscription, resource group and profile.", + "operationId": "AFDCustomDomains_Delete", + "x-ms-examples": { + "AFDCustomDomains_Delete": { + "$ref": "./examples/AFDCustomDomains_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the domain under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content. The request has been accepted but the domain was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/customDomains/{customDomainName}/refreshValidationToken": { + "post": { + "tags": [ + "AFDCustomDomains" + ], + "description": "Updates the domain validation token.", + "operationId": "AFDCustomDomains_RefreshValidationToken", + "x-ms-examples": { + "AFDCustomDomains_Delete": { + "$ref": "./examples/AFDCustomDomains_RefreshValidationToken.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the domain under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously. Please poll the targeted custom domain and check the 'validationProperties' field for the new validation token values." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/afdEndpoints": { + "get": { + "tags": [ + "AFDEndpoints" + ], + "description": "Lists existing AzureFrontDoor endpoints.", + "operationId": "AFDEndpoints_ListByProfile", + "x-ms-examples": { + "AFDEndpoints_ListByProfile": { + "$ref": "./examples/AFDEndpoints_ListByProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDEndpointListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/afdEndpoints/{endpointName}": { + "get": { + "tags": [ + "AFDEndpoints" + ], + "description": "Gets an existing AzureFrontDoor endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "AFDEndpoints_Get", + "x-ms-examples": { + "AFDEndpoints_Get": { + "$ref": "./examples/AFDEndpoints_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDEndpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AFDEndpoints" + ], + "description": "Creates a new AzureFrontDoor endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "AFDEndpoints_Create", + "x-ms-examples": { + "AFDEndpoints_Create": { + "$ref": "./examples/AFDEndpoints_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "endpoint", + "in": "body", + "description": "Endpoint properties", + "required": true, + "schema": { + "$ref": "#/definitions/AFDEndpoint" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDEndpoint" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new endpoint has been created.", + "schema": { + "$ref": "#/definitions/AFDEndpoint" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AFDEndpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AFDEndpoints" + ], + "description": "Updates an existing AzureFrontDoor endpoint with the specified endpoint name under the specified subscription, resource group and profile. Only tags can be updated after creating an endpoint. To update origins, use the Update Origin operation. To update origin groups, use the Update Origin group operation. To update domains, use the Update Custom Domain operation.", + "operationId": "AFDEndpoints_Update", + "x-ms-examples": { + "AFDEndpoints_Update": { + "$ref": "./examples/AFDEndpoints_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "endpointUpdateProperties", + "in": "body", + "description": "Endpoint update properties", + "required": true, + "schema": { + "$ref": "#/definitions/AFDEndpointUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDEndpoint" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AFDEndpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "AFDEndpoints" + ], + "description": "Deletes an existing AzureFrontDoor endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "AFDEndpoints_Delete", + "x-ms-examples": { + "AFDEndpoints_Delete": { + "$ref": "./examples/AFDEndpoints_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/afdEndpoints/{endpointName}/purge": { + "post": { + "tags": [ + "AFDEndpoints" + ], + "description": "Removes a content from AzureFrontDoor.", + "operationId": "AFDEndpoints_PurgeContent", + "x-ms-examples": { + "AFDEndpoints_PurgeContent": { + "$ref": "./examples/AFDEndpoints_PurgeContent.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "contents", + "in": "body", + "description": "The list of paths to the content and the list of linked domains to be purged. Path can be a full URL, e.g. '/pictures/city.png' which removes a single file, or a directory with a wildcard, e.g. '/pictures/*' which removes all folders and files in the directory.", + "required": true, + "schema": { + "$ref": "#/definitions/AfdPurgeParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK" + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/afdEndpoints/{endpointName}/usages": { + "post": { + "tags": [ + "AFDEndpoints" + ], + "description": "Checks the quota and actual usage of endpoints under the given CDN profile.", + "operationId": "AFDEndpoints_ListResourceUsage", + "x-ms-examples": { + "AFDEndpoints_ListResourceUsage": { + "$ref": "./examples/AFDEndpoints_ListResourceUsage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/afdEndpoints/{endpointName}/validateCustomDomain": { + "post": { + "tags": [ + "AFDEndpoints" + ], + "description": "Validates the custom domain mapping to ensure it maps to the correct CDN endpoint in DNS.", + "operationId": "AFDEndpoints_ValidateCustomDomain", + "x-ms-examples": { + "Endpoints_ValidateCustomDomain": { + "$ref": "./examples/AFDEndpoints_ValidateCustomDomain.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainProperties", + "in": "body", + "description": "Custom domain to be validated.", + "required": true, + "schema": { + "$ref": "./cdn.json#/definitions/ValidateCustomDomainInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "./cdn.json#/definitions/ValidateCustomDomainOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups": { + "get": { + "tags": [ + "AFDOriginGroups" + ], + "description": "Lists all of the existing origin groups within a profile.", + "operationId": "AFDOriginGroups_ListByProfile", + "x-ms-examples": { + "AFDOriginGroups_ListByProfile": { + "$ref": "./examples/AFDOriginGroups_ListByProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDOriginGroupListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}": { + "get": { + "tags": [ + "AFDOriginGroups" + ], + "description": "Gets an existing origin group within a profile.", + "operationId": "AFDOriginGroups_Get", + "x-ms-examples": { + "AFDOriginGroups_Get": { + "$ref": "./examples/AFDOriginGroups_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDOriginGroup" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AFDOriginGroups" + ], + "description": "Creates a new origin group within the specified profile.", + "operationId": "AFDOriginGroups_Create", + "x-ms-examples": { + "AFDOriginGroups_Create": { + "$ref": "./examples/AFDOriginGroups_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "originGroup", + "in": "body", + "description": "Origin group properties", + "required": true, + "schema": { + "$ref": "#/definitions/AFDOriginGroup" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDOriginGroup" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new origin group has been created.", + "schema": { + "$ref": "#/definitions/AFDOriginGroup" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AFDOriginGroup" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AFDOriginGroups" + ], + "description": "Updates an existing origin group within a profile.", + "operationId": "AFDOriginGroups_Update", + "x-ms-examples": { + "AFDOriginGroups_Update": { + "$ref": "./examples/AFDOriginGroups_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the profile.", + "required": true, + "type": "string" + }, + { + "name": "originGroupUpdateProperties", + "in": "body", + "description": "Origin group properties", + "required": true, + "schema": { + "$ref": "#/definitions/AFDOriginGroupUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDOriginGroup" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AFDOriginGroup" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "AFDOriginGroups" + ], + "description": "Deletes an existing origin group within a profile.", + "operationId": "AFDOriginGroups_Delete", + "x-ms-examples": { + "AFDOriginGroups_Delete": { + "$ref": "./examples/AFDOriginGroups_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the profile.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content. The request has been accepted but the origin group was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}/usages": { + "post": { + "tags": [ + "AFDOriginGroups" + ], + "description": "Checks the quota and actual usage of endpoints under the given CDN profile.", + "operationId": "AFDOriginGroups_ListResourceUsage", + "x-ms-examples": { + "AFDOriginGroups_ListResourceUsage": { + "$ref": "./examples/AFDOriginGroups_ListResourceUsage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}/origins": { + "get": { + "tags": [ + "AFDOrigins" + ], + "description": "Lists all of the existing origins within an origin group.", + "operationId": "AFDOrigins_ListByOriginGroup", + "x-ms-examples": { + "AFDOrigins_ListByOriginGroup": { + "$ref": "./examples/AFDOrigins_ListByOriginGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the profile.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDOriginListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/originGroups/{originGroupName}/origins/{originName}": { + "get": { + "tags": [ + "AFDOrigins" + ], + "description": "Gets an existing origin within an origin group.", + "operationId": "AFDOrigins_Get", + "x-ms-examples": { + "AFDOrigins_Get": { + "$ref": "./examples/AFDOrigins_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the profile.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the profile.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDOrigin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "AFDOrigins" + ], + "description": "Creates a new origin within the specified origin group.", + "operationId": "AFDOrigins_Create", + "x-ms-examples": { + "AFDOrigins_Create": { + "$ref": "./examples/AFDOrigins_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the profile.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin that is unique within the profile.", + "required": true, + "type": "string" + }, + { + "name": "origin", + "in": "body", + "description": "Origin properties", + "required": true, + "schema": { + "$ref": "#/definitions/AFDOrigin" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDOrigin" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new origin has been created.", + "schema": { + "$ref": "#/definitions/AFDOrigin" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/AFDOrigin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "AFDOrigins" + ], + "description": "Updates an existing origin within an origin group.", + "operationId": "AFDOrigins_Update", + "x-ms-examples": { + "AFDOrigins_Update": { + "$ref": "./examples/AFDOrigins_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the profile.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the profile.", + "required": true, + "type": "string" + }, + { + "name": "originUpdateProperties", + "in": "body", + "description": "Origin properties", + "required": true, + "schema": { + "$ref": "#/definitions/AFDOriginUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AFDOrigin" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/AFDOrigin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "AFDOrigins" + ], + "description": "Deletes an existing origin within an origin group.", + "operationId": "AFDOrigins_Delete", + "x-ms-examples": { + "AFDOrigins_Delete": { + "$ref": "./examples/AFDOrigins_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the profile.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the profile.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content. The request has been accepted but the origin was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/afdEndpoints/{endpointName}/routes": { + "get": { + "tags": [ + "Routes" + ], + "description": "Lists all of the existing origins within a profile.", + "operationId": "Routes_ListByEndpoint", + "x-ms-examples": { + "Routes_ListByEndpoint": { + "$ref": "./examples/Routes_ListByEndpoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RouteListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/afdEndpoints/{endpointName}/routes/{routeName}": { + "get": { + "tags": [ + "Routes" + ], + "description": "Gets an existing route with the specified route name under the specified subscription, resource group, profile, and AzureFrontDoor endpoint.", + "operationId": "Routes_Get", + "x-ms-examples": { + "Routes_Get": { + "$ref": "./examples/Routes_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the routing rule.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Routes" + ], + "description": "Creates a new route with the specified route name under the specified subscription, resource group, profile, and AzureFrontDoor endpoint.", + "operationId": "Routes_Create", + "x-ms-examples": { + "Routes_Create": { + "$ref": "./examples/Routes_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the routing rule.", + "required": true, + "type": "string" + }, + { + "name": "route", + "in": "body", + "description": "Route properties", + "required": true, + "schema": { + "$ref": "#/definitions/Route" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new endpoint has been created.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "Routes" + ], + "description": "Updates an existing route with the specified route name under the specified subscription, resource group, profile, and AzureFrontDoor endpoint.", + "operationId": "Routes_Update", + "x-ms-examples": { + "Routes_Update": { + "$ref": "./examples/Routes_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the routing rule.", + "required": true, + "type": "string" + }, + { + "name": "routeUpdateProperties", + "in": "body", + "description": "Route update properties", + "required": true, + "schema": { + "$ref": "#/definitions/RouteUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Route" + } + }, + "default": { + "description": "CDN error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "Routes" + ], + "description": "Deletes an existing route with the specified route name under the specified subscription, resource group, profile, and AzureFrontDoor endpoint.", + "operationId": "Routes_Delete", + "x-ms-examples": { + "Routes_Delete": { + "$ref": "./examples/Routes_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "routeName", + "in": "path", + "description": "Name of the routing rule.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets": { + "get": { + "tags": [ + "RuleSets" + ], + "description": "Lists existing AzureFrontDoor rule sets within a profile.", + "operationId": "RuleSets_ListByProfile", + "x-ms-examples": { + "RuleSets_ListByProfile": { + "$ref": "./examples/RuleSets_ListByProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RuleSetListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets/{ruleSetName}": { + "get": { + "tags": [ + "RuleSets" + ], + "description": "Gets an existing AzureFrontDoor rule set with the specified rule set name under the specified subscription, resource group and profile.", + "operationId": "RuleSets_Get", + "x-ms-examples": { + "RuleSets_Get": { + "$ref": "./examples/RuleSets_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "ruleSetName", + "in": "path", + "description": "Name of the rule set under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RuleSet" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "RuleSets" + ], + "description": "Creates a new rule set within the specified profile.", + "operationId": "RuleSets_Create", + "x-ms-examples": { + "RuleSets_Create": { + "$ref": "./examples/RuleSets_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "ruleSetName", + "in": "path", + "description": "Name of the rule set under the profile which is unique globally", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RuleSet" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new rule set has been created.", + "schema": { + "$ref": "#/definitions/RuleSet" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + }, + "delete": { + "tags": [ + "RuleSets" + ], + "description": "Deletes an existing AzureFrontDoor rule set with the specified rule set name under the specified subscription, resource group and profile.", + "operationId": "RuleSets_Delete", + "x-ms-examples": { + "RuleSets_Delete": { + "$ref": "./examples/RuleSets_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "ruleSetName", + "in": "path", + "description": "Name of the rule set under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content. The request has been accepted but the rule set was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets/{ruleSetName}/usages": { + "post": { + "tags": [ + "RuleSets" + ], + "description": "Checks the quota and actual usage of endpoints under the given CDN profile.", + "operationId": "RuleSets_ListResourceUsage", + "x-ms-examples": { + "RuleSets_ListResourceUsage": { + "$ref": "./examples/RuleSets_ListResourceUsage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "ruleSetName", + "in": "path", + "description": "Name of the rule set under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/UsagesListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets/{ruleSetName}/rules": { + "get": { + "tags": [ + "Rules" + ], + "description": "Lists all of the existing delivery rules within a rule set.", + "operationId": "Rules_ListByRuleSet", + "x-ms-examples": { + "Rules_ListByRuleSet": { + "$ref": "./examples/Rules_ListByRuleSet.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "ruleSetName", + "in": "path", + "description": "Name of the rule set under the profile.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/RuleListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/ruleSets/{ruleSetName}/rules/{ruleName}": { + "get": { + "tags": [ + "Rules" + ], + "description": "Gets an existing delivery rule within a rule set.", + "operationId": "Rules_Get", + "x-ms-examples": { + "Rules_Get": { + "$ref": "./examples/Rules_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "ruleSetName", + "in": "path", + "description": "Name of the rule set under the profile.", + "required": true, + "type": "string" + }, + { + "name": "ruleName", + "in": "path", + "description": "Name of the delivery rule which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Rule" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Rules" + ], + "description": "Creates a new delivery rule within the specified rule set.", + "operationId": "Rules_Create", + "x-ms-examples": { + "Rules_Create": { + "$ref": "./examples/Rules_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "ruleSetName", + "in": "path", + "description": "Name of the rule set under the profile.", + "required": true, + "type": "string" + }, + { + "name": "ruleName", + "in": "path", + "description": "Name of the delivery rule which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "rule", + "in": "body", + "description": "The delivery rule properties.", + "required": true, + "schema": { + "$ref": "#/definitions/Rule" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Rule" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new delivery rule has been created.", + "schema": { + "$ref": "#/definitions/Rule" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Rule" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "Rules" + ], + "description": "Updates an existing delivery rule within a rule set.", + "operationId": "Rules_Update", + "x-ms-examples": { + "Rules_Update": { + "$ref": "./examples/Rules_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "ruleSetName", + "in": "path", + "description": "Name of the rule set under the profile.", + "required": true, + "type": "string" + }, + { + "name": "ruleName", + "in": "path", + "description": "Name of the delivery rule which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "ruleUpdateProperties", + "in": "body", + "description": "Delivery rule properties", + "required": true, + "schema": { + "$ref": "#/definitions/RuleUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Rule" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/Rule" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "Rules" + ], + "description": "Deletes an existing delivery rule within a rule set.", + "operationId": "Rules_Delete", + "x-ms-examples": { + "Rules_Delete": { + "$ref": "./examples/Rules_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "ruleSetName", + "in": "path", + "description": "Name of the rule set under the profile.", + "required": true, + "type": "string" + }, + { + "name": "ruleName", + "in": "path", + "description": "Name of the delivery rule which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content. The request has been accepted but the origin was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/securityPolicies": { + "get": { + "tags": [ + "SecurityPolicies" + ], + "description": "Lists security policies associated with the profile", + "operationId": "SecurityPolicies_ListByProfile", + "x-ms-examples": { + "SecurityPolicies_ListByProfile": { + "$ref": "./examples/SecurityPolicies_ListByProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityPolicyListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/securityPolicies/{securityPolicyName}": { + "get": { + "tags": [ + "SecurityPolicies" + ], + "description": "Gets an existing security policy within a profile.", + "operationId": "SecurityPolicies_Get", + "x-ms-examples": { + "SecurityPolicies_Get": { + "$ref": "./examples/SecurityPolicies_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "securityPolicyName", + "in": "path", + "description": "Name of the security policy under the profile.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityPolicy" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "SecurityPolicies" + ], + "description": "Creates a new security policy within the specified profile.", + "operationId": "SecurityPolicies_Create", + "x-ms-examples": { + "SecurityPolicies_Create": { + "$ref": "./examples/SecurityPolicies_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "securityPolicyName", + "in": "path", + "description": "Name of the security policy under the profile.", + "required": true, + "type": "string" + }, + { + "name": "securityPolicy", + "in": "body", + "description": "The security policy properties.", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityPolicy" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new delivery rule has been created.", + "schema": { + "$ref": "#/definitions/SecurityPolicy" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/SecurityPolicy" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "patch": { + "tags": [ + "SecurityPolicies" + ], + "description": "Updates an existing security policy within a profile.", + "operationId": "SecurityPolicies_Patch", + "x-ms-examples": { + "SecurityPolicies_Patch": { + "$ref": "./examples/SecurityPolicies_Patch.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "securityPolicyName", + "in": "path", + "description": "Name of the security policy under the profile.", + "required": true, + "type": "string" + }, + { + "name": "securityPolicyUpdateProperties", + "in": "body", + "description": "Security policy update properties", + "required": true, + "schema": { + "$ref": "#/definitions/SecurityPolicyUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecurityPolicy" + } + }, + "202": { + "description": "Accepted", + "schema": { + "$ref": "#/definitions/SecurityPolicy" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "SecurityPolicies" + ], + "description": "Deletes an existing security policy within profile.", + "operationId": "SecurityPolicies_Delete", + "x-ms-examples": { + "SecurityPolicies_Delete": { + "$ref": "./examples/SecurityPolicies_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "securityPolicyName", + "in": "path", + "description": "Name of the security policy under the profile.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content" + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/secrets": { + "get": { + "tags": [ + "Secrets" + ], + "description": "Lists existing AzureFrontDoor secrets.", + "operationId": "Secrets_ListByProfile", + "x-ms-examples": { + "Secrets_ListByProfile": { + "$ref": "./examples/Secrets_ListByProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/SecretListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/secrets/{secretName}": { + "get": { + "tags": [ + "Secrets" + ], + "description": "Gets an existing Secret within a profile.", + "operationId": "Secrets_Get", + "x-ms-examples": { + "Secrets_Get": { + "$ref": "./examples/Secrets_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "secretName", + "in": "path", + "description": "Name of the Secret under the profile.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Secret" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Secrets" + ], + "description": "Creates a new Secret within the specified profile.", + "operationId": "Secrets_Create", + "x-ms-examples": { + "Secrets_Create": { + "$ref": "./examples/Secrets_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "secretName", + "in": "path", + "description": "Name of the Secret under the profile.", + "required": true, + "type": "string" + }, + { + "name": "secret", + "in": "body", + "description": "The Secret properties.", + "required": true, + "schema": { + "$ref": "#/definitions/Secret" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/Secret" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new delivery rule has been created.", + "schema": { + "$ref": "#/definitions/Secret" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Secret" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + }, + "delete": { + "tags": [ + "Secrets" + ], + "description": "Deletes an existing Secret within profile.", + "operationId": "Secrets_Delete", + "x-ms-examples": { + "Secrets_Delete": { + "$ref": "./examples/Secrets_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "secretName", + "in": "path", + "description": "Name of the Secret under the profile.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted" + }, + "204": { + "description": "No Content. The request has been accepted but the origin was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/validateSecret": { + "post": { + "tags": [ + "Secrets" + ], + "description": "Validate a Secret in the profile.", + "operationId": "Validate_Secret", + "x-ms-examples": { + "Validate_Secret": { + "$ref": "./examples/Validate_Secret.json" + } + }, + "parameters": [ + { + "name": "validateSecretInput", + "in": "body", + "description": "The Secret source.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateSecretInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ValidateSecretOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/getLogAnalyticsMetrics": { + "get": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_GetLogAnalyticsMetrics", + "x-ms-examples": { + "LogAnalytics_GetLogAnalyticsMetrics": { + "$ref": "./examples/LogAnalytics_GetLogAnalyticsMetrics.json" + } + }, + "description": "Get log report for AFD profile", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group. which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "metrics", + "type": "array", + "required": true, + "collectionFormat": "multi", + "in": "query", + "items": { + "type": "string", + "enum": [ + "clientRequestCount", + "clientRequestTraffic", + "clientRequestBandwidth", + "originRequestTraffic", + "originRequestBandwidth", + "totalLatency" + ], + "x-ms-enum": { + "name": "LogMetric", + "modelAsString": true + } + } + }, + { + "name": "dateTimeBegin", + "type": "string", + "in": "query", + "required": true, + "format": "date-time" + }, + { + "name": "dateTimeEnd", + "type": "string", + "in": "query", + "required": true, + "format": "date-time" + }, + { + "name": "granularity", + "type": "string", + "in": "query", + "required": true, + "enum": [ + "PT5M", + "PT1H", + "P1D" + ], + "x-ms-enum": { + "name": "LogMetricsGranularity", + "modelAsString": true + } + }, + { + "name": "groupBy", + "in": "query", + "type": "array", + "required": false, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "httpStatusCode", + "protocol", + "cacheStatus", + "countryOrRegion", + "customDomain" + ], + "x-ms-enum": { + "name": "LogMetricsGroupBy", + "modelAsString": true + } + } + }, + { + "name": "continents", + "type": "array", + "in": "query", + "collectionFormat": "multi", + "required": false, + "items": { + "type": "string" + } + }, + { + "name": "countryOrRegions", + "type": "array", + "in": "query", + "collectionFormat": "multi", + "required": false, + "items": { + "type": "string" + } + }, + { + "name": "customDomains", + "type": "array", + "required": true, + "collectionFormat": "multi", + "in": "query", + "items": { + "type": "string" + } + }, + { + "name": "protocols", + "type": "array", + "required": true, + "collectionFormat": "multi", + "in": "query", + "items": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/MetricsResponse" + } + }, + "default": { + "description": "CDN Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/getLogAnalyticsRankings": { + "get": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_GetLogAnalyticsRankings", + "x-ms-examples": { + "LogAnalytics_GetLogAnalyticsRankings": { + "$ref": "./examples/LogAnalytics_GetLogAnalyticsRankings.json" + } + }, + "description": "Get log analytics ranking report for AFD profile", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group. which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "rankings", + "type": "array", + "in": "query", + "required": true, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "url", + "referrer", + "browser", + "userAgent", + "countryOrRegion" + ], + "x-ms-enum": { + "name": "LogRanking", + "modelAsString": true + } + } + }, + { + "name": "metrics", + "type": "array", + "in": "query", + "required": true, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "clientRequestCount", + "clientRequestTraffic", + "hitCount", + "missCount", + "userErrorCount", + "errorCount" + ], + "x-ms-enum": { + "name": "LogRankingMetric", + "modelAsString": true + } + } + }, + { + "name": "maxRanking", + "in": "query", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "name": "dateTimeBegin", + "type": "string", + "in": "query", + "required": true, + "format": "date-time" + }, + { + "name": "dateTimeEnd", + "type": "string", + "in": "query", + "required": true, + "format": "date-time" + }, + { + "name": "customDomains", + "type": "array", + "in": "query", + "required": false, + "collectionFormat": "multi", + "items": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/RankingsResponse" + } + }, + "default": { + "description": "CDN Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/getLogAnalyticsLocations": { + "get": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_GetLogAnalyticsLocations", + "x-ms-examples": { + "LogAnalytics_GetLogAnalyticsLocations": { + "$ref": "./examples/LogAnalytics_GetLogAnalyticsLocations.json" + } + }, + "description": "Get all available location names for AFD log analytics report.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group. which is unique within the resource group.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/ContinentsResponse" + } + }, + "default": { + "description": "CDN Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/getLogAnalyticsResources": { + "get": { + "tags": [ + "LogAnalytics" + ], + "operationId": "LogAnalytics_GetLogAnalyticsResources", + "x-ms-examples": { + "LogAnalytics_GetLogAnalyticsResources": { + "$ref": "./examples/LogAnalytics_GetLogAnalyticsResources.json" + } + }, + "description": "Get all endpoints and custom domains available for AFD log report", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group. which is unique within the resource group.", + "required": true, + "type": "string" + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/ResourcesResponse" + } + }, + "default": { + "description": "CDN Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/getWafLogAnalyticsMetrics": { + "get": { + "tags": [ + "WafLogAnalytics" + ], + "operationId": "LogAnalytics_GetWafLogAnalyticsMetrics", + "x-ms-examples": { + "LogAnalytics_GetWafLogAnalyticsMetrics": { + "$ref": "./examples/LogAnalytics_GetWafLogAnalyticsMetrics.json" + } + }, + "description": "Get Waf related log analytics report for AFD profile.", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group. which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "metrics", + "type": "array", + "in": "query", + "required": true, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "clientRequestCount" + ], + "x-ms-enum": { + "name": "WafMetric", + "modelAsString": true + } + } + }, + { + "name": "dateTimeBegin", + "type": "string", + "in": "query", + "required": true, + "format": "date-time" + }, + { + "name": "dateTimeEnd", + "type": "string", + "in": "query", + "required": true, + "format": "date-time" + }, + { + "name": "granularity", + "type": "string", + "in": "query", + "required": true, + "enum": [ + "PT5M", + "PT1H", + "P1D" + ], + "x-ms-enum": { + "name": "WafGranularity", + "modelAsString": true + } + }, + { + "name": "actions", + "type": "array", + "in": "query", + "required": false, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "allow", + "block", + "log", + "redirect" + ], + "x-ms-enum": { + "name": "WafAction", + "modelAsString": true + } + } + }, + { + "name": "groupBy", + "in": "query", + "type": "array", + "required": false, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "httpStatusCode", + "customDomain" + ], + "x-ms-enum": { + "name": "WafRankingGroupBy", + "modelAsString": true + } + } + }, + { + "name": "ruleTypes", + "type": "array", + "in": "query", + "required": false, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "managed", + "custom", + "bot" + ], + "x-ms-enum": { + "name": "WafRuleType", + "modelAsString": true + } + } + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/WafMetricsResponse" + } + }, + "default": { + "description": "CDN Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/getWafLogAnalyticsRankings": { + "get": { + "tags": [ + "WafLogAnalytics" + ], + "operationId": "LogAnalytics_GetWafLogAnalyticsRankings", + "x-ms-examples": { + "LogAnalytics_GetWafLogAnalyticsRankings": { + "$ref": "./examples/LogAnalytics_GetWafLogAnalyticsRankings.json" + } + }, + "description": "Get WAF log analytics charts for AFD profile", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group. which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "metrics", + "type": "array", + "in": "query", + "required": true, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "clientRequestCount" + ], + "x-ms-enum": { + "name": "WafMetric", + "modelAsString": true + } + } + }, + { + "name": "dateTimeBegin", + "type": "string", + "in": "query", + "required": true, + "format": "date-time" + }, + { + "name": "dateTimeEnd", + "type": "string", + "in": "query", + "required": true, + "format": "date-time" + }, + { + "name": "maxRanking", + "in": "query", + "required": true, + "type": "integer", + "format": "int32" + }, + { + "name": "rankings", + "type": "array", + "in": "query", + "required": true, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "action", + "ruleGroup", + "ruleId", + "userAgent", + "clientIp", + "url", + "countryOrRegion", + "ruleType" + ], + "x-ms-enum": { + "name": "WafRankingType", + "modelAsString": true + } + } + }, + { + "name": "actions", + "type": "array", + "in": "query", + "required": false, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "allow", + "block", + "log", + "redirect" + ], + "x-ms-enum": { + "name": "WafAction", + "modelAsString": true + } + } + }, + { + "name": "ruleTypes", + "type": "array", + "in": "query", + "required": false, + "collectionFormat": "multi", + "items": { + "type": "string", + "enum": [ + "managed", + "custom", + "bot" + ], + "x-ms-enum": { + "name": "WafRuleType", + "modelAsString": true + } + } + } + ], + "responses": { + "200": { + "description": "Describe the result of a successful operation.", + "schema": { + "$ref": "#/definitions/WafRankingsResponse" + } + }, + "default": { + "description": "CDN Error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + } + }, + "definitions": { + "AfdPurgeParameters": { + "type": "object", + "description": "Parameters required for content purge.", + "required": [ + "contentPaths" + ], + "properties": { + "contentPaths": { + "description": "The path to the content to be purged. Can describe a file path or a wild card directory.", + "type": "array", + "items": { + "type": "string" + } + }, + "domains": { + "description": "List of domains.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Certificate": { + "description": "Certificate used for https", + "properties": { + "type": { + "$ref": "#/definitions/SecretType" + }, + "subject": { + "description": "Subject name in the certificate.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "description": "Certificate expiration date.", + "type": "string", + "readOnly": true + } + } + }, + "ManagedCertificate": { + "description": "Managed Certificate used for https", + "allOf": [ + { + "$ref": "#/definitions/Certificate" + } + ] + }, + "CustomerCertificate": { + "description": "Customer Certificate used for https", + "allOf": [ + { + "$ref": "#/definitions/Certificate" + } + ], + "properties": { + "secretSource": { + "description": "Resource reference to the Azure Key Vault certificate. Expected to be in format of /subscriptions/{​​​​​​​​​subscriptionId}​​​​​​​​​/resourceGroups/{​​​​​​​​​resourceGroupName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​/providers/Microsoft.KeyVault/vaults/{vaultName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​/secrets/{certificateName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​", + "$ref": "./cdn.json#/definitions/ResourceReference" + }, + "secretVersion": { + "description": "Certificate version.", + "type": "string" + }, + "certificateAuthority": { + "description": "Certificate issuing authority.", + "type": "string", + "readOnly": true + }, + "useLatestVersion": { + "description": "Whether to use the latest version for the certificate", + "type": "boolean" + }, + "subjectAlternativeNames": { + "description": "The list of SANs.", + "type": "array", + "items": { + "type": "string", + "readOnly": true + } + }, + "thumbprint": { + "description": "Certificate thumbprint.", + "type": "string", + "readOnly": true + } + } + }, + "AzureFirstPartyManagedCertificate": { + "description": "Azure FirstParty Managed Certificate provided by other first party resource providers to enable HTTPS.", + "allOf": [ + { + "$ref": "#/definitions/Certificate" + } + ] + }, + "ValidateSecretInput": { + "description": "Input of the secret to be validated.", + "type": "object", + "required": [ + "secretSource", + "secretType" + ], + "properties": { + "secretType": { + "description": "The secret type.", + "$ref": "#/definitions/SecretType" + }, + "secretSource": { + "description": "Resource reference to the Azure Key Vault secret. Expected to be in format of /subscriptions/{​​​​​​​​​subscriptionId}​​​​​​​​​/resourceGroups/{​​​​​​​​​resourceGroupName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​/providers/Microsoft.KeyVault/vaults/{vaultName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​/secrets/{secretName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​", + "$ref": "./cdn.json#/definitions/ResourceReference" + }, + "secretVersion": { + "description": "Secret version, if customer is using a specific version.", + "type": "string" + } + } + }, + "ValidateSecretOutput": { + "description": "Output of the validated secret.", + "type": "object", + "properties": { + "status": { + "description": "The validation status.", + "enum": [ + "Valid", + "Invalid", + "AccessDenied", + "CertificateExpired" + ], + "type": "string", + "x-ms-enum": { + "name": "status", + "modelAsString": true + } + }, + "message": { + "description": "Detailed error message", + "type": "string" + } + } + }, + "AFDDomainListResult": { + "description": "Result of the request to list domains. It contains a list of domain objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AFDDomain" + }, + "description": "List of AzureFrontDoor domains within a profile." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of domain objects if there are any." + } + } + }, + "AFDDomain": { + "description": "Friendly domain name mapping to the endpoint hostname that the customer provides for branding purposes, e.g. www.contoso.com.", + "type": "object", + "allOf": [ + { + "$ref": "./cdn.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AFDDomainProperties" + } + } + }, + "AFDDomainProperties": { + "description": "The JSON object that contains the properties of the domain to create.", + "required": [ + "hostName" + ], + "allOf": [ + { + "$ref": "#/definitions/AFDDomainUpdatePropertiesParameters" + }, + { + "$ref": "#/definitions/AFDStateProperties" + } + ], + "properties": { + "domainValidationState": { + "description": "Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step. DCV stands for DomainControlValidation.", + "readOnly": true, + "enum": [ + "Unknown", + "Submitting", + "Pending", + "Rejected", + "TimedOut", + "PendingRevalidation", + "Approved", + "RefreshingValidationToken", + "InternalError" + ], + "type": "string", + "x-ms-enum": { + "name": "DomainValidationState", + "modelAsString": true + } + }, + "hostName": { + "description": "The host name of the domain. Must be a domain name.", + "type": "string" + }, + "extendedProperties": { + "description": "Key-Value pair representing migration properties for domains.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "validationProperties": { + "description": "Values the customer needs to validate domain ownership", + "readOnly": true, + "type": "object", + "$ref": "#/definitions/DomainValidationProperties" + } + } + }, + "AFDDomainUpdateParameters": { + "description": "The domain JSON object required for domain creation or update.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AFDDomainUpdatePropertiesParameters" + } + } + }, + "AFDDomainUpdatePropertiesParameters": { + "description": "The JSON object that contains the properties of the domain to create.", + "properties": { + "profileName": { + "description": "The name of the profile which holds the domain.", + "type": "string", + "readOnly": true + }, + "tlsSettings": { + "description": "The configuration specifying how to enable HTTPS for the domain - using AzureFrontDoor managed certificate or user's own certificate. If not specified, enabling ssl uses AzureFrontDoor managed certificate by default.", + "type": "object", + "$ref": "#/definitions/AFDDomainHttpsParameters" + }, + "azureDnsZone": { + "description": "Resource reference to the Azure DNS zone", + "type": "object", + "$ref": "./cdn.json#/definitions/ResourceReference" + }, + "preValidatedCustomDomainResourceId": { + "description": "Resource reference to the Azure resource where custom domain ownership was prevalidated", + "type": "object", + "$ref": "./cdn.json#/definitions/ResourceReference" + } + } + }, + "DomainValidationProperties": { + "description": "The JSON object that contains the properties to validate a domain.", + "properties": { + "validationToken": { + "description": "Challenge used for DNS TXT record or file based validation", + "readOnly": true, + "type": "string" + }, + "expirationDate": { + "description": "The date time that the token expires", + "readOnly": true, + "type": "string" + } + } + }, + "AFDDomainHttpsParameters": { + "description": "The JSON object that contains the properties to secure a domain.", + "required": [ + "certificateType" + ], + "properties": { + "certificateType": { + "description": "Defines the source of the SSL certificate.", + "enum": [ + "CustomerCertificate", + "ManagedCertificate", + "AzureFirstPartyManagedCertificate" + ], + "type": "string", + "x-ms-enum": { + "name": "AfdCertificateType", + "modelAsString": true + } + }, + "minimumTlsVersion": { + "description": "TLS protocol version that will be used for Https", + "enum": [ + "TLS10", + "TLS12" + ], + "type": "string", + "x-ms-enum": { + "name": "AfdMinimumTlsVersion", + "modelAsString": false + } + }, + "secret": { + "description": "Resource reference to the secret. ie. subs/rg/profile/secret", + "type": "object", + "$ref": "./cdn.json#/definitions/ResourceReference" + } + } + }, + "SecurityPolicy": { + "description": "SecurityPolicy association for AzureFrontDoor profile", + "type": "object", + "allOf": [ + { + "$ref": "./cdn.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityPolicyProperties" + } + } + }, + "SecurityPolicyProperties": { + "description": "The json object that contains properties required to create a security policy", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AFDStateProperties" + } + ], + "properties": { + "profileName": { + "description": "The name of the profile which holds the security policy.", + "type": "string", + "readOnly": true + }, + "parameters": { + "description": "object which contains security policy parameters", + "$ref": "#/definitions/SecurityPolicyPropertiesParameters" + } + } + }, + "SecurityPolicyUpdateParameters": { + "description": "The JSON object containing security policy update parameters.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecurityPolicyUpdateProperties" + } + } + }, + "SecurityPolicyUpdateProperties": { + "description": "The json object that contains properties required to update a security policy", + "type": "object", + "properties": { + "parameters": { + "description": "object which contains security policy parameters", + "$ref": "#/definitions/SecurityPolicyPropertiesParameters" + } + } + }, + "SecurityPolicyPropertiesParameters": { + "description": "The json object containing security policy parameters", + "discriminator": "type", + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "description": "The type of the Security policy to create.", + "enum": [ + "WebApplicationFirewall" + ], + "type": "string", + "x-ms-enum": { + "name": "SecurityPolicyType", + "modelAsString": true + } + } + } + }, + "SecurityPolicyWebApplicationFirewallParameters": { + "description": "The json object containing security policy waf parameters", + "x-ms-discriminator-value": "WebApplicationFirewall", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SecurityPolicyPropertiesParameters" + } + ], + "properties": { + "wafPolicy": { + "type": "object", + "description": "Resource ID.", + "$ref": "./cdn.json#/definitions/ResourceReference" + }, + "associations": { + "description": "Waf associations", + "type": "array", + "items": { + "$ref": "#/definitions/SecurityPolicyWebApplicationFirewallAssociation" + }, + "x-ms-identifiers": [] + } + } + }, + "SecurityPolicyWebApplicationFirewallAssociation": { + "description": "settings for security policy patterns to match", + "type": "object", + "properties": { + "domains": { + "description": "List of domains.", + "type": "array", + "items": { + "$ref": "#/definitions/ActivatedResourceReference" + } + }, + "patternsToMatch": { + "description": "List of paths", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "SecurityPolicyListResult": { + "description": "Result of the request to list security policies. It contains a list of security policy objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/SecurityPolicy" + }, + "description": "List of Security policies within a profile" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of security policy objects if there is any." + } + } + }, + "AutoGeneratedDomainNameLabelScope": { + "description": "Indicates the endpoint name reuse scope. The default value is TenantReuse.", + "enum": [ + "TenantReuse", + "SubscriptionReuse", + "ResourceGroupReuse", + "NoReuse" + ], + "type": "string", + "x-ms-enum": { + "name": "AutoGeneratedDomainNameLabelScope", + "modelAsString": true + } + }, + "AFDEndpoint": { + "description": "CDN endpoint is the entity within a CDN profile containing configuration information such as origin, protocol, content caching and delivery behavior. The AzureFrontDoor endpoint uses the URL format .azureedge.net.", + "type": "object", + "allOf": [ + { + "$ref": "./cdn.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AFDEndpointProperties" + } + } + }, + "AFDEndpointProperties": { + "description": "The JSON object that contains the properties required to create an endpoint.", + "allOf": [ + { + "$ref": "#/definitions/AFDEndpointPropertiesUpdateParameters" + }, + { + "$ref": "#/definitions/AFDStateProperties" + } + ], + "properties": { + "hostName": { + "description": "The host name of the endpoint structured as {endpointName}.{DNSZone}, e.g. contoso.azureedge.net", + "type": "string", + "readOnly": true + }, + "autoGeneratedDomainNameLabelScope": { + "description": "Indicates the endpoint name reuse scope. The default value is TenantReuse.", + "$ref": "#/definitions/AutoGeneratedDomainNameLabelScope" + } + } + }, + "AFDEndpointListResult": { + "description": "Result of the request to list endpoints. It contains a list of endpoint objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AFDEndpoint" + }, + "description": "List of AzureFrontDoor endpoints within a profile" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of endpoint objects if there is any." + } + } + }, + "AFDEndpointUpdateParameters": { + "type": "object", + "description": "Properties required to create or update an endpoint.", + "properties": { + "tags": { + "description": "Endpoint tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AFDEndpointPropertiesUpdateParameters" + } + }, + "x-ms-azure-resource": true + }, + "AFDEndpointPropertiesUpdateParameters": { + "description": "The JSON object containing endpoint update parameters.", + "properties": { + "profileName": { + "description": "The name of the profile which holds the endpoint.", + "type": "string", + "readOnly": true + }, + "enabledState": { + "description": "Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EnabledState", + "modelAsString": true + } + } + } + }, + "CompressionSettings": { + "description": "settings for compression.", + "type": "object", + "properties": { + "contentTypesToCompress": { + "description": "List of content types on which compression applies. The value should be a valid MIME type.", + "type": "array", + "items": { + "type": "string" + } + }, + "isCompressionEnabled": { + "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.", + "type": "boolean" + } + } + }, + "AFDEndpointProtocols": { + "description": "Supported protocols for the customer's endpoint.", + "enum": [ + "Http", + "Https" + ], + "type": "string", + "x-ms-enum": { + "name": "AFDEndpointProtocols", + "modelAsString": true + } + }, + "SecretListResult": { + "description": "Result of the request to list secrets. It contains a list of Secret objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Secret" + }, + "description": "List of AzureFrontDoor secrets within a profile." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of Secret objects if there are any." + } + } + }, + "Secret": { + "description": "Friendly Secret name mapping to the any Secret or secret related information.", + "type": "object", + "allOf": [ + { + "$ref": "./cdn.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/SecretProperties" + } + } + }, + "SecretProperties": { + "description": "The JSON object that contains the properties of the Secret to create.", + "allOf": [ + { + "$ref": "#/definitions/AFDStateProperties" + } + ], + "properties": { + "profileName": { + "description": "The name of the profile which holds the secret.", + "type": "string", + "readOnly": true + }, + "parameters": { + "description": "object which contains secret parameters", + "$ref": "#/definitions/SecretParameters" + } + } + }, + "SecretParameters": { + "description": "The json object containing secret parameters", + "discriminator": "type", + "required": [ + "type" + ], + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/SecretType" + } + } + }, + "SecretType": { + "description": "The type of the secret resource.", + "enum": [ + "UrlSigningKey", + "CustomerCertificate", + "ManagedCertificate", + "AzureFirstPartyManagedCertificate" + ], + "type": "string", + "x-ms-enum": { + "name": "SecretType", + "modelAsString": true + } + }, + "UrlSigningKeyParameters": { + "description": "Url signing key parameters", + "x-ms-discriminator-value": "UrlSigningKey", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SecretParameters" + } + ], + "required": [ + "keyId", + "secretSource" + ], + "properties": { + "keyId": { + "description": "Defines the customer defined key Id. This id will exist in the incoming request to indicate the key used to form the hash.", + "type": "string" + }, + "secretSource": { + "description": "Resource reference to the Azure Key Vault secret. Expected to be in format of /subscriptions/{​​​​​​​​​subscriptionId}​​​​​​​​​/resourceGroups/{​​​​​​​​​resourceGroupName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​/providers/Microsoft.KeyVault/vaults/{vaultName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​/secrets/{secretName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​", + "type": "object", + "$ref": "./cdn.json#/definitions/ResourceReference" + }, + "secretVersion": { + "description": "Version of the secret to be used", + "type": "string" + } + } + }, + "ManagedCertificateParameters": { + "description": "Managed Certificate used for https", + "x-ms-discriminator-value": "ManagedCertificate", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SecretParameters" + } + ], + "properties": { + "subject": { + "description": "Subject name in the certificate.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "description": "Certificate expiration date.", + "type": "string", + "readOnly": true + } + } + }, + "CustomerCertificateParameters": { + "description": "Customer Certificate used for https", + "x-ms-discriminator-value": "CustomerCertificate", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SecretParameters" + } + ], + "required": [ + "secretSource" + ], + "properties": { + "secretSource": { + "description": "Resource reference to the Azure Key Vault certificate. Expected to be in format of /subscriptions/{​​​​​​​​​subscriptionId}​​​​​​​​​/resourceGroups/{​​​​​​​​​resourceGroupName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​/providers/Microsoft.KeyVault/vaults/{vaultName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​/secrets/{certificateName}​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​", + "type": "object", + "$ref": "./cdn.json#/definitions/ResourceReference" + }, + "secretVersion": { + "description": "Version of the secret to be used", + "type": "string" + }, + "useLatestVersion": { + "description": "Whether to use the latest version for the certificate", + "type": "boolean" + }, + "subject": { + "description": "Subject name in the certificate.", + "type": "string", + "readOnly": true + }, + "expirationDate": { + "description": "Certificate expiration date.", + "type": "string", + "readOnly": true + }, + "certificateAuthority": { + "description": "Certificate issuing authority.", + "type": "string", + "readOnly": true + }, + "subjectAlternativeNames": { + "description": "The list of SANs.", + "type": "array", + "items": { + "type": "string", + "readOnly": true + } + }, + "thumbprint": { + "description": "Certificate thumbprint.", + "type": "string", + "readOnly": true + } + } + }, + "AzureFirstPartyManagedCertificateParameters": { + "description": "Azure FirstParty Managed Certificate provided by other first party resource providers to enable HTTPS.", + "x-ms-discriminator-value": "AzureFirstPartyManagedCertificate", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/SecretParameters" + } + ] + }, + "RuleSetListResult": { + "description": "Result of the request to list rule sets. It contains a list of rule set objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/RuleSet" + }, + "description": "List of AzureFrontDoor rule sets within a profile." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of rule set objects if there are any." + } + } + }, + "RuleSet": { + "description": "Friendly RuleSet name mapping to the any RuleSet or secret related information.", + "type": "object", + "allOf": [ + { + "$ref": "./cdn.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RuleSetProperties" + } + } + }, + "RuleSetProperties": { + "description": "The JSON object that contains the properties of the Rule Set to create.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AFDStateProperties" + } + ], + "properties": { + "profileName": { + "description": "The name of the profile which holds the rule set.", + "type": "string", + "readOnly": true + } + } + }, + "AFDOrigin": { + "description": "CDN origin is the source of the content being delivered via CDN. When the edge nodes represented by an endpoint do not have the requested content cached, they attempt to fetch it from one or more of the configured origins.", + "type": "object", + "allOf": [ + { + "$ref": "./cdn.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AFDOriginProperties" + } + } + }, + "AFDOriginProperties": { + "description": "The JSON object that contains the properties of the origin.", + "required": [ + "hostName" + ], + "allOf": [ + { + "$ref": "#/definitions/AFDOriginUpdatePropertiesParameters" + }, + { + "$ref": "#/definitions/AFDStateProperties" + } + ] + }, + "AFDOriginUpdateParameters": { + "type": "object", + "description": "AFDOrigin properties needed for origin update.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AFDOriginUpdatePropertiesParameters" + } + }, + "x-ms-azure-resource": true + }, + "AFDOriginUpdatePropertiesParameters": { + "description": "The JSON object that contains the properties of the origin.", + "properties": { + "originGroupName": { + "description": "The name of the origin group which contains this origin.", + "type": "string", + "readOnly": true + }, + "azureOrigin": { + "description": "Resource reference to the Azure origin resource.", + "type": "object", + "$ref": "./cdn.json#/definitions/ResourceReference" + }, + "hostName": { + "description": "The address of the origin. Domain names, IPv4 addresses, and IPv6 addresses are supported.This should be unique across all origins in an endpoint.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535.", + "type": "integer", + "format": "int32", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "httpsPort": { + "description": "The value of the HTTPS port. Must be between 1 and 65535.", + "type": "integer", + "maximum": 65535, + "format": "int32", + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "originHostHeader": { + "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. This overrides the host header defined at Endpoint", + "type": "string" + }, + "priority": { + "description": "Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy.Must be between 1 and 5", + "type": "integer", + "format": "int32", + "maximum": 5, + "minimum": 1 + }, + "weight": { + "description": "Weight of the origin in given origin group for load balancing. Must be between 1 and 1000", + "type": "integer", + "format": "int32", + "maximum": 1000, + "minimum": 1 + }, + "sharedPrivateLinkResource": { + "description": "The properties of the private link resource for private origin.", + "type": "object", + "$ref": "#/definitions/SharedPrivateLinkResourceProperties" + }, + "enabledState": { + "description": "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.", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "EnabledState", + "modelAsString": true + } + }, + "enforceCertificateNameCheck": { + "description": "Whether to enable certificate name check at origin level", + "type": "boolean", + "default": true + } + } + }, + "SharedPrivateLinkResourceProperties": { + "properties": { + "privateLink": { + "type": "object", + "$ref": "./cdn.json#/definitions/ResourceReference", + "description": "The resource id of the resource the shared private link resource is for." + }, + "privateLinkLocation": { + "type": "string", + "description": "The location of the shared private link resource" + }, + "groupId": { + "type": "string", + "description": "The group id from the provider of resource the shared private link resource is for." + }, + "requestMessage": { + "type": "string", + "description": "The request message for requesting approval of the shared private link resource." + }, + "status": { + "type": "string", + "description": "Status of the shared private link resource. Can be Pending, Approved, Rejected, Disconnected, or Timeout.", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "SharedPrivateLinkResourceStatus", + "modelAsString": false + } + } + }, + "description": "Describes the properties of an existing Shared Private Link Resource to use when connecting to a private origin." + }, + "AFDOriginListResult": { + "description": "Result of the request to list origins. It contains a list of origin objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AFDOrigin" + }, + "description": "List of CDN origins within an endpoint" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of origin objects if there are any." + } + } + }, + "AFDOriginGroup": { + "description": "AFDOrigin group comprising of origins is used for load balancing to origins when the content cannot be served from CDN.", + "type": "object", + "allOf": [ + { + "$ref": "./cdn.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AFDOriginGroupProperties" + } + } + }, + "AFDOriginGroupProperties": { + "description": "The JSON object that contains the properties of the origin group.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/AFDOriginGroupUpdatePropertiesParameters" + }, + { + "$ref": "#/definitions/AFDStateProperties" + } + ] + }, + "AFDOriginGroupUpdateParameters": { + "type": "object", + "description": "AFDOrigin group properties needed for origin group creation or update.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AFDOriginGroupUpdatePropertiesParameters" + } + }, + "x-ms-azure-resource": true + }, + "AFDOriginGroupUpdatePropertiesParameters": { + "description": "The JSON object that contains the properties of the origin group.", + "properties": { + "profileName": { + "description": "The name of the profile which holds the origin group.", + "type": "string", + "readOnly": true + }, + "loadBalancingSettings": { + "description": "Load balancing settings for a backend pool", + "$ref": "#/definitions/LoadBalancingSettingsParameters" + }, + "healthProbeSettings": { + "description": "Health probe settings to the origin that is used to determine the health of the origin.", + "type": "object", + "$ref": "./cdn.json#/definitions/HealthProbeParameters" + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": { + "description": "Time in minutes to shift the traffic to the endpoint gradually when an unhealthy endpoint comes healthy or a new endpoint is added. Default is 10 mins. This property is currently not supported.", + "type": "integer", + "format": "int32", + "maximum": 50, + "minimum": 0 + }, + "sessionAffinityState": { + "description": "Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EnabledState", + "modelAsString": true + } + } + } + }, + "LoadBalancingSettingsParameters": { + "description": "Round-Robin load balancing settings for a backend pool", + "type": "object", + "properties": { + "sampleSize": { + "description": "The number of samples to consider for load balancing decisions", + "type": "integer", + "format": "int32" + }, + "successfulSamplesRequired": { + "description": "The number of samples within the sample period that must succeed", + "type": "integer", + "format": "int32" + }, + "additionalLatencyInMilliseconds": { + "description": "The additional latency in milliseconds for probes to fall into the lowest latency bucket", + "type": "integer", + "format": "int32" + } + } + }, + "AFDOriginGroupListResult": { + "description": "Result of the request to list origin groups. It contains a list of origin groups objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AFDOriginGroup" + }, + "description": "List of CDN origin groups within an endpoint" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of origin objects if there are any." + } + } + }, + "RouteListResult": { + "description": "Result of the request to list routes. It contains a list of route objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Route" + }, + "description": "List of AzureFrontDoor routes within a profile." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of route objects if there are any." + } + } + }, + "Route": { + "description": "Friendly Routes name mapping to the any Routes or secret related information.", + "type": "object", + "allOf": [ + { + "$ref": "./cdn.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteProperties" + } + } + }, + "RouteProperties": { + "description": "The JSON object that contains the properties of the Routes to create.", + "allOf": [ + { + "$ref": "#/definitions/RouteUpdatePropertiesParameters" + }, + { + "$ref": "#/definitions/AFDStateProperties" + } + ], + "required": [ + "originGroup" + ] + }, + "RouteUpdateParameters": { + "description": "The domain JSON object required for domain creation or update.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RouteUpdatePropertiesParameters" + } + } + }, + "RouteUpdatePropertiesParameters": { + "description": "The JSON object that contains the properties of the domain to create.", + "properties": { + "endpointName": { + "description": "The name of the endpoint which holds the route.", + "type": "string", + "readOnly": true + }, + "customDomains": { + "description": "Domains referenced by this endpoint.", + "type": "array", + "items": { + "$ref": "#/definitions/ActivatedResourceReference" + } + }, + "originGroup": { + "description": "A reference to the origin group.", + "type": "object", + "$ref": "./cdn.json#/definitions/ResourceReference" + }, + "originPath": { + "description": "A directory path on the origin that AzureFrontDoor can use to retrieve content from, e.g. contoso.cloudapp.net/originpath.", + "type": "string" + }, + "ruleSets": { + "description": "rule sets referenced by this endpoint.", + "type": "array", + "items": { + "$ref": "./cdn.json#/definitions/ResourceReference" + } + }, + "supportedProtocols": { + "description": "List of supported protocols for this route.", + "type": "array", + "items": { + "$ref": "#/definitions/AFDEndpointProtocols" + } + }, + "patternsToMatch": { + "description": "The route patterns of the rule.", + "type": "array", + "items": { + "type": "string", + "description": "A route pattern of the rule. Must not have any * except possibly after the final / at the end of the path." + } + }, + "cacheConfiguration": { + "description": "The caching configuration for this route. To disable caching, do not provide a cacheConfiguration object.", + "type": "object", + "$ref": "#/definitions/AfdRouteCacheConfiguration" + }, + "forwardingProtocol": { + "description": "Protocol this rule will use when forwarding traffic to backends.", + "type": "string", + "enum": [ + "HttpOnly", + "HttpsOnly", + "MatchRequest" + ], + "x-ms-enum": { + "name": "ForwardingProtocol", + "modelAsString": true + } + }, + "linkToDefaultDomain": { + "description": "whether this route will be linked to the default endpoint domain.", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "LinkToDefaultDomain", + "modelAsString": true + } + }, + "httpsRedirect": { + "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.", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "httpsRedirect", + "modelAsString": true + } + }, + "enabledState": { + "description": "Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled'", + "enum": [ + "Enabled", + "Disabled" + ], + "type": "string", + "x-ms-enum": { + "name": "EnabledState", + "modelAsString": true + } + } + } + }, + "AfdRouteCacheConfiguration": { + "description": "Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object.", + "type": "object", + "properties": { + "queryStringCachingBehavior": { + "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" + ], + "type": "string", + "x-ms-enum": { + "name": "afdQueryStringCachingBehavior", + "modelAsString": true + } + }, + "queryParameters": { + "description": "query parameters to include or exclude (comma separated).", + "type": "string" + }, + "compressionSettings": { + "description": "compression settings.", + "type": "object", + "$ref": "#/definitions/CompressionSettings" + } + } + }, + "RuleListResult": { + "description": "Result of the request to list rules. It contains a list of rule objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Rule" + }, + "description": "List of AzureFrontDoor rules within a rule set." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of rule objects if there are any." + } + } + }, + "Rule": { + "description": "Friendly Rules name mapping to the any Rules or secret related information.", + "type": "object", + "allOf": [ + { + "$ref": "./cdn.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RuleProperties" + } + } + }, + "RuleProperties": { + "description": "The JSON object that contains the properties of the Rules to create.", + "type": "object", + "required": [ + "order", + "actions" + ], + "allOf": [ + { + "$ref": "#/definitions/RuleUpdatePropertiesParameters" + }, + { + "$ref": "#/definitions/AFDStateProperties" + } + ] + }, + "RuleUpdateParameters": { + "description": "The domain JSON object required for domain creation or update.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/RuleUpdatePropertiesParameters" + } + } + }, + "RuleUpdatePropertiesParameters": { + "description": "The JSON object that contains the properties of the rule to update.", + "properties": { + "ruleSetName": { + "description": "The name of the rule set containing the rule.", + "type": "string", + "readOnly": true + }, + "order": { + "description": "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.", + "type": "integer", + "format": "int32" + }, + "conditions": { + "description": "A list of conditions that must be matched for the actions to be executed", + "type": "array", + "items": { + "$ref": "./cdn.json#/definitions/DeliveryRuleCondition" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "actions": { + "description": "A list of actions that are executed when all the conditions of a rule are satisfied.", + "type": "array", + "items": { + "$ref": "./cdn.json#/definitions/DeliveryRuleAction" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "matchProcessingBehavior": { + "description": "If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue.", + "type": "string", + "enum": [ + "Continue", + "Stop" + ], + "x-ms-enum": { + "name": "MatchProcessingBehavior", + "modelAsString": true + } + } + } + }, + "CheckEndpointNameAvailabilityInput": { + "description": "Input of CheckNameAvailability API.", + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The resource name to validate.", + "type": "string" + }, + "type": { + "description": "The type of the resource whose name is to be validated.", + "$ref": "./cdn.json#/definitions/ResourceType" + }, + "autoGeneratedDomainNameLabelScope": { + "description": "Indicates the endpoint name reuse scope. The default value is TenantReuse.", + "$ref": "#/definitions/AutoGeneratedDomainNameLabelScope" + } + } + }, + "CheckEndpointNameAvailabilityOutput": { + "description": "Output of check name availability API.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "Indicates whether the name is available.", + "readOnly": true, + "type": "boolean" + }, + "availableHostname": { + "description": "Returns the available hostname generated based on the AutoGeneratedDomainNameLabelScope when the name is available, otherwise it returns empty string", + "readOnly": true, + "type": "string" + }, + "reason": { + "description": "The reason why the name is not available.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The detailed error message describing why the name is not available.", + "readOnly": true, + "type": "string" + } + } + }, + "CheckHostNameAvailabilityInput": { + "description": "Input of CheckHostNameAvailability API.", + "type": "object", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name to validate.", + "type": "string" + } + } + }, + "ValidationToken": { + "description": "The validation token.", + "type": "object", + "properties": { + "token": { + "readOnly": true, + "type": "string" + } + } + }, + "AFDStateProperties": { + "description": "The tracking states for afd resources.", + "type": "object", + "properties": { + "provisioningState": { + "readOnly": true, + "description": "Provisioning status", + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Updating", + "Deleting", + "Creating" + ], + "x-ms-enum": { + "name": "AfdProvisioningState", + "modelAsString": true + } + }, + "deploymentStatus": { + "enum": [ + "NotStarted", + "InProgress", + "Succeeded", + "Failed" + ], + "type": "string", + "readOnly": true, + "x-ms-enum": { + "name": "DeploymentStatus", + "modelAsString": true + } + } + } + }, + "AfdErrorResponse": { + "title": "Error response", + "description": "Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.).", + "properties": { + "error": { + "description": "The error object.", + "$ref": "./cdn.json#/definitions/ErrorDetail" + } + } + }, + "MetricsResponse": { + "description": "Metrics Response", + "properties": { + "dateTimeBegin": { + "type": "string", + "format": "date-time" + }, + "dateTimeEnd": { + "type": "string", + "format": "date-time" + }, + "granularity": { + "type": "string", + "enum": [ + "PT5M", + "PT1H", + "P1D" + ] + }, + "series": { + "type": "array", + "items": { + "type": "object", + "properties": { + "metric": { + "type": "string" + }, + "unit": { + "type": "string", + "enum": [ + "count", + "bytes", + "bitsPerSecond", + "milliSeconds" + ] + }, + "groups": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "x-ms-identifiers": [ + "name" + ] + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "dateTime": { + "type": "string", + "format": "date-time" + }, + "value": { + "type": "number" + } + } + }, + "x-ms-identifiers": [] + } + } + }, + "x-ms-identifiers": [] + } + } + }, + "RankingsResponse": { + "description": "Rankings Response", + "properties": { + "dateTimeBegin": { + "type": "string", + "format": "date-time" + }, + "dateTimeEnd": { + "type": "string", + "format": "date-time" + }, + "tables": { + "type": "array", + "items": { + "type": "object", + "properties": { + "ranking": { + "type": "string" + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "metrics": { + "type": "array", + "items": { + "type": "object", + "properties": { + "metric": { + "type": "string" + }, + "value": { + "type": "integer", + "format": "int64" + }, + "percentage": { + "type": "number" + } + } + }, + "x-ms-identifiers": [] + } + } + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "x-ms-identifiers": [] + } + } + }, + "ContinentsResponse": { + "description": "Continents Response", + "properties": { + "continents": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + } + } + } + }, + "countryOrRegions": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "continentId": { + "type": "string" + } + } + } + } + } + }, + "ResourcesResponse": { + "description": "Resources Response", + "properties": { + "endpoints": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "history": { + "type": "boolean" + }, + "customDomains": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "endpointId": { + "type": "string" + }, + "history": { + "type": "boolean" + } + } + } + } + } + } + }, + "customDomains": { + "type": "array", + "items": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "endpointId": { + "type": "string" + }, + "history": { + "type": "boolean" + } + } + } + } + } + }, + "WafMetricsResponse": { + "description": "Waf Metrics Response", + "properties": { + "dateTimeBegin": { + "type": "string", + "format": "date-time" + }, + "dateTimeEnd": { + "type": "string", + "format": "date-time" + }, + "granularity": { + "type": "string", + "enum": [ + "PT5M", + "PT1H", + "P1D" + ] + }, + "series": { + "type": "array", + "items": { + "type": "object", + "properties": { + "metric": { + "type": "string" + }, + "unit": { + "type": "string", + "enum": [ + "count" + ] + }, + "groups": { + "type": "array", + "items": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "x-ms-identifiers": [ + "name" + ] + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "dateTime": { + "type": "string", + "format": "date-time" + }, + "value": { + "type": "number" + } + } + }, + "x-ms-identifiers": [] + } + } + }, + "x-ms-identifiers": [] + } + } + }, + "WafRankingsResponse": { + "description": "Waf Rankings Response", + "properties": { + "dateTimeBegin": { + "type": "string", + "format": "date-time" + }, + "dateTimeEnd": { + "type": "string", + "format": "date-time" + }, + "groups": { + "type": "array", + "items": { + "type": "string" + } + }, + "data": { + "type": "array", + "items": { + "type": "object", + "properties": { + "groupValues": { + "type": "array", + "items": { + "type": "string" + } + }, + "metrics": { + "type": "array", + "items": { + "type": "object", + "properties": { + "metric": { + "type": "string" + }, + "value": { + "type": "integer", + "format": "int64" + }, + "percentage": { + "type": "number", + "format": "double" + } + } + }, + "x-ms-identifiers": [] + } + } + }, + "x-ms-identifiers": [] + } + } + }, + "UsageName": { + "properties": { + "value": { + "type": "string", + "description": "A string describing the resource name." + }, + "localizedValue": { + "type": "string", + "description": "A localized string describing the resource name." + } + }, + "description": "The usage names." + }, + "Usage": { + "properties": { + "id": { + "type": "string", + "readOnly": true, + "description": "Resource identifier." + }, + "unit": { + "type": "string", + "description": "An enum describing the unit of measurement.", + "enum": [ + "Count" + ], + "x-ms-enum": { + "name": "UsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "type": "integer", + "format": "int64", + "description": "The current value of the usage." + }, + "limit": { + "type": "integer", + "format": "int64", + "description": "The limit of usage." + }, + "name": { + "$ref": "#/definitions/UsageName", + "description": "The name of the type of usage." + } + }, + "required": [ + "unit", + "currentValue", + "limit", + "name" + ], + "description": "Describes resource usage." + }, + "UsagesListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Usage" + }, + "description": "The list of resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of results." + } + }, + "description": "The list usages operation response." + }, + "ActivatedResourceReference": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "isActive": { + "readOnly": true, + "type": "boolean", + "description": "Whether the resource is active or inactive" + } + }, + "description": "Reference to another resource along with its state.", + "type": "object", + "x-ms-azure-resource": true + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. Current version is 2022-11-01-preview." + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Resource group within the Azure subscription." + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json new file mode 100644 index 000000000000..4c1510e3743d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -0,0 +1,6922 @@ +{ + "swagger": "2.0", + "info": { + "version": "2022-11-01-preview", + "title": "CdnManagementClient", + "description": "Use these APIs to manage Azure CDN resources through the Azure Resource Manager. You must make sure that requests made to these resources are secure." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/profiles": { + "get": { + "tags": [ + "Profiles" + ], + "description": "Lists all of the Azure Front Door Standard, Azure Front Door Premium, and CDN profiles within an Azure subscription.", + "operationId": "Profiles_List", + "x-ms-examples": { + "Profiles_List": { + "$ref": "./examples/Profiles_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProfileListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles": { + "get": { + "tags": [ + "Profiles" + ], + "description": "Lists all of the Azure Front Door Standard, Azure Front Door Premium, and CDN profiles within a resource group.", + "operationId": "Profiles_ListByResourceGroup", + "x-ms-examples": { + "Profiles_ListByResourceGroup": { + "$ref": "./examples/Profiles_ListByResourceGroup.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ProfileListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}": { + "get": { + "tags": [ + "Profiles" + ], + "description": "Gets an Azure Front Door Standard or Azure Front Door Premium or CDN profile with the specified profile name under the specified subscription and resource group.", + "operationId": "Profiles_Get", + "x-ms-examples": { + "Profiles_Get": { + "$ref": "./examples/Profiles_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/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, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Profiles" + ], + "description": "Creates a new Azure Front Door Standard or Azure Front Door Premium or CDN profile with a profile name under the specified subscription and resource group.", + "operationId": "Profiles_Create", + "x-ms-examples": { + "Profiles_Create": { + "$ref": "./examples/Profiles_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/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, + "type": "string" + }, + { + "description": "Profile properties needed to create a new profile.", + "in": "body", + "name": "profile", + "required": true, + "schema": { + "$ref": "#/definitions/Profile" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new profile has been created.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Profiles" + ], + "description": "Updates an existing Azure Front Door Standard or Azure Front Door Premium or CDN profile with the specified profile name under the specified subscription and resource group.", + "operationId": "Profiles_Update", + "x-ms-examples": { + "Profiles_Update": { + "$ref": "./examples/Profiles_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/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, + "type": "string" + }, + { + "name": "profileUpdateParameters", + "in": "body", + "description": "Profile properties needed to update an existing profile.", + "required": true, + "schema": { + "$ref": "#/definitions/ProfileUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Profile" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Profiles" + ], + "description": "Deletes an existing Azure Front Door Standard or Azure Front Door Premium or CDN profile with the specified parameters. Deleting a profile will result in the deletion of all of the sub-resources including endpoints, origins and custom domains.", + "operationId": "Profiles_Delete", + "x-ms-examples": { + "Profiles_Delete": { + "$ref": "./examples/Profiles_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/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, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the profile was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/canMigrate": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Checks if CDN profile can be migrated to Azure Frontdoor(Standard/Premium) profile.", + "operationId": "Profiles_CanMigrate", + "x-ms-examples": { + "Profiles_CanMigrate": { + "$ref": "./examples/Profiles_CanMigrate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "description": "Properties needed to check if cdn profile or classic frontdoor can be migrated.", + "in": "body", + "name": "canMigrateParameters", + "required": true, + "schema": { + "$ref": "#/definitions/CanMigrateParameters" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CanMigrateResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/migrate": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Migrate the CDN profile to Azure Frontdoor(Standard/Premium) profile. The change need to be committed after this.", + "operationId": "Profiles_Migrate", + "x-ms-examples": { + "Profiles_Migrate": { + "$ref": "./examples/Profiles_Migrate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "description": "Properties needed to migrate the profile.", + "in": "body", + "name": "migrationParameters", + "required": true, + "schema": { + "$ref": "#/definitions/MigrationParameters" + } + } + ], + "responses": { + "200": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/MigrateResult" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/MigrateResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/migrationCommit": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Commit the migrated Azure Frontdoor(Standard/Premium) profile.", + "operationId": "Profiles_MigrationCommit", + "x-ms-examples": { + "Profiles_MigrationCommit": { + "$ref": "./examples/Profiles_MigrationCommit.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/generateSsoUri": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Generates a dynamic SSO URI used to sign in to the CDN supplemental portal. Supplemental portal is used to configure advanced feature capabilities that are not yet available in the Azure portal, such as core reports in a standard profile; rules engine, advanced HTTP reports, and real-time stats and alerts in a premium profile. The SSO URI changes approximately every 10 minutes.", + "operationId": "Profiles_GenerateSsoUri", + "x-ms-examples": { + "Profiles_GenerateSsoUri": { + "$ref": "./examples/Profiles_GenerateSsoUri.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/SsoUri" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/getSupportedOptimizationTypes": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Gets the supported optimization types for the current profile. A user can create an endpoint with an optimization type from the listed values.", + "operationId": "Profiles_ListSupportedOptimizationTypes", + "x-ms-examples": { + "Profiles_ListSupportedOptimizationTypes": { + "$ref": "./examples/Profiles_ListSupportedOptimizationTypes.json" + } + }, + "parameters": [ + { + "$ref": "#/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, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/SupportedOptimizationTypesListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/checkResourceUsage": { + "post": { + "tags": [ + "Profiles" + ], + "description": "Checks the quota and actual usage of endpoints under the given Azure Front Door Standard or Azure Front Door Premium or CDN profile.", + "operationId": "Profiles_ListResourceUsage", + "x-ms-examples": { + "Profiles_ListResourceUsage": { + "$ref": "./examples/Profiles_ListResourceUsage.json" + } + }, + "parameters": [ + { + "$ref": "#/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, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ResourceUsageListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints": { + "get": { + "tags": [ + "Endpoints" + ], + "description": "Lists existing CDN endpoints.", + "operationId": "Endpoints_ListByProfile", + "x-ms-examples": { + "Endpoints_ListByProfile": { + "$ref": "./examples/Endpoints_ListByProfile.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EndpointListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}": { + "get": { + "tags": [ + "Endpoints" + ], + "description": "Gets an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "Endpoints_Get", + "x-ms-examples": { + "Endpoints_Get": { + "$ref": "./examples/Endpoints_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Endpoints" + ], + "description": "Creates a new CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "Endpoints_Create", + "x-ms-examples": { + "Endpoints_Create": { + "$ref": "./examples/Endpoints_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "endpoint", + "in": "body", + "description": "Endpoint properties", + "required": true, + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new endpoint has been created.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Endpoints" + ], + "description": "Updates an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile. Only tags can be updated after creating an endpoint. To update origins, use the Update Origin operation. To update origin groups, use the Update Origin group operation. To update custom domains, use the Update Custom Domain operation.", + "operationId": "Endpoints_Update", + "x-ms-examples": { + "Endpoints_Update": { + "$ref": "./examples/Endpoints_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "endpointUpdateProperties", + "in": "body", + "description": "Endpoint update properties", + "required": true, + "schema": { + "$ref": "#/definitions/EndpointUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Endpoints" + ], + "description": "Deletes an existing CDN endpoint with the specified endpoint name under the specified subscription, resource group and profile.", + "operationId": "Endpoints_Delete", + "x-ms-examples": { + "Endpoints_Delete": { + "$ref": "./examples/Endpoints_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the endpoint was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/start": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Starts an existing CDN endpoint that is on a stopped state.", + "operationId": "Endpoints_Start", + "x-ms-examples": { + "Endpoints_Start": { + "$ref": "./examples/Endpoints_Start.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/stop": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Stops an existing running CDN endpoint.", + "operationId": "Endpoints_Stop", + "x-ms-examples": { + "Endpoints_Stop": { + "$ref": "./examples/Endpoints_Stop.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Endpoint" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/purge": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Removes a content from CDN.", + "operationId": "Endpoints_PurgeContent", + "x-ms-examples": { + "Endpoints_PurgeContent": { + "$ref": "./examples/Endpoints_PurgeContent.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "contentFilePaths", + "in": "body", + "description": "The path to the content to be purged. Path can be a full URL, e.g. '/pictures/city.png' which removes a single file, or a directory with a wildcard, e.g. '/pictures/*' which removes all folders and files in the directory.", + "required": true, + "schema": { + "$ref": "#/definitions/PurgeParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/load": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Pre-loads a content to CDN. Available for Verizon Profiles.", + "operationId": "Endpoints_LoadContent", + "x-ms-examples": { + "Endpoints_LoadContent": { + "$ref": "./examples/Endpoints_LoadContent.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "contentFilePaths", + "in": "body", + "description": "The path to the content to be loaded. Path should be a full URL, e.g. ‘/pictures/city.png' which loads a single file ", + "required": true, + "schema": { + "$ref": "#/definitions/LoadParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/validateCustomDomain": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Validates the custom domain mapping to ensure it maps to the correct CDN endpoint in DNS.", + "operationId": "Endpoints_ValidateCustomDomain", + "x-ms-examples": { + "Endpoints_ValidateCustomDomain": { + "$ref": "./examples/Endpoints_ValidateCustomDomain.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainProperties", + "in": "body", + "description": "Custom domain to be validated.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateCustomDomainInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ValidateCustomDomainOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/checkResourceUsage": { + "post": { + "tags": [ + "Endpoints" + ], + "description": "Checks the quota and usage of geo filters and custom domains under the given endpoint.", + "operationId": "Endpoints_ListResourceUsage", + "x-ms-examples": { + "Endpoints_ListResourceUsage": { + "$ref": "./examples/Endpoints_ListResourceUsage.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ResourceUsageListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/origins": { + "get": { + "tags": [ + "Origins" + ], + "description": "Lists all of the existing origins within an endpoint.", + "operationId": "Origins_ListByEndpoint", + "x-ms-examples": { + "Origins_ListByEndpoint": { + "$ref": "./examples/Origins_ListByEndpoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/origins/{originName}": { + "get": { + "tags": [ + "Origins" + ], + "description": "Gets an existing origin within an endpoint.", + "operationId": "Origins_Get", + "x-ms-examples": { + "Origins_Get": { + "$ref": "./examples/Origins_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "Origins" + ], + "description": "Creates a new origin within the specified endpoint.", + "operationId": "Origins_Create", + "x-ms-examples": { + "Origins_Create": { + "$ref": "./examples/Origins_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin that is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "origin", + "in": "body", + "description": "Origin properties", + "required": true, + "schema": { + "$ref": "#/definitions/Origin" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new origin has been created.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Origins" + ], + "description": "Updates an existing origin within an endpoint.", + "operationId": "Origins_Update", + "x-ms-examples": { + "Origins_Update": { + "$ref": "./examples/Origins_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "originUpdateProperties", + "in": "body", + "description": "Origin properties", + "required": true, + "schema": { + "$ref": "#/definitions/OriginUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/Origin" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Origins" + ], + "description": "Deletes an existing origin within an endpoint.", + "operationId": "Origins_Delete", + "x-ms-examples": { + "Origins_Delete": { + "$ref": "./examples/Origins_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originName", + "in": "path", + "description": "Name of the origin which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the origin was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/originGroups": { + "get": { + "tags": [ + "OriginGroups" + ], + "description": "Lists all of the existing origin groups within an endpoint.", + "operationId": "OriginGroups_ListByEndpoint", + "x-ms-examples": { + "OriginsGroups_ListByEndpoint": { + "$ref": "./examples/OriginGroups_ListByEndpoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginGroupListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/originGroups/{originGroupName}": { + "get": { + "tags": [ + "OriginGroups" + ], + "description": "Gets an existing origin group within an endpoint.", + "operationId": "OriginGroups_Get", + "x-ms-examples": { + "OriginGroups_Get": { + "$ref": "./examples/OriginGroups_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "OriginGroups" + ], + "description": "Creates a new origin group within the specified endpoint.", + "operationId": "OriginGroups_Create", + "x-ms-examples": { + "OriginGroups_Create": { + "$ref": "./examples/OriginGroups_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "originGroup", + "in": "body", + "description": "Origin group properties", + "required": true, + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new origin group has been created.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "OriginGroups" + ], + "description": "Updates an existing origin group within an endpoint.", + "operationId": "OriginGroups_Update", + "x-ms-examples": { + "OriginGroups_Update": { + "$ref": "./examples/OriginGroups_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "name": "originGroupUpdateProperties", + "in": "body", + "description": "Origin group properties", + "required": true, + "schema": { + "$ref": "#/definitions/OriginGroupUpdateParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/OriginGroup" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "OriginGroups" + ], + "description": "Deletes an existing origin group within an endpoint.", + "operationId": "OriginGroups_Delete", + "x-ms-examples": { + "OriginGroups_Delete": { + "$ref": "./examples/OriginGroups_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "originGroupName", + "in": "path", + "description": "Name of the origin group which is unique within the endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously." + }, + "204": { + "description": "No Content. The request has been accepted but the origin was not found." + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains": { + "get": { + "tags": [ + "CustomDomains" + ], + "description": "Lists all of the existing custom domains within an endpoint.", + "operationId": "CustomDomains_ListByEndpoint", + "x-ms-examples": { + "CustomDomains_ListByEndpoint": { + "$ref": "./examples/CustomDomains_ListByEndpoint.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomainListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}": { + "get": { + "tags": [ + "CustomDomains" + ], + "description": "Gets an existing custom domain within an endpoint.", + "operationId": "CustomDomains_Get", + "x-ms-examples": { + "CustomDomains_Get": { + "$ref": "./examples/CustomDomains_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + }, + "put": { + "tags": [ + "CustomDomains" + ], + "description": "Creates a new custom domain within an endpoint.", + "operationId": "CustomDomains_Create", + "x-ms-examples": { + "CustomDomains_Create": { + "$ref": "./examples/CustomDomains_Create.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "name": "customDomainProperties", + "in": "body", + "description": "Properties required to create a new custom domain.", + "required": true, + "schema": { + "$ref": "#/definitions/CustomDomainParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new custom domain has been created.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "CustomDomains" + ], + "description": "Deletes an existing custom domain within an endpoint.", + "operationId": "CustomDomains_Delete", + "x-ms-examples": { + "CustomDomains_Delete": { + "$ref": "./examples/CustomDomains_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded." + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "204": { + "description": "No Content. The request has been accepted but the custom domain was not found" + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/disableCustomHttps": { + "post": { + "tags": [ + "CustomDomains" + ], + "description": "Disable https delivery of the custom domain.", + "operationId": "CustomDomains_DisableCustomHttps", + "x-ms-examples": { + "CustomDomains_DisableCustomHttps": { + "$ref": "./examples/CustomDomains_DisableCustomHttps.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/endpoints/{endpointName}/customDomains/{customDomainName}/enableCustomHttps": { + "post": { + "tags": [ + "CustomDomains" + ], + "description": "Enable https delivery of the custom domain.", + "operationId": "CustomDomains_EnableCustomHttps", + "x-ms-examples": { + "CustomDomains_EnableCustomHttpsUsingYourOwnCertificate": { + "$ref": "./examples/CustomDomains_EnableCustomHttpsUsingBYOC.json" + }, + "CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate": { + "$ref": "./examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/resourceGroupNameParameter" + }, + { + "name": "profileName", + "in": "path", + "description": "Name of the CDN profile which is unique within the resource group.", + "required": true, + "type": "string" + }, + { + "name": "endpointName", + "in": "path", + "description": "Name of the endpoint under the profile which is unique globally.", + "required": true, + "type": "string" + }, + { + "name": "customDomainName", + "in": "path", + "description": "Name of the custom domain within an endpoint.", + "required": true, + "type": "string" + }, + { + "name": "customDomainHttpsParameters", + "in": "body", + "description": "The configuration specifying how to enable HTTPS for the custom domain - using CDN managed certificate or user's own certificate. If not specified, enabling ssl uses CDN managed certificate by default.", + "required": false, + "schema": { + "$ref": "#/definitions/CustomDomainHttpsParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "202": { + "description": "Accepted and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CustomDomain" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-long-running-operation": true + } + }, + "/providers/Microsoft.Cdn/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailability" + ], + "description": "Check the availability of a resource name. This is needed for resources where name is globally unique, such as a CDN endpoint.", + "operationId": "CheckNameAvailability", + "x-ms-examples": { + "CheckNameAvailability": { + "$ref": "./examples/CheckNameAvailability.json" + } + }, + "parameters": [ + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/checkNameAvailability": { + "post": { + "tags": [ + "CheckNameAvailabilityWithSubscription" + ], + "description": "Check the availability of a resource name. This is needed for resources where name is globally unique, such as a CDN endpoint.", + "operationId": "CheckNameAvailabilityWithSubscription", + "x-ms-examples": { + "CheckNameAvailabilityWithSubscription": { + "$ref": "./examples/CheckNameAvailabilityWithSubscription.json" + } + }, + "parameters": [ + { + "name": "checkNameAvailabilityInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CheckNameAvailabilityOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/validateProbe": { + "post": { + "tags": [ + "ValidateProbe" + ], + "description": "Check if the probe path is a valid path and the file can be accessed. Probe path is the path to a file hosted on the origin server to help accelerate the delivery of dynamic content via the CDN endpoint. This path is relative to the origin path specified in the endpoint configuration.", + "operationId": "ValidateProbe", + "x-ms-examples": { + "ValidateProbe": { + "$ref": "./examples/ValidateProbe.json" + } + }, + "parameters": [ + { + "name": "validateProbeInput", + "in": "body", + "description": "Input to check.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateProbeInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ValidateProbeOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/checkResourceUsage": { + "post": { + "tags": [ + "CheckResourceUsage" + ], + "description": "Check the quota and actual usage of the CDN profiles under the given subscription.", + "operationId": "ResourceUsage_List", + "x-ms-examples": { + "ResourceUsage_List": { + "$ref": "./examples/ResourceUsage_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/ResourceUsageListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Cdn/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available CDN REST API operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationsListResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/providers/Microsoft.Cdn/edgenodes": { + "get": { + "tags": [ + "Edgenodes" + ], + "description": "Edgenodes are the global Point of Presence (POP) locations used to deliver CDN content to end users.", + "operationId": "EdgeNodes_List", + "x-ms-examples": { + "EdgeNodes_List": { + "$ref": "./examples/EdgeNodes_List.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/EdgenodeResult" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "Profile": { + "description": "A profile is a logical grouping of endpoints that share the same settings.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "sku": { + "description": "The pricing tier (defines Azure Front Door Standard or Premium or a CDN provider, feature list and rate) of the profile.", + "$ref": "#/definitions/Sku" + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "Kind of the profile. Used by portal to differentiate traditional CDN profile and new AFD profile." + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProfileProperties" + } + }, + "required": [ + "sku" + ] + }, + "ProfileProperties": { + "description": "The JSON object that contains the properties required to create a profile.", + "properties": { + "resourceState": { + "description": "Resource status of the profile.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting", + "Disabled", + "Migrating", + "Migrated", + "PendingMigrationCommit", + "CommittingMigration", + "AbortingMigration" + ], + "type": "string", + "x-ms-enum": { + "name": "ProfileResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the profile.", + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Updating", + "Deleting", + "Creating" + ], + "x-ms-enum": { + "name": "ProfileProvisioningState", + "modelAsString": true + } + }, + "extendedProperties": { + "description": "Key-Value pair representing additional properties for profiles.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "frontDoorId": { + "readOnly": true, + "type": "string", + "description": "The Id of the frontdoor." + }, + "originResponseTimeoutSeconds": { + "description": "Send and receive timeout on forwarding request to the origin. When timeout is reached, the request fails and returns.", + "type": "integer", + "format": "int32", + "minimum": 16, + "exclusiveMinimum": false + } + } + }, + "ProfileListResult": { + "description": "Result of the request to list profiles. It contains a list of profile objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Profile" + }, + "description": "List of CDN profiles within a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of profile objects if there are any." + } + } + }, + "ProfileUpdateParameters": { + "type": "object", + "description": "Properties required to update a profile.", + "properties": { + "tags": { + "description": "Profile tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ProfilePropertiesUpdateParameters" + } + }, + "x-ms-azure-resource": true + }, + "ProfilePropertiesUpdateParameters": { + "type": "object", + "description": "The JSON object containing profile update parameters.", + "properties": { + "originResponseTimeoutSeconds": { + "description": "Send and receive timeout on forwarding request to the origin. When timeout is reached, the request fails and returns.", + "type": "integer", + "format": "int32", + "minimum": 16, + "exclusiveMinimum": false + } + } + }, + "CanMigrateResult": { + "type": "object", + "description": "Result for canMigrate operation.", + "properties": { + "canMigrate": { + "readOnly": true, + "description": "Flag that says if the profile can be migrated", + "type": "boolean" + }, + "defaultSku": { + "readOnly": true, + "description": "Recommended sku for the migration", + "type": "string", + "enum": [ + "Standard_AzureFrontDoor", + "Premium_AzureFrontDoor" + ], + "x-ms-enum": { + "name": "CanMigrateDefaultSku", + "modelAsString": true + } + }, + "errors": { + "items": { + "description": "List of migration errors", + "$ref": "#/definitions/MigrationErrorType" + }, + "type": "array", + "x-ms-identifiers": [] + } + }, + "x-ms-azure-resource": true + }, + "MigrationErrorType": { + "description": "Error response indicates CDN service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "code": { + "description": "Error code.", + "readOnly": true, + "type": "string" + }, + "resourceName": { + "description": "Resource which has the problem.", + "readOnly": true, + "type": "string" + }, + "errorMessage": { + "description": "Error message indicating why the operation failed.", + "readOnly": true, + "type": "string" + }, + "nextSteps": { + "description": "Describes what needs to be done to fix the problem", + "readOnly": true, + "type": "string" + } + } + }, + "CanMigrateParameters": { + "type": "object", + "description": "Request body for CanMigrate operation.", + "required": [ + "classicResourceReference" + ], + "properties": { + "classicResourceReference": { + "description": "Resource reference of the classic cdn profile or classic frontdoor that need to be migrated.", + "$ref": "#/definitions/ResourceReference" + } + }, + "x-ms-azure-resource": true + }, + "MigrationParameters": { + "type": "object", + "description": "Request body for Migrate operation.", + "required": [ + "classicResourceReference", + "sku", + "profileName" + ], + "properties": { + "sku": { + "description": "Sku for the migration", + "$ref": "#/definitions/Sku" + }, + "classicResourceReference": { + "description": "Resource reference of the classic cdn profile or classic frontdoor that need to be migrated.", + "$ref": "#/definitions/ResourceReference" + }, + "profileName": { + "description": "Name of the new profile that need to be created.", + "type": "string" + }, + "migrationWebApplicationFirewallMappings": { + "description": "Waf mapping for the migrated profile", + "type": "array", + "items": { + "description": "List of waf mappings", + "$ref": "#/definitions/MigrationWebApplicationFirewallMapping" + }, + "x-ms-identifiers": [] + } + }, + "x-ms-azure-resource": true + }, + "MigrationWebApplicationFirewallMapping": { + "description": "Web Application Firewall Mapping ", + "type": "object", + "properties": { + "migratedFrom": { + "description": "Migration From Waf policy", + "$ref": "#/definitions/ResourceReference" + }, + "migratedTo": { + "description": "Migration to Waf policy", + "$ref": "#/definitions/ResourceReference" + } + } + }, + "MigrateResult": { + "type": "object", + "description": "Result for migrate operation.", + "properties": { + "migratedProfileResourceId": { + "readOnly": true, + "description": "Arm resource id of the migrated profile", + "$ref": "#/definitions/ResourceReference" + }, + "errors": { + "items": { + "description": "List of migration errors", + "$ref": "#/definitions/MigrationErrorType" + }, + "type": "array", + "x-ms-identifiers": [] + } + }, + "x-ms-azure-resource": true + }, + "SsoUri": { + "description": "The URI required to login to the supplemental portal from the Azure portal.", + "type": "object", + "properties": { + "ssoUriValue": { + "description": "The URI used to login to the supplemental portal.", + "readOnly": true, + "type": "string" + } + } + }, + "SupportedOptimizationTypesListResult": { + "description": "The result of the GetSupportedOptimizationTypes API", + "type": "object", + "properties": { + "supportedOptimizationTypes": { + "description": "Supported optimization types for a profile.", + "readOnly": true, + "items": { + "$ref": "#/definitions/OptimizationType" + }, + "type": "array" + } + } + }, + "Endpoint": { + "description": "CDN endpoint is the entity within a CDN profile containing configuration information such as origin, protocol, content caching and delivery behavior. The CDN endpoint uses the URL format .azureedge.net.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EndpointProperties" + } + } + }, + "EndpointProperties": { + "description": "The JSON object that contains the properties required to create an endpoint.", + "required": [ + "origins" + ], + "allOf": [ + { + "$ref": "#/definitions/EndpointPropertiesUpdateParameters" + } + ], + "properties": { + "hostName": { + "description": "The host name of the endpoint structured as {endpointName}.{DNSZone}, e.g. contoso.azureedge.net", + "type": "string", + "readOnly": true + }, + "origins": { + "description": "The source of the content being delivered via CDN.", + "type": "array", + "items": { + "$ref": "#/definitions/DeepCreatedOrigin" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "originGroups": { + "description": "The origin groups comprising of origins that are used for load balancing the traffic based on availability.", + "type": "array", + "items": { + "$ref": "#/definitions/DeepCreatedOriginGroup" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "customDomains": { + "description": "The custom domains under the endpoint.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/DeepCreatedCustomDomain" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "resourceState": { + "description": "Resource status of the endpoint.", + "readOnly": true, + "enum": [ + "Creating", + "Deleting", + "Running", + "Starting", + "Stopped", + "Stopping" + ], + "type": "string", + "x-ms-enum": { + "name": "EndpointResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the endpoint.", + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Updating", + "Deleting", + "Creating" + ], + "x-ms-enum": { + "name": "EndpointProvisioningState", + "modelAsString": true + } + } + } + }, + "EndpointListResult": { + "description": "Result of the request to list endpoints. It contains a list of endpoint objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Endpoint" + }, + "description": "List of CDN endpoints within a profile" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of endpoint objects if there is any." + } + } + }, + "EndpointUpdateParameters": { + "type": "object", + "description": "Properties required to create or update an endpoint.", + "properties": { + "tags": { + "description": "Endpoint tags.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EndpointPropertiesUpdateParameters" + } + }, + "x-ms-azure-resource": true + }, + "EndpointPropertiesUpdateParameters": { + "description": "The JSON object containing endpoint update parameters.", + "properties": { + "originPath": { + "description": "A directory path on the origin that CDN can use to retrieve content from, e.g. contoso.cloudapp.net/originpath.", + "type": "string" + }, + "contentTypesToCompress": { + "description": "List of content types on which compression applies. The value should be a valid MIME type.", + "type": "array", + "items": { + "type": "string" + } + }, + "originHostHeader": { + "description": "The host header value sent to the origin with each request. This property at Endpoint is only allowed when endpoint uses single origin and can be overridden by the same property specified at origin.If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default.", + "type": "string" + }, + "isCompressionEnabled": { + "description": "Indicates whether content compression is enabled on CDN. 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 CDN when requested content is smaller than 1 byte or larger than 1 MB.", + "type": "boolean" + }, + "isHttpAllowed": { + "description": "Indicates whether HTTP traffic is allowed on the endpoint. Default value is true. At least one protocol (HTTP or HTTPS) must be allowed.", + "type": "boolean" + }, + "isHttpsAllowed": { + "description": "Indicates whether HTTPS traffic is allowed on the endpoint. Default value is true. At least one protocol (HTTP or HTTPS) must be allowed.", + "type": "boolean" + }, + "queryStringCachingBehavior": { + "description": "Defines how CDN caches requests that include query strings. You can ignore any query strings when caching, bypass caching to prevent requests that contain query strings from being cached, or cache every request with a unique URL.", + "$ref": "#/definitions/QueryStringCachingBehavior" + }, + "optimizationType": { + "description": "Specifies what scenario the customer wants this CDN endpoint to optimize for, e.g. Download, Media services. With this information, CDN can apply scenario driven optimization.", + "$ref": "#/definitions/OptimizationType" + }, + "probePath": { + "description": "Path to a file hosted on the origin which helps accelerate delivery of the dynamic content and calculate the most optimal routes for the CDN. This is relative to the origin path. This property is only relevant when using a single origin.", + "type": "string" + }, + "geoFilters": { + "description": "List of rules defining the user's geo access within a CDN endpoint. Each geo filter defines an access rule to a specified path or content, e.g. block APAC for path /pictures/", + "type": "array", + "items": { + "$ref": "#/definitions/GeoFilter" + }, + "x-ms-identifiers": [] + }, + "defaultOriginGroup": { + "description": "A reference to the origin group.", + "type": "object", + "$ref": "#/definitions/ResourceReference" + }, + "urlSigningKeys": { + "description": "List of keys used to validate the signed URL hashes.", + "type": "array", + "items": { + "$ref": "#/definitions/UrlSigningKey" + }, + "x-ms-identifiers": [ + "keyId" + ] + }, + "deliveryPolicy": { + "description": "A policy that specifies the delivery rules to be used for an endpoint.", + "type": "object", + "required": [ + "rules" + ], + "properties": { + "description": { + "description": "User-friendly description of the policy.", + "type": "string" + }, + "rules": { + "description": "A list of the delivery rules.", + "type": "array", + "items": { + "$ref": "#/definitions/DeliveryRule" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "webApplicationFirewallPolicyLink": { + "description": "Defines the Web Application Firewall policy for the endpoint (if applicable)", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + } + } + } + }, + "DeliveryRule": { + "description": "A rule that specifies a set of actions and conditions", + "type": "object", + "required": [ + "order", + "actions" + ], + "properties": { + "name": { + "description": "Name of the rule", + "type": "string" + }, + "order": { + "description": "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.", + "type": "integer", + "format": "int32" + }, + "conditions": { + "description": "A list of conditions that must be matched for the actions to be executed", + "type": "array", + "items": { + "$ref": "#/definitions/DeliveryRuleCondition" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "actions": { + "description": "A list of actions that are executed when all the conditions of a rule are satisfied.", + "type": "array", + "items": { + "$ref": "#/definitions/DeliveryRuleAction" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "DeliveryRuleCondition": { + "description": "A condition for the delivery rule.", + "discriminator": "name", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the condition for the delivery rule.", + "type": "string", + "enum": [ + "RemoteAddress", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeader", + "RequestBody", + "RequestScheme", + "UrlPath", + "UrlFileExtension", + "UrlFileName", + "HttpVersion", + "Cookies", + "IsDevice", + "SocketAddr", + "ClientPort", + "ServerPort", + "HostName", + "SslProtocol" + ], + "x-ms-enum": { + "name": "MatchVariable", + "modelAsString": true + } + } + } + }, + "DeliveryRuleRemoteAddressCondition": { + "description": "Defines the RemoteAddress condition for the delivery rule.", + "x-ms-discriminator-value": "RemoteAddress", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RemoteAddressMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestMethodCondition": { + "description": "Defines the RequestMethod condition for the delivery rule.", + "x-ms-discriminator-value": "RequestMethod", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestMethodMatchConditionParameters" + } + } + }, + "DeliveryRuleQueryStringCondition": { + "description": "Defines the QueryString condition for the delivery rule.", + "x-ms-discriminator-value": "QueryString", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/QueryStringMatchConditionParameters" + } + } + }, + "DeliveryRulePostArgsCondition": { + "description": "Defines the PostArgs condition for the delivery rule.", + "x-ms-discriminator-value": "PostArgs", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/PostArgsMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestUriCondition": { + "description": "Defines the RequestUri condition for the delivery rule.", + "x-ms-discriminator-value": "RequestUri", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestUriMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestHeaderCondition": { + "description": "Defines the RequestHeader condition for the delivery rule.", + "x-ms-discriminator-value": "RequestHeader", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestHeaderMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestBodyCondition": { + "description": "Defines the RequestBody condition for the delivery rule.", + "x-ms-discriminator-value": "RequestBody", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestBodyMatchConditionParameters" + } + } + }, + "DeliveryRuleRequestSchemeCondition": { + "description": "Defines the RequestScheme condition for the delivery rule.", + "x-ms-discriminator-value": "RequestScheme", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/RequestSchemeMatchConditionParameters" + } + } + }, + "DeliveryRuleUrlPathCondition": { + "description": "Defines the UrlPath condition for the delivery rule.", + "x-ms-discriminator-value": "UrlPath", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/UrlPathMatchConditionParameters" + } + } + }, + "DeliveryRuleUrlFileExtensionCondition": { + "description": "Defines the UrlFileExtension condition for the delivery rule.", + "x-ms-discriminator-value": "UrlFileExtension", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/UrlFileExtensionMatchConditionParameters" + } + } + }, + "DeliveryRuleUrlFileNameCondition": { + "description": "Defines the UrlFileName condition for the delivery rule.", + "x-ms-discriminator-value": "UrlFileName", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/UrlFileNameMatchConditionParameters" + } + } + }, + "DeliveryRuleHttpVersionCondition": { + "description": "Defines the HttpVersion condition for the delivery rule.", + "x-ms-discriminator-value": "HttpVersion", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/HttpVersionMatchConditionParameters" + } + } + }, + "DeliveryRuleCookiesCondition": { + "description": "Defines the Cookies condition for the delivery rule.", + "x-ms-discriminator-value": "Cookies", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/CookiesMatchConditionParameters" + } + } + }, + "DeliveryRuleIsDeviceCondition": { + "description": "Defines the IsDevice condition for the delivery rule.", + "x-ms-discriminator-value": "IsDevice", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/IsDeviceMatchConditionParameters" + } + } + }, + "DeliveryRuleSocketAddrCondition": { + "description": "Defines the SocketAddress condition for the delivery rule.", + "type": "object", + "x-ms-discriminator-value": "SocketAddr", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/SocketAddrMatchConditionParameters" + } + } + }, + "DeliveryRuleClientPortCondition": { + "description": "Defines the ClientPort condition for the delivery rule.", + "type": "object", + "x-ms-discriminator-value": "ClientPort", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/ClientPortMatchConditionParameters" + } + } + }, + "DeliveryRuleServerPortCondition": { + "description": "Defines the ServerPort condition for the delivery rule.", + "type": "object", + "x-ms-discriminator-value": "ServerPort", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/ServerPortMatchConditionParameters" + } + } + }, + "DeliveryRuleHostNameCondition": { + "description": "Defines the HostName condition for the delivery rule.", + "type": "object", + "x-ms-discriminator-value": "HostName", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/HostNameMatchConditionParameters" + } + } + }, + "DeliveryRuleSslProtocolCondition": { + "description": "Defines the SslProtocol condition for the delivery rule.", + "type": "object", + "x-ms-discriminator-value": "SslProtocol", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleCondition" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the condition.", + "$ref": "#/definitions/SslProtocolMatchConditionParameters" + } + } + }, + "RemoteAddressMatchConditionParameters": { + "description": "Defines the parameters for RemoteAddress match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleRemoteAddressConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "IPMatch", + "GeoMatch" + ], + "x-ms-enum": { + "name": "RemoteAddressOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "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.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestMethodMatchConditionParameters": { + "description": "Defines the parameters for RequestMethod match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleRequestMethodConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "RequestMethodOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "GET", + "HEAD", + "POST", + "PUT", + "DELETE", + "OPTIONS", + "TRACE" + ] + } + } + } + }, + "QueryStringMatchConditionParameters": { + "description": "Defines the parameters for QueryString match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleQueryStringConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "QueryStringOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "PostArgsMatchConditionParameters": { + "description": "Defines the parameters for PostArgs match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRulePostArgsConditionParameters" + ] + }, + "selector": { + "description": "Name of PostArg to be matched", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "PostArgsOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestUriMatchConditionParameters": { + "description": "Defines the parameters for RequestUri match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleRequestUriConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "RequestUriOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestHeaderMatchConditionParameters": { + "description": "Defines the parameters for RequestHeader match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleRequestHeaderConditionParameters" + ] + }, + "selector": { + "description": "Name of Header to be matched", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "RequestHeaderOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestBodyMatchConditionParameters": { + "description": "Defines the parameters for RequestBody match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleRequestBodyConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "RequestBodyOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "RequestSchemeMatchConditionParameters": { + "description": "Defines the parameters for RequestScheme match conditions ", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleRequestSchemeConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ] + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "HTTP", + "HTTPS" + ] + } + } + } + }, + "UrlPathMatchConditionParameters": { + "description": "Defines the parameters for UrlPath match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleUrlPathMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "Wildcard", + "RegEx" + ], + "x-ms-enum": { + "name": "UrlPathOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "UrlFileExtensionMatchConditionParameters": { + "description": "Defines the parameters for UrlFileExtension match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleUrlFileExtensionMatchConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "UrlFileExtensionOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "UrlFileNameMatchConditionParameters": { + "description": "Defines the parameters for UrlFilename match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleUrlFilenameConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "UrlFileNameOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "HttpVersionMatchConditionParameters": { + "description": "Defines the parameters for HttpVersion match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleHttpVersionConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "HttpVersionOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "CookiesMatchConditionParameters": { + "description": "Defines the parameters for Cookies match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleCookiesConditionParameters" + ] + }, + "selector": { + "description": "Name of Cookies to be matched", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "CookiesOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "IsDeviceMatchConditionParameters": { + "description": "Defines the parameters for IsDevice match conditions", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleIsDeviceConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "IsDeviceOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string", + "enum": [ + "Mobile", + "Desktop" + ] + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "SocketAddrMatchConditionParameters": { + "description": "Defines the parameters for SocketAddress match conditions", + "type": "object", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleSocketAddrConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "IPMatch" + ], + "x-ms-enum": { + "name": "SocketAddrOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "ClientPortMatchConditionParameters": { + "description": "Defines the parameters for ClientPort match conditions", + "type": "object", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleClientPortConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "ClientPortOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "ServerPortMatchConditionParameters": { + "description": "Defines the parameters for ServerPort match conditions", + "type": "object", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleServerPortConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "ServerPortOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "HostNameMatchConditionParameters": { + "description": "Defines the parameters for HostName match conditions", + "type": "object", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleHostNameConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "Equal", + "Contains", + "BeginsWith", + "EndsWith", + "LessThan", + "LessThanOrEqual", + "GreaterThan", + "GreaterThanOrEqual", + "RegEx" + ], + "x-ms-enum": { + "name": "HostNameOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "SslProtocolMatchConditionParameters": { + "description": "Defines the parameters for SslProtocol match conditions", + "type": "object", + "required": [ + "operator", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleSslProtocolConditionParameters" + ] + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Equal" + ], + "x-ms-enum": { + "name": "SslProtocolOperator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if this is negate condition or not", + "type": "boolean" + }, + "matchValues": { + "description": "The match value for the condition of the delivery rule", + "type": "array", + "items": { + "$ref": "#/definitions/SslProtocol" + } + }, + "transforms": { + "description": "List of transforms", + "type": "array", + "items": { + "$ref": "#/definitions/transform" + } + } + } + }, + "DeliveryRuleAction": { + "description": "An action for the delivery rule.", + "discriminator": "name", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "The name of the action for the delivery rule.", + "type": "string", + "enum": [ + "CacheExpiration", + "CacheKeyQueryString", + "ModifyRequestHeader", + "ModifyResponseHeader", + "UrlRedirect", + "UrlRewrite", + "UrlSigning", + "OriginGroupOverride", + "RouteConfigurationOverride" + ], + "x-ms-enum": { + "name": "DeliveryRuleAction", + "modelAsString": true + } + } + } + }, + "UrlRedirectAction": { + "description": "Defines the url redirect action for the delivery rule.", + "x-ms-discriminator-value": "UrlRedirect", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/UrlRedirectActionParameters" + } + } + }, + "UrlRedirectActionParameters": { + "description": "Defines the parameters for the url redirect action.", + "required": [ + "redirectType", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleUrlRedirectActionParameters" + ] + }, + "redirectType": { + "description": "The redirect type the rule will use when redirecting traffic.", + "type": "string", + "enum": [ + "Moved", + "Found", + "TemporaryRedirect", + "PermanentRedirect" + ], + "x-ms-enum": { + "name": "RedirectType", + "modelAsString": true + } + }, + "destinationProtocol": { + "description": "Protocol to use for the redirect. The default value is MatchRequest", + "type": "string", + "enum": [ + "MatchRequest", + "Http", + "Https" + ], + "x-ms-enum": { + "name": "DestinationProtocol", + "modelAsString": true + } + }, + "customPath": { + "description": "The full path to redirect. Path cannot be empty and must start with /. Leave empty to use the incoming path as destination path.", + "type": "string" + }, + "customHostname": { + "description": "Host to redirect. Leave empty to use the incoming host as the destination host.", + "type": "string" + }, + "customQueryString": { + "description": "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.", + "type": "string" + }, + "customFragment": { + "type": "string", + "description": "Fragment to add to the redirect URL. Fragment is the part of the URL that comes after #. Do not include the #." + } + } + }, + "UrlSigningAction": { + "description": "Defines the url signing action for the delivery rule.", + "x-ms-discriminator-value": "UrlSigning", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/UrlSigningActionParameters" + } + } + }, + "UrlSigningActionParameters": { + "description": "Defines the parameters for the Url Signing action.", + "required": [ + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleUrlSigningActionParameters" + ] + }, + "algorithm": { + "description": "Algorithm to use for URL signing", + "type": "string", + "enum": [ + "SHA256" + ], + "x-ms-enum": { + "name": "algorithm", + "modelAsString": true + } + }, + "parameterNameOverride": { + "description": "Defines which query string parameters in the url to be considered for expires, key id etc. ", + "type": "array", + "items": { + "$ref": "#/definitions/UrlSigningParamIdentifier" + }, + "x-ms-identifiers": [ + "paramName" + ] + } + } + }, + "UrlSigningParamIdentifier": { + "description": "Defines how to identify a parameter for a specific purpose e.g. expires", + "required": [ + "paramIndicator", + "paramName" + ], + "properties": { + "paramIndicator": { + "description": "Indicates the purpose of the parameter", + "type": "string", + "enum": [ + "Expires", + "KeyId", + "Signature" + ], + "x-ms-enum": { + "name": "paramIndicator", + "modelAsString": true + } + }, + "paramName": { + "description": "Parameter name", + "type": "string" + } + } + }, + "OriginGroupOverrideAction": { + "description": "Defines the origin group override action for the delivery rule.", + "x-ms-discriminator-value": "OriginGroupOverride", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/OriginGroupOverrideActionParameters" + } + } + }, + "OriginGroupOverrideActionParameters": { + "description": "Defines the parameters for the origin group override action.", + "required": [ + "originGroup", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleOriginGroupOverrideActionParameters" + ] + }, + "originGroup": { + "description": "defines the OriginGroup that would override the DefaultOriginGroup.", + "type": "object", + "$ref": "#/definitions/ResourceReference" + } + } + }, + "UrlRewriteAction": { + "description": "Defines the url rewrite action for the delivery rule.", + "x-ms-discriminator-value": "UrlRewrite", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/UrlRewriteActionParameters" + } + } + }, + "UrlRewriteActionParameters": { + "description": "Defines the parameters for the url rewrite action.", + "required": [ + "sourcePattern", + "destination", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleUrlRewriteActionParameters" + ] + }, + "sourcePattern": { + "description": "define a request URI pattern that identifies the type of requests that may be rewritten. If value is blank, all strings are matched.", + "type": "string" + }, + "destination": { + "description": "Define the relative URL to which the above requests will be rewritten by.", + "type": "string" + }, + "preserveUnmatchedPath": { + "description": "Whether to preserve unmatched path. Default value is true.", + "type": "boolean" + } + } + }, + "DeliveryRuleRequestHeaderAction": { + "description": "Defines the request header action for the delivery rule.", + "x-ms-discriminator-value": "ModifyRequestHeader", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/HeaderActionParameters" + } + } + }, + "DeliveryRuleResponseHeaderAction": { + "description": "Defines the response header action for the delivery rule.", + "x-ms-discriminator-value": "ModifyResponseHeader", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/HeaderActionParameters" + } + } + }, + "HeaderActionParameters": { + "description": "Defines the parameters for the request header action.", + "required": [ + "headerAction", + "headerName", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleHeaderActionParameters" + ] + }, + "headerAction": { + "description": "Action to perform", + "type": "string", + "enum": [ + "Append", + "Overwrite", + "Delete" + ], + "x-ms-enum": { + "name": "HeaderAction", + "modelAsString": true + } + }, + "headerName": { + "description": "Name of the header to modify", + "type": "string" + }, + "value": { + "description": "Value for the specified action", + "type": "string" + } + } + }, + "DeliveryRuleCacheExpirationAction": { + "description": "Defines the cache expiration action for the delivery rule.", + "x-ms-discriminator-value": "CacheExpiration", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/CacheExpirationActionParameters" + } + } + }, + "CacheExpirationActionParameters": { + "description": "Defines the parameters for the cache expiration action.", + "required": [ + "cacheBehavior", + "cacheType", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleCacheExpirationActionParameters" + ] + }, + "cacheBehavior": { + "description": "Caching behavior for the requests", + "type": "string", + "enum": [ + "BypassCache", + "Override", + "SetIfMissing" + ], + "x-ms-enum": { + "name": "cacheBehavior", + "modelAsString": true + } + }, + "cacheType": { + "description": "The level at which the content needs to be cached.", + "type": "string", + "enum": [ + "All" + ], + "x-ms-enum": { + "name": "CacheType", + "modelAsString": true + } + }, + "cacheDuration": { + "description": "The duration for which the content needs to be cached. Allowed format is [d.]hh:mm:ss", + "type": "string", + "x-nullable": true + } + } + }, + "DeliveryRuleCacheKeyQueryStringAction": { + "description": "Defines the cache-key query string action for the delivery rule.", + "x-ms-discriminator-value": "CacheKeyQueryString", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/CacheKeyQueryStringActionParameters" + } + } + }, + "CacheKeyQueryStringActionParameters": { + "description": "Defines the parameters for the cache-key query string action.", + "required": [ + "queryStringBehavior", + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleCacheKeyQueryStringBehaviorActionParameters" + ] + }, + "queryStringBehavior": { + "description": "Caching behavior for the requests", + "type": "string", + "enum": [ + "Include", + "IncludeAll", + "Exclude", + "ExcludeAll" + ], + "x-ms-enum": { + "name": "queryStringBehavior", + "modelAsString": true + } + }, + "queryParameters": { + "description": "query parameters to include or exclude (comma separated).", + "type": "string", + "x-nullable": true + } + } + }, + "DeliveryRuleRouteConfigurationOverrideAction": { + "description": "Defines the route configuration override action for the delivery rule. Only applicable to Frontdoor Standard/Premium Profiles.", + "type": "object", + "x-ms-discriminator-value": "RouteConfigurationOverride", + "allOf": [ + { + "$ref": "#/definitions/DeliveryRuleAction" + } + ], + "required": [ + "parameters" + ], + "properties": { + "parameters": { + "description": "Defines the parameters for the action.", + "$ref": "#/definitions/RouteConfigurationOverrideActionParameters" + } + } + }, + "RouteConfigurationOverrideActionParameters": { + "description": "Defines the parameters for the route configuration override action.", + "type": "object", + "required": [ + "typeName" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "DeliveryRuleRouteConfigurationOverrideActionParameters" + ] + }, + "originGroupOverride": { + "description": "A reference to the origin group override configuration. Leave empty to use the default origin group on route.", + "type": "object", + "$ref": "#/definitions/OriginGroupOverride" + }, + "cacheConfiguration": { + "description": "The caching configuration associated with this rule. To disable caching, do not provide a cacheConfiguration object.", + "type": "object", + "$ref": "#/definitions/CacheConfiguration" + } + } + }, + "OriginGroupOverride": { + "description": "Defines the parameters for the origin group override configuration.", + "type": "object", + "properties": { + "originGroup": { + "description": "defines the OriginGroup that would override the DefaultOriginGroup on route.", + "type": "object", + "$ref": "#/definitions/ResourceReference" + }, + "forwardingProtocol": { + "description": "Protocol this rule will use when forwarding traffic to backends.", + "type": "string", + "enum": [ + "HttpOnly", + "HttpsOnly", + "MatchRequest" + ], + "x-ms-enum": { + "name": "ForwardingProtocol", + "modelAsString": true + } + } + } + }, + "CacheConfiguration": { + "description": "Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object.", + "type": "object", + "properties": { + "queryStringCachingBehavior": { + "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" + ], + "type": "string", + "x-ms-enum": { + "name": "ruleQueryStringCachingBehavior", + "modelAsString": true + } + }, + "queryParameters": { + "description": "query parameters to include or exclude (comma separated).", + "type": "string" + }, + "isCompressionEnabled": { + "description": "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.", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ruleIsCompressionEnabled", + "modelAsString": true + } + }, + "cacheBehavior": { + "description": "Caching behavior for the requests", + "type": "string", + "enum": [ + "HonorOrigin", + "OverrideAlways", + "OverrideIfOriginMissing" + ], + "x-ms-enum": { + "name": "ruleCacheBehavior", + "modelAsString": true + } + }, + "cacheDuration": { + "description": "The duration for which the content needs to be cached. Allowed format is [d.]hh:mm:ss", + "type": "string" + } + } + }, + "transform": { + "description": "Describes what transforms are applied before matching", + "type": "string", + "enum": [ + "Lowercase", + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" + ], + "x-ms-enum": { + "name": "transform", + "modelAsString": true + } + }, + "SslProtocol": { + "description": "The protocol of an established TLS connection.", + "type": "string", + "enum": [ + "TLSv1", + "TLSv1.1", + "TLSv1.2" + ], + "x-ms-enum": { + "name": "SslProtocol", + "modelAsString": true + } + }, + "DeepCreatedOrigin": { + "description": "The main origin of CDN content which is added when creating a CDN endpoint.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "Origin name which must be unique within the endpoint. ", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeepCreatedOriginProperties" + } + }, + "x-ms-azure-resource": true + }, + "DeepCreatedOriginProperties": { + "description": "Properties of the origin created on the CDN endpoint.", + "type": "object", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The address of the origin. It can be a domain name, IPv4 address, or IPv6 address. This should be unique across all origins in an endpoint.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535.", + "type": "integer", + "format": "int32", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "httpsPort": { + "description": "The value of the HTTPS port. Must be between 1 and 65535.", + "type": "integer", + "format": "int32", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "originHostHeader": { + "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default.", + "type": "string" + }, + "priority": { + "description": "Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy.Must be between 1 and 5.", + "type": "integer", + "format": "int32", + "maximum": 5, + "minimum": 1 + }, + "weight": { + "description": "Weight of the origin in given origin group for load balancing. Must be between 1 and 1000", + "type": "integer", + "format": "int32", + "maximum": 1000, + "minimum": 1 + }, + "enabled": { + "description": "Origin is enabled for load balancing or not. By default, origin is always enabled.", + "type": "boolean" + }, + "privateLinkAlias": { + "description": "The Alias of the Private Link resource. Populating this optional field indicates that this origin is 'Private'", + "type": "string" + }, + "privateLinkResourceId": { + "description": "The Resource Id of the Private Link resource. Populating this optional field indicates that this backend is 'Private'", + "type": "string" + }, + "privateLinkLocation": { + "description": "The location of the Private Link resource. Required only if 'privateLinkResourceId' is populated", + "type": "string" + }, + "privateLinkApprovalMessage": { + "description": "A custom message to be included in the approval request to connect to the Private Link.", + "type": "string" + }, + "privateEndpointStatus": { + "description": "The approval status for the connection to the Private Link", + "$ref": "#/definitions/PrivateEndpointStatus", + "type": "string", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "DeepCreatedOriginGroup": { + "description": "The origin group for CDN content which is added when creating a CDN endpoint. Traffic is sent to the origins within the origin group based on origin health.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "Origin group name which must be unique within the endpoint.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeepCreatedOriginGroupProperties" + } + }, + "x-ms-azure-resource": true + }, + "DeepCreatedOriginGroupProperties": { + "description": "Properties of the origin group created on the CDN endpoint.", + "type": "object", + "required": [ + "origins" + ], + "properties": { + "healthProbeSettings": { + "description": "Health probe settings to the origin that is used to determine the health of the origin.", + "type": "object", + "$ref": "#/definitions/HealthProbeParameters" + }, + "origins": { + "description": "The source of the content being delivered via CDN within given origin group.", + "type": "array", + "items": { + "description": "A reference to a origin.", + "$ref": "#/definitions/ResourceReference" + } + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": { + "description": "Time in minutes to shift the traffic to the endpoint gradually when an unhealthy endpoint comes healthy or a new endpoint is added. Default is 10 mins. This property is currently not supported.", + "type": "integer", + "format": "int32", + "maximum": 50, + "minimum": 0 + }, + "responseBasedOriginErrorDetectionSettings": { + "description": "The JSON object that contains the properties to determine origin health using real requests/responses.This property is currently not supported.", + "type": "object", + "$ref": "#/definitions/ResponseBasedOriginErrorDetectionParameters" + } + }, + "x-ms-azure-resource": true + }, + "ResourceReference": { + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another resource.", + "x-ms-azure-resource": true + }, + "GeoFilter": { + "description": "Rules defining user's geo access within a CDN endpoint.", + "type": "object", + "required": [ + "relativePath", + "action", + "countryCodes" + ], + "properties": { + "relativePath": { + "description": "Relative path applicable to geo filter. (e.g. '/mypictures', '/mypicture/kitty.jpg', and etc.)", + "type": "string" + }, + "action": { + "description": "Action of the geo filter, i.e. allow or block access.", + "enum": [ + "Block", + "Allow" + ], + "type": "string", + "x-ms-enum": { + "name": "GeoFilterActions", + "modelAsString": false + } + }, + "countryCodes": { + "description": "Two letter country or region codes defining user country or region access in a geo filter, e.g. AU, MX, US.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "PurgeParameters": { + "type": "object", + "description": "Parameters required for content purge.", + "required": [ + "contentPaths" + ], + "properties": { + "contentPaths": { + "description": "The path to the content to be purged. Can describe a file path or a wild card directory.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "UrlSigningKey": { + "description": "Url signing key", + "required": [ + "keyId", + "keySourceParameters" + ], + "properties": { + "keyId": { + "description": "Defines the customer defined key Id. This id will exist in the incoming request to indicate the key used to form the hash.", + "type": "string" + }, + "keySourceParameters": { + "description": "Defines the parameters for using customer key vault for Url Signing Key.", + "$ref": "#/definitions/KeyVaultSigningKeyParameters" + } + } + }, + "KeyVaultSigningKeyParameters": { + "description": "Describes the parameters for using a user's KeyVault for URL Signing Key.", + "required": [ + "typeName", + "subscriptionId", + "resourceGroupName", + "vaultName", + "secretName", + "secretVersion" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "KeyVaultSigningKeyParameters" + ] + }, + "subscriptionId": { + "description": "Subscription Id of the user's Key Vault containing the secret", + "type": "string" + }, + "resourceGroupName": { + "description": "Resource group of the user's Key Vault containing the secret", + "type": "string" + }, + "vaultName": { + "description": "The name of the user's Key Vault containing the secret", + "type": "string" + }, + "secretName": { + "description": "The name of secret in Key Vault.", + "type": "string" + }, + "secretVersion": { + "description": "The version(GUID) of secret in Key Vault.", + "type": "string" + } + } + }, + "LoadParameters": { + "type": "object", + "description": "Parameters required for content load.", + "required": [ + "contentPaths" + ], + "properties": { + "contentPaths": { + "description": "The path to the content to be loaded. Path should be a relative file URL of the origin.", + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "Origin": { + "description": "CDN origin is the source of the content being delivered via CDN. When the edge nodes represented by an endpoint do not have the requested content cached, they attempt to fetch it from one or more of the configured origins.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginProperties" + } + } + }, + "OriginProperties": { + "description": "The JSON object that contains the properties of the origin.", + "required": [ + "hostName" + ], + "allOf": [ + { + "$ref": "#/definitions/OriginUpdatePropertiesParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status of the origin.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "OriginResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the origin.", + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Updating", + "Deleting", + "Creating" + ], + "x-ms-enum": { + "name": "OriginProvisioningState", + "modelAsString": true + } + }, + "privateEndpointStatus": { + "description": "The approval status for the connection to the Private Link", + "$ref": "#/definitions/PrivateEndpointStatus", + "type": "string", + "readOnly": true + } + } + }, + "OriginUpdateParameters": { + "type": "object", + "description": "Origin properties needed for origin update.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginUpdatePropertiesParameters" + } + }, + "x-ms-azure-resource": true + }, + "OriginUpdatePropertiesParameters": { + "description": "The JSON object that contains the properties of the origin.", + "properties": { + "hostName": { + "description": "The address of the origin. Domain names, IPv4 addresses, and IPv6 addresses are supported.This should be unique across all origins in an endpoint.", + "type": "string" + }, + "httpPort": { + "description": "The value of the HTTP port. Must be between 1 and 65535.", + "type": "integer", + "format": "int32", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "httpsPort": { + "description": "The value of the HTTPS port. Must be between 1 and 65535.", + "type": "integer", + "format": "int32", + "maximum": 65535, + "exclusiveMaximum": false, + "minimum": 1, + "exclusiveMinimum": false + }, + "originHostHeader": { + "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. This overrides the host header defined at Endpoint", + "type": "string" + }, + "priority": { + "description": "Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy.Must be between 1 and 5", + "type": "integer", + "format": "int32", + "maximum": 5, + "minimum": 1 + }, + "weight": { + "description": "Weight of the origin in given origin group for load balancing. Must be between 1 and 1000", + "type": "integer", + "format": "int32", + "maximum": 1000, + "minimum": 1 + }, + "enabled": { + "description": "Origin is enabled for load balancing or not", + "type": "boolean" + }, + "privateLinkAlias": { + "description": "The Alias of the Private Link resource. Populating this optional field indicates that this origin is 'Private'", + "type": "string" + }, + "privateLinkResourceId": { + "description": "The Resource Id of the Private Link resource. Populating this optional field indicates that this backend is 'Private'", + "type": "string" + }, + "privateLinkLocation": { + "description": "The location of the Private Link resource. Required only if 'privateLinkResourceId' is populated", + "type": "string" + }, + "privateLinkApprovalMessage": { + "description": "A custom message to be included in the approval request to connect to the Private Link.", + "type": "string" + } + } + }, + "OriginListResult": { + "description": "Result of the request to list origins. It contains a list of origin objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Origin" + }, + "description": "List of CDN origins within an endpoint" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of origin objects if there are any." + } + } + }, + "OriginGroup": { + "description": "Origin group comprising of origins is used for load balancing to origins when the content cannot be served from CDN.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginGroupProperties" + } + } + }, + "OriginGroupProperties": { + "description": "The JSON object that contains the properties of the origin group.", + "type": "object", + "required": [ + "origins" + ], + "allOf": [ + { + "$ref": "#/definitions/OriginGroupUpdatePropertiesParameters" + } + ], + "properties": { + "resourceState": { + "description": "Resource status of the origin group.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "OriginGroupResourceState", + "modelAsString": true + } + }, + "provisioningState": { + "readOnly": true, + "description": "Provisioning status of the origin group.", + "type": "string", + "enum": [ + "Succeeded", + "Failed", + "Updating", + "Deleting", + "Creating" + ], + "x-ms-enum": { + "name": "OriginGroupProvisioningState", + "modelAsString": true + } + } + } + }, + "OriginGroupUpdateParameters": { + "type": "object", + "description": "Origin group properties needed for origin group creation or update.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/OriginGroupUpdatePropertiesParameters" + } + }, + "x-ms-azure-resource": true + }, + "OriginGroupUpdatePropertiesParameters": { + "description": "The JSON object that contains the properties of the origin group.", + "properties": { + "healthProbeSettings": { + "description": "Health probe settings to the origin that is used to determine the health of the origin.", + "type": "object", + "$ref": "#/definitions/HealthProbeParameters" + }, + "origins": { + "description": "The source of the content being delivered via CDN within given origin group.", + "type": "array", + "items": { + "description": "A reference to a origin.", + "$ref": "#/definitions/ResourceReference" + } + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": { + "description": "Time in minutes to shift the traffic to the endpoint gradually when an unhealthy endpoint comes healthy or a new endpoint is added. Default is 10 mins. This property is currently not supported.", + "type": "integer", + "format": "int32", + "maximum": 50, + "minimum": 0 + }, + "responseBasedOriginErrorDetectionSettings": { + "description": "The JSON object that contains the properties to determine origin health using real requests/responses. This property is currently not supported.", + "type": "object", + "$ref": "#/definitions/ResponseBasedOriginErrorDetectionParameters" + } + } + }, + "HealthProbeParameters": { + "description": "The JSON object that contains the properties to send health probes to origin.", + "properties": { + "probePath": { + "description": "The path relative to the origin that is used to determine the health of the origin.", + "type": "string" + }, + "probeRequestType": { + "description": "The type of health probe request that is made.", + "enum": [ + "NotSet", + "GET", + "HEAD" + ], + "type": "string", + "x-ms-enum": { + "name": "HealthProbeRequestType", + "modelAsString": false + } + }, + "probeProtocol": { + "description": "Protocol to use for health probe.", + "type": "string", + "enum": [ + "NotSet", + "Http", + "Https" + ], + "x-ms-enum": { + "name": "ProbeProtocol", + "modelAsString": false + } + }, + "probeIntervalInSeconds": { + "description": "The number of seconds between health probes.Default is 240sec.", + "type": "integer", + "format": "int32", + "maximum": 255, + "minimum": 1 + } + } + }, + "ResponseBasedOriginErrorDetectionParameters": { + "description": "The JSON object that contains the properties to determine origin health using real requests/responses.", + "properties": { + "responseBasedDetectedErrorTypes": { + "description": "Type of response errors for real user requests for which origin will be deemed unhealthy", + "type": "string", + "enum": [ + "None", + "TcpErrorsOnly", + "TcpAndHttpErrors" + ], + "x-ms-enum": { + "name": "ResponseBasedDetectedErrorTypes", + "modelAsString": false + } + }, + "responseBasedFailoverThresholdPercentage": { + "description": "The percentage of failed requests in the sample where failover should trigger.", + "type": "integer", + "format": "int32", + "maximum": 100, + "minimum": 0 + }, + "httpErrorRanges": { + "description": "The list of Http status code ranges that are considered as server errors for origin and it is marked as unhealthy.", + "type": "array", + "items": { + "$ref": "#/definitions/HttpErrorRangeParameters" + }, + "x-ms-identifiers": [] + } + } + }, + "HttpErrorRangeParameters": { + "description": "The JSON object that represents the range for http status codes", + "properties": { + "begin": { + "description": "The inclusive start of the http status code range.", + "type": "integer", + "format": "int32", + "maximum": 999, + "minimum": 100 + }, + "end": { + "description": "The inclusive end of the http status code range.", + "type": "integer", + "format": "int32", + "maximum": 999, + "minimum": 100 + } + } + }, + "OriginGroupListResult": { + "description": "Result of the request to list origin groups. It contains a list of origin groups objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/OriginGroup" + }, + "description": "List of CDN origin groups within an endpoint" + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of origin objects if there are any." + } + } + }, + "DeepCreatedCustomDomain": { + "description": "Custom domains created on the CDN endpoint.", + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "description": "Custom domain name.", + "type": "string" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/DeepCreatedCustomDomainProperties" + } + } + }, + "DeepCreatedCustomDomainProperties": { + "description": "Properties of the custom domain created on the CDN endpoint.", + "type": "object", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + }, + "validationData": { + "description": "Special validation or data may be required when delivering CDN to some regions due to local compliance reasons. E.g. ICP license number of a custom domain is required to deliver content in China.", + "type": "string" + } + } + }, + "CustomDomain": { + "description": "Friendly domain name mapping to the endpoint hostname that the customer provides for branding purposes, e.g. www.contoso.com.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CustomDomainProperties" + } + } + }, + "CustomDomainProperties": { + "description": "The JSON object that contains the properties of the custom domain to create.", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + }, + "resourceState": { + "description": "Resource status of the custom domain.", + "readOnly": true, + "enum": [ + "Creating", + "Active", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomDomainResourceState", + "modelAsString": true + } + }, + "customHttpsProvisioningState": { + "description": "Provisioning status of the custom domain.", + "readOnly": true, + "enum": [ + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHttpsProvisioningState", + "modelAsString": true + } + }, + "customHttpsProvisioningSubstate": { + "description": "Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.", + "readOnly": true, + "enum": [ + "SubmittingDomainControlValidationRequest", + "PendingDomainControlValidationREquestApproval", + "DomainControlValidationRequestApproved", + "DomainControlValidationRequestRejected", + "DomainControlValidationRequestTimedOut", + "IssuingCertificate", + "DeployingCertificate", + "CertificateDeployed", + "DeletingCertificate", + "CertificateDeleted" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHttpsProvisioningSubstate", + "modelAsString": true + } + }, + "customHttpsParameters": { + "description": "Certificate parameters for securing custom HTTPS", + "$ref": "#/definitions/CustomDomainHttpsParameters" + }, + "validationData": { + "description": "Special validation or data may be required when delivering CDN to some regions due to local compliance reasons. E.g. ICP license number of a custom domain is required to deliver content in China.", + "type": "string" + }, + "provisioningState": { + "description": "Provisioning status of Custom Https of the custom domain.", + "readOnly": true, + "enum": [ + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Failed" + ], + "type": "string", + "x-ms-enum": { + "name": "CustomHttpsProvisioningState", + "modelAsString": true + } + } + } + }, + "CustomDomainParameters": { + "description": "The customDomain JSON object required for custom domain creation or update.", + "type": "object", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/CustomDomainPropertiesParameters" + } + } + }, + "CustomDomainPropertiesParameters": { + "description": "The JSON object that contains the properties of the custom domain to create.", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + } + } + }, + "CustomDomainHttpsParameters": { + "description": "The JSON object that contains the properties to secure a custom domain.", + "discriminator": "certificateSource", + "required": [ + "certificateSource", + "protocolType" + ], + "properties": { + "certificateSource": { + "description": "Defines the source of the SSL certificate.", + "enum": [ + "AzureKeyVault", + "Cdn" + ], + "type": "string", + "x-ms-enum": { + "name": "CertificateSource", + "modelAsString": true + } + }, + "protocolType": { + "description": "Defines the TLS extension protocol that is used for secure delivery.", + "enum": [ + "ServerNameIndication", + "IPBased" + ], + "type": "string", + "x-ms-enum": { + "name": "ProtocolType", + "modelAsString": true + } + }, + "minimumTlsVersion": { + "description": "TLS protocol version that will be used for Https", + "enum": [ + "None", + "TLS10", + "TLS12" + ], + "type": "string", + "x-ms-enum": { + "name": "MinimumTlsVersion", + "modelAsString": false + } + } + } + }, + "CdnManagedHttpsParameters": { + "description": "Defines the certificate source parameters using CDN managed certificate for enabling SSL.", + "x-ms-discriminator-value": "Cdn", + "allOf": [ + { + "$ref": "#/definitions/CustomDomainHttpsParameters" + } + ], + "required": [ + "certificateSourceParameters" + ], + "properties": { + "certificateSourceParameters": { + "description": "Defines the certificate source parameters using CDN managed certificate for enabling SSL.", + "$ref": "#/definitions/CdnCertificateSourceParameters" + } + } + }, + "CdnCertificateSourceParameters": { + "description": "Defines the parameters for using CDN managed certificate for securing custom domain.", + "required": [ + "typeName", + "certificateType" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "CdnCertificateSourceParameters" + ] + }, + "certificateType": { + "description": "Type of certificate used", + "enum": [ + "Shared", + "Dedicated" + ], + "type": "string", + "x-ms-enum": { + "name": "CertificateType", + "modelAsString": true + } + } + } + }, + "UserManagedHttpsParameters": { + "description": "Defines the certificate source parameters using user's keyvault certificate for enabling SSL.", + "x-ms-discriminator-value": "AzureKeyVault", + "allOf": [ + { + "$ref": "#/definitions/CustomDomainHttpsParameters" + } + ], + "required": [ + "certificateSourceParameters" + ], + "properties": { + "certificateSourceParameters": { + "description": "Defines the certificate source parameters using user's keyvault certificate for enabling SSL.", + "$ref": "#/definitions/KeyVaultCertificateSourceParameters" + } + } + }, + "KeyVaultCertificateSourceParameters": { + "description": "Describes the parameters for using a user's KeyVault certificate for securing custom domain.", + "required": [ + "typeName", + "subscriptionId", + "resourceGroupName", + "vaultName", + "secretName", + "updateRule", + "deleteRule" + ], + "properties": { + "typeName": { + "type": "string", + "enum": [ + "KeyVaultCertificateSourceParameters" + ] + }, + "subscriptionId": { + "description": "Subscription Id of the user's Key Vault containing the SSL certificate", + "type": "string" + }, + "resourceGroupName": { + "description": "Resource group of the user's Key Vault containing the SSL certificate", + "type": "string" + }, + "vaultName": { + "description": "The name of the user's Key Vault containing the SSL certificate", + "type": "string" + }, + "secretName": { + "description": "The name of Key Vault Secret (representing the full certificate PFX) in Key Vault.", + "type": "string" + }, + "secretVersion": { + "description": "The version(GUID) of Key Vault Secret in Key Vault.", + "type": "string" + }, + "updateRule": { + "description": "Describes the action that shall be taken when the certificate is updated in Key Vault.", + "type": "string", + "enum": [ + "NoAction" + ], + "x-ms-enum": { + "name": "UpdateRule", + "modelAsString": true + } + }, + "deleteRule": { + "description": "Describes the action that shall be taken when the certificate is removed from Key Vault.", + "type": "string", + "enum": [ + "NoAction" + ], + "x-ms-enum": { + "name": "DeleteRule", + "modelAsString": true + } + } + } + }, + "CustomDomainListResult": { + "description": "Result of the request to list custom domains. It contains a list of custom domain objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CustomDomain" + }, + "description": "List of CDN CustomDomains within an endpoint." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of custom domain objects if there are any." + } + } + }, + "ValidateCustomDomainInput": { + "description": "Input of the custom domain to be validated for DNS mapping.", + "type": "object", + "required": [ + "hostName" + ], + "properties": { + "hostName": { + "description": "The host name of the custom domain. Must be a domain name.", + "type": "string" + } + } + }, + "ValidateCustomDomainOutput": { + "description": "Output of custom domain validation.", + "type": "object", + "properties": { + "customDomainValidated": { + "description": "Indicates whether the custom domain is valid or not.", + "readOnly": true, + "type": "boolean" + }, + "reason": { + "description": "The reason why the custom domain is not valid.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "Error message describing why the custom domain is not valid.", + "readOnly": true, + "type": "string" + } + } + }, + "CheckNameAvailabilityInput": { + "description": "Input of CheckNameAvailability API.", + "type": "object", + "required": [ + "name", + "type" + ], + "properties": { + "name": { + "description": "The resource name to validate.", + "type": "string" + }, + "type": { + "description": "The type of the resource whose name is to be validated.", + "$ref": "#/definitions/ResourceType" + } + } + }, + "CheckNameAvailabilityOutput": { + "description": "Output of check name availability API.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "Indicates whether the name is available.", + "readOnly": true, + "type": "boolean" + }, + "reason": { + "description": "The reason why the name is not available.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The detailed error message describing why the name is not available.", + "readOnly": true, + "type": "string" + } + } + }, + "ValidateProbeInput": { + "description": "Input of the validate probe API.", + "properties": { + "probeURL": { + "description": "The probe URL to validate.", + "type": "string" + } + }, + "required": [ + "probeURL" + ], + "type": "object" + }, + "ValidateProbeOutput": { + "description": "Output of the validate probe API.", + "properties": { + "isValid": { + "description": "Indicates whether the probe URL is accepted or not.", + "readOnly": true, + "type": "boolean" + }, + "errorCode": { + "description": "Specifies the error code when the probe url is not accepted.", + "readOnly": true, + "type": "string" + }, + "message": { + "description": "The detailed error message describing why the probe URL is not accepted.", + "readOnly": true, + "type": "string" + } + }, + "type": "object" + }, + "ResourceUsageListResult": { + "description": "Output of check resource usage API.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceUsage" + }, + "x-ms-identifiers": [ + "resourceType" + ], + "description": "List of resource usages." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of custom domain objects if there are any." + } + } + }, + "ResourceUsage": { + "description": "Output of check resource usage API.", + "type": "object", + "properties": { + "resourceType": { + "type": "string", + "readOnly": true, + "description": "Resource type for which the usage is provided." + }, + "unit": { + "type": "string", + "readOnly": true, + "description": "Unit of the usage. e.g. count.", + "enum": [ + "count" + ], + "x-ms-enum": { + "name": "ResourceUsageUnit", + "modelAsString": true + } + }, + "currentValue": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "Actual value of usage on the specified resource type." + }, + "limit": { + "type": "integer", + "format": "int32", + "readOnly": true, + "description": "Quota of the specified resource type." + } + } + }, + "ResourceType": { + "description": "Type of CDN resource used in CheckNameAvailability.", + "enum": [ + "Microsoft.Cdn/Profiles/Endpoints", + "Microsoft.Cdn/Profiles/AfdEndpoints" + ], + "type": "string", + "x-ms-enum": { + "name": "ResourceType", + "modelAsString": true + } + }, + "OperationsListResult": { + "description": "Result of the request to list CDN operations. It contains a list of operations and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "x-ms-identifiers": [ + "name" + ], + "description": "List of CDN operations supported by the CDN resource provider." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of operation list results if there are any." + } + } + }, + "Operation": { + "description": "CDN REST API operation", + "type": "object", + "properties": { + "name": { + "description": "Operation name: {provider}/{resource}/{operation}", + "readOnly": true, + "type": "string" + }, + "isDataAction": { + "description": "Indicates whether the operation is a data action", + "type": "boolean" + }, + "display": { + "description": "The object that represents the operation.", + "properties": { + "provider": { + "description": "Service provider: Microsoft.Cdn", + "readOnly": true, + "type": "string" + }, + "resource": { + "description": "Resource on which the operation is performed: Profile, endpoint, etc.", + "readOnly": true, + "type": "string" + }, + "operation": { + "description": "Operation type: Read, write, delete, etc.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Description of operation.", + "readOnly": true, + "type": "string" + } + } + }, + "origin": { + "type": "string", + "readOnly": true, + "description": "The origin of operations." + }, + "properties": { + "description": "Properties of operation, include metric specifications.", + "x-ms-client-flatten": true, + "x-ms-client-name": "OperationProperties", + "$ref": "#/definitions/OperationProperties" + } + } + }, + "OperationProperties": { + "description": "Properties of operation, include metric specifications.", + "type": "object", + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "One property of operation, include metric specifications." + } + } + }, + "ServiceSpecification": { + "description": "One property of operation, include log specifications.", + "type": "object", + "properties": { + "logSpecifications": { + "description": "Log specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "metricSpecifications": { + "description": "Metric specifications of operation.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "LogSpecification": { + "description": "Log specification of operation.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of log specification." + }, + "displayName": { + "type": "string", + "description": "Display name of log specification." + }, + "blobDuration": { + "type": "string", + "description": "Blob duration of specification." + }, + "logFilterPattern": { + "type": "string", + "description": "Pattern to filter based on name" + } + } + }, + "MetricSpecification": { + "description": "Metric specification of operation.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of metric specification." + }, + "displayName": { + "type": "string", + "description": "Display name of metric specification." + }, + "displayDescription": { + "type": "string", + "description": "Display description of metric specification." + }, + "unit": { + "type": "string", + "description": "The metric unit. Possible values include: 'Bytes', 'Count', 'Milliseconds'." + }, + "aggregationType": { + "type": "string", + "description": "The metric aggregation type. Possible values include: 'Average', 'Count', 'Total'." + }, + "availabilities": { + "description": "Retention policies of a resource metric.", + "type": "array", + "items": { + "$ref": "#/definitions/MetricAvailability" + }, + "x-ms-identifiers": [] + }, + "supportedTimeGrainTypes": { + "type": "array", + "description": "The supported time grain types for the metrics.", + "items": { + "type": "string" + } + }, + "dimensions": { + "type": "array", + "description": "The dimensions of metric", + "items": { + "$ref": "#/definitions/DimensionProperties" + }, + "x-ms-identifiers": [ + "name" + ] + }, + "fillGapWithZero": { + "type": "boolean", + "description": "Property to specify whether to fill gap with zero." + }, + "metricFilterPattern": { + "type": "string", + "description": "Pattern to filter based on name" + }, + "isInternal": { + "type": "boolean", + "description": "Property to specify metric is internal or not." + } + } + }, + "DimensionProperties": { + "description": "Type of operation: get, read, delete, etc.", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of dimension." + }, + "displayName": { + "type": "string", + "description": "Display name of dimension." + }, + "internalName": { + "type": "string", + "description": "Internal name of dimension." + } + } + }, + "MetricAvailability": { + "description": "Retention policy of a resource metric.", + "type": "object", + "properties": { + "timeGrain": { + "type": "string" + }, + "blobDuration": { + "type": "string" + } + } + }, + "EdgenodeResult": { + "description": "Result of the request to list CDN edgenodes. It contains a list of ip address group and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/EdgeNode" + }, + "description": "Edge node of CDN service." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of edgenode list results if there are any." + } + } + }, + "EdgeNode": { + "description": "Edgenode is a global Point of Presence (POP) location used to deliver CDN content to end users.", + "type": "object", + "allOf": [ + { + "$ref": "#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/EdgeNodeProperties" + } + } + }, + "EdgeNodeProperties": { + "description": "The JSON object that contains the properties required to create an edgenode.", + "required": [ + "ipAddressGroups" + ], + "properties": { + "ipAddressGroups": { + "description": "List of ip address groups.", + "type": "array", + "items": { + "$ref": "#/definitions/IpAddressGroup" + }, + "x-ms-identifiers": [ + "deliveryRegion" + ] + } + } + }, + "IpAddressGroup": { + "description": "CDN Ip address group", + "type": "object", + "properties": { + "deliveryRegion": { + "description": "The delivery region of the ip address group", + "type": "string" + }, + "ipv4Addresses": { + "description": "The list of ip v4 addresses.", + "type": "array", + "items": { + "$ref": "#/definitions/cidrIpAddress" + }, + "x-ms-identifiers": [ + "baseIpAddress" + ] + }, + "ipv6Addresses": { + "description": "The list of ip v6 addresses.", + "type": "array", + "items": { + "$ref": "#/definitions/cidrIpAddress" + }, + "x-ms-identifiers": [ + "baseIpAddress" + ] + } + } + }, + "cidrIpAddress": { + "description": "CIDR Ip address", + "type": "object", + "properties": { + "baseIpAddress": { + "description": "Ip address itself.", + "type": "string" + }, + "prefixLength": { + "description": "The length of the prefix of the ip address.", + "type": "integer", + "format": "int32" + } + } + }, + "Resource": { + "description": "The core properties of ARM resources", + "properties": { + "id": { + "description": "Resource ID.", + "readOnly": true, + "type": "string" + }, + "name": { + "description": "Resource name.", + "readOnly": true, + "type": "string" + }, + "type": { + "description": "Resource type.", + "readOnly": true, + "type": "string" + }, + "systemData": { + "$ref": "#/definitions/SystemData", + "readOnly": true + } + }, + "x-ms-azure-resource": true + }, + "SystemData": { + "description": "Read only system data", + "readOnly": true, + "type": "object", + "properties": { + "createdBy": { + "type": "string", + "description": "An identifier for the identity that created the resource" + }, + "createdByType": { + "$ref": "#/definitions/IdentityType", + "description": "The type of identity that created the resource" + }, + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)" + }, + "lastModifiedBy": { + "type": "string", + "description": "An identifier for the identity that last modified the resource" + }, + "lastModifiedByType": { + "$ref": "#/definitions/IdentityType", + "description": "The type of identity that last modified the resource" + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)" + } + } + }, + "IdentityType": { + "description": "The type of identity that creates/modifies resources", + "type": "string", + "enum": [ + "user", + "application", + "managedIdentity", + "key" + ], + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "TrackedResource": { + "description": "The resource model definition for a ARM tracked top level resource.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": { + "location": { + "type": "string", + "description": "Resource location." + }, + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + } + }, + "required": [ + "location" + ] + }, + "ProxyResource": { + "description": "The resource model definition for a ARM proxy resource. It will have everything other than required location and tags", + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ], + "properties": {} + }, + "QueryStringCachingBehavior": { + "description": "Defines how CDN caches requests that include query strings. You can ignore any query strings when caching, bypass caching to prevent requests that contain query strings from being cached, or cache every request with a unique URL.", + "enum": [ + "IgnoreQueryString", + "BypassCaching", + "UseQueryString", + "NotSet" + ], + "type": "string", + "x-ms-enum": { + "name": "QueryStringCachingBehavior", + "modelAsString": false + } + }, + "PrivateEndpointStatus": { + "description": "The approval status for the connection to the Private Link", + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected", + "Timeout" + ], + "x-ms-enum": { + "name": "PrivateEndpointStatus", + "modelAsString": true + } + }, + "Sku": { + "description": "Standard_Verizon = The SKU name for a Standard Verizon CDN profile.\nPremium_Verizon = The SKU name for a Premium Verizon CDN profile.\nCustom_Verizon = The SKU name for a Custom Verizon CDN profile.\nStandard_Akamai = The SKU name for an Akamai CDN profile.\nStandard_ChinaCdn = The SKU name for a China CDN profile for VOD, Web and download scenarios using GB based billing model.\nStandard_Microsoft = The SKU name for a Standard Microsoft CDN profile.\nStandard_AzureFrontDoor = The SKU name for an Azure Front Door Standard profile.\nPremium_AzureFrontDoor = The SKU name for an Azure Front Door Premium profile.\nStandard_955BandWidth_ChinaCdn = The SKU name for a China CDN profile for VOD, Web and download scenarios using 95-5 peak bandwidth billing model.\nStandard_AvgBandWidth_ChinaCdn = The SKU name for a China CDN profile for VOD, Web and download scenarios using monthly average peak bandwidth billing model.\nStandardPlus_ChinaCdn = The SKU name for a China CDN profile for live-streaming using GB based billing model.\nStandardPlus_955BandWidth_ChinaCdn = The SKU name for a China CDN live-streaming profile using 95-5 peak bandwidth billing model.\nStandardPlus_AvgBandWidth_ChinaCdn = The SKU name for a China CDN live-streaming profile using monthly average peak bandwidth billing model.\n", + "properties": { + "name": { + "description": "Name of the pricing tier.", + "enum": [ + "Standard_Verizon", + "Premium_Verizon", + "Custom_Verizon", + "Standard_Akamai", + "Standard_ChinaCdn", + "Standard_Microsoft", + "Standard_AzureFrontDoor", + "Premium_AzureFrontDoor", + "Standard_955BandWidth_ChinaCdn", + "Standard_AvgBandWidth_ChinaCdn", + "StandardPlus_ChinaCdn", + "StandardPlus_955BandWidth_ChinaCdn", + "StandardPlus_AvgBandWidth_ChinaCdn" + ], + "type": "string", + "x-ms-enum": { + "name": "SkuName", + "modelAsString": true + } + } + }, + "type": "object" + }, + "OptimizationType": { + "description": "Specifies what scenario the customer wants this CDN endpoint to optimize, e.g. Download, Media services. With this information we can apply scenario driven optimization.", + "enum": [ + "GeneralWebDelivery", + "GeneralMediaStreaming", + "VideoOnDemandMediaStreaming", + "LargeFileDownload", + "DynamicSiteAcceleration" + ], + "type": "string", + "x-ms-enum": { + "name": "OptimizationType", + "modelAsString": true + } + }, + "ErrorResponse": { + "title": "Error response", + "description": "Error response indicates Azure Front Door Standard or Azure Front Door Premium or CDN service is not able to process the incoming request. The reason is provided in the error message.", + "type": "object", + "properties": { + "error": { + "description": "The error object.", + "$ref": "#/definitions/ErrorDetail" + } + } + }, + "ErrorDetail": { + "description": "The error detail.", + "type": "object", + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "The error code." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "The error message." + }, + "target": { + "readOnly": true, + "type": "string", + "description": "The error target." + }, + "details": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorDetail" + }, + "x-ms-identifiers": [ + "message", + "target" + ], + "description": "The error details." + }, + "additionalInfo": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ErrorAdditionalInfo" + }, + "x-ms-identifiers": [], + "description": "The error additional info." + } + } + }, + "ErrorAdditionalInfo": { + "type": "object", + "properties": { + "type": { + "readOnly": true, + "type": "string", + "description": "The additional info type." + }, + "info": { + "readOnly": true, + "type": "object", + "description": "The additional info." + } + }, + "description": "The resource management error additional info." + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. Current version is 2022-11-01-preview." + }, + "resourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method", + "description": "Name of the Resource group within the Azure subscription." + } + } +} \ No newline at end of file diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdnwebapplicationfirewall.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdnwebapplicationfirewall.json new file mode 100644 index 000000000000..0f1e7e441057 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdnwebapplicationfirewall.json @@ -0,0 +1,967 @@ +{ + "swagger": "2.0", + "info": { + "version": "2022-11-01-preview", + "title": "Azure CDN WebApplicationFirewallManagement", + "description": "APIs to manage web application firewall rules for Azure CDN" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow.", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/cdnWebApplicationFirewallPolicies": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Lists all of the protection policies within a resource group.", + "operationId": "Policies_List", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicyList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Policies in a Resource Group": { + "$ref": "./examples/WafListPolicies.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/cdnWebApplicationFirewallPolicies/{policyName}": { + "get": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Retrieve protection policy with specified name within a resource group.", + "operationId": "Policies_Get", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Get Policy": { + "$ref": "./examples/WafPolicyGet.json" + } + } + }, + "put": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Create or update policy with specified rule set name within a resource group.", + "operationId": "Policies_CreateOrUpdate", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "description": "Policy to be created.", + "in": "body", + "name": "cdnWebApplicationFirewallPolicy", + "required": true, + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "201": { + "description": "Created. The request has been fulfilled and a new protection policy has been created.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates specific policy": { + "$ref": "./examples/WafPolicyCreateOrUpdate.json" + } + }, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Update an existing CdnWebApplicationFirewallPolicy with the specified policy name under the specified subscription and resource group", + "operationId": "Policies_Update", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + }, + { + "description": "CdnWebApplicationFirewallPolicy parameters to be patched.", + "in": "body", + "name": "cdnWebApplicationFirewallPolicyPatchParameters", + "required": true, + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicyPatchParameters" + } + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Creates specific policy": { + "$ref": "./examples/WafPatchPolicy.json" + } + }, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "WebApplicationFirewallPolicies" + ], + "description": "Deletes Policy", + "operationId": "Policies_Delete", + "parameters": [ + { + "$ref": "#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/PolicyNameParameter" + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Delete successful." + }, + "204": { + "description": "No Content. The request has been accepted but the policy was not found." + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-examples": { + "Delete protection policy": { + "$ref": "./examples/WafPolicyDelete.json" + } + }, + "x-ms-long-running-operation": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/cdnWebApplicationFirewallManagedRuleSets": { + "get": { + "tags": [ + "WebApplicationFirewallManagedRuleSets" + ], + "description": "Lists all available managed rule sets.", + "operationId": "ManagedRuleSets_List", + "parameters": [ + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "Success. The operation returns a list of all available web application firewall managed rule sets.", + "schema": { + "$ref": "#/definitions/ManagedRuleSetDefinitionList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "./cdn.json#/definitions/ErrorResponse" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "x-ms-examples": { + "List Policies in a Resource Group": { + "$ref": "./examples/WafListManagedRuleSets.json" + } + } + } + } + }, + "definitions": { + "CdnWebApplicationFirewallPolicyList": { + "description": "Defines a list of WebApplicationFirewallPolicies for Azure CDN. It contains a list of WebApplicationFirewallPolicy objects and a URL link to get the next set of results.", + "properties": { + "value": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" + }, + "description": "List of Azure CDN WebApplicationFirewallPolicies within a resource group." + }, + "nextLink": { + "type": "string", + "description": "URL to get the next set of WebApplicationFirewallPolicy objects if there are any." + } + } + }, + "CdnWebApplicationFirewallPolicy": { + "description": "Defines web application firewall policy for Azure CDN.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Properties of the web application firewall policy.", + "$ref": "#/definitions/CdnWebApplicationFirewallPolicyProperties" + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + }, + "sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CdnWebApplicationFirewallPolicy.", + "$ref": "./cdn.json#/definitions/Sku" + } + }, + "required": [ + "sku" + ], + "allOf": [ + { + "$ref": "./cdn.json#/definitions/TrackedResource" + } + ] + }, + "CdnWebApplicationFirewallPolicyPatchParameters": { + "type": "object", + "description": "Properties required to update a CdnWebApplicationFirewallPolicy.", + "properties": { + "tags": { + "description": "CdnWebApplicationFirewallPolicy tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + } + }, + "x-ms-azure-resource": true + }, + "CdnWebApplicationFirewallPolicyProperties": { + "description": "Defines CDN web application firewall policy properties.", + "properties": { + "policySettings": { + "description": "Describes policySettings for policy", + "$ref": "#/definitions/policySettings" + }, + "rateLimitRules": { + "description": "Describes rate limit rules inside the policy.", + "$ref": "#/definitions/RateLimitRuleList" + }, + "customRules": { + "description": "Describes custom rules inside the policy.", + "$ref": "#/definitions/CustomRuleList" + }, + "managedRules": { + "description": "Describes managed rules inside the policy.", + "$ref": "#/definitions/ManagedRuleSetList" + }, + "endpointLinks": { + "description": "Describes Azure CDN endpoints associated with this Web Application Firewall policy.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/CdnEndpoint" + } + }, + "extendedProperties": { + "description": "Key-Value pair representing additional properties for Web Application Firewall policy.", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "provisioningState": { + "readOnly": true, + "type": "string", + "description": "Provisioning state of the WebApplicationFirewallPolicy.", + "enum": [ + "Creating", + "Succeeded", + "Failed" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "resourceState": { + "title": "Resource status of the policy.", + "readOnly": true, + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ], + "type": "string", + "x-ms-enum": { + "name": "PolicyResourceState", + "modelAsString": true + } + } + } + }, + "policySettings": { + "description": "Defines contents of a web application firewall global configuration", + "properties": { + "enabledState": { + "description": "describes if the policy is in enabled state or disabled state", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "PolicyEnabledState", + "modelAsString": true + } + }, + "mode": { + "description": "Describes if it is in detection mode or prevention mode at policy level.", + "type": "string", + "enum": [ + "Prevention", + "Detection" + ], + "x-ms-enum": { + "name": "PolicyMode", + "modelAsString": true + } + }, + "defaultRedirectUrl": { + "description": "If action type is redirect, this field represents the default redirect URL for the client.", + "type": "string" + }, + "defaultCustomBlockResponseStatusCode": { + "description": "If the action type is block, this field defines the default customer overridable http response status code.", + "type": "integer", + "format": "int32", + "enum": [ + 200, + 403, + 405, + 406, + 429 + ] + }, + "defaultCustomBlockResponseBody": { + "description": "If the action type is block, customer can override the response body. The body must be specified in base64 encoding.", + "type": "string", + "pattern": "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$" + } + } + }, + "CdnEndpoint": { + "description": "Defines the ARM Resource ID for the linked endpoints", + "type": "object", + "readOnly": true, + "properties": { + "id": { + "type": "string", + "description": "ARM Resource ID string." + } + } + }, + "CustomRuleList": { + "description": "Defines contents of custom rules", + "properties": { + "rules": { + "description": "List of rules", + "type": "array", + "items": { + "$ref": "#/definitions/CustomRule" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "CustomRule": { + "description": "Defines the common attributes for a custom rule that can be included in a waf policy", + "type": "object", + "required": [ + "name", + "priority", + "matchConditions", + "action" + ], + "properties": { + "name": { + "description": "Defines the name of the custom rule", + "type": "string" + }, + "enabledState": { + "description": "Describes if the custom rule is in enabled or disabled state. Defaults to Enabled if not specified.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "CustomRuleEnabledState", + "modelAsString": true + } + }, + "priority": { + "description": "Defines in what order this rule be evaluated in the overall list of custom rules", + "type": "integer", + "format": "int32", + "maximum": 1000, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false + }, + "matchConditions": { + "description": "List of match conditions.", + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition" + }, + "x-ms-identifiers": [] + }, + "action": { + "description": "Describes what action to be applied when rule matches", + "$ref": "#/definitions/ActionType" + } + } + }, + "RateLimitRuleList": { + "description": "Defines contents of rate limit rules", + "properties": { + "rules": { + "description": "List of rules", + "type": "array", + "items": { + "$ref": "#/definitions/RateLimitRule" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "RateLimitRule": { + "description": "Defines a rate limiting rule that can be included in a waf policy", + "type": "object", + "required": [ + "rateLimitThreshold", + "rateLimitDurationInMinutes" + ], + "properties": { + "rateLimitThreshold": { + "description": "Defines rate limit threshold.", + "type": "integer", + "format": "int32", + "minimum": 0, + "exclusiveMinimum": false + }, + "rateLimitDurationInMinutes": { + "description": "Defines rate limit duration. Default is 1 minute.", + "type": "integer", + "format": "int32", + "maximum": 60, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false + } + }, + "allOf": [ + { + "$ref": "#/definitions/CustomRule" + } + ] + }, + "MatchCondition": { + "description": "Define match conditions", + "required": [ + "matchVariable", + "operator", + "matchValue" + ], + "properties": { + "matchVariable": { + "description": "Match variable to compare against.", + "type": "string", + "enum": [ + "RemoteAddr", + "SocketAddr", + "RequestMethod", + "RequestHeader", + "RequestUri", + "QueryString", + "RequestBody", + "Cookies", + "PostArgs" + ], + "x-ms-enum": { + "name": "WafMatchVariable", + "modelAsString": true + } + }, + "selector": { + "description": "Selector can used to match a specific key for QueryString, Cookies, RequestHeader or PostArgs.", + "type": "string" + }, + "operator": { + "description": "Describes operator to be matched", + "type": "string", + "enum": [ + "Any", + "IPMatch", + "GeoMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith", + "RegEx" + ], + "x-ms-enum": { + "name": "operator", + "modelAsString": true + } + }, + "negateCondition": { + "description": "Describes if the result of this condition should be negated.", + "type": "boolean" + }, + "matchValue": { + "description": "List of possible match values.", + "type": "array", + "items": { + "type": "string" + } + }, + "transforms": { + "description": "List of transforms.", + "type": "array", + "items": { + "$ref": "#/definitions/TransformType" + } + } + } + }, + "TransformType": { + "description": "Describes what transforms were applied before matching.", + "type": "string", + "enum": [ + "Lowercase", + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls" + ], + "x-ms-enum": { + "name": "TransformType", + "modelAsString": true + } + }, + "ManagedRuleSetList": { + "description": "Defines the list of managed rule sets for the policy.", + "properties": { + "managedRuleSets": { + "description": "List of rule sets.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + }, + "x-ms-identifiers": [ + "ruleSetType", + "ruleSetVersion" + ] + } + } + }, + "ManagedRuleSet": { + "type": "object", + "description": "Defines a managed rule set.", + "required": [ + "ruleSetType", + "ruleSetVersion" + ], + "properties": { + "ruleSetType": { + "description": "Defines the rule set type to use.", + "type": "string" + }, + "ruleSetVersion": { + "description": "Defines the version of the rule set to use.", + "type": "string" + }, + "anomalyScore": { + "description": "Verizon only : If the rule set supports anomaly detection mode, this describes the threshold for blocking requests.", + "type": "integer", + "format": "int32", + "maximum": 20, + "exclusiveMaximum": false, + "minimum": 0, + "exclusiveMinimum": false + }, + "ruleGroupOverrides": { + "description": "Defines the rule overrides to apply to the rule set.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleGroupOverride" + }, + "x-ms-identifiers": [ + "ruleGroupName" + ] + } + } + }, + "ManagedRuleGroupOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleGroupName" + ], + "properties": { + "ruleGroupName": { + "description": "Describes the managed rule group within the rule set to override", + "type": "string" + }, + "rules": { + "description": "List of rules that will be enabled. If none specified, all rules in the group will be disabled.", + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleOverride" + }, + "x-ms-identifiers": [ + "ruleId" + ] + } + } + }, + "ManagedRuleOverride": { + "description": "Defines a managed rule group override setting.", + "required": [ + "ruleId" + ], + "properties": { + "ruleId": { + "description": "Identifier for the managed rule.", + "type": "string" + }, + "enabledState": { + "description": "Describes if the managed rule is in enabled or disabled state. Defaults to Disabled if not specified.", + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ], + "x-ms-enum": { + "name": "ManagedRuleEnabledState", + "modelAsString": true + } + }, + "action": { + "description": "Describes the override action to be applied when rule matches.", + "$ref": "#/definitions/ActionType" + } + } + }, + "ManagedRuleSetDefinitionList": { + "description": "List of managed rule set definitions available for use in a policy.", + "properties": { + "value": { + "description": "List of managed rule set definitions.", + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSetDefinition" + } + }, + "nextLink": { + "type": "string", + "description": "URL to retrieve next set of managed rule set definitions." + } + } + }, + "ManagedRuleSetDefinition": { + "description": "Describes a managed rule set definition.", + "properties": { + "properties": { + "description": "Describes managed rule set definition properties.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedRuleSetDefinitionProperties" + }, + "sku": { + "description": "The pricing tier (defines a CDN provider, feature list and rate) of the CdnWebApplicationFirewallPolicy.", + "$ref": "./cdn.json#/definitions/Sku" + } + }, + "allOf": [ + { + "$ref": "./cdn.json#/definitions/Resource" + } + ] + }, + "ManagedRuleSetDefinitionProperties": { + "description": "Properties for a managed rule set definition.", + "properties": { + "provisioningState": { + "type": "string", + "readOnly": true, + "description": "Provisioning state of the managed rule set." + }, + "ruleSetType": { + "type": "string", + "readOnly": true, + "description": "Type of the managed rule set." + }, + "ruleSetVersion": { + "type": "string", + "readOnly": true, + "description": "Version of the managed rule set type." + }, + "ruleGroups": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ManagedRuleGroupDefinition" + }, + "x-ms-identifiers": [ + "ruleGroupName" + ], + "description": "Rule groups of the managed rule set." + } + } + }, + "ManagedRuleGroupDefinition": { + "description": "Describes a managed rule group.", + "properties": { + "ruleGroupName": { + "type": "string", + "readOnly": true, + "description": "Name of the managed rule group." + }, + "description": { + "type": "string", + "readOnly": true, + "description": "Description of the managed rule group." + }, + "rules": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ManagedRuleDefinition" + }, + "x-ms-identifiers": [ + "ruleId" + ], + "description": "List of rules within the managed rule group." + } + } + }, + "ManagedRuleDefinition": { + "description": "Describes a managed rule definition.", + "properties": { + "ruleId": { + "description": "Identifier for the managed rule.", + "readOnly": true, + "type": "string" + }, + "description": { + "description": "Describes the functionality of the managed rule.", + "readOnly": true, + "type": "string" + } + } + }, + "ActionType": { + "description": "Defines the action to take on rule match.", + "type": "string", + "enum": [ + "Allow", + "Block", + "Log", + "Redirect" + ], + "x-ms-enum": { + "name": "ActionType", + "modelAsString": true + } + } + }, + "parameters": { + "subscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "description": "Azure Subscription ID.", + "required": true, + "type": "string" + }, + "apiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Version of the API to be used with the client request. Current version is 2022-11-01-preview." + }, + "PolicyNameParameter": { + "name": "policyName", + "in": "path", + "required": true, + "type": "string", + "maxLength": 128, + "x-ms-parameter-location": "method", + "description": "The name of the CdnWebApplicationFirewallPolicy." + }, + "ResourceGroupNameParameter": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9_\\-\\(\\)\\.]*[^\\.]$", + "minLength": 1, + "maxLength": 80, + "x-ms-parameter-location": "method", + "description": "Name of the Resource group within the Azure subscription." + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Create.json new file mode 100644 index 000000000000..a0f605ad0cf9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Create.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "customDomainName": "domain1", + "customDomain": { + "properties": { + "hostName": "www.someDomain.net", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12" + }, + "azureDnsZone": { + "id": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/profiles/customdomains", + "properties": { + "profileName": "profile1", + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "" + } + }, + "azureDnsZone": { + "id": "" + }, + "preValidatedCustomDomainResourceId": { + "id": "" + }, + "validationProperties": { + "validationToken": "", + "expirationDate": "" + }, + "domainValidationState": "Submitting", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/profiles/customdomains", + "properties": { + "profileName": "profile1", + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "" + } + }, + "azureDnsZone": { + "id": "" + }, + "preValidatedCustomDomainResourceId": { + "id": "" + }, + "validationProperties": { + "validationToken": "", + "expirationDate": "" + }, + "domainValidationState": "Submitting", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/profiles/customdomains", + "properties": { + "profileName": "profile1", + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "" + } + }, + "azureDnsZone": { + "id": "" + }, + "preValidatedCustomDomainResourceId": { + "id": "" + }, + "validationProperties": { + "validationToken": "", + "expirationDate": "" + }, + "domainValidationState": "Submitting", + "provisioningState": "Creating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json new file mode 100644 index 000000000000..7807f184f07f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "customDomainName": "domain1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Get.json new file mode 100644 index 000000000000..88f6e919fff9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Get.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "customDomainName": "domain1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/profiles/customdomains", + "properties": { + "profileName": "profile1", + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "" + } + }, + "azureDnsZone": { + "id": "" + }, + "preValidatedCustomDomainResourceId": { + "id": "" + }, + "validationProperties": { + "validationToken": "8c9912db-c615-4eeb-8465", + "expirationDate": "2009-06-15T13:45:43.0000000Z" + }, + "domainValidationState": "Pending", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_ListByProfile.json new file mode 100644 index 000000000000..85fbc5026321 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_ListByProfile.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/profiles/customdomains", + "properties": { + "profileName": "profile1", + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "" + } + }, + "azureDnsZone": { + "id": "" + }, + "preValidatedCustomDomainResourceId": { + "id": "" + }, + "validationProperties": { + "validationToken": "8c9912db-c615-4eeb-8465", + "expirationDate": "2009-06-15T13:45:43.0000000Z" + }, + "domainValidationState": "Pending", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_RefreshValidationToken.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_RefreshValidationToken.json new file mode 100644 index 000000000000..fcbaab1c9f6f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_RefreshValidationToken.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "customDomainName": "domain1" + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Update.json new file mode 100644 index 000000000000..50296183dc0b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Update.json @@ -0,0 +1,87 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "customDomainName": "domain1", + "customDomainUpdateProperties": { + "properties": { + "tlsSettings": { + "certificateType": "CustomerCertificate", + "minimumTlsVersion": "TLS12" + }, + "azureDnsZone": { + "id": "" + } + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/profiles/customdomains", + "properties": { + "profileName": "profile1", + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/mysecert" + } + }, + "azureDnsZone": { + "id": "" + }, + "preValidatedCustomDomainResourceId": { + "id": "" + }, + "validationProperties": { + "validationToken": "8c9912db-c615-4eeb-8465", + "expirationDate": "2009-06-15T13:45:43.0000000Z" + }, + "domainValidationState": "Approved", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/domain1", + "name": "domain1", + "type": "Microsoft.Cdn/profiles/customdomains", + "properties": { + "profileName": "profile1", + "hostName": "www.contoso.com", + "tlsSettings": { + "certificateType": "ManagedCertificate", + "minimumTlsVersion": "TLS12", + "secret": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/mysecert" + } + }, + "azureDnsZone": { + "id": "" + }, + "preValidatedCustomDomainResourceId": { + "id": "" + }, + "validationProperties": { + "validationToken": "8c9912db-c615-4eeb-8465", + "expirationDate": "2009-06-15T13:45:43.0000000Z" + }, + "domainValidationState": "Approved", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Create.json new file mode 100644 index 000000000000..24a89fdf93b2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Create.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpoint": { + "tags": {}, + "location": "global", + "properties": { + "enabledState": "Enabled", + "autoGeneratedDomainNameLabelScope": "TenantReuse" + } + } + }, + "responses": { + "200": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/afdendpoints", + "tags": {}, + "location": "global", + "properties": { + "hostName": "endpoint1-abcdefghijklmnop.z01.azurefd.net", + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted", + "autoGeneratedDomainNameLabelScope": "TenantReuse" + } + } + }, + "201": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/afdendpoints", + "tags": {}, + "location": "global", + "properties": { + "hostName": "endpoint1-abcdefghijklmnop.z01.azurefd.net", + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted", + "autoGeneratedDomainNameLabelScope": "TenantReuse" + } + } + }, + "202": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/afdendpoints", + "tags": {}, + "location": "global", + "properties": { + "hostName": "endpoint1-abcdefghijklmnop.z01.azurefd.net", + "enabledState": "Enabled", + "provisioningState": "Creating", + "deploymentStatus": "NotStarted", + "autoGeneratedDomainNameLabelScope": "TenantReuse" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Delete.json new file mode 100644 index 000000000000..d7e0307f4fcb --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Get.json new file mode 100644 index 000000000000..3d5051e429bf --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/afdendpoints", + "tags": {}, + "location": "global", + "properties": { + "hostName": "endpoint1-abcdefghijklmnop.z01.azurefd.net", + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted", + "autoGeneratedDomainNameLabelScope": "TenantReuse" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ListByProfile.json new file mode 100644 index 000000000000..c978d4e95562 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ListByProfile.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/afdendpoints", + "tags": {}, + "location": "global", + "properties": { + "hostName": "endpoint1-abcdefghijklmnop.z01.azurefd.net", + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted", + "autoGeneratedDomainNameLabelScope": "TenantReuse" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ListResourceUsage.json new file mode 100644 index 000000000000..6fb4a8b93a1b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ListResourceUsage.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 0, + "limit": 25, + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1/routes/route1", + "name": { + "value": "route", + "localizedValue": "route" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_PurgeContent.json new file mode 100644 index 000000000000..fc17c381f0d4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_PurgeContent.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contents": { + "contentPaths": [ + "/folder1" + ], + "domains": [ + "endpoint1-abcdefghijklmnop.z01.azurefd.net" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Update.json new file mode 100644 index 000000000000..804dea08badd --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Update.json @@ -0,0 +1,52 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpointUpdateProperties": { + "tags": {}, + "properties": { + "enabledState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/afdendpoints", + "tags": {}, + "location": "global", + "properties": { + "hostName": "endpoint1-ezh7ddcmguaeajfu.z01.azureedge.net", + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted", + "autoGeneratedDomainNameLabelScope": "TenantReuse" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/afdendpoints", + "tags": {}, + "location": "global", + "properties": { + "hostName": "endpoint1-abcdefghijklmnop.z01.azurefd.net", + "enabledState": "Enabled", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted", + "autoGeneratedDomainNameLabelScope": "TenantReuse" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ValidateCustomDomain.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ValidateCustomDomain.json new file mode 100644 index 000000000000..fc33a86b489e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_ValidateCustomDomain.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainProperties": { + "hostName": "www.someDomain.com" + } + }, + "responses": { + "200": { + "body": { + "customDomainValidated": true, + "message": null, + "reason": null + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Create.json new file mode 100644 index 000000000000..71874ed793ef --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Create.json @@ -0,0 +1,96 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1", + "originGroup": { + "properties": { + "loadBalancingSettings": { + "sampleSize": 3, + "successfulSamplesRequired": 3, + "additionalLatencyInMilliseconds": 1000 + }, + "healthProbeSettings": { + "probePath": "/path2", + "probeRequestType": "NotSet", + "probeProtocol": "NotSet", + "probeIntervalInSeconds": 10 + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1", + "type": "Microsoft.Cdn/profiles/origingroups", + "name": "origingroup1", + "properties": { + "loadBalancingSettings": { + "sampleSize": 3, + "successfulSamplesRequired": 3, + "additionalLatencyInMilliseconds": 1000 + }, + "healthProbeSettings": { + "probePath": "/path1", + "probeRequestType": "HEAD", + "probeProtocol": "Http", + "probeIntervalInSeconds": 10 + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1", + "type": "Microsoft.Cdn/profiles/origingroups", + "name": "origingroup1", + "properties": { + "loadBalancingSettings": { + "sampleSize": 3, + "successfulSamplesRequired": 3, + "additionalLatencyInMilliseconds": 1000 + }, + "healthProbeSettings": { + "probePath": "/path1", + "probeRequestType": "HEAD", + "probeProtocol": "Http", + "probeIntervalInSeconds": 10 + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1", + "type": "Microsoft.Cdn/profiles/origingroups", + "name": "origingroup1", + "properties": { + "loadBalancingSettings": { + "sampleSize": 3, + "successfulSamplesRequired": 3, + "additionalLatencyInMilliseconds": 1000 + }, + "healthProbeSettings": { + "probePath": "/path1", + "probeRequestType": "HEAD", + "probeProtocol": "Http", + "probeIntervalInSeconds": 10 + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Creating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Delete.json new file mode 100644 index 000000000000..9994350e0810 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Get.json new file mode 100644 index 000000000000..fab808ff4229 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Get.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1", + "type": "Microsoft.Cdn/profiles/origingroups", + "name": "origingroup1", + "properties": { + "loadBalancingSettings": { + "sampleSize": 3, + "successfulSamplesRequired": 3, + "additionalLatencyInMilliseconds": 1000 + }, + "healthProbeSettings": { + "probePath": "/path1", + "probeRequestType": "HEAD", + "probeProtocol": "Http", + "probeIntervalInSeconds": 10 + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_ListByProfile.json new file mode 100644 index 000000000000..270f398bcaa6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_ListByProfile.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1", + "type": "Microsoft.Cdn/profiles/origingroups", + "name": "origingroup1", + "properties": { + "loadBalancingSettings": { + "sampleSize": 3, + "successfulSamplesRequired": 3, + "additionalLatencyInMilliseconds": 1000 + }, + "healthProbeSettings": { + "probePath": "/path1", + "probeRequestType": "HEAD", + "probeProtocol": "Http", + "probeIntervalInSeconds": 10 + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_ListResourceUsage.json new file mode 100644 index 000000000000..db54dc1024e8 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_ListResourceUsage.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 0, + "limit": 25, + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1/origins/origin1", + "name": { + "value": "origin", + "localizedValue": "origin" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Update.json new file mode 100644 index 000000000000..b9c308a0afec --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Update.json @@ -0,0 +1,76 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1", + "originGroupUpdateProperties": { + "properties": { + "loadBalancingSettings": { + "sampleSize": 3, + "successfulSamplesRequired": 3, + "additionalLatencyInMilliseconds": 1000 + }, + "healthProbeSettings": { + "probePath": "/path2", + "probeRequestType": "NotSet", + "probeProtocol": "NotSet", + "probeIntervalInSeconds": 10 + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5 + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1", + "type": "Microsoft.Cdn/profiles/origingroups", + "name": "origingroup1", + "properties": { + "loadBalancingSettings": { + "sampleSize": 3, + "successfulSamplesRequired": 3, + "additionalLatencyInMilliseconds": 1000 + }, + "healthProbeSettings": { + "probePath": "/path1", + "probeRequestType": "HEAD", + "probeProtocol": "Http", + "probeIntervalInSeconds": 10 + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1", + "type": "Microsoft.Cdn/profiles/origingroups", + "name": "origingroup1", + "properties": { + "loadBalancingSettings": { + "sampleSize": 3, + "successfulSamplesRequired": 3, + "additionalLatencyInMilliseconds": 1000 + }, + "healthProbeSettings": { + "probePath": "/path1", + "probeRequestType": "HEAD", + "probeProtocol": "Http", + "probeIntervalInSeconds": 10 + }, + "trafficRestorationTimeToHealedOrNewEndpointsInMinutes": 5, + "provisioningState": "Updating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Create.json new file mode 100644 index 000000000000..7e4fd751cb72 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Create.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1", + "originName": "origin1", + "origin": { + "properties": { + "hostName": "host1.blob.core.windows.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "host1.foo.com", + "enabledState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1/origins/origin1", + "type": "Microsoft.Cdn/profiles/origingroups/origins", + "name": "origin1", + "properties": { + "hostName": "host1.blob.core.windows.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "host1.foo.com", + "priority": null, + "weight": null, + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted", + "originGroupName": "origingroup1", + "sharedPrivateLinkResource": null, + "enforceCertificateNameCheck": true + } + } + }, + "201": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1/origins/origin1", + "type": "Microsoft.Cdn/profiles/origingroups/origins", + "name": "origin1", + "properties": { + "hostName": "host1.blob.core.windows.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "host1.foo.com", + "priority": null, + "weight": null, + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted", + "originGroupName": "origingroup1", + "sharedPrivateLinkResource": null, + "enforceCertificateNameCheck": true + } + } + }, + "202": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1/origins/origin1", + "type": "Microsoft.Cdn/profiles/origingroups/origins", + "name": "origin1", + "properties": { + "hostName": "host1.blob.core.windows.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "host1.foo.com", + "priority": null, + "weight": null, + "enabledState": "Enabled", + "provisioningState": "Creating", + "deploymentStatus": "NotStarted", + "originGroupName": "origingroup1", + "sharedPrivateLinkResource": null, + "enforceCertificateNameCheck": true + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Delete.json new file mode 100644 index 000000000000..d048a0e926c6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1", + "originName": "origin1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Get.json new file mode 100644 index 000000000000..fe60e3b281e8 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1", + "originName": "origin1" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1/origins/origin1", + "type": "Microsoft.Cdn/profiles/origingroups/origins", + "name": "origin1", + "properties": { + "hostName": "host1.blob.core.windows.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "host1.foo.com", + "priority": null, + "weight": null, + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted", + "originGroupName": "origingroup1", + "sharedPrivateLinkResource": null, + "enforceCertificateNameCheck": true + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_ListByOriginGroup.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_ListByOriginGroup.json new file mode 100644 index 000000000000..3b263a7fff95 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_ListByOriginGroup.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1/origins/origin1", + "type": "Microsoft.Cdn/profiles/origingroups/origins", + "name": "origin1", + "properties": { + "hostName": "host1.blob.core.windows.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "host1.foo.com", + "priority": null, + "weight": null, + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted", + "originGroupName": "origingroup1", + "sharedPrivateLinkResource": null, + "enforceCertificateNameCheck": true + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Update.json new file mode 100644 index 000000000000..896821555715 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Update.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "originGroupName": "origingroup1", + "originName": "origin1", + "originUpdateProperties": { + "properties": { + "hostName": "host1.blob.core.windows.net", + "httpPort": 80, + "httpsPort": 443, + "enabledState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1/origins/origin1", + "type": "Microsoft.Cdn/profiles/origingroups/origins", + "name": "origin1", + "properties": { + "hostName": "host1.blob.core.windows.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "host1.foo.com", + "priority": null, + "weight": null, + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted", + "originGroupName": "origingroup1", + "sharedPrivateLinkResource": null, + "enforceCertificateNameCheck": true + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1/origins/origin1", + "type": "Microsoft.Cdn/profiles/origingroups/origins", + "name": "origin1", + "properties": { + "hostName": "host1.blob.core.windows.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "host1.foo.com", + "priority": null, + "weight": null, + "enabledState": "Enabled", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted", + "originGroupName": "origingroup1", + "sharedPrivateLinkResource": null, + "enforceCertificateNameCheck": true + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_CheckHostNameAvailability.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_CheckHostNameAvailability.json new file mode 100644 index 000000000000..2d215635cde7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_CheckHostNameAvailability.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "checkHostNameAvailabilityInput": { + "hostName": "www.someDomain.net" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Conflict", + "message": "The hostname 'www.someDomain.net' is already owned by another profile." + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ListResourceUsage.json new file mode 100644 index 000000000000..8ef6893f4e84 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ListResourceUsage.json @@ -0,0 +1,26 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 0, + "limit": 25, + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1", + "name": { + "value": "afdendpoint", + "localizedValue": "afdendpoint" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckEndpointNameAvailability.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckEndpointNameAvailability.json new file mode 100644 index 000000000000..07a36efc243f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckEndpointNameAvailability.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "myResourceGroup", + "checkEndpointNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Cdn/Profiles/AfdEndpoints", + "autoGeneratedDomainNameLabelScope": "TenantReuse" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available", + "availableHostname": "" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckNameAvailability.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckNameAvailability.json new file mode 100644 index 000000000000..023bacbdc6be --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckNameAvailability.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Cdn/Profiles/Endpoints" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckNameAvailabilityWithSubscription.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckNameAvailabilityWithSubscription.json new file mode 100644 index 000000000000..023d39909015 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CheckNameAvailabilityWithSubscription.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "checkNameAvailabilityInput": { + "name": "sampleName", + "type": "Microsoft.Cdn/Profiles/Endpoints" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": false, + "reason": "Name is already in use", + "message": "Name not available" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Create.json new file mode 100644 index 000000000000..0b48aedaba34 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Create.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customDomainProperties": { + "properties": { + "hostName": "www.someDomain.net" + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + }, + "201": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Delete.json new file mode 100644 index 000000000000..61101285b9a2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Delete.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net" + }, + "responses": { + "200": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + }, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_DisableCustomHttps.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_DisableCustomHttps.json new file mode 100644 index 000000000000..6c4f886939c2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_DisableCustomHttps.json @@ -0,0 +1,45 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net" + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Disabled", + "customHttpsProvisioningSubstate": "CertificateDeleted", + "validationData": null + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + }, + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json new file mode 100644 index 000000000000..32ee36534949 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "MinimumTLSVersion": "TLS12", + "certificateSource": "AzureKeyVault", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "typeName": "KeyVaultCertificateSourceParameters", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "vaultName": "kv", + "secretName": "secret1", + "secretVersion": "00000000-0000-0000-0000-000000000000", + "updateRule": "NoAction", + "deleteRule": "NoAction" + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabled", + "customHttpsProvisioningSubstate": "CertificateDeployed", + "validationData": "validationdata" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + }, + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": "validationdata" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json new file mode 100644 index 000000000000..86be0082219d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json @@ -0,0 +1,54 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net", + "customHttpsParameters": { + "MinimumTLSVersion": "TLS12", + "certificateSource": "Cdn", + "protocolType": "ServerNameIndication", + "certificateSourceParameters": { + "typeName": "CdnCertificateSourceParameters", + "certificateType": "Shared" + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabled", + "customHttpsProvisioningSubstate": "CertificateDeployed", + "validationData": "validationdata" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + }, + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Enabling", + "customHttpsProvisioningSubstate": "PendingDomainControlValidationREquestApproval", + "validationData": "validationdata" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Get.json new file mode 100644 index 000000000000..f60c02f28229 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Get.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainName": "www-someDomain-net" + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Disabled", + "customHttpsProvisioningSubstate": "None", + "validationData": null + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_ListByEndpoint.json new file mode 100644 index 000000000000..a29f7a30016d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_ListByEndpoint.json @@ -0,0 +1,30 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/customdomains", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "customHttpsProvisioningState": "Disabled", + "customHttpsProvisioningSubstate": "None", + "validationData": null + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/EdgeNodes_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/EdgeNodes_List.json new file mode 100644 index 000000000000..9e408f23bf5e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/EdgeNodes_List.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Standard_Verizon", + "id": "/providers/Microsoft.Cdn/edgenodes/Standard_Verizon", + "type": "Microsoft.Cdn/edgenodes", + "properties": { + "ipAddressGroups": [ + { + "deliveryRegion": "All", + "ipv4Addresses": [ + { + "baseIpAddress": "192.229.176.0", + "prefixLength": 24 + }, + { + "baseIpAddress": "180.240.184.128", + "prefixLength": 25 + }, + { + "baseIpAddress": "152.195.27.0", + "prefixLength": 24 + } + ], + "ipv6Addresses": [ + { + "baseIpAddress": "2606:2800:60f2::", + "prefixLength": 48 + }, + { + "baseIpAddress": "2606:2800:700c::", + "prefixLength": 48 + } + ] + } + ] + } + }, + { + "name": "Premium_Verizon", + "id": "/providers/Microsoft.Cdn/edgenodes/Premium_Verizon", + "type": "Microsoft.Cdn/edgenodes", + "properties": { + "ipAddressGroups": [ + { + "deliveryRegion": "All", + "ipv4Addresses": [ + { + "baseIpAddress": "192.229.176.0", + "prefixLength": 24 + }, + { + "baseIpAddress": "152.195.27.0", + "prefixLength": 24 + } + ], + "ipv6Addresses": [ + { + "baseIpAddress": "2606:2800:60f2::", + "prefixLength": 48 + }, + { + "baseIpAddress": "2606:2800:700c::", + "prefixLength": 48 + } + ] + } + ] + } + }, + { + "name": "Custom_Verizon", + "id": "/providers/Microsoft.Cdn/edgenodes/Custom_Verizon", + "type": "Microsoft.Cdn/edgenodes", + "properties": { + "ipAddressGroups": [ + { + "deliveryRegion": "All", + "ipv4Addresses": [ + { + "baseIpAddress": "192.229.176.0", + "prefixLength": 24 + }, + { + "baseIpAddress": "2606:2800:420b::", + "prefixLength": 48 + }, + { + "baseIpAddress": "2606:2800:700c::", + "prefixLength": 48 + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Create.json new file mode 100644 index 000000000000..7d247d9c0b61 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Create.json @@ -0,0 +1,543 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpoint": { + "location": "WestUs", + "tags": { + "key1": "value1" + }, + "properties": { + "originHostHeader": "www.bing.com", + "originPath": "/photos", + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + }, + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "typeName": "DeliveryRuleRemoteAddressConditionParameters" + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "typeName": "DeliveryRuleCacheExpirationActionParameters", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*", + "typeName": "DeliveryRuleHeaderActionParameters" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip", + "typeName": "DeliveryRuleHeaderActionParameters" + } + } + ] + } + ] + }, + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "www.someDomain1.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain1.net", + "priority": 1, + "weight": 50, + "enabled": true + } + }, + { + "name": "origin2", + "properties": { + "hostName": "www.someDomain2.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + }, + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint4899.azureedge-test.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "originPath": "/photos", + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + }, + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "www.someDomain1.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain1.net", + "priority": 1, + "weight": 50, + "enabled": true + } + }, + { + "name": "origin2", + "properties": { + "hostName": "www.someDomain2.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + }, + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ], + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "typeName": "DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "typeName": "DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + } + } + } + }, + "201": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint4899.azureedge-test.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "originPath": "/photos", + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + }, + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "www.someDomain1.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain1.net", + "priority": 1, + "weight": 50, + "enabled": true + } + }, + { + "name": "origin2", + "properties": { + "hostName": "www.someDomain2.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + }, + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ], + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "typeName": "DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "typeName": "DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + } + } + } + }, + "202": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint4899.azureedge-test.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "BypassCaching", + "originPath": "/photos", + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + }, + "origins": [ + { + "name": "origin1", + "properties": { + "hostName": "www.someDomain1.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain1.net", + "priority": 1, + "weight": 50, + "enabled": true + } + }, + { + "name": "origin2", + "properties": { + "hostName": "www.someDomain2.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + }, + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ], + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "deliveryPolicy": { + "description": "Test description for a policy.", + "rules": [ + { + "name": "rule1", + "order": 1, + "conditions": [ + { + "name": "RemoteAddress", + "parameters": { + "typeName": "DeliveryRuleRemoteAddressConditionParameters", + "operator": "IPMatch", + "negateCondition": true, + "matchValues": [ + "192.168.1.0/24", + "10.0.0.0/24" + ], + "transforms": [] + } + } + ], + "actions": [ + { + "name": "CacheExpiration", + "parameters": { + "typeName": "DeliveryRuleCacheExpirationActionParameters", + "cacheBehavior": "Override", + "cacheDuration": "10:10:09", + "cacheType": "All" + } + }, + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Access-Control-Allow-Origin", + "value": "*" + } + }, + { + "name": "ModifyRequestHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "Accept-Encoding", + "value": "gzip" + } + } + ] + } + ] + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Delete.json new file mode 100644 index 000000000000..d7e0307f4fcb --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Get.json new file mode 100644 index 000000000000..35bd83ff6ac6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Get.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": {}, + "location": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Running", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-bing-com" + } + ] + } + } + ], + "customDomains": [ + { + "name": "www-someDomain-net", + "properties": { + "hostName": "www.someDomain.Net", + "validationData": null + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ListByProfile.json new file mode 100644 index 000000000000..54f4e60d8231 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ListByProfile.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": {}, + "location": "CentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Running", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-bing-com" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ], + "customDomains": [ + { + "name": "www-someDomain-net", + "properties": { + "hostName": "www.someDomain.Net", + "validationData": null + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [], + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + } + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ListResourceUsage.json new file mode 100644 index 000000000000..ca462f02b484 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ListResourceUsage.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "customdomain", + "unit": "count", + "currentValue": 1, + "limit": 20 + }, + { + "resourceType": "geofilter", + "unit": "count", + "currentValue": 0, + "limit": 25 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_LoadContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_LoadContent.json new file mode 100644 index 000000000000..b139039ea8c7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_LoadContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_PurgeContent.json new file mode 100644 index 000000000000..b139039ea8c7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_PurgeContent.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "contentFilePaths": { + "contentPaths": [ + "/folder1" + ] + } + }, + "responses": { + "200": {}, + "202": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Start.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Start.json new file mode 100644 index 000000000000..1d68940d52c6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Start.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Starting", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [] + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Starting", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Stop.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Stop.json new file mode 100644 index 000000000000..4686a66bbfdf --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Stop.json @@ -0,0 +1,86 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Stopping", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [] + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "endpoint4899", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "kay1": "value1" + }, + "location": "WestUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": "www.bing.com", + "provisioningState": "Succeeded", + "resourceState": "Stopping", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "NotSet", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443 + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": "DynamicSiteAcceleration", + "probePath": "/image", + "geoFilters": [] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Update.json new file mode 100644 index 000000000000..b65fee2187e3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Update.json @@ -0,0 +1,141 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "endpointUpdateProperties": { + "tags": { + "additionalProperties": "Tag1" + } + } + }, + "responses": { + "200": { + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": null, + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "IgnoreQueryString", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-bing-com" + } + ] + } + } + ], + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + }, + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": null, + "probePath": null, + "geoFilters": [] + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "endpoint1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", + "type": "Microsoft.Cdn/profiles/endpoints", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "WestCentralUs", + "properties": { + "hostName": "endpoint1.azureedge.net", + "originHostHeader": null, + "provisioningState": "Creating", + "resourceState": "Creating", + "isHttpAllowed": true, + "isHttpsAllowed": true, + "queryStringCachingBehavior": "IgnoreQueryString", + "originPath": null, + "origins": [ + { + "name": "www-bing-com", + "properties": { + "hostName": "www.bing.com", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain2.net", + "priority": 2, + "weight": 50, + "enabled": true + } + } + ], + "originGroups": [ + { + "name": "originGroup1", + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-bing-com" + } + ] + } + } + ], + "contentTypesToCompress": [], + "isCompressionEnabled": false, + "optimizationType": null, + "probePath": null, + "geoFilters": [], + "defaultOriginGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1" + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ValidateCustomDomain.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ValidateCustomDomain.json new file mode 100644 index 000000000000..fc33a86b489e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_ValidateCustomDomain.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "customDomainProperties": { + "hostName": "www.someDomain.com" + } + }, + "responses": { + "200": { + "body": { + "customDomainValidated": true, + "message": null, + "reason": null + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsLocations.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsLocations.json new file mode 100644 index 000000000000..565f89c0e7c8 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsLocations.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "metrics": "clientRequestCount", + "granularity": "PT5M", + "groupBy": "httpStatusCode", + "dateTimeBegin": "2020-11-04T05:00:00.000Z", + "dateTimeEnd": "2020-11-04T06:00:00.000Z" + }, + "responses": { + "200": { + "body": { + "continents": [ + { + "id": "africa" + }, + { + "id": "antarctica" + }, + { + "id": "asia" + }, + { + "id": "europe" + }, + { + "id": "northAmerica" + }, + { + "id": "oceania" + }, + { + "id": "southAmerica" + } + ], + "countryOrRegions": [ + { + "id": "dz", + "continentId": "africa" + }, + { + "id": "ao", + "continentId": "africa" + }, + { + "id": "bw", + "continentId": "africa" + }, + { + "id": "bi", + "continentId": "africa" + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsMetrics.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsMetrics.json new file mode 100644 index 000000000000..54b033bc8aa0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsMetrics.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "metrics": [ + "clientRequestCount" + ], + "granularity": "PT5M", + "groupBy": [ + "protocol" + ], + "dateTimeBegin": "2020-11-04T04:30:00.000Z", + "dateTimeEnd": "2020-11-04T05:00:00.000Z", + "customDomains": [ + "customdomain1.azurecdn.net", + "customdomain2.azurecdn.net" + ], + "protocols": [ + "https" + ] + }, + "responses": { + "200": { + "body": { + "dateTimeBegin": "2020-11-04T12:30:27.554+08:00", + "dateTimeEnd": "2020-11-04T13:00:27.554+08:00", + "granularity": "PT5M", + "series": [ + { + "metric": "clientRequestCount", + "unit": "count", + "groups": [ + { + "name": "protocol", + "value": "https" + } + ], + "data": [ + { + "dateTime": "2020-11-04T04:35:00+00:00", + "value": 4250 + }, + { + "dateTime": "2020-11-04T04:40:00+00:00", + "value": 3120 + }, + { + "dateTime": "2020-11-04T04:45:00+00:00", + "value": 2221 + }, + { + "dateTime": "2020-11-04T04:50:00+00:00", + "value": 2466 + }, + { + "dateTime": "2020-11-04T04:55:00+00:00", + "value": 2654 + }, + { + "dateTime": "2020-11-04T05:00:00+00:00", + "value": 3565 + } + ] + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsRankings.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsRankings.json new file mode 100644 index 000000000000..740b03006f8d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsRankings.json @@ -0,0 +1,82 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "rankings": [ + "url" + ], + "metrics": [ + "clientRequestCount" + ], + "maxRanking": "5", + "dateTimeBegin": "2020-11-04T06:49:27.554Z", + "dateTimeEnd": "2020-11-04T09:49:27.554Z" + }, + "responses": { + "200": { + "body": { + "dateTimeBegin": "2020-11-04T14:49:27.554+08:00", + "dateTimeEnd": "2020-11-04T17:49:27.554+08:00", + "tables": [ + { + "ranking": "url", + "data": [ + { + "name": "https://testdomain.com/favicon.png", + "metrics": [ + { + "metric": "clientRequestCount", + "value": 2336, + "percentage": 8.28133862733976 + } + ] + }, + { + "name": "https://testdomain.com/js/app.js", + "metrics": [ + { + "metric": "clientRequestCount", + "value": 2140, + "percentage": 7.586500283607488 + } + ] + }, + { + "name": "https://testdomain.com/js/lang/en.js", + "metrics": [ + { + "metric": "clientRequestCount", + "value": 1536, + "percentage": 5.445263754963131 + } + ] + }, + { + "name": "https://testdomain.com/js/lib.js", + "metrics": [ + { + "metric": "clientRequestCount", + "value": 1480, + "percentage": 5.246738513896767 + } + ] + }, + { + "name": "https://cdn.exam.net/css/lib.css", + "metrics": [ + { + "metric": "clientRequestCount", + "value": 1452, + "percentage": 5.147475893363584 + } + ] + } + ] + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsResources.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsResources.json new file mode 100644 index 000000000000..d57002077bc0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetLogAnalyticsResources.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "endpoints": [ + { + "id": "endpoint1", + "name": "endpoint1.azureedge.net", + "history": false, + "customDomains": [ + { + "id": "customdomain1.azurecdn.net", + "name": "customdomain1.azurecdn.net", + "endpointId": "enbdpiont1", + "history": true + }, + { + "id": "customdomain2.azurecdn.net", + "name": "customdomain2.azurecdn.net", + "endpointId": null, + "history": true + } + ] + } + ], + "customDomains": [ + { + "id": "customdomain1.azurecdn.net", + "name": "customdomain1.azurecdn.net", + "endpointId": null, + "history": true + }, + { + "id": "customdomain2.azurecdn.net", + "name": "customdomain2.azurecdn.net", + "endpointId": null, + "history": true + }, + { + "id": "customdomain3.azurecdn.net", + "name": "customdomain3.azurecdn.net", + "endpointId": null, + "history": true + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetWafLogAnalyticsMetrics.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetWafLogAnalyticsMetrics.json new file mode 100644 index 000000000000..83f546d829e5 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetWafLogAnalyticsMetrics.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "metrics": [ + "clientRequestCount" + ], + "dateTimeBegin": "2020-11-04T06:49:27.554Z", + "dateTimeEnd": "2020-11-04T09:49:27.554Z", + "actions": [ + "block", + "log" + ], + "granularity": "PT5M" + }, + "responses": { + "200": { + "body": { + "dateTimeBegin": "2020-11-04T14:30:27.554+08:00", + "dateTimeEnd": "2020-11-04T17:00:27.554+08:00", + "granularity": "PT5M", + "series": [ + { + "metric": "clientRequestCount", + "unit": "count", + "groups": [], + "data": [ + { + "dateTime": "2020-11-04T07:05:00+00:00", + "value": 2 + }, + { + "dateTime": "2020-11-04T07:10:00+00:00", + "value": 32 + }, + { + "dateTime": "2020-11-04T07:15:00+00:00", + "value": 31 + }, + { + "dateTime": "2020-11-04T07:20:00+00:00", + "value": 63 + }, + { + "dateTime": "2020-11-04T07:25:00+00:00", + "value": 50 + }, + { + "dateTime": "2020-11-04T07:30:00+00:00", + "value": 12 + }, + { + "dateTime": "2020-11-04T07:35:00+00:00", + "value": 8 + }, + { + "dateTime": "2020-11-04T07:40:00+00:00", + "value": 21 + }, + { + "dateTime": "2020-11-04T07:45:00+00:00", + "value": 30 + }, + { + "dateTime": "2020-11-04T07:50:00+00:00", + "value": 18 + }, + { + "dateTime": "2020-11-04T07:55:00+00:00", + "value": 28 + }, + { + "dateTime": "2020-11-04T08:00:00+00:00", + "value": 3 + }, + { + "dateTime": "2020-11-04T08:05:00+00:00", + "value": 58 + }, + { + "dateTime": "2020-11-04T08:10:00+00:00", + "value": 42 + }, + { + "dateTime": "2020-11-04T08:15:00+00:00", + "value": 17 + }, + { + "dateTime": "2020-11-04T08:20:00+00:00", + "value": 21 + }, + { + "dateTime": "2020-11-04T08:25:00+00:00", + "value": 41 + }, + { + "dateTime": "2020-11-04T08:30:00+00:00", + "value": 8 + }, + { + "dateTime": "2020-11-04T08:35:00+00:00", + "value": 15 + }, + { + "dateTime": "2020-11-04T08:40:00+00:00", + "value": 25 + }, + { + "dateTime": "2020-11-04T08:45:00+00:00", + "value": 13 + }, + { + "dateTime": "2020-11-04T08:50:00+00:00", + "value": 17 + }, + { + "dateTime": "2020-11-04T08:55:00+00:00", + "value": 29 + }, + { + "dateTime": "2020-11-04T09:00:00+00:00", + "value": 17 + } + ] + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetWafLogAnalyticsRankings.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetWafLogAnalyticsRankings.json new file mode 100644 index 000000000000..b07fcf3cc0a3 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/LogAnalytics_GetWafLogAnalyticsRankings.json @@ -0,0 +1,42 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "rankings": [ + "ruleId" + ], + "metrics": [ + "clientRequestCount" + ], + "maxRanking": "5", + "dateTimeBegin": "2020-11-04T06:49:27.554Z", + "dateTimeEnd": "2020-11-04T09:49:27.554Z" + }, + "responses": { + "200": { + "body": { + "dateTimeBegin": "2020-11-04T14:49:27.554+08:00", + "dateTimeEnd": "2020-11-04T17:49:27.554+08:00", + "groups": [ + "ruleId" + ], + "data": [ + { + "groupValues": [ + "BlockRateLimit" + ], + "metrics": [ + { + "metric": "clientRequestCount", + "value": 1268, + "percentage": 0 + } + ] + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Operations_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..0034ba2e5265 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Operations_List.json @@ -0,0 +1,93 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Cdn/register/action", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Microsoft.Cdn Resource Provider", + "operation": "Registers the Microsoft.Cdn Resource Provider" + } + }, + { + "name": "Microsoft.Cdn/edgenodes/read", + "display": { + "provider": "Microsoft.Cdn", + "resource": "EdgeNode", + "operation": "read" + } + }, + { + "name": "Microsoft.Cdn/edgenodes/write", + "display": { + "provider": "Microsoft.Cdn", + "resource": "EdgeNode", + "operation": "write" + } + }, + { + "name": "Microsoft.Cdn/edgenodes/delete", + "display": { + "provider": "Microsoft.Cdn", + "resource": "EdgeNode", + "operation": "delete" + } + }, + { + "name": "Microsoft.Cdn/profiles/read", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "read" + } + }, + { + "name": "Microsoft.Cdn/profiles/write", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "write" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/write", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "write" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/delete", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "delete" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/CheckResourceUsage/action", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "CheckResourceUsage" + } + }, + { + "name": "Microsoft.Cdn/operationresults/profileresults/GenerateSsoUri/action", + "display": { + "provider": "Microsoft.Cdn", + "resource": "Profile", + "operation": "GenerateSsoUri" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Create.json new file mode 100644 index 000000000000..c6f032161451 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Create.json @@ -0,0 +1,109 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "origingroup1", + "originGroup": { + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "origingroup1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", + "type": "Microsoft.Cdn/profiles/endpoints/origingroups", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + }, + "201": { + "body": { + "name": "origingroup1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", + "type": "Microsoft.Cdn/profiles/endpoints/origingroups", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + }, + "202": { + "body": { + "name": "originGroup1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", + "type": "Microsoft.Cdn/profiles/endpoints/origingroups", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Delete.json new file mode 100644 index 000000000000..0e9054f1b98c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "originGroup1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Get.json new file mode 100644 index 000000000000..94f794035359 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Get.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "originGroup1" + }, + "responses": { + "200": { + "body": { + "name": "origingroup1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", + "type": "Microsoft.Cdn/profiles/endpoints/origingroups", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpAndHttpErrors", + "responseBasedFailoverThresholdPercentage": 10, + "httpErrorRanges": [ + { + "begin": 500, + "end": 505 + } + ] + } + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_ListByEndpoint.json new file mode 100644 index 000000000000..a57ebc4765e6 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_ListByEndpoint.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "origingroup1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", + "type": "Microsoft.Cdn/profiles/endpoints/origingroups", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin1" + } + ], + "responseBasedOriginErrorDetectionSettings": { + "responseBasedDetectedErrorTypes": "TcpErrorsOnly", + "responseBasedFailoverThresholdPercentage": 10 + } + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Update.json new file mode 100644 index 000000000000..438bba22d58b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Update.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originGroupName": "originGroup1", + "originGroupUpdateProperties": { + "properties": { + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ] + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "healthProbeSettings": { + "probePath": "/health.aspx", + "probeRequestType": "GET", + "probeProtocol": "Http", + "probeIntervalInSeconds": 120 + }, + "origins": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/origin2" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Create.json new file mode 100644 index 000000000000..c65709c91948 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Create.json @@ -0,0 +1,92 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net", + "origin": { + "properties": { + "hostName": "www.someDomain.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true, + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link" + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true, + "privateEndpointStatus": "Pending", + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link" + } + } + }, + "201": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true, + "privateEndpointStatus": "Pending", + "privateLinkApprovalMessage": "", + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus" + } + } + }, + "202": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 80, + "httpsPort": 443, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true, + "privateEndpointStatus": "Pending", + "privateLinkApprovalMessage": "", + "privateLinkResourceId": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.Network/privateLinkServices/pls1", + "privateLinkLocation": "eastus" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Delete.json new file mode 100644 index 000000000000..8594ce1cca62 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "origin1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Get.json new file mode 100644 index 000000000000..77748fdb329c --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net" + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": null, + "httpsPort": null, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true, + "privateEndpointStatus": "Pending", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_ListByEndpoint.json new file mode 100644 index 000000000000..af9656ab9a87 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_ListByEndpoint.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": null, + "httpsPort": null, + "originHostHeader": "www.someDomain.net", + "priority": 1, + "weight": 50, + "enabled": true, + "privateEndpointStatus": "Pending", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Update.json new file mode 100644 index 000000000000..b92c299a3684 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Update.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "originName": "www-someDomain-net", + "originUpdateProperties": { + "properties": { + "httpPort": 42, + "httpsPort": 43, + "originHostHeader": "www.someDomain2.net", + "priority": 1, + "weight": 50, + "enabled": true, + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice" + } + } + }, + "responses": { + "200": { + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 42, + "httpsPort": 43, + "originHostHeader": "www.someDomain2.net", + "priority": 1, + "weight": 50, + "enabled": true, + "privateEndpointStatus": "Pending", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "www-someDomain-net", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", + "type": "Microsoft.Cdn/profiles/endpoints/origins", + "properties": { + "provisioningState": "Succeeded", + "resourceState": "Active", + "hostName": "www.someDomain.net", + "httpPort": 42, + "httpsPort": 43, + "originHostHeader": "www.someDomain2.net", + "priority": 1, + "weight": 50, + "enabled": true, + "privateEndpointStatus": "Pending", + "privateLinkApprovalMessage": "Please approve the connection request for this Private Link", + "privateLinkAlias": "APPSERVER.d84e61f0-0870-4d24-9746-7438fa0019d1.westus2.azure.privatelinkservice" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_CanMigrate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_CanMigrate.json new file mode 100644 index 000000000000..70ae9c67e84e --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_CanMigrate.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "canMigrateParameters": { + "classicResourceReference": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoors/frontdoorname" + } + } + }, + "responses": { + "200": { + "body": { + "canMigrate": true, + "defaultSku": "Standard_AzureFrontDoor", + "errors": null + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Create.json new file mode 100644 index 000000000000..ea68d118875b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Create.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profile": { + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + } + } + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "kind": "frontdoor", + "properties": { + "originResponseTimeoutSeconds": 30, + "frontDoorId": "3b4682da-b3e2-47a1-96ca-08ab3cb7294e", + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + }, + "201": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "kind": "frontdoor", + "properties": { + "originResponseTimeoutSeconds": 30, + "frontDoorId": "3b4682da-b3e2-47a1-96ca-08ab3cb7294e", + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + }, + "202": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "kind": "frontdoor", + "properties": { + "originResponseTimeoutSeconds": 30, + "frontDoorId": "3b4682da-b3e2-47a1-96ca-08ab3cb7294e", + "provisioningState": "Creating", + "resourceState": "Creating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Delete.json new file mode 100644 index 000000000000..e632cd42205a --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_GenerateSsoUri.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_GenerateSsoUri.json new file mode 100644 index 000000000000..f9aaa00af472 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_GenerateSsoUri.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "ssoUriValue": "https://someuri.com" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Get.json new file mode 100644 index 000000000000..84a33b4f6a67 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "kind": "frontdoor", + "properties": { + "originResponseTimeoutSeconds": 30, + "frontDoorId": "3b4682da-b3e2-47a1-96ca-08ab3cb7294e", + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_List.json new file mode 100644 index 000000000000..f9f69a1ad69f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_List.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG1/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "kind": "frontdoor", + "properties": { + "originResponseTimeoutSeconds": 30, + "frontDoorId": "3b4682da-b3e2-47a1-96ca-08ab3cb7294e", + "provisioningState": "Succeeded", + "resourceState": "Active" + } + }, + { + "name": "profile2", + "id": "/subscriptions/subid/resourcegroups/RG1/providers/Microsoft.Cdn/profiles/profile2", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "kind": "frontdoor", + "properties": { + "originResponseTimeoutSeconds": 30, + "frontDoorId": "3b4682da-b3e2-47a1-96ca-08ab3cb7294e", + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListByResourceGroup.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListByResourceGroup.json new file mode 100644 index 000000000000..989fc2c2cef7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListByResourceGroup.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "kind": "frontdoor", + "properties": { + "originResponseTimeoutSeconds": 30, + "frontDoorId": "3b4682da-b3e2-47a1-96ca-08ab3cb7294e", + "provisioningState": "Succeeded", + "resourceState": "Active" + } + }, + { + "name": "profile2", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile2", + "type": "Microsoft.Cdn/profiles", + "tags": {}, + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "kind": "frontdoor", + "properties": { + "originResponseTimeoutSeconds": 30, + "frontDoorId": "3b4682da-b3e2-47a1-96ca-08ab3cb7294e", + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListResourceUsage.json new file mode 100644 index 000000000000..d124535ea845 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListResourceUsage.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "endpoint", + "unit": "count", + "currentValue": 0, + "limit": 25 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListSupportedOptimizationTypes.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListSupportedOptimizationTypes.json new file mode 100644 index 000000000000..5c9e097808af --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_ListSupportedOptimizationTypes.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "supportedOptimizationTypes": [ + "GeneralWebDelivery", + "DynamicSiteAcceleration" + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json new file mode 100644 index 000000000000..b83e6d2a2699 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "migrationParameters": { + "sku": { + "name": "Standard_AzureFrontDoor" + }, + "classicResourceReference": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoors/frontdoorname" + }, + "profileName": "profile1" + } + }, + "responses": { + "200": { + "body": { + "migratedProfileResourceId": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1" + }, + "errors": null + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + }, + "body": { + "migratedProfileResourceId": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1" + }, + "errors": null + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json new file mode 100644 index 000000000000..ef3e1b187607 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2021-06-01", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Update.json new file mode 100644 index 000000000000..3b4b958ff9bb --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Update.json @@ -0,0 +1,60 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profileUpdateParameters": { + "tags": { + "additionalProperties": "Tag1" + } + } + }, + "responses": { + "200": { + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "kind": "frontdoor", + "properties": { + "originResponseTimeoutSeconds": 30, + "frontDoorId": "3b4682da-b3e2-47a1-96ca-08ab3cb7294e", + "provisioningState": "Succeeded", + "resourceState": "Active" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "profile1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "tags": { + "additionalProperties": "Tag1" + }, + "location": "global", + "sku": { + "name": "Premium_AzureFrontDoor" + }, + "kind": "frontdoor", + "properties": { + "originResponseTimeoutSeconds": 30, + "frontDoorId": "3b4682da-b3e2-47a1-96ca-08ab3cb7294e", + "provisioningState": "Updating", + "resourceState": "Active" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/ResourceUsage_List.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/ResourceUsage_List.json new file mode 100644 index 000000000000..fbaefb1ece04 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/ResourceUsage_List.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "resourceType": "profile", + "unit": "count", + "currentValue": 31, + "limit": 200 + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Create.json new file mode 100644 index 000000000000..fcb93e7c3e1d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Create.json @@ -0,0 +1,193 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "routeName": "route1", + "route": { + "properties": { + "customDomains": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/customDomains/domain1" + } + ], + "originGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/originGroups/originGroup1" + }, + "originPath": null, + "ruleSets": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1" + } + ], + "supportedProtocols": [ + "Https", + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "cacheConfiguration": { + "compressionSettings": { + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true + }, + "queryStringCachingBehavior": "IgnoreSpecifiedQueryStrings", + "queryParameters": "querystring=test" + }, + "forwardingProtocol": "MatchRequest", + "linkToDefaultDomain": "Enabled", + "httpsRedirect": "Enabled", + "enabledState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1/routes/route1", + "type": "Microsoft.Cdn/profiles/afdendpoints/routes", + "properties": { + "customDomains": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/customDomains/domain1" + } + ], + "originGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/originGroups/originGroup1" + }, + "originPath": null, + "ruleSets": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1" + } + ], + "supportedProtocols": [ + "Https", + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "cacheConfiguration": { + "compressionSettings": { + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true + }, + "queryStringCachingBehavior": "IgnoreSpecifiedQueryStrings", + "queryParameters": "querystring=test" + }, + "forwardingProtocol": "MatchRequest", + "linkToDefaultDomain": "Enabled", + "httpsRedirect": "Enabled", + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "201": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1/routes/route1", + "type": "Microsoft.Cdn/profiles/afdendpoints/routes", + "properties": { + "customDomains": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/customDomains/domain1" + } + ], + "originGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/originGroups/originGroup1" + }, + "originPath": null, + "ruleSets": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1" + } + ], + "supportedProtocols": [ + "Https", + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "cacheConfiguration": { + "compressionSettings": { + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true + }, + "queryStringCachingBehavior": "IgnoreSpecifiedQueryStrings", + "queryParameters": "querystring=test" + }, + "forwardingProtocol": "MatchRequest", + "linkToDefaultDomain": "Enabled", + "httpsRedirect": "Enabled", + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "202": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1/routes/route1", + "type": "Microsoft.Cdn/profiles/afdendpoints/routes", + "properties": { + "customDomains": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/customDomains/domain1" + } + ], + "originGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/originGroups/originGroup1" + }, + "originPath": null, + "ruleSets": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1" + } + ], + "supportedProtocols": [ + "Https", + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "cacheConfiguration": { + "compressionSettings": { + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true + }, + "queryStringCachingBehavior": "IgnoreSpecifiedQueryStrings", + "queryParameters": "querystring=test" + }, + "forwardingProtocol": "MatchRequest", + "linkToDefaultDomain": "Enabled", + "httpsRedirect": "Enabled", + "enabledState": "Enabled", + "provisioningState": "Creating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Delete.json new file mode 100644 index 000000000000..bc98e52f32f4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "routeName": "route1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Get.json new file mode 100644 index 000000000000..f7f21ff8322f --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Get.json @@ -0,0 +1,59 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "routeName": "route1" + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1/routes/route1", + "type": "Microsoft.Cdn/profiles/afdendpoints/routes", + "properties": { + "customDomains": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/customDomains/domain1" + } + ], + "originGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/originGroups/originGroup1" + }, + "originPath": null, + "ruleSets": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1" + } + ], + "supportedProtocols": [ + "Https", + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "cacheConfiguration": { + "compressionSettings": { + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true + }, + "queryStringCachingBehavior": "IgnoreQueryString", + "queryParameters": null + }, + "forwardingProtocol": "MatchRequest", + "linkToDefaultDomain": "Enabled", + "httpsRedirect": "Enabled", + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_ListByEndpoint.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_ListByEndpoint.json new file mode 100644 index 000000000000..9edf725ddfc2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_ListByEndpoint.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "route1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1/routes/route1", + "type": "Microsoft.Cdn/profiles/afdendpoints/routes", + "properties": { + "customDomains": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/customDomains/domain1" + } + ], + "originGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/originGroups/originGroup1" + }, + "originPath": null, + "ruleSets": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1" + } + ], + "supportedProtocols": [ + "Https", + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "cacheConfiguration": { + "compressionSettings": { + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true + }, + "queryStringCachingBehavior": "IgnoreQueryString", + "queryParameters": null + }, + "forwardingProtocol": "MatchRequest", + "linkToDefaultDomain": "Enabled", + "httpsRedirect": "Enabled", + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Update.json new file mode 100644 index 000000000000..a570082310ec --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Update.json @@ -0,0 +1,148 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "endpointName": "endpoint1", + "routeName": "route1", + "routeUpdateProperties": { + "properties": { + "customDomains": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/customDomains/domain1" + } + ], + "originGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/originGroups/originGroup1" + }, + "originPath": null, + "ruleSets": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1" + } + ], + "supportedProtocols": [ + "Https", + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "cacheConfiguration": { + "compressionSettings": { + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true + }, + "queryStringCachingBehavior": "IgnoreQueryString" + }, + "forwardingProtocol": "MatchRequest", + "linkToDefaultDomain": "Enabled", + "httpsRedirect": "Enabled", + "enabledState": "Enabled" + } + } + }, + "responses": { + "200": { + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1/routes/route1", + "type": "Microsoft.Cdn/profiles/afdendpoints/routes", + "properties": { + "customDomains": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/customDomains/domain1" + } + ], + "originGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/originGroups/originGroup1" + }, + "originPath": null, + "ruleSets": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1" + } + ], + "supportedProtocols": [ + "Https", + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "cacheConfiguration": { + "compressionSettings": { + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true + }, + "queryStringCachingBehavior": "IgnoreQueryString", + "queryParameters": null + }, + "forwardingProtocol": "MatchRequest", + "linkToDefaultDomain": "Enabled", + "httpsRedirect": "Enabled", + "enabledState": "Enabled", + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "route1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1/routes/route1", + "type": "Microsoft.Cdn/profiles/afdendpoints/routes", + "properties": { + "customDomains": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/customDomains/domain1" + } + ], + "originGroup": { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/originGroups/originGroup1" + }, + "originPath": null, + "ruleSets": [ + { + "id": "/subscriptions/subid/resourceGroups/RG/providers/Microsoft.Cdn/profiles/profile1/ruleSets/ruleSet1" + } + ], + "supportedProtocols": [ + "Https", + "Http" + ], + "patternsToMatch": [ + "/*" + ], + "cacheConfiguration": { + "compressionSettings": { + "contentTypesToCompress": [ + "text/html", + "application/octet-stream" + ], + "isCompressionEnabled": true + }, + "queryStringCachingBehavior": "IgnoreQueryString", + "queryParameters": null + }, + "forwardingProtocol": "MatchRequest", + "linkToDefaultDomain": "Enabled", + "httpsRedirect": "Enabled", + "enabledState": "Enabled", + "provisioningState": "Updating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Create.json new file mode 100644 index 000000000000..570b9e8f43bd --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Create.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1" + }, + "responses": { + "200": { + "body": { + "name": "ruleSet1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/rulesets/ruleSet1", + "type": "Microsoft.Cdn/profiles/rulesets", + "properties": { + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "201": { + "body": { + "name": "ruleSet1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/rulesets/ruleSet1", + "type": "Microsoft.Cdn/profiles/rulesets", + "properties": { + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Delete.json new file mode 100644 index 000000000000..b27525723538 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Get.json new file mode 100644 index 000000000000..df88d81582df --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Get.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1" + }, + "responses": { + "200": { + "body": { + "name": "ruleSet1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/rulesets/ruleSet1", + "type": "Microsoft.Cdn/profiles/rulesets", + "properties": { + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_ListByProfile.json new file mode 100644 index 000000000000..656044e63803 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_ListByProfile.json @@ -0,0 +1,25 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "ruleSet1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/rulesets/ruleSet1", + "type": "Microsoft.Cdn/profiles/rulesets", + "properties": { + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_ListResourceUsage.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_ListResourceUsage.json new file mode 100644 index 000000000000..c1fc873867e1 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_ListResourceUsage.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "unit": "Count", + "currentValue": 0, + "limit": 25, + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/rulesets/ruleSet1/rules/rule1", + "name": { + "value": "rule", + "localizedValue": "rule" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Create.json new file mode 100644 index 000000000000..7a70d6d9e090 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Create.json @@ -0,0 +1,155 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1", + "ruleName": "rule1", + "rule": { + "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" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "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" + } + } + }, + "201": { + "body": { + "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" + } + } + }, + "202": { + "body": { + "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" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Delete.json new file mode 100644 index 000000000000..37a44e9b2429 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Delete.json @@ -0,0 +1,15 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1", + "ruleName": "rule1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Get.json new file mode 100644 index 000000000000..694a04e546c5 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Get.json @@ -0,0 +1,50 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1", + "ruleName": "rule1" + }, + "responses": { + "200": { + "body": { + "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" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_ListByRuleSet.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_ListByRuleSet.json new file mode 100644 index 000000000000..d856bd00a1f7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_ListByRuleSet.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "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" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Update.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Update.json new file mode 100644 index 000000000000..14a236aac4de --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Update.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "ruleSetName": "ruleSet1", + "ruleName": "rule1", + "ruleUpdateProperties": { + "properties": { + "order": 1, + "actions": [ + { + "name": "ModifyResponseHeader", + "parameters": { + "typeName": "DeliveryRuleHeaderActionParameters", + "headerAction": "Overwrite", + "headerName": "X-CDN", + "value": "MSFT" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "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" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "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": "Updating", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Create.json new file mode 100644 index 000000000000..19e12f742a30 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Create.json @@ -0,0 +1,104 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "secretName": "secret1", + "secret": { + "properties": { + "parameters": { + "type": "CustomerCertificate", + "secretVersion": "abcdef1234578900abcdef1234567890", + "secretSource": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/secrets/certificatename" + }, + "useLatestVersion": false + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "secret1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/secret1", + "type": "Microsoft.Cdn/profiles/secrets", + "properties": { + "parameters": { + "type": "CustomerCertificate", + "subject": "*.contoso.com", + "certificateAuthority": "Symantec", + "expirationDate": "2025-01-01T00:00:00-00:00", + "thumbprint": "ABCDEF1234567890ABCDEF1234567890ABCDEF12", + "secretSource": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/keyvaultname/secrets/certificatename" + }, + "secretVersion": "abcdef1234578900abcdef1234567890", + "useLatestVersion": true, + "subjectAlternativeNames": [ + "foo.contoso.com", + "www3.foo.contoso.com" + ] + }, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "201": { + "body": { + "name": "secret1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/secret1", + "type": "Microsoft.Cdn/profiles/secrets", + "properties": { + "parameters": { + "type": "CustomerCertificate", + "subject": "*.contoso.com", + "certificateAuthority": "Symantec", + "expirationDate": "2025-01-01T00:00:00-00:00", + "thumbprint": "ABCDEF1234567890ABCDEF1234567890ABCDEF12", + "secretSource": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/keyvaultname/secrets/certificatename" + }, + "secretVersion": "abcdef1234578900abcdef1234567890", + "useLatestVersion": true, + "subjectAlternativeNames": [ + "foo.contoso.com", + "www3.foo.contoso.com" + ] + }, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + }, + "202": { + "body": { + "name": "secret1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/secret1", + "type": "Microsoft.Cdn/profiles/secrets", + "properties": { + "parameters": { + "type": "CustomerCertificate", + "subject": "*.contoso.com", + "certificateAuthority": "Symantec", + "expirationDate": "2025-01-01T00:00:00-00:00", + "thumbprint": "ABCDEF1234567890ABCDEF1234567890ABCDEF12", + "secretSource": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/keyvaultname/secrets/certificatename" + }, + "secretVersion": "abcdef1234578900abcdef1234567890", + "useLatestVersion": true, + "subjectAlternativeNames": [ + "foo.contoso.com", + "www3.foo.contoso.com" + ] + }, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Delete.json new file mode 100644 index 000000000000..93842d7b82c9 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "secretName": "secret1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Get.json new file mode 100644 index 000000000000..b8e171a56861 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Get.json @@ -0,0 +1,38 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "secretName": "secret1" + }, + "responses": { + "200": { + "body": { + "name": "secret1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/secret1", + "type": "Microsoft.Cdn/profiles/secrets", + "properties": { + "parameters": { + "type": "CustomerCertificate", + "subject": "*.contoso.com", + "certificateAuthority": "Symantec", + "expirationDate": "2025-01-01T00:00:00-00:00", + "thumbprint": "ABCDEF1234567890ABCDEF1234567890ABCDEF12", + "secretSource": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/keyvaultname/secrets/certificatename" + }, + "secretVersion": "abcdef1234578900abcdef1234567890", + "useLatestVersion": true, + "subjectAlternativeNames": [ + "foo.contoso.com", + "www3.foo.contoso.com" + ] + }, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_ListByProfile.json new file mode 100644 index 000000000000..ef3377f8470b --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_ListByProfile.json @@ -0,0 +1,55 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "secret1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/secret1", + "type": "Microsoft.Cdn/profiles/secrets", + "properties": { + "parameters": { + "type": "CustomerCertificate", + "subject": "*.contoso.com", + "certificateAuthority": "Symantec", + "expirationDate": "2025-01-01T00:00:00-00:00", + "thumbprint": "ABCDEF1234567890ABCDEF1234567890ABCDEF12", + "secretSource": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vaults/keyvaultname/secrets/certificatename" + }, + "secretVersion": "abcdef1234578900abcdef1234567890", + "useLatestVersion": true, + "subjectAlternativeNames": [ + "foo.contoso.com", + "www3.foo.contoso.com" + ] + }, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/autogenerated_secret_name", + "type": "Microsoft.Cdn/profiles/secrets", + "name": "69f05517-6aaf-4a1e-a96d-f8c02f66c756-test12-afdx-test-domains-azfdtest-xyz", + "properties": { + "parameters": { + "type": "ManagedCertificate", + "subject": "bar.contoso.com", + "expirationDate": "2025-01-01T00:00:00-00:00" + }, + "provisioningState": "Succeeded", + "deploymentStatus": "NotStarted" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Create.json new file mode 100644 index 000000000000..a0014b744245 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Create.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "securityPolicyName": "securityPolicy1", + "securityPolicy": { + "properties": { + "parameters": { + "type": "WebApplicationFirewall", + "wafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/wafTest" + }, + "associations": [ + { + "domains": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "securityPolicy1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/securitypolicies/securityPolicy1", + "type": "Microsoft.Cdn/profiles/securitypolicies", + "properties": { + "parameters": { + "type": "WebApplicationFirewall", + "wafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/wafTest" + }, + "associations": [ + { + "domains": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "NotStarted", + "provisioningState": "Succeeded" + } + } + }, + "201": { + "body": { + "name": "securityPolicy1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/securitypolicies/securityPolicy1", + "type": "Microsoft.Cdn/profiles/securitypolicies", + "properties": { + "parameters": { + "type": "WebApplicationFirewall", + "wafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/wafTest" + }, + "associations": [ + { + "domains": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "NotStarted", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "body": { + "name": "securityPolicy1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/securitypolicies/securityPolicy1", + "type": "Microsoft.Cdn/profiles/securitypolicies", + "properties": { + "parameters": { + "type": "WebApplicationFirewall", + "wafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/wafTest" + }, + "associations": [ + { + "domains": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "NotStarted", + "provisioningState": "Creating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Delete.json new file mode 100644 index 000000000000..033ef937bfd0 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Delete.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "securityPolicyName": "securityPolicy1" + }, + "responses": { + "200": {}, + "202": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Get.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Get.json new file mode 100644 index 000000000000..95ac2bf867d2 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Get.json @@ -0,0 +1,43 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "securityPolicyName": "securityPolicy1" + }, + "responses": { + "200": { + "body": { + "name": "securityPolicy1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/securitypolicies/securityPolicy1", + "type": "Microsoft.Cdn/profiles/securitypolicies", + "properties": { + "parameters": { + "type": "WebApplicationFirewall", + "wafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/wafTest" + }, + "associations": [ + { + "domains": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "NotStarted", + "provisioningState": "Succeeded" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_ListByProfile.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_ListByProfile.json new file mode 100644 index 000000000000..5b34c78843c7 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_ListByProfile.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "securityPolicy1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/securitypolicies/securityPolicy1", + "type": "Microsoft.Cdn/profiles/securitypolicies", + "properties": { + "parameters": { + "type": "WebApplicationFirewall", + "wafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/wafTest" + }, + "associations": [ + { + "domains": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "NotStarted", + "provisioningState": "Succeeded" + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Patch.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Patch.json new file mode 100644 index 000000000000..94f3e114ca60 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Patch.json @@ -0,0 +1,103 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "securityPolicyName": "securityPolicy1", + "securityPolicyUpdateProperties": { + "properties": { + "parameters": { + "type": "WebApplicationFirewall", + "wafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/wafTest" + }, + "associations": [ + { + "domains": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "securityPolicy1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/securitypolicies/securityPolicy1", + "type": "Microsoft.Cdn/profiles/securitypolicies", + "properties": { + "parameters": { + "type": "WebApplicationFirewall", + "wafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/wafTest" + }, + "associations": [ + { + "domains": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "NotStarted", + "provisioningState": "Succeeded" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "securityPolicy1", + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/securitypolicies/securityPolicy1", + "type": "Microsoft.Cdn/profiles/securitypolicies", + "properties": { + "parameters": { + "type": "WebApplicationFirewall", + "wafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/wafTest" + }, + "associations": [ + { + "domains": [ + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1" + }, + { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2" + } + ], + "patternsToMatch": [ + "/*" + ] + } + ] + }, + "deploymentStatus": "NotStarted", + "provisioningState": "Updating" + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/ValidateProbe.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/ValidateProbe.json new file mode 100644 index 000000000000..b941239a9e19 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/ValidateProbe.json @@ -0,0 +1,18 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "validateProbeInput": { + "probeURL": "https://www.bing.com/image" + } + }, + "responses": { + "200": { + "body": { + "isValid": true, + "errorCode": "None", + "message": null + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Validate_Secret.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Validate_Secret.json new file mode 100644 index 000000000000..4ddb2f80c0ad --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Validate_Secret.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "validateSecretInput": { + "secretSource": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.KeyVault/vault/kvName/certificate/certName" + }, + "secretType": "CustomerCertificate" + } + }, + "responses": { + "200": { + "body": { + "status": "Valid", + "message": null + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafListManagedRuleSets.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafListManagedRuleSets.json new file mode 100644 index 000000000000..89d9170696ba --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafListManagedRuleSets.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "DefaultRuleSet_1.0", + "id": "/subscriptions/subid/providers/Microsoft.Cdn/CdnWebApplicationFirewallManagedRuleSets", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallmanagedrulesets", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "provisioningState": "Succeeded", + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroups": [ + { + "ruleGroupName": "Group1", + "description": "Description for rule group 1.", + "rules": [ + { + "ruleId": "GROUP1-0001", + "description": "Generic managed web application firewall rule." + }, + { + "ruleId": "GROUP1-0002", + "description": "Generic managed web application firewall rule." + } + ] + }, + { + "ruleGroupName": "Group2", + "description": "Description for rule group 2.", + "rules": [ + { + "ruleId": "GROUP2-0001", + "description": "Generic managed web application firewall rule." + } + ] + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafListPolicies.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafListPolicies.json new file mode 100644 index 000000000000..9bafaa7c1823 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafListPolicies.json @@ -0,0 +1,265 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 429, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + }, + { + "name": "VerizonStandardCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/VerizonStandardCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Verizon" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 429, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "ECRS", + "ruleSetVersion": "2018-11-2", + "ruleGroupOverrides": [ + { + "ruleGroupName": "XSS", + "rules": [ + { + "ruleId": "XSS-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "XSS-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint3" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPatchPolicy.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPatchPolicy.json new file mode 100644 index 000000000000..aaf2384247b4 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPatchPolicy.json @@ -0,0 +1,275 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "MicrosoftCdnWafPolicy", + "cdnWebApplicationFirewallPolicyPatchParameters": { + "tags": { + "foo": "bar" + } + } + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "foo": "bar" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 403, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Creating", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 403, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyCreateOrUpdate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyCreateOrUpdate.json new file mode 100644 index 000000000000..937932d8a7fb --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyCreateOrUpdate.json @@ -0,0 +1,505 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "MicrosoftCdnWafPolicy", + "cdnWebApplicationFirewallPolicy": { + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "policySettings": { + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + }, + "201": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + }, + "202": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Creating", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 200, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 3, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + } + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyDelete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyDelete.json new file mode 100644 index 000000000000..d76b4091ec82 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyDelete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "Policy1" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyGet.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyGet.json new file mode 100644 index 000000000000..4191c40ea6db --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyGet.json @@ -0,0 +1,139 @@ +{ + "parameters": { + "api-version": "2022-11-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "rg1", + "policyName": "MicrosoftCdnWafPolicy" + }, + "responses": { + "200": { + "body": { + "name": "MicrosoftCdnWafPolicy", + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", + "type": "Microsoft.Cdn/cdnwebapplicationfirewallpolicies", + "tags": { + "key1": "value1", + "key2": "value2" + }, + "location": "WestUs", + "sku": { + "name": "Standard_Microsoft" + }, + "properties": { + "resourceState": "Enabled", + "provisioningState": "Succeeded", + "policySettings": { + "enabledState": "Enabled", + "mode": "Prevention", + "defaultRedirectUrl": "http://www.bing.com", + "defaultCustomBlockResponseStatusCode": 429, + "defaultCustomBlockResponseBody": "PGh0bWw+CjxoZWFkZXI+PHRpdGxlPkhlbGxvPC90aXRsZT48L2hlYWRlcj4KPGJvZHk+CkhlbGxvIHdvcmxkCjwvYm9keT4KPC9odG1sPg==" + }, + "rateLimitRules": { + "rules": [ + { + "name": "RateLimitRule1", + "priority": 1, + "enabledState": "Enabled", + "rateLimitDurationInMinutes": 0, + "rateLimitThreshold": 1000, + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "IPMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "192.168.1.0/24", + "10.0.0.0/24" + ] + } + ], + "action": "Block" + } + ] + }, + "customRules": { + "rules": [ + { + "name": "CustomRule1", + "priority": 2, + "enabledState": "Enabled", + "matchConditions": [ + { + "matchVariable": "RemoteAddr", + "selector": null, + "operator": "GeoMatch", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "CH" + ] + }, + { + "matchVariable": "RequestHeader", + "selector": "UserAgent", + "operator": "Contains", + "negateCondition": false, + "transforms": [], + "matchValue": [ + "windows" + ] + }, + { + "matchVariable": "QueryString", + "selector": "search", + "operator": "Contains", + "negateCondition": false, + "transforms": [ + "UrlDecode", + "Lowercase" + ], + "matchValue": [ + "" + ] + } + ], + "action": "Block" + } + ] + }, + "managedRules": { + "managedRuleSets": [ + { + "ruleSetType": "DefaultRuleSet", + "ruleSetVersion": "preview-1.0", + "ruleGroupOverrides": [ + { + "ruleGroupName": "Group1", + "rules": [ + { + "ruleId": "GROUP1-0001", + "enabledState": "Enabled", + "action": "Redirect" + }, + { + "ruleId": "GROUP1-0002", + "enabledState": "Disabled" + } + ] + } + ] + } + ] + }, + "endpointLinks": [ + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint1" + }, + { + "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/profiles/profile1/endpoints/testEndpoint2" + } + ] + } + } + } + } +} From d455dedb170f1bf0f00c9d811de33215ea87dcee Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Mon, 3 Oct 2022 14:05:48 -0700 Subject: [PATCH 02/33] Fix check --- .../preview/2022-11-01-preview/cdn.json | 2 +- specification/cdn/resource-manager/readme.md | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index 4c1510e3743d..031d26676dba 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -6919,4 +6919,4 @@ "description": "Name of the Resource group within the Azure subscription." } } -} \ No newline at end of file +} diff --git a/specification/cdn/resource-manager/readme.md b/specification/cdn/resource-manager/readme.md index a4d263f934cb..840563333b49 100644 --- a/specification/cdn/resource-manager/readme.md +++ b/specification/cdn/resource-manager/readme.md @@ -28,9 +28,19 @@ These are the global settings for the Cdn API. title: CdnManagementClient description: Cdn Management Client openapi-type: arm -tag: package-preview-2022-05 +tag: package-preview-2022-11 ``` +### Tag: package-preview-2022-11 + +These settings apply only when `--tag=package-preview-2022-11` is specified on the command line. + +```yaml $(tag) == 'package-preview-2022-11' +input-file: + - Microsoft.Cdn/preview/2022-11-01-preview/afdx.json + - Microsoft.Cdn/preview/2022-11-01-preview/cdn.json + - Microsoft.Cdn/preview/2022-11-01-preview/cdnwebapplicationfirewall.json +``` ### Tag: package-preview-2022-05 From 50fc39dd34b21eed8e40b6de17d48facbcaa1a08 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Mon, 3 Oct 2022 16:03:05 -0700 Subject: [PATCH 03/33] Move Validate_Secret to profile --- .../preview/2022-11-01-preview/afdx.json | 100 ++++++++++-------- ...t.json => AFDProfiles_ValidateSecret.json} | 2 +- 2 files changed, 56 insertions(+), 46 deletions(-) rename specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/{Validate_Secret.json => AFDProfiles_ValidateSecret.json} (91%) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index 112fdc3f55e6..29396d152416 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -186,6 +186,61 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/validateSecret": { + "post": { + "tags": [ + "AFDProfiles" + ], + "description": "Validate a Secret in the profile.", + "operationId": "AFDProfiles_ValidateSecret", + "x-ms-examples": { + "Validate_Secret": { + "$ref": "./examples/AFDProfiles_ValidateSecret.json" + } + }, + "parameters": [ + { + "$ref": "#/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, + "type": "string" + }, + { + "name": "validateSecretInput", + "in": "body", + "description": "The Secret source.", + "required": true, + "schema": { + "$ref": "#/definitions/ValidateSecretInput" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ValidateSecretOutput" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/customDomains": { "get": { "tags": [ @@ -3239,51 +3294,6 @@ } } }, - "/subscriptions/{subscriptionId}/providers/Microsoft.Cdn/validateSecret": { - "post": { - "tags": [ - "Secrets" - ], - "description": "Validate a Secret in the profile.", - "operationId": "Validate_Secret", - "x-ms-examples": { - "Validate_Secret": { - "$ref": "./examples/Validate_Secret.json" - } - }, - "parameters": [ - { - "name": "validateSecretInput", - "in": "body", - "description": "The Secret source.", - "required": true, - "schema": { - "$ref": "#/definitions/ValidateSecretInput" - } - }, - { - "$ref": "#/parameters/subscriptionIdParameter" - }, - { - "$ref": "#/parameters/apiVersionParameter" - } - ], - "responses": { - "200": { - "description": "OK", - "schema": { - "$ref": "#/definitions/ValidateSecretOutput" - } - }, - "default": { - "description": "CDN error response describing why the operation failed.", - "schema": { - "$ref": "#/definitions/AfdErrorResponse" - } - } - } - } - }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/getLogAnalyticsMetrics": { "get": { "tags": [ diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Validate_Secret.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ValidateSecret.json similarity index 91% rename from specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Validate_Secret.json rename to specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ValidateSecret.json index 4ddb2f80c0ad..4640e465218a 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Validate_Secret.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ValidateSecret.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-11-01-preview", + "api-version": "2022-05-01-preview", "subscriptionId": "subid", "resourceGroupName": "RG", "profileName": "profile1", From acd39b370f2265389f53d61141f108a32197604c Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Mon, 3 Oct 2022 16:08:25 -0700 Subject: [PATCH 04/33] Add AFDProfiles_Upgrade --- .../preview/2022-11-01-preview/afdx.json | 100 ++++++++++++++++++ .../examples/AFDProfiles_Upgrade.json | 53 ++++++++++ 2 files changed, 153 insertions(+) create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index 29396d152416..58d7433c321a 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -290,6 +290,67 @@ } } }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/upgrade": { + "post": { + "tags": [ + "AFDProfiles" + ], + "description": "Upgrade a profile from Standard_AzureFrontDoor to Premium_AzureFrontDoor.", + "operationId": "AFDProfiles_Upgrade", + "x-ms-examples": { + "AFDProfiles_CheckHostNameAvailability": { + "$ref": "./examples/AFDProfiles_Upgrade.json" + } + }, + "parameters": [ + { + "$ref": "#/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, + "type": "string" + }, + { + "name": "profileUpgradeParameters", + "in": "body", + "description": "Profile upgrade input.", + "required": true, + "schema": { + "$ref": "#/definitions/ProfileUpgradeParameters" + } + }, + { + "$ref": "#/parameters/subscriptionIdParameter" + }, + { + "$ref": "#/parameters/apiVersionParameter" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "./cdn.json#/definitions/Profile" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "schema": { + "$ref": "./cdn.json#/definitions/Profile" + } + }, + "default": { + "description": "CDN error response describing why the operation failed.", + "schema": { + "$ref": "#/definitions/AfdErrorResponse" + } + } + } + } + }, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/customDomains/{customDomainName}": { "get": { "tags": [ @@ -3962,6 +4023,45 @@ } }, "definitions": { + "ProfileChangeSkuWafMapping": { + "type": "object", + "description": "Parameters required for profile upgrade.", + "required": [ + "securityPolicyName", + "changeToWafPolicy" + ], + "properties": { + "securityPolicyName": { + "description": "The security policy name.", + "type": "array", + "items": { + "type": "string" + } + }, + "changeToWafPolicy": { + "description": "The new waf resource for the security policy to use.", + "$ref": "./cdn.json#/definitions/ResourceReference" + } + } + }, + "ProfileUpgradeParameters": { + "type": "object", + "description": "Parameters required for profile upgrade.", + "required": [ + "wafMappingList" + ], + "properties": { + "wafMappingList": { + "description": "Waf mapping for the profile upgrade", + "type": "array", + "items": { + "description": "List of waf mappings", + "$ref": "#/definitions/ProfileChangeSkuWafMapping" + }, + "x-ms-identifiers": [] + } + } + }, "AfdPurgeParameters": { "type": "object", "description": "Parameters required for content purge.", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json new file mode 100644 index 000000000000..2161ab54f6b8 --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "api-version": "2022-05-01-preview", + "subscriptionId": "subid", + "resourceGroupName": "RG", + "profileName": "profile1", + "profileUpgradeParameters": { + "properties": { + "wafMappingList": [ + { + "securityPolicyName": "securityPolicy1", + "changeToWafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/waf2" + } + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "name": "profile1", + "properties": { + "extendedProperties": {}, + "frontDoorId": "id", + "originResponseTimeoutSeconds": 60, + "provisioningState": "Succeeded", + "resourceState": "Enabled" + } + } + }, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-05-01-preview" + }, + "body": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", + "type": "Microsoft.Cdn/profiles", + "name": "profile1", + "properties": { + "extendedProperties": {}, + "frontDoorId": "id", + "originResponseTimeoutSeconds": 60, + "provisioningState": "Succeeded", + "resourceState": "Upgrading" + } + } + } + } +} From c032f00301e017c68ddc525a5fb1c3b33dc4fbb3 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Tue, 4 Oct 2022 19:32:19 -0700 Subject: [PATCH 05/33] Update api version --- .../2022-11-01-preview/examples/AFDProfiles_Upgrade.json | 2 +- .../2022-11-01-preview/examples/AFDProfiles_ValidateSecret.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json index 2161ab54f6b8..05198e5536e9 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-05-01-preview", + "api-version": "2022-11-01-preview", "subscriptionId": "subid", "resourceGroupName": "RG", "profileName": "profile1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ValidateSecret.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ValidateSecret.json index 4640e465218a..4ddb2f80c0ad 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ValidateSecret.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_ValidateSecret.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2022-05-01-preview", + "api-version": "2022-11-01-preview", "subscriptionId": "subid", "resourceGroupName": "RG", "profileName": "profile1", From 5b7d03e801d5168a2810971135141daafeddaac1 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 6 Oct 2022 15:59:55 -0700 Subject: [PATCH 06/33] Add msi support --- .../preview/2022-11-01-preview/cdn.json | 66 +++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index 031d26676dba..49fbd5a0881c 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -2634,6 +2634,10 @@ "type": "string", "description": "Kind of the profile. Used by portal to differentiate traditional CDN profile and new AFD profile." }, + "identity":{ + "description": "The identity of the profile.", + "$ref": "#/definitions/MsiIdentity" + }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/ProfileProperties" @@ -6807,6 +6811,68 @@ }, "type": "object" }, + "UserIdentityProperties": { + "description": "UserIdentityProperties", + "type": "object", + "properties": { + "principalId": { + "readOnly": true, + "type": "string", + "description": "The principal id of user assigned identity." + }, + "clientId": { + "readOnly": true, + "type": "string", + "description": "The client id of user assigned identity." + } + } + }, + "MsiIdentity": { + "description": "The Identity", + "type": "object", + "properties": { + "type": { + "description": "Type of the identity.", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemUserAssigned" + ], + "type": "string", + "x-ms-enum": { + "name": "IdentityType", + "modelAsString": true + } + }, + "url": { + "readOnly": true, + "type": "string", + "description": "The MSI data plane URL used for Managed Identity." + }, + "principalId": { + "readOnly": true, + "type": "string", + "description": "The system assigned identity used for Managed Identity." + }, + "tenantId": { + "readOnly": true, + "type": "string", + "description": "The tenant id used for Managed Identity." + }, + "userAssignedIdentities": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserIdentityProperties", + "description": "The properties of user identity." + } + } + }, + "required": [ + "type", + "userAssignedIdentities" + ] + }, "OptimizationType": { "description": "Specifies what scenario the customer wants this CDN endpoint to optimize, e.g. Download, Media services. With this information we can apply scenario driven optimization.", "enum": [ From afe899ecbac70e9b96e04c0dbc389bd60ff5c590 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 6 Oct 2022 17:01:29 -0700 Subject: [PATCH 07/33] Fix check issue --- .../preview/2022-11-01-preview/afdx.json | 30 +++++++++++++++---- .../preview/2022-11-01-preview/cdn.json | 2 +- .../examples/AFDProfiles_Upgrade.json | 16 +++++----- 3 files changed, 33 insertions(+), 15 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index 58d7433c321a..4751a7239770 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -298,7 +298,7 @@ "description": "Upgrade a profile from Standard_AzureFrontDoor to Premium_AzureFrontDoor.", "operationId": "AFDProfiles_Upgrade", "x-ms-examples": { - "AFDProfiles_CheckHostNameAvailability": { + "AFDProfiles_Upgrade": { "$ref": "./examples/AFDProfiles_Upgrade.json" } }, @@ -348,6 +348,10 @@ "$ref": "#/definitions/AfdErrorResponse" } } + }, + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "azure-async-operation" } } }, @@ -5607,7 +5611,11 @@ "PT5M", "PT1H", "P1D" - ] + ], + "x-ms-enum": { + "name": "MetricsGranularity", + "modelAsString": true + } }, "series": { "type": "array", @@ -5624,7 +5632,11 @@ "bytes", "bitsPerSecond", "milliSeconds" - ] + ], + "x-ms-enum": { + "name": "MetricsSeriesUnit", + "modelAsString": true + } }, "groups": { "type": "array", @@ -5832,7 +5844,11 @@ "PT5M", "PT1H", "P1D" - ] + ], + "x-ms-enum": { + "name": "WafMetricsSeriesUnit", + "modelAsString": true + } }, "series": { "type": "array", @@ -5846,7 +5862,11 @@ "type": "string", "enum": [ "count" - ] + ], + "x-ms-enum": { + "name": "WafMetricsSeriesUnit", + "modelAsString": true + } }, "groups": { "type": "array", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index 49fbd5a0881c..6376947b8baf 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -6812,7 +6812,7 @@ "type": "object" }, "UserIdentityProperties": { - "description": "UserIdentityProperties", + "description": "The properties of user identity.", "type": "object", "properties": { "principalId": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json index 05198e5536e9..b2d24ae41d8c 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json @@ -5,16 +5,14 @@ "resourceGroupName": "RG", "profileName": "profile1", "profileUpgradeParameters": { - "properties": { - "wafMappingList": [ - { - "securityPolicyName": "securityPolicy1", - "changeToWafPolicy": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/waf2" - } + "wafMappingList": [ + { + "securityPolicyName": "securityPolicy1", + "changeToWafPolicy": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/waf2" } - ] - } + } + ] } }, "responses": { From 739ca1f2cc635ef2167226ad4200770486a73df5 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 6 Oct 2022 17:02:05 -0700 Subject: [PATCH 08/33] Fix check issue --- .../Microsoft.Cdn/preview/2022-11-01-preview/cdn.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index 6376947b8baf..6f3d786f239c 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -2634,7 +2634,7 @@ "type": "string", "description": "Kind of the profile. Used by portal to differentiate traditional CDN profile and new AFD profile." }, - "identity":{ + "identity": { "description": "The identity of the profile.", "$ref": "#/definitions/MsiIdentity" }, From a6d12db3173018acfd851cdb7d5469e6cd6a9e06 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 6 Oct 2022 17:24:27 -0700 Subject: [PATCH 09/33] Fix check --- .../preview/2022-11-01-preview/afdx.json | 34 ++++++++----------- .../preview/2022-11-01-preview/cdn.json | 6 +++- 2 files changed, 19 insertions(+), 21 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index 4751a7239770..5228fd7db6e2 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -99,11 +99,7 @@ "$ref": "#/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, - "type": "string" + "$ref": "#/parameters/profileNameParameter" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -148,11 +144,7 @@ "$ref": "#/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, - "type": "string" + "$ref": "#/parameters/profileNameParameter" }, { "name": "checkHostNameAvailabilityInput", @@ -203,11 +195,7 @@ "$ref": "#/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, - "type": "string" + "$ref": "#/parameters/profileNameParameter" }, { "name": "validateSecretInput", @@ -307,11 +295,7 @@ "$ref": "#/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, - "type": "string" + "$ref": "#/parameters/profileNameParameter" }, { "name": "profileUpgradeParameters", @@ -6073,6 +6057,16 @@ "maxLength": 90, "x-ms-parameter-location": "method", "description": "Name of the Resource group within the Azure subscription." + }, + "profileNameParameter": { + "name": "profileName", + "in": "path", + "required": true, + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", + "minLength": 1, + "maxLength": 260, + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group." } } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index 6f3d786f239c..64ae43026cda 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -2746,6 +2746,10 @@ "type": "object", "description": "The JSON object containing profile update parameters.", "properties": { + "identity": { + "description": "The identity of the profile.", + "$ref": "#/definitions/MsiIdentity" + }, "originResponseTimeoutSeconds": { "description": "Send and receive timeout on forwarding request to the origin. When timeout is reached, the request fails and returns.", "type": "integer", @@ -6841,7 +6845,7 @@ ], "type": "string", "x-ms-enum": { - "name": "IdentityType", + "name": "MsiIdentityType", "modelAsString": true } }, From 720b78d400a2f44648b5252d51b57f97dafb2192 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 6 Oct 2022 17:50:54 -0700 Subject: [PATCH 10/33] Fix check --- .../preview/2022-11-01-preview/afdx.json | 33 ++++++++++++++----- .../preview/2022-11-01-preview/cdn.json | 10 +++--- 2 files changed, 29 insertions(+), 14 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index 5228fd7db6e2..003297e1ed7a 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -99,7 +99,11 @@ "$ref": "#/parameters/resourceGroupNameParameter" }, { - "$ref": "#/parameters/profileNameParameter" + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile or CDN profile which is unique within the resource group.", + "required": true, + "type": "string" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -144,7 +148,11 @@ "$ref": "#/parameters/resourceGroupNameParameter" }, { - "$ref": "#/parameters/profileNameParameter" + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile or CDN profile which is unique within the resource group.", + "required": true, + "type": "string" }, { "name": "checkHostNameAvailabilityInput", @@ -195,7 +203,11 @@ "$ref": "#/parameters/resourceGroupNameParameter" }, { - "$ref": "#/parameters/profileNameParameter" + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile or CDN profile which is unique within the resource group.", + "required": true, + "type": "string" }, { "name": "validateSecretInput", @@ -322,6 +334,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "azure-asyncoperation": { + "type": "string" + } + }, "schema": { "$ref": "./cdn.json#/definitions/Profile" } @@ -335,7 +352,7 @@ }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" + "final-state-via": "azure-asyncoperation" } } }, @@ -4021,10 +4038,7 @@ "properties": { "securityPolicyName": { "description": "The security policy name.", - "type": "array", - "items": { - "type": "string" - } + "type": "string" }, "changeToWafPolicy": { "description": "The new waf resource for the security policy to use.", @@ -5830,7 +5844,7 @@ "P1D" ], "x-ms-enum": { - "name": "WafMetricsSeriesUnit", + "name": "WafMetricsGranularity", "modelAsString": true } }, @@ -6066,6 +6080,7 @@ "pattern": "^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$", "minLength": 1, "maxLength": 260, + "x-ms-parameter-location": "method", "description": "Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group." } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index 64ae43026cda..8bf4d752b950 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -2635,7 +2635,7 @@ "description": "Kind of the profile. Used by portal to differentiate traditional CDN profile and new AFD profile." }, "identity": { - "description": "The identity of the profile.", + "description": "The identity of the profile.", "$ref": "#/definitions/MsiIdentity" }, "properties": { @@ -2735,6 +2735,10 @@ "type": "string" } }, + "identity": { + "description": "The identity of the profile.", + "$ref": "#/definitions/MsiIdentity" + }, "properties": { "x-ms-client-flatten": true, "$ref": "#/definitions/ProfilePropertiesUpdateParameters" @@ -2746,10 +2750,6 @@ "type": "object", "description": "The JSON object containing profile update parameters.", "properties": { - "identity": { - "description": "The identity of the profile.", - "$ref": "#/definitions/MsiIdentity" - }, "originResponseTimeoutSeconds": { "description": "Send and receive timeout on forwarding request to the origin. When timeout is reached, the request fails and returns.", "type": "integer", From 0014437b26bd83d8168974880c62539cb39a81f6 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 6 Oct 2022 18:35:16 -0700 Subject: [PATCH 11/33] Fix check --- .../preview/2022-11-01-preview/afdx.json | 94 +++++++++---------- .../examples/AFDProfiles_Upgrade.json | 24 +++-- 2 files changed, 65 insertions(+), 53 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index 003297e1ed7a..f3af4c374f31 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -241,16 +241,16 @@ } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/customDomains": { - "get": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/upgrade": { + "post": { "tags": [ - "AFDCustomDomains" + "AFDProfiles" ], - "description": "Lists existing AzureFrontDoor domains.", - "operationId": "AFDCustomDomains_ListByProfile", + "description": "Upgrade a profile from Standard_AzureFrontDoor to Premium_AzureFrontDoor.", + "operationId": "AFDProfiles_Upgrade", "x-ms-examples": { - "AFDCustomDomains_ListByProfile": { - "$ref": "./examples/AFDCustomDomains_ListByProfile.json" + "AFDProfiles_Upgrade": { + "$ref": "./examples/AFDProfiles_Upgrade.json" } }, "parameters": [ @@ -258,11 +258,16 @@ "$ref": "#/parameters/resourceGroupNameParameter" }, { - "name": "profileName", - "in": "path", - "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile or CDN profile which is unique within the resource group.", + "$ref": "#/parameters/profileNameParameter" + }, + { + "name": "profileUpgradeParameters", + "in": "body", + "description": "Profile upgrade input.", "required": true, - "type": "string" + "schema": { + "$ref": "#/definitions/ProfileUpgradeParameters" + } }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -273,9 +278,20 @@ ], "responses": { "200": { - "description": "OK", + "description": "OK. The request has succeeded.", "schema": { - "$ref": "#/definitions/AFDDomainListResult" + "$ref": "./cdn.json#/definitions/Profile" + } + }, + "202": { + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "Azure-AsyncOperation": { + "type": "string" + } + }, + "schema": { + "$ref": "./cdn.json#/definitions/Profile" } }, "default": { @@ -285,21 +301,22 @@ } } }, - "x-ms-pageable": { - "nextLinkName": "nextLink" + "x-ms-long-running-operation": true, + "x-ms-long-running-operation-options": { + "final-state-via": "Azure-AsyncOperation" } } }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/upgrade": { - "post": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/customDomains": { + "get": { "tags": [ - "AFDProfiles" + "AFDCustomDomains" ], - "description": "Upgrade a profile from Standard_AzureFrontDoor to Premium_AzureFrontDoor.", - "operationId": "AFDProfiles_Upgrade", + "description": "Lists existing AzureFrontDoor domains.", + "operationId": "AFDCustomDomains_ListByProfile", "x-ms-examples": { - "AFDProfiles_Upgrade": { - "$ref": "./examples/AFDProfiles_Upgrade.json" + "AFDCustomDomains_ListByProfile": { + "$ref": "./examples/AFDCustomDomains_ListByProfile.json" } }, "parameters": [ @@ -307,16 +324,11 @@ "$ref": "#/parameters/resourceGroupNameParameter" }, { - "$ref": "#/parameters/profileNameParameter" - }, - { - "name": "profileUpgradeParameters", - "in": "body", - "description": "Profile upgrade input.", + "name": "profileName", + "in": "path", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile or CDN profile which is unique within the resource group.", "required": true, - "schema": { - "$ref": "#/definitions/ProfileUpgradeParameters" - } + "type": "string" }, { "$ref": "#/parameters/subscriptionIdParameter" @@ -327,20 +339,9 @@ ], "responses": { "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "./cdn.json#/definitions/Profile" - } - }, - "202": { - "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", - "headers": { - "azure-asyncoperation": { - "type": "string" - } - }, + "description": "OK", "schema": { - "$ref": "./cdn.json#/definitions/Profile" + "$ref": "#/definitions/AFDDomainListResult" } }, "default": { @@ -350,9 +351,8 @@ } } }, - "x-ms-long-running-operation": true, - "x-ms-long-running-operation-options": { - "final-state-via": "azure-asyncoperation" + "x-ms-pageable": { + "nextLinkName": "nextLink" } } }, diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json index b2d24ae41d8c..670f124a96c5 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json @@ -21,6 +21,12 @@ "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", "type": "Microsoft.Cdn/profiles", "name": "profile1", + "location": "Global", + "kind": "frontdoor", + "tags": {}, + "sku": { + "name": "Standard_AzureFrontDoor" + }, "properties": { "extendedProperties": {}, "frontDoorId": "id", @@ -32,18 +38,24 @@ }, "202": { "headers": { - "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-05-01-preview" + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-05-01-preview" }, "body": { "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", "type": "Microsoft.Cdn/profiles", "name": "profile1", + "location": "Global", + "kind": "frontdoor", + "tags": {}, + "sku": { + "name": "Standard_AzureFrontDoor" + }, "properties": { - "extendedProperties": {}, - "frontDoorId": "id", - "originResponseTimeoutSeconds": 60, - "provisioningState": "Succeeded", - "resourceState": "Upgrading" + "originResponseTimeoutSeconds": 60, + "frontDoorId": "id", + "extendedProperties": {}, + "resourceState": "Upgrading", + "provisioningState": "Succeeded" } } } From 01dcf5f1dcc0a3d1bc6a445f90b48bcaf46041f4 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 6 Oct 2022 18:54:49 -0700 Subject: [PATCH 12/33] Fix check --- .../Microsoft.Cdn/preview/2022-11-01-preview/afdx.json | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index f3af4c374f31..ad9e7f935d00 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -203,11 +203,7 @@ "$ref": "#/parameters/resourceGroupNameParameter" }, { - "name": "profileName", - "in": "path", - "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile or CDN profile which is unique within the resource group.", - "required": true, - "type": "string" + "$ref": "#/parameters/profileNameParameter" }, { "name": "validateSecretInput", @@ -286,7 +282,7 @@ "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { - "Azure-AsyncOperation": { + "location": { "type": "string" } }, @@ -303,7 +299,7 @@ }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via": "Azure-AsyncOperation" + "final-state-via": "azure-async-operation" } } }, From b5936c75c6bb584f78e3d49f8dc7a16411e1aa53 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 6 Oct 2022 19:01:47 -0700 Subject: [PATCH 13/33] Fix check --- .../preview/2022-11-01-preview/afdx.json | 2 +- .../examples/AFDProfiles_Upgrade.json | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index ad9e7f935d00..61678f078856 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -299,7 +299,7 @@ }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via": "azure-async-operation" + "final-state-via": "location" } } }, diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json index 670f124a96c5..40f93a20eb06 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json @@ -25,7 +25,7 @@ "kind": "frontdoor", "tags": {}, "sku": { - "name": "Standard_AzureFrontDoor" + "name": "Standard_AzureFrontDoor" }, "properties": { "extendedProperties": {}, @@ -48,14 +48,14 @@ "kind": "frontdoor", "tags": {}, "sku": { - "name": "Standard_AzureFrontDoor" + "name": "Standard_AzureFrontDoor" }, "properties": { - "originResponseTimeoutSeconds": 60, - "frontDoorId": "id", - "extendedProperties": {}, - "resourceState": "Upgrading", - "provisioningState": "Succeeded" + "originResponseTimeoutSeconds": 60, + "frontDoorId": "id", + "extendedProperties": {}, + "resourceState": "Upgrading", + "provisioningState": "Succeeded" } } } From fa36b8a8545c01cb44145b9855a89c9b7428b5c7 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Wed, 12 Oct 2022 11:46:53 -0700 Subject: [PATCH 14/33] Merge from 2022-05-01 --- .../Microsoft.Cdn/preview/2022-11-01-preview/cdn.json | 8 ++++++++ .../examples/Profiles_MigrationCommit.json | 2 ++ 2 files changed, 10 insertions(+) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index 8bf4d752b950..ff05d1e234e3 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -477,6 +477,14 @@ } ], "responses": { + "200": { + "description": "Ok and the operation will complete synchronously.", + "headers": { + "location": { + "type": "string" + } + } + }, "202": { "description": "Accepted and the operation will complete asynchronously.", "headers": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json index ef3e1b187607..ca3f2bbc1c61 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json @@ -6,6 +6,8 @@ "profileName": "profile1" }, "responses": { + "200": { + }, "202": { "headers": { "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" From 4e715405953f99bc287b1ebfe978550d4f972da4 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Wed, 12 Oct 2022 14:29:40 -0700 Subject: [PATCH 15/33] Fix comments --- .../preview/2022-11-01-preview/cdn.json | 70 ++----------------- .../examples/Profiles_MigrationCommit.json | 3 +- 2 files changed, 5 insertions(+), 68 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index ff05d1e234e3..c91e91b118e2 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -2643,8 +2643,8 @@ "description": "Kind of the profile. Used by portal to differentiate traditional CDN profile and new AFD profile." }, "identity": { - "description": "The identity of the profile.", - "$ref": "#/definitions/MsiIdentity" + "description": "Managed service identity (system assigned and/or user assigned identities).", + "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" }, "properties": { "x-ms-client-flatten": true, @@ -2744,8 +2744,8 @@ } }, "identity": { - "description": "The identity of the profile.", - "$ref": "#/definitions/MsiIdentity" + "description": "Managed service identity (system assigned and/or user assigned identities).", + "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" }, "properties": { "x-ms-client-flatten": true, @@ -6823,68 +6823,6 @@ }, "type": "object" }, - "UserIdentityProperties": { - "description": "The properties of user identity.", - "type": "object", - "properties": { - "principalId": { - "readOnly": true, - "type": "string", - "description": "The principal id of user assigned identity." - }, - "clientId": { - "readOnly": true, - "type": "string", - "description": "The client id of user assigned identity." - } - } - }, - "MsiIdentity": { - "description": "The Identity", - "type": "object", - "properties": { - "type": { - "description": "Type of the identity.", - "enum": [ - "None", - "SystemAssigned", - "UserAssigned", - "SystemUserAssigned" - ], - "type": "string", - "x-ms-enum": { - "name": "MsiIdentityType", - "modelAsString": true - } - }, - "url": { - "readOnly": true, - "type": "string", - "description": "The MSI data plane URL used for Managed Identity." - }, - "principalId": { - "readOnly": true, - "type": "string", - "description": "The system assigned identity used for Managed Identity." - }, - "tenantId": { - "readOnly": true, - "type": "string", - "description": "The tenant id used for Managed Identity." - }, - "userAssignedIdentities": { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/UserIdentityProperties", - "description": "The properties of user identity." - } - } - }, - "required": [ - "type", - "userAssignedIdentities" - ] - }, "OptimizationType": { "description": "Specifies what scenario the customer wants this CDN endpoint to optimize, e.g. Download, Media services. With this information we can apply scenario driven optimization.", "enum": [ diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json index ca3f2bbc1c61..1ab3fc97b453 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json @@ -6,8 +6,7 @@ "profileName": "profile1" }, "responses": { - "200": { - }, + "200": {}, "202": { "headers": { "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" From 570a6ea38aaa01551692320ffd945997616f23d5 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 13 Oct 2022 14:26:47 -0700 Subject: [PATCH 16/33] Update description for waf --- .../Microsoft.Cdn/preview/2022-11-01-preview/afdx.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index 61678f078856..59baf7da7f04 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -4050,7 +4050,7 @@ ], "properties": { "wafMappingList": { - "description": "Waf mapping for the profile upgrade", + "description": "Web Application Firewall (WAF) and security policy mapping for the profile upgrade", "type": "array", "items": { "description": "List of waf mappings", From 15aec9b447181b86c58597fefbd57c17489d0bc1 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Fri, 14 Oct 2022 19:38:02 -0700 Subject: [PATCH 17/33] Update incorrect description --- .../preview/2022-11-01-preview/afdx.json | 154 +++++++++--------- 1 file changed, 77 insertions(+), 77 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index 59baf7da7f04..57e061f8edaf 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -3,7 +3,7 @@ "info": { "version": "2022-11-01-preview", "title": "CdnManagementClient", - "description": "Use these APIs to manage Azure CDN resources through the Azure Resource Manager. You must make sure that requests made to these resources are secure." + "description": "Use these APIs to manage Azure Front Door resources through the Azure Resource Manager. You must make sure that requests made to these resources are secure." }, "host": "management.azure.com", "schemes": [ @@ -74,7 +74,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -87,7 +87,7 @@ "tags": [ "AFDProfiles" ], - "description": "Checks the quota and actual usage of endpoints under the given CDN profile.", + "description": "Checks the quota and actual usage of endpoints under the given Azure Front Door profile.", "operationId": "AFDProfiles_ListResourceUsage", "x-ms-examples": { "AFDProfiles_ListResourceUsage": { @@ -101,7 +101,7 @@ { "name": "profileName", "in": "path", - "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile or CDN profile which is unique within the resource group.", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", "required": true, "type": "string" }, @@ -120,7 +120,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -136,7 +136,7 @@ "tags": [ "AFDProfiles" ], - "description": "Validates the custom domain mapping to ensure it maps to the correct CDN endpoint in DNS.", + "description": "Validates the custom domain mapping to ensure it maps to the correct Azure Front Door endpoint in DNS.", "operationId": "AFDProfiles_CheckHostNameAvailability", "x-ms-examples": { "AFDProfiles_CheckHostNameAvailability": { @@ -150,7 +150,7 @@ { "name": "profileName", "in": "path", - "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile or CDN profile which is unique within the resource group.", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", "required": true, "type": "string" }, @@ -178,7 +178,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -229,7 +229,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -291,7 +291,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -322,7 +322,7 @@ { "name": "profileName", "in": "path", - "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile or CDN profile which is unique within the resource group.", + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium profile which is unique within the resource group.", "required": true, "type": "string" }, @@ -341,7 +341,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -397,7 +397,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -469,7 +469,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -539,7 +539,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -597,7 +597,7 @@ "description": "No Content. The request has been accepted but the domain was not found." }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -654,7 +654,7 @@ "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously. Please poll the targeted custom domain and check the 'validationProperties' field for the new validation token values." }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -704,7 +704,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -760,7 +760,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -832,7 +832,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -902,7 +902,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed", + "description": "Azure Front Door error response describing why the operation failed", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -960,7 +960,7 @@ "description": "No Content" }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1026,7 +1026,7 @@ "description": "Accepted" }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1043,7 +1043,7 @@ "tags": [ "AFDEndpoints" ], - "description": "Checks the quota and actual usage of endpoints under the given CDN profile.", + "description": "Checks the quota and actual usage of endpoints under the given Azure Front Door profile.", "operationId": "AFDEndpoints_ListResourceUsage", "x-ms-examples": { "AFDEndpoints_ListResourceUsage": { @@ -1083,7 +1083,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1099,7 +1099,7 @@ "tags": [ "AFDEndpoints" ], - "description": "Validates the custom domain mapping to ensure it maps to the correct CDN endpoint in DNS.", + "description": "Validates the custom domain mapping to ensure it maps to the correct Azure Front Door endpoint in DNS.", "operationId": "AFDEndpoints_ValidateCustomDomain", "x-ms-examples": { "Endpoints_ValidateCustomDomain": { @@ -1148,7 +1148,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1194,7 +1194,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1250,7 +1250,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1322,7 +1322,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1392,7 +1392,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1450,7 +1450,7 @@ "description": "No Content. The request has been accepted but the origin group was not found." }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1467,7 +1467,7 @@ "tags": [ "AFDOriginGroups" ], - "description": "Checks the quota and actual usage of endpoints under the given CDN profile.", + "description": "Checks the quota and actual usage of endpoints under the given Azure Front Door profile..", "operationId": "AFDOriginGroups_ListResourceUsage", "x-ms-examples": { "AFDOriginGroups_ListResourceUsage": { @@ -1507,7 +1507,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1563,7 +1563,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1626,7 +1626,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1705,7 +1705,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1782,7 +1782,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1847,7 +1847,7 @@ "description": "No Content. The request has been accepted but the origin was not found." }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1904,7 +1904,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -1967,7 +1967,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2046,7 +2046,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2123,7 +2123,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed", + "description": "Azure Front Door error response describing why the operation failed", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2188,7 +2188,7 @@ "description": "No Content" }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2238,7 +2238,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2294,7 +2294,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2351,7 +2351,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2405,7 +2405,7 @@ "description": "No Content. The request has been accepted but the rule set was not found." }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2422,7 +2422,7 @@ "tags": [ "RuleSets" ], - "description": "Checks the quota and actual usage of endpoints under the given CDN profile.", + "description": "Checks the quota and actual usage of endpoints under the given Azure Front Door profile..", "operationId": "RuleSets_ListResourceUsage", "x-ms-examples": { "RuleSets_ListResourceUsage": { @@ -2462,7 +2462,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2518,7 +2518,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2581,7 +2581,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2660,7 +2660,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2737,7 +2737,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2802,7 +2802,7 @@ "description": "No Content. The request has been accepted but the origin was not found." }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2852,7 +2852,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2908,7 +2908,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -2980,7 +2980,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3050,7 +3050,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3108,7 +3108,7 @@ "description": "No Content" }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3158,7 +3158,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3214,7 +3214,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3286,7 +3286,7 @@ } }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3344,7 +3344,7 @@ "description": "No Content. The request has been accepted but the origin was not found." }, "default": { - "description": "CDN error response describing why the operation failed.", + "description": "Azure Front Door error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3506,7 +3506,7 @@ } }, "default": { - "description": "CDN Error response describing why the operation failed.", + "description": "Azure Front Door Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3626,7 +3626,7 @@ } }, "default": { - "description": "CDN Error response describing why the operation failed.", + "description": "Azure Front Door Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3672,7 +3672,7 @@ } }, "default": { - "description": "CDN Error response describing why the operation failed.", + "description": "Azure Front Door Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3718,7 +3718,7 @@ } }, "default": { - "description": "CDN Error response describing why the operation failed.", + "description": "Azure Front Door Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -3867,7 +3867,7 @@ } }, "default": { - "description": "CDN Error response describing why the operation failed.", + "description": "Azure Front Door Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -4014,7 +4014,7 @@ } }, "default": { - "description": "CDN Error response describing why the operation failed.", + "description": "Azure Front Door Error response describing why the operation failed.", "schema": { "$ref": "#/definitions/AfdErrorResponse" } @@ -4529,7 +4529,7 @@ } }, "AFDEndpoint": { - "description": "CDN endpoint is the entity within a CDN profile containing configuration information such as origin, protocol, content caching and delivery behavior. The AzureFrontDoor endpoint uses the URL format .azureedge.net.", + "description": "Azure Front Door endpoint is the entity within a Azure Front Door profile containing configuration information such as origin, protocol, content caching and delivery behavior. The AzureFrontDoor endpoint uses the URL format .azureedge.net.", "type": "object", "allOf": [ { @@ -4895,7 +4895,7 @@ } }, "AFDOrigin": { - "description": "CDN origin is the source of the content being delivered via CDN. When the edge nodes represented by an endpoint do not have the requested content cached, they attempt to fetch it from one or more of the configured origins.", + "description": "Azure Front Door origin is the source of the content being delivered via Azure Front Door. When the edge nodes represented by an endpoint do not have the requested content cached, they attempt to fetch it from one or more of the configured origins.", "type": "object", "allOf": [ { @@ -4970,7 +4970,7 @@ "exclusiveMinimum": false }, "originHostHeader": { - "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure CDN origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. This overrides the host header defined at Endpoint", + "description": "The host header value sent to the origin with each request. If you leave this blank, the request hostname determines this value. Azure Front Door origins, such as Web Apps, Blob Storage, and Cloud Services require this host header value to match the origin hostname by default. This overrides the host header defined at Endpoint", "type": "string" }, "priority": { @@ -5057,7 +5057,7 @@ "items": { "$ref": "#/definitions/AFDOrigin" }, - "description": "List of CDN origins within an endpoint" + "description": "List of Azure Front Door origins within an Azure Front Door endpoint" }, "nextLink": { "type": "string", @@ -5066,7 +5066,7 @@ } }, "AFDOriginGroup": { - "description": "AFDOrigin group comprising of origins is used for load balancing to origins when the content cannot be served from CDN.", + "description": "AFDOrigin group comprising of origins is used for load balancing to origins when the content cannot be served from Azure Front Door.", "type": "object", "allOf": [ { @@ -5171,7 +5171,7 @@ "items": { "$ref": "#/definitions/AFDOriginGroup" }, - "description": "List of CDN origin groups within an endpoint" + "description": "List of Azure Front Door origin groups within an Azure Front Door endpoint" }, "nextLink": { "type": "string", @@ -6077,7 +6077,7 @@ "minLength": 1, "maxLength": 260, "x-ms-parameter-location": "method", - "description": "Name of the Azure Front Door Standard or Azure Front Door Premium or CDN profile which is unique within the resource group." + "description": "Name of the Azure Front Door Standard or Azure Front Door Premium which is unique within the resource group." } } } From c540f9185b7ac84f7ef8b36a20305405ae05c5b6 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Mon, 17 Oct 2022 12:03:51 -0700 Subject: [PATCH 18/33] Update incorrect description --- .../Microsoft.Cdn/preview/2022-11-01-preview/afdx.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index 57e061f8edaf..c355e9aaa55d 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -259,7 +259,7 @@ { "name": "profileUpgradeParameters", "in": "body", - "description": "Profile upgrade input.", + "description": "Profile upgrade input parameter.", "required": true, "schema": { "$ref": "#/definitions/ProfileUpgradeParameters" From 84328cb80eee7026428c861a597138ddbba9a787 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Mon, 17 Oct 2022 19:25:41 -0700 Subject: [PATCH 19/33] Fix comments --- .../Microsoft.Cdn/preview/2022-11-01-preview/cdn.json | 7 +------ .../2022-11-01-preview/examples/Profiles_Migrate.json | 6 ------ 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index c91e91b118e2..ac69bd5c8cdc 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -478,12 +478,7 @@ ], "responses": { "200": { - "description": "Ok and the operation will complete synchronously.", - "headers": { - "location": { - "type": "string" - } - } + "description": "Ok." }, "202": { "description": "Accepted and the operation will complete asynchronously.", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json index b83e6d2a2699..1e065a8d5b36 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json @@ -15,12 +15,6 @@ }, "responses": { "200": { - "body": { - "migratedProfileResourceId": { - "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1" - }, - "errors": null - } }, "202": { "headers": { From 228c17e9f2fb62ee4cae2933bf90aa7d527fe36e Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Tue, 18 Oct 2022 11:55:39 -0700 Subject: [PATCH 20/33] Fix PrettierCheck --- .../2022-11-01-preview/examples/AFDProfiles_Upgrade.json | 2 +- .../2022-11-01-preview/examples/Profiles_Migrate.json | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json index 40f93a20eb06..169b22278b8d 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDProfiles_Upgrade.json @@ -38,7 +38,7 @@ }, "202": { "headers": { - "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-05-01-preview" + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" }, "body": { "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json index 1e065a8d5b36..b83e6d2a2699 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json @@ -15,6 +15,12 @@ }, "responses": { "200": { + "body": { + "migratedProfileResourceId": { + "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1" + }, + "errors": null + } }, "202": { "headers": { From 20781a6d160ce5049d3a481ccac07b891700b7a3 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Tue, 18 Oct 2022 21:11:34 -0700 Subject: [PATCH 21/33] Update --- .../Microsoft.Cdn/preview/2022-11-01-preview/cdn.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index ac69bd5c8cdc..7ba79db9c569 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -417,7 +417,7 @@ ], "responses": { "200": { - "description": "Accepted and the operation will complete asynchronously.", + "description": "OK. The request has succeeded.", "schema": { "$ref": "#/definitions/MigrateResult" } @@ -478,7 +478,7 @@ ], "responses": { "200": { - "description": "Ok." + "description": "OK. The request has succeeded." }, "202": { "description": "Accepted and the operation will complete asynchronously.", From a1b560d0fd14a693a0ef04b5157520de351c3551 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Wed, 19 Oct 2022 21:11:38 -0700 Subject: [PATCH 22/33] Add Type --- .../Microsoft.Cdn/preview/2022-11-01-preview/cdn.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index 7ba79db9c569..8dfa7f80be0c 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -2639,6 +2639,7 @@ }, "identity": { "description": "Managed service identity (system assigned and/or user assigned identities).", + "type": "object", "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" }, "properties": { @@ -2740,6 +2741,7 @@ }, "identity": { "description": "Managed service identity (system assigned and/or user assigned identities).", + "type": "object", "$ref": "../../../../../common-types/resource-management/v4/managedidentity.json#/definitions/ManagedServiceIdentity" }, "properties": { From 28eb4232a3e7b32ccb5f7eae7b61613762a6d2a9 Mon Sep 17 00:00:00 2001 From: Zhuofu Deng Date: Fri, 28 Oct 2022 15:08:59 -0700 Subject: [PATCH 23/33] Added negative caching setting into CacheConfiguration --- .../preview/2022-11-01-preview/cdn.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index 8dfa7f80be0c..a3487ee24f41 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -5120,6 +5120,18 @@ "modelAsString": true } }, + "isNegativeCachingEnabled": { + "description": "Indicates whether negative caching is enabled.", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "ruleIsNegativeCachingEnabled", + "modelAsString": true + } + }, "cacheBehavior": { "description": "Caching behavior for the requests", "type": "string", From a0033f1a23f073731c21c8f80189fdf13f905b28 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Fri, 28 Oct 2022 18:35:10 -0700 Subject: [PATCH 24/33] Fix checker --- .../examples/CustomDomains_DisableCustomHttps.json | 2 +- .../examples/CustomDomains_EnableCustomHttpsUsingBYOC.json | 2 +- ...omDomains_EnableCustomHttpsUsingCDNManagedCertificate.json | 2 +- .../2022-11-01-preview/examples/Profiles_CanMigrate.json | 2 +- .../preview/2022-11-01-preview/examples/Profiles_Migrate.json | 4 ++-- .../2022-11-01-preview/examples/Profiles_MigrationCommit.json | 4 ++-- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_DisableCustomHttps.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_DisableCustomHttps.json index 6c4f886939c2..66ee9badaedb 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_DisableCustomHttps.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_DisableCustomHttps.json @@ -25,7 +25,7 @@ }, "202": { "headers": { - "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" }, "body": { "name": "www-someDomain-net", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json index 32ee36534949..deb1c8825a84 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingBYOC.json @@ -40,7 +40,7 @@ }, "202": { "headers": { - "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" }, "body": { "name": "www-someDomain-net", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json index 86be0082219d..3eb2315ddaf1 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_EnableCustomHttpsUsingCDNManagedCertificate.json @@ -34,7 +34,7 @@ }, "202": { "headers": { - "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" }, "body": { "name": "www-someDomain-net", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_CanMigrate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_CanMigrate.json index 70ae9c67e84e..ae8a7841afdf 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_CanMigrate.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_CanMigrate.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2021-06-01", + "api-version": "2022-11-01-preview", "subscriptionId": "subid", "resourceGroupName": "RG", "profileName": "profile1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json index b83e6d2a2699..53a866e21b04 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Migrate.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2021-06-01", + "api-version": "2022-11-01-preview", "subscriptionId": "subid", "resourceGroupName": "RG", "migrationParameters": { @@ -24,7 +24,7 @@ }, "202": { "headers": { - "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" }, "body": { "migratedProfileResourceId": { diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json index 1ab3fc97b453..abab01924718 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_MigrationCommit.json @@ -1,6 +1,6 @@ { "parameters": { - "api-version": "2021-06-01", + "api-version": "2022-11-01-preview", "subscriptionId": "subid", "resourceGroupName": "RG", "profileName": "profile1" @@ -9,7 +9,7 @@ "200": {}, "202": { "headers": { - "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2021-06-01" + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" } } } From 1ae5fef4f3fa75f106e8597e77e7e2a3a05b7749 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Tue, 1 Nov 2022 17:12:58 -0700 Subject: [PATCH 25/33] Delete isNegativeCachingEnabled --- .../preview/2022-11-01-preview/cdn.json | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index a3487ee24f41..8dfa7f80be0c 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -5120,18 +5120,6 @@ "modelAsString": true } }, - "isNegativeCachingEnabled": { - "description": "Indicates whether negative caching is enabled.", - "type": "string", - "enum": [ - "Enabled", - "Disabled" - ], - "x-ms-enum": { - "name": "ruleIsNegativeCachingEnabled", - "modelAsString": true - } - }, "cacheBehavior": { "description": "Caching behavior for the requests", "type": "string", From aa30bb0d7ba8aee12a773dceb6d8881c640d258e Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Tue, 1 Nov 2022 22:39:46 -0700 Subject: [PATCH 26/33] Add headers for 202 --- .../Microsoft.Cdn/preview/2022-11-01-preview/afdx.json | 7 ++++++- .../examples/AFDCustomDomains_Delete.json | 8 +++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index c355e9aaa55d..1be9a0d29a70 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -591,7 +591,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted" + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, }, "204": { "description": "No Content. The request has been accepted but the domain was not found." diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json index 7807f184f07f..91416fc5c6d9 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json @@ -8,7 +8,13 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, + "body": { + } + }, "204": {} } } From d770c4544f28862d2e9301922e104647eda606bb Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Tue, 1 Nov 2022 22:49:45 -0700 Subject: [PATCH 27/33] Format --- .../Microsoft.Cdn/preview/2022-11-01-preview/afdx.json | 2 +- .../2022-11-01-preview/examples/AFDCustomDomains_Delete.json | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index 1be9a0d29a70..fb2f7f267009 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -596,7 +596,7 @@ "location": { "type": "string" } - }, + } }, "204": { "description": "No Content. The request has been accepted but the domain was not found." diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json index 91416fc5c6d9..0c7900e51fb6 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json @@ -12,8 +12,7 @@ "headers": { "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" }, - "body": { - } + "body": {} }, "204": {} } From 832e2271d9925be1c091cf62d4b2cbbe5dd83250 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Tue, 1 Nov 2022 23:07:53 -0700 Subject: [PATCH 28/33] Format --- .../2022-11-01-preview/examples/AFDCustomDomains_Delete.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json index 0c7900e51fb6..fe167cc671d3 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Delete.json @@ -11,8 +11,7 @@ "202": { "headers": { "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" - }, - "body": {} + } }, "204": {} } From 23e8184b36b4ff1101bcb646a85ceff122109a0c Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Tue, 1 Nov 2022 23:31:06 -0700 Subject: [PATCH 29/33] Add headers for 202 --- .../preview/2022-11-01-preview/afdx.json | 145 ++++++++++++++++-- .../preview/2022-11-01-preview/cdn.json | 112 +++++++++++++- 2 files changed, 241 insertions(+), 16 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index fb2f7f267009..ba9cc3c29950 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -458,6 +458,11 @@ }, "201": { "description": "Created. The request has been fulfilled and a new domain has been created.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/AFDDomain" } @@ -534,6 +539,11 @@ }, "202": { "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/AFDDomain" } @@ -656,7 +666,12 @@ "description": "OK" }, "202": { - "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously. Please poll the targeted custom domain and check the 'validationProperties' field for the new validation token values." + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously. Please poll the targeted custom domain and check the 'validationProperties' field for the new validation token values.", + "headers": { + "location": { + "type": "string" + } + } }, "default": { "description": "Azure Front Door error response describing why the operation failed.", @@ -832,6 +847,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/AFDEndpoint" } @@ -902,6 +922,11 @@ }, "202": { "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/AFDEndpoint" } @@ -959,7 +984,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted" + "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content" @@ -1028,7 +1058,12 @@ "description": "OK" }, "202": { - "description": "Accepted" + "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + } }, "default": { "description": "Azure Front Door error response describing why the operation failed.", @@ -1322,6 +1357,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/AFDOriginGroup" } @@ -1392,6 +1432,11 @@ }, "202": { "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/AFDOriginGroup" } @@ -1449,7 +1494,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted" + "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content. The request has been accepted but the origin group was not found." @@ -1705,6 +1755,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/AFDOrigin" } @@ -1782,6 +1837,11 @@ }, "202": { "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/AFDOrigin" } @@ -1846,7 +1906,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted" + "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content. The request has been accepted but the origin was not found." @@ -2046,6 +2111,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Route" } @@ -2123,6 +2193,11 @@ }, "202": { "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Route" } @@ -2187,7 +2262,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted" + "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content" @@ -2404,7 +2484,12 @@ "description": "Delete successful." }, "202": { - "description": "Accepted" + "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content. The request has been accepted but the rule set was not found." @@ -2660,6 +2745,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Rule" } @@ -2737,6 +2827,11 @@ }, "202": { "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Rule" } @@ -2801,7 +2896,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted" + "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content. The request has been accepted but the origin was not found." @@ -2980,6 +3080,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/SecurityPolicy" } @@ -3050,6 +3155,11 @@ }, "202": { "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/SecurityPolicy" } @@ -3107,7 +3217,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted" + "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content" @@ -3286,6 +3401,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Secret" } @@ -3343,7 +3463,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted" + "description": "Accepted", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content. The request has been accepted but the origin was not found." diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json index 8dfa7f80be0c..227b06d70895 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdn.json @@ -213,6 +213,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Profile" } @@ -273,6 +278,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Profile" } @@ -320,7 +330,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously." + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content. The request has been accepted but the profile was not found." @@ -803,6 +818,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Endpoint" } @@ -870,6 +890,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Endpoint" } @@ -924,7 +949,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted and the operation will complete asynchronously." + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content. The request has been accepted but the endpoint was not found." @@ -985,6 +1015,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Endpoint" } @@ -1045,6 +1080,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Endpoint" } @@ -1110,7 +1150,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted and the operation will complete asynchronously." + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + } }, "default": { "description": "CDN error response describing why the operation failed.", @@ -1173,7 +1218,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted and the operation will complete asynchronously." + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + } }, "default": { "description": "CDN error response describing why the operation failed.", @@ -1485,6 +1535,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Origin" } @@ -1559,6 +1614,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/Origin" } @@ -1620,7 +1680,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted and the operation will complete asynchronously." + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content. The request has been accepted but the origin was not found." @@ -1817,6 +1882,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/OriginGroup" } @@ -1891,6 +1961,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/OriginGroup" } @@ -1952,7 +2027,12 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted and the operation will complete asynchronously." + "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + } }, "204": { "description": "No Content. The request has been accepted but the origin was not found." @@ -2149,6 +2229,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/CustomDomain" } @@ -2211,6 +2296,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/CustomDomain" } @@ -2281,6 +2371,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/CustomDomain" } @@ -2360,6 +2455,11 @@ }, "202": { "description": "Accepted and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/CustomDomain" } From 10987f864389c84aee3b668abc8aa491f7559363 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Tue, 1 Nov 2022 23:42:11 -0700 Subject: [PATCH 30/33] Add headers for 202 --- .../2022-11-01-preview/cdnwebapplicationfirewall.json | 10 ++++++++++ .../examples/AFDCustomDomains_Create.json | 3 +++ .../AFDCustomDomains_RefreshValidationToken.json | 6 +++++- .../examples/AFDEndpoints_Create.json | 3 +++ .../examples/AFDEndpoints_Delete.json | 6 +++++- .../examples/AFDEndpoints_PurgeContent.json | 6 +++++- .../examples/AFDOriginGroups_Create.json | 3 +++ .../examples/AFDOriginGroups_Delete.json | 6 +++++- .../2022-11-01-preview/examples/AFDOrigins_Create.json | 3 +++ .../2022-11-01-preview/examples/AFDOrigins_Delete.json | 6 +++++- .../examples/CustomDomains_Create.json | 3 +++ .../2022-11-01-preview/examples/Endpoints_Create.json | 3 +++ .../2022-11-01-preview/examples/Endpoints_Delete.json | 6 +++++- .../examples/Endpoints_LoadContent.json | 6 +++++- .../examples/Endpoints_PurgeContent.json | 6 +++++- .../examples/OriginGroups_Create.json | 3 +++ .../examples/OriginGroups_Delete.json | 6 +++++- .../2022-11-01-preview/examples/Origins_Create.json | 3 +++ .../2022-11-01-preview/examples/Origins_Delete.json | 6 +++++- .../2022-11-01-preview/examples/Profiles_Create.json | 3 +++ .../2022-11-01-preview/examples/Profiles_Delete.json | 6 +++++- .../2022-11-01-preview/examples/Routes_Create.json | 3 +++ .../2022-11-01-preview/examples/Routes_Delete.json | 6 +++++- .../2022-11-01-preview/examples/RuleSets_Delete.json | 6 +++++- .../2022-11-01-preview/examples/Rules_Create.json | 3 +++ .../2022-11-01-preview/examples/Rules_Delete.json | 6 +++++- .../2022-11-01-preview/examples/Secrets_Create.json | 3 +++ .../2022-11-01-preview/examples/Secrets_Delete.json | 6 +++++- .../examples/SecurityPolicies_Create.json | 3 +++ .../examples/SecurityPolicies_Delete.json | 6 +++++- .../examples/WafPolicyCreateOrUpdate.json | 3 +++ 31 files changed, 132 insertions(+), 16 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdnwebapplicationfirewall.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdnwebapplicationfirewall.json index 0f1e7e441057..4a2a682c8cbc 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdnwebapplicationfirewall.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/cdnwebapplicationfirewall.json @@ -161,6 +161,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" } @@ -217,6 +222,11 @@ }, "202": { "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", + "headers": { + "location": { + "type": "string" + } + }, "schema": { "$ref": "#/definitions/CdnWebApplicationFirewallPolicy" } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Create.json index a0f605ad0cf9..d1785f3712ae 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_Create.json @@ -82,6 +82,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/domain1", "name": "domain1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_RefreshValidationToken.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_RefreshValidationToken.json index fcbaab1c9f6f..f21b27f5da90 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_RefreshValidationToken.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDCustomDomains_RefreshValidationToken.json @@ -8,6 +8,10 @@ }, "responses": { "200": {}, - "202": {} + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + } } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Create.json index 24a89fdf93b2..43f4f75c4ea3 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Create.json @@ -48,6 +48,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "endpoint1", "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Delete.json index d7e0307f4fcb..a870d8307a25 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_Delete.json @@ -8,7 +8,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_PurgeContent.json index fc17c381f0d4..d03854d7b554 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_PurgeContent.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDEndpoints_PurgeContent.json @@ -16,6 +16,10 @@ }, "responses": { "200": {}, - "202": {} + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + } } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Create.json index 71874ed793ef..83dcbdb36514 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Create.json @@ -70,6 +70,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1", "type": "Microsoft.Cdn/profiles/origingroups", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Delete.json index 9994350e0810..ac02afd1bc4b 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOriginGroups_Delete.json @@ -8,7 +8,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Create.json index 7e4fd751cb72..860b94b320be 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Create.json @@ -60,6 +60,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/origingroups/origingroup1/origins/origin1", "type": "Microsoft.Cdn/profiles/origingroups/origins", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Delete.json index d048a0e926c6..d224f7e93335 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/AFDOrigins_Delete.json @@ -9,7 +9,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Create.json index 0b48aedaba34..c4c8c46c20b5 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/CustomDomains_Create.json @@ -44,6 +44,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "www-someDomain-net", "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/customdomains/www-someDomain-net", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Create.json index 7d247d9c0b61..b20ed9ebfae0 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Create.json @@ -404,6 +404,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "endpoint4899", "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Delete.json index d7e0307f4fcb..a870d8307a25 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_Delete.json @@ -8,7 +8,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_LoadContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_LoadContent.json index b139039ea8c7..aa530570bc74 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_LoadContent.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_LoadContent.json @@ -13,6 +13,10 @@ }, "responses": { "200": {}, - "202": {} + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + } } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_PurgeContent.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_PurgeContent.json index b139039ea8c7..aa530570bc74 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_PurgeContent.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Endpoints_PurgeContent.json @@ -13,6 +13,10 @@ }, "responses": { "200": {}, - "202": {} + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + } } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Create.json index c6f032161451..495dd8de42dd 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Create.json @@ -80,6 +80,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "originGroup1", "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/originGroups/originGroup1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Delete.json index 0e9054f1b98c..7e7e9dfef700 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/OriginGroups_Delete.json @@ -9,7 +9,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Create.json index c65709c91948..fe952527c4bd 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Create.json @@ -67,6 +67,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "www-someDomain-net", "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/endpoints/endpoint1/origins/www-someDomain-net", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Delete.json index 8594ce1cca62..3f9ac9014ab1 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Origins_Delete.json @@ -9,7 +9,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Create.json index ea68d118875b..e8af9e34b091 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Create.json @@ -51,6 +51,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "profile1", "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Delete.json index e632cd42205a..6b2dca94123a 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Profiles_Delete.json @@ -7,7 +7,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Create.json index fcb93e7c3e1d..f4104da3a84d 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Create.json @@ -143,6 +143,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "route1", "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/afdendpoints/endpoint1/routes/route1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Delete.json index bc98e52f32f4..f7147fe24002 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Routes_Delete.json @@ -9,7 +9,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Delete.json index b27525723538..7dea4e1aa1c5 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/RuleSets_Delete.json @@ -8,7 +8,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Create.json index 7a70d6d9e090..e030e5386c42 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Create.json @@ -114,6 +114,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "rule1", "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/rulesets/ruleSet1/rules/rule1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Delete.json index 37a44e9b2429..384aebcdfaa3 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Rules_Delete.json @@ -9,7 +9,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Create.json index 19e12f742a30..9964cf1fda8b 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Create.json @@ -74,6 +74,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "secret1", "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/secrets/secret1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Delete.json index 93842d7b82c9..aa7ea669f85b 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/Secrets_Delete.json @@ -8,7 +8,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Create.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Create.json index a0014b744245..1096df5b03e7 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Create.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Create.json @@ -97,6 +97,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "securityPolicy1", "id": "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/securitypolicies/securityPolicy1", diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Delete.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Delete.json index 033ef937bfd0..15899905be5d 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Delete.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/SecurityPolicies_Delete.json @@ -8,7 +8,11 @@ }, "responses": { "200": {}, - "202": {}, + "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + } + }, "204": {} } } diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyCreateOrUpdate.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyCreateOrUpdate.json index 937932d8a7fb..557431a3289f 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyCreateOrUpdate.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/examples/WafPolicyCreateOrUpdate.json @@ -373,6 +373,9 @@ } }, "202": { + "headers": { + "azure-asyncoperation": "https://management.azure.com/subscriptions/subid/resourcegroups/resourceGroupName/providers/Microsoft.Cdn/operationresults/operationId?api-version=2022-11-01-preview" + }, "body": { "name": "MicrosoftCdnWafPolicy", "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Cdn/CdnWebApplicationFirewallPolicies/MicrosoftCdnWafPolicy", From 0743dd7005014422f596054c340770e285521eaf Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Wed, 2 Nov 2022 00:00:01 -0700 Subject: [PATCH 31/33] Add headers for 202 --- .../preview/2022-11-01-preview/afdx.json | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json index ba9cc3c29950..f2af124650d9 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/afdx.json @@ -538,7 +538,7 @@ } }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -921,7 +921,7 @@ } }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -984,7 +984,7 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -1058,7 +1058,7 @@ "description": "OK" }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -1431,7 +1431,7 @@ } }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -1494,7 +1494,7 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -1836,7 +1836,7 @@ } }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -1906,7 +1906,7 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -2192,7 +2192,7 @@ } }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -2262,7 +2262,7 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -2484,7 +2484,7 @@ "description": "Delete successful." }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -2826,7 +2826,7 @@ } }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -2896,7 +2896,7 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -3154,7 +3154,7 @@ } }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -3217,7 +3217,7 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" @@ -3463,7 +3463,7 @@ "description": "OK. The request has succeeded." }, "202": { - "description": "Accepted", + "description": "Accepted. The request has been accepted for processing and the operation will complete asynchronously.", "headers": { "location": { "type": "string" From d36a517ad3772b653cdca77871c08b4b8cbab09c Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 3 Nov 2022 00:18:14 -0700 Subject: [PATCH 32/33] Add scenarios --- .../AFDProfiles_Upgrade_WithoutWaf.yaml | 27 +++++++++++++++++++ .../cdn/resource-manager/readme.test.md | 8 ++++++ 2 files changed, 35 insertions(+) create mode 100644 specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/scenarios/AFDProfiles_Upgrade_WithoutWaf.yaml create mode 100644 specification/cdn/resource-manager/readme.test.md diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/scenarios/AFDProfiles_Upgrade_WithoutWaf.yaml b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/scenarios/AFDProfiles_Upgrade_WithoutWaf.yaml new file mode 100644 index 000000000000..656328c1814d --- /dev/null +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/scenarios/AFDProfiles_Upgrade_WithoutWaf.yaml @@ -0,0 +1,27 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/Azure/azure-rest-api-specs/main/documentation/api-scenario/references/v1.2/schema.json +scope: ResourceGroup +variables: + afdprofileName: + type: string + prefix: afdprofile +scenarios: + - scenario: GeneratedScenario + steps: + - step: CheckNameAvailabilityWithSubscription + operationId: CheckNameAvailabilityWithSubscription + exampleFile: ../examples/CheckNameAvailabilityWithSubscription.json + - step: AFDProfiles_Create + operationId: Profiles_Create + parameters: + profileName: $(afdprofileName) + profile: + location: "global" + sku: + name: Standard_AzureFrontDoor + identity: + type: "SystemAssigned" + - step: AFDProfiles_Upgrade + operationId: AFDProfiles_Upgrade + parameters: + profileName: $(afdprofileName) + profileUpgradeParameters: {} diff --git a/specification/cdn/resource-manager/readme.test.md b/specification/cdn/resource-manager/readme.test.md new file mode 100644 index 000000000000..ebfca0fa9b45 --- /dev/null +++ b/specification/cdn/resource-manager/readme.test.md @@ -0,0 +1,8 @@ +### Tag: package-preview-2022-11 + +These settings apply only when `--tag=package-preview-2022-11` is specified on the command line. + +``` yaml $(tag) == 'package-preview-2022-11' +test-resources: +- Microsoft.Cdn/preview/2022-11-01-preview/scenarios/AFDProfiles_Upgrade_WithoutWaf.yaml +``` \ No newline at end of file From 98c0bbce9b4fa0d490f77eb59e4c20cdcacda566 Mon Sep 17 00:00:00 2001 From: ChenglongLiu Date: Thu, 3 Nov 2022 00:36:55 -0700 Subject: [PATCH 33/33] Add scenarios --- .../scenarios/AFDProfiles_Upgrade_WithoutWaf.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/scenarios/AFDProfiles_Upgrade_WithoutWaf.yaml b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/scenarios/AFDProfiles_Upgrade_WithoutWaf.yaml index 656328c1814d..7259132992bd 100644 --- a/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/scenarios/AFDProfiles_Upgrade_WithoutWaf.yaml +++ b/specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-11-01-preview/scenarios/AFDProfiles_Upgrade_WithoutWaf.yaml @@ -24,4 +24,5 @@ scenarios: operationId: AFDProfiles_Upgrade parameters: profileName: $(afdprofileName) - profileUpgradeParameters: {} + profileUpgradeParameters: + wafMappingList: []